diff --git a/configure/E3/CONFIG_EXPORT b/configure/E3/CONFIG_EXPORT index b79f0a3da00b2eb6edcb064402ca652f1546f859..781f23d95543ae54efeeca7933fe385ebb846bee 100644 --- a/configure/E3/CONFIG_EXPORT +++ b/configure/E3/CONFIG_EXPORT @@ -13,13 +13,12 @@ MSI:=$(EPICS_BASE)/bin/$(EPICS_HOST_ARCH)/msi EXPORT_VARS+=EPICS_HOST_ARCH EXPORT_VARS+=EPICS_BASE EXPORT_VARS+=MSI -EXPORT_VARS+=E3_REQUIRE_TOOLS EXPORT_VARS+=E3_MODULE_VERSION EXPORT_VARS+=E3_SITEMODS_PATH EXPORT_VARS+=E3_SITEAPPS_PATH EXPORT_VARS+=E3_SITELIBS_PATH -EXPORT_VARS+=E3_SEQUENCER_NAME -EXPORT_VARS+=E3_SEQUENCER_VERSION +EXPORT_VARS+=$(filter E3_REQUIRE_%,$(.VARIABLES)) + EXPORT_VARS+=QUIET diff --git a/configure/E3/CONFIG_REQUIRE b/configure/E3/CONFIG_REQUIRE index 7a3f2a2f1c8957668e2b83ceae699bd582906ed8..03658ae6cc7d506ea876a118800f0be64624e6bf 100644 --- a/configure/E3/CONFIG_REQUIRE +++ b/configure/E3/CONFIG_REQUIRE @@ -18,7 +18,8 @@ E3_REQUIRE_LIB:=$(E3_REQUIRE_LOCATION)/lib E3_REQUIRE_DB:=$(E3_REQUIRE_LOCATION)/db E3_REQUIRE_DBD:=$(E3_REQUIRE_LOCATION)/dbd E3_REQUIRE_INC:=$(E3_REQUIRE_LOCATION)/include +E3_REQUIRE_CONFIG:=$(E3_REQUIRE_LOCATION)/configure -export E3_REQUIRE_TOOLS -export E3_REQUIRE_BIN + +EXPORT_VARS+=$(filter E3_REQUIRE_%,$(.VARIABLES)) diff --git a/configure/E3/RULES_REQUIRE b/configure/E3/RULES_REQUIRE index 2bb8f1d9780f4d516d0aab62a6405c2e2b5d0978..63160d11ffc304b3fae28ebe459903590f967fbb 100644 --- a/configure/E3/RULES_REQUIRE +++ b/configure/E3/RULES_REQUIRE @@ -1,6 +1,5 @@ # -*- mode: Makefile;-*- - # The following VARIABLES are defined in RULES_REQUIRE instead of CONFIG_REQUIRE, # because they are used in ONLY RULES_REQUIRE. It is easy to understand them. # @@ -10,42 +9,33 @@ IOCSH_HASH_VERSION:=$(shell git rev-parse --short HEAD) # If git rev-parse returns null, use the EPICS_MODULE_TAG IOCSH_HASH_VERSION?=$(EPICS_MODULE_TAG) -E3_IOC_SHELL_FILE:=$(TOP)/tools/iocsh.bash -E3_IOC_SHELL_GDB_FILE:=$(TOP)/tools/iocsh_gdb.bash -E3_IOC_SHELL_NICE_FILE:=$(TOP)/tools/iocsh_nice.bash -E3_IOC_FUNC_FILE:=$(TOP)/tools/iocsh_functions -E3_IOC_ENVCFG_FILE:=$(TOP)/tools/ess-env.conf -# The following file will be generated in $(TOP), -# and move to $(E3_REQUIRE_BIN), and will be -# used in $(E3_REQUIRE_BIN)/setE3Env.bash +FILE_FILTER:= %~ %\# +E3_ESSENVCFG_FILE := $(TOP)/tools/ess-env.conf +E3_CONFIG_FILE := $(TOP)/tools/e3.cfg # -G_E3_CFG_FILE:=$(TOP)/tools/e3.cfg -G_E3_ENV_FILE:=$(TOP)/tools/setE3Env.bash -G_E3_EXCLUDE_FLAGS:=$(TOP)/tools/excludeflags.mk - +E3_SHELL_FILES := $(wildcard $(TOP)/tools/iocsh*.bash) +E3_IOC_CFG_FILES := $(TOP)/tools/iocsh_functions +E3_IOC_CFG_FILES += $(E3_ESSENVCFG_FILE) +E3_IOC_CFG_FILES += $(E3_CONFIG_FILE) +E3_IOC_CFG_FILES += $(TOP)/tools/setE3Env.bash +E3_REQUIRE_CONF_FILES := $(filter-out $(FILE_FILTER), $(wildcard $(TOP)/configure/modules/*)) .PHONY: e3-site-conf e3-site-path requireconf -requireconf: e3-site-path e3-site-conf +requireconf: e3-site-path e3-site-conf e3-require-path + $(QUIET) $(SUDO) install -m 755 $(wildcard $(E3_MODULE_SRC_PATH)/App/tools/*.tcl) $(E3_REQUIRE_TOOLS)/ + $(QUIET) $(SUDO) install -m 644 $(E3_MODULE_SRC_PATH)/App/tools/driver.makefile $(E3_REQUIRE_TOOLS)/ + $(QUIET) $(SUDO) install -m 755 $(E3_SHELL_FILES) $(E3_REQUIRE_BIN)/ + $(QUIET) $(SUDO) install -m 644 $(E3_IOC_CFG_FILES) $(E3_REQUIRE_BIN)/ + $(QUIET) $(SUDO) install -m 644 $(E3_REQUIRE_CONF_FILES) $(E3_REQUIRE_CONFIG)/ + + +e3-require-path: $(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_TOOLS) $(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_BIN) - $(QUIET) $(SUDO) install -m 644 $(E3_MODULE_SRC_PATH)/App/tools/driver.makefile $(E3_REQUIRE_TOOLS)/ - $(QUIET) $(SUDO) install -m 644 $(G_E3_EXCLUDE_FLAGS) $(E3_REQUIRE_TOOLS)/ - $(QUIET) $(SUDO) install -m 755 $(E3_MODULE_SRC_PATH)/App/tools/*.tcl $(E3_REQUIRE_TOOLS)/ - $(QUIET) sed -i 's/^IOCSH_HASH_VERSION=.*/IOCSH_HASH_VERSION=$(IOCSH_HASH_VERSION)/g' $(E3_IOC_ENVCFG_FILE) - $(QUIET) $(SUDO) install -m 644 $(E3_IOC_FUNC_FILE) $(E3_REQUIRE_BIN)/ - $(QUIET) $(SUDO) install -m 644 $(E3_IOC_ENVCFG_FILE) $(E3_REQUIRE_BIN)/ - $(QUIET) $(SUDO) install -m 755 $(E3_IOC_SHELL_FILE) $(E3_REQUIRE_BIN)/ - $(QUIET) $(SUDO) install -m 755 $(E3_IOC_SHELL_GDB_FILE) $(E3_REQUIRE_BIN)/ - $(QUIET) $(SUDO) install -m 755 $(E3_IOC_SHELL_NICE_FILE) $(E3_REQUIRE_BIN)/ - $(QUIET) $(SUDO) install -m 644 $(G_E3_CFG_FILE) $(E3_REQUIRE_BIN)/ - $(QUIET) $(SUDO) install -m 644 $(G_E3_ENV_FILE) $(E3_REQUIRE_BIN)/ - $(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_LOCATION)/configure - $(QUIET) $(SUDO) install -m 644 $(TOP)/configure/modules/* $(E3_REQUIRE_LOCATION)/configure/ - - -# Create SITE PATH + $(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_CONFIG) + e3-site-path: $(QUIET) $(SUDO) install -d -m 755 $(E3_SITELIBS_PATH) @@ -53,13 +43,20 @@ e3-site-path: $(QUIET) $(SUDO) install -d -m 755 $(E3_SITEAPPS_PATH) - e3-site-conf: # Makefile VERSION > 4.x is needed, DEFINES_REQUIRE can be found in a19eb01 # $(QUIET) $(file > $(G_E3_CFG_FILE), $(E3_CFG_VARS)) - @echo "declare -g DEFAULT_EPICS_BASE=$(E3_MODULES_PATH)" > $(G_E3_CFG_FILE) - @echo "declare -g DEFAULT_REQUIRE_NAME=$(E3_REQUIRE_NAME)" >> $(G_E3_CFG_FILE) - @echo "declare -g DEFAULT_REQUIRE_VERSION=$(E3_REQUIRE_VERSION)" >> $(G_E3_CFG_FILE) + $(QUIET)echo "declare -g DEFAULT_EPICS_BASE=$(E3_MODULES_PATH)" > $(E3_CONFIG_FILE) + $(QUIET)echo "declare -g DEFAULT_REQUIRE_NAME=$(E3_REQUIRE_NAME)" >> $(E3_CONFIG_FILE) + $(QUIET)echo "declare -g DEFAULT_REQUIRE_VERSION=$(E3_REQUIRE_VERSION)" >> $(E3_CONFIG_FILE) + $(QUIET)sed -i 's/^IOCSH_HASH_VERSION=.*/IOCSH_HASH_VERSION=$(IOCSH_HASH_VERSION)/g' $(E3_ESSENVCFG_FILE) + +VARS_EXCLUDES+=FILE_FILTER +VARS_EXCLUDES+=E3_SHELL_FILES +VARS_EXCLUDES+=E3_IOC_CFG_FILES +VARS_EXCLUDES+=E3_REQUIRE_CONF_FILES +VARS_EXCLUDES+=E3_ESSENVCFG_FILE +VARS_EXCLUDES+=E3_CONFIG_FILE diff --git a/configure/modules/CONFIG_E3_MAKEFILE b/configure/modules/CONFIG_E3_MAKEFILE index b3a1c37097c2216d4d29eebe057369394a918fb1..52dd1db516b41a48f9fc4a0bb89e3ce0b75b6e93 100644 --- a/configure/modules/CONFIG_E3_MAKEFILE +++ b/configure/modules/CONFIG_E3_MAKEFILE @@ -11,8 +11,7 @@ E3_REQUIRE_MAKEFILE_INPUT_OPTIONS += BUILDCLASSES="Linux" E3_REQUIRE_MAKEFILE_INPUT_OPTIONS += E3_SITEMODS_PATH="$(E3_SITEMODS_PATH)" E3_REQUIRE_MAKEFILE_INPUT_OPTIONS += E3_SITEAPPS_PATH="$(E3_SITEAPPS_PATH)" E3_REQUIRE_MAKEFILE_INPUT_OPTIONS += E3_SITELIBS_PATH="$(E3_SITELIBS_PATH)" -E3_REQUIRE_MAKEFILE_INPUT_OPTIONS += E3_SEQUENCER_NAME="$(E3_SEQUENCER_NAME)" -E3_REQUIRE_MAKEFILE_INPUT_OPTIONS += E3_SEQUENCER_VERSION="$(E3_SEQUENCER_VERSION)" + E3_MODULE_MAKE_CMDS:=make $(E3_REQUIRE_MAKEFILE_INPUT_OPTIONS) diff --git a/configure/modules/CONFIG_EXPORT b/configure/modules/CONFIG_EXPORT index 891e5a29b1c126d0cf830135df8834a886efd149..44a74c124717382915de6975ef7a8b23d1923eec 100644 --- a/configure/modules/CONFIG_EXPORT +++ b/configure/modules/CONFIG_EXPORT @@ -16,8 +16,6 @@ EXPORT_VARS+=E3_MODULE_VERSION EXPORT_VARS+=E3_SITEMODS_PATH EXPORT_VARS+=E3_SITEAPPS_PATH EXPORT_VARS+=E3_SITELIBS_PATH -EXPORT_VARS+=E3_SEQUENCER_NAME -EXPORT_VARS+=E3_SEQUENCER_VERSION EXPORT_VARS+=$(filter E3_REQUIRE_%,$(.VARIABLES)) EXPORT_VARS+=QUIET diff --git a/tools/excludeflag.mk b/tools/excludeflag.mk deleted file mode 100644 index d99a547b3bb926763f4f70ffd1ba3a8952fa46ee..0000000000000000000000000000000000000000 --- a/tools/excludeflag.mk +++ /dev/null @@ -1,83 +0,0 @@ - -iocStats_VERSION= -autosave_VERSION= -asyn_VERSION= -busy_VERSION= -modbus_VERSION= -ipmiComm_VERSION= -# Remove sequencer....due to "duplicated" VARIABLES -#sequencer_VERSION= -sscan_VERSION= - -std_VERSION= -ip_VERSION= -calc_VERSION= -delaygen_VERSION= -pcre_VERSION= -stream_VERSION= -s7plc_VERSION= -recsync_VERSION= -MCoreUtils_VERSION= - -devlib2_VERSION= -mrfioc2_VERSION= - -exprtk_VERSION= -motor_VERSION= -ecmc_VERSION= -EthercatMC_VERSION= -ecmctraining_VERSION= - -keypress_VERSION= -sysfs_VERSION= -symbolname_VERSION= -memDisplay_VERSION= -regdev_VERSION= -i2cDev_VERSION= - -tosca_VERSION= -tsclib_VERSION= -ifcdaqdrv2_VERSION= - -## The main issue is nds3, it is mandatory to disable it -## -nds3_VERSION= -nds3epics_VERSION= -ifc14edrv_VERSION= -ifcfastint_VERSION= - - -nds_VERSION= -loki_VERSION= -nds_VERSION= -sis8300drv_VERSION= -sis8300_VERSION= -sis8300llrfdrv_VERSION= -sis8300llrf_VERSION= - -ADSupport_VERSION= -ADCore_VERSION= -ADSimDetector_VERSION= -ADAndor_VERSION= -ADAndor3_VERSION= -ADPointGrey_VERSION= -ADProsilica_VERSION= - -amcpico8_VERSION= -adpico8_VERSION= -adsis8300_VERSION= -adsis8300bcm_VERSION= -adsis8300bpm_VERSION= -adsis8300fc_VERSION= - -pvCommon_VERSION= -pvData_VERSION= -pvAccess_VERSION= -pva2pva_VERSION= -pvDatabase_VERSION= -normativeTypes_VERSION= -pvaClient_VERSION= - - - - diff --git a/tools/excludeflags.mk b/tools/excludeflags.mk deleted file mode 100644 index d99a547b3bb926763f4f70ffd1ba3a8952fa46ee..0000000000000000000000000000000000000000 --- a/tools/excludeflags.mk +++ /dev/null @@ -1,83 +0,0 @@ - -iocStats_VERSION= -autosave_VERSION= -asyn_VERSION= -busy_VERSION= -modbus_VERSION= -ipmiComm_VERSION= -# Remove sequencer....due to "duplicated" VARIABLES -#sequencer_VERSION= -sscan_VERSION= - -std_VERSION= -ip_VERSION= -calc_VERSION= -delaygen_VERSION= -pcre_VERSION= -stream_VERSION= -s7plc_VERSION= -recsync_VERSION= -MCoreUtils_VERSION= - -devlib2_VERSION= -mrfioc2_VERSION= - -exprtk_VERSION= -motor_VERSION= -ecmc_VERSION= -EthercatMC_VERSION= -ecmctraining_VERSION= - -keypress_VERSION= -sysfs_VERSION= -symbolname_VERSION= -memDisplay_VERSION= -regdev_VERSION= -i2cDev_VERSION= - -tosca_VERSION= -tsclib_VERSION= -ifcdaqdrv2_VERSION= - -## The main issue is nds3, it is mandatory to disable it -## -nds3_VERSION= -nds3epics_VERSION= -ifc14edrv_VERSION= -ifcfastint_VERSION= - - -nds_VERSION= -loki_VERSION= -nds_VERSION= -sis8300drv_VERSION= -sis8300_VERSION= -sis8300llrfdrv_VERSION= -sis8300llrf_VERSION= - -ADSupport_VERSION= -ADCore_VERSION= -ADSimDetector_VERSION= -ADAndor_VERSION= -ADAndor3_VERSION= -ADPointGrey_VERSION= -ADProsilica_VERSION= - -amcpico8_VERSION= -adpico8_VERSION= -adsis8300_VERSION= -adsis8300bcm_VERSION= -adsis8300bpm_VERSION= -adsis8300fc_VERSION= - -pvCommon_VERSION= -pvData_VERSION= -pvAccess_VERSION= -pva2pva_VERSION= -pvDatabase_VERSION= -normativeTypes_VERSION= -pvaClient_VERSION= - - - -