summaryrefslogtreecommitdiff
path: root/src/libFLAC/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/libFLAC/CMakeLists.txt')
-rw-r--r--src/libFLAC/CMakeLists.txt47
1 files changed, 22 insertions, 25 deletions
diff --git a/src/libFLAC/CMakeLists.txt b/src/libFLAC/CMakeLists.txt
index 17d940bd..b6d59ae3 100644
--- a/src/libFLAC/CMakeLists.txt
+++ b/src/libFLAC/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 3.12)
+cmake_minimum_required(VERSION 3.0)
if(CMAKE_SYSTEM_PROCESSOR MATCHES "[xX]86(_64)?|(AMD|amd)64|i[346]86")
option(WITH_AVX "Enable AVX, AVX2 optimizations" ON)
@@ -12,36 +12,25 @@ check_include_file("sys/param.h" HAVE_SYS_PARAM_H)
set(CMAKE_REQUIRED_LIBRARIES m)
check_function_exists(lround HAVE_LROUND)
-add_compile_definitions(
- $<$<BOOL:${MSVC}>:_USE_MATH_DEFINES>
- FLAC__USE_AVX=$<BOOL:${WITH_AVX}>
- HAVE_LROUND=$<BOOL:${HAVE_LROUND}>
- $<$<BOOL:${HAVE_CPUID_H}>:HAVE_CPUID_H>
- $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:FLAC__OVERFLOW_DETECT>)
-
if(CMAKE_SYSTEM_PROCESSOR MATCHES "[xX]86_64|(AMD|amd)64")
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
set(IA32 TRUE)
endif()
- add_compile_definitions(
- FLAC__CPU_X86_64
- FLAC__ALIGN_MALLOC_DATA)
+ add_definitions(-DFLAC__CPU_X86_64 -DFLAC__ALIGN_MALLOC_DATA)
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "([xX]|i[346])86")
set(IA32 TRUE)
- add_compile_definitions(
- FLAC__CPU_IA32
- FLAC__ALIGN_MALLOC_DATA)
+ add_definitions(-DFLAC__CPU_IA32 -DFLAC__ALIGN_MALLOC_DATA)
endif()
include(CheckLanguage)
check_language(ASM_NASM)
if(CMAKE_ASM_NASM_COMPILER)
enable_language(ASM_NASM)
- add_compile_definitions(FLAC__HAS_NASM)
+ add_definitions(-DFLAC__HAS_NASM)
endif()
if(NOT WITH_ASM)
- add_compile_definitions(FLAC__NO_ASM)
+ add_definitions(-DFLAC__NO_ASM)
endif()
if(IA32)
@@ -106,10 +95,13 @@ target_compile_definitions(FLAC-static PUBLIC FLAC__NO_DLL)
target_include_directories(FLAC-static INTERFACE
"$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>")
-target_link_libraries(FLAC-static PUBLIC
- $<TARGET_NAME_IF_EXISTS:win_utf8_io>
- $<TARGET_NAME_IF_EXISTS:FLAC-asm>
- $<$<BOOL:${HAVE_LROUND}>:m>)
+target_link_libraries(FLAC-static PUBLIC $<$<BOOL:${HAVE_LROUND}>:m>)
+if(TARGET FLAC-asm)
+ target_link_libraries(FLAC-static PUBLIC FLAC-asm>)
+endif()
+if(TARGET win_utf8_io)
+ target_link_libraries(FLAC-static PUBLIC win_utf8_io>)
+endif()
if(TARGET Ogg::Ogg-static)
target_link_libraries(FLAC-static PUBLIC Ogg::Ogg-static)
elseif(TARGET Ogg::Ogg)
@@ -121,11 +113,16 @@ target_compile_definitions(FLAC PRIVATE FLAC_API_EXPORTS FLAC__USE_VISIBILITY_AT
target_include_directories(FLAC INTERFACE
"$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>")
-target_link_libraries(FLAC PRIVATE
- $<TARGET_NAME_IF_EXISTS:Ogg::Ogg>
- $<TARGET_NAME_IF_EXISTS:FLAC-asm>
- $<TARGET_NAME_IF_EXISTS:win_utf8_io>
- $<$<BOOL:${HAVE_LROUND}>:m>)
+target_link_libraries(FLAC PRIVATE $<$<BOOL:${HAVE_LROUND}>:m>)
+if(TARGET FLAC-asm)
+ target_link_libraries(FLAC PUBLIC FLAC-asm>)
+endif()
+if(TARGET win_utf8_io)
+ target_link_libraries(FLAC PUBLIC win_utf8_io>)
+endif()
+if(TARGET Ogg::Ogg)
+ target_link_libraries(FLAC PUBLIC Ogg::Ogg)
+endif()
set_target_properties(FLAC PROPERTIES
C_VISIBILITY_PRESET hidden
VERSION 8.3.0