X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=CMakeLists.txt;h=f0ed562bcf53352e3006fdac359c121ed98ce537;hb=185f4e4c61631a8e5e256d8999e2d27ba934dcbf;hp=75f52c44af3ac5c5e3af2b0b07c5c7df068f541b;hpb=3b74618a8efd24d3d277c75fda1ddc4b2f104d51;p=clitk.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 75f52c4..f0ed562 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,23 +1,40 @@ #========================================================= # CLITK = Command Line ITK +project(clitk) cmake_minimum_required(VERSION 2.8) cmake_policy(VERSION 2.8) if(COMMAND cmake_policy) cmake_policy(SET CMP0003 NEW) + cmake_policy(SET CMP0007 NEW) endif(COMMAND cmake_policy) -PROJECT(clitk) -SET(CLITK_SOURCE_DIR ${PROJECT_SOURCE_DIR}) +if(NOT DEFINED CLITK_SOURCE_DIR) + set(CLITK_SOURCE_DIR ${PROJECT_SOURCE_DIR}) +endif(NOT DEFINED CLITK_SOURCE_DIR) +# Default build type +IF(NOT CMAKE_BUILD_TYPE) + SET(CMAKE_BUILD_TYPE Release CACHE STRING + "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." + FORCE) +ENDIF(NOT CMAKE_BUILD_TYPE) #========================================================= +set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + +if(MSVC) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj" ) + set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /bigobj" ) +endif(MSVC) + #========================================================= -INCLUDE(cmake/common.cmake) -INCLUDE(cmake/dependencies.cmake) -INCLUDE(cmake/build_opt.cmake) +include(${CLITK_SOURCE_DIR}/cmake/common.cmake) +include(${CLITK_SOURCE_DIR}/cmake/dependencies.cmake) +include(${CLITK_SOURCE_DIR}/cmake/build_opt.cmake) #========================================================= #========================================================= # Select what is compiled -ADD_SUBDIRECTORY(common) -ADD_SUBDIRECTORY(tools) -ADD_SUBDIRECTORY(segmentation) -ADD_SUBDIRECTORY(registration) +add_subdirectory(${CLITK_SOURCE_DIR}/common ${PROJECT_BINARY_DIR}/common) +add_subdirectory(${CLITK_SOURCE_DIR}/tools ${PROJECT_BINARY_DIR}/tools) +add_subdirectory(${CLITK_SOURCE_DIR}/segmentation ${PROJECT_BINARY_DIR}/segmentation) +add_subdirectory(${CLITK_SOURCE_DIR}/registration ${PROJECT_BINARY_DIR}/registration) +add_subdirectory(${CLITK_SOURCE_DIR}/cluster_tools ${PROJECT_BINARY_DIR}/cluster_tools)