71 lines
2.4 KiB
CMake
71 lines
2.4 KiB
CMake
cmake_minimum_required(VERSION 3.16)
|
|
project(build_libarchive)
|
|
include(ExternalProject)
|
|
|
|
ExternalProject_Add(zlib
|
|
GIT_REPOSITORY https://github.com/madler/zlib.git
|
|
GIT_TAG v1.2.11
|
|
GIT_SHALLOW TRUE
|
|
SOURCE_DIR zlib
|
|
BINARY_DIR zlib-build
|
|
CMAKE_GENERATOR ${CMAKE_GENERATOR}
|
|
CMAKE_ARGS
|
|
-DBUILD_SHARED_LIBS:BOOL=OFF
|
|
-DCMAKE_TOOLCHAIN_FILE:FILEPATH=${TOOLCHAIN_FILE}
|
|
-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_BINARY_DIR}/INSTALL
|
|
-DCMAKE_BUILD_TYPE:STRING=Release
|
|
)
|
|
|
|
ExternalProject_Add(zstd
|
|
GIT_REPOSITORY https://github.com/facebook/zstd
|
|
GIT_TAG v1.5.1
|
|
GIT_SHALLOW TRUE
|
|
SOURCE_DIR zstd
|
|
SOURCE_SUBDIR build/cmake
|
|
BINARY_DIR zstd-build
|
|
CMAKE_GENERATOR ${CMAKE_GENERATOR}
|
|
CMAKE_ARGS
|
|
-DZSTD_BUILD_PROGRAMS:BOOL=OFF
|
|
-DBUILD_SHARED_LIBS:BOOL=OFF
|
|
-DCMAKE_BUILD_TYPE:STRING=Release
|
|
-DCMAKE_TOOLCHAIN_FILE:FILEPATH=${TOOLCHAIN_FILE}
|
|
-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_BINARY_DIR}/INSTALL
|
|
)
|
|
|
|
ExternalProject_Add(lz4
|
|
GIT_REPOSITORY https://github.com/lz4/lz4
|
|
GIT_TAG v1.9.3
|
|
GIT_SHALLOW TRUE
|
|
SOURCE_DIR lz4
|
|
BINARY_DIR lz4-build
|
|
SOURCE_SUBDIR build/cmake
|
|
CMAKE_GENERATOR ${CMAKE_GENERATOR}
|
|
CMAKE_ARGS
|
|
-DBUILD_SHARED_LIBS:BOOL=OFF
|
|
-DCMAKE_BUILD_TYPE:STRING=Release
|
|
-DCMAKE_TOOLCHAIN_FILE:FILEPATH=${TOOLCHAIN_FILE}
|
|
-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_BINARY_DIR}/INSTALL
|
|
)
|
|
|
|
ExternalProject_Add(
|
|
libarchive
|
|
DEPENDS zlib zstd lz4
|
|
GIT_REPOSITORY https://github.com/libarchive/libarchive.git
|
|
GIT_TAG v3.7.0
|
|
GIT_SHALLOW TRUE
|
|
SOURCE_DIR libarchive
|
|
BINARY_DIR libarchive-build
|
|
CMAKE_GENERATOR ${CMAKE_GENERATOR}
|
|
CMAKE_ARGS
|
|
-DCMAKE_TOOLCHAIN_FILE:FILEPATH=${TOOLCHAIN_FILE}
|
|
-DCMAKE_BUILD_TYPE:STRING=Release
|
|
-DBUILD_SHARED_LIBS:BOOL=OFF
|
|
-DENABLE_TEST:BOOL=OFF
|
|
-DENABLE_TAR:BOOL=OFF
|
|
-DENABLE_CPIO:BOOL=OFF
|
|
-DENABLE_CAT:BOOL=OFF
|
|
-DENABLE_OPENSSL:BOOL=OFF
|
|
-DZLIB_USE_STATIC_LIBS:BOOL=ON
|
|
-DCMAKE_PREFIX_PATH=${CMAKE_BINARY_DIR}/INSTALL
|
|
-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_BINARY_DIR}/INSTALL
|
|
) |