2a9a2c15b279a03d4ecc3ef462ae9583a9b79401
[u/mrichter/AliRoot.git] / EVE / EveBase / 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 EveBase)
18
19 # Module include folder
20 include_directories(${AliRoot_SOURCE_DIR}/EVE/${MODULE})
21
22 # Additional include folders in alphabetical order
23 include_directories(
24                     ${AliRoot_SOURCE_DIR}/ANALYSIS/ANALYSIS
25                     ${AliRoot_SOURCE_DIR}/ANALYSIS/ANALYSISalice
26                     ${AliRoot_SOURCE_DIR}/ITS/ITSbase
27                     ${AliRoot_SOURCE_DIR}/ITS/ITSrec
28                     ${AliRoot_SOURCE_DIR}/MONITOR/alistoragemanager
29                     ${AliRoot_SOURCE_DIR}/RAW/RAWDatabase
30                     ${AliRoot_SOURCE_DIR}/RAW/RAWDatarec
31                     ${AliRoot_SOURCE_DIR}/STEER/AOD
32                     ${AliRoot_SOURCE_DIR}/STEER/CDB
33                     ${AliRoot_SOURCE_DIR}/STEER/ESD
34                     ${AliRoot_SOURCE_DIR}/STEER/STEER
35                     ${AliRoot_SOURCE_DIR}/STEER/STEERBase
36                     ${AliRoot_SOURCE_DIR}/TPC/TPCbase
37                     ${AliRoot_SOURCE_DIR}/TPC/TPCrec
38                     ${AliRoot_SOURCE_DIR}/TPC/TPCsim
39                    )
40
41 # Sources in alphabetical order
42 set(SRCS
43     AliEveApplication.cxx
44     AliEveCascade.cxx
45     AliEveCascadeEditor.cxx
46     AliEveCascadeListEditor.cxx
47     AliEveConfigManager.cxx
48     AliEveCosmicRayFitter.cxx
49     AliEveCosmicRayFitterEditor.cxx
50     AliEveEventManager.cxx
51     AliEveEventManagerEditor.cxx
52     AliEveEventSelector.cxx
53     AliEveEventSelectorWindow.cxx
54     AliEveFileDialog.cxx
55     AliEveGedEditor.cxx
56     AliEveHF.cxx
57     AliEveHFEditor.cxx
58     AliEveHFListEditor.cxx
59     AliEveJetPlane.cxx
60     AliEveJetPlaneEditor.cxx
61     AliEveJetPlaneGL.cxx
62     AliEveKineTools.cxx
63     AliEveKink.cxx
64     AliEveKinkEditor.cxx
65     AliEveKinkListEditor.cxx
66     AliEveMacro.cxx
67     AliEveMacroEditor.cxx
68     AliEveMacroExecutor.cxx
69     AliEveMacroExecutorWindow.cxx
70     AliEveMagField.cxx
71     AliEveMainWindow.cxx
72     AliEveMultiView.cxx
73     AliEveTrackCounter.cxx
74     AliEveTrackCounterEditor.cxx
75     AliEveTrack.cxx
76     AliEveTrackFitter.cxx
77     AliEveTrackFitterEditor.cxx
78     AliEveTracklet.cxx
79     AliEveUtil.cxx
80     AliEveV0.cxx
81     AliEveV0Editor.cxx
82     AliEveV0ListEditor.cxx
83     AliEveVSDCreator.cxx
84    )
85
86 # Headers from sources
87 string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
88
89 # Generate the dictionary
90 # It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
91 get_directory_property(incdirs INCLUDE_DIRECTORIES)
92 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
93
94 # Generate the ROOT map
95 # Dependecies
96 set(LIBDEPS STEERBase STEER ESD CDB AOD RAWDatabase RAWDatarec ANALYSIS ANALYSISalice ITSbase ITSrec TPCbase TPCrec TPCsim EG Eve Ged Gpad Graf Graf3d Gui Minuit Net RGL Rint)
97 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
98
99 # Add a library to the project using the specified source files
100 add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
101 target_link_libraries(${MODULE} STEERBase STEER ESD CDB AOD RAWDatabase RAWDatarec ANALYSIS ANALYSISalice ITSbase ITSrec TPCbase TPCrec TPCsim EG Eve Ged Gpad Graf Graf3d Gui Minuit Net RGL Rint)
102
103 # Additional compilation flags
104 set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "")
105
106 # System dependent: Modify the way the library is build
107 if(${CMAKE_SYSTEM} MATCHES Darwin)
108     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
109 endif(${CMAKE_SYSTEM} MATCHES Darwin)
110
111 # Installation
112 install(TARGETS ${MODULE}
113         ARCHIVE DESTINATION lib
114         LIBRARY DESTINATION lib)
115
116 install(FILES ${HDRS} DESTINATION include)