| ################################################################################ |
| # |
| # qt5webengine |
| # |
| ################################################################################ |
| |
| QT5WEBENGINE_VERSION = $(QT5_VERSION) |
| QT5WEBENGINE_SITE = $(QT5_SITE) |
| QT5WEBENGINE_SOURCE = qtwebengine-$(QT5_SOURCE_TARBALL_PREFIX)-$(QT5WEBENGINE_VERSION).tar.xz |
| QT5WEBENGINE_DEPENDENCIES = ffmpeg libglib2 libvpx opus webp qt5base \ |
| qt5declarative qt5webchannel host-bison host-flex host-gperf \ |
| host-pkgconf host-python |
| QT5WEBENGINE_INSTALL_STAGING = YES |
| |
| ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) |
| include package/qt5/qt5webengine/chromium-latest.inc |
| else |
| include package/qt5/qt5webengine/chromium-lts.inc |
| endif |
| QT5WEBENGINE_LICENSE = GPL-2.0 or LGPL-3.0 or GPL-3.0 or GPL-3.0 with exception |
| QT5WEBENGINE_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPL3 LICENSE.GPL3-EXCEPT \ |
| LICENSE.GPLv3 LICENSE.LGPL3 $(QT5WEBENGINE_CHROMIUM_LICENSE_FILES) |
| |
| ifeq ($(BR2_PACKAGE_QT5BASE_XCB),y) |
| QT5WEBENGINE_DEPENDENCIES += xlib_libXScrnSaver xlib_libXcomposite \ |
| xlib_libXcursor xlib_libXi xlib_libXrandr xlib_libXtst |
| endif |
| |
| ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) |
| QT5WEBENGINE_DEPENDENCIES += host-libpng host-libnss libnss |
| endif |
| |
| QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_system_ffmpeg |
| |
| ifeq ($(BR2_PACKAGE_QT5WEBENGINE_PROPRIETARY_CODECS),y) |
| QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_proprietary_codecs |
| endif |
| |
| ifeq ($(BR2_PACKAGE_QT5WEBENGINE_ALSA),y) |
| QT5WEBENGINE_DEPENDENCIES += alsa-lib |
| else |
| QT5WEBENGINE_QMAKEFLAGS += QT_CONFIG-=alsa |
| endif |
| |
| # QtWebengine's build system uses python, but only supports python2. We work |
| # around this by forcing python2 early in the PATH, via a python->python2 |
| # symlink. |
| QT5WEBENGINE_ENV = PATH=$(@D)/host-bin:$(BR_PATH) |
| define QT5WEBENGINE_PYTHON2_SYMLINK |
| mkdir -p $(@D)/host-bin |
| ln -sf $(HOST_DIR)/bin/python2 $(@D)/host-bin/python |
| endef |
| QT5WEBENGINE_PRE_CONFIGURE_HOOKS += QT5WEBENGINE_PYTHON2_SYMLINK |
| |
| QT5WEBENGINE_ENV += NINJAFLAGS="-j$(PARALLEL_JOBS)" |
| |
| ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) |
| define QT5WEBENGINE_CREATE_HOST_PKG_CONFIG |
| sed s%@HOST_DIR@%$(HOST_DIR)%g $(QT5WEBENGINE_PKGDIR)/host-pkg-config.in > $(@D)/host-bin/host-pkg-config |
| chmod +x $(@D)/host-bin/host-pkg-config |
| endef |
| QT5WEBENGINE_PRE_CONFIGURE_HOOKS += QT5WEBENGINE_CREATE_HOST_PKG_CONFIG |
| QT5WEBENGINE_ENV += GN_PKG_CONFIG_HOST=$(@D)/host-bin/host-pkg-config |
| endif |
| |
| define QT5WEBENGINE_CONFIGURE_CMDS |
| (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBENGINE_ENV) $(HOST_DIR)/bin/qmake $(QT5WEBENGINE_QMAKEFLAGS)) |
| endef |
| |
| define QT5WEBENGINE_BUILD_CMDS |
| $(TARGET_MAKE_ENV) $(QT5WEBENGINE_ENV) $(MAKE) -C $(@D) |
| endef |
| |
| define QT5WEBENGINE_INSTALL_STAGING_CMDS |
| $(TARGET_MAKE_ENV) $(QT5WEBENGINE_ENV) $(MAKE) -C $(@D) install |
| endef |
| |
| define QT5WEBENGINE_INSTALL_TARGET_QMLS |
| cp -dpfr $(STAGING_DIR)/usr/qml/QtWebEngine $(TARGET_DIR)/usr/qml/ |
| endef |
| |
| ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) |
| define QT5WEBENGINE_INSTALL_TARGET_EXAMPLES |
| cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/webengine* $(TARGET_DIR)/usr/lib/qt/examples/ |
| endef |
| endif |
| |
| ifneq ($(BR2_STATIC_LIBS),y) |
| define QT5WEBENGINE_INSTALL_TARGET_LIBS |
| cp -dpf $(STAGING_DIR)/usr/lib/libQt5WebEngine*.so.* $(TARGET_DIR)/usr/lib |
| cp -dpf $(STAGING_DIR)/usr/libexec/QtWebEngineProcess $(TARGET_DIR)/usr/libexec/ |
| cp -dpfr $(STAGING_DIR)/usr/resources/ $(TARGET_DIR)/usr/ |
| mkdir -p $(TARGET_DIR)/usr/translations/ |
| cp -dpfr $(STAGING_DIR)/usr/translations/qtwebengine_locales $(TARGET_DIR)/usr/translations/ |
| endef |
| endif |
| |
| define QT5WEBENGINE_INSTALL_TARGET_CMDS |
| $(QT5WEBENGINE_INSTALL_TARGET_LIBS) |
| $(QT5WEBENGINE_INSTALL_TARGET_QMLS) |
| $(QT5WEBENGINE_INSTALL_TARGET_EXAMPLES) |
| endef |
| |
| $(eval $(generic-package)) |