1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 <2024> 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 <2024> 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: difference between DB and DB_INSTALLS |
From: | Michael Davidsaver via Tech-talk <tech-talk at aps.anl.gov> |
To: | EPICS Tech Talk <tech-talk at aps.anl.gov> |
Date: | Sat, 18 May 2024 14:02:25 -0400 |
On 5/13/24 12:37, Johnson, Andrew N. via Tech-talk wrote:
IIRC the original build rules for DB_INSTALLS allow the source path to point into a support module or other external directory, whereas the DB rules were designed for generating and copying files from the local application only. Thus you can use DB_INSTALLS += $(ASYN)/db/asynRecord.dbto copy that file from your Asyn module into the IOC's $(TOP)/dbdirectory.
... so that an iocsh script need only read files from "$(TOP)/db". I see this as an important compliment to static linking of IOC executables. Both act to "isolate" an IOC instance from changes to files elsewhere in the system. Hopefully avoiding a situation where an unplanned IOC restart picks up unexpected changes. fyi. a concrete example of copying "save_restoreStatus.db" into "$(TOP)/db" to avoid referencing "$(AUTOSAVE)" at runtime from st.cmd.https://urldefense.us/v3/__https://github.com/epics-modules/mrfioc2/blob/57d848582abc7896d58a4750f73d49bf625db946/mrfApp/Db/Makefile*L21-L23__;Iw!!G_uCfscf7eWS!cJ9PfMN-HsPjs00Wg-P3QWgURu_T6SOkgNyDs2tUexc2J5r3-XYNiDtUHgk7Wi2lMVSlXHVRwd5hUUqVR945jGwnpQ$ https://urldefense.us/v3/__https://github.com/epics-modules/mrfioc2/blob/57d848582abc7896d58a4750f73d49bf625db946/iocBoot/iocevgmrm/st.cmd*L34__;Iw!!G_uCfscf7eWS!cJ9PfMN-HsPjs00Wg-P3QWgURu_T6SOkgNyDs2tUexc2J5r3-XYNiDtUHgk7Wi2lMVSlXHVRwd5hUUqVR94ArF8bVg$