source: trunk/Mars/CMakeLists.txt@ 19718

Last change on this file since 19718 was 19715, checked in by tbretz, 5 years ago
Added the possibility to add RootHealPix to the Mars library.
File size: 16.4 KB
Line 
1# *********************************
2# ************ cmake **************
3# *********************************
4CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
5CMAKE_POLICY(SET CMP0043 NEW)
6CMAKE_POLICY(SET CMP0048 NEW)
7
8# Enable debug symbols by default
9# must be done before project() statement
10SET(CMAKE_BUILD_TYPE_INIT Release)
11# (you can also set it on the command line: -D CMAKE_BUILD_TYPE=Release)
12
13# Enable CLANG as default compilers, to change this use
14# cmake -DCMAKE_C_COMPILER=cc -DCMAKE_CXX_COMPILER=c++
15# Note that if compilers are switched on the fly,
16# the cache is deleted
17IF(NOT DEFINED CMAKE_C_COMPILER)
18 FIND_PROGRAM(CMAKE_C_COMPILER NAMES $ENV{CC} clang gcc cc PATHS ENV PATH NO_DEFAULT_PATH DOC "C Compiler")
19ENDIF()
20IF(NOT DEFINED CMAKE_CXX_COMPILER)
21 FIND_PROGRAM(CMAKE_CXX_COMPILER NAMES $ENV{CXX} clang++ g++ c++ PATHS ENV PATH NO_DEFAULT_PATH DOC "C++ Compiler")
22ENDIF()
23
24#SET(CMAKE_VERBOSE_MAKEFILE ON)
25
26# To check for an include file you do this:
27#CHECK_INCLUDE_FILE("stdint.h" HAVE_STDINT_H)
28# To check the size of a primitive type:
29#CHECK_TYPE_SIZE("int" SIZEOF_INT)
30
31
32
33# *********************************
34# ************ Project ************
35# *********************************
36
37STRING(TIMESTAMP VERSION %y.%U.%w.%H UTC)
38
39MESSAGE(STATUS "Mars V${VERSION}")
40
41PROJECT(mars VERSION ${VERSION})
42
43INCLUDE(GNUInstallDirs)
44
45# ======== For config.h.in =========
46SET(PACKAGE_MAINTAINER "Thomas Bretz")
47SET(PACKAGE_BUGREPORT "tbretz@physik.rwth-aachen.de")
48SET(PACKAGE_URL "https://www.fact-project.org")
49
50FIND_PROGRAM(LSB_RELEASE_EXE NAMES lsb_release)
51IF (DEFINED LSB_RELEASE_EXE)
52 EXECUTE_PROCESS(COMMAND ${LSB_RELEASE_EXE} -d OUTPUT_VARIABLE LSB_RELEASE OUTPUT_STRIP_TRAILING_WHITESPACE)
53 MESSAGE(STATUS ${LSB_RELEASE})
54ENDIF()
55
56# *********************************
57# ********* Requirements **********
58# *********************************
59
60# Inlclude the main source AND build dir itself
61#SET(CMAKE_INCLUDE_CURRENT_DIR ON)
62SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
63
64# =========== help2man ============
65FIND_PROGRAM(HELP2MAN_EXECUTABLE help2man)
66
67# =========== pkg-config ============
68FIND_PACKAGE(PkgConfig)
69FIND_PACKAGE(PackageHandleStandardArgs)
70
71
72# ============= libnova ==============
73
74PKG_CHECK_MODULES(Nova QUIET Nova)
75
76# Try to locate the package in the default path
77# and in the path provided by pkg-config
78FIND_PATH(NOVA_INCLUDE_DIR NAMES libnova/libnova.h PATHS ${NOVA_INCLUDE_DIRS})
79FIND_LIBRARY(NOVA_LIBRARY NAMES nova PATHS ${NOVA_LIBRARY_DIRS})
80
81# Check if NOVA_LIBARARY and NOVA_INCLUDE_DIR is set
82# Print a message otherwise
83FIND_PACKAGE_HANDLE_STANDARD_ARGS(Nova DEFAULT_MSG NOVA_LIBRARY NOVA_INCLUDE_DIR)
84
85# Mark those variables to be displayed as 'advanced' in the GUI
86MARK_AS_ADVANCED(NOVA_LIBRARY NOVA_INCLUDE_DIR)
87
88# handle success
89FIND_PACKAGE_MESSAGE(NovaInc "Found Nova headers in ${NOVA_INCLUDE_DIR}" "[${NOVA_LIBRARY}][${NOVA_INCLUDE_DIR}]")
90
91
92# ============== libz ================
93
94FIND_PACKAGE(ZLIB REQUIRED)
95
96# *********************************
97# ********** HEAL Pix **********
98# *********************************
99
100SET(HEALPIX_PREFIX "${CMAKE_SOURCE_DIR}/RootHealPix" CACHE FILEPATH "Base path to the RootHealPix code.")
101
102IF(EXISTS ${HEALPIX_PREFIX})
103 FIND_PACKAGE_MESSAGE(HealPixPrefix "RootHealPix prefix: ${HEALPIX_PREFIX}" "[${HEALPIX_PREFIX}]")
104 SET(FOUND_HEALPIX ON)
105ENDIF()
106
107# ============== ROOT ================
108
109FIND_PROGRAM(ROOTCONFIG_EXECUTABLE NAMES root-config)
110FIND_PACKAGE_HANDLE_STANDARD_ARGS(root-config DEFAULT_MSG ROOTCONFIG_EXECUTABLE)
111IF(NOT ROOTCONFIG_EXECUTABLE)
112 MESSAGE(FATAL_ERROR "Please make sure `root-config` is accessible in your path. In case of an installation from source, you might need to source\n . [path-to-root]/bin/thisroot.sh")
113ENDIF()
114
115# You need to tell CMake where to find the ROOT installation. This can be done in a number of ways:
116# - ROOT built with classic configure/make use the provided $ROOTSYS/etc/cmake/FindROOT.cmake
117# - ROOT built with CMake. Add in CMAKE_PREFIX_PATH the installation prefix for ROOT
118IF(EXISTS $ENV{ROOTSYS}/ROOTConfig.cmake)
119 IF(NOT DEFINED ENV{CMAKE_PREFIX_PATH})
120 LIST(APPEND CMAKE_PREFIX_PATH $ENV{ROOTSYS})
121 ENDIF()
122ENDIF()
123SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "$ENV{ROOTSYS}/etc/cmake")
124
125SET(ROOT_PACKAGES Gui Minuit ASImage HistPainter)
126IF(FOUND_HEALPIX)
127 SET(ROOT_PACKAGES ${ROOT_PACKAGES} FITSIO)
128ENDIF()
129
130#---Locate the ROOT package and defines a number of variables (e.g. ROOT_INCLUDE_DIRS)
131FIND_PACKAGE(ROOT REQUIRED COMPONENTS ${ROOT_PACKAGES})
132
133IF(NOT DEFINED ROOT_CONFIG_EXECUTABLE)
134 FIND_PACKAGE_MESSAGE(RootFound "Found ROOT: ${ROOT_INCLUDE_DIRS} [${ROOT_VERSION}]" "[${ROOT_INCLUDE_DIRS}][${ROOT_LIBRARY_DIR}][${ROOT_VERSION}]")
135ENDIF()
136
137#---Define useful ROOT functions and macros (e.g. ROOT_GENERATE_DICTIONARY)
138IF(DEFINED ROOT_USE_FILE)
139 FIND_PACKAGE_MESSAGE(RootInclude "Setup ROOT: ${ROOT_USE_FILE}" "[${ROOT_USE_FILE}]")
140 INCLUDE(${ROOT_USE_FILE})
141ELSE()
142 FIND_PACKAGE_MESSAGE(RootInclude "Setup ROOT: ${ROOT_VERSION}" "[${ROOT_VERSION}]")
143 # From RootUseFile.cmake (root 6)
144 INCLUDE_DIRECTORIES(${ROOT_INCLUDE_DIRS})
145 LINK_DIRECTORIES(${ROOT_LIBRARY_DIR})
146 ADD_DEFINITIONS(${ROOT_DEFINITIONS})
147 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ROOT_CXX_FLAGS}")
148 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ROOT_C_FLAGS}")
149 SET(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} ${ROOT_fortran_FLAGS}")
150ENDIF()
151
152# -lGui -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree
153# -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread
154# -lASImage -lMinuit -lHistPainter -lThread
155
156#MESSAGE("INCL_DIRS: ${ROOT_INCLUDE_DIRS}")
157#MESSAGE("LIBS: ${ROOT_LIBRARIES}")
158#MESSAGE("DEFS: ${ROOT_DEFINITIONS}")
159#MESSAGE("CXXFLAGS: ${ROOT_CXX_FLAGS}")
160#MESSAGE("CXFLAGS: ${ROOT_CC_FLAGS}")
161#MESSAGE("FOUND: ${ROOT_FOUND}")
162#MESSAGE("FILE: ${ROOT_USE_FILE}")
163#MESSAGE("DIR: ${CMAKE_CURRENT_SOURCE_DIR}")
164#ROOT_<library>_LIBRARY PATH Full path for each of the ROOT libraries listed in COMPONENTS
165#ROOT_<command>_CMD PATH Full path for each ROOT executable (rootcling, root, hadd, etc.)
166#ROOT_<option>_FOUND BOOL True for each enabled build option (e.g. cocoa, python, xrootd, etc.)
167
168# function ROOT_GENERATE_DICTIONARY( dictionary
169# header1 header2 ...
170# LINKDEF linkdef1 ...
171# OPTIONS opt1...)
172
173# *********************************
174# ********** Observatory **********
175# *********************************
176
177SET(OBSERVATORY "ORM" CACHE STRING "Select the observatory location (ORM, HAWC, SPM, RWTH: see nova.h)")
178
179IF(NOT OBSERVATORY STREQUAL "ORM" AND
180 NOT OBSERVATORY STREQUAL "HAWC" AND
181 NOT OBSERVATORY STREQUAL "SPM" AND
182 NOT OBSERVATORY STREQUAL "RWTH")
183 MESSAGE(FATAL_ERROR "OBSERVATORY=${OBSERVATORY} invalid. Only ORM, HAWC, SPM and RWTH allowd!")
184ENDIF()
185
186FIND_PACKAGE_MESSAGE(PresetObservatory "Preset Observatory: ${OBSERVATORY}" "[${OBSERVATORY}]")
187
188
189# *********************************
190# *********** Compiler ************
191# *********************************
192
193SET(CMAKE_CXX_STANDARD 11)
194SET(CMAKE_CXX_FLAGS
195 "${CMAKE_CXX_FLAGS} -Wall -Winit-self -Wpointer-arith \
196 -Wcast-align -Wformat -Woverloaded-virtual \
197 -Wnon-virtual-dtor -Wshadow -fPIC") # -Wextra
198
199SET(CMAKE_CXX_FLAGS
200 "${CMAKE_CXX_FLAGS} \
201 -DMARSVER=\\\"1.0\\\" -D_REENTRANT -D__MARS__ -D__LINUX__ \
202 -DPACKAGE_VERSION=\\\"1.0\\\" -DREVISION=\\\"1.0\\\" \
203 -DPACKAGE_NAME=\\\"MARS\\\" -DHAVE_ZLIB")
204
205CONFIGURE_FILE("${PROJECT_SOURCE_DIR}/cmake/root.rc.in" "${PROJECT_BINARY_DIR}/.rootrc")
206CONFIGURE_FILE("${PROJECT_SOURCE_DIR}/cmake/rootlogon.C.in" "${PROJECT_BINARY_DIR}/rootlogon.C")
207CONFIGURE_FILE("${PROJECT_SOURCE_DIR}/cmake/dohtml.C.in" "${PROJECT_BINARY_DIR}/dohtml.C")
208
209# -------------------------------------------------------
210
211FILE(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/dictionary)
212
213MACRO(SRCFILES subdir)
214
215 MESSAGE(STATUS "Reading source list from ${DIR}/Makefile")
216
217 EXECUTE_PROCESS(COMMAND
218 ${PROJECT_SOURCE_DIR}/Makefile.extract.sh ${subdir}
219 WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/${subdir}
220 OUTPUT_VARIABLE _HEADERS)
221
222 SEPARATE_ARGUMENTS(_HEADERS)
223
224 LIST(GET _HEADERS 0 _CINT)
225 LIST(REMOVE_AT _HEADERS 0)
226
227 SET(_SRCLIST ${_HEADERS})
228
229 STRING(REPLACE "${subdir}/" " " _HEADERS ${_HEADERS}) # Remove directory
230 STRING(REPLACE ".cc" ".h" _HEADERS ${_HEADERS}) # change extension
231 STRING(REPLACE ".cxx" ".hxx" _HEADERS ${_HEADERS}) # special for files in mmc
232
233 SEPARATE_ARGUMENTS(_HEADERS)
234
235 # - This adds the rule how the dictionary is created
236 ROOT_GENERATE_DICTIONARY(dictionary/${_CINT} ${_HEADERS} ${_CINT}Incl.h LINKDEF ${subdir}/${_CINT}LinkDef.h OPTIONS -p -D__MARS__ -DHAVE_ZLIB)
237 # - This makes sure that it is compiled
238 TARGET_SOURCES(mars PRIVATE dictionary/${_CINT}.cxx ${_SRCLIST})
239 SET_SOURCE_FILES_PROPERTIES(dictionary/${_CINT}.cxx PROPERTIES COMPILE_FLAGS "-Wno-deprecated-register")
240
241 INSTALL(DIRECTORY ${subdir}/ DESTINATION "include" FILES_MATCHING PATTERN "*.h")
242
243ENDMACRO()
244
245# -------------------------------------------------------
246
247#SET(DIRECTORIES mmc)
248
249SET(DIRECTORIES
250 manalysis
251 mastro
252 mbadpixels
253 mbase
254 mcalib
255 mcamera
256 mcorsika
257 mdata
258 mdrs
259 melectronics
260 mextralgo
261 mfbase
262 mfileio
263 mfilter
264 mgeom
265 mgui
266 mhbase
267 mhcalib
268 mhflux
269 mhft
270 mhist
271 mhvstime
272 mimage
273 mjobs
274 mjoptim
275 mjtrain
276 mmain
277 mmc
278 mmovie
279 mmuon
280 mpedestal
281 mpointing
282 mranforest
283 mraw
284 mreport
285 msignal
286 msim
287 msimcamera
288 msimreflector
289 msql
290 mtools
291 mtrigger
292)
293
294INCLUDE_DIRECTORIES(${DIRECTORIES} mcore .)
295
296ROOT_GENERATE_DICTIONARY(dictionary/Core
297 mcore/factofits.h
298 mcore/factfits.h
299 mcore/DrsCalib.h
300 mcore/PixelMap.h
301 mcore/Interpolator2D.h
302 mcore/nova.h
303 mcore/Prediction.h
304 MIncl.h
305 LINKDEF MLinkDef.h
306 OPTIONS -p -D__MARS__ -DHAVE_ZLIB)
307
308ADD_LIBRARY(mars SHARED dictionary/Core.cxx) # CMAKE_POSITION_INDEPENDENT_CODE
309SET_SOURCE_FILES_PROPERTIES(dictionary/Core.cxx PROPERTIES COMPILE_FLAGS "-Wno-deprecated-register")
310
311TARGET_LINK_LIBRARIES(mars
312 ZLIB::ZLIB
313 ${NOVA_LIBRARY}
314 ${ROOT_LIBRARIES})
315
316ADD_EXECUTABLE(showplot showplot.cc)
317ADD_EXECUTABLE(showlog showplot.cc)
318ADD_EXECUTABLE(ceres ceres.cc)
319TARGET_LINK_LIBRARIES(showplot mars ${ROOT_LIBRARIES})
320TARGET_LINK_LIBRARIES(showlog mars ${ROOT_LIBRARIES})
321TARGET_LINK_LIBRARIES(ceres mars ${ROOT_LIBRARIES})
322
323
324FOREACH(DIR ${DIRECTORIES})
325 SRCFILES(${DIR})
326ENDFOREACH()
327
328# -------------------------------------------------------
329
330IF(FOUND_HEALPIX)
331 # https://github.com/akira-okumura/RootHealPix.git
332 # THealPixD de("name", "", 2); for (int i=0; i<100; i++) de.Fill(gRandom->Uniform()*90, gRandom->Uniform()*180); de.Draw("COLZ");
333
334 # INCLUDE_DIRECTORIES(${HEALPIX_PREFIX}/include)
335 # - The first one is required to make ROOT_GENERATE_DICTIONARY
336 # find absolute paths. The second one is required for
337 # compilation. Note that any later ROOT_GENERALE_DICTIONARY
338 # might find the LinkDef.h in RootHealPix/include
339 INCLUDE_DIRECTORIES(/ ${HEALPIX_PREFIX}/include)
340
341 ROOT_GENERATE_DICTIONARY(dictionary/HealPix
342 ${HEALPIX_PREFIX}/include/Healoption.h
343 ${HEALPIX_PREFIX}/include/THealAlm.h
344 ${HEALPIX_PREFIX}/include/THealFFT.h
345 ${HEALPIX_PREFIX}/include/THealPainter.h
346 ${HEALPIX_PREFIX}/include/THealPaletteAxis.h
347 ${HEALPIX_PREFIX}/include/THealPixCube.h
348 ${HEALPIX_PREFIX}/include/THealPix.h
349 ${HEALPIX_PREFIX}/include/THealUtil.h
350 ${HEALPIX_PREFIX}/include/TVirtualHealPainter.h
351 LINKDEF ${HEALPIX_PREFIX}/include/LinkDef.h OPTIONS -p)
352
353 # - Define the source files of the library
354 ADD_LIBRARY(RootHealPix SHARED dictionary/HealPix.cxx
355 ${HEALPIX_PREFIX}/src/THealAlm.cxx
356 ${HEALPIX_PREFIX}/src/THealFFT.cxx
357 ${HEALPIX_PREFIX}/src/THealPainter.cxx
358 ${HEALPIX_PREFIX}/src/THealPaletteAxis.cxx
359 ${HEALPIX_PREFIX}/src/THealPixCube.cxx
360 ${HEALPIX_PREFIX}/src/THealPix.cxx
361 ${HEALPIX_PREFIX}/src/THealUtil.cxx
362 ${HEALPIX_PREFIX}/src/TVirtualHealPainter.cxx)
363
364 # - Tweak some warnings
365 SET_TARGET_PROPERTIES(RootHealPix PROPERTIES COMPILE_FLAGS
366 "-Wno-unused-variable -Wno-unused-function -Wno-unneeded-internal-declaration -Wno-shadow")
367
368 # - Link with the root libraries for auto-loading
369 TARGET_LINK_LIBRARIES(mars RootHealPix)
370
371 # - Install the corresponding header files
372 INSTALL(DIRECTORY ${HEALPIX_PREFIX}/include/ DESTINATION "include" FILES_MATCHING PATTERN "*.h")
373
374 # - Install the library
375 INSTALL(TARGETS RootHealPix DESTINATION ".")
376ENDIF()
377
378
379# rootlogon.C finds the shared object only if the libmars.so is in the same directory than the dictionary files
380# there is a way to create a map file with rootcling - but I haven#t yet fugured out how. Note that a link is not enough
381#ADD_CUSTOM_COMMAND(TARGET mars POST_BUILD
382# COMMAND cp -f ${PROJECT_BINARY_DIR}/libmars.so ${PROJECT_BINARY_DIR}/dictionary/libmars.so
383# COMMENT "Copying libmars.so to ${PROJECT_BINARY_DIR}/dictionary")
384
385#---Create a shared library with geneated dictionary
386#ADD_LIBRARY(Event SHARED Event.cxx G__Event.cxx)
387#TARGET_LINK_LIBRARIES(Event ${ROOT_LIBRARIES})
388
389#---Create a main program using the library
390#ADD_EXECUTABLE(Main MainEvent.cxx)
391#TARGET_LINK_LIBRARIES(Main Event)
392
393
394# *********************************
395# ************ Packaging **********
396# *********************************
397
398#SET(PKG_SHARE "${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}")
399#SET(PKG_APPS "${CMAKE_INSTALL_DATAROOTDIR}/applications")
400#SET(PKG_PIXMAPS "${CMAKE_INSTALL_DATAROOTDIR}/pixmaps")
401
402# ====== Installation targets =====
403
404#INSTALL(TARGETS mars DESTINATION "${CMAKE_INSTALL_BINDIR}")
405INSTALL(TARGETS mars DESTINATION ".")
406INSTALL(TARGETS showplot DESTINATION ".")
407INSTALL(TARGETS showlog DESTINATION ".")
408INSTALL(TARGETS ceres DESTINATION ".")
409INSTALL(FILES .rootrc DESTINATION ".")
410INSTALL(DIRECTORY lib DESTINATION ".")
411INSTALL(DIRECTORY macros DESTINATION "." FILES_MATCHING PATTERN "*.C")
412INSTALL(DIRECTORY fact DESTINATION "." FILES_MATCHING PATTERN "*.C")
413INSTALL(DIRECTORY datacenter DESTINATION ".")
414INSTALL(DIRECTORY scripts DESTINATION ".")
415INSTALL(DIRECTORY resources DESTINATION "." FILES_MATCHING PATTERN "*.rc" PATTERN "*.txt")
416INSTALL(DIRECTORY resmc DESTINATION "." FILES_MATCHING PATTERN "*" )
417INSTALL(DIRECTORY mcore/ DESTINATION "include" FILES_MATCHING PATTERN "*.h")
418
419
420# ======== General packaging ======
421# https://cmake.org/cmake/help/latest/module/CPack.html
422
423INCLUDE(InstallRequiredSystemLibraries)
424
425# SET(CPACK_STRIP_FILES ON) # Strip debug sysmbold from files
426
427SET(CPACK_PACKAGE_VERSION "${mars_VERSION}")
428SET(CPACK_PACKAGE_CONTACT "${PACKAGE_BUGREPORT}")
429SET(CPACK_PACKAGE_MAINTAINER "${PACKAGE_MAINTAINER}")
430#SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING")
431#SET(CPACK_PACKAGE_VENDOR "Me, myself, and I")
432
433
434SET(CPACK_SOURCE_IGNORE_FILES "/old/;/build/;/[.].*/;/autom4te[.]cache/;.*~;.log$")
435
436# Maybe the text displayed in synaptic?
437#SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README")
438SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "MARS - Environment")
439#CPACK_RESOURCE_FILE_README ReadMe file to be embedded in the installer.
440
441SET(CPACK_GENERATOR TBZ2) # TGZ DEB
442#SET(CPACK_SOURCE_GENERATOR TBZ2) # TGZ
443#SET(CPACK_PROJECT_CONFIG_FILE ${CMAKE_SOURCE_DIR}/cmake/Package.txt)
444#SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/Copyright.txt")
445
446
447# ======== Debian packaging =======
448# https://cmake.org/cmake/help/latest/module/CPackDeb.html
449# https://www.debian.org/doc/debian-policy
450
451#SET(CPACK_DEBIAN_PACKAGE_DEPENDS "libao4 (>=1.0), libsfm-system2.3v5 (>=2.3), libsfml-graphicsv2.3v5 (>=2.3), libsfml-audio2.3v5 (>=2.3), libsfm-window2.3v5 (>2.3)")
452SET(CPACK_DEBIAN_PACKAGE_SHLIBDEPS 1) # generate better (atomatic?) dependecies
453SET(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS_POLICY ">=")
454SET(CPACK_DEBIAN_PACKAGE_CONTROL_STRICT_PERMISSION TRUE)
455SET(CPACK_DEBIAN_PACKAGE_SECTION utils)
456SET(CPACK_DEBIAN_PACKAGE_HOMEPAGE "${PACKAGE_URL}")
457SET(CPACK_DEBIAN_PACKAGE_DESCRIPTION
458"${CPACK_PACKAGE_DESCRIPTION_SUMMARY}
459 This package contains the MARS Analysis Environment.")
460#indent the long description with spaces
461
462#CPACK_INSTALL_CMAKE_PROJECTS
463#List of four values that specify what project to install. Build directory, Project Name, Project Component, Directory.
464
465INCLUDE(CPack)
Note: See TracBrowser for help on using the repository browser.