X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=CMakeLists.txt;h=76dee9d0d189abe4cfd10395cd83c715da3c1318;hb=d7878f9e91fb5f2fb16b1669435791a07ab3dd6d;hp=89954c7e842c9acc8e357e815e9c58deeeca2594;hpb=8f2fc8236f01d70abd3e4abe4152ea7985ab5b79;p=creaBruker.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 89954c7..76dee9d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,22 +1,71 @@ +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Santé) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ + # --------------------------------- # # Unless you are an experimented cmake user, # have a look at : -# http://www.creatis.insa-lyon.fr/creatools/GettingStarted_creaTools +# http://www.creatis.insa-lyon.fr/site/fr/CreatoosGettingStarted-v2.0.X # before starting. # # --------------------------------- +# Test CMake version CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +#MARK_AS_ADVANCED( FORCE CMAKE_BACKWARDS_COMPATIBILITY ) + +# for CMake 2.6 corrected behaviour (see "cmake --help-policy CMP0003") +IF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4) + CMAKE_POLICY(SET CMP0003 NEW) + CMAKE_POLICY(SET CMP0005 NEW) + CMAKE_POLICY(SET CMP0011 NEW) +ENDIF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4) + + ################################### PROJECT(creaBruker) ################################### +#----------------------------------------------------------------------------- +# Configure Dart testing support. This should be done before any +# MESSAGE(FATAL_ERROR ...) commands are invoked. +IF(INCLUDE_CTEST) + INCLUDE(CTest) + ENABLE_TESTING() +ENDIF(INCLUDE_CTEST) +IF(BUILD_TESTING) + SET(BUILDNAME "${BUILDNAME}" CACHE STRING "Name of build on the dashboard") + MARK_AS_ADVANCED(BUILDNAME) +ENDIF(BUILD_TESTING) +#----------------------------------------------------------------------------- + #================================== # The project version SET(PROJECT_MAJOR_VERSION 1) -SET(PROJECT_MINOR_VERSION 0) +SET(PROJECT_MINOR_VERSION 1) SET(PROJECT_BUILD_VERSION 0) SET(PROJECT_VERSION "${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_BUILD_VERSION}") @@ -26,6 +75,9 @@ SET(PROJECT_VERSION "${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT #================================== +# JPR 4 mars 2011 +set (CMAKE_MODULE_PATH ${CMAKE_INSTALL_PREFIX}/share/cmake/Module) + #================================== # Find crea (mandatory, to use macros) SET(CREA_VERBOSE_CMAKE TRUE) @@ -40,6 +92,9 @@ ENDIF(crea_FOUND) CREA_PREVENT_IN_SOURCE_BUILD() #================================== +# For boost 1.46 troubles... // JPR. +add_definitions(-DBOOST_FILESYSTEM_VERSION=2) + #================================== # Libraries/tools used @@ -47,19 +102,20 @@ CREA_PREVENT_IN_SOURCE_BUILD() # if you need to LINK against crea # (and not only use its macros) SET(USE_CREA ON) -SET(USE_GDCM ON) +# +# ----------------- manual setting GDCM/GDCM2 JPR +# +OPTION(USE_GDCM "Use GDCM" ON) SET(USE_GDCM_VTK ON) -SET(USE_GDCM2 OFF) -SET(USE_WXWIDGETS OFF) +OPTION(USE_GDCM2 "Use gdcm 2.0.14 at least" OFF) + +# No interface for the moment, don't allow to add useless libraries +SET(USE_WXWIDGETS OFF CACHE BOOL "Use wxWidgets" FORCE) SET(USE_KWWIDGETS OFF) SET(USE_VTK OFF) SET(USE_ITK OFF) SET(USE_BOOST ON) -# Note : Set USE_DOXYGEN to ON -# if you think you will ask, some day, -# for Doxygen generation -SET(USE_DOXYGEN ON) # Note : Set USE_LATEX to ON, USE_TTH to ON # if you think you will ask, some day, @@ -70,6 +126,8 @@ SET(USE_TTH OFF) CREA_FIND_AND_USE_LIBRARIES() #================================== + + #================================== # Where to put executables and libs SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}) @@ -106,11 +164,10 @@ SET(BBTK_DOC_BUILD_PATH ${PROJECT_BINARY_DIR}/doc ) #================================== - # Subdirs -SUBDIRS(lib) -SUBDIRS(appli) -SUBDIRS(doc) -SUBDIRS(install) +ADD_SUBDIRECTORY(lib) +ADD_SUBDIRECTORY(appli) +ADD_SUBDIRECTORY(doc) +ADD_SUBDIRECTORY(install) #==================================