X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=CMakeLists.txt;h=653ba844626279901dfeba6ae951d7d5e4c2acc2;hb=983142b7ed7800d7c71935bd2d9a5013a4b5ec72;hp=609d97710e61fe34f199f7608f1c1d0764fb7bbb;hpb=79358c74d60247bf322fc38d38ce7d95a6c41abf;p=crea.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 609d977..653ba84 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,29 +1,60 @@ -PROJECT(CREA) +# --------------------------------- +# +# 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) 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) +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 LIBRARY_OUTPUT_PATH ) + +SET (BOOST_FILESYSTEM_VERSION 2) + #----------------------------------------------------------------------------- # messages compilation options -OPTION ( CREA_COMPILE_DEBUG_MESSAGES "Compile CREA debug messages ?" OFF) + +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,65 +62,18 @@ OPTION ( CREA_COMPILE_WARNING_MESSAGES "Compile CREA warning messages ?" ON) INCLUDE(${CREA_CMAKE_DIR}/CREAResolveOptions.cmake) -SUBDIRS(cmake) -SUBDIRS(src) -SUBDIRS(appli) - INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src) INCLUDE_DIRECTORIES(${PROJECT_BINARY_DIR}/src) +ADD_SUBDIRECTORY(cmake) +ADD_SUBDIRECTORY(src) +ADD_SUBDIRECTORY(appli) #----------------------------------------------------------------------------- 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}) -#-----------------------------------------------------------------------------