Switching from CMAKE_SOURCE_DIR to AliRoot_SOURCE_DIR
[u/mrichter/AliRoot.git] / CORRFW / 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 CORRFW)
18
19 # Module include folder
20 include_directories(${AliRoot_SOURCE_DIR}/${MODULE})
21
22 # Additional include folders in alphabetical order except ROOT
23 include_directories(${ROOT_INCLUDE_DIRS}
24                     ${AliRoot_SOURCE_DIR}/ANALYSIS/ANALYSISalice
25                     ${AliRoot_SOURCE_DIR}/STEER/AOD
26                     ${AliRoot_SOURCE_DIR}/STEER/ESD
27                     ${AliRoot_SOURCE_DIR}/STEER/STEERBase
28                    )
29
30 # Sources in alphabetical order
31 set(SRCS
32     AliCFAcceptanceCuts.cxx
33     AliCFContainer.cxx
34     AliCFCutBase.cxx
35     AliCFDataGrid.cxx
36     AliCFEffGrid.cxx
37     AliCFEventClassCuts.cxx
38     AliCFEventGenCuts.cxx
39     AliCFEventRecCuts.cxx
40     AliCFFrame.cxx
41     AliCFGridSparse.cxx
42     AliCFManager.cxx
43     AliCFPairAcceptanceCuts.cxx
44     AliCFPair.cxx
45     AliCFPairIsPrimaryCuts.cxx
46     AliCFPairPidCut.cxx
47     AliCFPairQualityCuts.cxx
48     AliCFParticleGenCuts.cxx
49     AliCFTrackCutPid.cxx
50     AliCFTrackIsPrimaryCuts.cxx
51     AliCFTrackKineCuts.cxx
52     AliCFTrackQualityCuts.cxx
53     AliCFUnfolding.cxx
54     AliCFV0TopoCuts.cxx
55    )
56
57 # Headers from sources
58 string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
59
60 # Generate the dictionary
61 # It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
62 get_directory_property(incdirs INCLUDE_DIRECTORIES)
63 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
64
65 # Generate the ROOT map
66 # Dependecies
67 set(LIBDEPS STEERBase AOD ESD ANALYSISalice Foam)
68 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
69
70 # Add a library to the project using the specified source files
71 add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
72
73 # Additional compilation flags
74 set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
75
76 if(ROOT_HASALIEN STREQUAL "yes")
77     add_definitions(-DWITHALIEN)
78 endif()
79
80 if(ROOT_HASXML STREQUAL "yes")
81     add_definitions(-DWITHXML)
82 endif()
83
84 # System dependent: Modify the way the library is build
85 if(${CMAKE_SYSTEM} MATCHES Darwin)
86     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
87 endif(${CMAKE_SYSTEM} MATCHES Darwin)
88
89 # Installation
90 install(TARGETS ${MODULE}
91         ARCHIVE DESTINATION lib
92         LIBRARY DESTINATION lib)
93
94 install(FILES ${HDRS} DESTINATION include)