#************************************************************************* # Copyright (c) 2002 The University of Chicago, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* #--------------------------------------------------------------- # EPICS Base directories EPICS_BASE_HOST_BIN = $(EPICS_BASE)/bin/$(EPICS_HOST_ARCH) EPICS_BASE_HOST_LIB = $(EPICS_BASE)/lib/$(EPICS_HOST_ARCH) ifdef T_A EPICS_BASE_LIB = $(EPICS_BASE)/lib/$(T_A) EPICS_BASE_BIN = $(EPICS_BASE)/bin/$(T_A) endif #--------------------------------------------------------------- # Version number for base shared libraries (and win32 products) ifdef BASE_TOP # Unix lib.so. Darwin lib..dylib SHRLIB_VERSION = $(EPICS_VERSION).$(EPICS_REVISION).$(EPICS_MODIFICATION) # Windows only allows 2 levels of version numbering PROD_VERSION = $(EPICS_VERSION).$(EPICS_REVISION) endif # BASE_TOP #--------------------------------------------------------------- # Where to find the installed build tools # Windows does not like commands with relative paths starting ../ # so TOOLS must be an absolute path, although Perl scripts are OK. # FIND_TOOL is for scripts run before the build reaches src/tools. TOOLS = $(abspath $(EPICS_BASE_HOST_BIN)) FIND_TOOL = $(firstword $(wildcard $(TOOLS)/$(1) $(EPICS_BASE)/src/tools/$(1))) #--------------------------------------------------------------- # EPICS Base build tools and tool flags PODTOHTML = $(PERL) $(TOOLS)/podToHtml.pl CONVERTRELEASE = $(PERL) $(call FIND_TOOL,convertRelease.pl) FULLPATHNAME = $(PERL) $(TOOLS)/fullPathName.pl GENVERSIONHEADER = $(PERL) $(TOOLS)/genVersionHeader.pl $(QUIET_FLAG) $(QUESTION_FLAG) MAKERPATH = $(PYTHON) $(TOOLS)/makeRPath.py #--------------------------------------------------------------- # tools for installing libraries and products INSTALL = $(PERL) $(TOOLS)/installEpics.pl $(QUIET_FLAG) INSTALL_PRODUCT = $(INSTALL) INSTALL_LIBRARY = $(INSTALL) #--------------------------------------------------------------- # tools for making header dependencies and variable replacement MKMF = $(PERL) $(TOOLS)/mkmf.pl REPLACEVAR = $(PERL) $(TOOLS)/replaceVAR.pl #--------------------------------------------------------------- # tools for cleaning out unwanted files CVSCLEAN = $(call FIND_TOOL,cvsclean.pl) DEPCLEAN = $(call FIND_TOOL,depclean.pl) #--------------------------------------------------------------- # Tools for testing TAPS_FAILED_LOG = .taps-failed.log TESTS_FAILED_LOG = .tests-failed.log TESTS_FAILED_PATH = $(abspath $(TOP)/$(TESTS_FAILED_LOG)) TAPTOJUNIT = $(PERL) $(TOOLS)/tap-to-junit-xml.pl PROVE = $(PERL) $(TOOLS)/epicsProve.pl --failures --color PROVE.tap = $(PROVE) --ext .tap --exec "$(CAT)" TESTFAILURES = $(PERL) $(TOOLS)/testFailures.pl SHOWTESTFAILURES = $(TESTFAILURES) $(TESTS_FAILED_PATH) $(TAPS_FAILED_LOG) PROVE_FAILURE = echo $(abspath .)>> $(TESTS_FAILED_PATH) TAPFILE_FAILURE = echo $@>> $(TAPS_FAILED_LOG)