Page MenuHomePhabricator
Authored By
weihs
Nov 18 2016, 3:06 PM
Size
13 KB
Referenced Files
None
Subscribers
None

ep.patch

diff --git a/CMake/FindDCMTK.cmake b/CMake/FindDCMTK.cmake
deleted file mode 100644
index ccdd2ce..0000000
--- a/CMake/FindDCMTK.cmake
+++ /dev/null
@@ -1,186 +0,0 @@
-# adapted version of FindDCMTK, better suited for super-builds
-
-# - find DCMTK libraries and applications
-#
-
-# DCMTK_INCLUDE_DIRS - Directories to include to use DCMTK
-# DCMTK_LIBRARIES - Files to link against to use DCMTK
-# DCMTK_FOUND - If false, don't try to use DCMTK
-# DCMTK_DIR - (optional) Source directory for DCMTK
-#
-# DCMTK_DIR can be used to make it simpler to find the various include
-# directories and compiled libraries if you've just compiled it in the
-# source tree. Just set it to the root of the tree where you extracted
-# the source (default to /usr/include/dcmtk/)
-
-#=============================================================================
-# Copyright 2004-2009 Kitware, Inc.
-# Copyright 2009-2010 Mathieu Malaterre <mathieu.malaterre@gmail.com>
-# Copyright 2010 Thomas Sondergaard <ts@medical-insight.com>
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distributed this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-#
-# Written for VXL by Amitha Perera.
-# Upgraded for GDCM by Mathieu Malaterre.
-# Modified for EasyViz by Thomas Sondergaard.
-#
-
-# prefer DCMTK_DIR over default system paths like /usr/lib
-set(CMAKE_PREFIX_PATH ${DCMTK_DIR}/lib ${CMAKE_PREFIX_PATH}) # this is given to FIND_LIBRARY or FIND_PATH
-
-if(NOT DCMTK_FOUND AND NOT DCMTK_DIR)
- set(DCMTK_DIR
- "/usr/include/dcmtk/"
- CACHE
- PATH
- "Root of DCMTK source tree (optional).")
- mark_as_advanced(DCMTK_DIR)
-endif()
-
-# Find all libraries, store debug and release separately
-foreach(lib
- dcmpstat
- dcmsr
- dcmsign
- dcmtls
- dcmqrdb
- dcmnet
- dcmjpeg
- dcmimage
- dcmimgle
- dcmdata
- dcmrt
- oflog
- ofstd
- ijg12
- ijg16
- ijg8
- )
-
- # Find Release libraries
- find_library(DCMTK_${lib}_LIBRARY_RELEASE
- ${lib}
- PATHS
- ${DCMTK_DIR}/${lib}/libsrc
- ${DCMTK_DIR}/${lib}/libsrc/Release
- ${DCMTK_DIR}/${lib}/Release
- ${DCMTK_DIR}/lib
- ${DCMTK_DIR}/lib/Release
- ${DCMTK_DIR}/dcmjpeg/lib${lib}/Release
- NO_DEFAULT_PATH
- )
-
- # Find Debug libraries
- find_library(DCMTK_${lib}_LIBRARY_DEBUG
- ${lib}${DCMTK_CMAKE_DEBUG_POSTFIX}
- PATHS
- ${DCMTK_DIR}/${lib}/libsrc
- ${DCMTK_DIR}/${lib}/libsrc/Debug
- ${DCMTK_DIR}/${lib}/Debug
- ${DCMTK_DIR}/lib
- ${DCMTK_DIR}/lib/Debug
- ${DCMTK_DIR}/dcmjpeg/lib${lib}/Debug
- NO_DEFAULT_PATH
- )
-
- mark_as_advanced(DCMTK_${lib}_LIBRARY_RELEASE)
- mark_as_advanced(DCMTK_${lib}_LIBRARY_DEBUG)
-
- # Add libraries to variable according to build type
- set(DCMTK_${lib}_LIBRARY)
- if(DCMTK_${lib}_LIBRARY_RELEASE)
- list(APPEND DCMTK_LIBRARIES optimized ${DCMTK_${lib}_LIBRARY_RELEASE})
- list(APPEND DCMTK_${lib}_LIBRARY optimized ${DCMTK_${lib}_LIBRARY_RELEASE})
- endif()
-
- if(DCMTK_${lib}_LIBRARY_DEBUG)
- list(APPEND DCMTK_LIBRARIES debug ${DCMTK_${lib}_LIBRARY_DEBUG})
- list(APPEND DCMTK_${lib}_LIBRARY debug ${DCMTK_${lib}_LIBRARY_DEBUG})
- endif()
-
-endforeach()
-
-set(DCMTK_config_TEST_HEADER osconfig.h)
-set(DCMTK_dcmdata_TEST_HEADER dctypes.h)
-set(DCMTK_dcmimage_TEST_HEADER dicoimg.h)
-set(DCMTK_dcmimgle_TEST_HEADER dcmimage.h)
-set(DCMTK_dcmjpeg_TEST_HEADER djdecode.h)
-set(DCMTK_dcmnet_TEST_HEADER assoc.h)
-set(DCMTK_dcmpstat_TEST_HEADER dcmpstat.h)
-set(DCMTK_dcmqrdb_TEST_HEADER dcmqrdba.h)
-set(DCMTK_dcmsign_TEST_HEADER sicert.h)
-set(DCMTK_dcmsr_TEST_HEADER dsrtree.h)
-set(DCMTK_dcmtls_TEST_HEADER tlslayer.h)
-set(DCMTK_ofstd_TEST_HEADER ofstdinc.h)
-set(DCMTK_dcmrt_TEST_HEADER drtstrct.h)
-
-foreach(dir
- config
- dcmdata
- dcmimage
- dcmimgle
- dcmjpeg
- dcmnet
- dcmpstat
- dcmqrdb
- dcmsign
- dcmsr
- dcmtls
- dcmrt
- ofstd)
- find_path(DCMTK_${dir}_INCLUDE_DIR
- ${DCMTK_${dir}_TEST_HEADER}
- PATHS
- ${DCMTK_DIR}/${dir}/include
- ${DCMTK_DIR}/${dir}
- ${DCMTK_DIR}/include/dcmtk/${dir}
- ${DCMTK_DIR}/include/${dir})
-
- mark_as_advanced(DCMTK_${dir}_INCLUDE_DIR)
- #message("** DCMTKs ${dir} found at ${DCMTK_${dir}_INCLUDE_DIR}")
-
- if(DCMTK_${dir}_INCLUDE_DIR)
- # add the 'include' path so eg
- #include "dcmtk/dcmimgle/dcmimage.h"
- # works
- get_filename_component(_include ${DCMTK_${dir}_INCLUDE_DIR} PATH)
- get_filename_component(_include ${_include} PATH)
- list(APPEND DCMTK_INCLUDE_DIRS ${DCMTK_${dir}_INCLUDE_DIR} ${_include})
- endif()
-endforeach()
-
-if(WIN32)
- list(APPEND DCMTK_LIBRARIES netapi32 wsock32)
-endif()
-
-if(DCMTK_ofstd_INCLUDE_DIR)
- get_filename_component(DCMTK_dcmtk_INCLUDE_DIR
- ${DCMTK_ofstd_INCLUDE_DIR}
- PATH
- CACHE)
- list(APPEND DCMTK_INCLUDE_DIRS ${DCMTK_dcmtk_INCLUDE_DIR})
- mark_as_advanced(DCMTK_dcmtk_INCLUDE_DIR)
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(DCMTK DEFAULT_MSG
- DCMTK_config_INCLUDE_DIR
- DCMTK_ofstd_INCLUDE_DIR
- DCMTK_ofstd_LIBRARY
- DCMTK_dcmdata_INCLUDE_DIR
- DCMTK_dcmdata_LIBRARY
- DCMTK_dcmimgle_INCLUDE_DIR
- DCMTK_dcmimgle_LIBRARY
- )
-
-# Compatibility: This variable is deprecated
-set(DCMTK_INCLUDE_DIR ${DCMTK_INCLUDE_DIRS})
diff --git a/CMake/FindEigen.cmake b/CMake/FindEigen.cmake
index 2ec4304..d8fa482 100644
--- a/CMake/FindEigen.cmake
+++ b/CMake/FindEigen.cmake
@@ -1,9 +1,13 @@
find_path(Eigen_INCLUDE_DIR
NAMES Eigen/Eigen
- PATHS ${Eigen_DIR} ${MITK_EXTERNAL_PROJECT_PREFIX} ${CMAKE_PREFIX_PATH}
+ PATHS ${Eigen_FIX_DIR} ${Eigen_DIR} ${MITK_EXTERNAL_PROJECT_PREFIX} ${CMAKE_PREFIX_PATH}
PATH_SUFFIXES include include/eigen3
)
+if(NOT Eigen_DIR)
+ set(Eigen_DIR ${Eigen_FIX_DIR})
+endif()
+
if (NOT TARGET Eigen)
add_library(Eigen INTERFACE IMPORTED GLOBAL)
set_property(TARGET Eigen APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Eigen_INCLUDE_DIR})
diff --git a/CMake/PackageDepends/MITK_DCMTK_Config.cmake b/CMake/PackageDepends/MITK_DCMTK_Config.cmake
index 7be335f..21f0dac 100644
--- a/CMake/PackageDepends/MITK_DCMTK_Config.cmake
+++ b/CMake/PackageDepends/MITK_DCMTK_Config.cmake
@@ -4,30 +4,6 @@ endif( NOT WIN32 AND NOT APPLE )
set(QT_USE_QTSQL 1)
-if(EXISTS ${DCMTK_config_INCLUDE_DIR}/osconfig.h)
-
- file(READ ${DCMTK_config_INCLUDE_DIR}/osconfig.h _osconfig_h)
- if(NOT _osconfig_h MATCHES "PACKAGE_VERSION_NUMBER \"354\"")
- # message(STATUS "Found DCMTK newer that 3.5.4 ...")
- set(MITK_USE_DCMTK_NEWER_THAN_3_5_4 TRUE)
- # assume the new oflog library is located next to the others
- # this can be removed if FindDCMTK is adapted for 3.5.5
- # treat Debug and Release separately
- get_filename_component(_DCMTK_lib_dir_release ${DCMTK_ofstd_LIBRARY_RELEASE} PATH)
- get_filename_component(_DCMTK_lib_dir_debug ${DCMTK_ofstd_LIBRARY_DEBUG} PATH)
- set(DCMTK_oflog_LIBRARY_RELEASE )
- set(DCMTK_oflog_LIBRARY_DEBUG )
- if(_DCMTK_lib_dir_release)
- find_library(DCMTK_oflog_LIBRARY_RELEASE oflog ${_DCMTK_lib_dir_release} )
- list(APPEND DCMTK_LIBRARIES optimized ${DCMTK_oflog_LIBRARY_RELEASE} )
- endif()
- if(_DCMTK_lib_dir_debug)
- find_library(DCMTK_oflog_LIBRARY_DEBUG oflog ${_DCMTK_lib_dir_debug} )
- list(APPEND DCMTK_LIBRARIES debug ${DCMTK_oflog_LIBRARY_DEBUG} )
- endif()
- endif()
-endif()
-
#
# Usually all code should be adapted to DCMTK 3.6
# If necessary you could configure the MITK_USE_DCMTK_NEWER_THAN_3_5_4 variable
diff --git a/CMakeExternals/Eigen.cmake b/CMakeExternals/Eigen.cmake
index 00e0284..a07ecf2 100644
--- a/CMakeExternals/Eigen.cmake
+++ b/CMakeExternals/Eigen.cmake
@@ -39,6 +39,8 @@ if(MITK_USE_Eigen)
mitkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
+ find_package(Eigen)
+
endif()
endif()
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5539396..194301a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -832,9 +832,6 @@ set(Boost_USE_STATIC_LIBS 0)
set(Boost_USE_STATIC_RUNTIME 0)
set(Boost_ADDITIONAL_VERSIONS "1.59" "1.59.0")
-# We need this later for a DCMTK workaround
-set(_dcmtk_dir_orig ${DCMTK_DIR})
-
# This property is populated at the top half of this file
get_property(MITK_EXTERNAL_PROJECTS GLOBAL PROPERTY MITK_EXTERNAL_PROJECTS)
foreach(ep ${MITK_EXTERNAL_PROJECTS})
@@ -865,17 +862,7 @@ set(CMAKE_MODULE_PATH
)
if(MITK_USE_DCMTK)
- # Due to the preferred CONFIG mode in find_package calls above,
- # the DCMTKConfig.cmake file is read, which does not provide useful
- # package information. We explictly need MODULE mode to find DCMTK.
- if(${_dcmtk_dir_orig} MATCHES "${MITK_EXTERNAL_PROJECT_PREFIX}.*")
- # Help our FindDCMTK.cmake script find our super-build DCMTK
- set(DCMTK_DIR ${MITK_EXTERNAL_PROJECT_PREFIX})
- else()
- # Use the original value
- set(DCMTK_DIR ${_dcmtk_dir_orig})
- endif()
- find_package(DCMTK REQUIRED MODULE)
+ find_package(DCMTK REQUIRED)
endif()
if(MITK_USE_Python)
@@ -1336,6 +1323,10 @@ get_property(MITK_ADDITIONAL_LIBRARY_SEARCH_PATHS_CONFIG GLOBAL PROPERTY MITK_AD
set(MITK_CONFIG_EXTERNAL_PROJECTS )
#string(REPLACE "^^" ";" _mitk_external_projects ${MITK_EXTERNAL_PROJECTS})
+if(MITK_USE_Boost)
+ set(Boost_DIR ${BOOST_ROOT})
+endif()
+
foreach(ep ${MITK_EXTERNAL_PROJECTS})
get_property(_components GLOBAL PROPERTY MITK_${ep}_COMPONENTS)
set(MITK_CONFIG_EXTERNAL_PROJECTS "${MITK_CONFIG_EXTERNAL_PROJECTS}
diff --git a/MITKConfig.cmake.in b/MITKConfig.cmake.in
index 8e1cb55..a493156 100644
--- a/MITKConfig.cmake.in
+++ b/MITKConfig.cmake.in
@@ -161,8 +161,8 @@ if(MITK_USE_Boost)
set(Boost_ADDITIONAL_VERSIONS "1.59" "1.59.0")
endif()
-# We need this later for a DCMTK workaround
-set(_dcmtk_dir_orig "@DCMTK_DIR@")
+# We need this because Eigen_DIR gets destroyed somewhere in the build system
+set(Eigen_FIX_DIR "@Eigen_FIX_DIR@")
# -----------------------------------------
# External dependencies from the superbuild
@@ -178,17 +178,7 @@ set(CMAKE_MODULE_PATH ${MITK_CMAKE_MODULE_PATH} ${CMAKE_MODULE_PATH})
# Special handling for DCMTK
if(MITK_USE_DCMTK)
- # Due to the preferred CONFIG mode in find_package calls above,
- # the DCMTKConfig.cmake file is read, which does not provide useful
- # package information. We explictly need MODULE mode to find DCMTK.
- if(${_dcmtk_dir_orig} MATCHES "${MITK_EXTERNAL_PROJECT_PREFIX}.*")
- # Help our FindDCMTK.cmake script find our super-build DCMTK
- set(DCMTK_DIR ${MITK_EXTERNAL_PROJECT_PREFIX})
- else()
- # Use the original value
- set(DCMTK_DIR ${_dcmtk_dir_orig})
- endif()
- find_package(DCMTK REQUIRED MODULE)
+ find_package(DCMTK REQUIRED)
endif()
# -----------------------------------------
diff --git a/Modules/DICOMReader/include/mitkITKDICOMSeriesReaderHelper.txx b/Modules/DICOMReader/include/mitkITKDICOMSeriesReaderHelper.txx
index 071f899..b872c73 100644
--- a/Modules/DICOMReader/include/mitkITKDICOMSeriesReaderHelper.txx
+++ b/Modules/DICOMReader/include/mitkITKDICOMSeriesReaderHelper.txx
@@ -21,7 +21,7 @@ See LICENSE.txt or http://www.mitk.org for details.
//#include <itkLinearInterpolateImageFunction.h>
//#include <itkTimeProbesCollectorBase.h>
-#include <ofdatime.h>
+#include <dcmtk/ofstd/ofdatime.h>
template <typename PixelType>
mitk::Image::Pointer
diff --git a/Modules/DICOMReader/src/mitkDICOMSortByTag.cpp b/Modules/DICOMReader/src/mitkDICOMSortByTag.cpp
index b2cb0e4..c7d6f3a 100644
--- a/Modules/DICOMReader/src/mitkDICOMSortByTag.cpp
+++ b/Modules/DICOMReader/src/mitkDICOMSortByTag.cpp
@@ -16,7 +16,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include "mitkDICOMSortByTag.h"
-#include "ofstd.h"
+#include "dcmtk/ofstd/ofstd.h"
mitk::DICOMSortByTag
::DICOMSortByTag(const DICOMTag& tag, DICOMSortCriterion::Pointer secondaryCriterion)
diff --git a/Modules/DICOMReader/src/mitkDICOMTag.cpp b/Modules/DICOMReader/src/mitkDICOMTag.cpp
index f3a0452..24b054b 100644
--- a/Modules/DICOMReader/src/mitkDICOMTag.cpp
+++ b/Modules/DICOMReader/src/mitkDICOMTag.cpp
@@ -25,7 +25,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include <boost/algorithm/string.hpp>
#include "mitkLogMacros.h"
-#include "ofstd.h"
+#include "dcmtk/ofstd/ofstd.h"
mitk::DICOMTag
::DICOMTag(unsigned int group, unsigned int element)
diff --git a/Modules/DICOMReader/src/mitkITKDICOMSeriesReaderHelper.cpp b/Modules/DICOMReader/src/mitkITKDICOMSeriesReaderHelper.cpp
index f8c2308..7c68179 100644
--- a/Modules/DICOMReader/src/mitkITKDICOMSeriesReaderHelper.cpp
+++ b/Modules/DICOMReader/src/mitkITKDICOMSeriesReaderHelper.cpp
@@ -16,7 +16,7 @@ See LICENSE.txt or http://www.mitk.org for details.
//#define MBILOG_ENABLE_DEBUG
-#include <dcvrdt.h>
+#include <dcmtk/dcmdata/dcvrdt.h>
#define BOOST_DATE_TIME_NO_LIB
@@ -28,7 +28,7 @@ See LICENSE.txt or http://www.mitk.org for details.
#include "mitkDICOMGDCMTagScanner.h"
#include "mitkArbitraryTimeGeometry.h"
-#include "dcvrda.h"
+#include "dcmtk/dcmdata/dcvrda.h"
const mitk::DICOMTag mitk::ITKDICOMSeriesReaderHelper::AcquisitionDateTag = mitk::DICOMTag( 0x0008, 0x0022 );
diff --git a/SuperBuild.cmake b/SuperBuild.cmake
index 8c2287c..ce954d2 100644
--- a/SuperBuild.cmake
+++ b/SuperBuild.cmake
@@ -405,6 +405,7 @@ ExternalProject_Add(${proj}
-DDCMTK_CMAKE_DEBUG_POSTFIX:STRING=${DCMTK_CMAKE_DEBUG_POSTFIX}
-DBOOST_ROOT:PATH=${BOOST_ROOT}
-DBOOST_LIBRARYDIR:PATH=${BOOST_LIBRARYDIR}
+ -DEigen_FIX_DIR:PATH=${Eigen_DIR}
-DMITK_Breakpad_SRC:PATH=${Breakpad_SRC}
-DMITK_Breakpad_DIR:PATH=${Breakpad_DIR}
-DMITK_USE_Boost_LIBRARIES:STRING=${MITK_USE_Boost_LIBRARIES}

File Metadata

Mime Type
text/x-diff
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
13505
Default Alt Text
ep.patch (13 KB)

Event Timeline