CMakeLists.txt (1735B)
1 add_subdirectory(JUCE) 2 3 include(cmake/SubprojectVersion.cmake) 4 subproject_version(JUCE juce_version) 5 message(STATUS "VERSION for JUCE: ${juce_version}") 6 7 # Link to libsamplerate 8 set(BUILD_TESTING OFF CACHE BOOL "Don't build libsamplerate tests!") 9 #add_subdirectory(libsamplerate) 10 #subproject_version(libsamplerate libsamplerate_version) 11 #message(STATUS "VERSION for libsamplerate: ${libsamplerate_version}") 12 13 14 include(cmake/WarningFlags.cmake) 15 add_library(juce_plugin_modules STATIC) 16 #add_subdirectory(chowdsp_utils) 17 add_subdirectory(eigen) 18 19 target_link_libraries(juce_plugin_modules 20 PRIVATE 21 BinaryData 22 juce::juce_audio_utils 23 juce::juce_audio_plugin_client 24 juce::juce_dsp 25 eigen 26 #samplerate 27 #chowdsp_dsp 28 PUBLIC 29 juce::juce_recommended_config_flags 30 juce::juce_recommended_lto_flags 31 warning_flags 32 ) 33 34 target_compile_definitions(juce_plugin_modules 35 PUBLIC 36 JUCE_DISPLAY_SPLASH_SCREEN=0 37 JUCE_REPORT_APP_USAGE=0 38 JUCE_WEB_BROWSER=0 39 JUCE_USE_CURL=0 40 JUCE_VST3_CAN_REPLACE_VST2=0 41 JucePlugin_Manufacturer="GuitarML" 42 JucePlugin_VersionString="${CMAKE_PROJECT_VERSION}" 43 JucePlugin_Name="${CMAKE_PROJECT_NAME}" 44 #CHOWDSP_USE_LIBSAMPLERATE=1 45 INTERFACE 46 $<TARGET_PROPERTY:juce_plugin_modules,COMPILE_DEFINITIONS> 47 ) 48 49 target_include_directories(juce_plugin_modules 50 PUBLIC 51 eigen/Eigen 52 #libsamplerate/include 53 INTERFACE 54 $<TARGET_PROPERTY:juce_plugin_modules,INCLUDE_DIRECTORIES> 55 ) 56 57 set_target_properties(juce_plugin_modules PROPERTIES 58 POSITION_INDEPENDENT_CODE TRUE 59 VISIBILITY_INLINES_HIDDEN TRUE 60 C_VISBILITY_PRESET hidden 61 CXX_VISIBILITY_PRESET hidden 62 )