libv4l.mk 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. ################################################################################
  2. #
  3. # libv4l
  4. #
  5. ################################################################################
  6. LIBV4L_VERSION = 1.18.0
  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
  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
  26. LIBV4L_LIBS += -largp
  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-udevdir=/usr/lib/udev
  40. LIBV4L_DEPENDENCIES += udev
  41. endif
  42. ifeq ($(BR2_PACKAGE_LIBGLU),y)
  43. LIBV4L_DEPENDENCIES += libglu
  44. endif
  45. ifeq ($(BR2_PACKAGE_LIBV4L_UTILS),y)
  46. LIBV4L_CONF_OPTS += --enable-v4l-utils
  47. LIBV4L_DEPENDENCIES += $(TARGET_NLS_DEPENDENCIES)
  48. # IR BPF decoder support needs toolchain with linux-headers >= 3.18
  49. # libelf and clang support
  50. LIBV4L_CONF_OPTS += --disable-bpf
  51. ifeq ($(BR2_PACKAGE_QT5BASE)$(BR2_PACKAGE_QT5BASE_GUI)$(BR2_PACKAGE_QT5BASE_WIDGETS),yyy)
  52. LIBV4L_CONF_OPTS += --enable-qv4l2
  53. LIBV4L_DEPENDENCIES += qt5base
  54. # protect against host version detection of moc-qt5/rcc-qt5/uic-qt5
  55. LIBV4L_CONF_ENV += \
  56. ac_cv_prog_MOC=$(HOST_DIR)/bin/moc \
  57. ac_cv_prog_RCC=$(HOST_DIR)/bin/rcc \
  58. ac_cv_prog_UIC=$(HOST_DIR)/bin/uic
  59. # qt5 needs c++11 (since qt-5.7)
  60. ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
  61. LIBV4L_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11"
  62. endif
  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. LIBV4L_CONF_ENV += LIBS="$(LIBV4L_LIBS)"
  73. $(eval $(autotools-package))