qt5multimedia.mk 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. ################################################################################
  2. #
  3. # qt5multimedia
  4. #
  5. ################################################################################
  6. QT5MULTIMEDIA_VERSION = $(QT5_VERSION)
  7. QT5MULTIMEDIA_SITE = $(QT5_SITE)
  8. QT5MULTIMEDIA_SOURCE = qtmultimedia-opensource-src-$(QT5MULTIMEDIA_VERSION).tar.xz
  9. QT5MULTIMEDIA_DEPENDENCIES = qt5base
  10. QT5MULTIMEDIA_INSTALL_STAGING = YES
  11. ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
  12. QT5MULTIMEDIA_LICENSE = GPL-2.0+ or LGPL-3.0, GPL-3.0 with exception(tools), GFDL-1.3 (docs)
  13. QT5MULTIMEDIA_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPL3 LICENSE.GPL3-EXCEPT LICENSE.LGPL3 LICENSE.FDL
  14. else
  15. QT5MULTIMEDIA_LICENSE = GPL-3.0 or LGPL-2.1 with exception or LGPL-3.0, GFDL-1.3 (docs)
  16. QT5MULTIMEDIA_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL
  17. endif
  18. ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y)
  19. QT5MULTIMEDIA_DEPENDENCIES += gst1-plugins-base
  20. endif
  21. ifeq ($(BR2_PACKAGE_QT5DECLARATIVE),y)
  22. QT5MULTIMEDIA_DEPENDENCIES += qt5declarative
  23. endif
  24. ifeq ($(BR2_PACKAGE_LIBGLIB2)$(BR2_PACKAGE_PULSEAUDIO),yy)
  25. QT5MULTIMEDIA_DEPENDENCIES += libglib2 pulseaudio
  26. endif
  27. ifeq ($(BR2_PACKAGE_ALSA_LIB),y)
  28. QT5MULTIMEDIA_DEPENDENCIES += alsa-lib
  29. endif
  30. # The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
  31. # MESA_EGL_NO_X11_HEADERS is defined. Tell to not include X11 headers if
  32. # the libxcb is not selected.
  33. ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL)x$(BR2_PACKAGE_LIBXCB),yx)
  34. QT5MULTIMEDIA_QMAKEFLAGS += QMAKE_CXXFLAGS+=-DMESA_EGL_NO_X11_HEADERS
  35. endif
  36. define QT5MULTIMEDIA_CONFIGURE_CMDS
  37. (cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/bin/qmake $(QT5MULTIMEDIA_QMAKEFLAGS))
  38. endef
  39. define QT5MULTIMEDIA_BUILD_CMDS
  40. $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
  41. endef
  42. define QT5MULTIMEDIA_INSTALL_STAGING_CMDS
  43. $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
  44. $(QT5_LA_PRL_FILES_FIXUP)
  45. endef
  46. ifeq ($(BR2_STATIC_LIBS),)
  47. ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y)
  48. define QT5MULTIMEDIA_INSTALL_TARGET_QGSTTOOLS_LIB
  49. cp -dpf $(STAGING_DIR)/usr/lib/libqgsttools*.so.* $(TARGET_DIR)/usr/lib
  50. endef
  51. endif
  52. define QT5MULTIMEDIA_INSTALL_TARGET_LIBS
  53. cp -dpf $(STAGING_DIR)/usr/lib/libQt5Multimedia*.so.* $(TARGET_DIR)/usr/lib
  54. cp -dpfr $(STAGING_DIR)/usr/lib/qt/plugins/* $(TARGET_DIR)/usr/lib/qt/plugins
  55. $(QT5MULTIMEDIA_INSTALL_TARGET_QGSTTOOLS_LIB)
  56. endef
  57. endif
  58. # this is only built with quick/opengl support enabled
  59. ifeq ($(BR2_PACKAGE_QT5DECLARATIVE_QUICK)$(BR2_PACKAGE_QT5_GL_AVAILABLE),yy)
  60. define QT5MULTIMEDIA_INSTALL_TARGET_QMLS
  61. cp -dpfr $(STAGING_DIR)/usr/qml/QtMultimedia $(TARGET_DIR)/usr/qml/
  62. endef
  63. endif
  64. ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y)
  65. define QT5MULTIMEDIA_INSTALL_TARGET_EXAMPLES
  66. cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/multimedia* $(TARGET_DIR)/usr/lib/qt/examples/
  67. endef
  68. endif
  69. define QT5MULTIMEDIA_INSTALL_TARGET_CMDS
  70. $(QT5MULTIMEDIA_INSTALL_TARGET_LIBS)
  71. $(QT5MULTIMEDIA_INSTALL_TARGET_QMLS)
  72. $(QT5MULTIMEDIA_INSTALL_TARGET_EXAMPLES)
  73. endef
  74. $(eval $(generic-package))