# ==============================================================================
# CrystalizerEQ - CMake Build Configuration
#
# Defines plugin properties, dependencies, and build targets
# Supports VST3 and Standalone formats
# ==============================================================================


cmake_minimum_required(VERSION 3.15)

project(CrystalizerEQ VERSION 1.0.1)

add_subdirectory(juce)

juce_add_plugin(CrystalizerEQ
        COMPANY_NAME "AXIOM"
        IS_SYNTH FALSE
        NEEDS_MIDI_INPUT FALSE
        NEEDS_MIDI_OUTPUT FALSE
        IS_MIDI_EFFECT FALSE
        EDITOR_WANTS_KEYBOARD_FOCUS FALSE
        COPY_PLUGIN_AFTER_BUILD TRUE
        PLUGIN_MANUFACTURER_CODE Axio
        PLUGIN_CODE CrEQ
        FORMATS VST3 Standalone
        PRODUCT_NAME "CrystalizerEQ"
)

target_sources(CrystalizerEQ PRIVATE
        PluginProcessor.cpp
        PluginEditor.cpp
        AXIOMDesignSystem.h
        JuceLibraryCode/BinaryData.cpp
)

target_compile_features(CrystalizerEQ PRIVATE cxx_std_20)

target_link_libraries(CrystalizerEQ PRIVATE
        juce::juce_audio_utils
        juce::juce_audio_plugin_client
        juce::juce_dsp
)
