diff --git a/configure/CONFIG_BASE b/configure/CONFIG_BASE index be0a24316..e88e1e80d 100644 --- a/configure/CONFIG_BASE +++ b/configure/CONFIG_BASE @@ -21,8 +21,7 @@ endif #--------------------------------------------------------------- # Epics base Ioc libraries -EPICS_BASE_IOC_LIBS += recIoc softDevIoc -EPICS_BASE_IOC_LIBS += dbCore ca Com +EPICS_BASE_IOC_LIBS += dbRecStd dbCore ca Com #--------------------------------------------------------------- # Epics base Host libraries diff --git a/configure/RULES.Db b/configure/RULES.Db index 9eb27e527..311949219 100644 --- a/configure/RULES.Db +++ b/configure/RULES.Db @@ -263,7 +263,7 @@ $(COMMON_DIR)/%.dbd: $(COMMON_DIR)/%Include.dbd $(ECHO) "$<:../Makefile" >> $(notdir $@)$(DEP) $(ECHO) "Expanding dbd" @$(RM) $@ - @$(DBEXPAND) $(DBDFLAGS) -o $@ $< + $(DBEXPAND) $(DBDFLAGS) -o $@ $< $(COMMON_DIR)/%.dbd: %Include.dbd @$(RM) $(notdir $@)$(DEP) diff --git a/src/Makefile b/src/Makefile index 171853242..88a03d7c6 100644 --- a/src/Makefile +++ b/src/Makefile @@ -63,14 +63,8 @@ ioc/db/test_DEPEND_DIRS = ioc libCom/RTEMS # PDB Standard Record Definitions -DIRS += std/rec -std/rec_DEPEND_DIRS = ioc - -DIRS += std/dev -std/dev_DEPEND_DIRS = std/rec ioc - -DIRS += std/softIoc -std/softIoc_DEPEND_DIRS = std/dev ioc libCom/RTEMS +DIRS += std +std_DEPEND_DIRS = ioc libCom/RTEMS include $(TOP)/configure/RULES_DIRS diff --git a/src/ioc/Makefile b/src/ioc/Makefile index 59fc5f345..6dbd13b54 100644 --- a/src/ioc/Makefile +++ b/src/ioc/Makefile @@ -13,7 +13,7 @@ include $(TOP)/configure/CONFIG SRC = $(TOP)/src IOCDIR = $(SRC)/ioc -LIBRARY += dbCore +LIBRARY_IOC += dbCore dbCore_LIBS += ca Com dbCore_SYS_LIBS_WIN32 += ws2_32 diff --git a/src/ioc/misc/Makefile b/src/ioc/misc/Makefile index 8a17b5f02..e97efe15a 100644 --- a/src/ioc/misc/Makefile +++ b/src/ioc/misc/Makefile @@ -11,7 +11,6 @@ SRC_DIRS += $(IOCDIR)/misc -DBD += base.dbd DBD += system.dbd DBD += dlload.dbd DBD += dbCore.dbd diff --git a/src/ioc/misc/base.dbd b/src/ioc/misc/base.dbd deleted file mode 100644 index 8d167a0b6..000000000 --- a/src/ioc/misc/base.dbd +++ /dev/null @@ -1,48 +0,0 @@ -# $Revision-Id$ -# -# This file defines the standard record types and device support -# provided by Base and (usually) loaded into all IOCs. - -# Menus -include "menuGlobal.dbd" -include "menuConvert.dbd" - -# Record types -include "aaiRecord.dbd" -include "aaoRecord.dbd" -include "aiRecord.dbd" -include "aoRecord.dbd" -include "aSubRecord.dbd" -include "biRecord.dbd" -include "boRecord.dbd" -include "calcRecord.dbd" -include "calcoutRecord.dbd" -include "compressRecord.dbd" -include "dfanoutRecord.dbd" -include "eventRecord.dbd" -include "fanoutRecord.dbd" -include "histogramRecord.dbd" -include "longinRecord.dbd" -include "longoutRecord.dbd" -include "mbbiRecord.dbd" -include "mbbiDirectRecord.dbd" -include "mbboRecord.dbd" -include "mbboDirectRecord.dbd" -include "permissiveRecord.dbd" -include "selRecord.dbd" -include "seqRecord.dbd" -include "stateRecord.dbd" -include "stringinRecord.dbd" -include "stringoutRecord.dbd" -include "subRecord.dbd" -include "subArrayRecord.dbd" -include "waveformRecord.dbd" - -# "Soft Channel", "Raw Soft Channel", and "Async Soft Channel" device support -include "devSoft.dbd" - -# Access security subroutines -registrar(asSub) - -include "dbCore.dbd" - diff --git a/src/std/Makefile b/src/std/Makefile new file mode 100644 index 000000000..a3cb4fbbb --- /dev/null +++ b/src/std/Makefile @@ -0,0 +1,30 @@ +#************************************************************************* +# 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 + +STDDIR=$(TOP)/src/std + +USR_DBDFLAGS += -I ../rec -I ../dev -I ../softIoc + +LIBRARY_IOC += dbRecStd +dbRecStd_LIBS = dbCore ca Com + +dbRecStd_RCS += dbRecStd.rc + +include $(STDDIR)/dev/Makefile +include $(STDDIR)/rec/Makefile +include $(STDDIR)/softIoc/Makefile + +include $(TOP)/configure/RULES + +include $(STDDIR)/rec/RULES +include $(STDDIR)/softIoc/RULES + diff --git a/src/std/rec/recIoc.rc b/src/std/dbRecStd.rc similarity index 78% rename from src/std/rec/recIoc.rc rename to src/std/dbRecStd.rc index 7dad57625..c7ba829fa 100755 --- a/src/std/rec/recIoc.rc +++ b/src/std/dbRecStd.rc @@ -18,13 +18,13 @@ BEGIN BEGIN BLOCK "040904b0" BEGIN - VALUE "Comments","Record Support Library for EPICS\0" + VALUE "Comments","Record and Soft Device Support Library for EPICS\0" VALUE "CompanyName", "The EPICS collaboration\0" - VALUE "FileDescription", "Record Support Library\0" + VALUE "FileDescription", "Record and Soft Device Support Library\0" VALUE "FileVersion", EPICS_VERSION_STRING "\0" - VALUE "InternalName", "rec\0" + VALUE "InternalName", "dbRecStd\0" VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0" - VALUE "OriginalFilename", "rec.dll\0" + VALUE "OriginalFilename", "dbRecStd.dll\0" VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0" VALUE "ProductVersion", EPICS_VERSION_STRING "\0" END diff --git a/src/std/dev/Makefile b/src/std/dev/Makefile index 727ae2db2..a118f7057 100644 --- a/src/std/dev/Makefile +++ b/src/std/dev/Makefile @@ -1,63 +1,57 @@ #************************************************************************* -# Copyright (c) 2006 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/std/Makefile. + +SRC_DIRS += $(STDDIR)/dev DBD += devSoft.dbd -LIBSRCS += devAaiSoft.c -LIBSRCS += devAaoSoft.c -LIBSRCS += devAiSoft.c -LIBSRCS += devAiSoftRaw.c -LIBSRCS += devAoSoft.c -LIBSRCS += devAoSoftRaw.c -LIBSRCS += devBiSoft.c -LIBSRCS += devBiSoftRaw.c -LIBSRCS += devBoSoft.c -LIBSRCS += devBoSoftRaw.c -LIBSRCS += devCalcoutSoft.c -LIBSRCS += devEventSoft.c -LIBSRCS += devHistogramSoft.c -LIBSRCS += devLiSoft.c -LIBSRCS += devLoSoft.c -LIBSRCS += devMbbiDirectSoft.c -LIBSRCS += devMbbiDirectSoftRaw.c -LIBSRCS += devMbbiSoft.c -LIBSRCS += devMbbiSoftRaw.c -LIBSRCS += devMbboDirectSoft.c -LIBSRCS += devMbboDirectSoftRaw.c -LIBSRCS += devMbboSoft.c -LIBSRCS += devMbboSoftRaw.c -LIBSRCS += devSASoft.c -LIBSRCS += devSiSoft.c -LIBSRCS += devSoSoft.c -LIBSRCS += devWfSoft.c -LIBSRCS += devGeneralTime.c +dbRecStd_SRCS += devAaiSoft.c +dbRecStd_SRCS += devAaoSoft.c +dbRecStd_SRCS += devAiSoft.c +dbRecStd_SRCS += devAiSoftRaw.c +dbRecStd_SRCS += devAoSoft.c +dbRecStd_SRCS += devAoSoftRaw.c +dbRecStd_SRCS += devBiSoft.c +dbRecStd_SRCS += devBiSoftRaw.c +dbRecStd_SRCS += devBoSoft.c +dbRecStd_SRCS += devBoSoftRaw.c +dbRecStd_SRCS += devCalcoutSoft.c +dbRecStd_SRCS += devEventSoft.c +dbRecStd_SRCS += devHistogramSoft.c +dbRecStd_SRCS += devLiSoft.c +dbRecStd_SRCS += devLoSoft.c +dbRecStd_SRCS += devMbbiDirectSoft.c +dbRecStd_SRCS += devMbbiDirectSoftRaw.c +dbRecStd_SRCS += devMbbiSoft.c +dbRecStd_SRCS += devMbbiSoftRaw.c +dbRecStd_SRCS += devMbboDirectSoft.c +dbRecStd_SRCS += devMbboDirectSoftRaw.c +dbRecStd_SRCS += devMbboSoft.c +dbRecStd_SRCS += devMbboSoftRaw.c +dbRecStd_SRCS += devSASoft.c +dbRecStd_SRCS += devSiSoft.c +dbRecStd_SRCS += devSoSoft.c +dbRecStd_SRCS += devWfSoft.c +dbRecStd_SRCS += devGeneralTime.c -LIBSRCS += devAoSoftCallback.c -LIBSRCS += devBoSoftCallback.c -LIBSRCS += devCalcoutSoftCallback.c -LIBSRCS += devLoSoftCallback.c -LIBSRCS += devMbboSoftCallback.c -LIBSRCS += devMbboDirectSoftCallback.c -LIBSRCS += devSoSoftCallback.c +dbRecStd_SRCS += devAoSoftCallback.c +dbRecStd_SRCS += devBoSoftCallback.c +dbRecStd_SRCS += devCalcoutSoftCallback.c +dbRecStd_SRCS += devLoSoftCallback.c +dbRecStd_SRCS += devMbboSoftCallback.c +dbRecStd_SRCS += devMbboDirectSoftCallback.c +dbRecStd_SRCS += devSoSoftCallback.c -LIBSRCS += devTimestamp.c -LIBSRCS += devSoStdio.c - -LIB_SRCS += asSubRecordFunctions.c - -LIBRARY_IOC += softDevIoc -softDevIoc_LIBS += dbCore ca Com -softDevIoc_RCS = softDevIoc.rc - -include $(TOP)/configure/RULES +dbRecStd_SRCS += devTimestamp.c +dbRecStd_SRCS += devSoStdio.c +dbRecStd_SRCS += asSubRecordFunctions.c diff --git a/src/std/rec/Makefile b/src/std/rec/Makefile index 53694a44a..fbd23fd5a 100644 --- a/src/std/rec/Makefile +++ b/src/std/rec/Makefile @@ -1,13 +1,15 @@ #************************************************************************* -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne +# Copyright (c) 2011 The University of Chicago, 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/std/Makefile. + +SRC_DIRS += $(STDDIR)/rec DBDINC += aaiRecord DBDINC += aaoRecord @@ -39,40 +41,37 @@ DBDINC += subRecord DBDINC += subArrayRecord DBDINC += waveformRecord -LIBSRCS += aaiRecord.c -LIBSRCS += aaoRecord.c -LIBSRCS += aiRecord.c -LIBSRCS += aoRecord.c -LIBSRCS += aSubRecord.c -LIBSRCS += biRecord.c -LIBSRCS += boRecord.c -LIBSRCS += calcRecord.c -LIBSRCS += calcoutRecord.c -LIBSRCS += compressRecord.c -LIBSRCS += dfanoutRecord.c -LIBSRCS += eventRecord.c -LIBSRCS += fanoutRecord.c -LIBSRCS += histogramRecord.c -LIBSRCS += longinRecord.c -LIBSRCS += longoutRecord.c -LIBSRCS += mbbiRecord.c -LIBSRCS += mbbiDirectRecord.c -LIBSRCS += mbboRecord.c -LIBSRCS += mbboDirectRecord.c -LIBSRCS += permissiveRecord.c -LIBSRCS += selRecord.c -LIBSRCS += seqRecord.c -LIBSRCS += stateRecord.c -LIBSRCS += stringinRecord.c -LIBSRCS += stringoutRecord.c -LIBSRCS += subRecord.c -LIBSRCS += subArrayRecord.c -LIBSRCS += waveformRecord.c +DBD += stdRecords.dbd -LIBRARY_IOC += recIoc +stdRecords_DBD = $(patsubst %,%.dbd,$(DBDINC)) -recIoc_LIBS = dbCore ca Com -recIoc_RCS = recIoc.rc - -include $(TOP)/configure/RULES +dbRecStd_SRCS += aaiRecord.c +dbRecStd_SRCS += aaoRecord.c +dbRecStd_SRCS += aiRecord.c +dbRecStd_SRCS += aoRecord.c +dbRecStd_SRCS += aSubRecord.c +dbRecStd_SRCS += biRecord.c +dbRecStd_SRCS += boRecord.c +dbRecStd_SRCS += calcRecord.c +dbRecStd_SRCS += calcoutRecord.c +dbRecStd_SRCS += compressRecord.c +dbRecStd_SRCS += dfanoutRecord.c +dbRecStd_SRCS += eventRecord.c +dbRecStd_SRCS += fanoutRecord.c +dbRecStd_SRCS += histogramRecord.c +dbRecStd_SRCS += longinRecord.c +dbRecStd_SRCS += longoutRecord.c +dbRecStd_SRCS += mbbiRecord.c +dbRecStd_SRCS += mbbiDirectRecord.c +dbRecStd_SRCS += mbboRecord.c +dbRecStd_SRCS += mbboDirectRecord.c +dbRecStd_SRCS += permissiveRecord.c +dbRecStd_SRCS += selRecord.c +dbRecStd_SRCS += seqRecord.c +dbRecStd_SRCS += stateRecord.c +dbRecStd_SRCS += stringinRecord.c +dbRecStd_SRCS += stringoutRecord.c +dbRecStd_SRCS += subRecord.c +dbRecStd_SRCS += subArrayRecord.c +dbRecStd_SRCS += waveformRecord.c diff --git a/src/std/rec/RULES b/src/std/rec/RULES new file mode 100644 index 000000000..702ff7009 --- /dev/null +++ b/src/std/rec/RULES @@ -0,0 +1,15 @@ +#************************************************************************* +# Copyright (c) 2011 The University of Chicago, 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/std/Makefile. + +$(COMMON_DIR)/stdRecords.dbd: + $(RM) $@ + $(PERL) $(TOOLS)/makeIncludeDbd.pl $(stdRecords_DBD) $@ + diff --git a/src/std/softIoc/Makefile b/src/std/softIoc/Makefile index 00f528643..fff5c466d 100644 --- a/src/std/softIoc/Makefile +++ b/src/std/softIoc/Makefile @@ -1,17 +1,19 @@ ########################################################################## -# Copyright (c) 2009 UChicago Argonne LLC, as Operator of Argonne +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in the file LICENSE that is included with this distribution. ########################################################################## -TOP=../../.. +# This is a Makefile fragment, see src/ioc/Makefile. -include $(TOP)/configure/CONFIG +SRC_DIRS += $(STDDIR)/softIoc PROD_IOC = softIoc +DBD += base.dbd DBD += softIoc.dbd + softIoc_DBD += base.dbd softIoc_DBD += dlload.dbd softIoc_DBD += system.dbd @@ -26,14 +28,3 @@ DB += softIocExit.db FINAL_LOCATION ?= $(shell $(PERL) $(TOOLS)/fullPathName.pl $(INSTALL_LOCATION)) -include $(TOP)/configure/RULES - -softMain$(OBJ) : epicsInstallDir.h - -epicsInstallDir.h: - $(ECHO) "FINAL_LOCATION=$(FINAL_LOCATION)" - $(PERL) ../makeInstallDir.pl '$(FINAL_LOCATION)' > $@ - -clean:: - @$(RM) epicsInstallDir.h - diff --git a/src/std/softIoc/RULES b/src/std/softIoc/RULES new file mode 100644 index 000000000..e57ec913d --- /dev/null +++ b/src/std/softIoc/RULES @@ -0,0 +1,20 @@ +########################################################################## +# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne +# National Laboratory. +# EPICS BASE is distributed subject to a Software License Agreement found +# in the file LICENSE that is included with this distribution. +########################################################################## + +# This is a Makefile fragment, see src/ioc/Makefile. + +$(COMMON_DIR)/softIoc.dbd: $(INSTALL_DBD)/stdRecords.dbd + +softMain$(OBJ): epicsInstallDir.h + +epicsInstallDir.h: + $(ECHO) "FINAL_LOCATION=$(FINAL_LOCATION)" + $(PERL) $(STDDIR)/softIoc/makeInstallDir.pl '$(FINAL_LOCATION)' > $@ + +clean:: + @$(RM) epicsInstallDir.h + diff --git a/src/std/softIoc/base.dbd b/src/std/softIoc/base.dbd new file mode 100644 index 000000000..894a46722 --- /dev/null +++ b/src/std/softIoc/base.dbd @@ -0,0 +1,20 @@ +# $Revision-Id$ +# +# This file defines the standard record types and device support +# provided by Base and (usually) loaded into all IOCs. + +# Menus +include "menuGlobal.dbd" +include "menuConvert.dbd" + +# Record types +include "stdRecords.dbd" + +# "Soft Channel", "Raw Soft Channel", and "Async Soft Channel" device support +include "devSoft.dbd" + +# Access security subroutines +registrar(asSub) + +include "dbCore.dbd" +