X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=CMakeLists.txt;h=130073046e856d8648e31f97e98bf20131d07ad1;hb=HEAD;hp=d988ba74e39e46cd9fc751e956e4422e4755ce93;hpb=a212c7275fb6052e882a981534b966c09ecc1d4e;p=gdcm.git diff --git a/CMakeLists.txt b/CMakeLists.txt index d988ba74..13007304 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,14 +1,30 @@ +# --------------------------------- +# +# Unless you are an experimented cmake user, +# have a look at : +# http://www.creatis.insa-lyon.fr/site/fr/CreatoolsGettingStarted-v2.0.X +# before starting. +# +# --------------------------------- + PROJECT(GDCM) CMAKE_MINIMUM_REQUIRED(VERSION 2.0) # okay in fact you need at least cmake 2.0.4 to get swig working properly # and you cannot use cmake 2.0.6 out of the box due to a bug (patched in debian package) + + if(COMMAND cmake_policy) + cmake_policy(SET CMP0003 NEW) + endif(COMMAND cmake_policy) + + + #----------------------------------------------------------------------------- # GDCM version number, usefull for packaging and doxygen doc: SET(GDCM_MAJOR_VERSION 1) SET(GDCM_MINOR_VERSION 3) SET(GDCM_BUILD_VERSION 2) -SET(GDCM_VERSION +SET(GDCM_VERSION "${GDCM_MAJOR_VERSION}.${GDCM_MINOR_VERSION}.${GDCM_BUILD_VERSION}") #----------------------------------------------------------------------------- @@ -17,6 +33,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) @@ -155,6 +177,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 @@ -258,9 +284,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) @@ -274,6 +301,8 @@ IF(GDCM_VTK) IF(VTK_FOUND) #INCLUDE(${VTK_USE_FILE}) SUBDIRS(vtk) + ELSEIF(VTK_FOUND) + message(FATAL_ERROR "VTK not found") ENDIF(VTK_FOUND) ENDIF(GDCM_VTK)