Forked from
ESS EPICS Environment / wrappers / e3-require
493 commits behind the upstream repository.
-
Juntong Liu authoredJuntong Liu authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
RULES_REQUIRE 2.26 KiB
# -*- 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.
#
FILE_FILTER:= %~ %\#
E3_TEST_SCRIPT := $(TOP)/tools/test_installed_modules.sh
#
E3_SHELL_FILES := $(wildcard $(E3_MODULE_SRC_PATH)/tools/iocsh*)
E3_IOC_CFG_FILES += $(E3_MODULE_SRC_PATH)/tools/setE3Env.bash
E3_IOC_CFG_FILES += $(E3_MODULE_SRC_PATH)/tools/promptE3Env.bash
E3_REQUIRE_CONF_FILES := $(filter-out $(FILE_FILTER), $(wildcard $(TOP)/configure/E3/*))
check_uninstall:
ifneq (,$(strip $(wildcard $(E3_SITEMODS_PATH)/*)))
$(error Cannot run 'make uninstall': please manually uninstall everything in $(E3_SITEMODS_PATH))
endif
.PHONY: e3-site-path requireconf
install: requireconf
requireconf: e3-site-path e3-require-path
$(QUIET) install -m 755 $(wildcard $(E3_MODULE_SRC_PATH)/tools/*.tcl) $(E3_REQUIRE_TOOLS)/
$(QUIET) install -m 644 $(E3_MODULE_SRC_PATH)/tools/driver.makefile $(E3_REQUIRE_TOOLS)/
$(QUIET) install -m 755 $(E3_MODULE_SRC_PATH)/tools/*.sh $(E3_REQUIRE_TOOLS)/
$(QUIET) install -m 755 $(E3_SHELL_FILES) $(E3_REQUIRE_BIN)/
$(QUIET) install -m 644 $(E3_IOC_CFG_FILES) $(E3_REQUIRE_BIN)/
$(QUIET) install -m 644 $(E3_REQUIRE_CONF_FILES) $(E3_REQUIRE_CONFIG)/
e3-require-path:
$(QUIET) install -d -m 755 $(E3_REQUIRE_TOOLS)
$(QUIET) install -d -m 755 $(E3_REQUIRE_BIN)
$(QUIET) install -d -m 755 $(E3_REQUIRE_CONFIG)
e3-site-path:
$(QUIET) install -d -m 755 $(E3_SITEMODS_PATH)
.PHONY: epics
epics:
$(QUIET)echo "EPICS_BASE=$(EPICS_BASE)" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE
$(QUIET)echo "CHECK_RELEASE = YES" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/CONFIG_SITE
$(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH)"
# We should be able to force an uninstall of require if we need to; this should not be done without some care and thought, however!
## Uninstall, including deleting siteMods directory.
forceuninstall: conf
$(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall
consistency_checks:
.PHONY: hdrs
hdrs:
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