d9189b31289ec1fefb08dd96df36fcba4cac08b5
[u/mrichter/AliRoot.git] / TOF / TOFrec / 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 TOFrec)
18
19 # Module include folder
20 include_directories(${CMAKE_SOURCE_DIR}/TOF/${MODULE})
21
22 # Additional include folders in alphabetical order except ROOT
23 include_directories(${ROOT_INCLUDE_DIRS}
24                     ${CMAKE_SOURCE_DIR}/RAW/RAWDatabase
25                     ${CMAKE_SOURCE_DIR}/RAW/RAWDatarec
26                     ${CMAKE_SOURCE_DIR}/STEER/CDB
27                     ${CMAKE_SOURCE_DIR}/STEER/ESD
28                     ${CMAKE_SOURCE_DIR}/STEER/STEER
29                     ${CMAKE_SOURCE_DIR}/STEER/STEERBase
30                     ${CMAKE_SOURCE_DIR}/TOF/TOFbase
31                     ${CMAKE_SOURCE_DIR}/TOF/TOFsim
32                    )
33
34 # Sources in alphabetical order
35 set(SRCS
36     AliTOFcluster.cxx
37     AliTOFClusterFinder.cxx
38     AliTOFClusterFinderV1.cxx
39     AliTOFQADataMakerRec.cxx
40     AliTOFReconstructor.cxx
41     AliTOFRecoParam.cxx
42     AliTOFT0maker.cxx
43     AliTOFT0v1.cxx
44     AliTOFtrack.cxx
45     AliTOFtracker.cxx
46     AliTOFtrackerMI.cxx
47     AliTOFtrackerV1.cxx
48     AliTOFtrackerV2.cxx
49    )
50
51 # Headers from sources
52 string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
53
54 # Generate the dictionary
55 # It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
56 get_directory_property(incdirs INCLUDE_DIRECTORIES)
57 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
58
59 # Generate the ROOT map
60 # Dependecies
61 set(LIBDEPS STEERBase STEER ESD CDB RAWDatarec RAWDatabase TOFbase TOFsim Graf)
62 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
63
64
65 # Add a library to the project using the specified source files
66 add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
67
68 # Additional compilation flags
69 set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
70
71 # System dependent: Modify the way the library is build
72 if(${CMAKE_SYSTEM} MATCHES Darwin)
73     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
74 endif(${CMAKE_SYSTEM} MATCHES Darwin)
75
76 # Installation
77 install(TARGETS ${MODULE}
78         ARCHIVE DESTINATION lib
79         LIBRARY DESTINATION lib)
80
81 install(FILES ${HDRS} DESTINATION include)