X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=CMakeLists.txt;h=0ce98436f85e1ba4b5f073eec66e71e24aac7838;hb=632ee3795c38faf6ffa11ac0d0248851eb1aa12c;hp=0483454b7e2849da0e21fec201096fa4d17d6002;hpb=757d5fcb925e1e64e5da7ccac647c9fcc18d2a64;p=crea.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 0483454..0ce9843 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,21 +1,59 @@ -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_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) -#SET(USE_BOOST ON) -SET(USE_WXWIDGETS ON) +SET(USE_BOOST ON) + +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}) +IF (WIN32) + SET(CREA_LIB_PATH bin) +ELSE (WIN32) + if( NOT APPLE ) + # check 64 bit + if( ${CMAKE_SIZEOF_VOID_P} EQUAL 4 ) + set( HAVE_64_BIT 0 ) + SET(CREA_LIB_PATH lib) + else( ${CMAKE_SIZEOF_VOID_P}EQUAL 4 ) + set( HAVE_64_BIT 1 ) + SET(CREA_LIB_PATH lib64) + endif( ${CMAKE_SIZEOF_VOID_P} EQUAL 4 ) + endif( NOT APPLE ) +ENDIF(WIN32) + + + MARK_AS_ADVANCED( CMAKE_BACKWARDS_COMPATIBILITY EXECUTABLE_OUTPUT_PATH @@ -23,7 +61,8 @@ MARK_AS_ADVANCED( ) #----------------------------------------------------------------------------- # 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 +70,19 @@ 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_FOR_CMAKE 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_FOR_CMAKE(${LIBRARY_NAME}) -#-----------------------------------------------------------------------------