make compatible to standard EPICS build system

This commit is contained in:
2017-01-19 16:55:28 +01:00
parent 46a68831c2
commit a4888634b6
6 changed files with 80 additions and 1 deletions

View File

@ -1,4 +1,7 @@
# Remove this file if not using the PSI build system ifeq ($(wildcard /ioc/tools/driver.makefile),)
$(warning It seems you do not have the PSI build environment. Remove GNUmakefile.)
include Makefile
else
include /ioc/tools/driver.makefile include /ioc/tools/driver.makefile
EXCLUDE_VERSIONS = 3.13.2 EXCLUDE_VERSIONS = 3.13.2
PROJECT=stream PROJECT=stream
@ -54,3 +57,5 @@ export DBDFILES = streamSup.dbd
streamSup.dbd: streamSup.dbd:
@echo Creating $@ @echo Creating $@
perl ../src/makedbd.pl $(RECORDTYPES) > $@ perl ../src/makedbd.pl $(RECORDTYPES) > $@
endif

14
configure/CONFIG Normal file
View File

@ -0,0 +1,14 @@
#CONFIG
include $(TOP)/configure/CONFIG_APP
# Add any changes to make definitions here
#CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040
#CROSS_COMPILER_TARGET_ARCHS =
# Use this when your IOC and the host use different paths
# to access the application. Typically this will be
# used with the Microsoft FTP server or with NFS mounts. Use
# is indicated by failure of the cdCommands script on
# vxWorks. You must rebuild in the iocBoot directory
# before this takes effect.
#IOCS_APPL_TOP = <the top of the application as seen by the IOC>

22
configure/CONFIG_APP Normal file
View File

@ -0,0 +1,22 @@
# CONFIG_APP
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 $(CONFIG)/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
HOST_OPT=NO

15
configure/Makefile Normal file
View File

@ -0,0 +1,15 @@
# Makefile
TOP=..
include $(TOP)/configure/CONFIG
# Set the following to NO to disable consistency checking of
# the support applications defined in $(TOP)/configure/RELEASE
CHECK_RELEASE = YES
TARGETS = $(CONFIG_TARGETS)
CONFIGS += $(subst ../,,$(wildcard $(CONFIG_INSTALLS)))
include $(TOP)/configure/RULES

18
configure/RELEASE Normal file
View File

@ -0,0 +1,18 @@
#RELEASE Location of external products
# Run "gnumake clean uninstall install" in the application
# top directory each time this file is changed.
#
# 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=$(EPICS_BASE)/templates/makeBaseApp/top
# If you don't want to install into $(TOP) then
# define INSTALL_LOCATION_APP here
#INSTALL_LOCATION_APP=<fullpathname>
# EPICS_BASE usually appears last so other apps can override stuff:
EPICS_BASE=/usr/local/epics/base-3.14.12

5
configure/RULES Normal file
View File

@ -0,0 +1,5 @@
#CONFIG
include $(EPICS_BASE)/configure/RULES
# Library should be rebuilt because LIBOBJS may have changed.
$(LIBNAME): ../Makefile