]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/MUONmapping/CMakeLists.txt
MUON + CheckCompiler
[u/mrichter/AliRoot.git] / MUON / MUONmapping / 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 MUONmapping)
18
19 # Module include folder
20 include_directories(${CMAKE_SOURCE_DIR}/MUON/${MODULE})
21
22 # Additional include folders in alphabetical order except ROOT
23 include_directories(${ROOT_INCLUDE_DIRS}
24                     ${CMAKE_SOURCE_DIR}/MUON/MUONcore
25                     ${CMAKE_SOURCE_DIR}/STEER/CDB
26                     ${CMAKE_SOURCE_DIR}/STEER/STEERBase
27                    )
28
29 # Sources in alphabetical order
30 set(SRCS
31     AliMpArea.cxx
32     AliMpBusPatch.cxx
33     AliMpCathodType.cxx
34     AliMpCDB.cxx
35     AliMpConnection.cxx
36     AliMpConstants.cxx
37     AliMpDataMap.cxx
38     AliMpDataProcessor.cxx
39     AliMpDataStreams.cxx
40     AliMpDCSNamer.cxx
41     AliMpDDL.cxx
42     AliMpDDLStore.cxx
43     AliMpDEIterator.cxx
44     AliMpDEManager.cxx
45     AliMpDEStore.cxx
46     AliMpDetElement.cxx
47     AliMpEncodePair.cxx
48     AliMpFastSegmentation.cxx
49     AliMpFiles.cxx
50     AliMpFrtCrocusConstants.cxx
51     AliMpHelper.cxx
52     AliMpHVUID.cxx
53     AliMpLocalBoard.cxx
54     AliMpManuIterator.cxx
55     AliMpManuStore.cxx
56     AliMpManuUID.cxx
57     AliMpMotif.cxx
58     AliMpMotifMap.cxx
59     AliMpMotifPosition.cxx
60     AliMpMotifPositionPadIterator.cxx
61     AliMpMotifReader.cxx
62     AliMpMotifSpecial.cxx
63     AliMpMotifType.cxx
64     AliMpMotifTypePadIterator.cxx
65     AliMpPad.cxx
66     AliMpPadRow.cxx
67     AliMpPadRowLSegment.cxx
68     AliMpPadRowRSegment.cxx
69     AliMpPadUID.cxx
70     AliMpPCB.cxx
71     AliMpPCBPadIterator.cxx
72     AliMpPlaneType.cxx
73     AliMpRegionalTrigger.cxx
74     AliMpRow.cxx
75     AliMpRowSegment.cxx
76     AliMpRowSegmentLSpecial.cxx
77     AliMpRowSegmentRSpecial.cxx
78     AliMpSectorAreaHPadIterator.cxx
79     AliMpSectorAreaVPadIterator.cxx
80     AliMpSector.cxx
81     AliMpSectorPadIterator.cxx
82     AliMpSectorReader.cxx
83     AliMpSectorSegmentation.cxx
84     AliMpSegmentation.cxx
85     AliMpSlat.cxx
86     AliMpSlatMotifMap.cxx
87     AliMpSlatPadIterator.cxx
88     AliMpSlatSegmentation.cxx
89     AliMpSt345Reader.cxx
90     AliMpStation12Type.cxx
91     AliMpStationType.cxx
92     AliMpSubZone.cxx
93     AliMpTriggerCrate.cxx
94     AliMpTrigger.cxx
95     AliMpTriggerReader.cxx
96     AliMpTriggerSegmentation.cxx
97     AliMpUID.cxx
98     AliMpVIndexed.cxx
99     AliMpVMotif.cxx
100     AliMpVPadIterator.cxx
101     AliMpVPadRowSegment.cxx
102     AliMpVRowSegment.cxx
103     AliMpVRowSegmentSpecial.cxx
104     AliMpVSegmentation.cxx
105     AliMpZone.cxx
106    )
107
108 # Headers from sources
109 string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
110
111 # Generate the dictionary
112 # It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
113 get_directory_property(incdirs INCLUDE_DIRECTORIES)
114 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
115
116 # Generate the ROOT map
117 # Dependecies
118 set(LIBDEPS STEERBase CDB MUONcore)
119 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
120
121
122 # Add a library to the project using the specified source files
123 add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
124
125 # Additional compilation flags
126 set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
127
128 # System dependent: Modify the way the library is build
129 if(${CMAKE_SYSTEM} MATCHES Darwin)
130     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
131 endif(${CMAKE_SYSTEM} MATCHES Darwin)
132
133 # Installation
134 install(TARGETS ${MODULE}
135         ARCHIVE DESTINATION lib
136         LIBRARY DESTINATION lib)
137
138 install(FILES ${HDRS} DESTINATION include)