CMakeLists.txt 1.3 KB

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