CMake: Removing all lhapdf link dependencies
[u/mrichter/AliRoot.git] / PYTHIA8 / pythia8175 / 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 pythia8175)
18
19 # Module include folder
20 include_directories(${AliRoot_SOURCE_DIR}/PYTHIA8/${MODULE})
21
22 # Additional includes - alphabetical order except ROOT
23 include_directories(${ROOT_INCLUDE_DIR}
24                     ${AliRoot_SOURCE_DIR}/PYTHIA8/${MODULE}/include
25                    )
26
27 # Sources - alphabetical order
28 set(SRCS
29   src/Analysis.cxx 
30   src/Basics.cxx 
31   src/BeamParticle.cxx 
32   src/BeamRemnants.cxx 
33   src/BeamShape.cxx 
34   src/BoseEinstein.cxx 
35   src/Event.cxx 
36   src/FragmentationFlavZpT.cxx 
37   src/FragmentationSystems.cxx 
38   src/HadronLevel.cxx 
39   src/HadronScatter.cxx
40   src/HelicityBasics.cxx
41   src/HelicityMatrixElements.cxx
42   src/HiddenValleyFragmentation.cxx
43   src/History.cxx
44   src/Info.cxx 
45   src/LesHouches.cxx 
46   src/Merging.cxx 
47   src/MergingHooks.cxx 
48   src/MiniStringFragmentation.cxx 
49   src/MultipartonInteractions.cxx 
50   src/ParticleData.cxx 
51   src/ParticleDecays.cxx 
52   src/PartonDistributions.cxx 
53   src/PartonLevel.cxx 
54   src/PartonSystems.cxx 
55   src/PhaseSpace.cxx 
56   src/ProcessContainer.cxx 
57   src/ProcessLevel.cxx 
58   src/Pythia.cxx 
59   src/PythiaStdlib.cxx
60   src/RHadrons.cxx 
61   src/ResonanceDecays.cxx 
62   src/ResonanceWidths.cxx 
63   src/Settings.cxx 
64   src/SigmaCompositeness.cxx 
65   src/SigmaEW.cxx 
66   src/SigmaExtraDim.cxx 
67   src/SigmaGeneric.cxx 
68   src/SigmaHiggs.cxx 
69   src/SigmaLeftRightSym.cxx 
70   src/SigmaLeptoquark.cxx 
71   src/SigmaNewGaugeBosons.cxx 
72   src/SigmaOnia.cxx 
73   src/SigmaProcess.cxx 
74   src/SigmaQCD.cxx 
75   src/SigmaSUSY.cxx 
76   src/SigmaTotal.cxx 
77   src/SpaceShower.cxx 
78   src/StandardModel.cxx 
79   src/StringFragmentation.cxx 
80   src/SusyCouplings.cxx 
81   src/SusyLesHouches.cxx 
82   src/TimeShower.cxx 
83   src/TauDecays.cxx               
84   src/UserHooks.cxx 
85   src/SusyResonanceWidths.cxx 
86   )
87
88 # Headers generated from sources list
89 # NOTE: this is non-standard and requires two replaces
90 string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
91 string(REPLACE "src/" "include/" HDRS "${HDRS}")
92
93 # Additional headers, with no corresponding sources
94 list(APPEND HDRS "include/FastJet3.h"
95                  "include/HepMCInterface.h"
96                  "include/LHAFortran.h"
97                  "include/LHAPDFInterface.h"
98                  "include/PythiaComplex.h"
99     )
100
101 # No dictionary
102
103 # Add a library to the project using the specified source files
104 add_library(${MODULE} SHARED ${SRCS})
105
106 # Do not generate the ROOT map
107 # Dependencies
108 set(LIBDEPS)
109
110 # Additional compilation flags
111 set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "")
112 target_link_libraries(${MODULE} )
113
114 # Linking the library
115 target_link_libraries(${MODULE} ${LIBDEPS})
116
117 # System dependent: Modify the way the library is build
118 if(${CMAKE_SYSTEM} MATCHES Darwin)
119     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
120 endif(${CMAKE_SYSTEM} MATCHES Darwin)
121
122 # Installation
123 install(TARGETS ${MODULE} 
124   ARCHIVE DESTINATION lib
125   LIBRARY DESTINATION lib)
126
127 # Installation of headers
128 # NOTE: they will all go in the include/pythia subdirectory, and NOT in include
129 install(FILES ${HDRS} DESTINATION "include/pythia")