CMakeLists.txt 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. cmake_minimum_required(VERSION 3.28...3.30)
  2. option(ENABLE_SERVICE_UPDATES "Checks for service updates" ON)
  3. set(
  4. RTMP_SERVICES_URL
  5. "https://obsproject.com/obs2_update/rtmp-services"
  6. CACHE STRING
  7. "Default services package URL"
  8. FORCE
  9. )
  10. mark_as_advanced(RTMP_SERVICES_URL)
  11. if(NOT TARGET OBS::file-updater)
  12. add_subdirectory("${CMAKE_SOURCE_DIR}/shared/file-updater" "${CMAKE_BINARY_DIR}/shared/file-updater")
  13. endif()
  14. find_package(jansson REQUIRED)
  15. add_library(rtmp-services MODULE)
  16. add_library(OBS::rtmp-services ALIAS rtmp-services)
  17. target_sources(
  18. rtmp-services
  19. PRIVATE
  20. rtmp-common.c
  21. rtmp-custom.c
  22. rtmp-format-ver.h
  23. rtmp-services-main.c
  24. service-specific/amazon-ivs.c
  25. service-specific/amazon-ivs.h
  26. service-specific/dacast.c
  27. service-specific/dacast.h
  28. service-specific/nimotv.c
  29. service-specific/nimotv.h
  30. service-specific/service-ingest.c
  31. service-specific/service-ingest.h
  32. service-specific/showroom.c
  33. service-specific/showroom.h
  34. service-specific/twitch.c
  35. service-specific/twitch.h
  36. )
  37. target_compile_definitions(
  38. rtmp-services
  39. PRIVATE SERVICES_URL="${RTMP_SERVICES_URL}" $<$<BOOL:${ENABLE_SERVICE_UPDATES}>:ENABLE_SERVICE_UPDATES>
  40. )
  41. target_link_libraries(rtmp-services PRIVATE OBS::libobs OBS::file-updater jansson::jansson)
  42. # Remove once jansson has been fixed on obs-deps
  43. target_link_options(rtmp-services PRIVATE $<$<PLATFORM_ID:Windows>:/IGNORE:4098>)
  44. if(OS_WINDOWS)
  45. configure_file(cmake/windows/obs-module.rc.in rtmp-services.rc)
  46. target_sources(rtmp-services PRIVATE rtmp-services.rc)
  47. endif()
  48. set_target_properties_obs(rtmp-services PROPERTIES FOLDER plugins PREFIX "")