]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/ITSsim/CMakeLists.txt
Fix for ITS dictionaries
[u/mrichter/AliRoot.git] / ITS / ITSsim / 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 ITSsim)
18
19 # Module include folder
20 include_directories(${CMAKE_SOURCE_DIR}/ITS/${MODULE})
21
22 # Additional include folders in alphabetical order except ROOT
23 include_directories(${ROOT_INCLUDE_DIRS}
24                     ${CMAKE_SOURCE_DIR}/ITS/ITSbase
25                     ${CMAKE_SOURCE_DIR}/ITS/ITSrec
26                     ${CMAKE_SOURCE_DIR}/RAW/RAWDatabase
27                     ${CMAKE_SOURCE_DIR}/RAW/RAWDatarec
28                     ${CMAKE_SOURCE_DIR}/STEER/CDB
29                     ${CMAKE_SOURCE_DIR}/STEER/ESD
30                     ${CMAKE_SOURCE_DIR}/STEER/STEERBase
31                     ${CMAKE_SOURCE_DIR}/STEER/STEER
32                     ${CMAKE_SOURCE_DIR}/TPC
33                    )
34
35 # Sources in alphabetical order
36 set(SRCS
37     AliITS.cxx
38     AliITSDetTypeSim.cxx
39     AliITSDigitizer.cxx
40     AliITSetfSDD.cxx
41     AliITSFOEfficiencySPDColumn.cxx
42     AliITSFOEfficiencySPD.cxx
43     AliITSFOGeneratorSPD.cxx
44     AliITSFONoiseSPD.cxx
45     AliITSFOSignalsSPD.cxx
46     AliITShit.cxx
47     AliITSmodule.cxx
48     AliITSQADataMakerSim.cxx
49     AliITSQASDDDataMakerSim.cxx
50     AliITSQASPDDataMakerSim.cxx
51     AliITSQASSDDataMakerSim.cxx
52     AliITSsDigitize.cxx
53     AliITSsimulation.cxx
54     AliITSsimulationFastPoints.cxx
55     AliITSsimulationSDD.cxx
56     AliITSsimulationSPD.cxx
57     AliITSsimulationSSD.cxx
58     AliITSSimuParam.cxx
59     AliITSTableSSD.cxx
60     AliITSTrigger.cxx
61     AliITSTriggerFOProcessor.cxx
62     AliITSv11.cxx
63     AliITSv11GeomCable.cxx
64     AliITSv11GeomCableFlat.cxx
65     AliITSv11GeomCableRound.cxx
66     AliITSv11Geometry.cxx
67     AliITSv11GeometrySDD.cxx
68     AliITSv11GeometrySPD.cxx
69     AliITSv11GeometrySSD.cxx
70     AliITSv11GeometrySupport.cxx
71    )
72
73 # Headers from sources
74 string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
75
76 # Generate the dictionary
77 # It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
78 get_directory_property(incdirs INCLUDE_DIRECTORIES)
79 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
80
81 # Generate the ROOT map
82 # Dependecies
83 set(LIBDEPS CDB ESD STEERBase STEER ITSbase ITSrec RAWDatabase RAWDatarec Graf)
84 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
85
86
87 # Add a library to the project using the specified source files
88 add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
89
90 # Additional compilation flags
91 set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
92
93 # System dependent: Modify the way the library is build
94 if(${CMAKE_SYSTEM} MATCHES Darwin)
95     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
96 endif(${CMAKE_SYSTEM} MATCHES Darwin)
97
98 # Installation
99 install(TARGETS ${MODULE}
100         ARCHIVE DESTINATION lib
101         LIBRARY DESTINATION lib)
102
103 install(FILES ${HDRS} DESTINATION include)