Project

General

Profile

Feature #416 » cleaner-3rdparty.patch

Cleaner / Simplified version of the changes to CMake/3rdparty.cmake - Uli Schlachter, 2013-03-11 10:37

View differences:

CMake/3rdparty.cmake
# Find TIFF
IF(DCMTK_WITH_TIFF)
FIND_PACKAGE(TIFF)
INCLUDE_DIRECTORIES(${TIFF_INCLUDE_DIR})
SET(LIBTIFF_LIBS ${TIFF_LIBRARY})
MESSAGE("TIFF_FOUND=${TIFF_FOUND} TIFF_LIBRARY=${TIFF_LIBRARY}")
FIND_PACKAGE(JPEG)
MESSAGE("JPEG_FOUND=${JPEG_FOUND} JPEG_LIBRARY=${JPEG_LIBRARY}")
# turn off library if it could not be found
IF(NOT LIBTIFF_LIBS)
MESSAGE(STATUS "Warning: TIFF support will be disabled because libtiff was not found.")
IF(NOT TIFF_FOUND OR NOT JPEG_FOUND)
IF(NOT TIFF_FOUND)
MESSAGE(STATUS "Warning: TIFF support will be disabled because libtiff was not found.")
ELSE()
MESSAGE(STATUS "Warning: TIFF support will be disabled because libjpeg was not found.")
ENDIF()
SET(DCMTK_WITH_TIFF OFF CACHE BOOL "" FORCE)
SET(WITH_LIBTIFF "")
ELSE(NOT LIBTIFF_LIBS)
ELSE()
MESSAGE(STATUS "Info: DCMTK TIFF support will be enabled")
SET(WITH_LIBTIFF 1)
ENDIF(NOT LIBTIFF_LIBS)
ENDIF(DCMTK_WITH_TIFF)
INCLUDE_DIRECTORIES(${TIFF_INCLUDE_DIR})
SET(LIBTIFF_LIBS ${TIFF_LIBRARY} ${JPEG_LIBRARY})
ENDIF()
ENDIF()
# Find PNG
IF(DCMTK_WITH_PNG)
FIND_PACKAGE(PNG)
INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
SET(LIBPNG_LIBS ${PNG_LIBRARY})
IF(NOT LIBPNG_LIBS)
FIND_PACKAGE(PNG QUIET)
IF(NOT PNG_FOUND)
SET(DCMTK_WITH_PNG OFF CACHE BOOL "" FORCE)
MESSAGE(STATUS "Warning: PNG support will be disabled because libpng was not found.")
SET(WITH_LIBPNG "")
ELSE(NOT LIBPNG_LIBS)
ELSE()
MESSAGE(STATUS "Info: DCMTK PNG support will be enabled")
SET(WITH_LIBPNG 1)
ENDIF(NOT LIBPNG_LIBS)
ENDIF(DCMTK_WITH_PNG)
INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
SET(LIBPNG_LIBS ${PNG_LIBRARY})
ENDIF()
ENDIF()
# Find OpenSSL
IF(DCMTK_WITH_OPENSSL)
FIND_PACKAGE(OpenSSL)
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
SET(OPENSSL_LIBS ${OPENSSL_LIBRARIES})
IF(NOT OPENSSL_LIBS)
FIND_PACKAGE(OpenSSL QUIET)
IF(NOT OPENSSL_FOUND)
MESSAGE(STATUS "Warning: OPENSSL support will be disabled because openssl was not found.")
SET(WITH_OPENSSL "")
SET(DCMTK_WITH_OPENSSL OFF CACHE BOOL "" FORCE)
ELSE(NOT OPENSSL_LIBS)
ELSE()
MESSAGE(STATUS "Info: DCMTK OPENSSL support will be enabled")
SET(WITH_OPENSSL 1)
ENDIF(NOT OPENSSL_LIBS)
ENDIF(DCMTK_WITH_OPENSSL)
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
SET(OPENSSL_LIBS ${OPENSSL_LIBRARIES})
ENDIF()
ENDIF()
# Find libXML2
IF(DCMTK_WITH_XML)
FIND_PACKAGE(LibXml2)
INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
SET(LIBXML_LIBS ${LIBXML2_LIBRARIES})
IF(NOT LIBXML_LIBS)
FIND_PACKAGE(LibXml2 QUIET)
IF(NOT LIBXML2_FOUND)
MESSAGE(STATUS "Warning: XML support will be disabled because libxml2 was not found.")
SET(WITH_LIBXML "")
SET(DCMTK_WITH_XML OFF CACHE BOOL "" FORCE)
ELSE(NOT LIBXML_LIBS)
ELSE()
MESSAGE(STATUS "Info: DCMTK XML support will be enabled")
SET(WITH_LIBXML 1)
ENDIF(NOT LIBXML_LIBS)
ENDIF(DCMTK_WITH_XML)
INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
SET(LIBXML_LIBS ${LIBXML2_LIBRARIES})
ENDIF()
ENDIF()
# Find zlib
IF(DCMTK_WITH_ZLIB)
FIND_PACKAGE(ZLIB)
INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIRS})
SET(ZLIB_LIBS ${ZLIB_LIBRARIES})
IF(NOT ZLIB_LIBS)
FIND_PACKAGE(ZLIB QUIET)
IF(NOT ZLIB_FOUND)
MESSAGE(STATUS "Warning: ZLIB support will be disabled because zlib was not found.")
SET(WITH_ZLIB "")
SET(DCMTK_WITH_ZLIB OFF CACHE BOOL "" FORCE)
ELSE(NOT ZLIB_LIBS)
ELSE()
MESSAGE(STATUS "Info: DCMTK ZLIB support will be enabled")
SET(WITH_ZLIB 1)
ENDIF(NOT ZLIB_LIBS)
ENDIF(DCMTK_WITH_ZLIB)
INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIRS})
SET(ZLIB_LIBS ${ZLIB_LIBRARIES})
ENDIF()
ENDIF()
# Find libsndfile
IF(DCMTK_WITH_SNDFILE)
FIND_PACKAGE(Sndfile)
INCLUDE_DIRECTORIES(${SNDFILE_INCLUDE_DIRS})
SET(SNDFILE_LIBS ${SNDFILE_LIBRARIES})
FIND_PACKAGE(Sndfile QUIET)
IF(NOT SNDFILE_LIBS)
MESSAGE(STATUS "Warning: SNDFILE support will be disabled because libsndfile was not found.")
SET(WITH_SNDFILE "")
SET(DCMTK_WITH_SNDFILE OFF CACHE BOOL "" FORCE)
ELSE(NOT SNDFILE_LIBS)
ELSE()
MESSAGE(STATUS "Info: DCMTK SNDFILE support will be enabled")
SET(WITH_SNDFILE 1)
ENDIF(NOT SNDFILE_LIBS)
ENDIF(DCMTK_WITH_SNDFILE)
INCLUDE_DIRECTORIES(${SNDFILE_INCLUDE_DIRS})
SET(SNDFILE_LIBS ${SNDFILE_LIBRARIES})
ENDIF()
ENDIF()
# Find libiconv
IF(DCMTK_WITH_ICONV)
FIND_PACKAGE(ICONV)
FIND_PACKAGE(Charset)
IF(LIBICONV_FOUND AND LIBCHARSET_FOUND)
FIND_PACKAGE(ICONV QUIET)
FIND_PACKAGE(Charset QUIET)
IF(NOT LIBICONV_FOUND OR NOT LIBCHARSET_FOUND)
MESSAGE(STATUS "Warning: ICONV support will be disabled because libiconv was not found. Correct LIBICONV_LIBDIR and LIBICONV_INCLUDE_DIR and re-enable DCMTK_WITH_ICONV.")
SET(DCMTK_WITH_ICONV OFF CACHE BOOL "" FORCE)
SET(WITH_LIBICONV "")
ELSE()
MESSAGE(STATUS "Info: DCMTK ICONV support will be enabled")
SET(WITH_LIBICONV 1)
SET(LIBICONV_INCDIR ${LIBICONV_INCLUDE_DIRS} ${LIBCHARSET_INCLUDE_DIRS})
SET(LIBICONV_LIBDIR ${LIBICONV_LIBDIR})
SET(LIBICONV_LIBS ${LIBICONV_LIBRARIES} ${LIBCHARSET_LIBRARY})
INCLUDE_DIRECTORIES(${LIBICONV_INCDIR})
ELSE(LIBICONV_FOUND AND LIBCHARSET_FOUND)
MESSAGE(STATUS "Warning: ICONV support will be disabled because libiconv was not found. Correct LIBICONV_LIBDIR and LIBICONV_INCLUDE_DIR and re-enable DCMTK_WITH_ICONV.")
SET(DCMTK_WITH_ICONV OFF CACHE BOOL "" FORCE)
SET(WITH_LIBICONV "")
ENDIF(LIBICONV_FOUND AND LIBCHARSET_FOUND)
ENDIF(DCMTK_WITH_ICONV)
ENDIF()
ENDIF()
# Find libwrap
IF(DCMTK_WITH_WRAP)
FIND_PACKAGE(Wrap)
INCLUDE_DIRECTORIES(${WRAP_INCLUDE_DIRS})
SET(WRAP_LIBS ${WRAP_LIBRARIES})
IF(NOT WRAP_LIBS)
FIND_PACKAGE(Wrap QUIET)
IF(NOT WRAP_FOUND)
MESSAGE(STATUS "Warning: WRAP support will be disabled because libwrap was not found.")
SET(WITH_TCPWRAPPER "")
SET(DCMTK_WITH_WRAP OFF CACHE BOOL "" FORCE)
ELSE(NOT WRAP_LIBS)
ELSE()
MESSAGE(STATUS "Info: DCMTK WRAP support will be enabled")
SET(WITH_TCPWRAPPER 1)
ENDIF(NOT WRAP_LIBS)
ENDIF(DCMTK_WITH_WRAP)
INCLUDE_DIRECTORIES(${WRAP_INCLUDE_DIRS})
SET(WRAP_LIBS ${WRAP_LIBRARIES})
ENDIF()
ENDIF()
ENDIF(WIN32)
ENDIF()
# Find doxygen
IF(DCMTK_WITH_DOXYGEN)
FIND_PACKAGE(Doxygen) # will set variable DOXYGEN_EXECUTABLE
IF(NOT DOXYGEN_EXECUTABLE)
IF(NOT DOXYGEN_FOUND)
MESSAGE(STATUS "Warning: DOXYGEN support will be disabled because doxygen was not found.")
SET(DCMTK_WITH_DOXYGEN OFF CACHE BOOL "" FORCE)
ENDIF(NOT DOXYGEN_EXECUTABLE)
ENDIF(DCMTK_WITH_DOXYGEN)
ENDIF()
ENDIF()
IF(DCMTK_WITH_ICONV)
INCLUDE(CheckCXXSourceCompiles)
include(CheckCXXSourceCompiles)
SET(CMAKE_REQUIRED_INCLUDES ${LIBICONV_INCDIR})
SET(CMAKE_REQUIRED_LIBRARIES ${LIBICONV_LIBS})
CHECK_CXX_SOURCE_COMPILES("
......
}" LIBICONV_SECOND_ARGUMENT_CONST)
SET(CMAKE_REQUIRED_INCLUDES)
SET(CMAKE_REQUIRED_LIBRARIES)
ENDIF(DCMTK_WITH_ICONV)
ENDIF()
(2-2/2)