mirror of
https://github.com/cookiengineer/audacity
synced 2025-06-15 23:59:37 +02:00
Connected libFLAC with libogg
This commit is contained in:
parent
617c1d8785
commit
67386e7799
@ -20,11 +20,11 @@ set_target_properties(expat PROPERTIES OSX_ARCHITECTURES "")
|
||||
|
||||
add_subdirectory( "FileDialog" )
|
||||
#add_subdirectory( "help" )
|
||||
add_subdirectory( "libogg" )
|
||||
add_subdirectory( "libflac" )
|
||||
add_subdirectory( "libid3tag" )
|
||||
add_subdirectory( "libmad" )
|
||||
add_subdirectory( "libnyquist" )
|
||||
add_subdirectory( "libogg" )
|
||||
add_subdirectory( "libscorealign" )
|
||||
add_subdirectory( "libsndfile" )
|
||||
add_subdirectory( "libsoxr" )
|
||||
|
@ -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 "")
|
||||
|
@ -1,21 +1,96 @@
|
||||
#directory cmake-proxies/libogg
|
||||
#UNUSED
|
||||
set( TARGET libogg )
|
||||
set( TARGET_SOURCE ${LIB_SRC_DIRECTORY}${TARGET} )
|
||||
project( ${TARGET} )
|
||||
set(TARGET libogg)
|
||||
set(TARGET_SOURCE ${LIB_SRC_DIRECTORY}${TARGET})
|
||||
|
||||
set( SOURCES
|
||||
${LIB_SRC_DIRECTORY}libogg/src/bitwise.c
|
||||
${LIB_SRC_DIRECTORY}libogg/src/framing.c
|
||||
)
|
||||
# This defines the #define on both Windows and Linux.
|
||||
add_definitions(
|
||||
-D_LIB
|
||||
)
|
||||
add_library( ${TARGET} STATIC ${SOURCES})
|
||||
project(${TARGET})
|
||||
|
||||
target_include_directories( ${TARGET} PRIVATE
|
||||
${TARGET_SOURCE}/include
|
||||
)
|
||||
include(CheckIncludeFile)
|
||||
include(CheckTypeSize)
|
||||
|
||||
target_link_libraries( ${TARGET} )
|
||||
check_include_file("inttypes.h" INCLUDE_INTTYPES_H)
|
||||
check_include_file("stdint.h" INCLUDE_STDINT_H)
|
||||
check_include_file("sys/types.h" INCLUDE_SYS_TYPES_H)
|
||||
|
||||
check_type_size("int16_t" INT16_SIZE LANGUAGE C)
|
||||
check_type_size("uint16_t" UINT16_SIZE LANGUAGE C)
|
||||
check_type_size("u_int16_t" U_INT16_SIZE LANGUAGE C)
|
||||
check_type_size("int32_t" INT32_SIZE LANGUAGE C)
|
||||
check_type_size("uint32_t" UINT32_SIZE LANGUAGE C)
|
||||
check_type_size("u_int32_t" U_INT32_SIZE LANGUAGE C)
|
||||
check_type_size("int64_t" INT64_SIZE LANGUAGE C)
|
||||
check_type_size("short" SHORT_SIZE LANGUAGE C)
|
||||
check_type_size("int" INT_SIZE LANGUAGE C)
|
||||
check_type_size("long" LONG_SIZE LANGUAGE C)
|
||||
check_type_size("long long" LONG_LONG_SIZE LANGUAGE C)
|
||||
|
||||
if(INT16_SIZE EQUAL 2)
|
||||
set(SIZE16 "int16_t")
|
||||
elseif(SHORT_SIZE EQUAL 2)
|
||||
set(SIZE16 "short")
|
||||
elseif(INT_SIZE EQUAL 2)
|
||||
set(SIZE16 "int")
|
||||
else()
|
||||
message(FATAL_ERROR "No 16 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
if(UINT16_SIZE EQUAL 2)
|
||||
set(USIZE16 "uint16_t")
|
||||
elseif(SHORT_SIZE EQUAL 2)
|
||||
set(USIZE16 "unsigned short")
|
||||
elseif(INT_SIZE EQUAL 2)
|
||||
set(USIZE16 "unsigned int")
|
||||
elseif(U_INT_SIZE EQUAL 2)
|
||||
set(USIZE16 "u_int16_t")
|
||||
else()
|
||||
message(FATAL_ERROR "No unsigned 16 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
if(INT32_SIZE EQUAL 4)
|
||||
set(SIZE32 "int32_t")
|
||||
elseif(SHORT_SIZE EQUAL 4)
|
||||
set(SIZE32 "short")
|
||||
elseif(INT_SIZE EQUAL 4)
|
||||
set(SIZE32 "int")
|
||||
elseif(LONG_SIZE EQUAL 4)
|
||||
set(SIZE16 "long")
|
||||
else()
|
||||
message(FATAL_ERROR "No 32 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
if(UINT32_SIZE EQUAL 4)
|
||||
set(USIZE32 "uint32_t")
|
||||
elseif(SHORT_SIZE EQUAL 4)
|
||||
set(USIZE32 "unsigned short")
|
||||
elseif(INT_SIZE EQUAL 4)
|
||||
set(USIZE32 "unsigned int")
|
||||
elseif(LONG_SIZE EQUAL 4)
|
||||
set(USIZE32 "unsigned long")
|
||||
elseif(U_INT_SIZE EQUAL 4)
|
||||
set(USIZE32 "u_int32_t")
|
||||
else()
|
||||
message(FATAL_ERROR "No unsigned 32 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
if(INT64_SIZE EQUAL 8)
|
||||
set(SIZE64 "int64_t")
|
||||
elseif(INT_SIZE EQUAL 8)
|
||||
set(SIZE64 "int")
|
||||
elseif(LONG_SIZE EQUAL 8)
|
||||
set(SIZE64 "long")
|
||||
elseif(LONG_LONG_SIZE EQUAL 8)
|
||||
set(SIZE64 "long long")
|
||||
else()
|
||||
message(FATAL_ERROR "No 64 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
configure_file(
|
||||
"${LIB_SRC_DIRECTORY}libogg/include/ogg/config_types.h.in"
|
||||
"ogg/config_types.h")
|
||||
|
||||
add_library(${TARGET}
|
||||
"${LIB_SRC_DIRECTORY}libogg/src/bitwise.c"
|
||||
"${LIB_SRC_DIRECTORY}libogg/src/framing.c")
|
||||
|
||||
target_include_directories(${TARGET} PUBLIC
|
||||
"${TARGET_SOURCE}/include"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}")
|
||||
|
Loading…
x
Reference in New Issue
Block a user