72 lines
1.9 KiB
CMake
72 lines
1.9 KiB
CMake
if(CLAP_WRAP_PROJUCER_PLUGIN)
|
|
set(PATH_TO_JUCE "${JUCE_SOURCE_DIR}")
|
|
set(PATH_TO_CLAP_EXTENSIONS ${CMAKE_CURRENT_SOURCE_DIR}/../..)
|
|
|
|
if(APPLE)
|
|
set(JUCER_GENERATOR "Xcode")
|
|
elseif(WIN32)
|
|
set(JUCER_GENERATOR "VisualStudio2019")
|
|
else() # Linux
|
|
set(JUCER_GENERATOR "LinuxMakefile")
|
|
endif()
|
|
|
|
include(${PATH_TO_CLAP_EXTENSIONS}/cmake/JucerClap.cmake)
|
|
create_jucer_clap_target(
|
|
TARGET "GainPlugin"
|
|
PLUGIN_NAME "GainPlugin"
|
|
BINARY_NAME "MyGreatGainPlugin"
|
|
PLUGIN_CODE "Gplg"
|
|
MANUFACTURER_NAME "${COMPANY_NAME}"
|
|
MANUFACTURER_CODE "${COMPANY_CODE}"
|
|
VERSION_STRING "${CMAKE_PROJECT_VERSION}"
|
|
CLAP_ID "org.free-audio.GainPlugin"
|
|
CLAP_FEATURES audio-effect utility
|
|
CLAP_PROCESS_EVENTS_RESOLUTION_SAMPLES 64
|
|
)
|
|
|
|
return()
|
|
endif()
|
|
|
|
juce_add_plugin(GainPlugin
|
|
COMPANY_NAME "${COMPANY_NAME}"
|
|
PLUGIN_MANUFACTURER_CODE "${COMPANY_CODE}"
|
|
PLUGIN_CODE Gplg
|
|
FORMATS ${JUCE_FORMATS}
|
|
PRODUCT_NAME "GainPlugin"
|
|
)
|
|
|
|
clap_juce_extensions_plugin(
|
|
TARGET GainPlugin
|
|
CLAP_ID "org.free-audio.GainPlugin"
|
|
CLAP_FEATURES audio-effect utility
|
|
CLAP_PROCESS_EVENTS_RESOLUTION_SAMPLES 64
|
|
)
|
|
|
|
target_sources(GainPlugin PRIVATE
|
|
GainPlugin.cpp
|
|
PluginEditor.cpp
|
|
)
|
|
|
|
target_compile_definitions(GainPlugin PUBLIC
|
|
JUCE_DISPLAY_SPLASH_SCREEN=1
|
|
JUCE_REPORT_APP_USAGE=0
|
|
JUCE_WEB_BROWSER=0
|
|
JUCE_USE_CURL=0
|
|
JUCE_JACK=1
|
|
JUCE_ALSA=1
|
|
JUCE_MODAL_LOOPS_PERMITTED=1 # required for Linux FileChooser with JUCE 6.0.7
|
|
JUCE_VST3_CAN_REPLACE_VST2=0
|
|
)
|
|
|
|
target_link_libraries(GainPlugin
|
|
PRIVATE
|
|
juce::juce_audio_utils
|
|
juce::juce_audio_plugin_client
|
|
juce::juce_dsp
|
|
clap_juce_extensions
|
|
PUBLIC
|
|
juce::juce_recommended_config_flags
|
|
juce::juce_recommended_lto_flags
|
|
juce::juce_recommended_warning_flags
|
|
)
|