diff --git a/configure/modules/RULES_E3 b/configure/modules/RULES_E3 index 80775fc25f7e461462f79b0205ae1d415e505aa2..790e8fb862a9988a7acae292441b8476d87386a0 100644 --- a/configure/modules/RULES_E3 +++ b/configure/modules/RULES_E3 @@ -29,7 +29,7 @@ help: ## Install current module to $(EPICS_BASE)/require/$(E3_REQUIRE_VERSION)/siteMods -install: install_module install_links vlibs +install: install_module install_links install_module: build db $(QUIET) $(E3_MODULE_MAKE_CMDS) install diff --git a/configure/modules/RULES_VLIBS b/configure/modules/RULES_VLIBS index d43284108ee3f3f60ea866ef5977801eb39a1694..427bdef2006165db46e1fa0378bf231b1b8da55b 100644 --- a/configure/modules/RULES_VLIBS +++ b/configure/modules/RULES_VLIBS @@ -1,7 +1,7 @@ -.PHONY: vlibs +#.PHONY: vlibs ## Install vendor libraries -vlibs: conf - $(QUIET) $(E3_MODULE_MAKE_CMDS) vlibs +#vlibs: conf +# $(QUIET) $(E3_MODULE_MAKE_CMDS) vlibs diff --git a/require-ess/tools/driver.makefile b/require-ess/tools/driver.makefile index df17899cad81d8347748d55fda99ee8fb173308a..41e9739a1c9f6055e119d8c4632f69b8d9ea889b 100644 --- a/require-ess/tools/driver.makefile +++ b/require-ess/tools/driver.makefile @@ -506,6 +506,9 @@ export USR_LIBOBJS BINS += $(foreach x, ${VAR_EXTENSIONS}, ${BINS_$x}) export BINS +VLIBS = $(VENDOR_LIBS) $(foreach x,$(VAR_EXTENSIONS),$(VENDOR_LIBS_$x)) +export VLIBS + export CFG # These variables are written into a .yaml file in the installed module directory to keep track of @@ -566,6 +569,7 @@ BASERULES=${EPICS_BASE}/configure/RULES INSTALL_REV = ${MODULE_LOCATION} INSTALL_BIN = ${INSTALL_REV}/bin/$(T_A) INSTALL_LIB = ${INSTALL_REV}/lib/$(T_A) +INSTALL_VLIB = ${INSTALL_REV}/lib/$(T_A)/vendor INSTALL_INCLUDE = ${INSTALL_REV}/include INSTALL_DBD = ${INSTALL_REV}/dbd INSTALL_DB = ${INSTALL_REV}/db @@ -744,6 +748,7 @@ EPICS_INCLUDES += -I$(EPICS_BASE_INCLUDE) -I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS) # Find all sources and set vpath accordingly. $(foreach file, ${SRCS} ${TEMPLS} ${DBDINSTALLS} ${SCR}, $(eval vpath $(notdir ${file}) ../$(dir ${file}))) +$(foreach file,${VLIBS},$(eval vpath $(notdir ${file}) $(dir ${file}))) # Do not treat %.dbd the same way because it creates a circular dependency # if a source dbd has the same name as the project dbd. Have to clear %.dbd and not use ../ path. @@ -774,6 +779,7 @@ ${MODULEDBD}: ${DBDFILES} # Install everything. INSTALL_LIBS = ${MODULELIB:%=${INSTALL_LIB}/%} +INSTALL_VLIBS = $(addprefix ${INSTALL_VLIB}/,$(notdir ${VLIBS})) INSTALL_DEPS = ${DEPFILE:%=${INSTALL_LIB}/%} INSTALL_META = ${METAFILE:%=${INSTALL_REV}/%} INSTALL_DBDS = ${MODULEDBD:%=${INSTALL_DBD}/%} @@ -791,6 +797,7 @@ INSTALL_CFGS = $(CFG:%=${INSTALL_CFG}/%) debug:: @echo "INSTALL_LIB = $(INSTALL_LIB)" @echo "INSTALL_LIBS = $(INSTALL_LIBS)" + @echo "INSTALL_VLIBS = $(INSTALL_VLIBS)" @echo "INSTALL_DEPS = $(INSTALL_DEPS)" @echo "INSTALL_META = $(INSTALL_META)" @echo "INSTALL_DBD = $(INSTALL_DBD)" @@ -816,7 +823,7 @@ debug:: endef $(foreach d,$(HDR_SUBDIRS),$(eval $(call install_subdirs,$d))) -INSTALLS += ${INSTALL_CFGS} ${INSTALL_SCRS} ${INSTALL_HDRS} ${INSTALL_DBDS} ${INSTALL_DBS} ${INSTALL_LIBS} ${INSTALL_BINS} ${INSTALL_DEPS} ${INSTALL_META} +INSTALLS += ${INSTALL_CFGS} ${INSTALL_SCRS} ${INSTALL_HDRS} ${INSTALL_DBDS} ${INSTALL_DBS} ${INSTALL_LIBS} ${INSTALL_VLIBS} ${INSTALL_BINS} ${INSTALL_DEPS} ${INSTALL_META} install: ${INSTALLS} @@ -828,6 +835,10 @@ ${INSTALL_LIBS}: $(notdir ${INSTALL_LIBS}) @echo "Installing module library $@" $(INSTALL) -d -m$(SHRLIB_PERMISSIONS) $< $(@D) +${INSTALL_VLIBS}: $(notdir ${INSTALL_VLIBS}) + @echo "Installing vendor library $^ to $(@D)" + $(INSTALL) -d -m$(SHRLIB_PERMISSIONS) $^ $(@D) + ${INSTALL_DEPS}: $(notdir ${INSTALL_DEPS}) @echo "Installing module dependency file $@" $(INSTALL) -d -m$(INSTALL_PERMISSIONS) $< $(@D)