mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-25 10:49:01 +08:00
51e10eb7fe
* [gdal] Fix find_package2 * [cmake-user] Test gdal * [cmake-user] gdal needs CMake 3.9 * Fix tiff & zstd * Update versions * [libkml] Export modern INTERFACE_LINK_LIBRARIES * [gdal] Enable libkml driver Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
82 lines
3.3 KiB
CMake
82 lines
3.3 KiB
CMake
cmake_policy(PUSH)
|
|
cmake_policy(SET CMP0012 NEW)
|
|
cmake_policy(SET CMP0057 NEW)
|
|
set(z_vcpkg_tiff_find_options "")
|
|
if("REQUIRED" IN_LIST ARGS)
|
|
list(APPEND z_vcpkg_tiff_find_options "REQUIRED")
|
|
endif()
|
|
if("QUIET" IN_LIST ARGS)
|
|
list(APPEND z_vcpkg_tiff_find_options "QUIET")
|
|
endif()
|
|
|
|
_find_package(${ARGS})
|
|
|
|
include(SelectLibraryConfigurations)
|
|
|
|
if(TIFF_FOUND AND "@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static")
|
|
set(z_vcpkg_tiff_link_libraries "")
|
|
set(z_vcpkg_tiff_libraries "")
|
|
if("@webp@")
|
|
find_package(WebP CONFIG ${z_vcpkg_tiff_find_options})
|
|
list(APPEND z_vcpkg_tiff_link_libraries "\$<LINK_ONLY:WebP::WebP>")
|
|
list(APPEND z_vcpkg_tiff_libraries ${WebP_LIBRARIES})
|
|
endif()
|
|
if("@lzma@")
|
|
find_package(LibLZMA ${z_vcpkg_tiff_find_options})
|
|
list(APPEND z_vcpkg_tiff_link_libraries "\$<LINK_ONLY:LibLZMA::LibLZMA>")
|
|
list(APPEND z_vcpkg_tiff_libraries ${LIBLZMA_LIBRARIES})
|
|
endif()
|
|
if("@jpeg@")
|
|
find_package(JPEG ${z_vcpkg_tiff_find_options})
|
|
list(APPEND z_vcpkg_tiff_link_libraries "\$<LINK_ONLY:JPEG::JPEG>")
|
|
list(APPEND z_vcpkg_tiff_libraries ${JPEG_LIBRARIES})
|
|
endif()
|
|
if("@zstd@")
|
|
find_package(zstd CONFIG ${z_vcpkg_tiff_find_options})
|
|
set(z_vcpkg_tiff_zstd_target_property "IMPORTED_LOCATION_")
|
|
if(TARGET zstd::libzstd_shared)
|
|
set(z_vcpkg_tiff_zstd "\$<LINK_ONLY:zstd::libzstd_shared>")
|
|
set(z_vcpkg_tiff_zstd_target zstd::libzstd_shared)
|
|
if(WIN32)
|
|
set(z_vcpkg_tiff_zstd_target_property "IMPORTED_IMPLIB_")
|
|
endif()
|
|
else()
|
|
set(z_vcpkg_tiff_zstd "\$<LINK_ONLY:zstd::libzstd_static>")
|
|
set(z_vcpkg_tiff_zstd_target zstd::libzstd_static)
|
|
endif()
|
|
get_target_property(z_vcpkg_tiff_zstd_configs "${z_vcpkg_tiff_zstd_target}" IMPORTED_CONFIGURATIONS)
|
|
foreach(z_vcpkg_config IN LISTS z_vcpkg_tiff_zstd_configs)
|
|
get_target_property(ZSTD_LIBRARY_${z_vcpkg_config} "${z_vcpkg_tiff_zstd_target}" "${z_vcpkg_tiff_zstd_target_property}${z_vcpkg_config}")
|
|
endforeach()
|
|
select_library_configurations(ZSTD)
|
|
if(NOT TARGET ZSTD::ZSTD)
|
|
add_library(ZSTD::ZSTD INTERFACE IMPORTED)
|
|
set_property(TARGET ZSTD::ZSTD APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${z_vcpkg_tiff_zstd})
|
|
endif()
|
|
list(APPEND z_vcpkg_tiff_libraries ${ZSTD_LIBRARIES})
|
|
list(APPEND z_vcpkg_tiff_link_libraries ${z_vcpkg_tiff_zstd})
|
|
unset(z_vcpkg_tiff_zstd)
|
|
unset(z_vcpkg_tiff_zstd_configs)
|
|
unset(z_vcpkg_config)
|
|
unset(z_vcpkg_tiff_zstd_target)
|
|
endif()
|
|
if("@zlib@")
|
|
find_package(ZLIB ${z_vcpkg_tiff_find_options})
|
|
list(APPEND z_vcpkg_tiff_link_libraries "\$<LINK_ONLY:ZLIB::ZLIB>")
|
|
list(APPEND z_vcpkg_tiff_libraries ${ZLIB_LIBRARIES})
|
|
endif()
|
|
if(UNIX)
|
|
list(APPEND z_vcpkg_tiff_link_libraries m)
|
|
list(APPEND z_vcpkg_tiff_libraries m)
|
|
endif()
|
|
|
|
if(TARGET TIFF::TIFF)
|
|
set_property(TARGET TIFF::TIFF APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${z_vcpkg_tiff_link_libraries})
|
|
endif()
|
|
list(APPEND TIFF_LIBRARIES ${z_vcpkg_tiff_libraries})
|
|
unset(z_vcpkg_tiff_link_libraries)
|
|
unset(z_vcpkg_tiff_libraries)
|
|
endif()
|
|
unset(z_vcpkg_tiff_find_options)
|
|
cmake_policy(POP)
|