SceneSwitcher/plugins/base/CMakeLists.txt
WarmUpTill aa87911b71
Some checks failed
debian-build / build (push) Has been cancelled
Check locale / ubuntu64 (push) Has been cancelled
Push to master / Check Formatting 🔍 (push) Has been cancelled
Push to master / Build Project 🧱 (push) Has been cancelled
Push to master / Create Release 🛫 (push) Has been cancelled
Use cpp-httplib based HTTP action type
The goal is to remove the older, more limited version of the HTTP action
at some point in the future.
2025-03-30 14:06:19 +02:00

213 lines
7.7 KiB
CMake

cmake_minimum_required(VERSION 3.14)
project(advanced-scene-switcher-base)
add_library(${PROJECT_NAME} MODULE)
target_sources(
${PROJECT_NAME}
PRIVATE macro-action-audio.cpp
macro-action-audio.hpp
macro-action-clipboard.cpp
macro-action-clipboard.hpp
macro-action-file.cpp
macro-action-file.hpp
macro-action-filter.cpp
macro-action-filter.hpp
macro-action-hotkey.cpp
macro-action-hotkey.hpp
macro-action-http-legacy.cpp
macro-action-http-legacy.hpp
macro-action-log.cpp
macro-action-log.hpp
macro-action-media.cpp
macro-action-media.hpp
macro-action-osc.cpp
macro-action-osc.hpp
macro-action-plugin-state.cpp
macro-action-plugin-state.hpp
macro-action-profile.cpp
macro-action-profile.hpp
macro-action-projector.cpp
macro-action-projector.hpp
macro-action-random.cpp
macro-action-random.hpp
macro-action-recording.cpp
macro-action-recording.hpp
macro-action-replay-buffer.cpp
macro-action-replay-buffer.hpp
macro-action-run.cpp
macro-action-run.hpp
macro-action-scene-collection.cpp
macro-action-scene-collection.hpp
macro-action-scene-lock.cpp
macro-action-scene-lock.hpp
macro-action-scene-order.cpp
macro-action-scene-order.hpp
macro-action-scene-switch.cpp
macro-action-scene-switch.hpp
macro-action-scene-transform.cpp
macro-action-scene-transform.hpp
macro-action-scene-visibility.cpp
macro-action-scene-visibility.hpp
macro-action-screenshot.cpp
macro-action-screenshot.hpp
macro-action-sequence.cpp
macro-action-sequence.hpp
macro-action-source.cpp
macro-action-source.hpp
macro-action-streaming.cpp
macro-action-streaming.hpp
macro-action-studio-mode.cpp
macro-action-studio-mode.hpp
macro-action-systray.cpp
macro-action-systray.hpp
macro-action-timer.cpp
macro-action-timer.hpp
macro-action-transition.cpp
macro-action-transition.hpp
macro-action-virtual-cam.cpp
macro-action-virtual-cam.hpp
macro-action-wait.cpp
macro-action-wait.hpp
macro-action-websocket.cpp
macro-action-websocket.hpp
macro-action-window.cpp
macro-action-window.hpp
macro-condition-audio.cpp
macro-condition-audio.hpp
macro-condition-clipboard.cpp
macro-condition-clipboard.hpp
macro-condition-cursor.cpp
macro-condition-cursor.hpp
macro-condition-date.cpp
macro-condition-date.hpp
macro-condition-display.cpp
macro-condition-display.hpp
macro-condition-file.cpp
macro-condition-file.hpp
macro-condition-filter.cpp
macro-condition-filter.hpp
macro-condition-folder.cpp
macro-condition-folder.hpp
macro-condition-game-capture.cpp
macro-condition-game-capture.hpp
macro-condition-hotkey.cpp
macro-condition-hotkey.hpp
macro-condition-idle.cpp
macro-condition-idle.hpp
macro-condition-media.cpp
macro-condition-media.hpp
macro-condition-obs-stats.cpp
macro-condition-obs-stats.hpp
macro-condition-plugin-state.cpp
macro-condition-plugin-state.hpp
macro-condition-process.cpp
macro-condition-process.hpp
macro-condition-profile.cpp
macro-condition-profile.hpp
macro-condition-recording.cpp
macro-condition-recording.hpp
macro-condition-replay-buffer.cpp
macro-condition-replay-buffer.hpp
macro-condition-run.cpp
macro-condition-run.hpp
macro-condition-scene-order.cpp
macro-condition-scene-order.hpp
macro-condition-scene-transform.cpp
macro-condition-scene-transform.hpp
macro-condition-scene-visibility.cpp
macro-condition-scene-visibility.hpp
macro-condition-scene.cpp
macro-condition-scene.hpp
macro-condition-screenshot.cpp
macro-condition-screenshot.hpp
macro-condition-slideshow.cpp
macro-condition-slideshow.hpp
macro-condition-source.cpp
macro-condition-source.hpp
macro-condition-streaming.cpp
macro-condition-streaming.hpp
macro-condition-studio-mode.cpp
macro-condition-studio-mode.hpp
macro-condition-timer.cpp
macro-condition-timer.hpp
macro-condition-transition.cpp
macro-condition-transition.hpp
macro-condition-virtual-cam.cpp
macro-condition-virtual-cam.hpp
macro-condition-websocket.cpp
macro-condition-websocket.hpp
macro-condition-window.cpp
macro-condition-window.hpp)
target_sources(
${PROJECT_NAME}
PRIVATE utils/audio-helpers.cpp
utils/audio-helpers.hpp
utils/connection-manager.cpp
utils/connection-manager.hpp
utils/cursor-helpers.cpp
utils/cursor-helpers.hpp
utils/filter-selection.cpp
utils/filter-selection.hpp
utils/hotkey-helpers.cpp
utils/hotkey-helpers.hpp
utils/json-helpers.cpp
utils/json-helpers.hpp
utils/monitor-helpers.cpp
utils/monitor-helpers.hpp
utils/osc-helpers.cpp
utils/osc-helpers.hpp
utils/process-config.cpp
utils/process-config.hpp
utils/profile-helpers.cpp
utils/profile-helpers.hpp
utils/scene-item-selection.cpp
utils/scene-item-selection.hpp
utils/scene-item-transform-helpers.cpp
utils/scene-item-transform-helpers.hpp
utils/source-properties-button.cpp
utils/source-properties-button.hpp
utils/source-settings-helpers.cpp
utils/source-settings-helpers.hpp
utils/source-setting.cpp
utils/source-setting.hpp
utils/striped-frame.cpp
utils/striped-frame.hpp
utils/text-helpers.cpp
utils/text-helpers.hpp
utils/transform-setting.cpp
utils/transform-setting.hpp
utils/transition-selection.cpp
utils/transition-selection.hpp
utils/websocket-helpers.cpp
utils/websocket-helpers.hpp
utils/websocket-tab.cpp
utils/websocket-tab.hpp)
if(OS_WINDOWS)
target_sources(${PROJECT_NAME} PRIVATE utils/windows/windows.cpp)
elseif(OS_MACOS)
target_sources(${PROJECT_NAME} PRIVATE utils/osx/osx.mm)
else()
target_sources(${PROJECT_NAME} PRIVATE utils/linux/linux.cpp)
find_package(X11 REQUIRED COMPONENTS Xtst)
target_include_directories(${PROJECT_NAME} PRIVATE "${X11_INCLUDE_DIR}"
"${X11_Xtst_INCLUDE_PATH}")
target_link_libraries(${PROJECT_NAME} PRIVATE ${X11_LIBRARIES})
endif()
target_include_directories(${PROJECT_NAME}
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/utils")
get_target_property(ADVSS_SOURCE_DIR advanced-scene-switcher-lib SOURCE_DIR)
add_definitions(-DASIO_STANDALONE)
target_include_directories(
${LIB_NAME}
PUBLIC "${ADVSS_SOURCE_DIR}/deps/asio/asio/include"
"${ADVSS_SOURCE_DIR}/deps/websocketpp"
"${ADVSS_SOURCE_DIR}/deps/obs-websocket/lib")
setup_advss_plugin(${PROJECT_NAME})
set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "")
install_advss_plugin(${PROJECT_NAME})