libv4l.mk 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. ################################################################################
  2. #
  3. # libv4l
  4. #
  5. ################################################################################
  6. LIBV4L_VERSION = 1.24.1
  7. LIBV4L_SOURCE = v4l-utils-$(LIBV4L_VERSION).tar.bz2
  8. LIBV4L_SITE = https://linuxtv.org/downloads/v4l-utils
  9. LIBV4L_INSTALL_STAGING = YES
  10. LIBV4L_DEPENDENCIES = host-pkgconf
  11. LIBV4L_CONF_OPTS = --disable-doxygen-doc --disable-qvidcap --disable-v4l2-tracer
  12. # needed to get utils/qv4l link flags right
  13. LIBV4L_AUTORECONF = YES
  14. # add host-gettext for AM_ICONV macro
  15. LIBV4L_DEPENDENCIES += host-gettext
  16. # fix uclibc-ng configure/compile
  17. LIBV4L_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99'
  18. # v4l-utils components have different licences, see v4l-utils.spec for details
  19. LIBV4L_LICENSE = GPL-2.0+ (utilities), LGPL-2.1+ (libraries)
  20. LIBV4L_LICENSE_FILES = COPYING COPYING.libv4l lib/libv4l1/libv4l1-kernelcode-license.txt
  21. ifeq ($(BR2_PACKAGE_ALSA_LIB),y)
  22. LIBV4L_DEPENDENCIES += alsa-lib
  23. endif
  24. ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y)
  25. LIBV4L_DEPENDENCIES += argp-standalone $(TARGET_NLS_DEPENDENCIES)
  26. LIBV4L_CONF_ENV += LIBS=$(TARGET_NLS_LIBS)
  27. endif
  28. LIBV4L_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBICONV),libiconv)
  29. ifeq ($(BR2_PACKAGE_JPEG),y)
  30. LIBV4L_DEPENDENCIES += jpeg
  31. LIBV4L_CONF_OPTS += --with-jpeg
  32. else
  33. LIBV4L_CONF_OPTS += --without-jpeg
  34. endif
  35. ifeq ($(BR2_PACKAGE_HAS_LIBGL),y)
  36. LIBV4L_DEPENDENCIES += libgl
  37. endif
  38. ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
  39. LIBV4L_CONF_OPTS += --with-libudev --with-udevdir=/usr/lib/udev
  40. LIBV4L_DEPENDENCIES += udev
  41. else
  42. LIBV4L_CONF_OPTS += --without-libudev
  43. endif
  44. ifeq ($(BR2_PACKAGE_LIBGLU),y)
  45. LIBV4L_DEPENDENCIES += libglu
  46. endif
  47. ifeq ($(BR2_PACKAGE_LIBV4L_UTILS),y)
  48. LIBV4L_CONF_OPTS += --enable-v4l-utils
  49. LIBV4L_DEPENDENCIES += $(TARGET_NLS_DEPENDENCIES)
  50. # v4l2-ctl needs c++11, use gnu++11 for typeof support
  51. LIBV4L_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -std=gnu++11"
  52. # IR BPF decoder support needs toolchain with linux-headers >= 3.18
  53. # libelf and clang support
  54. LIBV4L_CONF_OPTS += --disable-bpf
  55. ifeq ($(BR2_PACKAGE_QT5BASE)$(BR2_PACKAGE_QT5BASE_GUI)$(BR2_PACKAGE_QT5BASE_WIDGETS),yyy)
  56. LIBV4L_CONF_OPTS += --enable-qv4l2
  57. LIBV4L_DEPENDENCIES += qt5base
  58. # protect against host version detection of moc-qt5/rcc-qt5/uic-qt5
  59. LIBV4L_CONF_ENV += \
  60. ac_cv_prog_MOC=$(HOST_DIR)/bin/moc \
  61. ac_cv_prog_RCC=$(HOST_DIR)/bin/rcc \
  62. ac_cv_prog_UIC=$(HOST_DIR)/bin/uic
  63. else
  64. LIBV4L_CONF_OPTS += --disable-qv4l2
  65. endif
  66. else
  67. LIBV4L_CONF_OPTS += --disable-v4l-utils
  68. endif
  69. ifeq ($(BR2_PACKAGE_SDL2_IMAGE),y)
  70. LIBV4L_DEPENDENCIES += sdl2_image
  71. endif
  72. $(eval $(autotools-package))