update configure and Makefile to current version generated by makeBaseApp
patch b85dc452ab4c04de8a97b44163b940a7b5f65225
Author: christoph.schroeder@helmholtz-berlin.de
Date: Fri Nov 5 12:02:34 CET 2021
* update configure and Makefile to current version generated by makeBaseApp
hunk ./Makefile 1
-#Makefile at top of application tree
+# Makefile at top of application tree
hunk ./Makefile 4
-DIRS := $(DIRS) $(filter-out $(DIRS), configure)
-DIRS := $(DIRS) $(filter-out $(DIRS), rules)
-DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard *App))
-DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard *app))
-DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard iocBoot))
-DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard iocboot))
+
+# Directories to build, any order
+DIRS += configure
+DIRS += $(wildcard *Sup)
+DIRS += $(wildcard *App)
+DIRS += $(wildcard *Top)
+DIRS += $(wildcard iocBoot)
+
+# The build order is controlled by these dependency rules:
+
+# All dirs except configure depend on configure
+$(foreach dir, $(filter-out configure, $(DIRS)), \
+ $(eval $(dir)_DEPEND_DIRS += configure))
+
+# Any *App dirs depend on all *Sup dirs
+$(foreach dir, $(filter %App, $(DIRS)), \
+ $(eval $(dir)_DEPEND_DIRS += $(filter %Sup, $(DIRS))))
+
+# Any *Top dirs depend on all *Sup and *App dirs
+$(foreach dir, $(filter %Top, $(DIRS)), \
+ $(eval $(dir)_DEPEND_DIRS += $(filter %Sup %App, $(DIRS))))
+
+# iocBoot depends on all *App dirs
+iocBoot_DEPEND_DIRS += $(filter %App,$(DIRS))
+
+# Add any additional dependency rules here:
+
hunk ./configure/CONFIG 1
-# You might want to change this to some shared set of rules, e.g.
-# RULES=/path/to/epics/support/modules/rules/x-y
-RULES=$(TOP)/rules
-
-include $(TOP)/configure/CONFIG_APP
-
-# Make any application-specific changes to the EPICS build
-# configuration variables in this file.
-
-# 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 =
-
-# 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 = <path to application top as seen by IOC>
+# CONFIG - Load build configuration data
+#
+# Do not make changes to this file!
+
+# Allow user to override where the build rules come from
+RULES = $(EPICS_BASE)
+
+# RELEASE files point to other application tops
+include $(TOP)/configure/RELEASE
+-include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).Common
+ifdef T_A
+-include $(TOP)/configure/RELEASE.Common.$(T_A)
+-include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).$(T_A)
+endif
+
+CONFIG = $(RULES)/configure
+include $(CONFIG)/CONFIG
+
+# Override the Base definition:
+INSTALL_LOCATION = $(TOP)
+
+# CONFIG_SITE files contain other build configuration settings
+include $(TOP)/configure/CONFIG_SITE
+-include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).Common
+ifdef T_A
+ -include $(TOP)/configure/CONFIG_SITE.Common.$(T_A)
+ -include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A)
+endif
+
hunk ./configure/CONFIG_APP 1
-# do not add definitions to this file, use CONFIG instead
-
-SHARED_LIBRARIES = NO
-
-include $(TOP)/configure/RELEASE
--include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH)
--include $(TOP)/configure/RELEASE.Common.$(T_A)
--include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).$(T_A)
-
-CONFIG=$(EPICS_BASE)/configure
-include $(RULES)/configure/CONFIG
-
-INSTALL_LOCATION = $(TOP)
-ifdef INSTALL_LOCATION_APP
-INSTALL_LOCATION = $(INSTALL_LOCATION_APP)
-endif
-
-ifdef T_A
--include $(TOP)/configure/O.$(T_A)/CONFIG_APP_INCLUDE
-endif
-
-# dbst based database optimization (default: NO)
-DB_OPT = NO
-
-X11_LIB=/usr/lib
-MOTIF_LIB=$(X11_LIB)
-
-X11_INC=/usr/include
-X11_DIR=$(X11_LIB)
-Xm_INC=$(X11_INC)
-Xm_DIR=$(X11_LIB)
-Xpm_INC=$(X11_INC)/X11
-Xpm_DIR=$(X11_LIB)
-Xt_INC=$(X11_INC)
-Xt_DIR=$(X11_LIB)
-Xext_INC=$(X11_INC)
-Xext_DIR=$(X11_LIB)
-Xmu_INC=$(X11_INC)
-Xmu_DIR=$(X11_LIB)
-Xp_INC=$(X11_INC)
-Xp_DIR=$(X11_LIB)
-SM_INC=$(X11_INC)
-SM_DIR=$(X11_LIB)
-ICE_INC=$(X11_INC)
-ICE_DIR=$(X11_LIB)
-dl_INC=$(X11_INC)
-dl_DIR=/usr/lib
-XRT_INC=$(XRTHOME)/include
-XRT_DIR=$(XRTHOME)/lib
-XRT_HOST=aragon
rmfile ./configure/CONFIG_APP
addfile ./configure/CONFIG_SITE
hunk ./configure/CONFIG_SITE 1
+# CONFIG_SITE
+
+# Make any application-specific changes to the EPICS build
+# configuration variables in this file.
+#
+# Host/target specific settings can be specified in files named
+# CONFIG_SITE.$(EPICS_HOST_ARCH).Common
+# CONFIG_SITE.Common.$(T_A)
+# CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A)
+
+# CHECK_RELEASE controls the consistency checking of the support
+# applications pointed to by the RELEASE* files.
+# 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 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-ppc32
+
+# To install files into a location other than $(TOP) define
+# INSTALL_LOCATION here.
+#INSTALL_LOCATION=</absolute/path/to/install/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
+
+# These allow developers to override the CONFIG_SITE variable
+# settings without having to modify the configure/CONFIG_SITE
+# file itself.
+-include $(TOP)/../CONFIG_SITE.local
+-include $(TOP)/configure/CONFIG_SITE.local
+
hunk ./configure/Makefile 5
-# Set the following to NO to disable consistency checking of
-# the support applications defined in $(TOP)/configure/RELEASE
-CHECK_RELEASE = YES
-
hunk ./configure/RELEASE 1
-#RELEASE Location of external products
-# Run "gnumake clean uninstall install" in the application
-# top directory each time this file is changed.
+# RELEASE - Location of external support modules
hunk ./configure/RELEASE 3
-# NOTE: The build does not check dependancies on files
-# external to this application. Thus you should run
-# "gnumake clean uninstall install" in the top directory
-# each time EPICS_BASE, SNCSEQ, or any other external
-# module defined in the RELEASE file is rebuilt.
-
-TEMPLATE_TOP=/opt/Epics/R3.14.8/support/mba-templates/1-1
-
-# If you don't want to install into $(TOP) then
-# define INSTALL_LOCATION_APP here
-#INSTALL_LOCATION_APP=<fullpathname>
-
-#If using the sequencer, point SNCSEQ at its top directory:
-#SNCSEQ=$(EPICS_BASE)/../modules/soft/seq
-
-# EPICS_BASE usually appears last so other apps can override stuff:
-ifeq ($(HOST),jalon)
-EPICS_BASE=/opt/Epics/R3.14.12/base/3-14-12-2-2
-else
-EPICS_BASE=/opt/Epics/R3.14.12/base/3-14-12-0-0
-endif
-
-#Capfast users may need the following definitions
-#CAPFAST_TEMPLATES=
-#SCH2EDIF_PATH=
+# IF YOU MAKE ANY CHANGES to this file you must subsequently
+# do a "gnumake rebuild" in this application's top level
+# directory.
+#
+# The build process does not check dependencies against files
+# that are outside this application, thus you should do a
+# "gnumake rebuild" in the top level directory after EPICS_BASE
+# or any other external module pointed to below is rebuilt.
+#
+# Host- or target-specific settings can be given in files named
+# RELEASE.$(EPICS_HOST_ARCH).Common
+# RELEASE.Common.$(T_A)
+# RELEASE.$(EPICS_HOST_ARCH).$(T_A)
+#
+# This file is parsed by both GNUmake and an EPICS Perl script,
+# so it can ONLY contain definititions of paths to other support
+# modules, variable definitions that are used in module paths,
+# and include statements that pull in other RELEASE files.
+# Variables may be used before their values have been set.
+# Build variables that are NOT used in paths should be set in
+# the CONFIG_SITE file.
+
+# Variables and paths to dependent modules:
+#MODULES = /path/to/modules
+#MYMODULE = $(MODULES)/my-module
+
+# If using the sequencer, point SNCSEQ at its top directory:
+#SNCSEQ = $(MODULES)/seq-ver
+
+# EPICS_BASE should appear last so earlier modules can override stuff:
+EPICS_BASE = /usr/lib/epics
+
+# Set RULES here if you want to use build rules from somewhere
+# other than EPICS_BASE:
+#RULES = $(MODULES)/build-rules
+
+# These allow developers to override the RELEASE variable settings
+# without having to modify the configure/RELEASE file itself.
+-include $(TOP)/../RELEASE.local
+-include $(TOP)/configure/RELEASE.local
+
hunk ./configure/RULES 1
-include $(RULES)/configure/RULES
+# RULES
+
+include $(CONFIG)/RULES
+
+# Library should be rebuilt because LIBOBJS may have changed.
+$(LIBNAME): ../Makefile
hunk ./configure/RULES.ioc 1
-include $(RULES)/configure/RULES.ioc
+#RULES.ioc
+include $(CONFIG)/RULES.ioc
hunk ./configure/RULES_DIRS 1
-include $(RULES)/configure/RULES_DIRS
+#RULES_DIRS
+include $(CONFIG)/RULES_DIRS
hunk ./configure/RULES_TOP 1
-include $(RULES)/configure/RULES_TOP
-RSYNC_DIST_VERSION_FILE=.version
+#RULES_TOP
+include $(CONFIG)/RULES_TOP
+
hunk ./configure/rsync-dist.BII.config 1
-RSYNC_DIST_HOST=opiadm@nfs.ctl
-RSYNC_DIST_PATH=/opt/OPI/DM2K/dist
-RSYNC_DIST_LINKPATH=/opt/OPI/DM2K/links
-RSYNC_DIST_PREFIX_DISTDIR=1
-RSYNC_DIST_LOCALPATH=bin,lib,etc
-RSYNC_DIST_LOCALPREFIX=
-RSYNC_DIST_WORLDREADABLE=1
-RSYNC_DIST_CHECKSUM=1
-RSYNC_DIST_EDITOR_NO_DEFAULTS=1
-RSYNC_DIST_MESSAGE=
-RSYNC_DIST_TAG=
rmfile ./configure/rsync-dist.BII.config
hunk ./configure/rsync-dist.OPI.config 1
-#RSYNC_DIST_HOST=opiadm@nfs.ctl
-RSYNC_DIST_HOST=opiadm@aragon, opiadm@opic11c.ctl.bessy.de, opiadm@opic1cp.mlscs.bessy.de
-RSYNC_DIST_PATH=/opt/OPI/DM2K/dist
-RSYNC_DIST_LINKPATH=/opt/OPI/DM2K/links
-RSYNC_DIST_PREFIX_DISTDIR=1
-RSYNC_DIST_LOCALPATH=bin,lib
-RSYNC_DIST_LOCALPREFIX=
-RSYNC_DIST_WORLDREADABLE=1
-RSYNC_DIST_CHECKSUM=1
-RSYNC_DIST_EDITOR_NO_DEFAULTS=1
-RSYNC_DIST_MESSAGE=
-RSYNC_DIST_TAG=
rmfile ./configure/rsync-dist.OPI.config