mirror of https://github.com/microsoft/vcpkg.git
[libarchive] update to 3.8.8 (#52584)
This commit is contained in:
parent
32017522e1
commit
8babd6f09b
|
|
@ -1,17 +1,8 @@
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 38664d2..d0882b2 100644
|
||||
index 85d0813..2b6397b 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -439,6 +439,8 @@ IF(0)
|
||||
ENDIF(DEFINED __GNUWIN32PATH AND EXISTS "${__GNUWIN32PATH}")
|
||||
|
||||
SET(ADDITIONAL_LIBS "")
|
||||
+SET(LIBARCHIVE_LIBS_PRIVATE "") # additional libs for which the pc module is unknown
|
||||
+SET(LIBSREQUIRED "") # pc modules for additonal libs
|
||||
#
|
||||
# Find ZLIB
|
||||
#
|
||||
@@ -455,6 +457,7 @@ IF(ZLIB_FOUND)
|
||||
@@ -504,6 +504,7 @@ IF(ZLIB_FOUND)
|
||||
SET(HAVE_ZLIB_H 1)
|
||||
INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR})
|
||||
LIST(APPEND ADDITIONAL_LIBS ${ZLIB_LIBRARIES})
|
||||
|
|
@ -19,7 +10,7 @@ index 38664d2..d0882b2 100644
|
|||
IF(WIN32 AND NOT CYGWIN)
|
||||
#
|
||||
# Test if ZLIB_WINAPI macro is needed to use.
|
||||
@@ -494,6 +497,7 @@ IF(BZIP2_FOUND)
|
||||
@@ -543,6 +544,7 @@ IF(BZIP2_FOUND)
|
||||
SET(HAVE_BZLIB_H 1)
|
||||
INCLUDE_DIRECTORIES(${BZIP2_INCLUDE_DIR})
|
||||
LIST(APPEND ADDITIONAL_LIBS ${BZIP2_LIBRARIES})
|
||||
|
|
@ -27,7 +18,7 @@ index 38664d2..d0882b2 100644
|
|||
# Test if a macro is needed for the library.
|
||||
TRY_MACRO_FOR_LIBRARY(
|
||||
"${BZIP2_INCLUDE_DIR}" "${BZIP2_LIBRARIES}"
|
||||
@@ -522,6 +526,8 @@ ENDIF()
|
||||
@@ -571,6 +573,8 @@ ENDIF()
|
||||
IF(LIBLZMA_FOUND)
|
||||
SET(HAVE_LIBLZMA 1)
|
||||
SET(HAVE_LZMA_H 1)
|
||||
|
|
@ -36,7 +27,7 @@ index 38664d2..d0882b2 100644
|
|||
CMAKE_PUSH_CHECK_STATE()
|
||||
SET(CMAKE_REQUIRED_INCLUDES ${LIBLZMA_INCLUDE_DIR})
|
||||
SET(CMAKE_REQUIRED_LIBRARIES ${LIBLZMA_LIBRARIES})
|
||||
@@ -569,6 +575,7 @@ IF(LZO2_FOUND)
|
||||
@@ -618,6 +622,7 @@ IF(LZO2_FOUND)
|
||||
SET(HAVE_LZO_LZO1X_H 1)
|
||||
INCLUDE_DIRECTORIES(${LZO2_INCLUDE_DIR})
|
||||
LIST(APPEND ADDITIONAL_LIBS ${LZO2_LIBRARY})
|
||||
|
|
@ -44,7 +35,7 @@ index 38664d2..d0882b2 100644
|
|||
#
|
||||
# TODO: test for static library.
|
||||
#
|
||||
@@ -598,6 +605,7 @@ IF(LIBB2_FOUND)
|
||||
@@ -647,6 +652,7 @@ IF(LIBB2_FOUND)
|
||||
SET(ARCHIVE_BLAKE2 FALSE)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${LIBB2_LIBRARY})
|
||||
INCLUDE_DIRECTORIES(${LIBB2_INCLUDE_DIR})
|
||||
|
|
@ -52,7 +43,7 @@ index 38664d2..d0882b2 100644
|
|||
CMAKE_PUSH_CHECK_STATE()
|
||||
SET(CMAKE_REQUIRED_LIBRARIES ${LIBB2_LIBRARY})
|
||||
SET(CMAKE_REQUIRED_INCLUDES ${LIBB2_INCLUDE_DIR})
|
||||
@@ -615,6 +623,8 @@ ENDIF(LIBB2_FOUND)
|
||||
@@ -664,6 +670,8 @@ ENDIF(LIBB2_FOUND)
|
||||
# Find LZ4
|
||||
#
|
||||
IF(ENABLE_LZ4)
|
||||
|
|
@ -61,7 +52,7 @@ index 38664d2..d0882b2 100644
|
|||
IF (LZ4_INCLUDE_DIR)
|
||||
# Already in cache, be silent
|
||||
SET(LZ4_FIND_QUIETLY TRUE)
|
||||
@@ -630,6 +640,10 @@ ENDIF(ENABLE_LZ4)
|
||||
@@ -679,6 +687,10 @@ ENDIF(ENABLE_LZ4)
|
||||
IF(LZ4_FOUND)
|
||||
SET(HAVE_LIBLZ4 1)
|
||||
SET(HAVE_LZ4_H 1)
|
||||
|
|
@ -72,7 +63,7 @@ index 38664d2..d0882b2 100644
|
|||
CMAKE_PUSH_CHECK_STATE() # Save the state of the variables
|
||||
SET(CMAKE_REQUIRED_INCLUDES ${LZ4_INCLUDE_DIR})
|
||||
CHECK_INCLUDE_FILES("lz4hc.h" HAVE_LZ4HC_H)
|
||||
@@ -646,6 +660,8 @@ MARK_AS_ADVANCED(CLEAR LZ4_LIBRARY)
|
||||
@@ -695,6 +707,8 @@ MARK_AS_ADVANCED(CLEAR LZ4_LIBRARY)
|
||||
# Find Zstd
|
||||
#
|
||||
IF(ENABLE_ZSTD)
|
||||
|
|
@ -81,7 +72,7 @@ index 38664d2..d0882b2 100644
|
|||
IF (ZSTD_INCLUDE_DIR)
|
||||
# Already in cache, be silent
|
||||
SET(ZSTD_FIND_QUIETLY TRUE)
|
||||
@@ -665,6 +681,11 @@ ELSE(ENABLE_ZSTD)
|
||||
@@ -714,6 +728,11 @@ ELSE(ENABLE_ZSTD)
|
||||
ENDIF(ENABLE_ZSTD)
|
||||
IF(ZSTD_FOUND)
|
||||
SET(HAVE_ZSTD_H 1)
|
||||
|
|
@ -93,31 +84,31 @@ index 38664d2..d0882b2 100644
|
|||
INCLUDE_DIRECTORIES(${ZSTD_INCLUDE_DIR})
|
||||
LIST(APPEND ADDITIONAL_LIBS ${ZSTD_LIBRARY})
|
||||
CMAKE_PUSH_CHECK_STATE()
|
||||
@@ -774,6 +795,7 @@ IF(ENABLE_CNG)
|
||||
@@ -826,6 +845,7 @@ IF(ENABLE_CNG)
|
||||
LA_CHECK_INCLUDE_FILE("bcrypt.h" HAVE_BCRYPT_H)
|
||||
IF(HAVE_BCRYPT_H)
|
||||
LIST(APPEND ADDITIONAL_LIBS "bcrypt")
|
||||
+ LIST(APPEND LIBARCHIVE_LIBS_PRIVATE "bcrypt")
|
||||
ENDIF(HAVE_BCRYPT_H)
|
||||
ELSE(ENABLE_CNG)
|
||||
UNSET(HAVE_BCRYPT_H CACHE)
|
||||
@@ -805,6 +827,7 @@ IF(ENABLE_MBEDTLS)
|
||||
# bcrypt supports these algorithms on all available versions
|
||||
SET(ARCHIVE_CRYPTO_MD5 1)
|
||||
SET(ARCHIVE_CRYPTO_MD5_WIN 1)
|
||||
@@ -867,6 +887,7 @@ IF(ENABLE_MBEDTLS)
|
||||
IF(MBEDTLS_FOUND)
|
||||
SET(HAVE_LIBMBEDCRYPTO 1)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${MBEDCRYPTO_LIBRARY})
|
||||
+ LIST(APPEND LIBARCHIVE_LIBS_PRIVATE ${MBEDCRYPTO_LIBRARY})
|
||||
INCLUDE_DIRECTORIES(${MBEDTLS_INCLUDE_DIRS})
|
||||
|
||||
LIST(APPEND CMAKE_REQUIRED_INCLUDES ${MBEDTLS_INCLUDE_DIRS})
|
||||
@@ -825,6 +848,7 @@ IF(ENABLE_NETTLE)
|
||||
CMAKE_PUSH_CHECK_STATE()
|
||||
@@ -890,6 +911,7 @@ IF(ENABLE_NETTLE)
|
||||
IF(NETTLE_FOUND)
|
||||
SET(HAVE_LIBNETTLE 1)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${NETTLE_LIBRARIES})
|
||||
+ STRING(APPEND LIBSREQUIRED " nettle")
|
||||
INCLUDE_DIRECTORIES(${NETTLE_INCLUDE_DIR})
|
||||
|
||||
LIST(APPEND CMAKE_REQUIRED_INCLUDES ${NETTLE_INCLUDE_DIR})
|
||||
@@ -848,8 +872,8 @@ IF(ENABLE_OPENSSL AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
CMAKE_PUSH_CHECK_STATE()
|
||||
@@ -916,8 +938,8 @@ IF(ENABLE_OPENSSL AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
FIND_PACKAGE(OpenSSL)
|
||||
IF(OPENSSL_FOUND)
|
||||
SET(HAVE_LIBCRYPTO 1)
|
||||
|
|
@ -125,10 +116,10 @@ index 38664d2..d0882b2 100644
|
|||
- LIST(APPEND ADDITIONAL_LIBS ${OPENSSL_CRYPTO_LIBRARY})
|
||||
+ LIST(APPEND ADDITIONAL_LIBS OpenSSL::Crypto)
|
||||
+ STRING(APPEND LIBSREQUIRED " libcrypto")
|
||||
|
||||
CMAKE_PUSH_CHECK_STATE()
|
||||
SET(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY})
|
||||
SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR})
|
||||
LA_CHECK_INCLUDE_FILE("openssl/evp.h" HAVE_OPENSSL_EVP_H)
|
||||
@@ -868,6 +892,7 @@ IF(NOT OPENSSL_FOUND)
|
||||
@@ -940,6 +962,7 @@ IF(NOT OPENSSL_FOUND)
|
||||
SET(CMAKE_REQUIRED_LIBRARIES "md")
|
||||
FIND_LIBRARY(LIBMD_LIBRARY NAMES md)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${LIBMD_LIBRARY})
|
||||
|
|
@ -136,16 +127,16 @@ index 38664d2..d0882b2 100644
|
|||
CMAKE_POP_CHECK_STATE() # Restore the state of the variables
|
||||
ENDIF(LIBMD_FOUND)
|
||||
ENDIF(NOT OPENSSL_FOUND)
|
||||
@@ -981,7 +1006,7 @@ main(int argc, char **argv)
|
||||
@@ -1057,7 +1080,7 @@ main(int argc, char **argv)
|
||||
IF ("${IMPLEMENTATION}" MATCHES "^OPENSSL$" AND OPENSSL_FOUND)
|
||||
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
|
||||
LIST(APPEND ADDITIONAL_LIBS ${OPENSSL_LIBRARIES})
|
||||
- LIST(REMOVE_DUPLICATES ADDITIONAL_LIBS)
|
||||
+ STRING(APPEND LIBSREQUIRED " libssl")
|
||||
+ STRING(APPEND LIBSREQUIRED " libssl")
|
||||
ENDIF ("${IMPLEMENTATION}" MATCHES "^OPENSSL$" AND OPENSSL_FOUND)
|
||||
ENDIF (ARCHIVE_CRYPTO_${ALGORITHM}_${IMPLEMENTATION})
|
||||
ENDIF(NOT ARCHIVE_CRYPTO_${ALGORITHM})
|
||||
@@ -1155,6 +1180,7 @@ IF(ENABLE_ICONV)
|
||||
@@ -1152,6 +1175,7 @@ IF(ENABLE_ICONV)
|
||||
IF (HAVE_ICONV)
|
||||
SET(HAVE_LIBICONV 1)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${LIBICONV_PATH})
|
||||
|
|
@ -153,7 +144,7 @@ index 38664d2..d0882b2 100644
|
|||
ENDIF(HAVE_ICONV)
|
||||
ENDIF(NOT HAVE_ICONV AND LIBICONV_PATH)
|
||||
ENDIF(ICONV_INCLUDE_DIR)
|
||||
@@ -1188,6 +1214,7 @@ IF(ENABLE_ICONV)
|
||||
@@ -1185,6 +1209,7 @@ IF(ENABLE_ICONV)
|
||||
ENDIF(WIN32 AND NOT CYGWIN)
|
||||
IF(HAVE_LOCALE_CHARSET)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${LIBCHARSET_PATH})
|
||||
|
|
@ -161,7 +152,7 @@ index 38664d2..d0882b2 100644
|
|||
ENDIF(HAVE_LOCALE_CHARSET)
|
||||
ENDIF(LIBCHARSET_PATH)
|
||||
ENDIF(LIBICONV_PATH)
|
||||
@@ -1222,6 +1249,7 @@ IF(LIBXML2_FOUND)
|
||||
@@ -1219,6 +1244,7 @@ IF(LIBXML2_FOUND)
|
||||
CMAKE_PUSH_CHECK_STATE() # Save the state of the variables
|
||||
INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
|
||||
LIST(APPEND ADDITIONAL_LIBS ${LIBXML2_LIBRARIES})
|
||||
|
|
@ -169,7 +160,7 @@ index 38664d2..d0882b2 100644
|
|||
SET(HAVE_LIBXML2 1)
|
||||
# libxml2's include files use iconv.h
|
||||
SET(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR})
|
||||
@@ -1252,6 +1280,7 @@ ELSE(LIBXML2_FOUND)
|
||||
@@ -1249,6 +1275,7 @@ ELSE(LIBXML2_FOUND)
|
||||
CMAKE_PUSH_CHECK_STATE() # Save the state of the variables
|
||||
INCLUDE_DIRECTORIES(${EXPAT_INCLUDE_DIR})
|
||||
LIST(APPEND ADDITIONAL_LIBS ${EXPAT_LIBRARIES})
|
||||
|
|
@ -177,7 +168,7 @@ index 38664d2..d0882b2 100644
|
|||
SET(HAVE_LIBEXPAT 1)
|
||||
LA_CHECK_INCLUDE_FILE("expat.h" HAVE_EXPAT_H)
|
||||
CMAKE_POP_CHECK_STATE() # Restore the state of the variables
|
||||
@@ -1272,6 +1301,7 @@ ELSE(LIBXML2_FOUND)
|
||||
@@ -1269,6 +1296,7 @@ ELSE(LIBXML2_FOUND)
|
||||
IF(HAVE_XMLLITE_H)
|
||||
SET(XMLLITE_FOUND TRUE)
|
||||
LIST(APPEND ADDITIONAL_LIBS "xmllite" "uuid")
|
||||
|
|
@ -185,7 +176,7 @@ index 38664d2..d0882b2 100644
|
|||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF(EXPAT_FOUND)
|
||||
@@ -1301,6 +1331,7 @@ IF(POSIX_REGEX_LIB MATCHES "^(AUTO|LIBC|LIBREGEX)$")
|
||||
@@ -1298,6 +1326,7 @@ IF(POSIX_REGEX_LIB MATCHES "^(AUTO|LIBC|LIBREGEX)$")
|
||||
CHECK_FUNCTION_EXISTS_GLIBC(regcomp HAVE_REGCOMP_LIBREGEX)
|
||||
IF(HAVE_REGCOMP_LIBREGEX)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${REGEX_LIBRARY})
|
||||
|
|
@ -193,7 +184,7 @@ index 38664d2..d0882b2 100644
|
|||
#
|
||||
# If regex.h is not found, retry looking for regex.h at
|
||||
# REGEX_INCLUDE_DIR
|
||||
@@ -1350,6 +1381,7 @@ IF(NOT FOUND_POSIX_REGEX_LIB AND POSIX_REGEX_LIB MATCHES "^(AUTO|LIBPCREPOSIX)$"
|
||||
@@ -1347,6 +1376,7 @@ IF(NOT FOUND_POSIX_REGEX_LIB AND POSIX_REGEX_LIB MATCHES "^(AUTO|LIBPCREPOSIX)$"
|
||||
IF(PCREPOSIX_FOUND)
|
||||
INCLUDE_DIRECTORIES(${PCRE_INCLUDE_DIR})
|
||||
LIST(APPEND ADDITIONAL_LIBS ${PCREPOSIX_LIBRARIES})
|
||||
|
|
@ -201,7 +192,7 @@ index 38664d2..d0882b2 100644
|
|||
# Test if a macro is needed for the library.
|
||||
TRY_MACRO_FOR_LIBRARY(
|
||||
"${PCRE_INCLUDE_DIR}" "${PCREPOSIX_LIBRARIES}"
|
||||
@@ -1361,6 +1393,7 @@ IF(NOT FOUND_POSIX_REGEX_LIB AND POSIX_REGEX_LIB MATCHES "^(AUTO|LIBPCREPOSIX)$"
|
||||
@@ -1358,6 +1388,7 @@ IF(NOT FOUND_POSIX_REGEX_LIB AND POSIX_REGEX_LIB MATCHES "^(AUTO|LIBPCREPOSIX)$"
|
||||
ELSEIF(NOT WITHOUT_PCRE_STATIC AND NOT PCRE_STATIC AND PCRE_FOUND)
|
||||
# Determine if pcre static libraries are to be used.
|
||||
LIST(APPEND ADDITIONAL_LIBS ${PCRE_LIBRARIES})
|
||||
|
|
@ -209,7 +200,7 @@ index 38664d2..d0882b2 100644
|
|||
SET(TMP_LIBRARIES ${PCREPOSIX_LIBRARIES} ${PCRE_LIBRARIES})
|
||||
MESSAGE(STATUS "trying again with -lpcre included")
|
||||
TRY_MACRO_FOR_LIBRARY(
|
||||
@@ -1376,6 +1409,7 @@ IF(NOT FOUND_POSIX_REGEX_LIB AND POSIX_REGEX_LIB MATCHES "^(AUTO|LIBPCREPOSIX)$"
|
||||
@@ -1373,6 +1404,7 @@ IF(NOT FOUND_POSIX_REGEX_LIB AND POSIX_REGEX_LIB MATCHES "^(AUTO|LIBPCREPOSIX)$"
|
||||
# ___chkstk_ms.
|
||||
MESSAGE(STATUS "Visual Studio build detected, trying again with -lgcc included")
|
||||
LIST(APPEND ADDITIONAL_LIBS ${LIBGCC_LIBRARIES})
|
||||
|
|
@ -217,7 +208,7 @@ index 38664d2..d0882b2 100644
|
|||
SET(TMP_LIBRARIES ${PCREPOSIX_LIBRARIES} ${PCRE_LIBRARIES} ${LIBGCC_LIBRARIES})
|
||||
TRY_MACRO_FOR_LIBRARY(
|
||||
"${PCRE_INCLUDE_DIR}" "${TMP_LIBRARIES}"
|
||||
@@ -1954,6 +1988,7 @@ IF(ENABLE_ACL)
|
||||
@@ -1952,6 +1984,7 @@ IF(ENABLE_ACL)
|
||||
SET(CMAKE_REQUIRED_LIBRARIES "acl")
|
||||
FIND_LIBRARY(ACL_LIBRARY NAMES acl)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${ACL_LIBRARY})
|
||||
|
|
@ -225,7 +216,7 @@ index 38664d2..d0882b2 100644
|
|||
pkg_check_modules(LIBACL libacl)
|
||||
IF(LIBACL_VERSION)
|
||||
SET(LIBACL_PKGCONFIG_VERSION ${LIBACL_VERSION})
|
||||
@@ -2099,6 +2134,7 @@ int main(void) { return ACL_SYNCHRONIZE; }" HAVE_DECL_ACL_SYNCHRONIZE)
|
||||
@@ -2097,6 +2130,7 @@ int main(void) { return ACL_SYNCHRONIZE; }" HAVE_DECL_ACL_SYNCHRONIZE)
|
||||
SET(CMAKE_REQUIRED_LIBRARIES "richacl")
|
||||
FIND_LIBRARY(RICHACL_LIBRARY NAMES richacl)
|
||||
LIST(APPEND ADDITIONAL_LIBS ${RICHACL_LIBRARY})
|
||||
|
|
@ -234,7 +225,7 @@ index 38664d2..d0882b2 100644
|
|||
IF(LIBRICHACL_VERSION)
|
||||
SET(LIBRICHACL_PKGCONFIG_VERSION ${LIBRICHACL_VERSION})
|
||||
diff --git a/build/cmake/CreatePkgConfigFile.cmake b/build/cmake/CreatePkgConfigFile.cmake
|
||||
index bc5a43f..422b83b 100644
|
||||
index 50caa5e..9be3364 100644
|
||||
--- a/build/cmake/CreatePkgConfigFile.cmake
|
||||
+++ b/build/cmake/CreatePkgConfigFile.cmake
|
||||
@@ -8,7 +8,7 @@ SET(libdir \${exec_prefix}/lib)
|
||||
|
|
|
|||
|
|
@ -1,108 +1,116 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO libarchive/libarchive
|
||||
REF "v${VERSION}"
|
||||
SHA512 de485dbca636803fce6720dede7d0a6c3315cb209489c94167dd9388ebe56ba8819d3118045308f05b935c954950202d0adb0485bc074bc04ca8c47877f1fe60
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix-buildsystem.patch
|
||||
fix-deps.patch
|
||||
)
|
||||
|
||||
if("xar" IN_LIST FEATURES)
|
||||
# Cf. https://github.com/libarchive/libarchive/pull/2388:
|
||||
# xmllite is available since Windows XP, but mingw-w64 added it with delay.
|
||||
if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
|
||||
list(APPEND FEATURES "xar/xmllite")
|
||||
else()
|
||||
list(APPEND FEATURES "xar/libxml2")
|
||||
endif()
|
||||
endif()
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||
FEATURES
|
||||
bzip2 ENABLE_BZip2
|
||||
bzip2 CMAKE_REQUIRE_FIND_PACKAGE_BZip2
|
||||
lz4 ENABLE_LZ4
|
||||
lz4 CMAKE_REQUIRE_FIND_PACKAGE_lz4
|
||||
lzma ENABLE_LZMA
|
||||
lzma CMAKE_REQUIRE_FIND_PACKAGE_LibLZMA
|
||||
lzo ENABLE_LZO
|
||||
zstd ENABLE_ZSTD
|
||||
xar/libxml2 ENABLE_LIBXML2
|
||||
xar/libxml2 CMAKE_REQUIRE_FIND_PACKAGE_LibXml2
|
||||
xar/xmllite ENABLE_WIN32_XMLLITE
|
||||
xar/xmllite HAVE_XMLLITE_H
|
||||
)
|
||||
# Default crypto backend is OpenSSL, but it is ignored for DARWIN
|
||||
set(WRAPPER_ENABLE_OPENSSL OFF)
|
||||
if(NOT "crypto" IN_LIST FEATURES)
|
||||
list(APPEND FEATURE_OPTIONS
|
||||
-DLIBMD_FOUND=FALSE
|
||||
-DENABLE_OPENSSL=OFF
|
||||
)
|
||||
elseif(VCPKG_TARGET_IS_OSX)
|
||||
list(APPEND FEATURE_OPTIONS
|
||||
-DENABLE_MBEDTLS=ON
|
||||
-DENABLE_OPENSSL=OFF
|
||||
-DCMAKE_REQUIRE_FIND_PACKAGE_MbedTLS=ON
|
||||
)
|
||||
else()
|
||||
set(WRAPPER_ENABLE_OPENSSL ON)
|
||||
list(APPEND FEATURE_OPTIONS
|
||||
-DCMAKE_REQUIRE_FIND_PACKAGE_OpenSSL=ON
|
||||
)
|
||||
endif()
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS
|
||||
${FEATURE_OPTIONS}
|
||||
-DENABLE_ZLIB=ON
|
||||
-DZLIB_WINAPI=OFF
|
||||
-DENABLE_PCREPOSIX=OFF
|
||||
-DPOSIX_REGEX_LIB=NONE
|
||||
-DENABLE_MBEDTLS=OFF
|
||||
-DENABLE_NETTLE=OFF
|
||||
-DENABLE_EXPAT=OFF
|
||||
-DENABLE_LibGCC=OFF
|
||||
-DENABLE_CNG=OFF
|
||||
-DENABLE_UNZIP=OFF
|
||||
-DENABLE_TAR=OFF
|
||||
-DENABLE_CPIO=OFF
|
||||
-DENABLE_CAT=OFF
|
||||
-DENABLE_XATTR=OFF
|
||||
-DENABLE_ACL=OFF
|
||||
-DENABLE_ICONV=OFF
|
||||
-DENABLE_LIBB2=OFF
|
||||
-DENABLE_TEST=OFF
|
||||
-DENABLE_WERROR=OFF
|
||||
MAYBE_UNUSED_VARIABLES
|
||||
CMAKE_REQUIRE_FIND_PACKAGE_BZip2
|
||||
CMAKE_REQUIRE_FIND_PACKAGE_LibLZMA
|
||||
CMAKE_REQUIRE_FIND_PACKAGE_LibXml2
|
||||
CMAKE_REQUIRE_FIND_PACKAGE_lz4
|
||||
ENABLE_LibGCC
|
||||
HAVE_XMLLITE_H
|
||||
ZLIB_WINAPI
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
vcpkg_fixup_pkgconfig()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake.in" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY)
|
||||
|
||||
file(REMOVE_RECURSE
|
||||
"${CURRENT_PACKAGES_DIR}/debug/include"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/share"
|
||||
"${CURRENT_PACKAGES_DIR}/share/man"
|
||||
)
|
||||
|
||||
foreach(header "include/archive.h" "include/archive_entry.h")
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/${header}" "(!defined LIBARCHIVE_STATIC)" "0")
|
||||
endforeach()
|
||||
|
||||
file(INSTALL "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
||||
file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO libarchive/libarchive
|
||||
REF "v${VERSION}"
|
||||
SHA512 d3ef539a45b0b1bcc4f9012ffe70b78ae2a1852bef7af515e0bb0bd88353a1c70e6db38ab855ca9f5f9420d4b4072e51e36d69bf656bbf9342122ef845a67f94
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix-buildsystem.patch
|
||||
fix-deps.patch
|
||||
)
|
||||
|
||||
if("xar" IN_LIST FEATURES)
|
||||
# Cf. https://github.com/libarchive/libarchive/pull/2388:
|
||||
# xmllite is available since Windows XP, but mingw-w64 added it with delay.
|
||||
if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
|
||||
list(APPEND FEATURES "xar/xmllite")
|
||||
else()
|
||||
list(APPEND FEATURES "xar/libxml2")
|
||||
endif()
|
||||
endif()
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||
FEATURES
|
||||
bzip2 ENABLE_BZip2
|
||||
bzip2 CMAKE_REQUIRE_FIND_PACKAGE_BZip2
|
||||
lz4 ENABLE_LZ4
|
||||
lz4 CMAKE_REQUIRE_FIND_PACKAGE_lz4
|
||||
lzma ENABLE_LZMA
|
||||
lzma CMAKE_REQUIRE_FIND_PACKAGE_LibLZMA
|
||||
lzo ENABLE_LZO
|
||||
zstd ENABLE_ZSTD
|
||||
xar/libxml2 ENABLE_LIBXML2
|
||||
xar/libxml2 CMAKE_REQUIRE_FIND_PACKAGE_LibXml2
|
||||
xar/xmllite ENABLE_WIN32_XMLLITE
|
||||
xar/xmllite HAVE_XMLLITE_H
|
||||
)
|
||||
# Default crypto backend is OpenSSL, but it is ignored for DARWIN
|
||||
set(WRAPPER_ENABLE_OPENSSL OFF)
|
||||
if(NOT "crypto" IN_LIST FEATURES)
|
||||
list(APPEND FEATURE_OPTIONS
|
||||
-DLIBMD_FOUND=FALSE
|
||||
-DENABLE_OPENSSL=OFF
|
||||
)
|
||||
elseif(VCPKG_TARGET_IS_OSX)
|
||||
list(APPEND FEATURE_OPTIONS
|
||||
-DENABLE_MBEDTLS=ON
|
||||
-DENABLE_OPENSSL=OFF
|
||||
-DCMAKE_REQUIRE_FIND_PACKAGE_MbedTLS=ON
|
||||
)
|
||||
else()
|
||||
set(WRAPPER_ENABLE_OPENSSL ON)
|
||||
list(APPEND FEATURE_OPTIONS
|
||||
-DCMAKE_REQUIRE_FIND_PACKAGE_OpenSSL=ON
|
||||
)
|
||||
endif()
|
||||
|
||||
# archive_random.c and archive_util.c always call BCrypt* on Windows, bcrypt must be linked.
|
||||
# ref. https://github.com/libarchive/libarchive/issues/3375
|
||||
if(VCPKG_TARGET_IS_WINDOWS)
|
||||
set(ENABLE_CNG ON)
|
||||
else()
|
||||
set(ENABLE_CNG OFF)
|
||||
endif()
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS
|
||||
${FEATURE_OPTIONS}
|
||||
-DENABLE_ZLIB=ON
|
||||
-DZLIB_WINAPI=OFF
|
||||
-DENABLE_PCREPOSIX=OFF
|
||||
-DPOSIX_REGEX_LIB=NONE
|
||||
-DENABLE_MBEDTLS=OFF
|
||||
-DENABLE_NETTLE=OFF
|
||||
-DENABLE_EXPAT=OFF
|
||||
-DENABLE_LibGCC=OFF
|
||||
-DENABLE_CNG=${ENABLE_CNG}
|
||||
-DENABLE_UNZIP=OFF
|
||||
-DENABLE_TAR=OFF
|
||||
-DENABLE_CPIO=OFF
|
||||
-DENABLE_CAT=OFF
|
||||
-DENABLE_XATTR=OFF
|
||||
-DENABLE_ACL=OFF
|
||||
-DENABLE_ICONV=OFF
|
||||
-DENABLE_LIBB2=OFF
|
||||
-DENABLE_TEST=OFF
|
||||
-DENABLE_WERROR=OFF
|
||||
MAYBE_UNUSED_VARIABLES
|
||||
CMAKE_REQUIRE_FIND_PACKAGE_BZip2
|
||||
CMAKE_REQUIRE_FIND_PACKAGE_LibLZMA
|
||||
CMAKE_REQUIRE_FIND_PACKAGE_LibXml2
|
||||
CMAKE_REQUIRE_FIND_PACKAGE_lz4
|
||||
ENABLE_LibGCC
|
||||
HAVE_XMLLITE_H
|
||||
ZLIB_WINAPI
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
vcpkg_fixup_pkgconfig()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake.in" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY)
|
||||
|
||||
file(REMOVE_RECURSE
|
||||
"${CURRENT_PACKAGES_DIR}/debug/include"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/share"
|
||||
"${CURRENT_PACKAGES_DIR}/share/man"
|
||||
)
|
||||
|
||||
foreach(header "include/archive.h" "include/archive_entry.h")
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/${header}" "(!defined LIBARCHIVE_STATIC)" "0")
|
||||
endforeach()
|
||||
|
||||
file(INSTALL "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
||||
file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
libarchive is compatible with the CMake Find Module:
|
||||
|
||||
find_package(LibArchive REQUIRED)
|
||||
target_link_libraries(main PRIVATE LibArchive::LibArchive) # since CMake 3.17
|
||||
|
||||
libarchive provides pkg-config modules:
|
||||
|
||||
# library that can create and read several streaming archive formats
|
||||
libarchive
|
||||
libarchive is compatible with the CMake Find Module:
|
||||
|
||||
find_package(LibArchive REQUIRED)
|
||||
target_link_libraries(main PRIVATE LibArchive::LibArchive) # since CMake 3.17
|
||||
|
||||
libarchive provides pkg-config modules:
|
||||
|
||||
# library that can create and read several streaming archive formats
|
||||
libarchive
|
||||
|
|
|
|||
|
|
@ -1,72 +1,72 @@
|
|||
cmake_policy(PUSH)
|
||||
cmake_policy(SET CMP0012 NEW)
|
||||
cmake_policy(SET CMP0057 NEW)
|
||||
set(z_vcpkg_libarchive_args "")
|
||||
if("REQUIRED" IN_LIST ARGS)
|
||||
list(APPEND z_vcpkg_libarchive_args "REQUIRED")
|
||||
endif()
|
||||
if("QUIET" IN_LIST ARGS)
|
||||
list(APPEND z_vcpkg_libarchive_args "QUIET")
|
||||
endif()
|
||||
|
||||
_find_package(${ARGS})
|
||||
|
||||
if(LibArchive_FOUND AND "@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static")
|
||||
set(z_vcpkg_libarchive_libs "")
|
||||
find_package(ZLIB ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs ZLIB::ZLIB)
|
||||
if("@ENABLE_BZip2@")
|
||||
find_package(BZip2 ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs BZip2::BZip2)
|
||||
endif()
|
||||
if("@ENABLE_LIBXML2@")
|
||||
find_package(LibXml2 ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs LibXml2::LibXml2)
|
||||
elseif("@ENABLE_WIN32_XMLLITE@")
|
||||
list(APPEND z_vcpkg_libarchive_libs xmllite)
|
||||
endif()
|
||||
if("@ENABLE_LZ4@")
|
||||
find_package(lz4 CONFIG ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs lz4::lz4)
|
||||
endif()
|
||||
if("@ENABLE_LZMA@")
|
||||
find_package(LibLZMA ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs LibLZMA::LibLZMA)
|
||||
endif()
|
||||
if("@ENABLE_LZO@")
|
||||
include(SelectLibraryConfigurations)
|
||||
find_library(Z_VCPKG_LZO_LIBRARY_DEBUG NAMES lzo2d lzo2 NAMES_PER_DIR PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib" NO_DEFAULT_PATH)
|
||||
find_library(Z_VCPKG_LZO_LIBRARY_RELEASE NAMES lzo2 NAMES_PER_DIR PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib" NO_DEFAULT_PATH)
|
||||
select_library_configurations(Z_VCPKG_LZO)
|
||||
if(Z_VCPKG_LZO_LIBRARY)
|
||||
list(APPEND z_vcpkg_libarchive_libs ${Z_VCPKG_LZO_LIBRARY})
|
||||
else()
|
||||
set(LibArchive_FOUND FALSE)
|
||||
endif()
|
||||
endif()
|
||||
if("@ENABLE_ZSTD@")
|
||||
find_package(zstd ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs zstd::libzstd)
|
||||
endif()
|
||||
if("@WRAPPER_ENABLE_OPENSSL@")
|
||||
find_package(OpenSSL ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs OpenSSL::Crypto)
|
||||
endif()
|
||||
|
||||
if(TARGET LibArchive::LibArchive)
|
||||
set(LibArchive_LIBRARIES LibArchive::LibArchive)
|
||||
if(Z_VCPKG_LZO_LIBRARY AND Z_VCPKG_LZO_LIBRARY_DEBUG)
|
||||
list(REMOVE_ITEM z_vcpkg_libarchive_libs ${Z_VCPKG_LZO_LIBRARY})
|
||||
list(APPEND z_vcpkg_libarchive_libs
|
||||
"\$<\$<NOT:\$<CONFIG:DEBUG>>:${Z_VCPKG_LZO_LIBRARY_RELEASE}>"
|
||||
"\$<\$<CONFIG:DEBUG>:${Z_VCPKG_LZO_LIBRARY_DEBUG}>"
|
||||
)
|
||||
endif()
|
||||
set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${z_vcpkg_libarchive_libs})
|
||||
else()
|
||||
list(APPEND LibArchive_LIBRARIES ${z_vcpkg_libarchive_libs})
|
||||
endif()
|
||||
unset(z_vcpkg_libarchive_libs)
|
||||
endif()
|
||||
unset(z_vcpkg_libarchive_args)
|
||||
cmake_policy(POP)
|
||||
cmake_policy(PUSH)
|
||||
cmake_policy(SET CMP0012 NEW)
|
||||
cmake_policy(SET CMP0057 NEW)
|
||||
set(z_vcpkg_libarchive_args "")
|
||||
if("REQUIRED" IN_LIST ARGS)
|
||||
list(APPEND z_vcpkg_libarchive_args "REQUIRED")
|
||||
endif()
|
||||
if("QUIET" IN_LIST ARGS)
|
||||
list(APPEND z_vcpkg_libarchive_args "QUIET")
|
||||
endif()
|
||||
|
||||
_find_package(${ARGS})
|
||||
|
||||
if(LibArchive_FOUND AND "@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static")
|
||||
set(z_vcpkg_libarchive_libs "")
|
||||
find_package(ZLIB ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs ZLIB::ZLIB)
|
||||
if("@ENABLE_BZip2@")
|
||||
find_package(BZip2 ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs BZip2::BZip2)
|
||||
endif()
|
||||
if("@ENABLE_LIBXML2@")
|
||||
find_package(LibXml2 ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs LibXml2::LibXml2)
|
||||
elseif("@ENABLE_WIN32_XMLLITE@")
|
||||
list(APPEND z_vcpkg_libarchive_libs xmllite)
|
||||
endif()
|
||||
if("@ENABLE_LZ4@")
|
||||
find_package(lz4 CONFIG ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs lz4::lz4)
|
||||
endif()
|
||||
if("@ENABLE_LZMA@")
|
||||
find_package(LibLZMA ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs LibLZMA::LibLZMA)
|
||||
endif()
|
||||
if("@ENABLE_LZO@")
|
||||
include(SelectLibraryConfigurations)
|
||||
find_library(Z_VCPKG_LZO_LIBRARY_DEBUG NAMES lzo2d lzo2 NAMES_PER_DIR PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib" NO_DEFAULT_PATH)
|
||||
find_library(Z_VCPKG_LZO_LIBRARY_RELEASE NAMES lzo2 NAMES_PER_DIR PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib" NO_DEFAULT_PATH)
|
||||
select_library_configurations(Z_VCPKG_LZO)
|
||||
if(Z_VCPKG_LZO_LIBRARY)
|
||||
list(APPEND z_vcpkg_libarchive_libs ${Z_VCPKG_LZO_LIBRARY})
|
||||
else()
|
||||
set(LibArchive_FOUND FALSE)
|
||||
endif()
|
||||
endif()
|
||||
if("@ENABLE_ZSTD@")
|
||||
find_package(zstd ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs zstd::libzstd)
|
||||
endif()
|
||||
if("@WRAPPER_ENABLE_OPENSSL@")
|
||||
find_package(OpenSSL ${z_vcpkg_libarchive_args})
|
||||
list(APPEND z_vcpkg_libarchive_libs OpenSSL::Crypto)
|
||||
endif()
|
||||
|
||||
if(TARGET LibArchive::LibArchive)
|
||||
set(LibArchive_LIBRARIES LibArchive::LibArchive)
|
||||
if(Z_VCPKG_LZO_LIBRARY AND Z_VCPKG_LZO_LIBRARY_DEBUG)
|
||||
list(REMOVE_ITEM z_vcpkg_libarchive_libs ${Z_VCPKG_LZO_LIBRARY})
|
||||
list(APPEND z_vcpkg_libarchive_libs
|
||||
"\$<\$<NOT:\$<CONFIG:DEBUG>>:${Z_VCPKG_LZO_LIBRARY_RELEASE}>"
|
||||
"\$<\$<CONFIG:DEBUG>:${Z_VCPKG_LZO_LIBRARY_DEBUG}>"
|
||||
)
|
||||
endif()
|
||||
set_property(TARGET LibArchive::LibArchive APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${z_vcpkg_libarchive_libs})
|
||||
else()
|
||||
list(APPEND LibArchive_LIBRARIES ${z_vcpkg_libarchive_libs})
|
||||
endif()
|
||||
unset(z_vcpkg_libarchive_libs)
|
||||
endif()
|
||||
unset(z_vcpkg_libarchive_args)
|
||||
cmake_policy(POP)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "libarchive",
|
||||
"version": "3.8.7",
|
||||
"version": "3.8.8",
|
||||
"description": "Library for reading and writing streaming archives",
|
||||
"homepage": "https://www.libarchive.org",
|
||||
"license": null,
|
||||
|
|
|
|||
|
|
@ -4789,7 +4789,7 @@
|
|||
"port-version": 6
|
||||
},
|
||||
"libarchive": {
|
||||
"baseline": "3.8.7",
|
||||
"baseline": "3.8.8",
|
||||
"port-version": 0
|
||||
},
|
||||
"libaribcaption": {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,10 @@
|
|||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "e713dd6d1484657c496e8685d8f0004542aa8113",
|
||||
"version": "3.8.8",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "5fa6c30380bdf44dc81d78116c3a1f01a87a86b5",
|
||||
"version": "3.8.7",
|
||||
|
|
|
|||
Loading…
Reference in New Issue