X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=CMakeLists.txt;h=3d6c22befb12d439a1329d67c0393b2b13574983;hb=5071bc6d73c22304b8b139d040a02eb3e1f33407;hp=b677f74b669fbddab11220e03f544dff40ed7cf4;hpb=f93bde21f373d24dea2f63d6c5662a207d58d875;p=gdcm.git diff --git a/CMakeLists.txt b/CMakeLists.txt index b677f74b..3d6c22be 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,8 +7,8 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.0) # GDCM version number, usefull for packaging and doxygen doc: SET(GDCM_MAJOR_VERSION 1) SET(GDCM_MINOR_VERSION 3) -SET(GDCM_BUILD_VERSION 1) -SET(GDCM_VERSION +SET(GDCM_BUILD_VERSION 2) +SET(GDCM_VERSION "${GDCM_MAJOR_VERSION}.${GDCM_MINOR_VERSION}.${GDCM_BUILD_VERSION}") #----------------------------------------------------------------------------- @@ -17,6 +17,12 @@ OPTION(GDCM_LEGACY_REMOVE "Remove all legacy code completely." OFF) OPTION(GDCM_LEGACY_SILENT "Silence all legacy code messages." OFF) MARK_AS_ADVANCED(GDCM_LEGACY_REMOVE GDCM_LEGACY_SILENT) +# VS 2005 declared that some C functions were deprecated... +IF(CMAKE_COMPILER_2005) + ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE) + ADD_DEFINITIONS(-D_SCL_SECURE_NO_DEPRECATE) +ENDIF(CMAKE_COMPILER_2005) + #----------------------------------------------------------------------------- # Build shared lib by default OPTION(BUILD_SHARED_LIBS "Build GDCM with shared libraries." ON) @@ -29,23 +35,27 @@ SET(GDCM_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES}) OPTION(GDCM_DEBUG "Turn verbosity of some statement ON." OFF) MARK_AS_ADVANCED(GDCM_DEBUG) +# -------------------------------------------------------------------------- +SET (GDCM_NAME_SPACE gdcm CACHE STRING "name space") + # -------------------------------------------------------------------------- # Install directories +STRING(TOLOWER ${PROJECT_NAME} project_name) IF(NOT GDCM_INSTALL_BIN_DIR) SET(GDCM_INSTALL_BIN_DIR "/bin") ENDIF(NOT GDCM_INSTALL_BIN_DIR) IF(NOT GDCM_INSTALL_LIB_DIR) - SET(GDCM_INSTALL_LIB_DIR "/lib/${PROJECT_NAME}") + SET(GDCM_INSTALL_LIB_DIR "/lib/${project_name}") ENDIF(NOT GDCM_INSTALL_LIB_DIR) IF(NOT GDCM_INSTALL_DATA_DIR) - SET(GDCM_INSTALL_DATA_DIR "/share/${PROJECT_NAME}") + SET(GDCM_INSTALL_DATA_DIR "/share/${project_name}") ENDIF(NOT GDCM_INSTALL_DATA_DIR) IF(NOT GDCM_INSTALL_INCLUDE_DIR) - SET(GDCM_INSTALL_INCLUDE_DIR "/include/${PROJECT_NAME}") + SET(GDCM_INSTALL_INCLUDE_DIR "/include/${project_name}") ENDIF(NOT GDCM_INSTALL_INCLUDE_DIR) IF(NOT GDCM_INSTALL_PACKAGE_DIR) @@ -81,7 +91,7 @@ ENDIF(GDCM_BUILD_SHARED_LIBS) #----------------------------------------------------------------------------- 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.") +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) @@ -151,6 +161,10 @@ FIND_PATH(GDCM_DATA_ROOT gdcm-ACR-LibIDO.acr $ENV{GDCM_DATA} $ENV{PUB_DICT_PATH}/../../gdcmData ) +# Adding GDCM_DATA_ROOT +FIND_PATH(GDCM_DATA_EXTRA_ROOT gdcmData.tar.gz + ${GDCM_SOURCE_DIR}/../gdcmDataExtra +) # Set the place for the public dictionary, must be set before gdcmConfigure.h FIND_PATH(GDCM_PUB_DICT_PATH dicomV3.dic @@ -237,12 +251,15 @@ ENDIF( ${CMAKE_HAVE_SYS_SOCKET_H} ) #----------------------------------------------------------------------------- # Force Big Endian emulation on little endian: -OPTION(GDCM_FORCE_BIGENDIAN_EMULATION "Force Big Endian Emulation. Do use if you don't know what you are doing." OFF) +OPTION(GDCM_FORCE_BIGENDIAN_EMULATION "Force Big Endian Emulation. Don't use if you don't know what you are doing." OFF) CONFIGURE_FILE(${GDCM_SOURCE_DIR}/gdcmConfigure.h.in - ${GDCM_BINARY_DIR}/gdcmConfigure.h @ONLY IMMEDIATE) + ${GDCM_BINARY_DIR}/gdcmConfigure.h @ONLY IMMEDIATE + ) -INSTALL_FILES(/include/gdcm .h gdcmConfigure.h) +IF(NOT GDCM_INSTALL_NO_DEVELOPMENT) + INSTALL_FILES(${GDCM_INSTALL_INCLUDE_DIR} FILES gdcmConfigure.h) +ENDIF(NOT GDCM_INSTALL_NO_DEVELOPMENT) #----------------------------------------------------------------------------- # Add the testing directories @@ -251,9 +268,10 @@ OPTION(BUILD_TESTING "Build testing." ON) IF(BUILD_TESTING) CONFIGURE_FILE(${GDCM_SOURCE_DIR}/CMake/CTestCustom.ctest.in ${GDCM_BINARY_DIR}/CMake/CTestCustom.ctest @ONLY) + FILE(WRITE ${GDCM_BINARY_DIR}/CTestCustom.cmake + "INCLUDE(\"${GDCM_BINARY_DIR}/CMake/CTestCustom.ctest\")\n") ENABLE_TESTING() - INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake) - MARK_AS_ADVANCED(DART_ROOT) + INCLUDE(CTest) SUBDIRS(Testing) ENDIF(BUILD_TESTING)