From 9f73bc1a0e71b8883f20cae72a4e63ce347a3493 Mon Sep 17 00:00:00 2001 From: Kai Pastor Date: Thu, 2 Sep 2021 22:21:52 +0200 Subject: Fix target_link_libraries on repeated inclusion of wrappers (#19120) * Fix repeated inclusion of wrappers * x-add-version --- ports/exiv2/vcpkg-cmake-wrapper.cmake | 2 +- ports/exiv2/vcpkg.json | 2 +- ports/gdal/vcpkg-cmake-wrapper.cmake | 2 +- ports/gdal/vcpkg.json | 2 +- ports/libarchive/vcpkg-cmake-wrapper.cmake.in | 14 +++++++------- ports/libarchive/vcpkg.json | 2 +- ports/libiconv/CONTROL | 5 ----- ports/libiconv/vcpkg.json | 7 +++++++ ports/libuv/CONTROL | 4 ---- ports/libuv/vcpkg-cmake-wrapper.cmake | 4 ++-- ports/libuv/vcpkg.json | 7 +++++++ ports/libxml2/vcpkg-cmake-wrapper.cmake | 8 ++++---- ports/libxml2/vcpkg.json | 2 +- 13 files changed, 33 insertions(+), 28 deletions(-) delete mode 100644 ports/libiconv/CONTROL create mode 100644 ports/libiconv/vcpkg.json delete mode 100644 ports/libuv/CONTROL create mode 100644 ports/libuv/vcpkg.json (limited to 'ports') diff --git a/ports/exiv2/vcpkg-cmake-wrapper.cmake b/ports/exiv2/vcpkg-cmake-wrapper.cmake index 354a7909c..62f4ecca3 100644 --- a/ports/exiv2/vcpkg-cmake-wrapper.cmake +++ b/ports/exiv2/vcpkg-cmake-wrapper.cmake @@ -10,7 +10,7 @@ if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static") Iconv::Iconv ) if(@EXIV2_ENABLE_NLS@) - target_link_libraries(exiv2lib INTERFACE ${Intl_LIBRARIES}) + set_property(TARGET exiv2lib APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${Intl_LIBRARIES}) endif() endif() endif() diff --git a/ports/exiv2/vcpkg.json b/ports/exiv2/vcpkg.json index a043f83bf..5ed357690 100644 --- a/ports/exiv2/vcpkg.json +++ b/ports/exiv2/vcpkg.json @@ -1,7 +1,7 @@ { "name": "exiv2", "version": "0.27.4", - "port-version": 1, + "port-version": 2, "description": "Image metadata library and tools", "homepage": "https://www.exiv2.org", "supports": "!uwp", diff --git a/ports/gdal/vcpkg-cmake-wrapper.cmake b/ports/gdal/vcpkg-cmake-wrapper.cmake index f6241e259..77e48eb4a 100644 --- a/ports/gdal/vcpkg-cmake-wrapper.cmake +++ b/ports/gdal/vcpkg-cmake-wrapper.cmake @@ -56,7 +56,7 @@ function(_gdal_add_dependency target package) endif() if(dependency) if(TARGET GDAL::GDAL) # CMake 3.14 - target_link_libraries(GDAL::GDAL INTERFACE ${dependency}) + set_property(TARGET GDAL::GDAL APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${dependency}) endif() if(NOT GDAL_LIBRARIES STREQUAL "GDAL::GDAL") set(GDAL_LIBRARIES "${GDAL_LIBRARIES};${dependency}" PARENT_SCOPE) diff --git a/ports/gdal/vcpkg.json b/ports/gdal/vcpkg.json index 8ef4de49b..2bb7b63b1 100644 --- a/ports/gdal/vcpkg.json +++ b/ports/gdal/vcpkg.json @@ -1,7 +1,7 @@ { "name": "gdal", "version-semver": "3.2.2", - "port-version": 3, + "port-version": 4, "description": "The Geographic Data Abstraction Library for reading and writing geospatial raster and vector data", "homepage": "https://gdal.org", "supports": "!arm", diff --git a/ports/libarchive/vcpkg-cmake-wrapper.cmake.in b/ports/libarchive/vcpkg-cmake-wrapper.cmake.in index e0712d3e2..81cc39e39 100644 --- a/ports/libarchive/vcpkg-cmake-wrapper.cmake.in +++ b/ports/libarchive/vcpkg-cmake-wrapper.cmake.in @@ -65,19 +65,19 @@ if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static") if(TARGET LibArchive::LibArchive) if(@ENABLE_BZip2@) - target_link_libraries(LibArchive::LibArchive INTERFACE BZip2::BZip2) + set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES BZip2::BZip2) endif() if(@ENABLE_ZLIB@) - target_link_libraries(LibArchive::LibArchive INTERFACE ZLIB::ZLIB) + set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES ZLIB::ZLIB) endif() if(@ENABLE_LIBXML2@) - target_link_libraries(LibArchive::LibArchive INTERFACE LibXml2::LibXml2) + set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES LibXml2::LibXml2) endif() if(@ENABLE_LZ4@) - target_link_libraries(LibArchive::LibArchive INTERFACE lz4::lz4) + set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES lz4::lz4) endif() if(@ENABLE_LZMA@) - target_link_libraries(LibArchive::LibArchive INTERFACE LibLZMA::LibLZMA) + set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES LibLZMA::LibLZMA) endif() if(@ENABLE_LZO@) if(LZO_LIBRARY_RELEASE) @@ -89,10 +89,10 @@ if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static") set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${interface_lib}) endif() if(@ENABLE_ZSTD@) - target_link_libraries(LibArchive::LibArchive INTERFACE zstd::libzstd_static) + set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES zstd::libzstd_static) endif() if(@ENABLE_OPENSSL@) - target_link_libraries(LibArchive::LibArchive INTERFACE OpenSSL::Crypto) + set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES OpenSSL::Crypto) endif() endif() endif() diff --git a/ports/libarchive/vcpkg.json b/ports/libarchive/vcpkg.json index 3d95284a4..53650dc2d 100644 --- a/ports/libarchive/vcpkg.json +++ b/ports/libarchive/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libarchive", "version-semver": "3.4.3", - "port-version": 7, + "port-version": 8, "description": "Library for reading and writing streaming archives", "homepage": "https://github.com/libarchive/libarchive", "supports": "!uwp", diff --git a/ports/libiconv/CONTROL b/ports/libiconv/CONTROL deleted file mode 100644 index 2e69c031b..000000000 --- a/ports/libiconv/CONTROL +++ /dev/null @@ -1,5 +0,0 @@ -Source: libiconv -Version: 1.16 -Port-Version: 10 -Homepage: https://www.gnu.org/software/libiconv/ -Description: GNU Unicode text conversion diff --git a/ports/libiconv/vcpkg.json b/ports/libiconv/vcpkg.json new file mode 100644 index 000000000..2cafb0218 --- /dev/null +++ b/ports/libiconv/vcpkg.json @@ -0,0 +1,7 @@ +{ + "name": "libiconv", + "version": "1.16", + "port-version": 11, + "description": "GNU Unicode text conversion", + "homepage": "https://www.gnu.org/software/libiconv/" +} diff --git a/ports/libuv/CONTROL b/ports/libuv/CONTROL deleted file mode 100644 index 27938a4ad..000000000 --- a/ports/libuv/CONTROL +++ /dev/null @@ -1,4 +0,0 @@ -Source: libuv -Version: 1.41.0 -Homepage: https://github.com/libuv/libuv -Description: libuv is a multi-platform support library with a focus on asynchronous I/O. diff --git a/ports/libuv/vcpkg-cmake-wrapper.cmake b/ports/libuv/vcpkg-cmake-wrapper.cmake index 10b6e6498..d95350a6d 100644 --- a/ports/libuv/vcpkg-cmake-wrapper.cmake +++ b/ports/libuv/vcpkg-cmake-wrapper.cmake @@ -3,14 +3,14 @@ _find_package(${ARGS}) if(WIN32) list(APPEND LibUV_LIBRARIES iphlpapi psapi shell32 userenv ws2_32) if(TARGET LibUV::LibUV) - target_link_libraries(LibUV::LibUV INTERFACE iphlpapi psapi shell32 userenv ws2_32) + set_property(TARGET LibUV::LibUV APPEND PROPERTY INTERFACE_LINK_LIBRARIES iphlpapi psapi shell32 userenv ws2_32) endif() endif() include(CMakeFindDependencyMacro) find_dependency(Threads) list(APPEND LibUV_LIBRARIES Threads::Threads) if(TARGET LibUV::LibUV) - target_link_libraries(LibUV::LibUV INTERFACE Threads::Threads) + set_property(TARGET LibUV::LibUV APPEND PROPERTY INTERFACE_LINK_LIBRARIES Threads::Threads) endif() diff --git a/ports/libuv/vcpkg.json b/ports/libuv/vcpkg.json new file mode 100644 index 000000000..d43b82c54 --- /dev/null +++ b/ports/libuv/vcpkg.json @@ -0,0 +1,7 @@ +{ + "name": "libuv", + "version": "1.41.0", + "port-version": 1, + "description": "libuv is a multi-platform support library with a focus on asynchronous I/O.", + "homepage": "https://github.com/libuv/libuv" +} diff --git a/ports/libxml2/vcpkg-cmake-wrapper.cmake b/ports/libxml2/vcpkg-cmake-wrapper.cmake index 9287c37e6..f80be639a 100644 --- a/ports/libxml2/vcpkg-cmake-wrapper.cmake +++ b/ports/libxml2/vcpkg-cmake-wrapper.cmake @@ -31,18 +31,18 @@ if(LibXml2_FOUND AND "@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static" AND NOT ${ARGV0 if(CMAKE_SYSTEM_NAME STREQUAL "Linux") list(APPEND LIBXML2_LIBRARIES m) if(TARGET LibXml2::LibXml2) - target_link_libraries(LibXml2::LibXml2 INTERFACE "m") + set_property(TARGET LibXml2::LibXml2 APPEND PROPERTY INTERFACE_LINK_LIBRARIES "m") endif() elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") list(APPEND LIBXML2_LIBRARIES ws2_32) if(TARGET LibXml2::LibXml2) - target_link_libraries(LibXml2::LibXml2 INTERFACE "ws2_32") + set_property(TARGET LibXml2::LibXml2 APPEND PROPERTY INTERFACE_LINK_LIBRARIES "ws2_32") endif() endif() if(TARGET LibXml2::LibXml2) - target_link_libraries(LibXml2::LibXml2 INTERFACE "liblzma::liblzma" "ZLIB::ZLIB") + set_property(TARGET LibXml2::LibXml2 APPEND PROPERTY INTERFACE_LINK_LIBRARIES "liblzma::liblzma" "ZLIB::ZLIB") if(TARGET Iconv::Iconv) - target_link_libraries(LibXml2::LibXml2 INTERFACE "Iconv::Iconv") + set_property(TARGET LibXml2::LibXml2 APPEND PROPERTY INTERFACE_LINK_LIBRARIES "Iconv::Iconv") endif() endif() cmake_policy(POP) diff --git a/ports/libxml2/vcpkg.json b/ports/libxml2/vcpkg.json index 228b43572..68cb1e3eb 100644 --- a/ports/libxml2/vcpkg.json +++ b/ports/libxml2/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libxml2", "version-semver": "2.9.12", - "port-version": 3, + "port-version": 4, "description": "Libxml2 is the XML C parser and toolkit developed for the Gnome project (but usable outside of the Gnome platform).", "homepage": "https://xmlsoft.org/", "dependencies": [ -- cgit v1.2.3