3c6958423f
The tarball filename has changed since 5.10. The module suffix
*opensource-src* has changed to *everywhere-src*. I introduced the
*QT5_SOURCE_TARBALL_PREFIX* variable to set the right filename according
to the Qt version.
qtwebengine:
Select libnss. It is a requirement[1] because OpenSSL
certificate validation[2] and NSS bundle[3] was dropped.
Add host-libnss and host-libpng to satisfy new requirement to
build an internal host-tool.
Set ninja host pkg-config tool using environment variable
$GN_PKG_CONFIG_HOST[4]. The build system uses pkg-config to get
package data for both host and target architectures. Using the
same call to pkg-config for both target and host leads to build
mismatches: it tries to link a host-tool using target libraries.
qt5base:
sqlite plugin now uses sqlite3_column_table_name16() so select
BR2_PACKAGE_SQLITE_ENABLE_COLUMN_METADATA to make sure it is
available.
qt5multimedia:
libqgsttools was renamed to libQtMultimediaGstTools. The latter
name matches the libQt5Multimedia*.so.* pattern so no additional
copy command is needed for it anymore.
qt5xmlpatterns:
Names of the license files have changed: LICENSE.(L)GPLv3 ->
LICENSE.(L)GPL3. The new files in fact already existed in 5.9.4
but the old ones were not removed yet. The new files are
slightly different: there used to be a Qt header in front of it
which is now removed. Also LICENSE.LGPL3 is rewrapped.
qt5location, qt5quickcontrols, qt5serialport:
Same license files issue, and for LICENSE.GPLv2 as well.
LICENSE.GPL2 has the "How to Apply These Terms to Your New
Programs" text appended to it.
qt5script:
Similar license file issues, but the new license files were not
present yet. LICENSE.GPLv21 was removed so there is no longer a
license file for the LGPL-2.1-covered Qt code.
[1]: 9b449045fb
[2]: https://codereview.chromium.org/2862543003
[3]: https://codereview.chromium.org/1882433002
[4]: https://github.com/qt/qtwebengine/blob/v5.10.1/src/core/config/linux.pri#L111-L125
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
[Peter:
- fix sqlite plugin support in qt5base;
- fix target installation of qt5multimedia
]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[Arnout:
- create a local host-pkg-config tool instead of extending pkgconf;
- pass the same options to host-pkg-config as we do for other packages;
- carry the EGL mesa3d X11 headers patch;
- update license file names and hashes
]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
100 lines
3.5 KiB
Makefile
100 lines
3.5 KiB
Makefile
################################################################################
|
|
#
|
|
# 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
|
|
|
|
include package/qt5/qt5webengine/chromium.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 $(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
|
|
|
|
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
|
|
$(QT5_LA_PRL_FILES_FIXUP)
|
|
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/qtwebengine_locales/
|
|
cp -dpfr $(STAGING_DIR)/usr/translations/qtwebengine_locales $(TARGET_DIR)/usr/translations/qtwebengine_locales/
|
|
endef
|
|
endif
|
|
|
|
define QT5WEBENGINE_INSTALL_TARGET_CMDS
|
|
$(QT5WEBENGINE_INSTALL_TARGET_LIBS)
|
|
$(QT5WEBENGINE_INSTALL_TARGET_QMLS)
|
|
$(QT5WEBENGINE_INSTALL_TARGET_EXAMPLES)
|
|
endef
|
|
|
|
$(eval $(generic-package))
|