@@ -598,6 +598,7 @@ target_include_directories(TinySoundFont INTERFACE ${TINYSOUNDFONT_INCLUDE_DIR})
598598
599599# speex
600600set (SPEEX_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR} /speex/include CACHE STRING "SPEEX includes" FORCE )
601+ set (SPEEXDSP_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/include CACHE STRING "SPEEX includes" FORCE )
601602set (SPEEX_SOURCE_FILES
602603 ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex/bits.c
603604 ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex/cb_search.c
@@ -633,6 +634,18 @@ set(SPEEX_SOURCE_FILES
633634 ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex/vorbis_psy.c
634635 ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex/vq.c
635636 ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex/window.c)
637+ set (SPEEXDSP_SOURCE_FILES
638+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/buffer.c
639+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/fftwrap.c
640+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/filterbank.c
641+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/jitter.c
642+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/kiss_fft.c
643+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/kiss_fftr.c
644+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/mdf.c
645+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/preprocess.c
646+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/resample.c
647+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/scal.c
648+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/smallft.c)
636649set (SPEEX_INCLUDE_FILES
637650 ${CMAKE_CURRENT_SOURCE_DIR} /speex/include/speex/speex_bits.h
638651 ${CMAKE_CURRENT_SOURCE_DIR} /speex/include/speex/speex_callbacks.h
@@ -682,13 +695,60 @@ set(SPEEX_INCLUDE_FILES
682695 ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex/vq_bfin.h
683696 ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex/vq_sse.h
684697 ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex/vq.h)
698+ set (SPEEXDSP_INCLUDE_FILES
699+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/include/speex/speex_buffer.h
700+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/include/speex/speex_echo.h
701+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/include/speex/speex_jitter.h
702+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/include/speex/speex_preprocess.h
703+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/include/speex/speex_resampler.h
704+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/include/speex/speexdsp_types.h
705+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/_kiss_fft_guts.h
706+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/arch.h
707+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/bfin.h
708+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/fftwrap.h
709+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/filterbank.h
710+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/fixed_arm4.h
711+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/fixed_arm5e.h
712+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/fixed_bfin.h
713+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/fixed_debug.h
714+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/fixed_generic.h
715+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/kiss_fft.h
716+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/kiss_fftr.h
717+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/math_approx.h
718+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/misc_bfin.h
719+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/os_support.h
720+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/pseudofloat.h
721+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/resample_neon.h
722+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/resample_sse.h
723+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/smallft.h
724+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/stack_alloc.h
725+ ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp/vorbis_psy.h)
685726add_library (speex STATIC ${SPEEX_SOURCE_FILES} ${SPEEX_INCLUDE_FILES} )
727+ add_library (speexdsp STATIC ${SPEEXDSP_SOURCE_FILES} ${SPEEXDSP_INCLUDE_FILES} )
686728set (speex_CONFIG_FILE ${CMAKE_CURRENT_BINARY_DIR} /include/speex/speex_config_types.h)
729+ set (speexdsp_CONFIG_FILE ${CMAKE_CURRENT_BINARY_DIR} /include/speex/speexdsp_config_types.h)
687730set (SIZE16 short)
688731set (USIZE16 unsigned\ short)
689732set (SIZE32 int)
690733set (USIZE32 unsigned\ int)
691734configure_file (${CMAKE_CURRENT_SOURCE_DIR} /speex/include/speex/speex_config_types.h.in ${speex_CONFIG_FILE} )
735+ configure_file (${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/include/speex/speexdsp_config_types.h.in ${speexdsp_CONFIG_FILE} )
692736target_include_directories (speex PUBLIC ${SPEEX_INCLUDE_DIR} ${SPEEX_INCLUDE_DIR} /speex/ ${CMAKE_CURRENT_BINARY_DIR} /include/speex/ PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /speex/libspeex )
737+ target_include_directories (speexdsp PUBLIC ${SPEEXDSP_INCLUDE_DIR} ${SPEEXDSP_INCLUDE_DIR} /speex/ ${CMAKE_CURRENT_BINARY_DIR} /include/speex/ PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /speexdsp/libspeexdsp )
693738target_compile_definitions (speex PRIVATE FIXED_POINT=1 EXPORT=__attribute__ \(\(visibility \(\"default\"\)\)\) USE_SMALLFT=1)
694- target_compile_options(opus PRIVATE " -Wno-unused-parameter " " -Wno-shadow ")
739+ target_compile_definitions(speexdsp PRIVATE FIXED_POINT=1 EXPORT=__attribute__\(\( visibility\(\" default\"\)\)\) USE_SMALLFT=1)
740+ target_compile_options(speex PRIVATE
741+ " -Wno-unused-parameter "
742+ " -Wno-shadow "
743+ " -Wno-cast-align "
744+ " -Wno-incompatible-pointer-types "
745+ " -Wno-unused-function ")
746+ target_compile_options(speexdsp PRIVATE
747+ " -Wno-unused-variable "
748+ " -Wno-cast-align "
749+ " -Wno-unused-parameter "
750+ " -Wno-sign-compare "
751+ " -Wno-incompatible-pointer-types "
752+ " -Wno-incompatible-pointer-types "
753+ " -Wno-shadow "
754+ " -Wno-unused-function ")
0 commit comments