You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1009 B
28 lines
1009 B
# Copyright 2023 jacqueline <me@jacqueline.id.au>
|
|
#
|
|
# SPDX-License-Identifier: GPL-3.0-only
|
|
idf_component_register(
|
|
SRCS src/info.c src/internal.c src/internal.h src/opusfile.c src/stream.c
|
|
INCLUDE_DIRS "include"
|
|
REQUIRES "ogg")
|
|
target_compile_options("${COMPONENT_LIB}" PRIVATE "-DOP_FIXED_POINT" "-Wno-maybe-uninitialized")
|
|
|
|
set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
|
|
|
|
set(OPUS_FIXED_POINT ON)
|
|
set(OPUS_ENABLE_FLOAT_API OFF)
|
|
|
|
set(OPUS_VAR_ARRAYS OFF)
|
|
set(OPUS_USE_ALLOCA ON)
|
|
set(OPUS_NONTHREADSAFE_PSEUDOSTACK OFF)
|
|
|
|
set(OPUS_INSTALL_PKG_CONFIG_MODULE OFF)
|
|
set(OPUS_INSTALL_CMAKE_CONFIG_MODULE OFF)
|
|
set(OPUS_BUILD_TESTING OFF)
|
|
set(OPUS_BUILD_SHARED_LIBS OFF)
|
|
|
|
add_subdirectory($ENV{PROJ_PATH}/lib/opus ${CMAKE_CURRENT_BINARY_DIR}/opus)
|
|
target_compile_definitions(opus PRIVATE CUSTOM_SUPPORT)
|
|
target_compile_options(opus PRIVATE -Os -DSMALL_FOOTPRINT -funroll-loops -ffast-math)
|
|
target_include_directories(opus PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include)
|
|
target_link_libraries(${COMPONENT_LIB} PUBLIC opus)
|
|
|