HLT submodules
[u/mrichter/AliRoot.git] / HLT / JET / CMakeLists.txt
CommitLineData
b5576c4e 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
17set(MODULE AliHLTJET)
18
19# Module include folder
b5a0ad8b 20include_directories(${AliRoot_SOURCE_DIR}/HLT/JET
21 ${AliRoot_SOURCE_DIR}/HLT/JET/analysis
22 ${AliRoot_SOURCE_DIR}/HLT/JET/cone
23 ${AliRoot_SOURCE_DIR}/HLT/JET/fastjet
b5576c4e 24 )
25
26# Additional include folders in alphabetical order except ROOT
27include_directories(${ROOT_INCLUDE_DIRS}
b5a0ad8b 28 ${AliRoot_SOURCE_DIR}/ANALYSIS/ANALYSISalice
29 ${AliRoot_SOURCE_DIR}/HLT/BASE
30 ${AliRoot_SOURCE_DIR}/HLT/BASE/util
31 ${AliRoot_SOURCE_DIR}/JETAN
32 ${AliRoot_SOURCE_DIR}/STEER/AOD
33 ${AliRoot_SOURCE_DIR}/STEER/ESD
34 ${AliRoot_SOURCE_DIR}/STEER/STEERBase
b5576c4e 35 )
36
37# Sources in alphabetical order
38set(SRCS
39 AliHLTJETAgent.cxx
40 AliHLTJETBase.cxx
41 AliHLTJETJetCuts.cxx
42 AliHLTJETReader.cxx
43 AliHLTJETReaderHeader.cxx
44 AliHLTJETTrackCuts.cxx
45 analysis/AliHLTJETAnalysisBase.cxx
46 analysis/AliHLTJETAnalysisComponent.cxx
47 analysis/AliHLTJETAnalysisJets.cxx
48 analysis/AliHLTJETAnalysisMerge.cxx
49 cone/AliHLTJETConeEtaPhiCell.cxx
50 cone/AliHLTJETConeFinder.cxx
51 cone/AliHLTJETConeGrid.cxx
52 cone/AliHLTJETConeHeader.cxx
53 cone/AliHLTJETConeJetCandidate.cxx
54 cone/AliHLTJETConeJetComponent.cxx
55 cone/AliHLTJETConeSeedCuts.cxx
56 )
57
58# Headers from sources
59string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
60
61# Check for FastJet installation to include proper headers
62if(FASTJET_FOUND)
63 set(HDRS ${HDRS}
64 fastjet/AliHLTJETFastJetHeader.h
65 fastjet/AliHLTJETFastJetFinder.h
66 fastjet/AliHLTJETFastJetComponent.h
67 )
68
69 include_directories(${FASTJET_INCLUDE_DIR})
70 add_definitions(${FASTJET_DEFINITIONS})
71endif(FASTJET_FOUND)
72
73# Generate the dictionary
74# It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
75get_directory_property(incdirs INCLUDE_DIRECTORIES)
76generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
77
78# Generate the ROOT map
79# Dependecies
80set(LIBDEPS STEERBase AOD ESD ANALYSISalice HLTbase AliHLTUtil JETAN)
81generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
82
83# Add a library to the project using the specified source files
84add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
85
86# Additional compilation flags
87set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
88
89# System dependent: Modify the way the library is build
90if(${CMAKE_SYSTEM} MATCHES Darwin)
91 set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
92endif(${CMAKE_SYSTEM} MATCHES Darwin)
93
94# Installation
95install(TARGETS ${MODULE}
96 ARCHIVE DESTINATION lib
97 LIBRARY DESTINATION lib)
98
99install(FILES ${HDRS} DESTINATION include)