2015-09-28 19:53:46 +01:00
|
|
|
cmake_minimum_required(VERSION 3.1)
|
|
|
|
project(xz-embedded LANGUAGES C)
|
2013-09-28 17:43:30 +01:00
|
|
|
|
|
|
|
option(XZ_BUILD_BCJ "Build xz-embedded with BCJ support (native binary optimization)" OFF)
|
|
|
|
option(XZ_BUILD_CRC64 "Build xz-embedded with CRC64 checksum support" ON)
|
2013-09-29 20:11:30 +01:00
|
|
|
option(XZ_BUILD_MINIDEC "Build a tiny utility that decompresses xz streams" OFF)
|
2013-09-28 17:43:30 +01:00
|
|
|
|
2013-09-30 01:34:46 +01:00
|
|
|
# See include/xz.h for manual feature configuration
|
|
|
|
# tweak this list and xz.h to fit your needs
|
2013-09-28 17:43:30 +01:00
|
|
|
|
|
|
|
set(XZ_SOURCES
|
2014-04-09 14:41:49 +01:00
|
|
|
src/xz_crc32.c
|
|
|
|
src/xz_crc64.c
|
|
|
|
src/xz_dec_lzma2.c
|
|
|
|
src/xz_dec_stream.c
|
|
|
|
# src/xz_dec_bcj.c
|
2013-09-28 17:43:30 +01:00
|
|
|
)
|
2013-09-29 20:11:30 +01:00
|
|
|
add_library(xz-embedded STATIC ${XZ_SOURCES})
|
2015-09-28 19:53:46 +01:00
|
|
|
target_include_directories(xz-embedded PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
|
|
|
set_property(TARGET xz-embedded PROPERTY C_STANDARD 99)
|
|
|
|
|
|
|
|
if(${XZ_BUILD_MINIDEC})
|
|
|
|
add_executable(xzminidec xzminidec.c)
|
|
|
|
target_link_libraries(xzminidec xz-embedded)
|
|
|
|
set_property(TARGET xzminidec PROPERTY C_STANDARD 99)
|
|
|
|
endif()
|