]> Creatis software - crea.git/blobdiff - CMakeLists.txt
#3180 crea Feature New Normal Future - Set wx-config for wxWidgets 2.8
[crea.git] / CMakeLists.txt
index dc1f6c0ef8d8ccfb182a5ccbaf28461da39a32ac..c256e1dd57cc6c09da1d6c727c990cf9a4583d53 100644 (file)
-PROJECT(CREA)
+# ---------------------------------------------------------------------
+#
+# 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/site/fr/CreatoosGettingStarted-v2.0.X
+# before starting
+# ---------------------------------
+
+CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
+PROJECT(crea)
+
+#-----------------------------------------------------------------------------
+# 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)
 
 INCLUDE(Version.cmake)
 
+SET(CREA_LIBRARY_PROPERTIES ${CREA_LIBRARY_PROPERTIES}
+  VERSION "${crea_MAJOR_VERSION}.${crea_MINOR_VERSION}.${crea_BUILD_VERSION}"
+  SOVERSION "${crea_MAJOR_VERSION}.${crea_MINOR_VERSION}.${crea_BUILD_VERSION}"
+)
+
+SET(CREA_VERBOSE_CMAKE TRUE)
 SET(CREA_CMAKE_REL_PATH cmake)
 SET(CREA_CMAKE_DIR ${PROJECT_SOURCE_DIR}/${CREA_CMAKE_REL_PATH})
+INCLUDE(${CREA_CMAKE_DIR}/CREACMakeSettings.cmake NO_POLICY_SCOPE)
 INCLUDE(${CREA_CMAKE_DIR}/CREAMacros.cmake)
 
-CREA_PREVENT_IN_SOURCE_BUILD()
 
-SET(USE_VTK ON)
+CREA_PREVENT_IN_SOURCE_BUILD()
 SET(USE_BOOST ON)
-SET(USE_WXWIDGETS ON)
 
-CREA_FIND_AND_USE_LIBRARIES()
+OPTION(CREA_BUILD_VTK "Build crea with vtk ?" OFF)
+IF(CREA_BUILD_VTK)
+  SET(USE_VTK ON)
+  SET(CREA_BUILT_WITH_VTK ON)
+ENDIF(CREA_BUILD_VTK)
 
+OPTION(CREA_BUILD_WX "Build crea with wxWidgets ?" OFF)
+IF(CREA_BUILD_WX)
+  SET(USE_WXWIDGETS ON)
+  SET(CREA_BUILT_WITH_WX ON)
+ENDIF(CREA_BUILD_WX)
+
+# JPR 4 mars 2011
+set (CMAKE_MODULE_PATH ${CMAKE_INSTALL_PREFIX}/share/cmake/Module)
+
+
+CREA_FIND_AND_USE_LIBRARIES()
 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
 SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR})
+SET(CREA_LIB_PATH ${CMAKE_CREA_LIB_PATH} )
+
 MARK_AS_ADVANCED(
   CMAKE_BACKWARDS_COMPATIBILITY
-  EXECUTABLE_OUTPUT_PATH 
+  EXECUTABLE_OUTPUT_PATH
   LIBRARY_OUTPUT_PATH
   )
+  
+SET (BOOST_FILESYSTEM_VERSION 2)
+
 #-----------------------------------------------------------------------------
-# messages compilation options 
-OPTION ( CREA_COMPILE_DEBUG_MESSAGES   "Compile CREA debug messages ?"   OFF)
+# messages compilation options
+
+OPTION ( CREA_COMPILE_DEBUG_MESSAGES   "Compile CREA debug messages ?"   USE_DEBUG_LIB)
 OPTION ( CREA_COMPILE_ERROR_MESSAGES   "Compile CREA error messages ?"   ON)
 OPTION ( CREA_COMPILE_MESSAGES         "Compile CREA messages ?"         ON)
 OPTION ( CREA_COMPILE_WARNING_MESSAGES "Compile CREA warning messages ?" ON)
@@ -31,64 +104,25 @@ OPTION ( CREA_COMPILE_WARNING_MESSAGES "Compile CREA warning messages ?" ON)
 
 INCLUDE(${CREA_CMAKE_DIR}/CREAResolveOptions.cmake)
 
-SUBDIRS(cmake)
-SUBDIRS(src)
-
 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src)
 INCLUDE_DIRECTORIES(${PROJECT_BINARY_DIR}/src)
 
+#JCP UBUNTU
+INCLUDE_DIRECTORIES(/usr/lib/x86_64-linux-gnu/glib-2.0/include/)
+#JCP UBUNTU
+
+
+ADD_SUBDIRECTORY(cmake)
+ADD_SUBDIRECTORY(src)
+ADD_SUBDIRECTORY(data)
+ADD_SUBDIRECTORY(appli)
+ADD_SUBDIRECTORY(lib)
 #-----------------------------------------------------------------------------
 OPTION( BUILD_SAMPLES "Build samples ?" OFF)
 IF(BUILD_SAMPLES)
-  SUBDIRS(samples)
+  ADD_SUBDIRECTORY(samples)
 ENDIF(BUILD_SAMPLES)
 #-----------------------------------------------------------------------------
 
+ADD_SUBDIRECTORY(install)
 
-#-----------------------------------------------------------------------------
-# Code installing the files needed to find the library
-# with the cmake command FIND_PACKAGE
-# Uses CREA_ADVANCED_INSTALL_LIBRARY macro
-#-----------------------------------------------------------------------------
-
-#-----------------------------------------------------------------------------
-# - Set the variable LIBRARY_NAME to the name of your library
-SET(LIBRARY_NAME crea)
-
-SET(${LIBRARY_NAME}_INSTALL_FOLDER crea)
-SET(${LIBRARY_NAME}_LIBRARIES crea)
-
-SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_INCLUDE_PATHS src)
-
-IF(UNIX)
-  SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS 
-    ${EXECUTABLE_OUTPUT_REL_PATH})
-ELSE(UNIX)
-  SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS 
-    ${EXECUTABLE_OUTPUT_REL_PATH}/Debug
-    ${EXECUTABLE_OUTPUT_REL_PATH}/Release)
-ENDIF(UNIX)
-
-SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_INCLUDE_PATHS include/crea)
-SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS lib)
-
-# OPTIONAL 
-# - Set the version of your library
-# SET YOUR LIB VERSION
-#SET(${LIBRARY_NAME}_MAJOR_VERSION 1)
-#SET(${LIBRARY_NAME}_MINOR_VERSION 0)
-#SET(${LIBRARY_NAME}_BUILD_VERSION 0)
-# REQUIRED BUILD FLAGS
-#SET(${LIBRARY_NAME}_REQUIRED_C_FLAGS "")
-#SET(${LIBRARY_NAME}_REQUIRED_CXX_FLAGS "")
-#SET(${LIBRARY_NAME}_REQUIRED_LINK_FLAGS "")
-# ADDITIONAL CONFIG FILE
-SET(${LIBRARY_NAME}_HAS_ADDITIONAL_CONFIG_FILE TRUE)
-SET(${LIBRARY_NAME}_ADDITIONAL_CONFIG_FILE 
-  ${PROJECT_SOURCE_DIR}/AdditionalcreaConfig.cmake.in)
-SET(${LIBRARY_NAME}_ADDITIONAL_USE_FILE 
-  ${PROJECT_SOURCE_DIR}/AdditionalUsecrea.cmake.in)
-
-# Invoke the macro
-CREA_ADVANCED_INSTALL_LIBRARY(${LIBRARY_NAME})
-#-----------------------------------------------------------------------------