diff --git a/CMake/PackageDepends/MITK_DCMTK_Config.cmake b/CMake/PackageDepends/MITK_DCMTK_Config.cmake index f06720f125..4a29a52ff1 100644 --- a/CMake/PackageDepends/MITK_DCMTK_Config.cmake +++ b/CMake/PackageDepends/MITK_DCMTK_Config.cmake @@ -1,8 +1,10 @@ if( NOT WIN32 AND NOT APPLE ) set(MISSING_LIBS_REQUIRED_BY_DCMTK wrap tiff z) endif( NOT WIN32 AND NOT APPLE ) set(QT_USE_QTSQL 1) -list(APPEND ALL_INCLUDE_DIRECTORIES ${DCMTK_INCLUDE_DIR}) +find_package(DCMTK) + +list(APPEND ALL_INCLUDE_DIRECTORIES ${DCMTK_INCLUDE_DIRS}) list(APPEND ALL_LIBRARIES ${DCMTK_LIBRARIES} ${MISSING_LIBS_REQUIRED_BY_DCMTK}) diff --git a/CMakeExternals/DCMTK.cmake b/CMakeExternals/DCMTK.cmake index 8b112c501b..19708fa5a3 100644 --- a/CMakeExternals/DCMTK.cmake +++ b/CMakeExternals/DCMTK.cmake @@ -1,62 +1,62 @@ #----------------------------------------------------------------------------- # DCMTK #----------------------------------------------------------------------------- if(MITK_USE_DCMTK) # Sanity checks if(DEFINED DCMTK_DIR AND NOT EXISTS ${DCMTK_DIR}) message(FATAL_ERROR "DCMTK_DIR variable is defined but corresponds to non-existing directory") endif() set(proj DCMTK) set(proj_DEPENDENCIES ) set(DCMTK_DEPENDS ${proj}) if(NOT DEFINED DCMTK_DIR) if(DCMTK_DICOM_ROOT_ID) set(DCMTK_CXX_FLAGS "${DCMTK_CXX_FLAGS} -DSITE_UID_ROOT=\\\"${DCMTK_DICOM_ROOT_ID}\\\"") set(DCMTK_C_FLAGS "${DCMTK_CXX_FLAGS} -DSITE_UID_ROOT=\\\"${DCMTK_DICOM_ROOT_ID}\\\"") endif() set(additional_args ) if(CTEST_USE_LAUNCHERS) list(APPEND additional_args "-DCMAKE_PROJECT_${proj}_INCLUDE:FILEPATH=${CMAKE_ROOT}/Modules/CTestUseLaunchers.cmake" ) endif() ExternalProject_Add(${proj} LIST_SEPARATOR ${sep} - URL ${MITK_THIRDPARTY_DOWNLOAD_PREFIX_URL}/dcmtk-3.6.1_20161102.tar.gz - URL_MD5 682e12cf52c405e79724be614545709f - PATCH_COMMAND ${PATCH_COMMAND} -N -p1 -i ${CMAKE_CURRENT_LIST_DIR}/DCMTK.patch + URL ${MITK_THIRDPARY_DOWNLOAD_PREFIX_URL}/dcmtk-3.6.2.tar.gz + URL_MD5 d219a4152772985191c9b89d75302d12 CMAKE_GENERATOR ${gen} CMAKE_ARGS ${ep_common_args} ${additional_args} "-DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS} ${DCMTK_CXX_FLAGS}" "-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS} ${DCMTK_C_FLAGS}" - -DDCMTK_USE_CXX11_STL:BOOL=OFF + -DDCMTK_ENABLE_CXX11:BOOL=ON + -DDCMTK_ENABLE_STL:BOOL=ON -DDCMTK_WITH_DOXYGEN:BOOL=OFF -DDCMTK_WITH_ZLIB:BOOL=OFF # see bug #9894 -DDCMTK_WITH_OPENSSL:BOOL=OFF # see bug #9894 -DDCMTK_WITH_PNG:BOOL=OFF # see bug #9894 -DDCMTK_WITH_TIFF:BOOL=OFF # see bug #9894 -DDCMTK_WITH_XML:BOOL=OFF # see bug #9894 -DDCMTK_WITH_ICONV:BOOL=OFF # see bug #9894 CMAKE_CACHE_ARGS ${ep_common_cache_args} CMAKE_CACHE_DEFAULT_ARGS ${ep_common_cache_default_args} DEPENDS ${proj_DEPENDENCIES} ) set(DCMTK_DIR ${ep_prefix}) mitkFunctionInstallExternalCMakeProject(${proj}) else() mitkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}") endif() endif() diff --git a/CMakeExternals/DCMTK.patch b/CMakeExternals/DCMTK.patch deleted file mode 100644 index ea14821a6e..0000000000 --- a/CMakeExternals/DCMTK.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff --git a/CMake/GenerateDCMTKConfigure.cmake b/CMake/GenerateDCMTKConfigure.cmake -index c936b4d..d82781b 100644 ---- a/CMake/GenerateDCMTKConfigure.cmake -+++ b/CMake/GenerateDCMTKConfigure.cmake -@@ -548,6 +548,30 @@ ENDIF(DCMTK_WITH_OPENSSL) - INCLUDE(${DCMTK_CMAKE_INCLUDE}CMake/dcmtkTryCompile.cmake) - INCLUDE(${DCMTK_CMAKE_INCLUDE}CMake/dcmtkTryRun.cmake) - -+IF(NOT HAVE_PROTOTYPE_STD__ISINF) -+ unset(HAVE_PROTOTYPE_STD__ISINF CACHE) -+ DCMTK_TRY_COMPILE(HAVE_PROTOTYPE_STD__ISINF "std::isinf is provided as function template" -+ "#include -+ -+ int main() -+ { -+ std::isinf(0.0); -+ return 0; -+ }") -+ENDIF(NOT HAVE_PROTOTYPE_STD__ISINF) -+ -+IF(NOT HAVE_PROTOTYPE_STD__ISNAN) -+ unset(HAVE_PROTOTYPE_STD__ISNAN CACHE) -+ DCMTK_TRY_COMPILE(HAVE_PROTOTYPE_STD__ISNAN "std::isnan is provided as function template" -+ "#include -+ -+ int main() -+ { -+ std::isnan(0.0); -+ return 0; -+ }") -+ENDIF(NOT HAVE_PROTOTYPE_STD__ISNAN) -+ - IF(NOT DEFINED C_CHAR_UNSIGNED) - MESSAGE(STATUS "Checking signedness of char") - DCMTK_TRY_RUN(C_CHAR_SIGNED C_CHAR_SIGNED_COMPILED ${CMAKE_BINARY_DIR}/CMakeTmp/Char - -diff --git a/DCMTKConfig.cmake.in b/DCMTKConfig.cmake.in -index 89188d2..b77a856 100644 ---- a/CMake/DCMTKConfig.cmake.in -+++ b/CMake/DCMTKConfig.cmake.in -@@ -33,8 +33,15 @@ SET(DCMTK_OVERWRITE_WIN32_COMPILER_FLAGS @DCMTK_OVERWRITE_WIN32_COMPILER_FLAGS@) - SET(DCMTK_WIDE_CHAR_FILE_IO_FUNCTIONS @DCMTK_WIDE_CHAR_FILE_IO_FUNCTIONS@) - SET(DCMTK_WIDE_CHAR_MAIN_FUNCTION @DCMTK_WIDE_CHAR_MAIN_FUNCTION@) - -+@DCMTK_INCLUDE_DIR_CONFIGS@ -+ - SET_AND_CHECK(DCMTK_TARGETS "@PACKAGE_DCMTK_CMKDIR_CONFIG@/DCMTKTargets.cmake") - -+SET(DCMTK_INCLUDE_DIRS "") -+FOREACH(module config ${DCMTK_MODULES}) -+ LIST(APPEND DCMTK_INCLUDE_DIRS ${DCMTK_${module}_INCLUDE_DIR}) -+ENDFOREACH(module) -+ - @DCMTK_CONFIG_CODE@ - - # Compatibility: This variable is deprecated