TOP=../.. include $(TOP)/configure/CONFIG #---------------------------------------- # ADD MACRO DEFINITIONS AFTER THIS LINE #============================= # Build 64-bit application EPICS_HOST_ARCH = linux-x86_64 # Accelerator divisions notation for 64-bit ACCEL_ARCH = rhel-7-x86_64 # Setup ROOT ROOT = /gapps/root/${EPICS_OSNAME}/${EPICS_ROOT_VERSION} USR_INCLUDES += -I$(shell $(ROOT)/bin/root-config --incdir) # ELOG stuff ELOG = /cs/certified/apps/eloglib/2.4.1 CPPLIB = /cs/certified/apps/cpplib/3.19.1 CURLPP = /usr/csite/pubtools/curlpp LIBXMLPP = /usr/csite/pubtools/libxml++ USR_INCLUDES += -I$(ELOG)/inc -I$(CPPLIB)/inc USR_CXXFLAGS += -D$(subst -,_,$(ACCEL_ARCH) ) -D_REENTRANT -Wall UST_LDDFLAGS += -Bstatic #============================= # Build the IOC application PROD_IOC = collimatorMotion # collimatorMotion.dbd will be created and installed DBD += collimatorMotion.dbd ## Add all the support libraries needed by this IOC collimatorMotion_LIBS += motorNewportSupport collimatorMotion_LIBS += std collimatorMotion_LIBS += busy collimatorMotion_LIBS += calc autosave collimatorMotion_LIBS += sscan collimatorMotion_LIBS += scanProgress collimatorMotion_LIBS += asyn collimatorMotion_LIBS += devIocStats collimatorMotion_LIBS += motor collimatorMotion_LIBS += Newport # collimatorMotion_registerRecordDeviceDriver.cpp derives from collimatorMotion.dbd collimatorMotion_SRCS += collimatorMotion_registerRecordDeviceDriver.cpp # Build the main IOC entry point on workstation OSs. collimatorMotion_SRCS_DEFAULT += collimatorMotionMain.cpp collimatorMotion_SRCS_vxWorks += -nil- # NOTE: To build SNL programs, SNCSEQ must be defined # in the /configure/RELEASE file ifneq ($(SNCSEQ),) # Build sncExample into motorNewportSupport collimatorMotion_SNCFLAGS += +r collimatorMotion_LIBS += seq pv endif # Finally link to the EPICS Base libraries collimatorMotion_LIBS += $(EPICS_BASE_IOC_LIBS) #=========================== # #============================= # Build the analysis application #=========================== # PROD_IOC_Linux = analyzeCollimatorScan analyzeCollimatorScan_SRCS_DEFAULT += analyzeCollimatorScan.cpp analyzeCollimatorScan_SRCS += FileNameFinder.cpp analyzeCollimatorScan_SRCS += LogableMainFrame.cpp analyzeCollimatorScan_SRCS += LogEntryFrame.cpp analyzeCollimatorScan_SRCS += ScanMainFrame.cpp analyzeCollimatorScan_SRCS += ScanStream.cpp analyzeCollimatorScan_SRCS += Scan.cpp analyzeCollimatorScan_SRCS += ScanCombo.cpp analyzeCollimatorScan_SRCS += OverviewMainFrame.cpp analyzeCollimatorScan_SRCS += OverviewFrame.cpp analyzeCollimatorScan_SRCS += AnalysisMainFrame.cpp analyzeCollimatorScan_SRCS += AnalysisFrame.cpp analyzeCollimatorScan_SRCS += GraphAnalyzer.cpp analyzeCollimatorScan_SRCS += ScanDetector.cpp analyzeCollimatorScan_SRCS += ScanFile.cpp analyzeCollimatorScan_SRCS += ScanPlot.cpp analyzeCollimatorScan_SRCS += ScanCorrection.cpp analyzeCollimatorScan_SRCS += ScanPositioner.cpp analyzeCollimatorScan_SRCS += CollimatorGraphAnalyzer.cpp analyzeCollimatorScan_SRCS += AnalysisFrameDict.cpp analyzeCollimatorScan_SRCS += AnalysisMainFrameDict.cpp analyzeCollimatorScan_SRCS += GraphAnalyzerDict.cpp analyzeCollimatorScan_SRCS += LogableMainFrameDict.cpp analyzeCollimatorScan_SRCS += LogEntryFrameDict.cpp analyzeCollimatorScan_SRCS += OverviewFrameDict.cpp analyzeCollimatorScan_SRCS += OverviewMainFrameDict.cpp analyzeCollimatorScan_SRCS += ScanDetectorDict.cpp analyzeCollimatorScan_SRCS += ScanStreamDict.cpp analyzeCollimatorScan_SRCS += ScanDict.cpp analyzeCollimatorScan_SRCS += ScanComboDict.cpp analyzeCollimatorScan_SRCS += ScanFileDict.cpp analyzeCollimatorScan_SRCS += ScanPlotDict.cpp analyzeCollimatorScan_SRCS += ScanMainFrameDict.cpp analyzeCollimatorScan_SRCS += ScanPositionerDict.cpp analyzeCollimatorScan_SRCS += ScanCorrectionDict.cpp ROOT_LIBRIRIES = $(filter -l%, $(shell $(ROOT)/bin/root-config --glibs) ) ROOT_LIBS_ONLY = $(subst -l, , $(ROOT_LIBRIRIES) ) analyzeCollimatorScan_SYS_LIBS_Linux += $(ROOT_LIBS_ONLY) analyzeCollimatorScan_SYS_LIBS_Linux += GX11TTF GX11 analyzeCollimatorScan_SYS_LIBS_Linux += boost_iostreams boost_filesystem boost_system boost_program_options analyzeCollimatorScan_SYS_LIBS_Linux += cpp elog xml++-2.6 analyzeCollimatorScan_CFLAGS += -D$(ACCEL_ARCH) analyzeCollimatorScan_CXXFLAGS += -D$(ACCEL_ARCH) analyzeCollimatorScan_CPPFLAGS += -D$(ACCEL_ARCH) analyzeCollimatorScan_LDFLAGS += $(shell $(ROOT)/bin/root-config --cflags) analyzeCollimatorScan_LDFLAGS += -L$(shell $(ROOT)/bin/root-config --libdir) -Wl,-rpath=$(shell $(ROOT)/bin/root-config --libdir) -Wl,-R$(shell $(ROOT)/bin/root-config --libdir) analyzeCollimatorScan_LDFLAGS += -L$(ELOG)/lib/$(ACCEL_ARCH) -L$(CPPLIB)/lib/$(ACCEL_ARCH) -L$(CURLPP)/lib -L$(LIBXMLPP)/lib analyzeCollimatorScan_LDFLAGS += -Wl,-s -Wl,--rpath=$(ELOG)/lib/$(ACCEL_ARCH) analyzeCollimatorScan_LDFLAGS += -Wl,--rpath=$(CPPLIB)/lib/$(ACCEL_ARCH) analyzeCollimatorScan_LDFLAGS += -Wl,--rpath=$(CURLPP)/lib analyzeCollimatorScan_LDFLAGS += -Wl,--rpath=$(LIBXMLPP)/lib #=========================== # # Script # SCRIPTS += analyzeScan.csh #=========================== include $(TOP)/configure/RULES #---------------------------------------- # ADD RULES AFTER THIS LINE %Dict.cpp : ../%.hh ../%LinkDef.h tcsh -c "source $(ROOT)/bin/thisroot.csh $(ROOT); $(ROOT)/bin/rootcint -f $@ -c $<"