From e4a0d0b48905bb949831c30c941e921da0b6f09c Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 3 Aug 2024 12:21:12 +0100 Subject: [PATCH 4/4] Use pkg-config to find libresample and kissfft --- .travis.yml | 2 ++ CMakeLists.txt | 12 ++++++++++++ libmusly/CMakeLists.txt | 12 +++--------- libmusly/powerspectrum.h | 2 +- libmusly/resampler.h | 2 +- 5 files changed, 19 insertions(+), 11 deletions(-) diff --git a/.travis.yml b/.travis.yml index b051004..b354641 100644 --- a/.travis.yml +++ b/.travis.yml @@ -31,3 +31,5 @@ addons: - libavcodec-dev - libavformat-dev - libavutil-dev + - libresample-dev + - libkissfft-dev diff --git a/CMakeLists.txt b/CMakeLists.txt index 8d8bf0e..c5b0d2c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -60,6 +60,18 @@ pkg_check_modules(FFMPEG REQUIRED IMPORTED_TARGET libavcodec libavformat libavutil) +pkg_check_modules(LIBRESAMPLE REQUIRED IMPORTED_TARGET libresample) +pkg_search_module(KISSFFT REQUIRED IMPORTED_TARGET + kissfft-simd + kissfft-double + kissfft-float + kissfft-int32_t + kissfft-int16_t + kissfft-simd-openmp + kissfft-double-openmp + kissfft-float-openmp + kissfft-int32_t-openmp + kissfft-int16_t-openmp) include_directories( "${PROJECT_SOURCE_DIR}/include") diff --git a/libmusly/CMakeLists.txt b/libmusly/CMakeLists.txt index b9f6d11..6f8c8e9 100644 --- a/libmusly/CMakeLists.txt +++ b/libmusly/CMakeLists.txt @@ -13,19 +13,11 @@ if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/external") PROPERTIES COMPILE_FLAGS "-DLIBMUSLY_EXTERNAL ${LIBMUSLY_EXTERNAL_FLAGS}") endif() -if(USE_OPENMP AND OPENMP_FOUND) - # disable OpenMP for kiss FFT, it slows things down terribly - set_source_files_properties(kissfft/kiss_fft.c - PROPERTIES COMPILE_FLAGS "-U_OPENMP") -endif() - include_directories( ${LIBMUSLY_INCLUDE} ${CMAKE_CURRENT_SOURCE_DIR}) add_library(libmusly - kissfft/kiss_fft.c - kissfft/kiss_fftr.c methods/mandelellis.cpp methods/timbre.cpp decoders/libav.cpp @@ -56,7 +48,9 @@ set_target_properties(libmusly target_link_libraries(libmusly ${LIBMUSLY_LIBS} PkgConfig::EIGEN3 - PkgConfig::FFMPEG) + PkgConfig::FFMPEG + PkgConfig::LIBRESAMPLE + PkgConfig::KISSFFT) if(WIN32 OR MINGW) # link against winsock2 for ntohl() and htonl() target_link_libraries(libmusly ws2_32) diff --git a/libmusly/powerspectrum.h b/libmusly/powerspectrum.h index 6957db4..096fc31 100644 --- a/libmusly/powerspectrum.h +++ b/libmusly/powerspectrum.h @@ -14,7 +14,7 @@ #include extern "C" { - #include "kissfft/kiss_fftr.h" + #include } diff --git a/libmusly/resampler.h b/libmusly/resampler.h index df8aaa4..f48e22a 100644 --- a/libmusly/resampler.h +++ b/libmusly/resampler.h @@ -14,7 +14,7 @@ #include extern "C" { - #include "libresample/libresample.h" + #include } namespace musly { -- 2.45.2