mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-25 09:49:00 +08:00
157 lines
5.0 KiB
CMake
157 lines
5.0 KiB
CMake
cmake_minimum_required(VERSION 3.0)
|
|
project(liblzma)
|
|
|
|
add_definitions(-DHAVE_CONFIG_H)
|
|
if(BUILD_SHARED_LIBS)
|
|
add_definitions(-DLIBLZMADLL_EXPORTS)
|
|
add_definitions(-DDLL_EXPORT)
|
|
endif()
|
|
|
|
if(NOT MSVC)
|
|
add_definitions(-DHAVE_VISIBILITY=1)
|
|
endif()
|
|
|
|
if(WIN32)
|
|
include_directories(windows/vs2017)
|
|
else()
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
|
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/config.h
|
|
"""
|
|
#define TUKLIB_SYMBOL_PREFIX lzma_
|
|
#define ASSUME_RAM 128
|
|
#define HAVE_CHECK_CRC32 1
|
|
#define HAVE_CHECK_CRC64 1
|
|
#define HAVE_CHECK_SHA256 1
|
|
#define HAVE_DECODERS 1
|
|
#define HAVE_DECODER_ARM 1
|
|
#define HAVE_DECODER_ARMTHUMB 1
|
|
#define HAVE_DECODER_DELTA 1
|
|
#define HAVE_DECODER_IA64 1
|
|
#define HAVE_DECODER_LZMA1 1
|
|
#define HAVE_DECODER_LZMA2 1
|
|
#define HAVE_DECODER_POWERPC 1
|
|
#define HAVE_DECODER_SPARC 1
|
|
#define HAVE_DECODER_X86 1
|
|
#define HAVE_ENCODERS 1
|
|
#define HAVE_ENCODER_ARM 1
|
|
#define HAVE_ENCODER_ARMTHUMB 1
|
|
#define HAVE_ENCODER_DELTA 1
|
|
#define HAVE_ENCODER_IA64 1
|
|
#define HAVE_ENCODER_LZMA1 1
|
|
#define HAVE_ENCODER_LZMA2 1
|
|
#define HAVE_ENCODER_POWERPC 1
|
|
#define HAVE_ENCODER_SPARC 1
|
|
#define HAVE_ENCODER_X86 1
|
|
#define HAVE_INTTYPES_H 1
|
|
#define HAVE_LIMITS_H 1
|
|
#define HAVE_MF_BT2 1
|
|
#define HAVE_MF_BT3 1
|
|
#define HAVE_MF_BT4 1
|
|
#define HAVE_MF_HC3 1
|
|
#define HAVE_MF_HC4 1
|
|
#define HAVE_STDBOOL_H 1
|
|
#define HAVE_STDINT_H 1
|
|
#define HAVE_STDLIB_H 1
|
|
#define HAVE_STRING_H 1
|
|
#define HAVE_VISIBILITY 1
|
|
#define MYTHREAD_POSIX 1
|
|
#define PACKAGE_NAME \"XZ Utils\"
|
|
#define PACKAGE_URL \"http://tukaani.org/xz/\"
|
|
#define SIZEOF_SIZE_T (sizeof(size_t))
|
|
""")
|
|
endif()
|
|
include_directories(src/liblzma/common)
|
|
include_directories(src/common)
|
|
include_directories(src/liblzma/api)
|
|
include_directories(src/liblzma/check)
|
|
include_directories(src/liblzma/delta)
|
|
include_directories(src/liblzma/lz)
|
|
include_directories(src/liblzma/lzma)
|
|
include_directories(src/liblzma/rangecoder)
|
|
include_directories(src/liblzma/simple)
|
|
|
|
add_library(lzma
|
|
src/common/tuklib_cpucores.c
|
|
src/common/tuklib_physmem.c
|
|
src/liblzma/check/check.c
|
|
src/liblzma/check/crc32_fast.c
|
|
src/liblzma/check/crc32_table.c
|
|
src/liblzma/check/crc64_fast.c
|
|
src/liblzma/check/crc64_table.c
|
|
src/liblzma/check/sha256.c
|
|
src/liblzma/common/alone_decoder.c
|
|
src/liblzma/common/alone_encoder.c
|
|
src/liblzma/common/auto_decoder.c
|
|
src/liblzma/common/block_buffer_decoder.c
|
|
src/liblzma/common/block_buffer_encoder.c
|
|
src/liblzma/common/block_decoder.c
|
|
src/liblzma/common/block_encoder.c
|
|
src/liblzma/common/block_header_decoder.c
|
|
src/liblzma/common/block_header_encoder.c
|
|
src/liblzma/common/block_util.c
|
|
src/liblzma/common/common.c
|
|
src/liblzma/common/easy_buffer_encoder.c
|
|
src/liblzma/common/easy_decoder_memusage.c
|
|
src/liblzma/common/easy_encoder.c
|
|
src/liblzma/common/easy_encoder_memusage.c
|
|
src/liblzma/common/easy_preset.c
|
|
src/liblzma/common/filter_buffer_decoder.c
|
|
src/liblzma/common/filter_buffer_encoder.c
|
|
src/liblzma/common/filter_common.c
|
|
src/liblzma/common/filter_decoder.c
|
|
src/liblzma/common/filter_encoder.c
|
|
src/liblzma/common/filter_flags_decoder.c
|
|
src/liblzma/common/filter_flags_encoder.c
|
|
src/liblzma/common/hardware_cputhreads.c
|
|
src/liblzma/common/hardware_physmem.c
|
|
src/liblzma/common/index.c
|
|
src/liblzma/common/index_decoder.c
|
|
src/liblzma/common/index_encoder.c
|
|
src/liblzma/common/index_hash.c
|
|
src/liblzma/common/outqueue.c
|
|
src/liblzma/common/stream_buffer_decoder.c
|
|
src/liblzma/common/stream_buffer_encoder.c
|
|
src/liblzma/common/stream_decoder.c
|
|
src/liblzma/common/stream_encoder.c
|
|
src/liblzma/common/stream_encoder_mt.c
|
|
src/liblzma/common/stream_flags_common.c
|
|
src/liblzma/common/stream_flags_decoder.c
|
|
src/liblzma/common/stream_flags_encoder.c
|
|
src/liblzma/common/vli_decoder.c
|
|
src/liblzma/common/vli_encoder.c
|
|
src/liblzma/common/vli_size.c
|
|
src/liblzma/delta/delta_common.c
|
|
src/liblzma/delta/delta_decoder.c
|
|
src/liblzma/delta/delta_encoder.c
|
|
src/liblzma/lzma/fastpos_table.c
|
|
src/liblzma/lzma/lzma2_decoder.c
|
|
src/liblzma/lzma/lzma2_encoder.c
|
|
src/liblzma/lzma/lzma_decoder.c
|
|
src/liblzma/lzma/lzma_encoder.c
|
|
src/liblzma/lzma/lzma_encoder_optimum_fast.c
|
|
src/liblzma/lzma/lzma_encoder_optimum_normal.c
|
|
src/liblzma/lzma/lzma_encoder_presets.c
|
|
src/liblzma/lz/lz_decoder.c
|
|
src/liblzma/lz/lz_encoder.c
|
|
src/liblzma/lz/lz_encoder_mf.c
|
|
src/liblzma/rangecoder/price_table.c
|
|
src/liblzma/simple/arm.c
|
|
src/liblzma/simple/armthumb.c
|
|
src/liblzma/simple/ia64.c
|
|
src/liblzma/simple/powerpc.c
|
|
src/liblzma/simple/simple_coder.c
|
|
src/liblzma/simple/simple_decoder.c
|
|
src/liblzma/simple/simple_encoder.c
|
|
src/liblzma/simple/sparc.c
|
|
src/liblzma/simple/x86.c)
|
|
|
|
install(TARGETS lzma
|
|
RUNTIME DESTINATION bin
|
|
ARCHIVE DESTINATION lib
|
|
LIBRARY DESTINATION lib)
|
|
|
|
if(NOT LIBLZMA_SKIP_HEADERS)
|
|
install(DIRECTORY ${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma DESTINATION include)
|
|
install(FILES ${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma.h DESTINATION include)
|
|
endif()
|