mirror of
https://codeberg.org/armin/beamgrid.git
synced 2026-09-01 04:10:47 +02:00
Initial BEAMGRID VST3/AU spectrum analyzer
This commit is contained in:
commit
0a3fe6d853
15 changed files with 908 additions and 0 deletions
86
CMakeLists.txt
Normal file
86
CMakeLists.txt
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
cmake_minimum_required(VERSION 3.22)
|
||||
project(BEAMGRID VERSION 0.1.0)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
include(FetchContent)
|
||||
FetchContent_Declare(
|
||||
juce
|
||||
GIT_REPOSITORY https://github.com/juce-framework/JUCE.git
|
||||
GIT_TAG 8.0.6
|
||||
)
|
||||
FetchContent_MakeAvailable(juce)
|
||||
|
||||
juce_add_plugin(BEAMGRID
|
||||
NAME "BEAMGRID"
|
||||
COMPANY_NAME "Beamgrid"
|
||||
PLUGIN_MANUFACTURER_CODE Bmgr
|
||||
PLUGIN_CODE Bmgr
|
||||
FORMATS VST3 AU
|
||||
PRODUCT_NAME "BEAMGRID"
|
||||
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
|
||||
)
|
||||
|
||||
target_sources(BEAMGRID PRIVATE
|
||||
Source/JuceHeader.h
|
||||
Source/Analyser.h
|
||||
Source/Analyser.cpp
|
||||
Source/BeamgridLookAndFeel.h
|
||||
Source/BeamgridLookAndFeel.cpp
|
||||
Source/AnalyserComponent.h
|
||||
Source/AnalyserComponent.cpp
|
||||
Source/PluginProcessor.h
|
||||
Source/PluginProcessor.cpp
|
||||
Source/PluginEditor.h
|
||||
Source/PluginEditor.cpp
|
||||
)
|
||||
|
||||
target_compile_definitions(BEAMGRID PUBLIC
|
||||
JUCE_VST3_CAN_REPLACE_VST2=0
|
||||
JUCE_USE_CAMERA_PERMISSIONS=0
|
||||
)
|
||||
|
||||
target_link_libraries(BEAMGRID PRIVATE
|
||||
juce::juce_audio_basics
|
||||
juce::juce_audio_devices
|
||||
juce::juce_audio_processors
|
||||
juce::juce_audio_utils
|
||||
juce::juce_core
|
||||
juce::juce_data_structures
|
||||
juce::juce_dsp
|
||||
juce::juce_events
|
||||
juce::juce_graphics
|
||||
juce::juce_gui_basics
|
||||
juce::juce_gui_extra
|
||||
)
|
||||
|
||||
if(APPLE)
|
||||
set_target_properties(BEAMGRID PROPERTIES
|
||||
CMAKE_OSX_DEPLOYMENT_TARGET "10.15"
|
||||
)
|
||||
endif()
|
||||
|
||||
# Generate a version header with the current Git commit, dirty state and a
|
||||
# fresh build timestamp. Runs on every build via a custom target.
|
||||
set(GENERATED_DIR ${CMAKE_BINARY_DIR}/generated)
|
||||
file(MAKE_DIRECTORY ${GENERATED_DIR})
|
||||
set(GIT_VERSION_HEADER ${GENERATED_DIR}/GitVersion.h)
|
||||
|
||||
add_custom_target(generate_version ALL
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-D SRC_DIR=${CMAKE_SOURCE_DIR}
|
||||
-D TEMPLATE=${CMAKE_SOURCE_DIR}/Source/GitVersion.h.in
|
||||
-D OUTPUT=${GIT_VERSION_HEADER}
|
||||
-P ${CMAKE_SOURCE_DIR}/cmake/generate_version.cmake
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
COMMENT "Generating BEAMGRID version header"
|
||||
)
|
||||
|
||||
target_include_directories(BEAMGRID PRIVATE ${GENERATED_DIR})
|
||||
add_dependencies(BEAMGRID generate_version)
|
||||
Loading…
Add table
Add a link
Reference in a new issue