Move feature out of tests and in their own directory
This commit is contained in:
parent
d8e8a46729
commit
3332687a41
25 changed files with 72 additions and 62 deletions
|
|
@ -27,6 +27,7 @@ option (SFIZZ_VST "Enable VST plug-in build [default: OFF]" OFF)
|
||||||
option (SFIZZ_AU "Enable AU plug-in build [default: OFF]" OFF)
|
option (SFIZZ_AU "Enable AU plug-in build [default: OFF]" OFF)
|
||||||
option (SFIZZ_BENCHMARKS "Enable benchmarks build [default: OFF]" OFF)
|
option (SFIZZ_BENCHMARKS "Enable benchmarks build [default: OFF]" OFF)
|
||||||
option (SFIZZ_TESTS "Enable tests build [default: OFF]" OFF)
|
option (SFIZZ_TESTS "Enable tests build [default: OFF]" OFF)
|
||||||
|
option (SFIZZ_DEMOS "Enable feature demos build [default: OFF]" OFF)
|
||||||
option (SFIZZ_DEVTOOLS "Enable developer tools build [default: OFF]" OFF)
|
option (SFIZZ_DEVTOOLS "Enable developer tools build [default: OFF]" OFF)
|
||||||
option (SFIZZ_SHARED "Enable shared library build [default: ON]" ON)
|
option (SFIZZ_SHARED "Enable shared library build [default: ON]" ON)
|
||||||
option (SFIZZ_USE_SNDFILE "Enable use of the sndfile library [default: ON]" ON)
|
option (SFIZZ_USE_SNDFILE "Enable use of the sndfile library [default: ON]" ON)
|
||||||
|
|
@ -75,6 +76,10 @@ if (SFIZZ_TESTS)
|
||||||
add_subdirectory (tests)
|
add_subdirectory (tests)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (SFIZZ_DEMOS)
|
||||||
|
add_subdirectory (demos)
|
||||||
|
endif()
|
||||||
|
|
||||||
if (SFIZZ_DEVTOOLS)
|
if (SFIZZ_DEVTOOLS)
|
||||||
add_subdirectory (devtools)
|
add_subdirectory (devtools)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ if (SFIZZ_RENDER)
|
||||||
target_compile_definitions(sfizz-fmidi PUBLIC "FMIDI_STATIC=1" "FMIDI_DISABLE_DESCRIBE_API=1")
|
target_compile_definitions(sfizz-fmidi PUBLIC "FMIDI_STATIC=1" "FMIDI_DISABLE_DESCRIBE_API=1")
|
||||||
|
|
||||||
add_executable(sfizz_render MidiHelpers.h sfizz_render.cpp)
|
add_executable(sfizz_render MidiHelpers.h sfizz_render.cpp)
|
||||||
target_link_libraries(sfizz_render PRIVATE sfizz::sfizz sfizz-fmidi sfizz-sndfile)
|
target_link_libraries(sfizz_render PRIVATE sfizz::sfizz sfizz-fmidi sfizz-sndfile sfizz-cxxopts)
|
||||||
sfizz_enable_lto_if_needed (sfizz_render)
|
sfizz_enable_lto_if_needed (sfizz_render)
|
||||||
install (TARGETS sfizz_render DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT "render" OPTIONAL)
|
install (TARGETS sfizz_render DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT "render" OPTIONAL)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
||||||
|
|
@ -88,8 +88,12 @@ endfunction()
|
||||||
add_library(sfizz-jsl INTERFACE)
|
add_library(sfizz-jsl INTERFACE)
|
||||||
target_include_directories(sfizz-jsl INTERFACE "external/jsl/include")
|
target_include_directories(sfizz-jsl INTERFACE "external/jsl/include")
|
||||||
|
|
||||||
|
# The cxxopts library
|
||||||
|
add_library(sfizz-cxxopts INTERFACE)
|
||||||
|
target_include_directories(sfizz-cxxopts INTERFACE "external/cxxopts")
|
||||||
|
|
||||||
# The sndfile library
|
# The sndfile library
|
||||||
if (SFIZZ_USE_SNDFILE OR SFIZZ_TESTS OR SFIZZ_BENCHMARKS OR SFIZZ_RENDER)
|
if (SFIZZ_USE_SNDFILE OR SFIZZ_DEMOS OR SFIZZ_BENCHMARKS OR SFIZZ_RENDER)
|
||||||
add_library(sfizz-sndfile INTERFACE)
|
add_library(sfizz-sndfile INTERFACE)
|
||||||
if (SFIZZ_USE_VCPKG OR CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
|
if (SFIZZ_USE_VCPKG OR CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
|
||||||
find_package(SndFile CONFIG REQUIRED)
|
find_package(SndFile CONFIG REQUIRED)
|
||||||
|
|
|
||||||
61
demos/CMakeLists.txt
Normal file
61
demos/CMakeLists.txt
Normal file
|
|
@ -0,0 +1,61 @@
|
||||||
|
find_package(PkgConfig)
|
||||||
|
if(PKGCONFIG_FOUND)
|
||||||
|
pkg_check_modules(JACK "jack")
|
||||||
|
endif()
|
||||||
|
find_package(Qt5 COMPONENTS Widgets)
|
||||||
|
|
||||||
|
if(TARGET Qt5::Widgets)
|
||||||
|
if(JACK_FOUND)
|
||||||
|
add_executable(sfizz_demo_filters DemoFilters.cpp)
|
||||||
|
target_include_directories(sfizz_demo_filters PRIVATE ${JACK_INCLUDE_DIRS})
|
||||||
|
target_link_libraries(sfizz_demo_filters PRIVATE sfizz::sfizz Qt5::Widgets ${JACK_LIBRARIES})
|
||||||
|
set_target_properties(sfizz_demo_filters PROPERTIES AUTOUIC ON)
|
||||||
|
|
||||||
|
add_executable(sfizz_demo_smooth DemoSmooth.cpp)
|
||||||
|
target_include_directories(sfizz_demo_smooth PRIVATE ${JACK_INCLUDE_DIRS})
|
||||||
|
target_link_libraries(sfizz_demo_smooth PRIVATE sfizz::sfizz Qt5::Widgets ${JACK_LIBRARIES})
|
||||||
|
set_target_properties(sfizz_demo_smooth PROPERTIES AUTOUIC ON)
|
||||||
|
|
||||||
|
add_executable(sfizz_demo_stereo DemoStereo.cpp)
|
||||||
|
target_include_directories(sfizz_demo_stereo PRIVATE ${JACK_INCLUDE_DIRS})
|
||||||
|
target_link_libraries(sfizz_demo_stereo PRIVATE sfizz::sfizz Qt5::Widgets ${JACK_LIBRARIES})
|
||||||
|
set_target_properties(sfizz_demo_stereo PROPERTIES AUTOUIC ON)
|
||||||
|
|
||||||
|
add_executable(sfizz_demo_wavetables DemoWavetables.cpp)
|
||||||
|
target_include_directories(sfizz_demo_wavetables PRIVATE ${JACK_INCLUDE_DIRS})
|
||||||
|
target_link_libraries(sfizz_demo_wavetables PRIVATE sfizz::sfizz Qt5::Widgets ${JACK_LIBRARIES})
|
||||||
|
set_target_properties(sfizz_demo_wavetables PROPERTIES AUTOUIC ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_executable(sfizz_demo_parser DemoParser.cpp)
|
||||||
|
target_link_libraries(sfizz_demo_parser PRIVATE sfizz_parser Qt5::Widgets)
|
||||||
|
set_target_properties(sfizz_demo_parser PROPERTIES AUTOUIC ON)
|
||||||
|
|
||||||
|
add_executable(sfizz_demo_stretch_tuning DemoStretchTuning.cpp)
|
||||||
|
target_link_libraries(sfizz_demo_stretch_tuning PRIVATE sfizz::sfizz Qt5::Widgets)
|
||||||
|
set_target_properties(sfizz_demo_stretch_tuning PROPERTIES AUTOUIC ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_executable(eq_apply EQ.cpp)
|
||||||
|
target_link_libraries(eq_apply PRIVATE sfizz::sfizz sfizz-sndfile sfizz-cxxopts)
|
||||||
|
|
||||||
|
add_executable(filter_apply Filter.cpp)
|
||||||
|
target_link_libraries(filter_apply PRIVATE sfizz::sfizz sfizz-sndfile sfizz-cxxopts)
|
||||||
|
|
||||||
|
add_executable(sfizz_plot_curve PlotCurve.cpp)
|
||||||
|
target_link_libraries(sfizz_plot_curve PRIVATE sfizz::sfizz)
|
||||||
|
|
||||||
|
add_executable(sfizz_plot_wavetables PlotWavetables.cpp)
|
||||||
|
target_link_libraries(sfizz_plot_wavetables PRIVATE sfizz::sfizz)
|
||||||
|
|
||||||
|
add_executable(sfizz_plot_lfo PlotLFO.cpp)
|
||||||
|
target_link_libraries(sfizz_plot_lfo PRIVATE sfizz::sfizz sfizz-sndfile sfizz-cxxopts)
|
||||||
|
|
||||||
|
add_executable(sfizz_file_instrument FileInstrument.cpp)
|
||||||
|
target_link_libraries(sfizz_file_instrument PRIVATE sfizz::sfizz sfizz-sndfile)
|
||||||
|
|
||||||
|
add_executable(sfizz_file_wavetable FileWavetable.cpp)
|
||||||
|
target_link_libraries(sfizz_file_wavetable PRIVATE sfizz::sfizz)
|
||||||
|
|
||||||
|
add_executable(sfizz_tuning Tuning.cpp)
|
||||||
|
target_link_libraries(sfizz_tuning PRIVATE sfizz::sfizz sfizz-cxxopts)
|
||||||
|
|
@ -51,64 +51,4 @@ sfizz_enable_lto_if_needed(sfizz_tests)
|
||||||
sfizz_enable_fast_math(sfizz_tests)
|
sfizz_enable_fast_math(sfizz_tests)
|
||||||
# target_link_libraries(sfizz_tests PRIVATE absl::strings absl::str_format absl::flat_hash_map cnpy absl::span absl::algorithm)
|
# target_link_libraries(sfizz_tests PRIVATE absl::strings absl::str_format absl::flat_hash_map cnpy absl::span absl::algorithm)
|
||||||
|
|
||||||
find_package(PkgConfig)
|
|
||||||
if(PKGCONFIG_FOUND)
|
|
||||||
pkg_check_modules(JACK "jack")
|
|
||||||
endif()
|
|
||||||
find_package(Qt5 COMPONENTS Widgets)
|
|
||||||
|
|
||||||
if(JACK_FOUND AND TARGET Qt5::Widgets)
|
|
||||||
add_executable(sfizz_demo_filters DemoFilters.cpp)
|
|
||||||
target_include_directories(sfizz_demo_filters PRIVATE ${JACK_INCLUDE_DIRS})
|
|
||||||
target_link_libraries(sfizz_demo_filters PRIVATE sfizz::sfizz Qt5::Widgets ${JACK_LIBRARIES})
|
|
||||||
set_target_properties(sfizz_demo_filters PROPERTIES AUTOUIC ON)
|
|
||||||
|
|
||||||
add_executable(sfizz_demo_smooth DemoSmooth.cpp)
|
|
||||||
target_include_directories(sfizz_demo_smooth PRIVATE ${JACK_INCLUDE_DIRS})
|
|
||||||
target_link_libraries(sfizz_demo_smooth PRIVATE sfizz::sfizz Qt5::Widgets ${JACK_LIBRARIES})
|
|
||||||
set_target_properties(sfizz_demo_smooth PROPERTIES AUTOUIC ON)
|
|
||||||
|
|
||||||
add_executable(sfizz_demo_stereo DemoStereo.cpp)
|
|
||||||
target_include_directories(sfizz_demo_stereo PRIVATE ${JACK_INCLUDE_DIRS})
|
|
||||||
target_link_libraries(sfizz_demo_stereo PRIVATE sfizz::sfizz Qt5::Widgets ${JACK_LIBRARIES})
|
|
||||||
set_target_properties(sfizz_demo_stereo PROPERTIES AUTOUIC ON)
|
|
||||||
|
|
||||||
add_executable(sfizz_demo_wavetables DemoWavetables.cpp)
|
|
||||||
target_include_directories(sfizz_demo_wavetables PRIVATE ${JACK_INCLUDE_DIRS})
|
|
||||||
target_link_libraries(sfizz_demo_wavetables PRIVATE sfizz::sfizz Qt5::Widgets ${JACK_LIBRARIES})
|
|
||||||
set_target_properties(sfizz_demo_wavetables PROPERTIES AUTOUIC ON)
|
|
||||||
|
|
||||||
add_executable(sfizz_demo_parser DemoParser.cpp)
|
|
||||||
target_link_libraries(sfizz_demo_parser PRIVATE sfizz_parser Qt5::Widgets)
|
|
||||||
set_target_properties(sfizz_demo_parser PROPERTIES AUTOUIC ON)
|
|
||||||
|
|
||||||
add_executable(sfizz_demo_stretch_tuning DemoStretchTuning.cpp)
|
|
||||||
target_link_libraries(sfizz_demo_stretch_tuning PRIVATE sfizz::sfizz Qt5::Widgets)
|
|
||||||
set_target_properties(sfizz_demo_stretch_tuning PROPERTIES AUTOUIC ON)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
add_executable(eq_apply EQ.cpp)
|
|
||||||
target_link_libraries(eq_apply PRIVATE sfizz::sfizz sfizz-sndfile)
|
|
||||||
|
|
||||||
add_executable(filter_apply Filter.cpp)
|
|
||||||
target_link_libraries(filter_apply PRIVATE sfizz::sfizz sfizz-sndfile)
|
|
||||||
|
|
||||||
add_executable(sfizz_plot_curve PlotCurve.cpp)
|
|
||||||
target_link_libraries(sfizz_plot_curve PRIVATE sfizz::sfizz)
|
|
||||||
|
|
||||||
add_executable(sfizz_plot_wavetables PlotWavetables.cpp)
|
|
||||||
target_link_libraries(sfizz_plot_wavetables PRIVATE sfizz::sfizz)
|
|
||||||
|
|
||||||
add_executable(sfizz_plot_lfo PlotLFO.cpp)
|
|
||||||
target_link_libraries(sfizz_plot_lfo PRIVATE sfizz::sfizz sfizz-sndfile)
|
|
||||||
|
|
||||||
add_executable(sfizz_file_instrument FileInstrument.cpp)
|
|
||||||
target_link_libraries(sfizz_file_instrument PRIVATE sfizz::sfizz sfizz-sndfile)
|
|
||||||
|
|
||||||
add_executable(sfizz_file_wavetable FileWavetable.cpp)
|
|
||||||
target_link_libraries(sfizz_file_wavetable PRIVATE sfizz::sfizz)
|
|
||||||
|
|
||||||
add_executable(sfizz_tuning Tuning.cpp)
|
|
||||||
target_link_libraries(sfizz_tuning PRIVATE sfizz::sfizz)
|
|
||||||
|
|
||||||
file(COPY "." DESTINATION ${CMAKE_BINARY_DIR}/tests)
|
file(COPY "." DESTINATION ${CMAKE_BINARY_DIR}/tests)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue