Added a modules dir, in which the stand-alone driver modules will reside.

This commit is contained in:
kpetersn
2019-04-03 10:12:21 -05:00
parent 5cebc48ba8
commit 3046799bb3
7 changed files with 89 additions and 9 deletions
+1
View File
@@ -15,3 +15,4 @@ dllPath.bat
auto_settings.sav*
auto_positions.sav*
.ccfxprepdir/
*.local
+3
View File
@@ -7,6 +7,9 @@ include $(TOP)/configure/CONFIG
DIRS += configure motorApp
motorApp_DEPEND_DIRS = configure
DIRS += modules
modules_DEPEND_DIRS = motorApp
# To build motor examples;
# 1st - uncomment lines below.
# 2nd - uncomment required support module lines at the bottom of
+18 -9
View File
@@ -13,21 +13,30 @@
# Normally CHECK_RELEASE should be set to YES.
# Set CHECK_RELEASE to NO to disable checking completely.
# Set CHECK_RELEASE to WARN to perform consistency checking but
# continue building anyway if conflicts are found.
# continue building even if conflicts are found.
CHECK_RELEASE = YES
# Set this when you only want to compile this application
# for a subset of the cross-compiled target architectures
# that Base is built for.
#CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040
#CROSS_COMPILER_TARGET_ARCHS = vxWorks-ppc32
# To install files into a location other than $(TOP) define
# INSTALL_LOCATION here.
#INSTALL_LOCATION=</path/name/to/install/top>
#INSTALL_LOCATION=</absolute/path/to/install/top>
# Set this when your IOC and the host use different paths
# to access the application. This will be needed to boot
# from a Microsoft FTP server or with some NFS mounts.
# You must rebuild in the iocBoot directory for this to
# take effect.
#IOCS_APPL_TOP = </IOC/path/to/application/top>
# Set this when the IOC and build host use different paths
# to the install location. This may be needed to boot from
# a Microsoft FTP server say, or on some NFS configurations.
#IOCS_APPL_TOP = </IOC's/absolute/path/to/install/top>
# For application debugging purposes, override the HOST_OPT and/
# or CROSS_OPT settings from base/configure/CONFIG_SITE
#HOST_OPT = NO
#CROSS_OPT = NO
# Don't build iocs in motor/modules/motorVendor/iocs by default
BUILD_IOCS = NO
# Overrides for the settings above may appear in a CONFIG_SITE.local file
-include $(or $(MOTOR),$(TOP))/configure/CONFIG_SITE.local
+2
View File
@@ -0,0 +1,2 @@
# Uncomment the following line to build iocs in motor/modules/motorVendor/iocs
BUILD_IOCS = YES
+3
View File
@@ -1,3 +1,6 @@
#RULES_TOP
ifeq ($(INSTALL_LOCATION),$(MOTOR))
INSTALL_CONFIG =
endif
include $(CONFIG)/RULES_TOP
+9
View File
@@ -0,0 +1,9 @@
# Use motor's CONFIG_SITE (this is where BUILD_IOCS is defined)
-include $(MOTOR)/configure/CONFIG_SITE
# When building submodules, this should always be true:
INSTALL_LOCATION = $(MOTOR)
# Stop submodules from installing their configuration files:
CONFIG_INSTALLS =
+53
View File
@@ -0,0 +1,53 @@
TOP = ..
include $(TOP)/configure/CONFIG
# Submodules
#SUBMODULES += motorVendor
# Allow sites to add extra submodules
-include Makefile.local
# Add only checked-out submodules to DIRS
DIRS += $(subst /Makefile,,$(wildcard $(addsuffix /Makefile, $(SUBMODULES))))
include $(TOP)/configure/RULES_DIRS
INSTALL_LOCATION_ABS := $(abspath $(INSTALL_LOCATION))
RELEASE_LOCAL := RELEASE.$(EPICS_HOST_ARCH).local
# Ensure that RELEASE.<host>.local exists before doing anything else
all host $(DIRS) $(ARCHS) $(ACTIONS) $(dirActionTargets) $(dirArchTargets) \
$(dirActionArchTargets) $(actionArchTargets): | $(RELEASE_LOCAL)
$(RELEASE_LOCAL):
$(ECHO) Creating $@, MOTOR = $(INSTALL_LOCATION_ABS)
@echo MOTOR = $(INSTALL_LOCATION_ABS)> $@
ifdef ASYN
$(ECHO) Creating $@, ASYN = $(ASYN)
@echo ASYN = $(ASYN)>> $@
endif
ifdef SNCSEQ
$(ECHO) Creating $@, SNCSEQ = $(SNCSEQ)
@echo SNCSEQ = $(SNCSEQ)>> $@
endif
ifdef BUSY
$(ECHO) Creating $@, BUSY = $(BUSY)
@echo BUSY = $(BUSY)>> $@
endif
ifdef IPAC
$(ECHO) Creating $@, IPAC = $(IPAC)
@echo IPAC = $(IPAC)>> $@
endif
ifdef MX
$(ECHO) Creating $@, MX = $(MX)
@echo MX = $(MX)>> $@
endif
ifdef LUA
$(ECHO) Creating $@, LUA = $(LUA)
@echo LUA = $(LUA)>> $@
endif
$(ECHO) Creating $@, EPICS_BASE = $(EPICS_BASE)
@echo EPICS_BASE = $(EPICS_BASE)>> $@
realclean:
$(RM) $(RELEASE_LOCAL)