kumquat-buildroot/package/qt5/qt5webengine/qt5webengine.mk
James Hilliard 5770a645a3 package/qt5: bump packages to latest kde submodule versions
This points all qt5 packages to the latest kde submodule versions
available at https://invent.kde.org/qt/qt/qt5/-/tree/kde/5.15

There is no 5.15.8 release of the kde-maintained modules, no release
tarballs and no tags. Instead, there's just a rolling maintenance
branch. We take a snapshot of that branch and call it 5.15.8, to match
the latest qt5webengine release.

We need to remove some patches applied upstream already.

qt5location has mapboxgl as a submodule, which is not included in the
gitlab-generated tarball. Therefore, use the git download method with
submodules enabled.

We need to pin qt5 packages not available in the new upstream to the
previous 5.15.2 version.

We need to set SYNC_QT_HEADERS for all qt5 packages in the new
upstream as headers are only copied in release archives which are
not provided in the kde upstream.

Instead of calling syncqt.pl, update the MODULE_VERSION in .qmake.conf
to 5.15.8 and create a .git file so to trigger headers sync during
configure.

Hold back updating qt5webengine for now since the latest version
requires significant changes to build, just tweak existing version
to be compatible with latest kde versions for now.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Reviewed-by: Adam Duskett <aduskett@gmail.com>
Tested-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2022-02-03 20:27:27 +01:00

70 lines
2.5 KiB
Makefile

################################################################################
#
# qt5webengine
#
################################################################################
QT5WEBENGINE_VERSION_MAJOR = 5.15
QT5WEBENGINE_VERSION = $(QT5WEBENGINE_VERSION_MAJOR).2
QT5WEBENGINE_SITE = https://download.qt.io/archive/qt/$(QT5WEBENGINE_VERSION_MAJOR)/$(QT5WEBENGINE_VERSION)/submodules
QT5WEBENGINE_SOURCE = qtwebengine-$(QT5_SOURCE_TARBALL_PREFIX)-$(QT5WEBENGINE_VERSION).tar.xz
QT5WEBENGINE_DEPENDENCIES = ffmpeg libglib2 libvpx libxkbcommon opus webp \
qt5declarative qt5webchannel host-bison host-flex host-gperf \
host-pkgconf host-python
QT5WEBENGINE_INSTALL_STAGING = YES
include package/qt5/qt5webengine/chromium-latest.inc
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_EXAMPLES),y)
QT5WEBENGINE_DEPENDENCIES += qt5svg
endif
ifeq ($(BR2_PACKAGE_QT5BASE_XCB),y)
QT5WEBENGINE_DEPENDENCIES += xlib_libXScrnSaver xlib_libXcomposite \
xlib_libXcursor xlib_libXi xlib_libXrandr xlib_libXtst
endif
QT5WEBENGINE_DEPENDENCIES += host-libpng host-libnss libnss
QT5WEBENGINE_CONF_OPTS += WEBENGINE_CONFIG+=use_system_ffmpeg
ifeq ($(BR2_PACKAGE_QT5WEBENGINE_PROPRIETARY_CODECS),y)
QT5WEBENGINE_CONF_OPTS += WEBENGINE_CONFIG+=use_proprietary_codecs
endif
ifeq ($(BR2_PACKAGE_QT5WEBENGINE_ALSA),y)
QT5WEBENGINE_DEPENDENCIES += alsa-lib
else
QT5WEBENGINE_CONF_OPTS += 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) \
PKG_CONFIG_PATH=$(STAGING_DIR)/usr/lib/pkgconfig
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)"
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
QT5WEBENGINE_CONF_ENV = $(QT5WEBENGINE_ENV)
QT5WEBENGINE_MAKE_ENV = $(QT5WEBENGINE_ENV)
$(eval $(qmake-package))