Skip to content
Merged
2 changes: 1 addition & 1 deletion ports/libarchive/CONTROL
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Source: libarchive
Version: 3.4.3
Port-Version: 1
Port-Version: 2
Homepage: https://github.com/libarchive/libarchive
Description: Library for reading and writing streaming archives
Build-Depends: zlib
Expand Down
15 changes: 11 additions & 4 deletions ports/libarchive/fix-dependencies.patch
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ index 39b5333..8164d8f 100644
ELSE(LIBLZMA_FOUND)
# LZMA not found and will not be used.
ENDIF(LIBLZMA_FOUND)
@@ -555,22 +543,14 @@ IF(ENABLE_LZ4)
@@ -555,22 +543,15 @@ IF(ENABLE_LZ4)
SET(LZ4_FIND_QUIETLY TRUE)
ENDIF (LZ4_INCLUDE_DIR)

Expand All @@ -56,6 +56,7 @@ index 39b5333..8164d8f 100644
ENDIF(ENABLE_LZ4)
-IF(LZ4_FOUND)
+IF(lz4_FOUND)
+ SET(HAVE_LZ4HC_H 1)
SET(HAVE_LIBLZ4 1)
SET(HAVE_LZ4_H 1)
- CMAKE_PUSH_CHECK_STATE() # Save the state of the variables
Expand All @@ -68,7 +69,7 @@ index 39b5333..8164d8f 100644
#
# TODO: test for static library.
#
@@ -586,25 +566,14 @@ IF(ENABLE_ZSTD)
@@ -586,25 +566,20 @@ IF(ENABLE_ZSTD)
SET(ZSTD_FIND_QUIETLY TRUE)
ENDIF (ZSTD_INCLUDE_DIR)

Expand All @@ -93,8 +94,14 @@ index 39b5333..8164d8f 100644
- # TODO: test for static library.
- #
- CMAKE_POP_CHECK_STATE()
+ LIST(APPEND ADDITIONAL_LIBS libzstd)
+ SET(CMAKE_REQUIRED_LIBRARIES libzstd)
+ SET(HAVE_LIBZSTD 1)
+ IF(TARGET zstd::libzstd_shared)
+ LIST(APPEND ADDITIONAL_LIBS zstd::libzstd_shared)
+ SET(CMAKE_REQUIRED_LIBRARIES zstd::libzstd_shared)
+ ELSE(TARGET zstd::libzstd_shared)
+ LIST(APPEND ADDITIONAL_LIBS zstd::libzstd_static)
+ SET(CMAKE_REQUIRED_LIBRARIES zstd::libzstd_static)
+ ENDIF(TARGET zstd::libzstd_shared)
ENDIF(ZSTD_FOUND)
MARK_AS_ADVANCED(CLEAR ZSTD_INCLUDE_DIR)
MARK_AS_ADVANCED(CLEAR ZSTD_LIBRARY)
Expand Down
1 change: 1 addition & 0 deletions ports/libarchive/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -83,4 +83,5 @@ foreach(HEADER ${CURRENT_PACKAGES_DIR}/include/archive.h ${CURRENT_PACKAGES_DIR}
file(WRITE ${HEADER} "${CONTENTS}")
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)
5 changes: 5 additions & 0 deletions ports/libarchive/usage
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
The package libarchive is compatible with built-in CMake targets:

find_package(libarchive REQUIRED)
target_include_directories(main PRIVATE ${LibArchive_INCLUDE_DIRS})
target_link_libraries(main PRIVATE ${LibArchive_LIBRARIES})
14 changes: 6 additions & 8 deletions ports/libarchive/vcpkg-cmake-wrapper.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -32,14 +32,12 @@ if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static")
endif()
endif()
if(@ENABLE_ZSTD@)
find_library(ZSTD_LIBRARY_DEBUG NAMES zstdd zstd NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug" NO_DEFAULT_PATH)
find_library(ZSTD_LIBRARY_RELEASE NAMES zstd NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" NO_DEFAULT_PATH)
if(ZSTD_LIBRARY_RELEASE)
list(APPEND LibArchive_LIBRARIES optimized ${ZSTD_LIBRARY_RELEASE})
endif()
if(ZSTD_LIBRARY_DEBUG)
list(APPEND LibArchive_LIBRARIES debug ${ZSTD_LIBRARY_DEBUG})
endif()
find_package(zstd CONFIG REQUIRED)
if(TARGET zstd::libzstd_shared)
list(APPEND LibArchive_LIBRARIES zstd::libzstd_shared)
else(TARGET zstd::libzstd_shared)
list(APPEND LibArchive_LIBRARIES zstd::libzstd_static)
endif(TARGET zstd::libzstd_shared)
endif()
if(@ENABLE_OPENSSL@)
find_package(OpenSSL REQUIRED)
Expand Down