123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328 |
- set(_dcmtk_dir_description "The directory of DCMTK build or install tree.")
- if(NOT DCMTK_DIR OR DCMTK_DIR STREQUAL "/usr/include/dcmtk")
- set(DCMTK_DIR "/usr" CACHE PATH ${_dcmtk_dir_description} FORCE)
- endif()
- set(_SAVED_DCMTK_DIR ${DCMTK_DIR})
- if(NOT DCMTK_FIND_QUIETLY)
- message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake")
- endif()
- find_package(DCMTK QUIET NO_MODULE)
- if(DCMTK_FOUND
- AND NOT "x" STREQUAL "x${DCMTK_LIBRARIES}"
- AND NOT "x" STREQUAL "x${DCMTK_INCLUDE_DIRS}")
- if(NOT DCMTK_FIND_QUIETLY)
- message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - ok")
- endif()
- return()
- else()
- if(NOT DCMTK_FIND_QUIETLY)
- message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - failed")
- endif()
- endif()
- if(NOT DCMTK_FIND_QUIETLY)
- message(STATUS "Trying to find DCMTK relying on FindDCMTK.cmake")
- endif()
- set(DCMTK_DIR ${_SAVED_DCMTK_DIR} CACHE PATH ${_dcmtk_dir_description} FORCE)
- if(DCMTK_DIR)
- set(CMAKE_PREFIX_PATH ${DCMTK_DIR}/lib ${CMAKE_PREFIX_PATH})
- endif()
- foreach(lib
- dcmpstat
- dcmsr
- dcmsign
- dcmtls
- dcmqrdb
- dcmnet
- dcmjpeg
- dcmimage
- dcmimgle
- dcmdata
- oflog
- ofstd
- ijg12
- ijg16
- ijg8
- )
-
- 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_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)
-
- if(DCMTK_${lib}_LIBRARY_RELEASE)
- list(APPEND DCMTK_LIBRARIES optimized ${DCMTK_${lib}_LIBRARY_RELEASE})
- endif()
- if(DCMTK_${lib}_LIBRARY_DEBUG)
- list(APPEND DCMTK_LIBRARIES debug ${DCMTK_${lib}_LIBRARY_DEBUG})
- endif()
- endforeach()
- set(CMAKE_THREAD_LIBS_INIT)
- if(DCMTK_oflog_LIBRARY_RELEASE OR DCMTK_oflog_LIBRARY_DEBUG)
-
-
-
- set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
- find_package(Threads)
- endif()
- if(CMAKE_THREAD_LIBS_INIT)
- list(APPEND DCMTK_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
- endif()
- if(EXISTS ${DCMTK_DIR}/CMakeCache.txt)
- load_cache(${DCMTK_DIR} READ_WITH_PREFIX "EXT"
- DCMTK_SOURCE_DIR)
- if(NOT EXISTS ${EXTDCMTK_SOURCE_DIR})
- message(FATAL_ERROR
- "DCMTK build directory references
- nonexistent DCMTK source directory ${EXTDCMTK_SOURCE_DIR}")
- endif()
- endif()
- 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_oflog_TEST_HEADER oflog.h)
- set(DCMTK_dcmjpls_TEST_HEADER djlsutil.h)
- set(DCMTK_INCLUDE_DIR_NAMES)
- foreach(dir
- config
- dcmdata
- dcmimage
- dcmimgle
- dcmjpeg
- dcmjpls
- dcmnet
- dcmpstat
- dcmqrdb
- dcmsign
- dcmsr
- dcmtls
- ofstd
- oflog)
- if(EXTDCMTK_SOURCE_DIR)
- set(SOURCE_DIR_PATH
- ${EXTDCMTK_SOURCE_DIR}/${dir}/include/dcmtk/${dir})
- endif()
- 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}/${dir}/include/dcmtk/${dir}
- ${DCMTK_DIR}/include/${dir}
- ${SOURCE_DIR_PATH}
- )
- mark_as_advanced(DCMTK_${dir}_INCLUDE_DIR)
- list(APPEND DCMTK_INCLUDE_DIR_NAMES DCMTK_${dir}_INCLUDE_DIR)
- if(DCMTK_${dir}_INCLUDE_DIR)
-
-
-
- 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()
- list(APPEND DCMTK_INCLUDE_DIRS ${DCMTK_DIR}/include)
- 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()
- set(DCMTK_INCLUDE_DIR ${DCMTK_INCLUDE_DIRS})
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(DCMTK
- REQUIRED_VARS ${DCMTK_INCLUDE_DIR_NAMES} DCMTK_LIBRARIES
- FAIL_MESSAGE "Please set DCMTK_DIR and re-run configure")
- if(DCMTK_FOUND AND UNIX AND NOT APPLE)
- include(CheckCXXSourceCompiles)
- set(CMAKE_REQUIRED_FLAGS )
- set(CMAKE_REQUIRED_DEFINITIONS )
- set(CMAKE_REQUIRED_INCLUDES ${DCMTK_INCLUDE_DIRS})
- set(CMAKE_REQUIRED_LIBRARIES ${DCMTK_LIBRARIES})
- set(CMAKE_REQUIRED_QUIET ${DCMTK_FIND_QUIETLY})
- check_cxx_source_compiles("#include <dcmtk/config/osconfig.h>\n#include <dcmtk/ofstd/ofstream.h>\nint main(int,char*[]){return 0;}"
- DCMTK_HAVE_CONFIG_H_OPTIONAL
- )
- if(NOT DCMTK_HAVE_CONFIG_H_OPTIONAL)
- set(DCMTK_DEFINITIONS "HAVE_CONFIG_H")
- endif()
- endif()
- if(NOT DCMTK_FIND_QUIETLY)
- message(STATUS "Trying to find DCMTK relying on FindDCMTK.cmake - ok")
- endif()
|