| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- cmake_minimum_required(VERSION 3.16...3.25)
- legacy_check()
- option(ENABLE_VST "Enable building OBS with VST plugin" ON)
- if(NOT ENABLE_VST)
- target_disable(obs-vst)
- return()
- endif()
- add_library(obs-vst MODULE)
- add_library(OBS::vst ALIAS obs-vst)
- find_qt(COMPONENTS Widgets)
- target_sources(
- obs-vst
- PRIVATE obs-vst.cpp
- VSTPlugin.cpp
- EditorWidget.cpp
- headers/vst-plugin-callbacks.hpp
- headers/EditorWidget.h
- headers/VSTPlugin.h
- vst_header/aeffectx.h)
- target_include_directories(obs-vst PRIVATE vst_header)
- target_link_libraries(obs-vst PRIVATE OBS::libobs Qt::Widgets)
- if(OS_MACOS)
- find_library(FOUNDATION Foundation)
- find_library(COCOA Cocoa)
- mark_as_advanced(COCOA FOUNDATION)
- target_sources(obs-vst PRIVATE mac/VSTPlugin-osx.mm mac/EditorWidget-osx.mm)
- target_link_libraries(obs-vst PRIVATE ${COCOA} ${FOUNDATION})
- elseif(OS_WINDOWS)
- target_sources(obs-vst PRIVATE win/VSTPlugin-win.cpp win/EditorWidget-win.cpp)
- set_property(
- TARGET obs-vst
- APPEND
- PROPERTY AUTORCC_OPTIONS --format-version 1)
- elseif(OS_POSIX)
- target_sources(obs-vst PRIVATE linux/VSTPlugin-linux.cpp linux/EditorWidget-linux.cpp)
- endif()
- set_target_properties_obs(
- obs-vst
- PROPERTIES FOLDER plugins
- PREFIX ""
- AUTOMOC ON
- AUTOUIC ON
- AUTORCC ON)
|