diff --git a/.gitmodules b/.gitmodules index 70ebe8704652b252962b6644b51b96f812431ccd..0d77dcfe4956be8e18b4f0d11f7d19de70e6a7f1 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,4 +1,4 @@ -[submodule "McoreUtils"] - path = McoreUtils - url = https://github.com/epics-modules/McoreUtils +[submodule "MCoreUtils"] + path = MCoreUtils + url = https://github.com/epics-modules/MCoreUtils ignore = all diff --git a/McoreUtils b/MCoreUtils similarity index 100% rename from McoreUtils rename to MCoreUtils diff --git a/MCoreUtils.Makefile b/MCoreUtils.Makefile index d85785da5faefcf98aa8a38e310e34ed665babcd..6277752767013fabbc048f3b516cbcf5dc7fbd20 100644 --- a/MCoreUtils.Makefile +++ b/MCoreUtils.Makefile @@ -23,7 +23,7 @@ ## The following lines are mandatory, please don't change them. where_am_I := $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) include $(E3_REQUIRE_TOOLS)/driver.makefile -include $(where_am_I)/../configure/DECOUPLE_FLAGS +include $(E3_REQUIRE_CONFIG)/DECOUPLE_FLAGS ## Exclude linux-ppc64e6500 diff --git a/configure/CONFIG b/configure/CONFIG index 2cad9538c1162b2346eb3ed0ef12c1289ff93efe..2b63d799534642f6668381add1905aa03dce47c7 100644 --- a/configure/CONFIG +++ b/configure/CONFIG @@ -1,3 +1,4 @@ +# VARS_EXCLUDES := $(.VARIABLES) ifneq (,$(findstring dev,$(MAKECMDGOALS))) @@ -6,25 +7,14 @@ else include $(TOP)/configure/RELEASE endif -# CONFIG=$(EPICS_BASE)/configure -# include $(CONFIG)/CONFIG - ifneq (,$(findstring dev,$(MAKECMDGOALS))) include $(TOP)/configure/CONFIG_MODULE_DEV else include $(TOP)/configure/CONFIG_MODULE endif -## Asyn, ADSupport may needs to define other variables - --include $(TOP)/configure/CONFIG_OPTIONS +E3_REQUIRE_LOCATION := $(EPICS_BASE)/$(E3_REQUIRE_NAME)/$(E3_REQUIRE_VERSION) +REQUIRE_CONFIG := $(E3_REQUIRE_LOCATION)/configure -## It is not necessary to modify the following files in most case. -## Order is matter +include $(REQUIRE_CONFIG)/CONFIG -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/CONFIG_MODULE b/configure/CONFIG_MODULE index 3d9af5c2a5bc15be12de145ec5bf11887f2ac0a4..5f3c8b7907656b27a3a8c0c042e547cb4ac39150 100644 --- a/configure/CONFIG_MODULE +++ b/configure/CONFIG_MODULE @@ -1,29 +1,16 @@ -# EPICS_MODULE_NAME:=MCoreUtils - +# EPICS_MODULE_TAG:=tags/1.2.1 # E3_MODULE_VERSION:=1.2.1 - -# DEPENDENT MODULE VERSION -# Example, -#ASYN_DEP_VERSION:=4.33.0 -#SEQ_DEP_VERSION:=2.1.21 -#PCRE_DEP_VERSION:=8.41. -#ADCORE_DEP_VERSION:=3.2.0 -#ADSUPPORT_DEP_VERSION:=1.4.0 # -# -#E3_KMOD_SRC_PATH:=$(E3_MODULE_SRC_PATH) +E3_MODULE_NAME:=$(EPICS_MODULE_NAME) # -# In most case, we don't need to touch the following variables. +E3_MODULE_SRC_PATH:=MCoreUtils # - -E3_MODULE_NAME:=$(EPICS_MODULE_NAME) -E3_MODULE_SRC_PATH:=McoreUtils E3_MODULE_MAKEFILE:=$(EPICS_MODULE_NAME).Makefile - - - -# The definitions shown below can also be placed in an untracked CONFIG_MODULE.local +# +-include $(TOP)/configure/CONFIG_OPTIONS +# The definitions shown below can also be placed in an untracked CONFIG_MODULE*.local -include $(TOP)/configure/CONFIG_MODULE.local +# diff --git a/configure/CONFIG_MODULE_DEV b/configure/CONFIG_MODULE_DEV index 41d6f323613490bc94558e261727e50cca337f84..d6ea6b93793cc3118e3ce0625e7c3b60843d5f63 100644 --- a/configure/CONFIG_MODULE_DEV +++ b/configure/CONFIG_MODULE_DEV @@ -1,33 +1,18 @@ -# EPICS_MODULE_NAME:=MCoreUtils +# EPICS_MODULE_TAG:=master # E3_MODULE_VERSION:=develop - - -# DEPENDENT MODULE VERSION -# Example, -#ASYN_DEP_VERSION:=4.33.0 -#SEQ_DEP_VERSION:=2.1.21 -#PCRE_DEP_VERSION:=8.41. -#ADCORE_DEP_VERSION:=3.2.0 -#ADSUPPORT_DEP_VERSION:=1.4.0 -# -# ONLY IF this module has the sequencer dependency. However, -# in most case, we don't need to enable the following line, -# the default - latest version will be used -#E3_SEQUENCER_NAME:=sequencer -#E3_SEQUENCER_VERSION:=2.1.21 -# -# In most case, we don't need to touch the following variables. # E3_MODULE_NAME:=$(EPICS_MODULE_NAME) +# E3_MODULE_SRC_PATH:=McoreUtils-dev +# E3_MODULE_MAKEFILE:=$(EPICS_MODULE_NAME).Makefile - -#export E3_MODULE_DEV_GITURL:="https://where your git repo" +# E3_MODULE_DEV_GITURL:="https://github.com/epics-modules/McoreUtils" - - -# The definitions shown below can also be placed in an untracked CONFIG_MODULE_DEV.local +# +-include $(TOP)/configure/CONFIG_OPTIONS +# The definitions shown below can also be placed in an untracked CONFIG_MODULE*.local -include $(TOP)/configure/CONFIG_MODULE_DEV.local +# diff --git a/configure/DECOUPLE_FLAGS b/configure/DECOUPLE_FLAGS deleted file mode 100644 index fbd21915b2c880613589449ee1f8837c8432b6cc..0000000000000000000000000000000000000000 --- a/configure/DECOUPLE_FLAGS +++ /dev/null @@ -1,86 +0,0 @@ -# *** ISSUES -# driver.makefile recursively read all include directories which were installed. -# The only way to exclude header files is.... - -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/configure/RELEASE b/configure/RELEASE index ea7e407dc80661ecd94148e386547fac6e23c0b4..191b47e2c148ca9fee9ac03eefbb9a5266abdc0f 100644 --- a/configure/RELEASE +++ b/configure/RELEASE @@ -1,17 +1,11 @@ +# EPICS_BASE=/epics/base-3.15.5 E3_REQUIRE_NAME:=require -E3_REQUIRE_VERSION:=3.0.2 - - -# ONLY IF this module has the sequencer dependency. However, -# in most case, we don't need to enable the following line, -# the default - latest version will be used -#E3_SEQUENCER_NAME:=sequencer -#E3_SEQUENCER_VERSION:=2.1.21 - +E3_REQUIRE_VERSION:=3.0.4 # The definitions shown below can also be placed in an untracked RELEASE.local -include $(TOP)/../../RELEASE.local -include $(TOP)/../RELEASE.local -include $(TOP)/configure/RELEASE.local + diff --git a/configure/RELEASE_DEV b/configure/RELEASE_DEV index edcd5c35eb8f15361be0de811d86693d09fa19a3..c9b6d57bb51651851e9784e2fad3954bf647b6ac 100644 --- a/configure/RELEASE_DEV +++ b/configure/RELEASE_DEV @@ -1,9 +1,11 @@ +# EPICS_BASE=/epics/base-3.15.5 E3_REQUIRE_NAME:=require -E3_REQUIRE_VERSION:=3.0.0 +E3_REQUIRE_VERSION:=3.0.4 # The definitions shown below can also be placed in an untracked RELEASE_DEV.local -include $(TOP)/../../RELEASE_DEV.local -include $(TOP)/../RELEASE_DEV.local -include $(TOP)/configure/RELEASE_DEV.local + diff --git a/configure/RULES b/configure/RULES index 8a1d8a146b0b31c9ea393dac74cfbbc2c11fcb82..978c976f8d298955277c6cd5ad14c7cda98db013 100644 --- a/configure/RULES +++ b/configure/RULES @@ -1,19 +1,6 @@ -#CONFIG -# include $(EPICS_BASE)/configure/RULES -include $(TOP)/configure/E3/DEFINES_FT --include $(TOP)/configure/E3/RULES_PATCH -include $(TOP)/configure/E3/RULES_E3 --include $(TOP)/configure/E3/RULES_PV -include $(TOP)/configure/E3/RULES_E3_SITELIBS -include $(TOP)/configure/E3/RULES_EPICS --include $(TOP)/configure/E3/RULES_KMOD +include $(REQUIRE_CONFIG)/RULES_SITEMODS -include $(TOP)/configure/E3/RULES_DB --include $(TOP)/configure/E3/RULES_VLIBS -include $(TOP)/configure/E3/RULES_VARS +include $(TOP)/configure/module/RULES_MODULE +-include $(TOP)/configure/module/RULES_DKMS_L - -ifneq (,$(findstring dev,$(MAKECMDGOALS))) -include $(TOP)/configure/E3/RULES_DEV -endif diff --git a/configure/module/RULES_DKMS_L b/configure/module/RULES_DKMS_L new file mode 100644 index 0000000000000000000000000000000000000000..c66bf32a19289cdcf990bc893a2758ab9357b362 --- /dev/null +++ b/configure/module/RULES_DKMS_L @@ -0,0 +1,38 @@ + +# KMOD_NAME := mrf + +# .PHONY: dkms_add + +# dkms_add: conf +# $(MSI) -M name="$(E3_MODULE_NAME)" -M version="$(E3_MODULE_VERSION)" -M kmod_name="$(KMOD_NAME)" $(TOP)/dkms/dkms_with_msi.conf.in > $(TOP)/dkms/dkms_with_msi.conf +# $(QUIET) cat $(TOP)/dkms/dkms_with_msi.conf $(TOP)/dkms/dkms_without_msi.conf > $(TOP)/dkms/dkms.conf +# $(QUIET) install -m 644 $(TOP)/dkms/dkms.conf $(E3_KMOD_SRC_PATH)/ +# $(SUDO) install -d /usr/src/$(E3_MODULE_NAME)-$(E3_MODULE_VERSION) +# $(SUDO) cp -r $(TOP)/$(E3_KMOD_SRC_PATH)/* /usr/src/$(E3_MODULE_NAME)-$(E3_MODULE_VERSION)/ +# $(SUDO) $(DKMS) add $(DKMS_ARGS) + + +# setup: +# $(QUIET) $(SUDO2) 'echo KERNEL==\"uio*\", ATTR{name}==\"mrf-pci\", MODE=\"0666\" | tee /etc/udev/rules.d/99-$(KMOD_NAME).rules' +# $(QUIET) $(SUDO) /bin/udevadm control --reload-rules +# $(QUIET) $(SUDO) /bin/udevadm trigger +# $(QUIET) $(SUDO2) 'echo $(KMOD_NAME) | tee /etc/modules-load.d/$(KMOD_NAME).conf' +# $(QUIET) $(SUDO) depmod --quick +# $(QUIET) $(SUDO) modprobe -rv $(KMOD_NAME) +# $(QUIET) $(SUDO) modprobe -v $(KMOD_NAME) +# $(QUIET) echo "" +# $(QUIET) echo "" +# $(QUIET) echo "It is OK to see \"E3/RULES_DKMS:37: recipe for target 'setup' failed\"" +# $(QUIET) echo "---------------------------------------------------------------------" +# $(QUIET) -ls -l /dev/uio* 2>/dev/null +# $(QUIET) echo "---------------------------------------------------------------------" + + +# setup_clean: +# $(QUIET) $(SUDO) modprobe -rv $(KMOD_NAME) +# $(SUDO) rm -f /etc/modules-load.d/$(KMOD_NAME).conf +# $(SUDO) rm -f /etc/udev/rules.d/99-$(KMOD_NAME).rules + + +# .PHONY: setup setup_clean + diff --git a/configure/module/RULES_MODULE b/configure/module/RULES_MODULE new file mode 100644 index 0000000000000000000000000000000000000000..589cdbfe843626a00e41d523fafb33601536c97a --- /dev/null +++ b/configure/module/RULES_MODULE @@ -0,0 +1,23 @@ +# +.PHONY: db pv epics epics-clean + +db: conf + $(QUIET) $(E3_MODULE_MAKE_CMDS) db + +pv: +# $(SUDO) install -m 755 -d $(E3_MODULES_INSTALL_LOCATION_INC)/pv +# cd $(E3_MODULES_INSTALL_LOCATION_INC) && $(SUDO) mv *.h pv/ + +epics: + $(QUIET)echo "EPICS_BASE=$(EPICS_BASE)" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE +# $(QUIET)echo "ASYN=$(M_ASYN)" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE +# $(QUIET)echo "SSCAN=$(M_SSCAN)" >> $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE +# $(QUIET)echo "SNCSEQ=$(M_SNCSEQ)" >> $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE + $(QUIET)echo "CHECK_RELEASE = YES" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/CONFIG_SITE +# $(QUIET)echo "INSTALL_LOCATION=$(M_DEVLIB2)" >> $(TOP)/$(E3_MODULE_SRC_PATH)/configure/CONFIG_SITE + $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH)" + +epics-clean: + $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH) clean" + + diff --git a/docs/.UPDATE_MODULE_LOG b/docs/.UPDATE_MODULE_LOG new file mode 100644 index 0000000000000000000000000000000000000000..d063a8a61b4bfa687a084c7ee3202a7582b4b8e9 --- /dev/null +++ b/docs/.UPDATE_MODULE_LOG @@ -0,0 +1,14 @@ + +>> +Update Log Time : 2018Nov10-1800-08CET +>> +Script is used : e3TemplateGenerator +Script Path : /home/jhlee/gitsrc/e3-tools/e3TemplateGenerator +User : jhlee +e3 repo Hash : 90415f4 + +EPICS_MODULE_NAME : MCoreUtils +E3 MODULE VERSION : 1.2.1 +EPICS BASE VERSION : base-3.15.5 +E3 REQUIRE VERSION : 3.0.2 +>>