mirror of
https://github.com/aaru-dps/Aaru.Compression.Native.git
synced 2025-12-16 11:14:30 +00:00
51 lines
1.6 KiB
CMake
51 lines
1.6 KiB
CMake
message(STATUS "LZFSE VERSION: Unknown")
|
|
|
|
include(CheckCCompilerFlag)
|
|
|
|
# If LZFSE is being bundled in another project, we don't want to
|
|
# install anything. However, we want to let people override this, so
|
|
# we'll use the LZFSE_BUNDLE_MODE variable to let them do that; just
|
|
# set it to OFF in your project before you add_subdirectory(lzfse).
|
|
get_directory_property(LZFSE_PARENT_DIRECTORY PARENT_DIRECTORY)
|
|
if("${LZFSE_BUNDLE_MODE}" STREQUAL "")
|
|
# Bundled mode hasn't been set one way or the other, set the default
|
|
# depending on whether or not we are the top-level project.
|
|
if(LZFSE_PARENT_DIRECTORY)
|
|
set(LZFSE_BUNDLE_MODE ON)
|
|
else()
|
|
set(LZFSE_BUNDLE_MODE OFF)
|
|
endif(LZFSE_PARENT_DIRECTORY)
|
|
endif()
|
|
mark_as_advanced(LZFSE_BUNDLE_MODE)
|
|
|
|
if(CMAKE_VERSION VERSION_GREATER 3.2)
|
|
cmake_policy(SET CMP0063 NEW)
|
|
endif()
|
|
|
|
if(CMAKE_VERSION VERSION_GREATER 3.9)
|
|
cmake_policy(SET CMP0069 NEW)
|
|
endif()
|
|
|
|
if(ENABLE_SANITIZER)
|
|
set(CMAKE_C_FLAGS " ${CMAKE_C_FLAGS} -fsanitize=${ENABLE_SANITIZER}")
|
|
set(CMAKE_CXX_FLAGS " ${CMAKE_CXX_FLAGS} -fsanitize=${ENABLE_SANITIZER}")
|
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=${ENABLE_SANITIZER}")
|
|
endif()
|
|
|
|
set(LZFSE_SOURCES
|
|
src/lzfse_decode.c
|
|
src/lzfse_decode_base.c
|
|
src/lzfse_encode.c
|
|
src/lzfse_encode_base.c
|
|
src/lzfse_fse.c
|
|
src/lzvn_decode_base.c
|
|
src/lzvn_encode_base.c)
|
|
|
|
list(TRANSFORM LZFSE_SOURCES PREPEND "3rdparty/lzfse/")
|
|
|
|
target_sources("Aaru.Compression.Native" PRIVATE ${LZFSE_SOURCES})
|
|
|
|
|
|
if(NOT AARU_MUSL AND (NOT ${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm"))
|
|
set_property(TARGET "Aaru.Compression.Native" PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE)
|
|
endif() |