aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-qt/qt5/qtwebengine_git.bb
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-qt/qt5/qtwebengine_git.bb')
-rw-r--r--recipes-qt/qt5/qtwebengine_git.bb60
1 files changed, 55 insertions, 5 deletions
diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb
index c044c602..deef5737 100644
--- a/recipes-qt/qt5/qtwebengine_git.bb
+++ b/recipes-qt/qt5/qtwebengine_git.bb
@@ -16,7 +16,7 @@ DEPENDS += " \
ninja-native \
yasm-native \
qtwebchannel \
- qtbase qtdeclarative qtxmlpatterns qtquickcontrols \
+ qtbase qtdeclarative qtxmlpatterns qtquickcontrols qtquickcontrols2 \
qtlocation \
libdrm fontconfig pixman openssl pango cairo icu pciutils \
libcap \
@@ -24,9 +24,23 @@ DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa-lib', '', d)} \
"
-EXTRA_QMAKEVARS_PRE += "GYP_CONFIG+=use_system_yasm GYP_CONFIG+=generate_character_data=0"
+DEPENDS_append_libc-musl = " libexecinfo"
+
+EXTRA_QMAKEVARS_PRE += "GYP_CONFIG+=use_system_yasm \
+ GYP_CONFIG+=generate_character_data=0 \
+ GYP_CONFIG+=use_allocator=none \
+ GYP_CONFIG+=use_experimental_allocator_shim=false \
+"
EXTRA_QMAKEVARS_CONFIGURE += "-feature-system-ninja -no-feature-system-gn"
+# chromium/third_party/openh264/openh264.gyp adds
+# -Wno-format to openh264_cflags_add
+# similarly chromium/third_party/openh264/BUILD.gn for newer qtwebengine
+# causing following error, because -Wformat-security cannot be used together with -Wno-format
+# cc1plus: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
+# http://errors.yoctoproject.org/Errors/Details/150333/
+SECURITY_STRINGFORMAT = ""
+
# To use system ffmpeg you need to enable also libwebp, opus, vpx
# Only depenedencies available in oe-core are enabled by default
PACKAGECONFIG ??= "libwebp flac libevent libxslt speex nss"
@@ -39,6 +53,7 @@ PACKAGECONFIG[libevent] = "WEBENGINE_CONFIG+=use_system_libevent,,libevent"
PACKAGECONFIG[libxslt] = "WEBENGINE_CONFIG+=use_system_libxslt,,libxslt"
PACKAGECONFIG[speex] = "WEBENGINE_CONFIG+=use_system_speex,,speex"
PACKAGECONFIG[vpx] = "WEBENGINE_CONFIG+=use_system_vpx,,libvpx"
+PACKAGECONFIG[webrtc] = "WEBENGINE_CONFIG+=use_webrtc,,libvpx"
PACKAGECONFIG[nss] = "WEBENGINE_CONFIG+=use_nss,,nss"
EXTRA_QMAKEVARS_PRE += "${PACKAGECONFIG_CONFARGS}"
@@ -88,6 +103,13 @@ do_configure() {
${EXTRA_QMAKEVARS_CONFIGURE}
}
+do_configure_prepend_libc-musl() {
+ for f in `find ${S}/src/3rdparty/chromium/third_party/ffmpeg/chromium/config/Chromium/linux/ -name config.h -o -name config.asm`; do
+ sed -i -e "s:define HAVE_SYSCTL 1:define HAVE_SYSCTL 0:g" $f
+ done
+ sed -i -e "s:define HAVE_STRUCT_MALLINFO 1:/*undef HAVE_STRUCT_MALLINFO */:g" ${S}/src/3rdparty/chromium/third_party/tcmalloc/chromium/src/config_linux.h
+}
+
do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+"
do_install_append() {
@@ -106,11 +128,39 @@ RDEPENDS_${PN}-examples += " \
QT_MODULE_BRANCH_CHROMIUM = "58-based"
+# Patches from https://github.com/meta-qt5/qtwebengine/commits/b5.9
+# 5.9.meta-qt5.3
SRC_URI += " \
${QT_GIT}/qtwebengine-chromium.git;name=chromium;branch=${QT_MODULE_BRANCH_CHROMIUM};protocol=${QT_GIT_PROTOCOL};destsuffix=git/src/3rdparty \
- file://0001-Force-host-toolchain-configuration.patch \
- file://0001-chromium-workaround-for-too-long-.rps-file-name.patch \
- file://0002-chromium-Change-false-to-FALSE-and-1-to-TRUE-FIX-qtw.patch \
+ file://0001-functions.prf-allow-build-for-linux-oe-g-platform.patch \
+ file://0001-Build-accessibility-tests-only-when-Qt-is-configured.patch \
+ file://0002-WebEngine-qquickwebengineview_p_p.h-add-include-QCol.patch \
+ file://0003-Include-dependency-to-QCoreApplication-translate.patch \
+ file://0004-Force-host-toolchain-configuration.patch \
+"
+
+# Patches from https://github.com/meta-qt5/qtwebengine-chromium/commits/56-based
+# 56-based.meta-qt5.2
+SRC_URI += " \
+ file://0001-chromium-Change-false-to-FALSE-and-1-to-TRUE-FIX-qtw.patch;patchdir=src/3rdparty \
+ file://0002-chromium-Force-host-toolchain-configuration.patch;patchdir=src/3rdparty \
+ file://0003-chromium-workaround-for-too-long-.rps-file-name.patch;patchdir=src/3rdparty \
+"
+
+SRC_URI_append_libc-musl = "\
+ file://0004-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch;patchdir=src/3rdparty \
+ file://0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch;patchdir=src/3rdparty \
+ file://0006-chromium-musl-include-fcntl.h-for-loff_t.patch;patchdir=src/3rdparty \
+ file://0007-chromium-musl-use-off64_t-instead-of-the-internal-__.patch;patchdir=src/3rdparty \
+ file://0008-chromium-musl-linux-glibc-make-the-distinction.patch;patchdir=src/3rdparty \
+ file://0009-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch;patchdir=src/3rdparty \
+ file://0010-chromium-musl-Use-correct-member-name-__si_fields-fr.patch;patchdir=src/3rdparty \
+ file://0011-chromium-musl-Match-syscalls-to-match-musl.patch;patchdir=src/3rdparty \
+ file://0012-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch;patchdir=src/3rdparty \
+ file://0013-chromium-musl-Do-not-define-__sbrk-on-musl.patch;patchdir=src/3rdparty \
+ file://0014-chromium-musl-Adjust-default-pthread-stack-size.patch;patchdir=src/3rdparty \
+ file://0015-chromium-musl-include-asm-generic-ioctl.h-for-TCGETS.patch;patchdir=src/3rdparty \
+ file://0016-chromium-musl-tcmalloc-Use-off64_t-insread-of-__off6.patch;patchdir=src/3rdparty \
"
SRCREV_qtwebengine = "f32b3514a5186bc4f5452f004324bdb7782d30a3"