diff options
Diffstat (limited to 'recipes-qt/qt5/qtwebengine_git.bb')
-rw-r--r-- | recipes-qt/qt5/qtwebengine_git.bb | 60 |
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" |