1 # ---------------------------------------------------------------------
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
9 # This software is governed by the CeCILL-B license under French law and
10 # abiding by the rules of distribution of free software. You can use,
11 # modify and/ or redistribute the software under the terms of the CeCILL-B
12 # license as circulated by CEA, CNRS and INRIA at the following URL
13 # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
14 # or in the file LICENSE.txt.
16 # As a counterpart to the access to the source code and rights to copy,
17 # modify and redistribute granted by the license, users are provided only
18 # with a limited warranty and the software's author, the holder of the
19 # economic rights, and the successive licensors have only limited
22 # The fact that you are presently reading this means that you have had
23 # knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------
26 # ---------------------------------
28 # Unless you are an experimented cmake user,
30 # http://www.creatis.insa-lyon.fr/site/fr/CreatoosGettingStarted-v2.0.X
33 # ---------------------------------
36 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
38 #MARK_AS_ADVANCED( FORCE CMAKE_BACKWARDS_COMPATIBILITY )
40 # for CMake 2.6 corrected behaviour (see "cmake --help-policy CMP0003")
41 IF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
42 CMAKE_POLICY(SET CMP0003 NEW)
43 CMAKE_POLICY(SET CMP0005 NEW)
44 CMAKE_POLICY(SET CMP0011 NEW)
45 ENDIF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
48 ###################################
50 ###################################
52 #-----------------------------------------------------------------------------
53 # Configure Dart testing support. This should be done before any
54 # MESSAGE(FATAL_ERROR ...) commands are invoked.
60 SET(BUILDNAME "${BUILDNAME}" CACHE STRING "Name of build on the dashboard")
61 MARK_AS_ADVANCED(BUILDNAME)
63 #-----------------------------------------------------------------------------
65 #==================================
67 SET(PROJECT_MAJOR_VERSION 1)
68 SET(PROJECT_MINOR_VERSION 1)
69 SET(PROJECT_BUILD_VERSION 0)
71 SET(PROJECT_VERSION "${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_BUILD_VERSION}")
73 #ADD_DEFINITIONS( -DPROJECT_VERSION=${PROJECT_VERSION} )
74 #ADD_DEFINITIONS( -DPROJECT_VERSION_DATE=${PROJECT_VERSION_DATE} )
76 #==================================
79 set (CMAKE_MODULE_PATH ${CMAKE_INSTALL_PREFIX}/share/cmake/Module)
81 #==================================
82 # Find crea (mandatory, to use macros)
83 SET(CREA_VERBOSE_CMAKE TRUE)
84 FIND_PACKAGE(crea REQUIRED)
86 INCLUDE(${crea_USE_FILE})
88 #==================================
90 #==================================
91 # Do not allow to build inside the source tree
92 CREA_PREVENT_IN_SOURCE_BUILD()
93 #==================================
95 # For boost 1.46 troubles... // JPR.
96 add_definitions(-DBOOST_FILESYSTEM_VERSION=2)
98 #==================================
99 # Libraries/tools used
101 # Note : Set USE_CREA to ON
102 # if you need to LINK against crea
103 # (and not only use its macros)
106 # ----------------- manual setting GDCM/GDCM2 JPR
108 OPTION(USE_GDCM "Use GDCM" ON)
110 OPTION(USE_GDCM2 "Use gdcm 2.0.14 at least" OFF)
112 # No interface for the moment, don't allow to add useless libraries
113 SET(USE_WXWIDGETS OFF CACHE BOOL "Use wxWidgets" FORCE)
114 SET(USE_KWWIDGETS OFF)
120 # Note : Set USE_LATEX to ON, USE_TTH to ON
121 # if you think you will ask, some day,
122 # for doc generation using your own latex documents
126 CREA_FIND_AND_USE_LIBRARIES()
127 #==================================
131 #==================================
132 # Where to put executables and libs
133 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
134 SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR})
136 CMAKE_BACKWARDS_COMPATIBILITY
137 EXECUTABLE_OUTPUT_PATH
141 #==================================
143 SET(LIBNAME $(PROJECT_NAME))
145 ${PROJECT_BINARY_DIR}
147 # // if the previous one is not enough : (JPRx)
148 # Add here the directories holding the .h you need
150 # ${PROJECT_SOURCE_DIR}/lib/_YOUR_OWN_LIBRARY_SOURCE_DIRECTORY_
151 ${PROJECT_SOURCE_DIR}/lib/src1
153 #==================================
156 #----------------------------------------------------------------------------
157 INCLUDE(${PROJECT_SOURCE_DIR}/cmake/UserRootCMakeLists.cmake)
159 #==================================
160 # Where to generate documentation
161 # (desperate try; JPR)
163 SET(BBTK_DOC_BUILD_PATH
164 ${PROJECT_BINARY_DIR}/doc
166 #==================================
169 ADD_SUBDIRECTORY(lib)
170 ADD_SUBDIRECTORY(appli)
171 ADD_SUBDIRECTORY(doc)
172 ADD_SUBDIRECTORY(install)
173 #==================================