36 lines
1.2 KiB
CMake
36 lines
1.2 KiB
CMake
# native_bridge/juce_fx/CMakeLists.txt
|
|
# G1 POC: juce_fx_bridge.exe — JUCE AudioProcessorGraph thay RealtimeFxChain
|
|
# trong SHM realtime loop. Windows only. Build riêng (không chung với
|
|
# daw_vst_bridge) để JUCE không kéo opengl/fluidsynth vào bridge cũ.
|
|
cmake_minimum_required(VERSION 3.20)
|
|
project(juce_fx_bridge LANGUAGES CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/../JUCE/CMakeLists.txt")
|
|
message(FATAL_ERROR "JUCE submodule missing — run: git submodule update --init native_bridge/JUCE")
|
|
endif()
|
|
|
|
# JUCE framework (submodule, tag 8.0.7). add_subdirectory tạo targets
|
|
# juce::core, juce::audio_basics, juce::audio_processors, ...
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../JUCE JUCE EXCLUDE_FROM_ALL)
|
|
|
|
add_executable(juce_fx_bridge
|
|
main_juce_fx.cpp
|
|
JuceFxLoop.cpp
|
|
JuceFxEngine.cpp
|
|
)
|
|
target_include_directories(juce_fx_bridge PRIVATE
|
|
${CMAKE_CURRENT_SOURCE_DIR}/../include
|
|
)
|
|
target_link_libraries(juce_fx_bridge PRIVATE
|
|
juce::juce_core
|
|
juce::juce_audio_basics
|
|
juce::juce_audio_processors
|
|
)
|
|
if(WIN32)
|
|
# timeBeginPeriod (winmm) — như fx_vst_bridge
|
|
target_link_libraries(juce_fx_bridge PRIVATE winmm)
|
|
endif()
|