X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=CMakeLists.txt;h=2e2a1e564e756f5906f199b7eb0d9e10bc87f368;hb=279aed8cb3483318205a8b652e05457a7fc94dec;hp=a3ab0d5c34551ead0c67316de9d4a402a748fcb0;hpb=2943fda916fe14973cda2deddad3fc7dd6fc7d19;p=gdcm.git diff --git a/CMakeLists.txt b/CMakeLists.txt index a3ab0d5c..2e2a1e56 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,7 +5,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 1.8) # GDCM version number, usefull for packaging and doxygen doc: SET(GDCM_VERSION_MAJOR 0) SET(GDCM_VERSION_MINOR 4) -SET(GDCM_VERSION_PATCH 0) +SET(GDCM_VERSION_PATCH 1) SET(GDCM_VERSION "${GDCM_VERSION_MAJOR}.${GDCM_VERSION_MINOR}") SET(GDCM_VERSION_FULL "${GDCM_VERSION}.${GDCM_VERSION_PATCH}") @@ -18,38 +18,27 @@ MARK_AS_ADVANCED(GDCM_DATA_DIR) #----------------------------------------------------------------------------- # Build shared lib by default OPTION(BUILD_SHARED_LIBS "Build GDCM with shared libraries." ON) -SET(GDCM_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS}) -#----------------------------------------------------------------------------- -# Does not work as of 2004/04/05 -#SET(CMAKE_CONFIGURATION_TYPES -# Debug -# Release -#) -#SET(CMAKE_BUILD_TYPE_INIT Debug) +OPTION(GDCM_DEBUG "Turn verbosity of some statement ON." OFF) #----------------------------------------------------------------------------- -# Output directories. -#Put all stuff in one single dir for Win32, otherwise dll are a pain: -#IF(WIN32 AND GDCM_BUILD_SHARED_LIBS) -# SET(OUTPUT_LIB_DIR ${GDCM_SOURCE_DIR}/bin) -#ELSE(WIN32 AND GDCM_BUILD_SHARED_LIBS) -# SET(OUTPUT_LIB_DIR ${GDCM_SOURCE_DIR}/lib) -#ENDIF(WIN32 AND GDCM_BUILD_SHARED_LIBS) - -#SET (EXECUTABLE_OUTPUT_PATH ${GDCM_SOURCE_DIR}/bin CACHE PATH "Single output directory for building all executables.") -#SET (LIBRARY_OUTPUT_PATH ${OUTPUT_LIB_DIR} CACHE PATH "Single output directory for building all libraries.") -#MARK_AS_ADVANCED(LIBRARY_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH) -SET(GDCM_LIBRARY_PATH "${LIBRARY_OUTPUT_PATH}") -SET(GDCM_EXECUTABLE_PATH "${EXECUTABLE_OUTPUT_PATH}") +SET (EXECUTABLE_OUTPUT_PATH ${GDCM_BINARY_DIR}/bin CACHE PATH "Single output directory for building all executables.") +SET (LIBRARY_OUTPUT_PATH ${GDCM_BINARY_DIR}/bin CACHE PATH "Single output directory for building all libraries.") +MARK_AS_ADVANCED(LIBRARY_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH) #----------------------------------------------------------------------------- # Build directory on which many applications depend SUBDIRS( src Dicts - Test ) +#----------------------------------------------------------------------------- +# Example subdir: + +OPTION(BUILD_EXAMPLES "Build GDCM examples." ON) +IF(BUILD_EXAMPLES) + SUBDIRS(Example) +ENDIF(BUILD_EXAMPLES) #----------------------------------------------------------------------------- # Adding GDCM_DATA_ROOT @@ -59,23 +48,10 @@ FIND_PATH(GDCM_DATA_ROOT gdcm-ACR-LibIDO.acr $ENV{PUB_DICT_PATH}/../../gdcmData ) -#----------------------------------------------------------------------------- -# Deals with problem on SunOS: -# ostrstream vs. ostringstream - -#----------------------------------------------------------------------------- -# Why one should not use ADD_DEFINITIONS -# http://www.cmake.org/pipermail/cmake/2003-September/004286.html - -#----------------------------------------------------------------------------- -# __STDC_LIMIT_MACROS -> Refer to stdint.h -# http://www.cmake.org/pipermail/cmake/2003-October/004369.html -# http://www.cmake.org/pipermail/cmake/2003-October/004373.html - -#SET(GDCM_COMPILE_FLAGS "-D__STDC_LIMIT_MACROS -DPUB_DICT_PATH=\\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}\\\"" ) - +# Set the place for the public dictionary, must be set before gdcmConfigure.h SET( GDCM_PUB_DICT_PATH "${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}") +#----------------------------------------------------------------------------- # SunOS + old gcc fixes: INCLUDE (${CMAKE_ROOT}/Modules/CMakeBackwardCompatibilityCXX.cmake) IF(CMAKE_NO_ANSI_STRING_STREAM) @@ -83,11 +59,7 @@ IF(CMAKE_NO_ANSI_STRING_STREAM) ENDIF(CMAKE_NO_ANSI_STRING_STREAM) INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake) -CHECK_INCLUDE_FILE("stdint.h" CMAKE_HAVE_STDINT_H) - -IF(NOT CMAKE_HAVE_STDINT_H) - SET(GDCM_HAVE_NO_STDINT_H 1) -ENDIF(NOT CMAKE_HAVE_STDINT_H) +CHECK_INCLUDE_FILE("stdint.h" CMAKE_HAVE_STDINT_H) CONFIGURE_FILE(${GDCM_SOURCE_DIR}/gdcmConfigure.h.in ${GDCM_BINARY_DIR}/gdcmConfigure.h @ONLY IMMEDIATE) @@ -96,12 +68,13 @@ INSTALL_FILES(/include .h gdcmConfigure.h) #----------------------------------------------------------------------------- # Add the testing directories -OPTION(GDCM_BUILD_TESTING "Test the project" ON) -IF(GDCM_BUILD_TESTING) +OPTION(BUILD_TESTING "Build testing." ON) + +IF(BUILD_TESTING) ENABLE_TESTING() INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake) SUBDIRS(Test) -ENDIF(GDCM_BUILD_TESTING) +ENDIF(BUILD_TESTING) #----------------------------------------------------------------------------- @@ -139,34 +112,3 @@ IF(GDCM_DOXYGEN) ENDIF(DOXYGEN) ENDIF(GDCM_DOXYGEN) -#----------------------------------------------------------------------------- -# Configure files with settings for use by the build. -# for third party to access gdcm through cmake -# to be rewritten to include only the necessary - -CONFIGURE_FILE( - ${GDCM_SOURCE_DIR}/gdcmConfig.cmake.in - ${GDCM_BINARY_DIR}/gdcmConfig.cmake @ONLY IMMEDIATE - ) - -# Export our build settings and library -# dependencies for the use by the user projects. -INCLUDE( - ${CMAKE_ROOT}/Modules/CMakeExportBuildSettings.cmake) - -CMAKE_EXPORT_BUILD_SETTINGS( - ${GDCM_BINARY_DIR}/gdcmBuildSettings.cmake - ) - -EXPORT_LIBRARY_DEPENDENCIES( - ${GDCM_BINARY_DIR}/gdcmLibraryDepends.cmake - ) - -# Intall the packaging files for use by FIND_PACKAGE(GDCM) in user projects. -INSTALL_FILES(/lin/gdcm FILES - ${GDCM_SOURCE_DIR}/gdcmUse.cmake - ${GDCM_BINARY_DIR}/gdcmConfig.cmake - ${GDCM_BINARY_DIR}/gdcmBuildSettings.cmake - ${GDCM_BINARY_DIR}/gdcmLibraryDepends.cmake - ) -