doxy: do not show whitespace diffs on bulk edit
[u/mrichter/AliRoot.git] / EVGEN / CMakeLists.txt
CommitLineData
e9912df8 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# **************************************************************************
6d839a5c 15
e9912df8 16# Module
17set(MODULE EVGEN)
6d839a5c 18
e9912df8 19# Module include folder
427d561c 20include_directories(${AliRoot_SOURCE_DIR}/${MODULE})
6d839a5c 21
e9912df8 22# Additional include folders in alphabetical order except ROOT
f0315837 23include_directories(${ROOT_INCLUDE_DIR}
427d561c 24 ${AliRoot_SOURCE_DIR}/FASTSIM
25 ${AliRoot_SOURCE_DIR}/LHAPDF
427d561c 26 ${AliRoot_SOURCE_DIR}/STEER/ESD
27 ${AliRoot_SOURCE_DIR}/STEER/STEER
28 ${AliRoot_SOURCE_DIR}/STEER/STEERBase
29 ${AliRoot_SOURCE_DIR}/TEvtGen
e706c082 30 ${AliRoot_SOURCE_DIR}/TEvtGen/THepMCParser
e9912df8 31 )
32
33# Sources
34set(SRCS
35 AliDecayerExodus.cxx
36 AliDecayerPolarized.cxx
37 AliDimuCombinator.cxx
38 AliGenAfterBurnerFlow.cxx
39 AliGenBeamGas.cxx
40 AliGenBox.cxx
41 AliGenCocktailAfterBurner.cxx
42 AliGenCocktail.cxx
43 AliGenCocktailEntry.cxx
44 AliGenCorrHF.cxx
45 AliGenCosmicsParam.cxx
46 AliGenDeuteron.cxx
47 AliGenDoubleScan.cxx
48 AliGenEMCocktail.cxx
49 AliGenEMlib.cxx
50 AliGenExtFile.cxx
51 AliGenFixed.cxx
52 AliGenFunction.cxx
53 AliGenGeVSim.cxx
54 AliGenGSIlib.cxx
55 AliGenHalo.cxx
56 AliGenHaloProtvino.cxx
57 AliGenHBTosl.cxx
58 AliGenHIJINGparaBa.cxx
59 AliGenHIJINGpara.cxx
60 AliGenHMPIDlib.cxx
61 AliGenITSULib.cxx
62 AliGenKrypton.cxx
63 AliGenLcLib.cxx
64 AliGenLib.cxx
65 AliGenLightNuclei.cxx
66 AliGenMC.cxx
67 AliGenMUONCocktail.cxx
68 AliGenMUONCocktailpp.cxx
69 AliGenMUONlib.cxx
70 AliGenMUONLMR.cxx
71 AliGenPairFlat.cxx
72 AliGenParam.cxx
73 AliGenPHOSlib.cxx
74 AliGenPileup.cxx
75 AliGenPMDlib.cxx
76 AliGenPromptPhotons.cxx
77 AliGenReaderCwn.cxx
78 AliGenReader.cxx
79 AliGenReaderEcalHijing.cxx
80 AliGenReaderEcalJets.cxx
81 AliGenReaderEMD.cxx
82 AliGenReaderHepMC.cxx
83 AliGenReaderSL.cxx
84 AliGenReaderTreeK.cxx
85 AliGenScan.cxx
86 AliGenSlowNucleons.cxx
87 AliGenSTRANGElib.cxx
88 AliGenThermalPhotons.cxx
89 AliGenThetaSlice.cxx
90 AliGenTHnSparse.cxx
91 AliGenTunedOnPbPb.cxx
92 AliGeVSimParticle.cxx
93 AliOmegaDalitz.cxx
94 AliSlowNucleonModel.cxx
95 AliSlowNucleonModelExp.cxx
96)
97
98# Headers from sources
99string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
100
5d04a812 101# Additional header files
102set(HDRS ${HDRS} AliDecayer.h)
103
e9912df8 104# Generate the dictionary
105# It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
106get_directory_property(incdirs INCLUDE_DIRECTORIES)
107generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
108
109# Generate the ROOT map
110# Dependecies
6f2765e2 111set(LIBDEPS STEERBase STEER ESD lhapdf TEvtGen FASTSIM THepMCParser)
e9912df8 112generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
113
114# Add a library to the project using the specified source files
115add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
116
117# Additional compilation flags
68aeb13b 118set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "")
e9912df8 119
2a1514aa 120# Linking the library
121target_link_libraries(${MODULE} ${LIBDEPS})
122
e9912df8 123# System dependent: Modify the way the library is build
124if(${CMAKE_SYSTEM} MATCHES Darwin)
125 set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
126endif(${CMAKE_SYSTEM} MATCHES Darwin)
127
128# Installation
129install(TARGETS ${MODULE}
130 ARCHIVE DESTINATION lib
131 LIBRARY DESTINATION lib)
132install(FILES ${HDRS} DESTINATION include)
133
134message(STATUS "${MODULE} enabled")