CMakeLists.txt 972 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. project(linux-v4l2)
  2. if(DISABLE_V4L2)
  3. message(STATUS "v4l2 plugin disabled")
  4. return()
  5. endif()
  6. if(ENABLE_V4L2)
  7. find_package(Libv4l2 REQUIRED)
  8. else()
  9. find_package(Libv4l2)
  10. if(NOT LIBV4L2_FOUND)
  11. message(STATUS "libv4l2 not found, disabling v4l2 plugin")
  12. return()
  13. endif()
  14. endif()
  15. if(DISABLE_UDEV)
  16. add_definitions(-DHAVE_UDEV)
  17. else()
  18. find_package(UDev)
  19. if(NOT UDEV_FOUND)
  20. message(STATUS "udev disabled for v4l2 plugin")
  21. else()
  22. set(linux-v4l2-udev_SOURCES
  23. v4l2-udev.c
  24. )
  25. endif()
  26. endif()
  27. include_directories(
  28. SYSTEM "${CMAKE_SOURCE_DIR}/libobs"
  29. ${LIBV4L2_INCLUDE_DIRS}
  30. )
  31. set(linux-v4l2_SOURCES
  32. linux-v4l2.c
  33. v4l2-controls.c
  34. v4l2-input.c
  35. v4l2-helpers.c
  36. v4l2-output.c
  37. ${linux-v4l2-udev_SOURCES}
  38. )
  39. add_library(linux-v4l2 MODULE
  40. ${linux-v4l2_SOURCES}
  41. )
  42. target_link_libraries(linux-v4l2
  43. libobs
  44. ${LIBV4L2_LIBRARIES}
  45. ${UDEV_LIBRARIES}
  46. )
  47. set_target_properties(linux-v4l2 PROPERTIES FOLDER "plugins")
  48. install_obs_plugin_with_data(linux-v4l2 data)