cmake_minimum_required(VERSION 3.22) project(HouseOfMixtape VERSION 0.1.0 LANGUAGES C CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) # JUCE is expected as a sibling directory by default. Override with # -DJUCE_DIR=/path/to/JUCE if you keep it elsewhere. if(NOT DEFINED JUCE_DIR) set(JUCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../JUCE") endif() if(NOT EXISTS "${JUCE_DIR}/CMakeLists.txt") message(FATAL_ERROR "JUCE not found at ${JUCE_DIR}. " "Clone https://github.com/juce-framework/JUCE next to this dir, " "or pass -DJUCE_DIR=/path/to/JUCE." ) endif() add_subdirectory(${JUCE_DIR} JUCE) juce_add_plugin(HouseOfMixtape COMPANY_NAME "House of Mixtape" BUNDLE_ID "com.houseofmixtape.daw" PLUGIN_MANUFACTURER_CODE HoMx PLUGIN_CODE HoM1 FORMATS VST3 AU Standalone PRODUCT_NAME "House of Mixtape" NEEDS_MIDI_INPUT FALSE NEEDS_MIDI_OUTPUT FALSE IS_SYNTH FALSE EDITOR_WANTS_KEYBOARD_FOCUS TRUE COPY_PLUGIN_AFTER_BUILD TRUE VST3_CATEGORIES "Fx" "Tools" AU_MAIN_TYPE "kAudioUnitType_Effect" ) target_sources(HouseOfMixtape PRIVATE Source/PluginProcessor.cpp Source/PluginEditor.cpp Source/HomApiClient.cpp ) target_compile_definitions(HouseOfMixtape PRIVATE JUCE_WEB_BROWSER=0 JUCE_USE_CURL=1 JUCE_VST3_CAN_REPLACE_VST2=0 ) target_link_libraries(HouseOfMixtape PRIVATE juce::juce_audio_utils juce::juce_dsp juce::juce_gui_extra juce::juce_audio_formats juce::juce_audio_devices juce::juce_recommended_config_flags juce::juce_recommended_lto_flags juce::juce_recommended_warning_flags )