CMakeLists.txt 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. option(DISABLE_PLUGINS "Disable building of OBS plugins" OFF)
  2. if(DISABLE_PLUGINS)
  3. message(STATUS "DISABLE_PLUGINS is set; building of plugins is disabled.")
  4. return()
  5. endif()
  6. if(WIN32)
  7. option(BUILD_CA_ENCODER "Build CoreAudio encoder module" ON)
  8. if (BUILD_CA_ENCODER)
  9. add_subdirectory(coreaudio-encoder)
  10. endif()
  11. add_subdirectory(win-wasapi)
  12. add_subdirectory(win-dshow)
  13. add_subdirectory(win-capture)
  14. add_subdirectory(decklink/win)
  15. add_subdirectory(win-mf)
  16. add_subdirectory(obs-qsv11)
  17. add_subdirectory(vlc-video)
  18. option(BUILD_AMF_ENCODER "Build AMD Advanced Media Framework encoder module" OFF)
  19. if (BUILD_AMF_ENCODER)
  20. if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/enc-amf/CMakeLists.txt")
  21. add_subdirectory(enc-amf)
  22. else()
  23. message(STATUS "enc-amf submodule not found! Please fetch submodules. enc-amf plugin disabled.")
  24. endif()
  25. endif()
  26. if (MSVC)
  27. add_subdirectory(win-ivcam)
  28. endif()
  29. elseif(APPLE)
  30. add_subdirectory(coreaudio-encoder)
  31. add_subdirectory(mac-avcapture)
  32. add_subdirectory(mac-capture)
  33. add_subdirectory(mac-vth264)
  34. add_subdirectory(mac-syphon)
  35. add_subdirectory(decklink/mac)
  36. add_subdirectory(vlc-video)
  37. add_subdirectory(linux-jack)
  38. elseif("${CMAKE_SYSTEM_NAME}" MATCHES "Linux")
  39. add_subdirectory(linux-capture)
  40. add_subdirectory(linux-pulseaudio)
  41. add_subdirectory(linux-v4l2)
  42. add_subdirectory(linux-jack)
  43. add_subdirectory(linux-alsa)
  44. add_subdirectory(decklink/linux)
  45. add_subdirectory(vlc-video)
  46. elseif("${CMAKE_SYSTEM_NAME}" MATCHES "FreeBSD")
  47. add_subdirectory(linux-capture)
  48. add_subdirectory(linux-pulseaudio)
  49. add_subdirectory(linux-v4l2)
  50. add_subdirectory(linux-jack)
  51. endif()
  52. if(WIN32 OR APPLE)
  53. option(BUILD_BROWSER "Build browser plugin" OFF)
  54. if (BUILD_BROWSER)
  55. if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/obs-browser/CMakeLists.txt")
  56. add_subdirectory(obs-browser)
  57. else()
  58. message(STATUS "obs-browser submodule not found! Please fetch submodules. obs-browser plugin disabled.")
  59. endif()
  60. endif()
  61. if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/obs-vst/CMakeLists.txt")
  62. add_subdirectory(obs-vst)
  63. else()
  64. message(STATUS "obs-vst submodule not found! Please fetch/update submodules. obs-vst plugin disabled.")
  65. endif()
  66. endif()
  67. add_subdirectory(image-source)
  68. add_subdirectory(obs-x264)
  69. add_subdirectory(obs-libfdk)
  70. add_subdirectory(obs-ffmpeg)
  71. add_subdirectory(obs-outputs)
  72. add_subdirectory(obs-filters)
  73. add_subdirectory(obs-transitions)
  74. add_subdirectory(obs-text)
  75. add_subdirectory(rtmp-services)
  76. add_subdirectory(text-freetype2)