Move the libsamplerate library check

This commit is contained in:
Jean Pierre Cimalando 2020-12-14 14:32:55 +01:00
parent a3f93f5d0b
commit 1f696e943e
2 changed files with 25 additions and 12 deletions

View file

@ -4,18 +4,6 @@ set(BENCHMARK_SIMD_SOURCES)
sfizz_add_simd_sources(BENCHMARK_SIMD_SOURCES "../src")
find_package(benchmark CONFIG REQUIRED)
# Check libsamplerate
find_library(SAMPLERATE_LIBRARY "samplerate")
find_path(SAMPLERATE_INCLUDE_DIR "samplerate.h")
message(STATUS "Checking samplerate library: ${SAMPLERATE_LIBRARY}")
message(STATUS "Checking samplerate includes: ${SAMPLERATE_INCLUDE_DIR}")
if(SAMPLERATE_LIBRARY AND SAMPLERATE_INCLUDE_DIR)
add_library(sfizz_samplerate INTERFACE)
add_library(sfizz::samplerate ALIAS sfizz_samplerate)
target_include_directories(sfizz_samplerate INTERFACE "${SAMPLERATE_INCLUDE_DIR}")
target_link_libraries(sfizz_samplerate INTERFACE "${SAMPLERATE_LIBRARY}")
endif()
add_library(bm_simd STATIC ${BENCHMARK_SIMD_SOURCES})
target_link_libraries(bm_simd PRIVATE absl::span sfizz::cpuid)
add_library(bm_ftz STATIC ../src/sfizz/ScopedFTZ.cpp)

View file

@ -163,3 +163,28 @@ add_library(sfizz_fmidi STATIC
add_library(sfizz::fmidi ALIAS sfizz_fmidi)
target_include_directories(sfizz_fmidi PUBLIC "external/fmidi/sources")
target_compile_definitions(sfizz_fmidi PUBLIC "FMIDI_STATIC=1" "FMIDI_DISABLE_DESCRIBE_API=1")
# The samplerate library
find_package(PkgConfig)
if(PKGCONFIG_FOUND)
pkg_check_modules(SAMPLERATE "samplerate")
if(SAMPLERATE_FOUND)
add_library(sfizz_samplerate INTERFACE)
add_library(sfizz::samplerate ALIAS sfizz_samplerate)
target_include_directories(sfizz_samplerate INTERFACE ${SAMPLERATE_INCLUDE_DIRS})
target_link_libraries(sfizz_samplerate INTERFACE ${SAMPLERATE_LIBRARIES})
link_directories(${SAMPLERATE_LIBRARY_DIRS})
endif()
endif()
if(NOT TARGET sfizz::samplerate)
find_library(SAMPLERATE_LIBRARY "samplerate")
find_path(SAMPLERATE_INCLUDE_DIR "samplerate.h")
message(STATUS "Checking samplerate library: ${SAMPLERATE_LIBRARY}")
message(STATUS "Checking samplerate includes: ${SAMPLERATE_INCLUDE_DIR}")
if(SAMPLERATE_LIBRARY AND SAMPLERATE_INCLUDE_DIR)
add_library(sfizz_samplerate INTERFACE)
add_library(sfizz::samplerate ALIAS sfizz_samplerate)
target_include_directories(sfizz_samplerate INTERFACE "${SAMPLERATE_INCLUDE_DIR}")
target_link_libraries(sfizz_samplerate INTERFACE "${SAMPLERATE_LIBRARY}")
endif()
endif()