diff --git a/configure/CONFIG b/configure/CONFIG index 3e4fbd0d41a9c592cacc9c21ddbf234134c162de..d747a382e60dadbc5f0dbe3563f3333bcc147dba 100644 --- a/configure/CONFIG +++ b/configure/CONFIG @@ -24,7 +24,6 @@ include $(TOP)/configure/E3/CONFIG_REQUIRE include $(TOP)/configure/E3/CONFIG_E3_PATH include $(TOP)/configure/E3/CONFIG_E3_MAKEFILE include $(TOP)/configure/E3/CONFIG_EPICS -include $(TOP)/configure/E3/CONFIG_SUDO include $(TOP)/configure/E3/CONFIG_EXPORT diff --git a/configure/E3/CONFIG_EXPORT b/configure/E3/CONFIG_EXPORT index 2ac43c12d2a289e0335d27c1bb0acd6beddbf245..e5ab2181f4b2ab128afac228d7d67b20d64d7f67 100644 --- a/configure/E3/CONFIG_EXPORT +++ b/configure/E3/CONFIG_EXPORT @@ -22,7 +22,6 @@ EXPORT_VARS+=$(filter E3_REQUIRE_%,$(.VARIABLES)) EXPORT_VARS+=QUIET EXPORT_VARS+=$(filter %_DEP_VERSION,$(.VARIABLES)) EXPORT_VARS+=$(filter WITH_%,$(.VARIABLES)) -EXPORT_VARS+=$(filter SUDO%,$(.VARIABLES)) export_version=$(eval export $1) $(eval $(foreach v,$(EXPORT_VARS),$(call export_version,$v))) diff --git a/configure/E3/CONFIG_SUDO b/configure/E3/CONFIG_SUDO deleted file mode 100644 index 61232bc64da48d113e8f20368ad01699403d3f24..0000000000000000000000000000000000000000 --- a/configure/E3/CONFIG_SUDO +++ /dev/null @@ -1,39 +0,0 @@ -# IF EPICS_BASE is not WRITABLE, SUDO and SUDOBASH should be used -# SUDO_INFO 1 : SUDO is needed (NOT writable) -# SUDO_INFO 0 : SUDO is not needed -SUDO_INFO := $(shell test -w $(EPICS_BASE) 1>&2 2> /dev/null; echo $$?) -SUDO_CMD := $(shell which sudo) - -# For CentOS, devtoolset-{7,8} has -E option within sudo shell -# So we have to remove -E option as well if we would like to use devtoolset -# -ifeq "$(SUDO_INFO)" "1" -ifneq (,$(findstring devtoolset,$(SUDO_CMD))) -SUDO = $(SUDO_CMD) -else -SUDO = $(SUDO_CMD) -E -endif -SUDOBASH := $(SUDO) bash -c -else -SUDO := -SUDOBASH = bash -c -endif - - -# Valid for only Development Mode, because we clone/remove them -# See RULES_DEV -# E3_MODULE_SRC_PATH_INFO 1 : the directory is not there -# E3_MODULE_SRC_PATH_INFO 0 : the directory is there -E3_MODULE_SRC_PATH_INFO := $(shell test -d $(E3_MODULE_SRC_PATH) 1>&2 2> /dev/null; echo $$?) - -ifeq "$(E3_MODULE_SRC_PATH_INFO)" "1" -INIT_E3_MODULE_SRC = 1 -endif - - - -VARS_EXCLUDES+=SUDO -VARS_EXCLUDES+=SUDOBASH -VARS_EXCLUDES+=SUDO_INFO -VARS_EXCLUDES+=SUDO_CMD -VARS_EXCLUDES+=E3_MODULE_SRC_PATH_INFO diff --git a/configure/E3/RULES_DEV b/configure/E3/RULES_DEV index 62e6459a171830dda5f086d8399edce8a4028336..636780bbe15ca664bc179892fb111e3f079ebccb 100644 --- a/configure/E3/RULES_DEV +++ b/configure/E3/RULES_DEV @@ -10,8 +10,12 @@ devinit: git-submodule-sync git clone $(E3_MODULE_DEV_GITURL) $(E3_MODULE_SRC_PATH) cd $(E3_MODULE_SRC_PATH) && git checkout $(EPICS_MODULE_TAG) +# E3_MODULE_SRC_PATH_INFO 1 : the directory is not there +# E3_MODULE_SRC_PATH_INFO 0 : the directory is there +E3_MODULE_SRC_PATH_INFO := $(shell test -d $(E3_MODULE_SRC_PATH) 1>&2 2> /dev/null; echo $$?) -ifeq "$(INIT_E3_MODULE_SRC)" "1" +# Note that this is re-defined in CONFIG_MODULE_DEV, which is included if you do a `make dev*`. +ifeq "$(E3_MODULE_SRC_PATH_INFO)" "1" devbuild: nonexists devclean: nonexists diff --git a/configure/E3/RULES_E3 b/configure/E3/RULES_E3 index 75ab7e57a185ee91e26812c2db299e19b27baaf4..8a9108e5a61765016ab1b215e1aa2b3e00624096 100644 --- a/configure/E3/RULES_E3 +++ b/configure/E3/RULES_E3 @@ -32,13 +32,13 @@ help: install: requireconf install_module install_module: build db - $(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) install' + $(QUIET) $(E3_MODULE_MAKE_CMDS) install ## Uninstall the current module uninstall: conf #ifeq (,$(strip $(wildcard $(E3_SITEMODS_PATH)/*) $(wildcard $(E3_SITEAPPS_PATH)/*) $(wildcard $(E3_SITELIBS_PATH)/*))) ifeq (,$(strip $(wildcard $(E3_SITEMODS_PATH)/*))) - $(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) uninstall' + $(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall else $(error Cannot run 'make uninstall': please manually uninstall everything in $(E3_SITEMODS_PATH)) endif @@ -46,7 +46,7 @@ endif # 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) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) uninstall' + $(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall ## Build current module. build: conf checkout diff --git a/configure/E3/RULES_EPICS b/configure/E3/RULES_EPICS index 608df6b05ec2c3803a3ec8f377ec80aa2987b91a..f1347c465cc3827551587fad19f951e6db1a76b3 100644 --- a/configure/E3/RULES_EPICS +++ b/configure/E3/RULES_EPICS @@ -8,8 +8,8 @@ # epics: # $(QUIET)echo "EPICS_BASE=$(EPICS_BASE)" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE # $(QUIET)echo "INSTALL_LOCATION=$(M_IOCSTATS)" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/CONFIG_SITE -# $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH)" +# $(MAKE) -C $(E3_MODULE_SRC_PATH) #epics-clean: -# $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH) clean" +# $(MAKE) -C $(E3_MODULE_SRC_PATH) clean diff --git a/configure/E3/RULES_REQUIRE b/configure/E3/RULES_REQUIRE index 31d915b64f9a1c5a69b53c7326361596bf9c011f..6d720d7dd6700bd7e1edc870d70ce09c79b41c08 100644 --- a/configure/E3/RULES_REQUIRE +++ b/configure/E3/RULES_REQUIRE @@ -25,23 +25,23 @@ E3_REQUIRE_CONF_FILES := $(filter-out $(FILE_FILTER), $(wildcard $(TOP)/configur .PHONY: e3-site-conf e3-site-path requireconf 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)/ + $(QUIET) install -m 755 $(wildcard $(E3_MODULE_SRC_PATH)/App/tools/*.tcl) $(E3_REQUIRE_TOOLS)/ + $(QUIET) install -m 644 $(E3_MODULE_SRC_PATH)/App/tools/driver.makefile $(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) $(SUDO) install -d -m 755 $(E3_REQUIRE_TOOLS) - $(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_BIN) - $(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_CONFIG) + $(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) $(SUDO) install -d -m 755 $(E3_SITELIBS_PATH) - $(QUIET) $(SUDO) install -d -m 755 $(E3_SITEMODS_PATH) - $(QUIET) $(SUDO) install -d -m 755 $(E3_SITEAPPS_PATH) + $(QUIET) install -d -m 755 $(E3_SITELIBS_PATH) + $(QUIET) install -d -m 755 $(E3_SITEMODS_PATH) + $(QUIET) install -d -m 755 $(E3_SITEAPPS_PATH) e3-site-conf: diff --git a/configure/modules/CONFIG b/configure/modules/CONFIG index c94e975f25722df266c3ce38f7090cef6aa135e0..db96806171c3be9e16c746a8ada1deb12924e59b 100644 --- a/configure/modules/CONFIG +++ b/configure/modules/CONFIG @@ -2,7 +2,6 @@ include $(EPICS_BASE)/configure/CONFIG_BASE_VERSION include $(REQUIRE_CONFIG)/CONFIG_REQUIRE -include $(REQUIRE_CONFIG)/CONFIG_SUDO include $(REQUIRE_CONFIG)/CONFIG_CELL include $(REQUIRE_CONFIG)/CONFIG_E3_PATH include $(REQUIRE_CONFIG)/CONFIG_E3_MAKEFILE diff --git a/configure/modules/CONFIG_CELL b/configure/modules/CONFIG_CELL index d21f799a1d7f101909ef59824566a5b877fed57f..2cdcbf1cf1ef4096d7e2ccc056048ef9c6102f2e 100644 --- a/configure/modules/CONFIG_CELL +++ b/configure/modules/CONFIG_CELL @@ -14,7 +14,4 @@ E3_CELL_PATH=$(TOP)/cellMods -include $(TOP)/configure/CONFIG_CELL.local E3_MODULES_PATH=$(E3_CELL_PATH) -# If we are doing cellinstall, we should not use SUDO. This is a local install. -SUDO= - endif diff --git a/configure/modules/CONFIG_EXPORT b/configure/modules/CONFIG_EXPORT index c33a94d3bd0789bb8d1d103ab568479b02adf8a5..8ed09578dd9a3b5145e074be7938870de99ff4a8 100644 --- a/configure/modules/CONFIG_EXPORT +++ b/configure/modules/CONFIG_EXPORT @@ -23,7 +23,6 @@ EXPORT_VARS+=$(filter E3_REQUIRE_%,$(.VARIABLES)) EXPORT_VARS+=QUIET EXPORT_VARS+=$(filter %_DEP_VERSION,$(.VARIABLES)) EXPORT_VARS+=$(filter WITH_%,$(.VARIABLES)) -EXPORT_VARS+=$(filter SUDO%,$(.VARIABLES)) EXPORT_VARS+=$(filter %_EXTERNAL,$(.VARIABLES)) export_version=$(eval export $1) diff --git a/configure/modules/CONFIG_SUDO b/configure/modules/CONFIG_SUDO deleted file mode 100644 index 146ebccb2345162fa83ca2cffa8104d7df5a7726..0000000000000000000000000000000000000000 --- a/configure/modules/CONFIG_SUDO +++ /dev/null @@ -1,45 +0,0 @@ -# IF EPICS_BASE is not WRITABLE, SUDO and SUDOBASH should be used -# SUDO_INFO 1 : SUDO is needed (NOT writable) -# SUDO_INFO 0 : SUDO is not needed -SUDO_INFO := $(shell test -w $(EPICS_BASE) 1>&2 2> /dev/null; echo $$?) -SUDO_CMD := $(shell which sudo) - -# For CentOS, devtoolset-{7,8} has -E option within sudo shell -# So we have to remove -E option as well if we would like to use devtoolset -# -ifeq "$(SUDO_INFO)" "1" -ifneq (,$(findstring devtoolset,$(SUDO_CMD))) -SUDO = $(SUDO_CMD) -else -SUDO = $(SUDO_CMD) -E -endif -SUDOBASH = $(SUDO) bash -c -else -SUDO := -SUDOBASH = bash -c -endif - - -ifneq (,$(findstring devtoolset,$(SUDO_CMD))) -SUDO2 := $(SUDO_CMD) bash -c -else -SUDO2 := $(SUDO_CMD) -E bash -c -endif - -# Valid for only Development Mode, because we clone/remove them -# See RULES_DEV -# E3_MODULE_SRC_PATH_INFO 1 : the directory is not there -# E3_MODULE_SRC_PATH_INFO 0 : the directory is there -E3_MODULE_SRC_PATH_INFO := $(shell test -d $(E3_MODULE_SRC_PATH) 1>&2 2> /dev/null; echo $$?) - -ifeq "$(E3_MODULE_SRC_PATH_INFO)" "1" -INIT_E3_MODULE_SRC = 1 -endif - - -VARS_EXCLUDES+=SUDO2 -VARS_EXCLUDES+=SUDO -VARS_EXCLUDES+=SUDOBASH -VARS_EXCLUDES+=SUDO_INFO -VARS_EXCLUDES+=SUDO_CMD -VARS_EXCLUDES+=E3_MODULE_SRC_PATH_INFO diff --git a/configure/modules/RULES_CELL b/configure/modules/RULES_CELL index 585a7ed116f2f7154a13d96e6cc828096069f602..02f2e20f459f199b343f8e05a8ab30d04140e0d9 100644 --- a/configure/modules/RULES_CELL +++ b/configure/modules/RULES_CELL @@ -5,8 +5,7 @@ cellinstall: install_module versions fix_permissions ## Remove the module from the local directory $(E3_CELL_PATH) celluninstall: conf - $(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) uninstall' - #$(SUDO) rm -rf $(E3_MODULES_PATH) + $(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall ## Print relevant environment variables for the local install cellvars: vars diff --git a/configure/modules/RULES_DEV b/configure/modules/RULES_DEV index 88d3b4f850df79600996523671d3bef1d5d49670..5a4a7ff2149d5209b2c51c1873aed52eccbcd64b 100644 --- a/configure/modules/RULES_DEV +++ b/configure/modules/RULES_DEV @@ -58,7 +58,7 @@ devrebuild: rebuild devuninstall: uninstall devdistclean: clean $(QUIET)echo "Removing $(E3_MODULE_SRC_PATH) ......... " - $(SUDO) rm -rf $(E3_MODULE_SRC_PATH) + rm -rf $(E3_MODULE_SRC_PATH) devepics: epics devepics-clean: epics-clean devepics-distclean: epics-distclean diff --git a/configure/modules/RULES_DKMS b/configure/modules/RULES_DKMS index 9498c642c3611fcad904826f82a12f9ce299865f..2c418b941b974a7144f44096806f4aafc42411d5 100644 --- a/configure/modules/RULES_DKMS +++ b/configure/modules/RULES_DKMS @@ -3,21 +3,21 @@ dkms_build: - $(SUDO) $(DKMS) build $(DKMS_ARGS) + $(DKMS) build $(DKMS_ARGS) dkms_remove: - $(SUDO) $(DKMS) remove $(E3_MODULE_NAME)/$(E3_MODULE_VERSION) --all - $(SUDO) rm -rf /usr/src/$(E3_MODULE_NAME)-$(E3_MODULE_VERSION) + $(DKMS) remove $(E3_MODULE_NAME)/$(E3_MODULE_VERSION) --all + rm -rf /usr/src/$(E3_MODULE_NAME)-$(E3_MODULE_VERSION) dkms_install: - $(SUDO) $(DKMS) install $(DKMS_ARGS) - $(QUIET)$(SUDO) depmod + $(DKMS) install $(DKMS_ARGS) + $(QUIET) depmod dkms_uninstall: - $(SUDO) $(DKMS) uninstall $(DKMS_ARGS) - $(QUIET)$(SUDO) depmod + $(DKMS) uninstall $(DKMS_ARGS) + $(QUIET) depmod .PHONY: dkms_build dkms_install dkms_remove dkms_uninstall diff --git a/configure/modules/RULES_E3 b/configure/modules/RULES_E3 index fdd73a5f89690a878cd8112f3440e69ede869b71..be8d31be0f0c9d869efd8fe35bcd3fa03f216a22 100644 --- a/configure/modules/RULES_E3 +++ b/configure/modules/RULES_E3 @@ -32,11 +32,11 @@ help: install: install_module install_links vlibs install_module: build db - $(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) install' + $(QUIET) $(E3_MODULE_MAKE_CMDS) install ## Uninstall the current module uninstall: conf - $(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) uninstall' + $(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall ## Build current module build: conf checkout prebuild diff --git a/configure/modules/RULES_E3_SITELIBS b/configure/modules/RULES_E3_SITELIBS index 636f73f26d7be134ea361216517fe195e469bef9..7a46a1dbdef0fdf8c8668bfb5ed0712a3a596348 100644 --- a/configure/modules/RULES_E3_SITELIBS +++ b/configure/modules/RULES_E3_SITELIBS @@ -5,16 +5,16 @@ # GNU find install_links: $(INSTALLED_EPICS_BASE_ARCHS) hdrs -# $(SUDO) ln -snf $(E3_MODULES_INSTALL_LOCATION_INC) $(E3_MODULES_INSTALL_LOCATION_INC_LINK) -# $(SUDO) ln -snf $(E3_MODULES_INSTALL_LOCATION_DB) $(E3_MODULES_INSTALL_LOCATION_DB_LINK) -# $(SUDO) ln -snf $(E3_MODULES_INSTALL_LOCATION_BIN) $(E3_MODULES_INSTALL_LOCATION_BIN_LINK) -# $(SUDO) ln -snf $(E3_MODULES_INSTALL_LOCATION_LIB) $(E3_MODULES_INSTALL_LOCATION_LIB_LINK) -# $(SUDO) ln -sf $(E3_MODULES_INSTALL_LOCATION_DBD) $(E3_MODULES_INSTALL_LOCATION_DBD_LINK) -# $(SUDO) find $(E3_SITELIBS_PATH) -xtype l -delete +# ln -snf $(E3_MODULES_INSTALL_LOCATION_INC) $(E3_MODULES_INSTALL_LOCATION_INC_LINK) +# ln -snf $(E3_MODULES_INSTALL_LOCATION_DB) $(E3_MODULES_INSTALL_LOCATION_DB_LINK) +# ln -snf $(E3_MODULES_INSTALL_LOCATION_BIN) $(E3_MODULES_INSTALL_LOCATION_BIN_LINK) +# ln -snf $(E3_MODULES_INSTALL_LOCATION_LIB) $(E3_MODULES_INSTALL_LOCATION_LIB_LINK) +# ln -sf $(E3_MODULES_INSTALL_LOCATION_DBD) $(E3_MODULES_INSTALL_LOCATION_DBD_LINK) +# find $(E3_SITELIBS_PATH) -xtype l -delete $(INSTALLED_EPICS_BASE_ARCHS): -# $(SUDO) mkdir -p $(E3_SITELIBS_PATH)/$@ -# $(SUDO) ln -sf $(E3_MODULES_INSTALL_LOCATION)/lib/$@/$(E3_MODULES_LIBNAME) $(E3_SITELIBS_PATH)/$@/$(E3_MODULES_LIBLINKNAME) +# mkdir -p $(E3_SITELIBS_PATH)/$@ +# ln -sf $(E3_MODULES_INSTALL_LOCATION)/lib/$@/$(E3_MODULES_LIBNAME) $(E3_SITELIBS_PATH)/$@/$(E3_MODULES_LIBLINKNAME) diff --git a/configure/modules/RULES_EPICS b/configure/modules/RULES_EPICS index 5e7fa501c4eb9da9e1e8a164b150ded1cb1a9037..f7dac66e307723441d0be314c998d09d346f31dd 100644 --- a/configure/modules/RULES_EPICS +++ b/configure/modules/RULES_EPICS @@ -4,7 +4,7 @@ .PHONY: epics-clean epics-distclean epics-clean: - $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH) clean" + $(MAKE) -C $(E3_MODULE_SRC_PATH) clean epics-distclean: - $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH) distclean" + $(MAKE) -C $(E3_MODULE_SRC_PATH) distclean diff --git a/configure/modules/RULES_KMOD b/configure/modules/RULES_KMOD index 484c4585d7d5820135917ea2bbd77070b15abd9f..711f69d76a4736556b49a70755c56e7ac051f4f5 100644 --- a/configure/modules/RULES_KMOD +++ b/configure/modules/RULES_KMOD @@ -5,7 +5,7 @@ modules: # Always SUDO is needed modules_install: - sudo -E bash -c "$(MAKE) -C $(E3_KMOD_SRC_PATH) $@" + $(SUDO2) "$(MAKE) -C $(E3_KMOD_SRC_PATH) $@" modules_clean: $(MAKE) -C $(E3_KMOD_SRC_PATH) clean