diff --git a/configure/CONFIG_BASE b/configure/CONFIG_BASE index 60e0525b4..be0a24316 100644 --- a/configure/CONFIG_BASE +++ b/configure/CONFIG_BASE @@ -22,13 +22,12 @@ endif # Epics base Ioc libraries EPICS_BASE_IOC_LIBS += recIoc softDevIoc -EPICS_BASE_IOC_LIBS += miscIoc rsrvIoc dbtoolsIoc asIoc -EPICS_BASE_IOC_LIBS += dbIoc registryIoc dbStaticIoc ca Com +EPICS_BASE_IOC_LIBS += dbCore ca Com #--------------------------------------------------------------- # Epics base Host libraries -EPICS_BASE_HOST_LIBS += cas gdd dbStaticHost registryIoc +EPICS_BASE_HOST_LIBS += cas gdd dbStaticHost EPICS_BASE_HOST_LIBS += ca Com #--------------------------------------------------------------- diff --git a/src/Makefile b/src/Makefile index 5260b2b92..171853242 100644 --- a/src/Makefile +++ b/src/Makefile @@ -47,50 +47,30 @@ DIRS += ca/legacy/pcas ca/legacy/pcas_DEPEND_DIRS = ca/legacy/gdd DIRS += ca/legacy/pcas/ex -ca/legacy/pcas/ex_DEPEND_DIRS = ca/legacy/pcas ioc/as ioc/registry +# needs ioc for dbStaticHost +ca/legacy/pcas/ex_DEPEND_DIRS = ca/legacy/pcas libCom ioc DIRS += ca/client/perl ca/client/perl_DEPEND_DIRS = ca/client # PDB Core -DIRS += ioc/dbStatic -ioc/dbStatic_DEPEND_DIRS = libCom - -DIRS += ioc/registry -ioc/registry_DEPEND_DIRS = ioc/dbStatic - -DIRS += ioc/bpt -ioc/bpt_DEPEND_DIRS = ioc/dbStatic - -DIRS += ioc/db -ioc/db_DEPEND_DIRS = ioc/bpt ca/client - -DIRS += ioc/as -ioc/as_DEPEND_DIRS = ioc/db libCom - -DIRS += ioc/dbtemplate -ioc/dbtemplate_DEPEND_DIRS = ioc/db - -DIRS += ioc/rsrv -ioc/rsrv_DEPEND_DIRS = ioc/as - -DIRS += ioc/misc -ioc/misc_DEPEND_DIRS = ioc/dbtemplate ioc/rsrv std/rec +DIRS += ioc +ioc_DEPEND_DIRS = libCom ca/client DIRS += ioc/db/test -ioc/db/test_DEPEND_DIRS = ioc/db libCom/RTEMS +ioc/db/test_DEPEND_DIRS = ioc libCom/RTEMS # PDB Standard Record Definitions DIRS += std/rec -std/rec_DEPEND_DIRS = ioc/as ioc/registry +std/rec_DEPEND_DIRS = ioc DIRS += std/dev -std/dev_DEPEND_DIRS = std/rec ioc/misc +std/dev_DEPEND_DIRS = std/rec ioc DIRS += std/softIoc -std/softIoc_DEPEND_DIRS = std/dev ioc/dbtemplate libCom/RTEMS +std/softIoc_DEPEND_DIRS = std/dev ioc libCom/RTEMS include $(TOP)/configure/RULES_DIRS diff --git a/src/ioc/Makefile b/src/ioc/Makefile new file mode 100644 index 000000000..59fc5f345 --- /dev/null +++ b/src/ioc/Makefile @@ -0,0 +1,40 @@ +#************************************************************************* +# Copyright (c) 2007 UChicago Argonne LLC, as Operator of Argonne +# National Laboratory. +# Copyright (c) 2002 The Regents of the University of California, as +# Operator of Los Alamos National Laboratory. +# EPICS BASE is distributed subject to a Software License Agreement found +# in file LICENSE that is included with this distribution. +#************************************************************************* +TOP=../.. + +include $(TOP)/configure/CONFIG + +SRC = $(TOP)/src +IOCDIR = $(SRC)/ioc + +LIBRARY += dbCore +dbCore_LIBS += ca Com +dbCore_SYS_LIBS_WIN32 += ws2_32 + +dbCore_RCS += dbCore.rc +dbStaticHost_RCS = dbStaticHost.rc + +PROD_LIBS = Com + +include $(IOCDIR)/as/Makefile +include $(IOCDIR)/bpt/Makefile +include $(IOCDIR)/db/Makefile +include $(IOCDIR)/dbStatic/Makefile +include $(IOCDIR)/dbtemplate/Makefile +include $(IOCDIR)/misc/Makefile +include $(IOCDIR)/registry/Makefile +include $(IOCDIR)/rsrv/Makefile + +include $(TOP)/configure/RULES + +include $(IOCDIR)/dbStatic/RULES +include $(IOCDIR)/bpt/RULES +include $(IOCDIR)/db/RULES +include $(IOCDIR)/dbtemplate/RULES + diff --git a/src/ioc/as/Makefile b/src/ioc/as/Makefile index 038b673c2..a2d973b6d 100644 --- a/src/ioc/as/Makefile +++ b/src/ioc/as/Makefile @@ -1,30 +1,27 @@ #************************************************************************* -# Copyright (c) 2007 UChicago Argonne LLC, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. +# Copyright (c) 2010 Brookhaven Science Associates, as Operator of +# Brookhaven National Lab. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../../.. -include $(TOP)/configure/CONFIG + +# This is a Makefile fragment, see src/ioc/Makefile. + +SRC_DIRS += $(IOCDIR)/as INC += asDbLib.h INC += asCa.h INC += asIocRegister.h -asIoc_SRCS += asDbLib.c -asIoc_SRCS += asCa.c -asIoc_SRCS += asIocRegister.c +dbCore_SRCS += asDbLib.c +dbCore_SRCS += asCa.c +dbCore_SRCS += asIocRegister.c -LIBRARY_IOC = asIoc - -asIoc_LIBS = dbIoc dbStaticIoc Com - -asIoc_RCS = asIoc.rc - -PROD_HOST = ascheck +PROD_HOST += ascheck ascheck_SRCS = ascheck.c -PROD_LIBS = dbStaticHost Com +ascheck_LIBS = dbStaticHost -include $(TOP)/configure/RULES diff --git a/src/ioc/as/asIoc.rc b/src/ioc/as/asIoc.rc deleted file mode 100755 index f83a3c17e..000000000 --- a/src/ioc/as/asIoc.rc +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include "epicsVersion.h" - -VS_VERSION_INFO VERSIONINFO - FILEVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - PRODUCTVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_UNKNOWN - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "Comments","IOC Access Security Library for EPICS\0" - VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "IOC Access Security Library\0" - VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "asIoc\0" - VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "asIoc.dll\0" - VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" - VALUE "ProductVersion", EPICS_VERSION_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/src/ioc/bpt/Makefile b/src/ioc/bpt/Makefile index 0c6adc3d7..82a1f7ef1 100644 --- a/src/ioc/bpt/Makefile +++ b/src/ioc/bpt/Makefile @@ -1,29 +1,27 @@ #************************************************************************* -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../../.. -include $(TOP)/configure/CONFIG + +# This is a Makefile fragment, see src/ioc/Makefile. + +SRC_DIRS += $(IOCDIR)/bpt INC += cvtTable.h DBD += menuConvert.dbd INC += menuConvert.h -DBD += bptTypeJdegC.dbd -DBD += bptTypeJdegF.dbd -DBD += bptTypeKdegC.dbd -DBD += bptTypeKdegF.dbd +BPT_DBD += bptTypeJdegC.dbd +BPT_DBD += bptTypeJdegF.dbd +BPT_DBD += bptTypeKdegC.dbd +BPT_DBD += bptTypeKdegF.dbd +DBD += $(BPT_DBD) -PROD_LIBS = Com PROD_HOST += makeBpt makeBpt_SRCS=makeBpt -include $(TOP)/configure/RULES - -$(COMMON_DBDS): $(TOOLS)/makeBpt$(HOSTEXE) - diff --git a/src/ioc/bpt/RULES b/src/ioc/bpt/RULES new file mode 100644 index 000000000..f97606412 --- /dev/null +++ b/src/ioc/bpt/RULES @@ -0,0 +1,16 @@ +#************************************************************************* +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne +# National Laboratory. +# Copyright (c) 2010 Brookhaven Science Associates, as Operator of +# Brookhaven National Lab. +# Copyright (c) 2002 The Regents of the University of California, as +# Operator of Los Alamos National Laboratory. +# EPICS BASE is distributed subject to a Software License Agreement found +# in file LICENSE that is included with this distribution. +#************************************************************************* + +# This is a Makefile fragment, see src/ioc/Makefile. + +$(patsubst %,$(COMMON_DIR)/%,$(BPT_DBD)) : \ +$(COMMON_DIR)/bpt%.dbd : $(call PATH_FILTER, $(TOOLS)/makeBpt$(HOSTEXE)) + diff --git a/src/ioc/db/Makefile b/src/ioc/db/Makefile index 33a2aa821..50715ad32 100644 --- a/src/ioc/db/Makefile +++ b/src/ioc/db/Makefile @@ -1,16 +1,16 @@ #************************************************************************* -# Copyright (c) 2007 UChicago Argonne LLC, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../../.. -include $(TOP)/configure/CONFIG -# includes to install from this sub-project -# +# This is a Makefile fragment, see src/ioc/Makefile. + +SRC_DIRS += $(IOCDIR)/db + INC += callback.h INC += dbAccess.h INC += dbAccessDefs.h @@ -49,43 +49,28 @@ DBDINC += menuSimm DBDINC += dbCommon DBD+= menuGlobal.dbd -LIB_SRCS += dbLock.c -LIB_SRCS += dbAccess.c -LIB_SRCS += dbBkpt.c -LIB_SRCS += dbConvert.c -LIB_SRCS += dbFastLinkConv.c -LIB_SRCS += dbNotify.c -LIB_SRCS += dbScan.c -LIB_SRCS += dbEvent.c -LIB_SRCS += dbTest.c -LIB_SRCS += db_access.c -LIB_SRCS += db_test.c -LIB_SRCS += recGbl.c -LIB_SRCS += callback.c -LIB_SRCS += dbCa.c -LIB_SRCS += dbCaTest.c -LIB_SRCS += initHooks.c -LIB_SRCS += cvtBpt.c -LIB_SRCS += dbContext.cpp -LIB_SRCS += dbChannelIO.cpp -LIB_SRCS += dbSubscriptionIO.cpp -LIB_SRCS += dbPutNotifyBlocker.cpp -LIB_SRCS += dbContextReadNotifyCache.cpp -LIB_SRCS += templateInstances.cpp -LIB_SRCS += dbIocRegister.c - -LIBRARY_IOC = dbIoc -dbIoc_LIBS = dbStaticIoc ca Com - -dbIoc_RCS = dbIoc.rc - -include $(TOP)/configure/RULES - -dbCommon.h$(DEP): ../dbCommonRecord.dbd ../dbCommon.dbd - @$(RM) $@ - @-$(MKMF) -m $@ .. $(COMMON_DIR)/dbCommon.h $< - -$(COMMON_DIR)/dbCommon.h: ../dbCommonRecord.dbd ../dbCommon.dbd - $(RM) $@ - $(DBTORECORDTYPEH) -I .. $< $@ +dbCore_SRCS += dbLock.c +dbCore_SRCS += dbAccess.c +dbCore_SRCS += dbBkpt.c +dbCore_SRCS += dbConvert.c +dbCore_SRCS += dbFastLinkConv.c +dbCore_SRCS += dbNotify.c +dbCore_SRCS += dbScan.c +dbCore_SRCS += dbEvent.c +dbCore_SRCS += dbTest.c +dbCore_SRCS += db_access.c +dbCore_SRCS += db_test.c +dbCore_SRCS += recGbl.c +dbCore_SRCS += callback.c +dbCore_SRCS += dbCa.c +dbCore_SRCS += dbCaTest.c +dbCore_SRCS += initHooks.c +dbCore_SRCS += cvtBpt.c +dbCore_SRCS += dbContext.cpp +dbCore_SRCS += dbChannelIO.cpp +dbCore_SRCS += dbSubscriptionIO.cpp +dbCore_SRCS += dbPutNotifyBlocker.cpp +dbCore_SRCS += dbContextReadNotifyCache.cpp +dbCore_SRCS += templateInstances.cpp +dbCore_SRCS += dbIocRegister.c diff --git a/src/ioc/db/RULES b/src/ioc/db/RULES new file mode 100644 index 000000000..14a421e5c --- /dev/null +++ b/src/ioc/db/RULES @@ -0,0 +1,28 @@ +#************************************************************************* +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne +# National Laboratory. +# Copyright (c) 2010 Brookhaven Science Associates, as Operator of +# Brookhaven National Lab. +# Copyright (c) 2002 The Regents of the University of California, as +# Operator of Los Alamos National Laboratory. +# EPICS BASE is distributed subject to a Software License Agreement found +# in file LICENSE that is included with this distribution. +#************************************************************************* + +# This is a Makefile fragment, see src/ioc/Makefile. + +$(filter-out $(STATIC_SRCS),$(dbCore_SRCS)) : $(COMMON_DIR)/dbCommon.h + +dbCommon.h$(DEP): $(IOCDIR)/db/dbCommonRecord.dbd $(IOCDIR)/db/dbCommon.dbd + @$(RM) $@ + @-$(MKMF) -m $@ ../db $(COMMON_DIR)/dbCommon.h $< + +$(COMMON_DIR)/dbCommon.h: $(IOCDIR)/db/dbCommonRecord.dbd $(IOCDIR)/db/dbCommon.dbd + $(RM) $@ + $(DBTORECORDTYPEH) -I ../db $< $@ + +$(COMMON_DIR)/dbCommon.h: $(DBTORECORDTYPEH) + +$(patsubst %,$(COMMON_DIR)/%.h,$(DBDINC) menuConvert menuGlobal) : \ +$(COMMON_DIR)/%.h : $(DBTOMENUH) + diff --git a/src/ioc/db/test/Makefile b/src/ioc/db/test/Makefile index 63b754661..0c8d02a3c 100644 --- a/src/ioc/db/test/Makefile +++ b/src/ioc/db/test/Makefile @@ -10,7 +10,7 @@ TOP=../../../.. include $(TOP)/configure/CONFIG -callbackTest_LIBS = dbIoc +callbackTest_LIBS = dbCore callbackTest_LIBS_DEFAULT = dbStaticHost callbackTest_LIBS_vxWorks = dbStaticIoc callbackTest_LIBS_RTEMS = dbStaticIoc diff --git a/src/ioc/db/dbIoc.rc b/src/ioc/dbCore.rc similarity index 77% rename from src/ioc/db/dbIoc.rc rename to src/ioc/dbCore.rc index 6b261fff3..79955e350 100755 --- a/src/ioc/db/dbIoc.rc +++ b/src/ioc/dbCore.rc @@ -18,13 +18,13 @@ BEGIN BEGIN BLOCK "040904b0" BEGIN - VALUE "Comments","Database Library for EPICS\0" + VALUE "Comments","Database Core Library for EPICS\0" VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "Database Library\0" + VALUE "FileDescription", "Database Core Library\0" VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "dbIoc\0" - VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "dbIoc.dll\0" + VALUE "InternalName", "dbCore\0" + VALUE "LegalCopyright", "Copyright (C) Univ. of California, UChicago Argonne LLC\0" + VALUE "OriginalFilename", "dbCore.dll\0" VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" VALUE "ProductVersion", EPICS_VERSION_STRING "\0" END diff --git a/src/ioc/dbStatic/Makefile b/src/ioc/dbStatic/Makefile index 0caaa4b21..8bcc24f41 100644 --- a/src/ioc/dbStatic/Makefile +++ b/src/ioc/dbStatic/Makefile @@ -1,14 +1,15 @@ #************************************************************************* -# Copyright (c) 2007 UChicago Argonne LLC, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../../.. -include $(TOP)/configure/CONFIG +# This is a Makefile fragment, see src/ioc/Makefile. + +SRC_DIRS += $(IOCDIR)/dbStatic INC += dbBase.h INC += dbFldTypes.h @@ -22,35 +23,34 @@ INC += drvSup.h INC += recSup.h INC += dbStaticIocRegister.h -LIBSRCS += dbStaticLib.c -LIBSRCS += dbYacc.c -LIBSRCS += dbPvdLib.c +STATIC_SRCS += dbStaticLib.c +STATIC_SRCS += dbYacc.c +STATIC_SRCS += dbPvdLib.c +dbCore_SRCS += $(STATIC_SRCS) +dbCore_SRCS += dbStaticRun.c +dbCore_SRCS += dbStaticIocRegister.c + +dbStaticHost_SRCS += $(STATIC_SRCS) dbStaticHost_SRCS += dbStaticNoRun.c -dbStaticIoc_SRCS += dbStaticRun.c -dbStaticIoc_SRCS += dbStaticIocRegister.c LIBRARY_HOST += dbStaticHost -LIBRARY_IOC += dbStaticIoc dbStaticHost_LIBS = Com -dbStaticIoc_LIBS = Com -dbStaticHost_RCS = dbStaticHost.rc -dbStaticIoc_RCS = dbStaticIoc.rc - -PROD_LIBS := dbStaticHost Com -PROD_HOST = dbReadTest dbExpand dbToMenuH dbToRecordtypeH +PROD_HOST += dbReadTest dbExpand dbToMenuH dbToRecordtypeH dbReadTest_SRCS = dbReadTest.c dbExpand_SRCS = dbExpand.c dbToMenuH_SRCS = dbToMenuH.c dbToRecordtypeH_SRCS = dbToRecordtypeH.c -include $(TOP)/configure/RULES +# Include dbStaticHost objects directly in executables +# because of a Circular dependency induced by a rule +# $(INSTALL_LIBS): $(INSTALL_SHRLIBS) +# in RULES_BUILD +dbReadTest_SRCS += $(dbStaticHost_SRCS) +dbExpand_SRCS += $(dbStaticHost_SRCS) +dbToMenuH_SRCS += $(dbStaticHost_SRCS) +dbToRecordtypeH_SRCS += $(dbStaticHost_SRCS) -# Extra rule since dbLexRoutines.c is included in dbYacc.c -dbYacc.c: dbLex.c ../dbLexRoutines.c - -clean:: - @$(RM) dbLex.c dbYacc.c diff --git a/src/dev/Makefile b/src/ioc/dbStatic/RULES similarity index 63% rename from src/dev/Makefile rename to src/ioc/dbStatic/RULES index cdd320ca5..94ef256be 100644 --- a/src/dev/Makefile +++ b/src/ioc/dbStatic/RULES @@ -1,5 +1,5 @@ #************************************************************************* -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. @@ -7,12 +7,10 @@ # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../.. +# This is a Makefile fragment, see src/ioc/Makefile. -include $(TOP)/configure/CONFIG - -DIRS += softDev -DIRS += testDev - -include $(TOP)/configure/RULES_DIRS +# dbLexRoutines.c is included in dbYacc.c +dbYacc.c: dbLex.c $(IOCDIR)/dbStatic/dbLexRoutines.c +clean:: + @$(RM) dbLex.c dbYacc.c diff --git a/src/ioc/dbStatic/dbStaticIoc.rc b/src/ioc/dbStatic/dbStaticIoc.rc deleted file mode 100755 index 865e8102d..000000000 --- a/src/ioc/dbStatic/dbStaticIoc.rc +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include "epicsVersion.h" - -VS_VERSION_INFO VERSIONINFO - FILEVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - PRODUCTVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_UNKNOWN - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "Comments","Static Ioc Database Library for EPICS\0" - VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "Static Ioc Database Library\0" - VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "dbStaticIoc\0" - VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "dbStaticIoc.dll\0" - VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" - VALUE "ProductVersion", EPICS_VERSION_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/src/ioc/dbStatic/dbStaticHost.rc b/src/ioc/dbStaticHost.rc similarity index 100% rename from src/ioc/dbStatic/dbStaticHost.rc rename to src/ioc/dbStaticHost.rc diff --git a/src/ioc/dbtemplate/Makefile b/src/ioc/dbtemplate/Makefile index 28ff1a38e..fb35e59e6 100644 --- a/src/ioc/dbtemplate/Makefile +++ b/src/ioc/dbtemplate/Makefile @@ -1,37 +1,21 @@ #************************************************************************* -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../../.. -include $(TOP)/configure/CONFIG +# This is a Makefile fragment, see src/ioc/Makefile. + +SRC_DIRS += $(IOCDIR)/dbtemplate INC += dbLoadTemplate.h INC += dbtoolsIocRegister.h -LIB_SRCS += dbLoadTemplate.c -LIB_SRCS += dbtoolsIocRegister.c +dbCore_SRCS += dbLoadTemplate.c +dbCore_SRCS += dbtoolsIocRegister.c -LIBRARY_IOC = dbtoolsIoc - -dbtoolsIoc_LIBS = dbIoc dbStaticIoc Com - -dbtoolsIoc_RCS = dbtoolsIoc.rc - -HTMLS += dbLoadTemplate.html - -include $(TOP)/configure/RULES - -# -# These lex sources are included in some C sources, -# so they have to be created in time: -# -dbLoadTemplate.c: dbLoadTemplate_lex.c ../dbLoadTemplate.h - -clean:: - @$(RM) dbLoadTemplate_lex.c dbLoadTemplate.c +HTMLS += dbtemplate/dbLoadTemplate.html diff --git a/src/ioc/dbtemplate/RULES b/src/ioc/dbtemplate/RULES new file mode 100644 index 000000000..ecc8113a5 --- /dev/null +++ b/src/ioc/dbtemplate/RULES @@ -0,0 +1,17 @@ +#************************************************************************* +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne +# National Laboratory. +# Copyright (c) 2002 The Regents of the University of California, as +# Operator of Los Alamos National Laboratory. +# EPICS BASE is distributed subject to a Software License Agreement found +# in file LICENSE that is included with this distribution. +#************************************************************************* + +# This is a Makefile fragment, see src/ioc/Makefile. + +# dbLoadTemplate_lex.c is included by dbLoadTemplate.c +dbLoadTemplate.c: dbLoadTemplate_lex.c $(IOCDIR)/dbtemplate/dbLoadTemplate.h + +clean:: + @$(RM) dbLoadTemplate_lex.c dbLoadTemplate.c + diff --git a/src/ioc/dbtemplate/dbtoolsIoc.rc b/src/ioc/dbtemplate/dbtoolsIoc.rc deleted file mode 100755 index 5f3d70bf4..000000000 --- a/src/ioc/dbtemplate/dbtoolsIoc.rc +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include "epicsVersion.h" - -VS_VERSION_INFO VERSIONINFO - FILEVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - PRODUCTVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_UNKNOWN - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "Comments","Ioc Database Tools Library for EPICS\0" - VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "Ioc Database Tools Library\0" - VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "dbtoolsIoc\0" - VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "dbtoolsIoc.dll\0" - VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" - VALUE "ProductVersion", EPICS_VERSION_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/src/ioc/misc/Makefile b/src/ioc/misc/Makefile index 8eeb65c97..8a17b5f02 100644 --- a/src/ioc/misc/Makefile +++ b/src/ioc/misc/Makefile @@ -1,5 +1,5 @@ #************************************************************************* -# Copyright (c) 2009 UChicago Argonne LLC, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. @@ -7,30 +7,23 @@ # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../../.. -include $(TOP)/configure/CONFIG +# This is a Makefile fragment, see src/ioc/Makefile. + +SRC_DIRS += $(IOCDIR)/misc DBD += base.dbd DBD += system.dbd DBD += dlload.dbd +DBD += dbCore.dbd INC += epicsRelease.h INC += iocInit.h INC += miscIocRegister.h INC += iocshRegisterCommon.h -LIB_SRCS += epicsRelease.c -LIB_SRCS += iocInit.c -LIB_SRCS += asSubRecordFunctions.c -LIB_SRCS += miscIocRegister.c -LIB_SRCS += dlload.c -LIB_SRCS += iocshRegisterCommon.c - - -LIBRARY_IOC = miscIoc - -miscIoc_RCS = miscIoc.rc -miscIoc_LIBS = rsrvIoc asIoc dbtoolsIoc dbIoc registryIoc dbStaticIoc ca Com - -include $(TOP)/configure/RULES +dbCore_SRCS += epicsRelease.c +dbCore_SRCS += iocInit.c +dbCore_SRCS += miscIocRegister.c +dbCore_SRCS += dlload.c +dbCore_SRCS += iocshRegisterCommon.c diff --git a/src/ioc/misc/base.dbd b/src/ioc/misc/base.dbd index bade516b1..8d167a0b6 100644 --- a/src/ioc/misc/base.dbd +++ b/src/ioc/misc/base.dbd @@ -43,9 +43,6 @@ include "devSoft.dbd" # Access security subroutines registrar(asSub) -variable(asCaDebug,int) -# dbStaticLib settings -variable(dbRecordsOnceOnly,int) -variable(dbBptNotMonotonic,int) +include "dbCore.dbd" diff --git a/src/ioc/misc/dbCore.dbd b/src/ioc/misc/dbCore.dbd new file mode 100644 index 000000000..eae942b18 --- /dev/null +++ b/src/ioc/misc/dbCore.dbd @@ -0,0 +1,14 @@ +# dbCore.dbd +# +# $Revision-Id$ +# +# This file provides iocsh access to variables that control some lesser-used +# and debugging features of the IOC database code. + +# Access security subroutines +variable(asCaDebug,int) + +# Static database access variables +variable(dbRecordsOnceOnly,int) +variable(dbBptNotMonotonic,int) + diff --git a/src/ioc/misc/misc.rc b/src/ioc/misc/misc.rc deleted file mode 100755 index 040cf26c8..000000000 --- a/src/ioc/misc/misc.rc +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include "epicsVersion.h" - -VS_VERSION_INFO VERSIONINFO - FILEVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - PRODUCTVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_UNKNOWN - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "Comments","Miscellaneous Tools Library for EPICS\0" - VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "Miscellaneous Tools Library\0" - VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "misc\0" - VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "misc.dll\0" - VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" - VALUE "ProductVersion", EPICS_VERSION_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/src/ioc/misc/miscIoc.rc b/src/ioc/misc/miscIoc.rc deleted file mode 100755 index abff0a137..000000000 --- a/src/ioc/misc/miscIoc.rc +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include "epicsVersion.h" - -VS_VERSION_INFO VERSIONINFO - FILEVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - PRODUCTVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_UNKNOWN - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "Comments","Miscellaneous Ioc Tools Library for EPICS\0" - VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "Miscellaneous Ioc Tools Library\0" - VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "miscIoc\0" - VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "miscIoc.dll\0" - VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" - VALUE "ProductVersion", EPICS_VERSION_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/src/ioc/registry/Makefile b/src/ioc/registry/Makefile index 4787b03ee..e5ed28cf3 100644 --- a/src/ioc/registry/Makefile +++ b/src/ioc/registry/Makefile @@ -1,14 +1,15 @@ #************************************************************************* -# Copyright (c) 2007 UChicago Argonne LLC, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../../.. -include $(TOP)/configure/CONFIG +# This is a Makefile fragment, see src/ioc/Makefile. + +SRC_DIRS += $(IOCDIR)/registry INC += registryRecordType.h INC += registryDeviceSupport.h @@ -17,19 +18,12 @@ INC += registryFunction.h INC += registryCommon.h INC += registryIocRegister.h -SCRIPTS_HOST += registerRecordDeviceDriver.pl +SCRIPTS_HOST += registry/registerRecordDeviceDriver.pl -LIB_SRCS += registryRecordType.c -LIB_SRCS += registryDeviceSupport.c -LIB_SRCS += registryDriverSupport.c -LIB_SRCS += registryFunction.c -LIB_SRCS += registryCommon.c -LIB_SRCS += registryIocRegister.c - -LIBRARY_IOC = registryIoc -registryIoc_LIBS = dbStaticIoc Com - -registryIoc_RCS = registryIoc.rc - -include $(TOP)/configure/RULES +dbCore_SRCS += registryRecordType.c +dbCore_SRCS += registryDeviceSupport.c +dbCore_SRCS += registryDriverSupport.c +dbCore_SRCS += registryFunction.c +dbCore_SRCS += registryCommon.c +dbCore_SRCS += registryIocRegister.c diff --git a/src/ioc/registry/registryIoc.rc b/src/ioc/registry/registryIoc.rc deleted file mode 100755 index e2397ba0b..000000000 --- a/src/ioc/registry/registryIoc.rc +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include "epicsVersion.h" - -VS_VERSION_INFO VERSIONINFO - FILEVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - PRODUCTVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_UNKNOWN - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "Comments","Registry Ioc Library for EPICS\0" - VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "Registry Ioc Library\0" - VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "registryIoc\0" - VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "registryIoc.dll\0" - VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" - VALUE "ProductVersion", EPICS_VERSION_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/src/ioc/rsrv/Makefile b/src/ioc/rsrv/Makefile index 7dab12b6f..ba6ed6bd6 100644 --- a/src/ioc/rsrv/Makefile +++ b/src/ioc/rsrv/Makefile @@ -1,33 +1,28 @@ #************************************************************************* -# Copyright (c) 2007 UChicago Argonne LLC, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* -TOP=../../.. -include $(TOP)/configure/CONFIG +# This is a Makefile fragment, see src/ioc/Makefile. -USR_INCLUDES = -I../../../ca/client +SRC_DIRS += $(IOCDIR)/rsrv + +# These need access to net_convert.h from the CA client +caserverio_INCLUDES = -I$(SRC)/ca/client +camessage_INCLUDES = -I$(SRC)/ca/client INC += rsrv.h INC += rsrvIocRegister.h -LIB_SRCS += caserverio.c -LIB_SRCS += caservertask.c -LIB_SRCS += camsgtask.c -LIB_SRCS += camessage.c -LIB_SRCS += cast_server.c -LIB_SRCS += online_notify.c -LIB_SRCS += rsrvIocRegister.c +dbCore_SRCS += caserverio.c +dbCore_SRCS += caservertask.c +dbCore_SRCS += camsgtask.c +dbCore_SRCS += camessage.c +dbCore_SRCS += cast_server.c +dbCore_SRCS += online_notify.c +dbCore_SRCS += rsrvIocRegister.c -LIBRARY_IOC = rsrvIoc - -rsrvIoc_LIBS = asIoc dbIoc ca Com - -rsrvIoc_SYS_LIBS_WIN32 := ws2_32 -rsrvIoc_RCS = rsrvIoc.rc - -include $(TOP)/configure/RULES diff --git a/src/ioc/rsrv/rsrvIoc.rc b/src/ioc/rsrv/rsrvIoc.rc deleted file mode 100755 index 758096e16..000000000 --- a/src/ioc/rsrv/rsrvIoc.rc +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include "epicsVersion.h" - -VS_VERSION_INFO VERSIONINFO - FILEVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - PRODUCTVERSION EPICS_VERSION,EPICS_REVISION,EPICS_MODIFICATION,EPICS_PATCH_LEVEL - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_UNKNOWN - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "Comments","Channel Access Ioc Resource Server Library for EPICS\0" - VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "Channel Access Ioc Resource Server Library\0" - VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "rsrv\0" - VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "rsrv.dll\0" - VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" - VALUE "ProductVersion", EPICS_VERSION_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/src/std/dev/Makefile b/src/std/dev/Makefile index 4c3eb5a51..727ae2db2 100644 --- a/src/std/dev/Makefile +++ b/src/std/dev/Makefile @@ -52,8 +52,10 @@ LIBSRCS += devSoSoftCallback.c LIBSRCS += devTimestamp.c LIBSRCS += devSoStdio.c +LIB_SRCS += asSubRecordFunctions.c + LIBRARY_IOC += softDevIoc -softDevIoc_LIBS += miscIoc recIoc asIoc dbIoc registryIoc dbStaticIoc ca Com +softDevIoc_LIBS += dbCore ca Com softDevIoc_RCS = softDevIoc.rc include $(TOP)/configure/RULES diff --git a/src/ioc/misc/asSubRecordFunctions.c b/src/std/dev/asSubRecordFunctions.c similarity index 100% rename from src/ioc/misc/asSubRecordFunctions.c rename to src/std/dev/asSubRecordFunctions.c diff --git a/src/std/rec/Makefile b/src/std/rec/Makefile index 8068271dd..53694a44a 100644 --- a/src/std/rec/Makefile +++ b/src/std/rec/Makefile @@ -71,7 +71,7 @@ LIBSRCS += waveformRecord.c LIBRARY_IOC += recIoc -recIoc_LIBS = asIoc dbIoc registryIoc dbStaticIoc ca Com +recIoc_LIBS = dbCore ca Com recIoc_RCS = recIoc.rc include $(TOP)/configure/RULES