PWGCFfemtoscopyUser converted to native cmake
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemtoUser / CMakeLists.txt
1 # **************************************************************************
2 # * Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
3 # *                                                                        *
4 # * Author: The ALICE Off-line Project.                                    *
5 # * Contributors are mentioned in the code where appropriate.              *
6 # *                                                                        *
7 # * Permission to use, copy, modify and distribute this software and its   *
8 # * documentation strictly for non-commercial purposes is hereby granted   *
9 # * without fee, provided that the above copyright notice appears in all   *
10 # * copies and that both the copyright notice and this permission notice   *
11 # * appear in the supporting documentation. The authors make no claims     *
12 # * about the suitability of this software for any purpose. It is          *
13 # * provided "as is" without express or implied warranty.                  *
14 # **************************************************************************/
15
16 #Module
17 set (MODULE PWGCFfemtoscopyUser)
18
19 # Module include folder
20 include_directories(${AliRoot_SOURCE_DIR}/PWGCF/FEMTOSCOPY/AliFemtoUser)
21
22 # Additional includes - alphabetical order except ROOT
23 include_directories(${ROOT_INCLUDE_DIRS}
24                     ${AliRoot_SOURCE_DIR}/ANALYSIS/ANALYSIS
25                     ${AliRoot_SOURCE_DIR}/ANALYSIS/ANALYSISalice
26                     ${AliRoot_SOURCE_DIR}/PWGCF/FEMTOSCOPY/AliFemto
27                     ${AliRoot_SOURCE_DIR}/STEER/AOD
28                     ${AliRoot_SOURCE_DIR}/STEER/ESD
29                     ${AliRoot_SOURCE_DIR}/STEER/STEERBase
30   )
31
32 # Sources - alphabetical order
33 set(SRCS
34   AliFemtoShareQualityPairCut.cxx
35   AliFemtoShareQualityKTPairCut.cxx
36   AliFemtoShareQualityTPCEntranceSepPairCut.cxx
37   AliFemtoESDTrackCut.cxx
38   AliFemtoMJTrackCut.cxx
39   AliFemtoKKTrackCut.cxx
40   AliFemtoTPCInnerCorrFctn.cxx
41   AliFemtoChi2CorrFctn.cxx
42   AliFemtoModelCorrFctnSource.cxx
43   AliFemtoModelCorrFctnDEtaDPhi.cxx
44   AliFemtoModelBPLCMSCorrFctn.cxx
45   AliFemtoModelBPLCMSCorrFctnKK.cxx
46   AliFemtoModelGausRinvFreezeOutGenerator.cxx
47   AliFemtoModelCorrFctnTrueQ.cxx
48   AliFemtoModelCorrFctnNonIdDR.cxx
49   AliFemtoModelCorrFctn3DSpherical.cxx
50   AliFemtoModelCorrFctn3DLCMSSpherical.cxx
51   AliFemtoCutMonitorParticleMomRes.cxx
52   AliFemtoModelAllHiddenInfo.cxx
53   AliFemtoCutMonitorTrackTPCchiNdof.cxx
54   AliFemtoQATrackCut.cxx
55   AliFemtoQAEventCut.cxx
56   AliFemtoCutMonitorTrackTPCncls.cxx
57   AliFemtoShareQualityTPCEntranceSepQAPairCut.cxx
58   AliFemtoShareQualityQAPairCut.cxx
59   AliFemtoShareQualityCorrFctn.cxx
60   AliFemtoYlm.cxx
61   AliFemtoCorrFctnDirectYlm.cxx
62   AliFemtoModelCorrFctnDirectYlm.cxx
63   AliFemtoCutMonitorParticlePtPDG.cxx
64   AliFemtoCorrFctnTPCNcls.cxx
65   AliFemtoCorrFctnDEtaDPhi.cxx
66   AliFemtoCorrFctnDEtaDPhiCorrections.cxx
67   AliFemtoCorrFctnGammaMonitor.cxx
68   AliFemtoQinvCorrFctnEMCIC.cxx
69   AliFemtoCorrFctn3DSphericalEMCIC.cxx
70   AliFemtoBPLCMS3DCorrFctnEMCIC.cxx
71   AliFemtoPairCutAntiGamma.cxx
72   AliFemtoCutMonitorParticleEtCorr.cxx
73   AliFemtoPairCutRadialDistance.cxx
74   AliFemtoPairCutPt.cxx
75   AliFemtoAvgSepCorrFctn.cxx
76   AliFemtoCutMonitorParticlePtPDGV0.cxx
77   AliFemtoAnalysisAzimuthalPbPb.cxx
78   AliFemtoPairCutRadialDistanceLM.cxx
79   AliFemtoPicoEventRP.cxx
80   AliFemtoPairCutRadialDistanceKK.cxx
81   AliFemtoPairCutResonances.cxx
82   AliFemtoCorrFctnMinvMonitor.cxx
83   AliFemtoCorrFctnPairFractions.cxx
84   AliAnalysisTaskParticleEfficiency.cxx
85   )
86
87 # Headers from sources
88 string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
89
90 # Generate the dictionary
91 # It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
92 get_directory_property(incdirs INCLUDE_DIRECTORIES)
93 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
94
95 # Add a shared library
96 add_library(${MODULE} SHARED  ${SRCS} G__${MODULE}.cxx)
97
98 # Generate the ROOT map
99 # Dependecies
100 set(LIBDEPS ANALYSISalice PWGCFfemtoscopy)
101 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
102
103 # Linking the library
104 target_link_libraries(${MODULE} ${LIBDEPS})
105
106 # Public include folders that will be propagated to the dependecies
107 target_include_directories(${MODULE} PUBLIC ${incdirs})
108
109 # System dependent: Modify the way the library is build
110 if(${CMAKE_SYSTEM} MATCHES Darwin)
111     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
112 endif(${CMAKE_SYSTEM} MATCHES Darwin)
113
114 # Installation
115 install(TARGETS ${MODULE} 
116   ARCHIVE DESTINATION lib
117   LIBRARY DESTINATION lib)
118 install(FILES ${HDRS} DESTINATION include)