CMakeLists.txt 4.82 KB
Newer Older
dino's avatar
dino committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)

PROJECT(femul)

# select the off-line version 
ADD_DEFINITIONS(-DNRV_TYPE=NRV_OFFLINE)

# select one of the 2 options
IF(1)
  # c stuff compiled as C++ (as we do in the ACQ)
  ADD_DEFINITIONS(-x c++)
else()
  # c stuff compiles as C --> mgt_inizialize and mgt_process_event defined
  # as 'extern "C"' in TrackingFilterOFT.cpp and TrackingFilterMGT.cpp
  ADD_DEFINITIONS(-DUSING_CMAKE)
endif()

# enable the vectorized version of the PSA FOM-loop
ADD_DEFINITIONS(-msse4)

SET(ADFDIR "../myADF0.2")
SET(PRISMA "../PRISMA/src/lib_prisma")
SET(ACTORS "..")
SET(FEMDIR ".")

INCLUDE_DIRECTORIES(
${ACTORS}/common
${ACTORS}/producers/Crystal      ${ACTORS}/producers/Crystal/includeATCA
${ACTORS}/producers/AncillaryTCP
${ACTORS}/filters/Preprocessing  ${ACTORS}/filters/Preprocessing/includePrePSA
${ACTORS}/filters/Ancillary      ${ACTORS}/filters/Ancillary/includeVME
${ACTORS}/filters/PSA            ${ACTORS}/filters/PSA/includePSA
${ACTORS}/filters/Tracking       ${ACTORS}/filters/Tracking/includeOFT  ${ACTORS}/filters/Tracking/includeMGT
${ACTORS}/builders
${ADFDIR}                        ${ADFDIR}/standalone
${PRISMA}/include
/usr/include/boost
/usr/include/skstream-0.3        /usr/lib/skstream-0.3/include
#${ACTORS}/producers/Basic
#${ACTORS}/consumers/Basic
)

SET(actors_SRCS
${ACTORS}/common/cycleServer.cpp
${ACTORS}/common/misc.cpp
${ACTORS}/common/mwdlib.cpp
${ACTORS}/producers/Crystal/CrystalProducer.cpp
${ACTORS}/producers/Crystal/CrystalProducerATCA.cpp
${ACTORS}/producers/Crystal/includeATCA/mezzanine.cpp
${ACTORS}/producers/Crystal/includeATCA/fileATCA.cpp
${ACTORS}/producers/AncillaryTCP/AncillaryProducerTCP.cpp
${ACTORS}/filters/Preprocessing/PreprocessingFilter.cpp
${ACTORS}/filters/Preprocessing/PreprocessingFilterPSA.cpp
${ACTORS}/filters/Ancillary/AncillaryFilter.cpp
${ACTORS}/filters/Ancillary/AncillaryFilterVME.cpp
${ACTORS}/filters/Ancillary/AncillaryFilterATCA.cpp 
${ACTORS}/filters/Ancillary/includeVME/Converter.cpp
${ACTORS}/filters/PSA/PSAFilter.cpp
${ACTORS}/filters/PSA/PSAFilterGridSearch.cpp
${ACTORS}/filters/PSA/includePSA/SignalBasis.cpp
${ACTORS}/filters/Tracking/TrackingFilter.cpp
${ACTORS}/filters/Tracking/TrackingFilterOFT.cpp
${ACTORS}/filters/Tracking/TrackingFilterMGT.cpp
${ACTORS}/filters/Tracking/includeOFT/tracking_cluster.c
${ACTORS}/filters/Tracking/includeOFT/tracking_data_manip.c
${ACTORS}/filters/Tracking/includeOFT/tracking_events.c
${ACTORS}/filters/Tracking/includeOFT/tracking_physics.c
${ACTORS}/filters/Tracking/includeOFT/tracking_utilitaires.c
${ACTORS}/filters/Tracking/includeMGT/mgt.c
${ACTORS}/filters/Tracking/includeMGT/mgt_eclust.c
${ACTORS}/filters/Tracking/includeMGT/mgt_etrack.c
${ACTORS}/filters/Tracking/includeMGT/mgt_event.c
${ACTORS}/filters/Tracking/includeMGT/mgt_geoagata.c
${ACTORS}/filters/Tracking/includeMGT/mgt_vectorlib.c
${ACTORS}/builders/EventBuilder.cpp
)

SET(adf_SRCS
${ADFDIR}/ADFConfig.cpp
${ADFDIR}/ADFObjects.cpp
${ADFDIR}/AgataConfigurationFrame.cpp
${ADFDIR}/AgataFrameFactory.cpp
${ADFDIR}/AgataKeyFactory.cpp
${ADFDIR}/AgataRawFrame.cpp
${ADFDIR}/BaseBuffer.cpp
${ADFDIR}/BufferIO.cpp
${ADFDIR}/CompositeFrame.cpp
${ADFDIR}/ConfAgent.cpp
${ADFDIR}/ConfigurationFrame.cpp
${ADFDIR}/Counter.cpp
${ADFDIR}/CrystalFrame.cpp
${ADFDIR}/DataHandling.cpp
${ADFDIR}/DefaultKeyFactory.cpp
${ADFDIR}/FactoryItem.cpp
${ADFDIR}/Frame.cpp
${ADFDIR}/FrameBlock.cpp
${ADFDIR}/FrameFactory.cpp
${ADFDIR}/FrameIO.cpp
${ADFDIR}/GenericFrame.cpp
${ADFDIR}/GObject.cpp
${ADFDIR}/Hits.cpp
${ADFDIR}/Key.cpp
${ADFDIR}/KeyFactory.cpp
${ADFDIR}/MetaFrame.cpp
${ADFDIR}/NarvalInterface.cpp
${ADFDIR}/Signals.cpp
${ADFDIR}/Trigger.cpp
${ADFDIR}/Version.cpp
${ADFDIR}/standalone/CentralLog.cpp
${ADFDIR}/standalone/LogCollector.cpp
${ADFDIR}/standalone/LogMessage.cpp
${ADFDIR}/BasicAFC.cpp
${ADFDIR}/BasicAFP.cpp
)

SET(PRISMA_SRCS
${PRISMA}/src/prismaManager.cc
${PRISMA}/src/banGate.cc
${PRISMA}/src/banManager.cc
${PRISMA}/src/calCoef.cc
${PRISMA}/src/calManager.cc
${PRISMA}/src/CGaspBuffer.cc
${PRISMA}/src/ConfigurationFile.cc
${PRISMA}/src/detData.cc 
${PRISMA}/src/fastSolver.cc
${PRISMA}/src/fullEvent.cc
${PRISMA}/src/massCalculator.cc
${PRISMA}/src/prismaIonCh.cc
${PRISMA}/src/prismaMcp.cc
${PRISMA}/src/prismaPPAC.cc
${PRISMA}/src/prismaSide.cc
${PRISMA}/src/RandomGenerator.cc
${PRISMA}/src/Vectors.cc
${PRISMA}/src/zedCalculator.cc
)

SET(femul_SRCS  ${FEMDIR}/femul.cpp  ${adf_SRCS}  ${actors_SRCS}  ${PRISMA_SRCS} )

ADD_EXECUTABLE(femul ${femul_SRCS})

IF(WIN32)
 TARGET_LINK_LIBRARIES(femul /lib/libboost_thread-mt.a)
ELSE()
 TARGET_LINK_LIBRARIES(femul /usr/lib/libboost_thread-mt.so)
ENDIF()

#MESSAGE("CMAKE_SYSTEM_NAME: ${CMAKE_SYSTEM_NAME}")
#
#IF(WIN32)
#  MESSAGE("WIN32")
#ELSE(WIN32)
#  MESSAGE("not WIN32")
#ENDIF(WIN32)