CMakeLists.txt 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. cmake_minimum_required(VERSION 3.28...3.30)
  2. if(NOT ENABLE_DECKLINK)
  3. target_disable(decklink-captions)
  4. return()
  5. endif()
  6. if(OS_LINUX OR OS_FREEBSD OR OS_OPENBSD)
  7. find_package(X11 REQUIRED)
  8. mark_as_advanced(X11)
  9. endif()
  10. find_package(Qt6 REQUIRED Widgets)
  11. add_library(decklink-captions MODULE)
  12. add_library(OBS::decklink-captions ALIAS decklink-captions)
  13. target_sources(decklink-captions PRIVATE decklink-captions.cpp decklink-captions.h forms/captions.ui)
  14. target_compile_options(
  15. decklink-captions
  16. PRIVATE $<$<PLATFORM_ID:Darwin>:-Wno-quoted-include-in-framework-header> $<$<PLATFORM_ID:Darwin>:-Wno-comma>
  17. )
  18. target_link_libraries(
  19. decklink-captions
  20. PRIVATE
  21. OBS::frontend-api
  22. OBS::libobs
  23. Qt::Widgets
  24. "$<$<PLATFORM_ID:Darwin>:$<LINK_LIBRARY:FRAMEWORK,Cocoa.framework>>"
  25. $<$<PLATFORM_ID:Linux,FreeBSD>:X11::X11>
  26. )
  27. if(OS_WINDOWS)
  28. configure_file(cmake/windows/obs-module.rc.in decklink-captions.rc)
  29. target_sources(decklink-captions PRIVATE decklink-captions.rc)
  30. set_property(TARGET decklink-captions APPEND PROPERTY AUTORCC_OPTIONS --format-version 1)
  31. endif()
  32. set_target_properties_obs(
  33. decklink-captions
  34. PROPERTIES FOLDER plugins/decklink
  35. PREFIX ""
  36. AUTOMOC ON
  37. AUTOUIC ON
  38. AUTORCC ON
  39. AUTOUIC_SEARCH_PATHS forms
  40. )