94 lines
3.5 KiB
CMake
94 lines
3.5 KiB
CMake
# ==============================================================================
|
|
#
|
|
# This file is part of the JUCE framework.
|
|
# Copyright (c) Raw Material Software Limited
|
|
#
|
|
# JUCE is an open source framework subject to commercial or open source
|
|
# licensing.
|
|
#
|
|
# By downloading, installing, or using the JUCE framework, or combining the
|
|
# JUCE framework with any other source code, object code, content or any other
|
|
# copyrightable work, you agree to the terms of the JUCE End User Licence
|
|
# Agreement, and all incorporated terms including the JUCE Privacy Policy and
|
|
# the JUCE Website Terms of Service, as applicable, which will bind you. If you
|
|
# do not agree to the terms of these agreements, we will not license the JUCE
|
|
# framework to you, and you must discontinue the installation or download
|
|
# process and cease use of the JUCE framework.
|
|
#
|
|
# JUCE End User Licence Agreement: https://juce.com/legal/juce-8-licence/
|
|
# JUCE Privacy Policy: https://juce.com/juce-privacy-policy
|
|
# JUCE Website Terms of Service: https://juce.com/juce-website-terms-of-service/
|
|
#
|
|
# Or:
|
|
#
|
|
# You may also use this code under the terms of the AGPLv3:
|
|
# https://www.gnu.org/licenses/agpl-3.0.en.html
|
|
#
|
|
# THE JUCE FRAMEWORK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL
|
|
# WARRANTIES, WHETHER EXPRESSED OR IMPLIED, INCLUDING WARRANTY OF
|
|
# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED.
|
|
#
|
|
# ==============================================================================
|
|
|
|
juce_add_gui_app(AudioPluginHost
|
|
BUNDLE_ID com.juce.pluginhost
|
|
ICON_BIG "${CMAKE_CURRENT_SOURCE_DIR}/Source/JUCEAppIcon.png"
|
|
MICROPHONE_PERMISSION_ENABLED TRUE
|
|
PLUGINHOST_AU TRUE)
|
|
|
|
juce_generate_juce_header(AudioPluginHost)
|
|
|
|
target_sources(AudioPluginHost PRIVATE
|
|
Source/HostStartup.cpp
|
|
Source/Plugins/ARAPlugin.cpp
|
|
Source/Plugins/IOConfigurationWindow.cpp
|
|
Source/Plugins/InternalPlugins.cpp
|
|
Source/Plugins/PluginGraph.cpp
|
|
Source/UI/GraphEditorPanel.cpp
|
|
Source/UI/MainHostWindow.cpp)
|
|
|
|
juce_add_binary_data(AudioPluginHostData SOURCES
|
|
../../examples/Assets/cassette_recorder.wav
|
|
../../examples/Assets/cello.wav
|
|
../../examples/Assets/guitar_amp.wav
|
|
../../examples/Assets/proaudio.path
|
|
../../examples/Assets/reverb_ir.wav
|
|
../../examples/Assets/singing.ogg)
|
|
|
|
target_compile_definitions(AudioPluginHost PRIVATE
|
|
JUCE_ALSA=1
|
|
JUCE_CONTENT_SHARING=1
|
|
JUCE_DIRECTSOUND=1
|
|
JUCE_DISABLE_CAUTIOUS_PARAMETER_ID_CHECKING=1
|
|
JUCE_PLUGINHOST_LADSPA=1
|
|
JUCE_PLUGINHOST_LV2=1
|
|
JUCE_PLUGINHOST_VST3=1
|
|
JUCE_PLUGINHOST_VST=0
|
|
JUCE_PLUGINHOST_ARA=0
|
|
JUCE_USE_CAMERA=0
|
|
JUCE_USE_CDBURNER=0
|
|
JUCE_USE_CDREADER=0
|
|
JUCE_USE_CURL=0
|
|
JUCE_USE_FLAC=0
|
|
JUCE_USE_OGGVORBIS=1
|
|
JUCE_VST3_HOST_CROSS_PLATFORM_UID=1
|
|
JUCE_WASAPI=1
|
|
JUCE_WEB_BROWSER=0
|
|
PIP_JUCE_EXAMPLES_DIRECTORY_STRING="${JUCE_SOURCE_DIR}/examples"
|
|
# This is a temporary workaround to allow builds to complete on Xcode 15.
|
|
# Add -Wl,-ld_classic to the OTHER_LDFLAGS build setting if you need to
|
|
# deploy to older versions of macOS/iOS.
|
|
JUCE_SILENCE_XCODE_15_LINKER_WARNING=1)
|
|
|
|
target_link_libraries(AudioPluginHost PRIVATE
|
|
AudioPluginHostData
|
|
juce::juce_audio_utils
|
|
juce::juce_cryptography
|
|
juce::juce_dsp
|
|
juce::juce_opengl
|
|
juce::juce_recommended_config_flags
|
|
juce::juce_recommended_lto_flags
|
|
juce::juce_recommended_warning_flags)
|
|
|
|
juce_add_bundle_resources_directory(AudioPluginHost ../../examples/Assets)
|