1
0
mirror of https://github.com/cookiengineer/audacity synced 2026-01-23 17:25:54 +01:00

Connected libFLAC with libogg

This commit is contained in:
Vitaliy Kirsanov
2019-04-05 20:49:33 +03:00
committed by James Crook
parent 617c1d8785
commit 67386e7799
3 changed files with 99 additions and 30 deletions

View File

@@ -5,14 +5,9 @@ set(TARGET libflac)
set(TARGET_SOURCE ${LIB_SRC_DIRECTORY}${TARGET})
project(${TARGET} VERSION 1.3.1)
option(FLAC_WITH_OGG "ogg support (default: test for libogg)" OFF)
option(FLAC_ENABLE_64_BIT_WORDS "Set FLAC__BYTES_PER_WORD to 8 (4 is the default)" OFF)
option(FLAC_WITH_ASM "Use any assembly optimization routines" ON)
if(WITH_OGG)
find_package(OGG REQUIRED)
endif()
if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
if(CMAKE_BULD_TYPE STREQUAL Release)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -funroll-loops")
@@ -90,7 +85,6 @@ add_compile_definitions(
CPU_IS_BIG_ENDIAN=$<BOOL:${CPU_IS_BIG_ENDIAN}>
CPU_IS_LITTLE_ENDIAN=$<NOT:${CPU_IS_BIG_ENDIAN}>
FLAC__HAS_X86INTRIN=$<BOOL:${HAVE_X86INTRIN_H}>
FLAC__HAS_OGG=$<BOOL:${OGG_FOUND}>
FLAC__USE_AVX=$<BOOL:${WITH_AVX}>
$<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:FLAC__OVERFLOW_DETECT>
_ALL_SOURCE
@@ -193,21 +187,21 @@ add_library(FLAC-static STATIC
"${TARGET_SOURCE}/src/libFLAC/stream_encoder_intrin_avx2.c"
"${TARGET_SOURCE}/src/libFLAC/stream_encoder_framing.c"
"${TARGET_SOURCE}/src/libFLAC/window.c"
"$<$<BOOL:${OGG_FOUND}>:${TARGET_SOURCE}/src/libFLAC/ogg_decoder_aspect.c>"
"$<$<BOOL:${OGG_FOUND}>:${TARGET_SOURCE}/src/libFLAC/ogg_encoder_aspect.c>"
"$<$<BOOL:${OGG_FOUND}>:${TARGET_SOURCE}/src/libFLAC/ogg_helper.c>"
"$<$<BOOL:${OGG_FOUND}>:${TARGET_SOURCE}/src/libFLAC/ogg_mapping.c>"
"${TARGET_SOURCE}/src/libFLAC/ogg_decoder_aspect.c"
"${TARGET_SOURCE}/src/libFLAC/ogg_encoder_aspect.c"
"${TARGET_SOURCE}/src/libFLAC/ogg_helper.c"
"${TARGET_SOURCE}/src/libFLAC/ogg_mapping.c"
"$<$<BOOL:${WIN32}>:${TARGET_SOURCE}/src/libFLAC/windows_unicode_filenames.c>")
include_directories(
"${TARGET_SOURCE}/include"
"${TARGET_SOURCE}/src/libFLAC/include")
target_compile_definitions(FLAC-static PUBLIC FLAC__NO_DLL)
target_compile_definitions(FLAC-static PUBLIC FLAC__NO_DLL FLAC__HAS_OGG)
target_include_directories(FLAC-static INTERFACE
"$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>")
target_link_libraries(FLAC-static PUBLIC
$<TARGET_NAME_IF_EXISTS:Ogg::Ogg>
libogg
$<TARGET_NAME_IF_EXISTS:FLAC-asm>
$<$<BOOL:${HAVE_LROUND}>:m>)
set_target_properties(FLAC-static PROPERTIES OSX_ARCHITECTURES "")