From c9553a5d2b5fd113dd5c165f2bd47618908528a9 Mon Sep 17 00:00:00 2001 From: Andrej Valek Date: Fri, 17 Apr 2020 10:01:04 +0200 Subject: icu: use system library only targets - use bundled one for native/v8 internal builds Complete system ICU library using requires ICU dev package be installed on host. Enabling dependency on native package is not enough due to V8 hosttools toolchain. V8 toolchain is not using native sysroot, only a host packages. On the other hand webenegine does not produce external native artifacts. So external system ICU linking is not needed. Signed-off-by: Andrej Valek --- .../0005-icu-use-system-library-only-targets.patch | 90 ++++++++++++++++++++++ recipes-qt/qt5/qtwebengine_git.bb | 3 +- 2 files changed, 92 insertions(+), 1 deletion(-) create mode 100755 recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch diff --git a/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch b/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch new file mode 100755 index 00000000..8ca1dace --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch @@ -0,0 +1,90 @@ +From fe811323fbe787264b15b83d027947926477f0c2 Mon Sep 17 00:00:00 2001 +From: Andrej Valek +Date: Fri, 17 Apr 2020 09:43:32 +0200 +Subject: [PATCH] icu: use system library only targets + + - use bundled one for native/v8 internal builds + +Complete system ICU library using requires ICU dev package +be installed on host. Enabling dependency on native package +is not enough due to V8 hosttools toolchain. V8 toolchain +is not using native sysroot, only a host packages. +On the other hand webenegine does not produce external +native artifacts. So external system ICU linking is not +needed. + +Signed-off-by: Andrej Valek +--- + src/3rdparty/chromium/third_party/icu/BUILD.gn | 18 ++++++++++++++---- + 1 file changed, 14 insertions(+), 4 deletions(-) + +diff --git a/src/3rdparty/chromium/third_party/icu/BUILD.gn b/src/3rdparty/chromium/third_party/icu/BUILD.gn +index 97073f09787..5d293ca628d 100644 +--- a/src/3rdparty/chromium/third_party/icu/BUILD.gn ++++ b/src/3rdparty/chromium/third_party/icu/BUILD.gn +@@ -7,9 +7,13 @@ import("//build/config/host_byteorder.gni") + import("//build/config/linux/pkg_config.gni") + import("//build/shim_headers.gni") + import("//third_party/icu/config.gni") ++import("//v8/snapshot_toolchain.gni") + + declare_args() { + use_system_icu = false ++ ++ # Use only target icu library, when system using is enabled ++ use_system_icu_target_only = false + } + + if (is_android) { +@@ -20,6 +24,12 @@ if (is_mac) { + import("//build/config/sanitizers/sanitizers.gni") + } + ++if (use_system_icu) { ++ # Use system library only for target, otherwise use bundled ++ if ((current_toolchain != host_toolchain) && (current_toolchain != v8_snapshot_toolchain)) { ++ use_system_icu_target_only = true ++ } ++} + # Meta target that includes both icuuc and icui18n. Most targets want both. + # You can depend on the individually if you need to. + group("icu") { +@@ -1137,7 +1147,7 @@ config("system_icu_config") { + ] + } + +-if (use_system_icu) { ++if (use_system_icu_target_only) { + pkg_config("system_icui18n") { + packages = [ "icu-i18n" ] + } +@@ -1346,7 +1356,7 @@ shim_headers("icuuc_shim") { + } + + config("icu_config") { +- if (use_system_icu) { ++ if (use_system_icu_target_only) { + configs = [ ":system_icu_config"] + } else { + configs = [ ":bundled_icu_config"] +@@ -1354,7 +1364,7 @@ config("icu_config") { + } + + group("icuuc") { +- if (use_system_icu) { ++ if (use_system_icu_target_only) { + deps = [ ":icuuc_shim" ] + public_configs = [ + ":system_icu_config", +@@ -1366,7 +1376,7 @@ group("icuuc") { + } + + group("icui18n") { +- if (use_system_icu) { ++ if (use_system_icu_target_only) { + deps = [ ":icui18n_shim" ] + public_configs = [ + ":system_icu_config", +-- +2.20.1 + diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb index bd377569..9b7aa514 100644 --- a/recipes-qt/qt5/qtwebengine_git.bb +++ b/recipes-qt/qt5/qtwebengine_git.bb @@ -21,7 +21,7 @@ DEPENDS += " \ qtwebchannel \ qtbase qtdeclarative qtxmlpatterns qtquickcontrols qtquickcontrols2 \ qtlocation \ - libdrm fontconfig pixman openssl pango cairo icu pciutils nss \ + libdrm fontconfig pixman openssl pango cairo pciutils nss \ libcap \ gperf-native \ ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa-lib', '', d)} \ @@ -149,6 +149,7 @@ QT_MODULE_BRANCH_CHROMIUM = "80-based" 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://0005-icu-use-system-library-only-targets.patch \ " SRC_URI_append_libc-musl = "\ file://0002-musl-don-t-use-pvalloc-as-it-s-not-available-on-musl.patch \ -- cgit v1.2.3 From b61ea2c1a2c338487aee3c5e47d7394c0a5cbc27 Mon Sep 17 00:00:00 2001 From: "Mingde (Matthew) Zeng" Date: Mon, 6 Jul 2020 00:12:10 -0400 Subject: qtbase: remove path of the build host from qmake.conf OE_QMAKE_CFLAGS and OE_QMAKE_CXXFLAGS contain path of the build host, which is not useful for the target, and can be a potential security risk. It looks like the following in the target qmake.conf (actual build host path replaced with $PATH_OF_BUILD_HOST): isEmpty(QMAKE_CFLAGS): QMAKE_CFLAGS = -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=$PATH_OF_BUILD_HOST/qtbase/5.15.0+gitAUTOINC+f6fe4bbab7-r0=/usr/src/debug/qtbase/5.15.0+gitAUTOINC+f6fe4bbab7-r0 -fdebug-prefix-map=$PATH_OF_BUILD_HOST/qtbase/5.15.0+gitAUTOINC+f6fe4bbab7-r0=/usr/src/debug/qtbase/5.15.0+gitAUTOINC+f6fe4bbab7-r0 -fdebug-prefix-map=$PATH_OF_BUILD_HOST/qtbase/5.15.0+gitAUTOINC+f6fe4bbab7-r0/recipe-sysroot= -fdebug-prefix-map=$PATH_OF_BUILD_HOST/qtbase/5.15.0+gitAUTOINC+f6fe4bbab7-r0/recipe-sysroot-native= -fmacro-prefix-map and -fdebug-prefix-map are therefore removed from qmake.conf on the target, as these are default options only that can be overridden any time. Signed-off-by: Mingde (Matthew) Zeng Signed-off-by: Martin Jansa --- recipes-qt/qt5/qtbase_git.bb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index 6212ee38..7f6fd956 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb @@ -253,9 +253,10 @@ do_install_append() { echo "# default compiler options which can be overwritten from the environment" >> $conf echo "isEmpty(QMAKE_AR): QMAKE_AR = ${OE_QMAKE_AR} cqs" >> $conf echo "isEmpty(QMAKE_CC): QMAKE_CC = $OE_QMAKE_CC_NO_SYSROOT" >> $conf - echo "isEmpty(QMAKE_CFLAGS): QMAKE_CFLAGS = ${OE_QMAKE_CFLAGS}" >> $conf echo "isEmpty(QMAKE_CXX): QMAKE_CXX = $OE_QMAKE_CXX_NO_SYSROOT" >> $conf - echo "isEmpty(QMAKE_CXXFLAGS): QMAKE_CXXFLAGS = ${OE_QMAKE_CXXFLAGS}" >> $conf + # OE_QMAKE_CFLAGS and OE_QMAKE_CXXFLAGS contain path of the build host, which is not useful for the target. + echo "isEmpty(QMAKE_CFLAGS): QMAKE_CFLAGS = ${OE_QMAKE_CFLAGS}" | sed -e 's/-fdebug-prefix-map=[^ ]*//g' | sed -e 's/-fmacro-prefix-map=[^ ]*//g' >> $conf + echo "isEmpty(QMAKE_CXXFLAGS): QMAKE_CXXFLAGS = ${OE_QMAKE_CXXFLAGS}" | sed -e 's/-fdebug-prefix-map=[^ ]*//g' | sed -e 's/-fmacro-prefix-map=[^ ]*//g' >> $conf echo "isEmpty(QMAKE_LINK): QMAKE_LINK = $OE_QMAKE_LINK_NO_SYSROOT" >> $conf echo "isEmpty(QMAKE_LINK_SHLIB): QMAKE_LINK_SHLIB = $OE_QMAKE_LINK_NO_SYSROOT" >> $conf echo "isEmpty(QMAKE_LINK_C): QMAKE_LINK_C = $OE_QMAKE_LINK_NO_SYSROOT" >> $conf -- cgit v1.2.3 From 3713bcfaa084b99e2b29142ffcc5911b4596ccdd Mon Sep 17 00:00:00 2001 From: Philip Balister Date: Mon, 13 Jul 2020 18:51:00 -0400 Subject: python3-pyqt5: Update to 5.15.1.dev2007111314 * Resolves missing source tarball for me. Signed-off-by: Philip Balister --- .../pyqt5/python3-pyqt5_5.15.1.dev2006161728.bb | 65 ---------------------- .../pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb | 65 ++++++++++++++++++++++ 2 files changed, 65 insertions(+), 65 deletions(-) delete mode 100644 recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2006161728.bb create mode 100644 recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2006161728.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2006161728.bb deleted file mode 100644 index 2afa46dc..00000000 --- a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2006161728.bb +++ /dev/null @@ -1,65 +0,0 @@ -SUMMARY = "Python Qt5 Bindings" -AUTHOR = "Phil Thomson @ riverbank.co.uk" -HOMEPAGE = "http://riverbankcomputing.co.uk" -SECTION = "devel/python" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "\ - file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ -" - -SRC_URI = "\ - https://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5-${PV}.tar.gz \ -" -SRC_URI[sha256sum] = "b29e4771be495018faef9687919395165da49d391c840c4d1a2592c1089ce592" - -S = "${WORKDIR}/PyQt5-${PV}" - -inherit qmake5 -inherit python3native python3-dir - -DEPENDS = "qtbase qtdeclarative qtquickcontrols2" -DEPENDS += "sip3 sip3-native python3" - -export BUILD_SYS -export HOST_SYS -export STAGING_INCDIR -export STAGING_LIBDIR - -PARALLEL_MAKEINST = "" - -DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'PyQt_OpenGL', d)}" - -PYQT_MODULES = "QtCore QtGui QtNetwork QtXml QtNetwork QtQml ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'QtQuick QtWidgets QtQuickWidgets', '', d)}" - -do_configure_prepend() { - cd ${S} - echo "py_platform = linux" > pyqt.cfg - echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg - echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg - echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg - echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg - echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg - echo "qt_shared = True" >> pyqt.cfg - QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` - echo "[Qt $QT_VERSION]" >> pyqt.cfg - echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg - echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} -} - -do_compile() { - cd ${S} - oe_runmake -} - -do_install() { - cd ${S} - oe_runmake MAKEFLAGS='-j 1' install -} - -FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" - -RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs" -RDEPENDS_${PN} += "python3-core python3-sip3" diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb new file mode 100644 index 00000000..ef14e206 --- /dev/null +++ b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb @@ -0,0 +1,65 @@ +SUMMARY = "Python Qt5 Bindings" +AUTHOR = "Phil Thomson @ riverbank.co.uk" +HOMEPAGE = "http://riverbankcomputing.co.uk" +SECTION = "devel/python" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "\ + file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ +" + +SRC_URI = "\ + https://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5-${PV}.tar.gz \ +" +SRC_URI[sha256sum] = "d0bbefff23a29c64d8fd9378389f54462029425a6765619843a2b6fc44cb167e" + +S = "${WORKDIR}/PyQt5-${PV}" + +inherit qmake5 +inherit python3native python3-dir + +DEPENDS = "qtbase qtdeclarative qtquickcontrols2" +DEPENDS += "sip3 sip3-native python3" + +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR + +PARALLEL_MAKEINST = "" + +DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'PyQt_OpenGL', d)}" + +PYQT_MODULES = "QtCore QtGui QtNetwork QtXml QtNetwork QtQml ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'QtQuick QtWidgets QtQuickWidgets', '', d)}" + +do_configure_prepend() { + cd ${S} + echo "py_platform = linux" > pyqt.cfg + echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg + echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg + echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg + echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg + echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg + echo "qt_shared = True" >> pyqt.cfg + QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` + echo "[Qt $QT_VERSION]" >> pyqt.cfg + echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg + echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} +} + +do_compile() { + cd ${S} + oe_runmake +} + +do_install() { + cd ${S} + oe_runmake MAKEFLAGS='-j 1' install +} + +FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" + +RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs" +RDEPENDS_${PN} += "python3-core python3-sip3" -- cgit v1.2.3 From 862ba32a70cd938b8a7789c150ed3a60d34798fb Mon Sep 17 00:00:00 2001 From: Herman van Hazendonk Date: Fri, 17 Jul 2020 09:49:48 +0200 Subject: libconnman-qt: Update to v1.2.34 from upstream and drop patch Upstream finally supports multilib properly, so bumping our version and dropping the patch for this. Signed-off-by: Herman van Hazendonk --- ...0001-Fix-library-path-for-multilib-setups.patch | 25 ---------------------- .../libconnman-qt/libconnman-qt5_git.bb | 5 ++--- 2 files changed, 2 insertions(+), 28 deletions(-) delete mode 100644 recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Fix-library-path-for-multilib-setups.patch diff --git a/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Fix-library-path-for-multilib-setups.patch b/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Fix-library-path-for-multilib-setups.patch deleted file mode 100644 index 1e37bf55..00000000 --- a/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Fix-library-path-for-multilib-setups.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 9692239a31f0e47ea75b60388d5491d5155a888d Mon Sep 17 00:00:00 2001 -From: Andreas Oberritter -Date: Mon, 17 Dec 2018 14:00:44 +0100 -Subject: [PATCH] Fix library path for multilib setups. - -Upstream-Status: Pending - -Signed-off-by: Andreas Oberritter ---- - libconnman-qt/libconnman-qt.pro | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libconnman-qt/libconnman-qt.pro b/libconnman-qt/libconnman-qt.pro -index 8cd58e8..bad8a5e 100644 ---- a/libconnman-qt/libconnman-qt.pro -+++ b/libconnman-qt/libconnman-qt.pro -@@ -71,7 +71,7 @@ SOURCES += \ - networksession.cpp \ - counter.cpp - --target.path = $$INSTALL_ROOT$$PREFIX/lib -+target.path = $$[QT_INSTALL_LIBS] - - headers.files = $$PUBLIC_HEADERS - diff --git a/recipes-connectivity/libconnman-qt/libconnman-qt5_git.bb b/recipes-connectivity/libconnman-qt/libconnman-qt5_git.bb index f9fa27cd..06e3bbd4 100644 --- a/recipes-connectivity/libconnman-qt/libconnman-qt5_git.bb +++ b/recipes-connectivity/libconnman-qt/libconnman-qt5_git.bb @@ -5,12 +5,11 @@ HOMEPAGE = "https://git.merproject.org/mer-core/libconnman-qt" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://libconnman-qt/clockmodel.h;endline=8;md5=ea9f724050803f15d2d900ce3c5dac88" DEPENDS += "qtbase qtdeclarative" -PV = "1.2.7+git${SRCPV}" +PV = "1.2.34+git${SRCPV}" -SRCREV = "ad7fef1c35a3e897913965f73b879a14d65043dd" +SRCREV = "a0b6b0d9a63f28ab41747892f415c89866d62e4a" SRC_URI = "git://git.merproject.org/mer-core/libconnman-qt.git;protocol=https \ file://0001-Don-t-use-MeeGo-as-prefix-in-order-to-make-this-a-co.patch \ - file://0001-Fix-library-path-for-multilib-setups.patch \ " S = "${WORKDIR}/git" -- cgit v1.2.3 From 8f6ee3a11a53d5cbf841bbe5fbe42b9c0c10f3d4 Mon Sep 17 00:00:00 2001 From: Herman van Hazendonk Date: Fri, 17 Jul 2020 10:08:39 +0200 Subject: libqofono: Update to version 0.100 from upstream Signed-off-by: Herman van Hazendonk --- recipes-connectivity/libqofono/libqofono_git.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes-connectivity/libqofono/libqofono_git.bb b/recipes-connectivity/libqofono/libqofono_git.bb index 7de0e49b..6ed5511c 100644 --- a/recipes-connectivity/libqofono/libqofono_git.bb +++ b/recipes-connectivity/libqofono/libqofono_git.bb @@ -5,13 +5,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" DEPENDS += "qtbase qtdeclarative qtxmlpatterns" -SRCREV = "3581a6e85561da85858e1b90bef9be88b87acc4d" +SRCREV = "4eec0c726844b8293eeab7312c96956a77d40e90" SRC_URI = "git://git.merproject.org/mer-core/libqofono.git \ file://0001-also-emit-modemRemoved-and-modemAdded.patch \ " S = "${WORKDIR}/git" -PV = "0.98+gitr${SRCPV}" +PV = "0.100+gitr${SRCPV}" inherit qmake5 -- cgit v1.2.3 From 5144a99a696a8a72c0765ea0e8be8ceafaa78f85 Mon Sep 17 00:00:00 2001 From: Gianfranco Costamagna Date: Wed, 15 Apr 2020 11:33:59 +0200 Subject: maliit-framework-qt5: fix postinst/postrm scripts ERROR: do_rootfs: Postinstall scriptlets of ['maliit-framework-qt5'] have failed. If the intention is to defer them to first boot, then please place them into pkg_postinst_ontarget_${PN} (). Deferring to first boot via 'exit 1' is no longer supported. Signed-off-by: Gianfranco Costamagna Signed-off-by: Gianfranco Costamagna Signed-off-by: Gianfranco Costamagna --- recipes-qt/maliit/maliit-framework-qt5_git.bb | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/recipes-qt/maliit/maliit-framework-qt5_git.bb b/recipes-qt/maliit/maliit-framework-qt5_git.bb index 1f0dc8d6..72e6be5f 100644 --- a/recipes-qt/maliit/maliit-framework-qt5_git.bb +++ b/recipes-qt/maliit/maliit-framework-qt5_git.bb @@ -75,12 +75,9 @@ do_install_append() { install -m 644 ${WORKDIR}/maliit-server.desktop ${D}${datadir}/applications } -pkg_postinst_${PN} () { +pkg_postinst_ontarget_${PN} () { #!/bin/sh # should run online -if [ "x$D" != "x" ]; then - exit 1 -fi echo "export QT_IM_MODULE=Maliit" >> /etc/xprofile ln -s /usr/share/applications/maliit-server.desktop /etc/xdg/autostart/maliit-server.desktop } @@ -89,12 +86,11 @@ pkg_postrm_${PN} () { #!/bin/sh # should run online if [ "x$D" = "x" ]; then - exit 1 -fi -if [ -e "/etc/xprofile" ]; then - sed -i -e "g|export QT_IM_MODULE=Maliit|d" /etc/xprofile + if [ -e "/etc/xprofile" ]; then + sed -i -e "g|export QT_IM_MODULE=Maliit|d" /etc/xprofile + fi + rm -f /etc/xdg/autostart/maliit-server.desktop fi -rm -f /etc/xdg/autostart/maliit-server.desktop } S = "${WORKDIR}/git" -- cgit v1.2.3 From 8312c158b76e0148d4e98a6e7eb61b92623c771e Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Tue, 11 Aug 2020 16:33:10 -0700 Subject: python3-pyqt5: Update to dev2008081558 snapshot Old one is gone Signed-off-by: Khem Raj --- .../pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb | 65 ---------------------- .../pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb | 65 ++++++++++++++++++++++ 2 files changed, 65 insertions(+), 65 deletions(-) delete mode 100644 recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb create mode 100644 recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb deleted file mode 100644 index ef14e206..00000000 --- a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2007111314.bb +++ /dev/null @@ -1,65 +0,0 @@ -SUMMARY = "Python Qt5 Bindings" -AUTHOR = "Phil Thomson @ riverbank.co.uk" -HOMEPAGE = "http://riverbankcomputing.co.uk" -SECTION = "devel/python" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "\ - file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ -" - -SRC_URI = "\ - https://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5-${PV}.tar.gz \ -" -SRC_URI[sha256sum] = "d0bbefff23a29c64d8fd9378389f54462029425a6765619843a2b6fc44cb167e" - -S = "${WORKDIR}/PyQt5-${PV}" - -inherit qmake5 -inherit python3native python3-dir - -DEPENDS = "qtbase qtdeclarative qtquickcontrols2" -DEPENDS += "sip3 sip3-native python3" - -export BUILD_SYS -export HOST_SYS -export STAGING_INCDIR -export STAGING_LIBDIR - -PARALLEL_MAKEINST = "" - -DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'PyQt_OpenGL', d)}" - -PYQT_MODULES = "QtCore QtGui QtNetwork QtXml QtNetwork QtQml ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'QtQuick QtWidgets QtQuickWidgets', '', d)}" - -do_configure_prepend() { - cd ${S} - echo "py_platform = linux" > pyqt.cfg - echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg - echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg - echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg - echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg - echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg - echo "qt_shared = True" >> pyqt.cfg - QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` - echo "[Qt $QT_VERSION]" >> pyqt.cfg - echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg - echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} -} - -do_compile() { - cd ${S} - oe_runmake -} - -do_install() { - cd ${S} - oe_runmake MAKEFLAGS='-j 1' install -} - -FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" - -RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs" -RDEPENDS_${PN} += "python3-core python3-sip3" diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb new file mode 100644 index 00000000..e224f87a --- /dev/null +++ b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb @@ -0,0 +1,65 @@ +SUMMARY = "Python Qt5 Bindings" +AUTHOR = "Phil Thomson @ riverbank.co.uk" +HOMEPAGE = "http://riverbankcomputing.co.uk" +SECTION = "devel/python" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "\ + file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ +" + +SRC_URI = "\ + https://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5-${PV}.tar.gz \ +" +SRC_URI[sha256sum] = "6c83e0e82e3f2e65079c7442bd15f09b132ea482bb66ef6c1ece5ca43d97f839" + +S = "${WORKDIR}/PyQt5-${PV}" + +inherit qmake5 +inherit python3native python3-dir + +DEPENDS = "qtbase qtdeclarative qtquickcontrols2" +DEPENDS += "sip3 sip3-native python3" + +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR + +PARALLEL_MAKEINST = "" + +DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'PyQt_OpenGL', d)}" + +PYQT_MODULES = "QtCore QtGui QtNetwork QtXml QtNetwork QtQml ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'QtQuick QtWidgets QtQuickWidgets', '', d)}" + +do_configure_prepend() { + cd ${S} + echo "py_platform = linux" > pyqt.cfg + echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg + echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg + echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg + echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg + echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg + echo "qt_shared = True" >> pyqt.cfg + QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` + echo "[Qt $QT_VERSION]" >> pyqt.cfg + echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg + echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} +} + +do_compile() { + cd ${S} + oe_runmake +} + +do_install() { + cd ${S} + oe_runmake MAKEFLAGS='-j 1' install +} + +FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" + +RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs" +RDEPENDS_${PN} += "python3-core python3-sip3" -- cgit v1.2.3 From 8f1ec29004452773d21511ebe20c5d8f87f9ba86 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Tue, 11 Aug 2020 18:46:06 -0700 Subject: qt5-creator: Refresh musl patch Fixes Applying patch 0001-Link-with-libexecinfo-on-musl.patch patching file src/plugins/debugger/debugger.pro Hunk #1 succeeded at 140 (offset 1 line). patching file src/plugins/qmldesigner/qmldesignerplugin.pro Hunk #1 succeeded at 4 with fuzz 2 (offset 1 line). Signed-off-by: Khem Raj --- recipes-qt/qt5/qt5-creator/0001-Link-with-libexecinfo-on-musl.patch | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes-qt/qt5/qt5-creator/0001-Link-with-libexecinfo-on-musl.patch b/recipes-qt/qt5/qt5-creator/0001-Link-with-libexecinfo-on-musl.patch index da7561ce..25d1ae90 100644 --- a/recipes-qt/qt5/qt5-creator/0001-Link-with-libexecinfo-on-musl.patch +++ b/recipes-qt/qt5/qt5-creator/0001-Link-with-libexecinfo-on-musl.patch @@ -11,16 +11,16 @@ Signed-off-by: Martin Jansa --- a/src/plugins/debugger/debugger.pro +++ b/src/plugins/debugger/debugger.pro -@@ -139,3 +139,4 @@ include(console/console.pri) +@@ -140,3 +140,4 @@ include(console/console.pri) include(analyzer/analyzer.pri) include(shared/shared.pri) +LIBS *= -lexecinfo --- a/src/plugins/qmldesigner/qmldesignerplugin.pro +++ b/src/plugins/qmldesigner/qmldesignerplugin.pro -@@ -3,7 +3,7 @@ CONFIG += exceptions - +@@ -4,7 +4,7 @@ CONFIG += exceptions INCLUDEPATH += $$PWD + INCLUDEPATH += $$PWD/components -unix:!openbsd:!osx: LIBS += -lrt # posix shared memory +unix:!openbsd:!osx: LIBS += -lexecinfo -lrt # posix shared memory -- cgit v1.2.3 From 4d3191999e9156df0fc3fd9a86611be892a11d7e Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Tue, 11 Aug 2020 18:46:54 -0700 Subject: qt5-creator: Update to 4.13.0 beta2 Fixed build with clang11 and musl Signed-off-by: Khem Raj --- .../0001-app-Use-malloc_trim-only-on-glibc.patch | 32 ++++++++++++++++++++++ recipes-qt/qt5/qt5-creator_git.bb | 16 +++++------ 2 files changed, 40 insertions(+), 8 deletions(-) create mode 100644 recipes-qt/qt5/qt5-creator/0001-app-Use-malloc_trim-only-on-glibc.patch diff --git a/recipes-qt/qt5/qt5-creator/0001-app-Use-malloc_trim-only-on-glibc.patch b/recipes-qt/qt5/qt5-creator/0001-app-Use-malloc_trim-only-on-glibc.patch new file mode 100644 index 00000000..6ee5b7b5 --- /dev/null +++ b/recipes-qt/qt5/qt5-creator/0001-app-Use-malloc_trim-only-on-glibc.patch @@ -0,0 +1,32 @@ +From 46ec546fdc4427019184f84f24efe3e145b7e40f Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 11 Aug 2020 21:19:22 -0700 +Subject: [PATCH] app: Use malloc_trim only on glibc + +musl does not implement it + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + src/app/main.cpp | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/app/main.cpp b/src/app/main.cpp +index 419b9b362a..9e150e7613 100644 +--- a/src/app/main.cpp ++++ b/src/app/main.cpp +@@ -719,7 +719,11 @@ int main(int argc, char **argv) + m_trimTimer.setSingleShot(true); + m_trimTimer.setInterval(60000); + // glibc may not actually free memory in free(). ++#ifdef __GLIBC__ + connect(&m_trimTimer, &QTimer::timeout, this, [] { malloc_trim(0); }); ++#else ++ connect(&m_trimTimer, &QTimer::timeout, this, [] { }); ++#endif + } + + bool eventFilter(QObject *, QEvent *e) override +-- +2.28.0 + diff --git a/recipes-qt/qt5/qt5-creator_git.bb b/recipes-qt/qt5/qt5-creator_git.bb index d046110b..0dd9c234 100644 --- a/recipes-qt/qt5/qt5-creator_git.bb +++ b/recipes-qt/qt5/qt5-creator_git.bb @@ -18,13 +18,13 @@ DEPENDS += "qtbase qtscript qtxmlpatterns qtx11extras qtdeclarative qttools qtto DEPENDS_append_toolchain-clang = " clang llvm-common" DEPENDS_append_libc-musl = " libexecinfo" -SRCREV = "9e057a55368286058023510efc328f68250ecb5e" -PV = "4.12.0+git${SRCPV}" - +SRCREV = "501e7c2fddec6b93e273dadcac389cd8c934cf00" +PV = "4.12.4+4.13.0+git${SRCPV}" # Patches from https://github.com/meta-qt5/qtcreator/commits/b4.9.2 # 4.9.2.meta-qt5.1 SRC_URI = " \ - git://code.qt.io/qt-creator/qt-creator.git;branch=4.12 \ + git://code.qt.io/qt-creator/qt-creator.git;branch=4.13 \ + file://0001-app-Use-malloc_trim-only-on-glibc.patch \ " SRC_URI_append_libc-musl = " file://0001-Link-with-libexecinfo-on-musl.patch" @@ -41,10 +41,10 @@ do_configure_append() { # Find native tools sed -i 's:${STAGING_BINDIR}.*/qdoc:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdoc:g' ${B}/Makefile if [ -e ${B}/share/qtcreator/translations/Makefile ]; then - sed -i 's:${STAGING_BINDIR}.*/lrelease:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lrelease:g' ${B}/share/qtcreator/translations/Makefile - sed -i 's:${STAGING_BINDIR}.*/lupdate:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lupdate:g' ${B}/share/qtcreator/translations/Makefile - sed -i 's:${STAGING_BINDIR}.*/xmlpatterns:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/xmlpatterns:g' ${B}/share/qtcreator/translations/Makefile - sed -i 's:${STAGING_BINDIR}.*/lconvert:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lconvert:g' ${B}/share/qtcreator/translations/Makefile + sed -i 's:${STAGING_BINDIR}/lrelease:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lrelease:g' ${B}/share/qtcreator/translations/Makefile + sed -i 's:${STAGING_BINDIR}/lupdate:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lupdate:g' ${B}/share/qtcreator/translations/Makefile + sed -i 's:${STAGING_BINDIR}/xmlpatterns:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/xmlpatterns:g' ${B}/share/qtcreator/translations/Makefile + sed -i 's:${STAGING_BINDIR}/lconvert:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lconvert:g' ${B}/share/qtcreator/translations/Makefile fi } -- cgit v1.2.3 From 1a97beaa7c5fcd6d3dd1af7f81ecf1538fc34b53 Mon Sep 17 00:00:00 2001 From: Herman van Hazendonk Date: Thu, 13 Aug 2020 16:03:02 +0200 Subject: libqofonoext: Add recipe In order to more easily use some oFono bits like (multi)-sim and network management in QML, let's add libqofonoext as well. Signed-off-by: Herman van Hazendonk --- recipes-connectivity/libqofono/libqofonoext_git.bb | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 recipes-connectivity/libqofono/libqofonoext_git.bb diff --git a/recipes-connectivity/libqofono/libqofonoext_git.bb b/recipes-connectivity/libqofono/libqofonoext_git.bb new file mode 100644 index 00000000..b14aca5f --- /dev/null +++ b/recipes-connectivity/libqofono/libqofonoext_git.bb @@ -0,0 +1,28 @@ +DESCRIPTION = "Qt 5 bindings for the ofono dbus API for Jolla's oFono extensions" +SECTION = "libs" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://src/qofonoext.cpp;;beginline=1;endline=14;md5=e78738e9230b2e0f55eb7f63e3444df5" + +DEPENDS += "qtbase qtdeclarative qtxmlpatterns libqofono" + +SRCREV = "bd0999247f3c6446463f83b1f86c3de39c1a5425" +SRC_URI = "git://git.sailfishos.org/mer-core/libqofonoext.git;protocol=https;" +S = "${WORKDIR}/git" + +PV = "1.025+gitr${SRCPV}" + +inherit qmake5 + +do_install_append() { + if ls ${D}${libdir}/pkgconfig/qofono-qt5.pc >/dev/null 2>/dev/null; then + sed -i "s@-L${STAGING_LIBDIR}@-L\${libdir}@g" ${D}${libdir}/pkgconfig/qofono-qt5.pc + fi +} + +PACKAGES += "${PN}-tests" + +FILES_${PN} += " \ + ${OE_QMAKE_PATH_QML}/org/nemomobile/ofono/qmldir \ + ${OE_QMAKE_PATH_QML}/org/nemomobile/ofono/plugins.qmltypes \ + ${OE_QMAKE_PATH_QML}/org/nemomobile/ofono/libqofonoextdeclarative.so \ +" -- cgit v1.2.3 From 3ed820535438a47cf65d5f2015512d4ee99b27b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 15 Aug 2020 11:14:55 +0200 Subject: qttools: Remove unused variables/configurations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Grepped around in sources of qttools and qtbase: there is not a single hint that these settings cause any effect. For the clang_config.. variables [1] was found: Seems the variables set were removed a while back. [1] https://code.qt.io/cgit/qt/qttools.git/commit/?id=e181ec2c20ede6b878187f3123d190e8b952deb1 Signed-off-by: Andreas Müller --- recipes-qt/qt5/qttools_git.bb | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/recipes-qt/qt5/qttools_git.bb b/recipes-qt/qt5/qttools_git.bb index 913a0f8d..2943db97 100644 --- a/recipes-qt/qt5/qttools_git.bb +++ b/recipes-qt/qt5/qttools_git.bb @@ -34,21 +34,10 @@ COMPATIBLE_HOST_toolchain-clang_riscv64 = "null" export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_BINDIR}/llvm-config" -TOOLSTOBUILD += "linguist/lconvert linguist/lrelease linguist/lupdate pixeltool qtdiag qtpaths qtplugininfo" -TOOLSTOBUILD += "${@bb.utils.contains('PACKAGECONFIG', 'clang', 'qdoc', '', d)}" -TOOLSFORTARGET = "pixeltool qtdiag qtpaths qtplugininfo" -TOOLSFORHOST = "linguist ${@bb.utils.contains('PACKAGECONFIG', 'clang', 'qdoc', '', d)}" - EXTRA_QMAKEVARS_PRE += " \ ${@bb.utils.contains('PACKAGECONFIG', 'qtwebkit', '', 'CONFIG+=noqtwebkit', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'clang', 'CONFIG+=disable_external_rpath', 'CONFIG+=noqdoc', d)} \ " -EXTRA_QMAKEVARS_PRE_append_class-native = " CONFIG+=config_clang_done CONFIG-=config_clang" -EXTRA_QMAKEVARS_PRE_append_class-nativesdk = " CONFIG+=config_clang_done CONFIG-=config_clang" -EXTRA_QMAKEVARS_PRE_append_class-target = "\ - ${@bb.utils.contains('PACKAGECONFIG', 'clang', 'CONFIG+=config_clang', 'CONFIG+=config_clang_done CONFIG-=config_clang', d)} \ -" - SRCREV = "6a85b6150554111f7d473d56addfe5a8b5da4400" BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3 From f30c4ba364030ad1c92d24c6f5ee3bc7e479dc65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 15 Aug 2020 11:18:13 +0200 Subject: qttools: Force build of native help-tools when clang is set in PACKAGECONFIG MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Am working on recipes for kdevelop and musescore. These require native help tools - at least because cmake configs reference them. * Have tried other - patch-less - ways to achieve this without success * Tested multiple combinations with and without clang in PACKAGECONFIG * gcc/clang toolchain with expected result: For clang set, native tools are build for clang misssing tools are not build. * Target build remained unchanged because it was buildung help tools with clang in PACKAGECONFIG * Tried also to add the patch to nativesdk but help tools were not build. Stopped further investigation - that is not a use case for me - sorry Note for clang-toolchain users (confused me a bit - now it's obvious): For qttools-native clang has to be set explicitly in PACKAGECONFIG, otherwise native help tools are not build (same as behaviour as before). Signed-off-by: Andreas Müller --- ...e-build-of-qt-help-tools-as-qhelpgenerato.patch | 32 ++++++++++++++++++++++ recipes-qt/qt5/qttools_git.bb | 3 +- 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 recipes-qt/qt5/qttools/0004-Force-native-build-of-qt-help-tools-as-qhelpgenerato.patch diff --git a/recipes-qt/qt5/qttools/0004-Force-native-build-of-qt-help-tools-as-qhelpgenerato.patch b/recipes-qt/qt5/qttools/0004-Force-native-build-of-qt-help-tools-as-qhelpgenerato.patch new file mode 100644 index 00000000..4bc53c79 --- /dev/null +++ b/recipes-qt/qt5/qttools/0004-Force-native-build-of-qt-help-tools-as-qhelpgenerato.patch @@ -0,0 +1,32 @@ +From 88c20560720693b6b30d48af748ab232238f9ac8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Fri, 14 Aug 2020 21:25:27 +0200 +Subject: [PATCH] Force native build of qt-help tools as qhelpgenerato +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstrem-Statu: Inappropriate [embedded specific] + +Signed-off-by: Andreas Müller +--- + src/assistant/assistant.pro | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/src/assistant/assistant.pro b/src/assistant/assistant.pro +index d34b5590..7d87ac48 100644 +--- a/src/assistant/assistant.pro ++++ b/src/assistant/assistant.pro +@@ -14,9 +14,3 @@ SUBDIRS += \ + + assistant.depends = help + qhelpgenerator.depends = help +- +-qtNomakeTools( \ +- assistant \ +- qhelpgenerator \ +- qcollectiongenerator \ +-) +-- +2.26.2 + diff --git a/recipes-qt/qt5/qttools_git.bb b/recipes-qt/qt5/qttools_git.bb index 2943db97..117b9143 100644 --- a/recipes-qt/qt5/qttools_git.bb +++ b/recipes-qt/qt5/qttools_git.bb @@ -19,6 +19,7 @@ SRC_URI += " \ file://0002-linguist-tools-cmake-allow-overriding-the-location-f.patch \ file://0003-src.pro-Add-option-noqdoc-to-disable-qdoc-builds.patch \ " +SRC_URI_append_class-native = " ${@bb.utils.contains('PACKAGECONFIG', 'clang', 'file://0004-Force-native-build-of-qt-help-tools-as-qhelpgenerato.patch', '', d)}" FILES_${PN}-tools += "${datadir}${QT_DIR_NAME}/phrasebooks" FILES_${PN}-examples = "${datadir}${QT_DIR_NAME}/examples" @@ -36,7 +37,7 @@ export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_BINDIR}/llvm-config" EXTRA_QMAKEVARS_PRE += " \ ${@bb.utils.contains('PACKAGECONFIG', 'qtwebkit', '', 'CONFIG+=noqtwebkit', d)} \ - ${@bb.utils.contains('PACKAGECONFIG', 'clang', 'CONFIG+=disable_external_rpath', 'CONFIG+=noqdoc', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'clang', 'CONFIG+=disable_external_rpath CONFIG+=assistant', 'CONFIG+=noqdoc', d)} \ " SRCREV = "6a85b6150554111f7d473d56addfe5a8b5da4400" -- cgit v1.2.3 From 063714fb78cf5264ac52541c1c4c364620f8df28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 16 Aug 2020 19:10:11 +0200 Subject: qt5-creator: Make clang a PACKAGECONFIG - enabled for clang toolchain MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Test case: * meta-clang in layers * gcc toolchain * build qttools with PACKAGECONFIG[clang] enabled to get (native) help tools. After setting clang PACKAGECONFIG at qttools, qt5-creator builds failed due to linker errors: Linker tried to link against native clang tools. Avoid that in the same way as clang-toolchain did but use PACKAGECONFIG. * clang-toolchain builds remain unchanged * a hint was dropped in the recipe to support users failing for same issue Signed-off-by: Andreas Müller --- recipes-qt/qt5/qt5-creator_git.bb | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/recipes-qt/qt5/qt5-creator_git.bb b/recipes-qt/qt5/qt5-creator_git.bb index 0dd9c234..39f202d6 100644 --- a/recipes-qt/qt5/qt5-creator_git.bb +++ b/recipes-qt/qt5/qt5-creator_git.bb @@ -15,7 +15,6 @@ LIC_FILES_CHKSUM = " \ inherit qmake5 mime-xdg DEPENDS += "qtbase qtscript qtxmlpatterns qtx11extras qtdeclarative qttools qttools-native qtsvg chrpath-replacement-native zlib" -DEPENDS_append_toolchain-clang = " clang llvm-common" DEPENDS_append_libc-musl = " libexecinfo" SRCREV = "501e7c2fddec6b93e273dadcac389cd8c934cf00" @@ -34,6 +33,13 @@ EXTRA_QMAKEVARS_PRE += "IDE_LIBRARY_BASENAME=${baselib}${QT_DIR_NAME}" EXTRANATIVEPATH += "chrpath-native" +PACKAGECONFIG ??= "" +PACKAGECONFIG_append_toolchain-clang = " clang" + +# Important note: In case clang was added to qttools' PACKAGECONFIG, it has to +# be added here too - otherwise build fails trying to link native clang libraries +PACKAGECONFIG[clang] = ",,clang llvm-common" + COMPATIBLE_HOST_toolchain-clang_riscv32 = "null" COMPATIBLE_HOST_toolchain-clang_riscv64 = "null" @@ -50,11 +56,11 @@ do_configure_append() { do_install() { oe_runmake install INSTALL_ROOT=${D}${prefix} -} -do_install_append_toolchain-clang () { - # Remove RPATHs embedded in bins - chrpath --delete ${D}${libdir}/qtcreator/plugins/libClang* - chrpath --delete ${D}${libexecdir}/qtcreator/clang* + if [ "${@bb.utils.contains("PACKAGECONFIG", "clang", "1", "0", d)}" = "1" ]; then + # Remove RPATHs embedded in bins + chrpath --delete ${D}${libdir}/qtcreator/plugins/libClang* + chrpath --delete ${D}${libexecdir}/qtcreator/clang* + fi } FILES_${PN} += " \ -- cgit v1.2.3 From 43120725aaeedc88eecbc345a1b7e9adfa45e120 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 18 Aug 2020 08:00:32 +0200 Subject: qt5-creator: Add cmake to RRECOMMENDS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Without cmake qt-creator is not of much use - most projects use cmake these days and as far as I can remember qt will move to build with cmake. Signed-off-by: Andreas Müller --- recipes-qt/qt5/qt5-creator_git.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes-qt/qt5/qt5-creator_git.bb b/recipes-qt/qt5/qt5-creator_git.bb index 39f202d6..607c74b6 100644 --- a/recipes-qt/qt5/qt5-creator_git.bb +++ b/recipes-qt/qt5/qt5-creator_git.bb @@ -85,6 +85,7 @@ RRECOMMENDS_${PN} += " \ make \ gcc-symlinks g++-symlinks cpp-symlinks \ gdb \ + cmake \ " # ERROR: qt5-creator-4.5.1-r0 do_package_qa: QA Issue: No GNU_HASH in the elf binary: '/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qt5-creator/4.5.1-r0/packages-split/qt5-creator/usr/lib/qt5/qtcreator/libqbscore.so.1.10.1' -- cgit v1.2.3 From f565d6c90bab808b855c64ef75b2579fc26a572c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 18 Aug 2020 08:04:41 +0200 Subject: qt5-creator: rrecommend qtwebengine dev related packages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Actually these belong to packagegroup-qt5-toolchain-target but: * qtwebengine is a resource consuming build monster and not mandatory for everybody's qt-toolchain * as far as I tested qtwebengine does not build for clang - so reduce impact for people using clang-toolchain Signed-off-by: Andreas Müller --- recipes-qt/qt5/qt5-creator_git.bb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/recipes-qt/qt5/qt5-creator_git.bb b/recipes-qt/qt5/qt5-creator_git.bb index 607c74b6..5797ca32 100644 --- a/recipes-qt/qt5/qt5-creator_git.bb +++ b/recipes-qt/qt5/qt5-creator_git.bb @@ -86,6 +86,10 @@ RRECOMMENDS_${PN} += " \ gcc-symlinks g++-symlinks cpp-symlinks \ gdb \ cmake \ + qtwebengine-dev \ + qtwebengine-mkspecs \ + qtwebengine-plugins \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'qtwebengine-qmlplugins', '', d)} \ " # ERROR: qt5-creator-4.5.1-r0 do_package_qa: QA Issue: No GNU_HASH in the elf binary: '/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qt5-creator/4.5.1-r0/packages-split/qt5-creator/usr/lib/qt5/qtcreator/libqbscore.so.1.10.1' -- cgit v1.2.3 From c8d191d19dda5ec126630c6c91ea46b00a83fe29 Mon Sep 17 00:00:00 2001 From: Alistair Francis Date: Wed, 12 Aug 2020 17:23:15 -0700 Subject: qt5: Link with -pthread for riscv64 Linking with -pthread fixes the missing atomic linker failures on riscv64. Thsi fixes the following linker errors: qtestcase.h:359: more undefined references to `__atomic_fetch_xor_1' follow collect2: error: ld returned 1 exit status Signed-off-by: Alistair Francis --- recipes-qt/qt5/qtbase_git.bb | 2 ++ recipes-qt/qt5/qtdeclarative_git.bb | 2 ++ 2 files changed, 4 insertions(+) diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index 7f6fd956..129c4084 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb @@ -172,6 +172,8 @@ QT_CONFIG_FLAGS_GOLD = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '- QT_CONFIG_FLAGS_GOLD = "-no-use-gold-linker" LDFLAGS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}" +LDFLAGS_append_riscv64 = " -pthread" + QT_CONFIG_FLAGS += " \ ${QT_CONFIG_FLAGS_GOLD} \ -shared \ diff --git a/recipes-qt/qt5/qtdeclarative_git.bb b/recipes-qt/qt5/qtdeclarative_git.bb index d20f8f13..1a42b81d 100644 --- a/recipes-qt/qt5/qtdeclarative_git.bb +++ b/recipes-qt/qt5/qtdeclarative_git.bb @@ -19,6 +19,8 @@ SRC_URI += " \ file://0002-Use-python3-explicitly.patch \ " +LDFLAGS_append_riscv64 = " -pthread" + DEPENDS += "qtbase qtdeclarative-native" PACKAGECONFIG ??= "qml-debug qml-network ${@bb.utils.contains('DISTRO_FEATURES', 'qt5-static', 'static', '', d)}" -- cgit v1.2.3 From 5352180eda5c0eb1a010974b79b9f045959f4c9b Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Wed, 26 Aug 2020 16:15:42 +0200 Subject: qtwebengine: fix build with bison-3.7 Signed-off-by: Martin Jansa --- .../chromium/0013-chromium-Fix-bison-3.7.patch | 52 ++++++++++++++++++++++ recipes-qt/qt5/qtwebengine_git.bb | 1 + 2 files changed, 53 insertions(+) create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0013-chromium-Fix-bison-3.7.patch diff --git a/recipes-qt/qt5/qtwebengine/chromium/0013-chromium-Fix-bison-3.7.patch b/recipes-qt/qt5/qtwebengine/chromium/0013-chromium-Fix-bison-3.7.patch new file mode 100644 index 00000000..3272b727 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0013-chromium-Fix-bison-3.7.patch @@ -0,0 +1,52 @@ +From 3ccc10f378ca26c35104e39e08771c053ae5b19e Mon Sep 17 00:00:00 2001 +From: Allan Sandfeld Jensen +Date: Fri, 14 Aug 2020 16:38:48 +0200 +Subject: [PATCH] chromium: Fix bison 3.7 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Do a replace run inspired by newer versions of the script. + +Fixes: QTBUG-86018 +Change-Id: Ib1dc771e22a662aff0fae842d135ad58fad08bc1 +Reviewed-by: Michael Brüning +Signed-off-by: Martin Jansa +--- + .../renderer/build/scripts/rule_bison.py | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +diff --git a/chromium/third_party/blink/renderer/build/scripts/rule_bison.py b/chromium/third_party/blink/renderer/build/scripts/rule_bison.py +index f75e25fd23f..7e0767e951a 100755 +--- a/chromium/third_party/blink/renderer/build/scripts/rule_bison.py ++++ b/chromium/third_party/blink/renderer/build/scripts/rule_bison.py +@@ -45,6 +45,19 @@ from utilities import abs + + from blinkbuild.name_style_converter import NameStyleConverter + ++def modify_file(path, prefix_lines, suffix_lines, replace_list=[]): ++ prefix_lines = map(lambda s: s + '\n', prefix_lines) ++ suffix_lines = map(lambda s: s + '\n', suffix_lines) ++ with open(path, 'r') as f: ++ old_lines = f.readlines() ++ for i in range(len(old_lines)): ++ for src, dest in replace_list: ++ old_lines[i] = old_lines[i].replace(src, dest) ++ new_lines = prefix_lines + old_lines + suffix_lines ++ with open(path, 'w') as f: ++ f.writelines(new_lines) ++ ++ + assert len(sys.argv) == 4 or len(sys.argv) == 5 + + inputFile = abs(sys.argv[1]) +@@ -115,3 +128,9 @@ print >>outputHFile, '#define %s' % headerGuard + print >>outputHFile, outputHContents + print >>outputHFile, '#endif // %s' % headerGuard + outputHFile.close() ++ ++common_replace_list = [(inputRoot + '.hh', ++ inputRoot + '.h')] ++modify_file( ++ outputCpp, [], [], ++ replace_list=common_replace_list) diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb index 9b7aa514..9281aeb7 100644 --- a/recipes-qt/qt5/qtwebengine_git.bb +++ b/recipes-qt/qt5/qtwebengine_git.bb @@ -172,6 +172,7 @@ SRC_URI += " \ file://chromium/0010-chromium-Move-CharAllocator-definition-to-a-header-f.patch;patchdir=src/3rdparty \ file://chromium/0011-chromium-Include-cstddef-and-cstdint.patch;patchdir=src/3rdparty \ file://chromium/0012-chromium-Link-v8-with-libatomic-on-x86.patch;patchdir=src/3rdparty \ + file://chromium/0013-chromium-Fix-bison-3.7.patch;patchdir=src/3rdparty \ " SRC_URI_append_libc-musl = "\ -- cgit v1.2.3 From 23f78f70d9aedddd09b581854368ab2af9f46b8c Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Tue, 11 Aug 2020 22:22:30 -0700 Subject: libconnman-qt5: Fix build errors found wih clang-11 Signed-off-by: Khem Raj --- ...ssing-declarations-for-operator-overloads.patch | 31 ++++++++++++++++++++++ ...eeGo-as-prefix-in-order-to-make-this-a-co.patch | 18 ++++--------- .../libconnman-qt/libconnman-qt5_git.bb | 1 + 3 files changed, 37 insertions(+), 13 deletions(-) create mode 100644 recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Add-missing-declarations-for-operator-overloads.patch diff --git a/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Add-missing-declarations-for-operator-overloads.patch b/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Add-missing-declarations-for-operator-overloads.patch new file mode 100644 index 00000000..1f7ec0c8 --- /dev/null +++ b/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Add-missing-declarations-for-operator-overloads.patch @@ -0,0 +1,31 @@ +From 09fcee5c5750a3345e4378cd462cbb9aeba5e269 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 11 Aug 2020 22:20:17 -0700 +Subject: [PATCH] Add missing declarations for operator overloads + +This fixes clang-11 errors e.g. + +| ../../recipe-sysroot/usr/include/QtDBus/qdbusargument.h:276:13: error: invalid operands to binary expression ('const QDBusArgument' and 'RouteStructure') +| arg >> item; +| ~~~ ^ ~~~~ + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + libconnman-qt/marshalutils.cpp | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/libconnman-qt/marshalutils.cpp ++++ b/libconnman-qt/marshalutils.cpp +@@ -36,6 +36,11 @@ + + #include "marshalutils.h" + ++#if defined(__clang__) && __clang_major__ >= 11 ++Q_DBUS_EXPORT const QDBusArgument &operator>>(const QDBusArgument &a, RouteStructure &v); ++Q_DBUS_EXPORT QDBusArgument &operator<<(QDBusArgument &a, const RouteStructure &v); ++#endif ++ + // Empty namespace for local static functions + namespace { + diff --git a/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Don-t-use-MeeGo-as-prefix-in-order-to-make-this-a-co.patch b/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Don-t-use-MeeGo-as-prefix-in-order-to-make-this-a-co.patch index 7a67c744..028e3f5c 100644 --- a/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Don-t-use-MeeGo-as-prefix-in-order-to-make-this-a-co.patch +++ b/recipes-connectivity/libconnman-qt/libconnman-qt5/0001-Don-t-use-MeeGo-as-prefix-in-order-to-make-this-a-co.patch @@ -12,11 +12,9 @@ Signed-off-by: Herman van Hazendonk plugin/qmldir | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) -diff --git a/plugin/plugin.cpp b/plugin/plugin.cpp -index a383482..451c95f 100644 --- a/plugin/plugin.cpp +++ b/plugin/plugin.cpp -@@ -24,7 +24,7 @@ +@@ -34,7 +34,7 @@ static QObject *singleton_api_factory(QQ class ConnmanPlugin: public QQmlExtensionPlugin { Q_OBJECT @@ -25,27 +23,21 @@ index a383482..451c95f 100644 public: void registerTypes(const char *uri); -diff --git a/plugin/plugin.pro b/plugin/plugin.pro -index c4f54cf..3763f57 100644 --- a/plugin/plugin.pro +++ b/plugin/plugin.pro -@@ -17,7 +17,7 @@ LIBS += -l$$qtLibraryTarget(connman-$$TARGET_SUFFIX) +@@ -17,7 +17,7 @@ LIBS += -l$$qtLibraryTarget(connman-$$TA QT += qml - OTHER_FILES += plugin.json qmldirs + OTHER_FILES += plugin.json plugins.qmltypes qmldirs -MODULENAME = MeeGo/Connman +MODULENAME = Connman TARGETPATH = $$[QT_INSTALL_QML]/$$MODULENAME target.path = $$TARGETPATH -diff --git a/plugin/qmldir b/plugin/qmldir -index 5db82b7..de56688 100644 --- a/plugin/qmldir +++ b/plugin/qmldir -@@ -1,2 +1,2 @@ +@@ -1,3 +1,3 @@ -module MeeGo.Connman +module Connman plugin ConnmanQtDeclarative --- -2.11.0.windows.3 - + typeinfo plugins.qmltypes diff --git a/recipes-connectivity/libconnman-qt/libconnman-qt5_git.bb b/recipes-connectivity/libconnman-qt/libconnman-qt5_git.bb index 06e3bbd4..bc84224e 100644 --- a/recipes-connectivity/libconnman-qt/libconnman-qt5_git.bb +++ b/recipes-connectivity/libconnman-qt/libconnman-qt5_git.bb @@ -10,6 +10,7 @@ PV = "1.2.34+git${SRCPV}" SRCREV = "a0b6b0d9a63f28ab41747892f415c89866d62e4a" SRC_URI = "git://git.merproject.org/mer-core/libconnman-qt.git;protocol=https \ file://0001-Don-t-use-MeeGo-as-prefix-in-order-to-make-this-a-co.patch \ + file://0001-Add-missing-declarations-for-operator-overloads.patch \ " S = "${WORKDIR}/git" -- cgit v1.2.3 From 04a6fa63cf3148698a52b207058254b01c6937b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 7 Sep 2020 22:55:43 +0200 Subject: qtwebkit: Add patch to fix build with bison 3.7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes: |... /build/DerivedSources/WebCore/XPathGrammar.cpp:120:10: fatal error: XPathGrammar.hpp: No such file or directory | 120 | #include "XPathGrammar.hpp" | | ^~~~~~~~~~~~~~~~~~ | ... | .../build/DerivedSources/WebCore/CSSGrammar.cpp:160:10: fatal error: CSSGrammar.hpp: No such file or directory | 160 | #include "CSSGrammar.hpp" | | ^~~~~~~~~~~~~~~~ Signed-off-by: Andreas Müller --- .../qt5/qtwebkit/0006-Fix-build-with-bison37.patch | 52 ++++++++++++++++++++++ recipes-qt/qt5/qtwebkit_git.bb | 1 + 2 files changed, 53 insertions(+) create mode 100644 recipes-qt/qt5/qtwebkit/0006-Fix-build-with-bison37.patch diff --git a/recipes-qt/qt5/qtwebkit/0006-Fix-build-with-bison37.patch b/recipes-qt/qt5/qtwebkit/0006-Fix-build-with-bison37.patch new file mode 100644 index 00000000..9262f5fe --- /dev/null +++ b/recipes-qt/qt5/qtwebkit/0006-Fix-build-with-bison37.patch @@ -0,0 +1,52 @@ +From d92b11fea65364fefa700249bd3340e0cd4c5b31 Mon Sep 17 00:00:00 2001 +From: Dmitry Shachnev +Date: Tue, 4 Aug 2020 21:04:06 +0300 +Subject: [PATCH] Let Bison generate the header directly, to fix build with + Bison 3.7 + +Starting with Bison 3.7, the generated C++ file #include's the header +by default, instead of duplicating it. So we should not delete it. + +Remove the code to add #ifdef guards to the header, since Bison adds +them itself since version 2.6.3. + +Found at [1] + +[1] https://github.com/qtwebkit/qtwebkit/commit/d92b11fea65364fefa700249bd3340e0cd4c5b31 + +Upstream-Status: Pending +--- + Source/WebCore/css/makegrammar.pl | 21 +-------------------- + 1 file changed, 1 insertion(+), 20 deletions(-) + +diff --git a/Source/WebCore/css/makegrammar.pl b/Source/WebCore/css/makegrammar.pl +index 5d63b08102eb..9435701c7061 100644 +--- a/Source/WebCore/css/makegrammar.pl ++++ b/Source/WebCore/css/makegrammar.pl +@@ -73,25 +73,6 @@ + } + + my $fileBase = File::Spec->join($outputDir, $filename); +-my @bisonCommand = ($bison, "-d", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp"); ++my @bisonCommand = ($bison, "--defines=$fileBase.h", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp"); + push @bisonCommand, "--no-lines" if $^O eq "MSWin32"; # Work around bug in bison >= 3.0 on Windows where it puts backslashes into #line directives. + system(@bisonCommand) == 0 or die; +- +-open HEADER, ">$fileBase.h" or die; +-print HEADER << "EOF"; +-#ifndef CSSGRAMMAR_H +-#define CSSGRAMMAR_H +-EOF +- +-open HPP, "<$fileBase.cpp.h" or open HPP, "<$fileBase.hpp" or die; +-while () { +- print HEADER; +-} +-close HPP; +- +-print HEADER "#endif\n"; +-close HEADER; +- +-unlink("$fileBase.cpp.h"); +-unlink("$fileBase.hpp"); +- diff --git a/recipes-qt/qt5/qtwebkit_git.bb b/recipes-qt/qt5/qtwebkit_git.bb index a52ae76e..acd97e09 100644 --- a/recipes-qt/qt5/qtwebkit_git.bb +++ b/recipes-qt/qt5/qtwebkit_git.bb @@ -16,6 +16,7 @@ SRC_URI += "\ file://0003-Fix-build-with-non-glibc-libc-on-musl.patch \ file://0004-Fix-build-bug-for-armv32-BE.patch \ file://0005-PlatformQt.cmake-Do-not-generate-hardcoded-include-p.patch \ + file://0006-Fix-build-with-bison37.patch \ " inherit cmake_qt5 perlnative -- cgit v1.2.3 From 8c980e70375194822ac7e3c5f8f59d06d4e88c49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 6 Sep 2020 20:53:22 +0200 Subject: qtwebengine: Fix build by setting correct import path MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fixes: | ERROR at //third_party/icu/BUILD.gn:10:1: Unable to load "<...>/qtwebengine/5.15.0+gitAUTOINC+f526855509_7b2f027ea8-r0/git/src/3rdparty/chromium/v8/snapshot_toolchain.gni". | import("//v8/snapshot_toolchain.gni") | ^----------------------------------- | See //url/BUILD.gn:97:15: which caused the file to be included. | deps += [ "//third_party/icu" ] | ^------------------ | Project ERROR: GN run error! * Discussion found at [1] * Build tested with/without icu in PACKAGECONFIG [1] https://github.com/meta-qt5/meta-qt5/pull/351 Signed-off-by: Andreas Müller --- .../qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch b/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch index 8ca1dace..08ce22dd 100755 --- a/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch +++ b/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch @@ -26,7 +26,7 @@ index 97073f09787..5d293ca628d 100644 import("//build/config/linux/pkg_config.gni") import("//build/shim_headers.gni") import("//third_party/icu/config.gni") -+import("//v8/snapshot_toolchain.gni") ++import("//v8/gni/snapshot_toolchain.gni") declare_args() { use_system_icu = false -- cgit v1.2.3 From 761949d22ca5b280447a9e6796a2dd070c8479d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 6 Sep 2020 21:22:23 +0200 Subject: qtwebengine: Fix patch fuzz MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes: | ERROR: qtwebengine-5.15.0+gitAUTOINC+f526855509_7b2f027ea8-r0 do_patch: Fuzz detected: | | Applying patch 0005-icu-use-system-library-only-targets.patch | patching file src/3rdparty/chromium/third_party/icu/BUILD.gn | Hunk #3 succeeded at 1217 with fuzz 1 (offset 70 lines). | Hunk #4 succeeded at 1430 (offset 74 lines). | Hunk #5 succeeded at 1438 (offset 74 lines). | Hunk #6 succeeded at 1450 (offset 74 lines). Signed-off-by: Andreas Müller --- .../qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch b/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch index 08ce22dd..066ee516 100755 --- a/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch +++ b/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch @@ -50,7 +50,7 @@ index 97073f09787..5d293ca628d 100644 # You can depend on the individually if you need to. group("icu") { @@ -1137,7 +1147,7 @@ config("system_icu_config") { - ] + } } -if (use_system_icu) { -- cgit v1.2.3 From afcde8567252191820ed07abcc241f3794b75988 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 7 Sep 2020 00:06:32 +0200 Subject: qtwebengine: Fix sandbox freeze for glibc >= 2.31 on 32 bit systems MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * patch was taken from meta-browser. The only modification done was adding the error seen Signed-off-by: Andreas Müller Signed-off-by: Martin Jansa --- ...-sandbox-Aw-snap-for-syscalls-403-and-407.patch | 141 +++++++++++++++++++++ recipes-qt/qt5/qtwebengine_git.bb | 1 + 2 files changed, 142 insertions(+) create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch diff --git a/recipes-qt/qt5/qtwebengine/chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch b/recipes-qt/qt5/qtwebengine/chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch new file mode 100644 index 00000000..1f4cb36c --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch @@ -0,0 +1,141 @@ +From 18d864774916865ec44ccd011a4caf730943f0e9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Mon, 20 Apr 2020 23:56:48 +0200 +Subject: [PATCH] Fix sandbox 'Aw, snap' for syscalls 403 and 407 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Taken as is from meta-browser. Saw my application freeze for syscall 0407 +trouble: + +| ../../../../git/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0407 + +Original commit message: + +* syscall 403: reported by ArchLinux users [1-2] +* syscall 407: reported by me [3] + +Looking at [4-5] it seems that glibc (>=2.31?) introduced extra syscalls for +32Bit systems to handle time64: + +* __NR_clock_gettime -> __NR_clock_gettime64 +* __NR_clock_nanosleep -> __NR_clock_nanosleep_time64 + +To fix +| ../../sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0403 +| ../../sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0407 + +we handle new systemcalls in the same way as 64bit systems do and 32bit systems +did before glibc 2.31. + +[1] https://bugs.archlinux32.org/index.php?do=details&task_id=105 +[2] https://bbs.archlinux32.org/viewtopic.php?id=2897 +[3] https://github.com/OSSystems/meta-browser/issues/357 +[4] https://sourceware.org/git/?p=glibc.git;a=commit;h=2e44b10b42d68d9887ccab17b76db5d7bbae4fb6 +[5] https://github.com/bminor/glibc/blob/019d828669df966dc4ef2684fce0b1c17bef9aae/sysdeps/unix/sysv/linux/clock_gettime.c#L30 + +Upstream Status: Pending [Have no idea where to send this] + +Signed-off-by: Andreas Müller +--- + sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc | 9 ++++++++- + .../syscall_parameters_restrictions_unittests.cc | 6 ++++++ + sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc | 6 ++++++ + sandbox/linux/system_headers/arm_linux_syscalls.h | 8 ++++++++ + sandbox/linux/system_headers/mips_linux_syscalls.h | 8 ++++++++ + 5 files changed, 36 insertions(+), 1 deletion(-) + +diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +index 768025ce1..87025d917 100644 +--- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc ++++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +@@ -148,7 +148,14 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno, + return Allow(); + #endif + +- if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep) { ++ if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep ++#if defined(__NR_clock_gettime64) ++ || sysno == __NR_clock_gettime64 ++#endif ++#if defined(__NR_clock_nanosleep_time64) ++ || sysno == __NR_clock_nanosleep_time64 ++#endif ++ ) { + return RestrictClockID(); + } + +diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc +index b6c8c6377..245bc7131 100644 +--- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc ++++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc +@@ -60,6 +60,12 @@ class RestrictClockIdPolicy : public bpf_dsl::Policy { + case __NR_clock_gettime: + case __NR_clock_getres: + case __NR_clock_nanosleep: ++#if defined(__NR_clock_nanosleep_time64) ++ case __NR_clock_nanosleep_time64: ++#endif ++#if defined(__NR_clock_gettime64) ++ case __NR_clock_gettime64: ++#endif + return RestrictClockID(); + default: + return Allow(); +diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +index d9d18822f..8bc262235 100644 +--- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc ++++ b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +@@ -39,6 +39,12 @@ bool SyscallSets::IsAllowedGettime(int sysno) { + // filtered by RestrictClokID(). + case __NR_clock_gettime: // Parameters filtered by RestrictClockID(). + case __NR_clock_nanosleep: // Parameters filtered by RestrictClockID(). ++#if defined(__NR_clock_gettime64) ++ case __NR_clock_gettime64: // Parameters filtered by RestrictClockID(). ++#endif ++#if defined(__NR_clock_nanosleep_time64) ++ case __NR_clock_nanosleep_time64: // Parameters filtered by RestrictClockID(). ++#endif + case __NR_clock_settime: // Privileged. + #if defined(__i386__) || \ + (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) +diff --git a/sandbox/linux/system_headers/arm_linux_syscalls.h b/sandbox/linux/system_headers/arm_linux_syscalls.h +index 1addd5384..5de2162f9 100644 +--- a/sandbox/linux/system_headers/arm_linux_syscalls.h ++++ b/sandbox/linux/system_headers/arm_linux_syscalls.h +@@ -1385,6 +1385,14 @@ + #define __NR_memfd_create (__NR_SYSCALL_BASE+385) + #endif + ++#if !defined(__NR_clock_gettime64) ++#define __NR_clock_gettime64 (__NR_SYSCALL_BASE+403) ++#endif ++ ++#if !defined(__NR_clock_nanosleep_time64) ++#define __NR_clock_nanosleep_time64 (__NR_SYSCALL_BASE+407) ++#endif ++ + // ARM private syscalls. + #if !defined(__ARM_NR_BASE) + #define __ARM_NR_BASE (__NR_SYSCALL_BASE + 0xF0000) +diff --git a/sandbox/linux/system_headers/mips_linux_syscalls.h b/sandbox/linux/system_headers/mips_linux_syscalls.h +index ddbf97f3d..fa01b3bbc 100644 +--- a/sandbox/linux/system_headers/mips_linux_syscalls.h ++++ b/sandbox/linux/system_headers/mips_linux_syscalls.h +@@ -1433,4 +1433,12 @@ + #define __NR_memfd_create (__NR_Linux + 354) + #endif + ++#if !defined(__NR_clock_gettime64) ++#define __NR_clock_gettime64 (__NR_Linux + 403) ++#endif ++ ++#if !defined(__NR_clock_nanosleep_time64) ++#define __NR_clock_nanosleep_time64 (__NR_Linux + 407) ++#endif ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS_LINUX_SYSCALLS_H_ +-- +2.21.1 + diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb index 9281aeb7..d333ac08 100644 --- a/recipes-qt/qt5/qtwebengine_git.bb +++ b/recipes-qt/qt5/qtwebengine_git.bb @@ -173,6 +173,7 @@ SRC_URI += " \ file://chromium/0011-chromium-Include-cstddef-and-cstdint.patch;patchdir=src/3rdparty \ file://chromium/0012-chromium-Link-v8-with-libatomic-on-x86.patch;patchdir=src/3rdparty \ file://chromium/0013-chromium-Fix-bison-3.7.patch;patchdir=src/3rdparty \ + file://chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch;patchdir=src/3rdparty/chromium \ " SRC_URI_append_libc-musl = "\ -- cgit v1.2.3 From faa5163a269b429c1d6bfd4387ced0aaff4eba69 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Tue, 8 Sep 2020 09:41:36 +0200 Subject: qtwebengine: refresh the patches * update to match https://github.com/meta-qt5/qtwebengine/commits/b5.15-glibc 5.15-glibc.meta-qt5.8 https://github.com/meta-qt5/qtwebengine/commits/b5.15 5.15-glibc.meta-qt5.8 https://github.com/meta-qt5/qtwebengine-chromium/commits/80-based-glibc 80-based-glibc.meta-qt5.4 https://github.com/meta-qt5/qtwebengine-chromium/commits/80-based 80-based.meta-qt5.4 * 0002-icu-use-system-library-only-targets.patch is only for chromium, so it was updated and moved to right place in SRC_URI * 0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch prefix was moved to src/3rdparty not src/3rdparty/chromium so that it can apply with "git am" together with other chromium patches Signed-off-by: Martin Jansa --- .../0005-icu-use-system-library-only-targets.patch | 90 ------------- ...sl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch | 33 ----- ...-sandbox-Aw-snap-for-syscalls-403-and-407.patch | 141 --------------------- ...omium-icu-use-system-library-only-targets.patch | 88 +++++++++++++ ...sl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch | 52 -------- ...x-sandbox-Aw-snap-for-syscalls-403-and-40.patch | 139 ++++++++++++++++++++ ...-chromium-musl-include-fcntl.h-for-loff_t.patch | 22 ---- ...sl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch | 33 +++++ ...sl-use-off64_t-instead-of-the-internal-__.patch | 62 --------- ...sl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch | 52 ++++++++ ...ium-musl-linux-glibc-make-the-distinction.patch | 23 ---- ...sl-allocator-Do-not-include-glibc_weak_sy.patch | 24 ---- ...-chromium-musl-include-fcntl.h-for-loff_t.patch | 22 ++++ ...sl-Use-correct-member-name-__si_fields-fr.patch | 24 ---- ...sl-use-off64_t-instead-of-the-internal-__.patch | 62 +++++++++ ...sl-Define-res_ninit-and-res_nclose-for-no.patch | 79 ------------ ...ium-musl-linux-glibc-make-the-distinction.patch | 23 ++++ ...hromium-musl-Do-not-define-__sbrk-on-musl.patch | 26 ---- ...sl-allocator-Do-not-include-glibc_weak_sy.patch | 24 ++++ ...um-musl-Adjust-default-pthread-stack-size.patch | 47 ------- ...sl-Use-correct-member-name-__si_fields-fr.patch | 24 ++++ ...sl-Define-res_ninit-and-res_nclose-for-no.patch | 79 ++++++++++++ ...sl-Use-_fpstate-instead-of-_libc_fpstate-.patch | 63 --------- ...hromium-musl-Do-not-define-__sbrk-on-musl.patch | 26 ++++ ...sl-elf_reader.cc-include-sys-reg.h-to-get.patch | 56 -------- ...um-musl-Adjust-default-pthread-stack-size.patch | 47 +++++++ .../chromium/0025-chromium-musl-pread-pwrite.patch | 31 ----- ...sl-Use-_fpstate-instead-of-_libc_fpstate-.patch | 63 +++++++++ ...sl-initialize-msghdr-in-a-compatible-mann.patch | 45 ------- ...sl-elf_reader.cc-include-sys-reg.h-to-get.patch | 56 ++++++++ .../chromium/0028-chromium-musl-pread-pwrite.patch | 31 +++++ ...sl-initialize-msghdr-in-a-compatible-mann.patch | 45 +++++++ recipes-qt/qt5/qtwebengine_git.bb | 44 ++++--- 33 files changed, 838 insertions(+), 838 deletions(-) delete mode 100755 recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0013-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0014-chromium-icu-use-system-library-only-targets.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0014-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0015-chromium-Fix-sandbox-Aw-snap-for-syscalls-403-and-40.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0015-chromium-musl-include-fcntl.h-for-loff_t.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0016-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0016-chromium-musl-use-off64_t-instead-of-the-internal-__.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0017-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0017-chromium-musl-linux-glibc-make-the-distinction.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0018-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0018-chromium-musl-include-fcntl.h-for-loff_t.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0019-chromium-musl-Use-correct-member-name-__si_fields-fr.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0019-chromium-musl-use-off64_t-instead-of-the-internal-__.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0020-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0020-chromium-musl-linux-glibc-make-the-distinction.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0021-chromium-musl-Do-not-define-__sbrk-on-musl.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0021-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0022-chromium-musl-Adjust-default-pthread-stack-size.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0022-chromium-musl-Use-correct-member-name-__si_fields-fr.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0023-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0023-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0024-chromium-musl-Do-not-define-__sbrk-on-musl.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0024-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0025-chromium-musl-Adjust-default-pthread-stack-size.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0025-chromium-musl-pread-pwrite.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0026-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch delete mode 100644 recipes-qt/qt5/qtwebengine/chromium/0026-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0027-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0028-chromium-musl-pread-pwrite.patch create mode 100644 recipes-qt/qt5/qtwebengine/chromium/0029-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch diff --git a/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch b/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch deleted file mode 100755 index 066ee516..00000000 --- a/recipes-qt/qt5/qtwebengine/0005-icu-use-system-library-only-targets.patch +++ /dev/null @@ -1,90 +0,0 @@ -From fe811323fbe787264b15b83d027947926477f0c2 Mon Sep 17 00:00:00 2001 -From: Andrej Valek -Date: Fri, 17 Apr 2020 09:43:32 +0200 -Subject: [PATCH] icu: use system library only targets - - - use bundled one for native/v8 internal builds - -Complete system ICU library using requires ICU dev package -be installed on host. Enabling dependency on native package -is not enough due to V8 hosttools toolchain. V8 toolchain -is not using native sysroot, only a host packages. -On the other hand webenegine does not produce external -native artifacts. So external system ICU linking is not -needed. - -Signed-off-by: Andrej Valek ---- - src/3rdparty/chromium/third_party/icu/BUILD.gn | 18 ++++++++++++++---- - 1 file changed, 14 insertions(+), 4 deletions(-) - -diff --git a/src/3rdparty/chromium/third_party/icu/BUILD.gn b/src/3rdparty/chromium/third_party/icu/BUILD.gn -index 97073f09787..5d293ca628d 100644 ---- a/src/3rdparty/chromium/third_party/icu/BUILD.gn -+++ b/src/3rdparty/chromium/third_party/icu/BUILD.gn -@@ -7,9 +7,13 @@ import("//build/config/host_byteorder.gni") - import("//build/config/linux/pkg_config.gni") - import("//build/shim_headers.gni") - import("//third_party/icu/config.gni") -+import("//v8/gni/snapshot_toolchain.gni") - - declare_args() { - use_system_icu = false -+ -+ # Use only target icu library, when system using is enabled -+ use_system_icu_target_only = false - } - - if (is_android) { -@@ -20,6 +24,12 @@ if (is_mac) { - import("//build/config/sanitizers/sanitizers.gni") - } - -+if (use_system_icu) { -+ # Use system library only for target, otherwise use bundled -+ if ((current_toolchain != host_toolchain) && (current_toolchain != v8_snapshot_toolchain)) { -+ use_system_icu_target_only = true -+ } -+} - # Meta target that includes both icuuc and icui18n. Most targets want both. - # You can depend on the individually if you need to. - group("icu") { -@@ -1137,7 +1147,7 @@ config("system_icu_config") { - } - } - --if (use_system_icu) { -+if (use_system_icu_target_only) { - pkg_config("system_icui18n") { - packages = [ "icu-i18n" ] - } -@@ -1346,7 +1356,7 @@ shim_headers("icuuc_shim") { - } - - config("icu_config") { -- if (use_system_icu) { -+ if (use_system_icu_target_only) { - configs = [ ":system_icu_config"] - } else { - configs = [ ":bundled_icu_config"] -@@ -1354,7 +1364,7 @@ config("icu_config") { - } - - group("icuuc") { -- if (use_system_icu) { -+ if (use_system_icu_target_only) { - deps = [ ":icuuc_shim" ] - public_configs = [ - ":system_icu_config", -@@ -1366,7 +1376,7 @@ group("icuuc") { - } - - group("icui18n") { -- if (use_system_icu) { -+ if (use_system_icu_target_only) { - deps = [ ":icui18n_shim" ] - public_configs = [ - ":system_icu_config", --- -2.20.1 - diff --git a/recipes-qt/qt5/qtwebengine/chromium/0013-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch b/recipes-qt/qt5/qtwebengine/chromium/0013-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch deleted file mode 100644 index f654424e..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0013-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 69570c2f3c88c31cca71f87996ed4ab7ab2bc66c Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 14:01:12 -0700 -Subject: [PATCH] chromium: musl: sandbox: Define TEMP_FAILURE_RETRY if not - defined - -Musl does not define this Macro - -Signed-off-by: Khem Raj ---- - chromium/sandbox/linux/suid/sandbox.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/chromium/sandbox/linux/suid/sandbox.c b/chromium/sandbox/linux/suid/sandbox.c -index 854819bfbb4..a99d32741d0 100644 ---- a/chromium/sandbox/linux/suid/sandbox.c -+++ b/chromium/sandbox/linux/suid/sandbox.c -@@ -46,6 +46,15 @@ static bool DropRoot(); - - #define HANDLE_EINTR(x) TEMP_FAILURE_RETRY(x) - -+#ifndef TEMP_FAILURE_RETRY -+# define TEMP_FAILURE_RETRY(expression) \ -+ (__extension__ \ -+ ({ long int __result; \ -+ do __result = (long int) (expression); \ -+ while (__result == -1L && errno == EINTR); \ -+ __result; })) -+#endif -+ - static void FatalError(const char* msg, ...) - __attribute__((noreturn, format(printf, 1, 2))); - diff --git a/recipes-qt/qt5/qtwebengine/chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch b/recipes-qt/qt5/qtwebengine/chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch deleted file mode 100644 index 1f4cb36c..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch +++ /dev/null @@ -1,141 +0,0 @@ -From 18d864774916865ec44ccd011a4caf730943f0e9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= -Date: Mon, 20 Apr 2020 23:56:48 +0200 -Subject: [PATCH] Fix sandbox 'Aw, snap' for syscalls 403 and 407 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Taken as is from meta-browser. Saw my application freeze for syscall 0407 -trouble: - -| ../../../../git/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0407 - -Original commit message: - -* syscall 403: reported by ArchLinux users [1-2] -* syscall 407: reported by me [3] - -Looking at [4-5] it seems that glibc (>=2.31?) introduced extra syscalls for -32Bit systems to handle time64: - -* __NR_clock_gettime -> __NR_clock_gettime64 -* __NR_clock_nanosleep -> __NR_clock_nanosleep_time64 - -To fix -| ../../sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0403 -| ../../sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0407 - -we handle new systemcalls in the same way as 64bit systems do and 32bit systems -did before glibc 2.31. - -[1] https://bugs.archlinux32.org/index.php?do=details&task_id=105 -[2] https://bbs.archlinux32.org/viewtopic.php?id=2897 -[3] https://github.com/OSSystems/meta-browser/issues/357 -[4] https://sourceware.org/git/?p=glibc.git;a=commit;h=2e44b10b42d68d9887ccab17b76db5d7bbae4fb6 -[5] https://github.com/bminor/glibc/blob/019d828669df966dc4ef2684fce0b1c17bef9aae/sysdeps/unix/sysv/linux/clock_gettime.c#L30 - -Upstream Status: Pending [Have no idea where to send this] - -Signed-off-by: Andreas Müller ---- - sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc | 9 ++++++++- - .../syscall_parameters_restrictions_unittests.cc | 6 ++++++ - sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc | 6 ++++++ - sandbox/linux/system_headers/arm_linux_syscalls.h | 8 ++++++++ - sandbox/linux/system_headers/mips_linux_syscalls.h | 8 ++++++++ - 5 files changed, 36 insertions(+), 1 deletion(-) - -diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc -index 768025ce1..87025d917 100644 ---- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc -+++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc -@@ -148,7 +148,14 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno, - return Allow(); - #endif - -- if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep) { -+ if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep -+#if defined(__NR_clock_gettime64) -+ || sysno == __NR_clock_gettime64 -+#endif -+#if defined(__NR_clock_nanosleep_time64) -+ || sysno == __NR_clock_nanosleep_time64 -+#endif -+ ) { - return RestrictClockID(); - } - -diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc -index b6c8c6377..245bc7131 100644 ---- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc -+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc -@@ -60,6 +60,12 @@ class RestrictClockIdPolicy : public bpf_dsl::Policy { - case __NR_clock_gettime: - case __NR_clock_getres: - case __NR_clock_nanosleep: -+#if defined(__NR_clock_nanosleep_time64) -+ case __NR_clock_nanosleep_time64: -+#endif -+#if defined(__NR_clock_gettime64) -+ case __NR_clock_gettime64: -+#endif - return RestrictClockID(); - default: - return Allow(); -diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc -index d9d18822f..8bc262235 100644 ---- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc -+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc -@@ -39,6 +39,12 @@ bool SyscallSets::IsAllowedGettime(int sysno) { - // filtered by RestrictClokID(). - case __NR_clock_gettime: // Parameters filtered by RestrictClockID(). - case __NR_clock_nanosleep: // Parameters filtered by RestrictClockID(). -+#if defined(__NR_clock_gettime64) -+ case __NR_clock_gettime64: // Parameters filtered by RestrictClockID(). -+#endif -+#if defined(__NR_clock_nanosleep_time64) -+ case __NR_clock_nanosleep_time64: // Parameters filtered by RestrictClockID(). -+#endif - case __NR_clock_settime: // Privileged. - #if defined(__i386__) || \ - (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) -diff --git a/sandbox/linux/system_headers/arm_linux_syscalls.h b/sandbox/linux/system_headers/arm_linux_syscalls.h -index 1addd5384..5de2162f9 100644 ---- a/sandbox/linux/system_headers/arm_linux_syscalls.h -+++ b/sandbox/linux/system_headers/arm_linux_syscalls.h -@@ -1385,6 +1385,14 @@ - #define __NR_memfd_create (__NR_SYSCALL_BASE+385) - #endif - -+#if !defined(__NR_clock_gettime64) -+#define __NR_clock_gettime64 (__NR_SYSCALL_BASE+403) -+#endif -+ -+#if !defined(__NR_clock_nanosleep_time64) -+#define __NR_clock_nanosleep_time64 (__NR_SYSCALL_BASE+407) -+#endif -+ - // ARM private syscalls. - #if !defined(__ARM_NR_BASE) - #define __ARM_NR_BASE (__NR_SYSCALL_BASE + 0xF0000) -diff --git a/sandbox/linux/system_headers/mips_linux_syscalls.h b/sandbox/linux/system_headers/mips_linux_syscalls.h -index ddbf97f3d..fa01b3bbc 100644 ---- a/sandbox/linux/system_headers/mips_linux_syscalls.h -+++ b/sandbox/linux/system_headers/mips_linux_syscalls.h -@@ -1433,4 +1433,12 @@ - #define __NR_memfd_create (__NR_Linux + 354) - #endif - -+#if !defined(__NR_clock_gettime64) -+#define __NR_clock_gettime64 (__NR_Linux + 403) -+#endif -+ -+#if !defined(__NR_clock_nanosleep_time64) -+#define __NR_clock_nanosleep_time64 (__NR_Linux + 407) -+#endif -+ - #endif // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS_LINUX_SYSCALLS_H_ --- -2.21.1 - diff --git a/recipes-qt/qt5/qtwebengine/chromium/0014-chromium-icu-use-system-library-only-targets.patch b/recipes-qt/qt5/qtwebengine/chromium/0014-chromium-icu-use-system-library-only-targets.patch new file mode 100644 index 00000000..52607983 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0014-chromium-icu-use-system-library-only-targets.patch @@ -0,0 +1,88 @@ +From 8c9a4027426b0a2c56cc834da0dbad5b8378c2c6 Mon Sep 17 00:00:00 2001 +From: Andrej Valek +Date: Fri, 17 Apr 2020 09:43:32 +0200 +Subject: [PATCH] chromium: icu: use system library only targets + + - use bundled one for native/v8 internal builds + +Complete system ICU library using requires ICU dev package +be installed on host. Enabling dependency on native package +is not enough due to V8 hosttools toolchain. V8 toolchain +is not using native sysroot, only a host packages. +On the other hand webenegine does not produce external +native artifacts. So external system ICU linking is not +needed. + +Signed-off-by: Andrej Valek +Signed-off-by: Martin Jansa +--- + chromium/third_party/icu/BUILD.gn | 18 ++++++++++++++---- + 1 file changed, 14 insertions(+), 4 deletions(-) + +diff --git a/chromium/third_party/icu/BUILD.gn b/chromium/third_party/icu/BUILD.gn +index 023d6e13a2c..312f34d6186 100644 +--- a/chromium/third_party/icu/BUILD.gn ++++ b/chromium/third_party/icu/BUILD.gn +@@ -7,9 +7,13 @@ import("//build/config/host_byteorder.gni") + import("//build/config/linux/pkg_config.gni") + import("//build/shim_headers.gni") + import("//third_party/icu/config.gni") ++import("//v8/gni/snapshot_toolchain.gni") + + declare_args() { + use_system_icu = false ++ ++ # Use only target icu library, when system using is enabled ++ use_system_icu_target_only = false + } + + if (is_android) { +@@ -20,6 +24,12 @@ if (is_mac) { + import("//build/config/sanitizers/sanitizers.gni") + } + ++if (use_system_icu) { ++ # Use system library only for target, otherwise use bundled ++ if ((current_toolchain != host_toolchain) && (current_toolchain != v8_snapshot_toolchain)) { ++ use_system_icu_target_only = true ++ } ++} + # Meta target that includes both icuuc and icui18n. Most targets want both. + # You can depend on the individually if you need to. + group("icu") { +@@ -1207,7 +1217,7 @@ config("system_icu_config") { + } + } + +-if (use_system_icu) { ++if (use_system_icu_target_only) { + pkg_config("system_icui18n") { + packages = [ "icu-i18n" ] + } +@@ -1420,7 +1430,7 @@ shim_headers("icuuc_shim") { + } + + config("icu_config") { +- if (use_system_icu) { ++ if (use_system_icu_target_only) { + configs = [ ":system_icu_config"] + } else { + configs = [ ":bundled_icu_config"] +@@ -1428,7 +1438,7 @@ config("icu_config") { + } + + group("icuuc") { +- if (use_system_icu) { ++ if (use_system_icu_target_only) { + deps = [ ":icuuc_shim" ] + public_configs = [ + ":system_icu_config", +@@ -1440,7 +1450,7 @@ group("icuuc") { + } + + group("icui18n") { +- if (use_system_icu) { ++ if (use_system_icu_target_only) { + deps = [ ":icui18n_shim" ] + public_configs = [ + ":system_icu_config", diff --git a/recipes-qt/qt5/qtwebengine/chromium/0014-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch b/recipes-qt/qt5/qtwebengine/chromium/0014-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch deleted file mode 100644 index 19fbca5d..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0014-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 5b501d5335008e32bd5a62e48a675c8fc61194a9 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 14:09:06 -0700 -Subject: [PATCH] chromium: musl: Avoid mallinfo() APIs on non-glibc/linux - -Signed-off-by: Khem Raj ---- - chromium/base/process/process_metrics_posix.cc | 4 ++-- - chromium/base/trace_event/malloc_dump_provider.cc | 2 ++ - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/chromium/base/process/process_metrics_posix.cc b/chromium/base/process/process_metrics_posix.cc -index 044bd8d244f..cec43e1d59b 100644 ---- a/chromium/base/process/process_metrics_posix.cc -+++ b/chromium/base/process/process_metrics_posix.cc -@@ -110,14 +110,14 @@ size_t ProcessMetrics::GetMallocUsage() { - malloc_statistics_t stats = {0}; - malloc_zone_statistics(nullptr, &stats); - return stats.size_in_use; --#elif defined(OS_LINUX) || defined(OS_ANDROID) -+#elif defined(__GLIBC__) || defined(OS_ANDROID) - struct mallinfo minfo = mallinfo(); - #if BUILDFLAG(USE_TCMALLOC) - return minfo.uordblks; - #else - return minfo.hblkhd + minfo.arena; - #endif --#elif defined(OS_FUCHSIA) -+#else - // TODO(fuchsia): Not currently exposed. https://crbug.com/735087. - return 0; - #endif -diff --git a/chromium/base/trace_event/malloc_dump_provider.cc b/chromium/base/trace_event/malloc_dump_provider.cc -index 7e42cfc20bb..4e24fc711ad 100644 ---- a/chromium/base/trace_event/malloc_dump_provider.cc -+++ b/chromium/base/trace_event/malloc_dump_provider.cc -@@ -77,6 +77,7 @@ MallocDumpProvider::~MallocDumpProvider() = default; - // the current process. - bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args, - ProcessMemoryDump* pmd) { -+#if defined(__GLIBC__) - { - base::AutoLock auto_lock(emit_metrics_on_memory_dump_lock_); - if (!emit_metrics_on_memory_dump_) -@@ -175,6 +176,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args, - MemoryAllocatorDump::kUnitsBytes, - resident_size - allocated_objects_size); - } -+#endif // __GLIBC__ - return true; - } - diff --git a/recipes-qt/qt5/qtwebengine/chromium/0015-chromium-Fix-sandbox-Aw-snap-for-syscalls-403-and-40.patch b/recipes-qt/qt5/qtwebengine/chromium/0015-chromium-Fix-sandbox-Aw-snap-for-syscalls-403-and-40.patch new file mode 100644 index 00000000..1b43fcbb --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0015-chromium-Fix-sandbox-Aw-snap-for-syscalls-403-and-40.patch @@ -0,0 +1,139 @@ +From 5aa69767be0fbbc7a3a5075c6c94366a535c99a8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Mon, 20 Apr 2020 23:56:48 +0200 +Subject: [PATCH] chromium: Fix sandbox 'Aw, snap' for syscalls 403 and 407 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Taken as is from meta-browser. Saw my application freeze for syscall 0407 +trouble: + +| ../../../../git/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0407 + +Original commit message: + +* syscall 403: reported by ArchLinux users [1-2] +* syscall 407: reported by me [3] + +Looking at [4-5] it seems that glibc (>=2.31?) introduced extra syscalls for +32Bit systems to handle time64: + +* __NR_clock_gettime -> __NR_clock_gettime64 +* __NR_clock_nanosleep -> __NR_clock_nanosleep_time64 + +To fix +| ../../sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0403 +| ../../sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall 0407 + +we handle new systemcalls in the same way as 64bit systems do and 32bit systems +did before glibc 2.31. + +[1] https://bugs.archlinux32.org/index.php?do=details&task_id=105 +[2] https://bbs.archlinux32.org/viewtopic.php?id=2897 +[3] https://github.com/OSSystems/meta-browser/issues/357 +[4] https://sourceware.org/git/?p=glibc.git;a=commit;h=2e44b10b42d68d9887ccab17b76db5d7bbae4fb6 +[5] https://github.com/bminor/glibc/blob/019d828669df966dc4ef2684fce0b1c17bef9aae/sysdeps/unix/sysv/linux/clock_gettime.c#L30 + +Upstream Status: Pending [Have no idea where to send this] + +Signed-off-by: Andreas Müller +Signed-off-by: Martin Jansa +--- + .../sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc | 9 ++++++++- + .../syscall_parameters_restrictions_unittests.cc | 6 ++++++ + .../sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc | 6 ++++++ + .../sandbox/linux/system_headers/arm_linux_syscalls.h | 8 ++++++++ + .../sandbox/linux/system_headers/mips_linux_syscalls.h | 8 ++++++++ + 5 files changed, 36 insertions(+), 1 deletion(-) + +diff --git a/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +index 768025ce192..87025d91785 100644 +--- a/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc ++++ b/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +@@ -148,7 +148,14 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno, + return Allow(); + #endif + +- if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep) { ++ if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep ++#if defined(__NR_clock_gettime64) ++ || sysno == __NR_clock_gettime64 ++#endif ++#if defined(__NR_clock_nanosleep_time64) ++ || sysno == __NR_clock_nanosleep_time64 ++#endif ++ ) { + return RestrictClockID(); + } + +diff --git a/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc b/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc +index 76193b62c9f..7731c697002 100644 +--- a/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc ++++ b/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc +@@ -60,6 +60,12 @@ class RestrictClockIdPolicy : public bpf_dsl::Policy { + case __NR_clock_gettime: + case __NR_clock_getres: + case __NR_clock_nanosleep: ++#if defined(__NR_clock_nanosleep_time64) ++ case __NR_clock_nanosleep_time64: ++#endif ++#if defined(__NR_clock_gettime64) ++ case __NR_clock_gettime64: ++#endif + return RestrictClockID(); + default: + return Allow(); +diff --git a/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +index d9d18822f67..0db8745cb57 100644 +--- a/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc ++++ b/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +@@ -39,6 +39,12 @@ bool SyscallSets::IsAllowedGettime(int sysno) { + // filtered by RestrictClokID(). + case __NR_clock_gettime: // Parameters filtered by RestrictClockID(). + case __NR_clock_nanosleep: // Parameters filtered by RestrictClockID(). ++#if defined(__NR_clock_gettime64) ++ case __NR_clock_gettime64: // Parameters filtered by RestrictClockID(). ++#endif ++#if defined(__NR_clock_nanosleep_time64) ++ case __NR_clock_nanosleep_time64: // Parameters filtered by RestrictClockID(). ++#endif + case __NR_clock_settime: // Privileged. + #if defined(__i386__) || \ + (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) +diff --git a/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h b/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h +index 1addd53843c..5de2162f981 100644 +--- a/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h ++++ b/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h +@@ -1385,6 +1385,14 @@ + #define __NR_memfd_create (__NR_SYSCALL_BASE+385) + #endif + ++#if !defined(__NR_clock_gettime64) ++#define __NR_clock_gettime64 (__NR_SYSCALL_BASE+403) ++#endif ++ ++#if !defined(__NR_clock_nanosleep_time64) ++#define __NR_clock_nanosleep_time64 (__NR_SYSCALL_BASE+407) ++#endif ++ + // ARM private syscalls. + #if !defined(__ARM_NR_BASE) + #define __ARM_NR_BASE (__NR_SYSCALL_BASE + 0xF0000) +diff --git a/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h b/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h +index ddbf97f3d8b..fa01b3bbc66 100644 +--- a/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h ++++ b/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h +@@ -1433,4 +1433,12 @@ + #define __NR_memfd_create (__NR_Linux + 354) + #endif + ++#if !defined(__NR_clock_gettime64) ++#define __NR_clock_gettime64 (__NR_Linux + 403) ++#endif ++ ++#if !defined(__NR_clock_nanosleep_time64) ++#define __NR_clock_nanosleep_time64 (__NR_Linux + 407) ++#endif ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS_LINUX_SYSCALLS_H_ diff --git a/recipes-qt/qt5/qtwebengine/chromium/0015-chromium-musl-include-fcntl.h-for-loff_t.patch b/recipes-qt/qt5/qtwebengine/chromium/0015-chromium-musl-include-fcntl.h-for-loff_t.patch deleted file mode 100644 index 91bd4057..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0015-chromium-musl-include-fcntl.h-for-loff_t.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 1180600c21260188fd2d3def0f536b4243175fc0 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 14:37:49 -0700 -Subject: [PATCH] chromium: musl: include fcntl.h for loff_t - -Signed-off-by: Khem Raj ---- - .../tcmalloc/chromium/src/base/linux_syscall_support.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/chromium/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h b/chromium/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h -index ca5936d6e63..5484dbadfbd 100644 ---- a/chromium/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h -+++ b/chromium/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h -@@ -154,6 +154,7 @@ extern "C" { - #include - #include - #include -+#include - #include - #include - #include diff --git a/recipes-qt/qt5/qtwebengine/chromium/0016-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch b/recipes-qt/qt5/qtwebengine/chromium/0016-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch new file mode 100644 index 00000000..01c46c05 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0016-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch @@ -0,0 +1,33 @@ +From 0dbcdee3ccc23d3a6c9e66b5abc3fb3d1ccbc297 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:01:12 -0700 +Subject: [PATCH] chromium: musl: sandbox: Define TEMP_FAILURE_RETRY if not + defined + +Musl does not define this Macro + +Signed-off-by: Khem Raj +--- + chromium/sandbox/linux/suid/sandbox.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/chromium/sandbox/linux/suid/sandbox.c b/chromium/sandbox/linux/suid/sandbox.c +index 854819bfbb4..a99d32741d0 100644 +--- a/chromium/sandbox/linux/suid/sandbox.c ++++ b/chromium/sandbox/linux/suid/sandbox.c +@@ -46,6 +46,15 @@ static bool DropRoot(); + + #define HANDLE_EINTR(x) TEMP_FAILURE_RETRY(x) + ++#ifndef TEMP_FAILURE_RETRY ++# define TEMP_FAILURE_RETRY(expression) \ ++ (__extension__ \ ++ ({ long int __result; \ ++ do __result = (long int) (expression); \ ++ while (__result == -1L && errno == EINTR); \ ++ __result; })) ++#endif ++ + static void FatalError(const char* msg, ...) + __attribute__((noreturn, format(printf, 1, 2))); + diff --git a/recipes-qt/qt5/qtwebengine/chromium/0016-chromium-musl-use-off64_t-instead-of-the-internal-__.patch b/recipes-qt/qt5/qtwebengine/chromium/0016-chromium-musl-use-off64_t-instead-of-the-internal-__.patch deleted file mode 100644 index c6c3571c..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0016-chromium-musl-use-off64_t-instead-of-the-internal-__.patch +++ /dev/null @@ -1,62 +0,0 @@ -From f2ff87552f0f2f576bda05f7ccf5855c005ed7b0 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 14:38:37 -0700 -Subject: [PATCH] chromium: musl: use off64_t instead of the internal __off64_t - -- only do the glibc 32-bit ABI check for mmap/mmap64 on gnu libc. musl - does not support the 32-bit ABI. - -Signed-off-by: Khem Raj ---- - .../tcmalloc/chromium/src/malloc_hook_mmap_linux.h | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h b/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h -index 17415aaf538..59c1b6fb5f6 100644 ---- a/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h -+++ b/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h -@@ -60,7 +60,7 @@ - - static inline void* do_mmap64(void *start, size_t length, - int prot, int flags, -- int fd, __off64_t offset) __THROW { -+ int fd, off64_t offset) __THROW { - // The original gperftools uses sys_mmap() here. But, it is not allowed by - // Chromium's sandbox. - return (void*)syscall(SYS_mmap, start, length, prot, flags, fd, offset); -@@ -73,7 +73,7 @@ static inline void* do_mmap64(void *start, size_t length, - - static inline void* do_mmap64(void *start, size_t length, - int prot, int flags, -- int fd, __off64_t offset) __THROW { -+ int fd, off64_t offset) __THROW { - void *result; - - // Try mmap2() unless it's not supported -@@ -144,7 +144,7 @@ static inline void* do_mmap64(void *start, size_t length, - - extern "C" { - void* mmap64(void *start, size_t length, int prot, int flags, -- int fd, __off64_t offset ) __THROW -+ int fd, off64_t offset ) __THROW - ATTRIBUTE_SECTION(malloc_hook); - void* mmap(void *start, size_t length,int prot, int flags, - int fd, off_t offset) __THROW -@@ -159,7 +159,7 @@ extern "C" { - } - - extern "C" void* mmap64(void *start, size_t length, int prot, int flags, -- int fd, __off64_t offset) __THROW { -+ int fd, off64_t offset) __THROW { - MallocHook::InvokePreMmapHook(start, length, prot, flags, fd, offset); - void *result; - if (!MallocHook::InvokeMmapReplacement( -@@ -170,7 +170,7 @@ extern "C" void* mmap64(void *start, size_t length, int prot, int flags, - return result; - } - --# if !defined(__USE_FILE_OFFSET64) || !defined(__REDIRECT_NTH) -+# if defined(__GLIBC__) && (!defined(__USE_FILE_OFFSET64) || !defined(__REDIRECT_NTH)) - - extern "C" void* mmap(void *start, size_t length, int prot, int flags, - int fd, off_t offset) __THROW { diff --git a/recipes-qt/qt5/qtwebengine/chromium/0017-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch b/recipes-qt/qt5/qtwebengine/chromium/0017-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch new file mode 100644 index 00000000..03226154 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0017-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch @@ -0,0 +1,52 @@ +From bbb23eb876e1f4500e7c8fd716a73351ad660725 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:09:06 -0700 +Subject: [PATCH] chromium: musl: Avoid mallinfo() APIs on non-glibc/linux + +Signed-off-by: Khem Raj +--- + chromium/base/process/process_metrics_posix.cc | 4 ++-- + chromium/base/trace_event/malloc_dump_provider.cc | 2 ++ + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/chromium/base/process/process_metrics_posix.cc b/chromium/base/process/process_metrics_posix.cc +index 044bd8d244f..cec43e1d59b 100644 +--- a/chromium/base/process/process_metrics_posix.cc ++++ b/chromium/base/process/process_metrics_posix.cc +@@ -110,14 +110,14 @@ size_t ProcessMetrics::GetMallocUsage() { + malloc_statistics_t stats = {0}; + malloc_zone_statistics(nullptr, &stats); + return stats.size_in_use; +-#elif defined(OS_LINUX) || defined(OS_ANDROID) ++#elif defined(__GLIBC__) || defined(OS_ANDROID) + struct mallinfo minfo = mallinfo(); + #if BUILDFLAG(USE_TCMALLOC) + return minfo.uordblks; + #else + return minfo.hblkhd + minfo.arena; + #endif +-#elif defined(OS_FUCHSIA) ++#else + // TODO(fuchsia): Not currently exposed. https://crbug.com/735087. + return 0; + #endif +diff --git a/chromium/base/trace_event/malloc_dump_provider.cc b/chromium/base/trace_event/malloc_dump_provider.cc +index 7e42cfc20bb..4e24fc711ad 100644 +--- a/chromium/base/trace_event/malloc_dump_provider.cc ++++ b/chromium/base/trace_event/malloc_dump_provider.cc +@@ -77,6 +77,7 @@ MallocDumpProvider::~MallocDumpProvider() = default; + // the current process. + bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args, + ProcessMemoryDump* pmd) { ++#if defined(__GLIBC__) + { + base::AutoLock auto_lock(emit_metrics_on_memory_dump_lock_); + if (!emit_metrics_on_memory_dump_) +@@ -175,6 +176,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args, + MemoryAllocatorDump::kUnitsBytes, + resident_size - allocated_objects_size); + } ++#endif // __GLIBC__ + return true; + } + diff --git a/recipes-qt/qt5/qtwebengine/chromium/0017-chromium-musl-linux-glibc-make-the-distinction.patch b/recipes-qt/qt5/qtwebengine/chromium/0017-chromium-musl-linux-glibc-make-the-distinction.patch deleted file mode 100644 index 9cc6744d..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0017-chromium-musl-linux-glibc-make-the-distinction.patch +++ /dev/null @@ -1,23 +0,0 @@ -From efa10960aa9ec6b573a9c34cabab90ad2c31c5a3 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 14:54:38 -0700 -Subject: [PATCH] chromium: musl: linux != glibc, make the distinction - -Signed-off-by: Khem Raj ---- - chromium/base/allocator/allocator_check.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/chromium/base/allocator/allocator_check.cc b/chromium/base/allocator/allocator_check.cc -index 5ea77ef2d27..85343a13905 100644 ---- a/chromium/base/allocator/allocator_check.cc -+++ b/chromium/base/allocator/allocator_check.cc -@@ -27,7 +27,7 @@ bool IsAllocatorInitialized() { - // Set by allocator_shim_override_ucrt_symbols_win.h when the - // shimmed _set_new_mode() is called. - return g_is_win_shim_layer_initialized; --#elif defined(OS_LINUX) && BUILDFLAG(USE_TCMALLOC) && \ -+#elif defined(__GLIBC__) && BUILDFLAG(USE_TCMALLOC) && \ - !defined(MEMORY_TOOL_REPLACES_ALLOCATOR) - // From third_party/tcmalloc/chromium/src/gperftools/tcmalloc.h. - // TODO(primiano): replace with an include once base can depend on allocator. diff --git a/recipes-qt/qt5/qtwebengine/chromium/0018-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch b/recipes-qt/qt5/qtwebengine/chromium/0018-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch deleted file mode 100644 index 15e38eb0..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0018-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch +++ /dev/null @@ -1,24 +0,0 @@ -From c799e56ed6c073782c9215aa7d9302003b61a395 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 15:09:02 -0700 -Subject: [PATCH] chromium: musl: allocator: Do not include glibc_weak_symbols - for musl - -Signed-off-by: Khem Raj ---- - chromium/base/allocator/allocator_shim.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/chromium/base/allocator/allocator_shim.cc b/chromium/base/allocator/allocator_shim.cc -index ef42d5ad67f..626e4c996a5 100644 ---- a/chromium/base/allocator/allocator_shim.cc -+++ b/chromium/base/allocator/allocator_shim.cc -@@ -352,7 +352,7 @@ ALWAYS_INLINE void ShimAlignedFree(void* address, void* context) { - // In the case of tcmalloc we also want to plumb into the glibc hooks - // to avoid that allocations made in glibc itself (e.g., strdup()) get - // accidentally performed on the glibc heap instead of the tcmalloc one. --#if BUILDFLAG(USE_TCMALLOC) -+#if BUILDFLAG(USE_TCMALLOC) && defined(__GLIBC__) - #include "base/allocator/allocator_shim_override_glibc_weak_symbols.h" - #endif - diff --git a/recipes-qt/qt5/qtwebengine/chromium/0018-chromium-musl-include-fcntl.h-for-loff_t.patch b/recipes-qt/qt5/qtwebengine/chromium/0018-chromium-musl-include-fcntl.h-for-loff_t.patch new file mode 100644 index 00000000..869ac113 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0018-chromium-musl-include-fcntl.h-for-loff_t.patch @@ -0,0 +1,22 @@ +From d1d6bd4260eb847c1493a8ce4a974bb8d8ee0218 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:37:49 -0700 +Subject: [PATCH] chromium: musl: include fcntl.h for loff_t + +Signed-off-by: Khem Raj +--- + .../tcmalloc/chromium/src/base/linux_syscall_support.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/chromium/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h b/chromium/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +index ca5936d6e63..5484dbadfbd 100644 +--- a/chromium/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h ++++ b/chromium/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +@@ -154,6 +154,7 @@ extern "C" { + #include + #include + #include ++#include + #include + #include + #include diff --git a/recipes-qt/qt5/qtwebengine/chromium/0019-chromium-musl-Use-correct-member-name-__si_fields-fr.patch b/recipes-qt/qt5/qtwebengine/chromium/0019-chromium-musl-Use-correct-member-name-__si_fields-fr.patch deleted file mode 100644 index b13532d3..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0019-chromium-musl-Use-correct-member-name-__si_fields-fr.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 06dcf80d09523fc075edc157231b33da63b3f37e Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 15:12:39 -0700 -Subject: [PATCH] chromium: musl: Use correct member name __si_fields from - LinuxSigInfo - -Signed-off-by: Khem Raj ---- - chromium/sandbox/linux/seccomp-bpf/trap.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/chromium/sandbox/linux/seccomp-bpf/trap.cc b/chromium/sandbox/linux/seccomp-bpf/trap.cc -index 003708d2c89..0fef3148f9d 100644 ---- a/chromium/sandbox/linux/seccomp-bpf/trap.cc -+++ b/chromium/sandbox/linux/seccomp-bpf/trap.cc -@@ -168,7 +168,7 @@ void Trap::SigSys(int nr, LinuxSigInfo* info, ucontext_t* ctx) { - // most versions of glibc don't include this information in siginfo_t. So, - // we need to explicitly copy it into a arch_sigsys structure. - struct arch_sigsys sigsys; -- memcpy(&sigsys, &info->_sifields, sizeof(sigsys)); -+ memcpy(&sigsys, &info->__si_fields, sizeof(sigsys)); - - #if defined(__mips__) - // When indirect syscall (syscall(__NR_foo, ...)) is made on Mips, the diff --git a/recipes-qt/qt5/qtwebengine/chromium/0019-chromium-musl-use-off64_t-instead-of-the-internal-__.patch b/recipes-qt/qt5/qtwebengine/chromium/0019-chromium-musl-use-off64_t-instead-of-the-internal-__.patch new file mode 100644 index 00000000..638c7312 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0019-chromium-musl-use-off64_t-instead-of-the-internal-__.patch @@ -0,0 +1,62 @@ +From 7cf2404330f7888f3cc8a25becfe944cc2fc421e Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:38:37 -0700 +Subject: [PATCH] chromium: musl: use off64_t instead of the internal __off64_t + +- only do the glibc 32-bit ABI check for mmap/mmap64 on gnu libc. musl + does not support the 32-bit ABI. + +Signed-off-by: Khem Raj +--- + .../tcmalloc/chromium/src/malloc_hook_mmap_linux.h | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h b/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h +index 17415aaf538..59c1b6fb5f6 100644 +--- a/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h ++++ b/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h +@@ -60,7 +60,7 @@ + + static inline void* do_mmap64(void *start, size_t length, + int prot, int flags, +- int fd, __off64_t offset) __THROW { ++ int fd, off64_t offset) __THROW { + // The original gperftools uses sys_mmap() here. But, it is not allowed by + // Chromium's sandbox. + return (void*)syscall(SYS_mmap, start, length, prot, flags, fd, offset); +@@ -73,7 +73,7 @@ static inline void* do_mmap64(void *start, size_t length, + + static inline void* do_mmap64(void *start, size_t length, + int prot, int flags, +- int fd, __off64_t offset) __THROW { ++ int fd, off64_t offset) __THROW { + void *result; + + // Try mmap2() unless it's not supported +@@ -144,7 +144,7 @@ static inline void* do_mmap64(void *start, size_t length, + + extern "C" { + void* mmap64(void *start, size_t length, int prot, int flags, +- int fd, __off64_t offset ) __THROW ++ int fd, off64_t offset ) __THROW + ATTRIBUTE_SECTION(malloc_hook); + void* mmap(void *start, size_t length,int prot, int flags, + int fd, off_t offset) __THROW +@@ -159,7 +159,7 @@ extern "C" { + } + + extern "C" void* mmap64(void *start, size_t length, int prot, int flags, +- int fd, __off64_t offset) __THROW { ++ int fd, off64_t offset) __THROW { + MallocHook::InvokePreMmapHook(start, length, prot, flags, fd, offset); + void *result; + if (!MallocHook::InvokeMmapReplacement( +@@ -170,7 +170,7 @@ extern "C" void* mmap64(void *start, size_t length, int prot, int flags, + return result; + } + +-# if !defined(__USE_FILE_OFFSET64) || !defined(__REDIRECT_NTH) ++# if defined(__GLIBC__) && (!defined(__USE_FILE_OFFSET64) || !defined(__REDIRECT_NTH)) + + extern "C" void* mmap(void *start, size_t length, int prot, int flags, + int fd, off_t offset) __THROW { diff --git a/recipes-qt/qt5/qtwebengine/chromium/0020-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch b/recipes-qt/qt5/qtwebengine/chromium/0020-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch deleted file mode 100644 index ea2acd56..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0020-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 991b9f17d0743c80340685181095dc8903a57b53 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 15:27:50 -0700 -Subject: [PATCH] chromium: musl: Define res_ninit and res_nclose for non-glibc - platforms - -Signed-off-by: Khem Raj ---- - chromium/net/dns/dns_config_service_posix.cc | 4 +++ - chromium/net/dns/dns_reloader.cc | 4 +++ - chromium/net/dns/resolv_compat.h | 29 ++++++++++++++++++++ - 3 files changed, 37 insertions(+) - create mode 100644 chromium/net/dns/resolv_compat.h - -diff --git a/chromium/net/dns/dns_config_service_posix.cc b/chromium/net/dns/dns_config_service_posix.cc -index 2e0f06b0c1e..aaafef77d79 100644 ---- a/chromium/net/dns/dns_config_service_posix.cc -+++ b/chromium/net/dns/dns_config_service_posix.cc -@@ -29,6 +29,10 @@ - #include "net/dns/public/dns_protocol.h" - #include "net/dns/serial_worker.h" - -+#if defined(OS_LINUX) && !defined(__GLIBC__) -+#include "net/dns/resolv_compat.h" -+#endif -+ - #if defined(OS_MACOSX) && !defined(OS_IOS) - #include "net/dns/dns_config_watcher_mac.h" - #endif -diff --git a/chromium/net/dns/dns_reloader.cc b/chromium/net/dns/dns_reloader.cc -index 1c014a65019..2670a827aa5 100644 ---- a/chromium/net/dns/dns_reloader.cc -+++ b/chromium/net/dns/dns_reloader.cc -@@ -9,6 +9,10 @@ - - #include - -+#if defined(OS_LINUX) && !defined(__GLIBC__) -+#include "net/dns/resolv_compat.h" -+#endif -+ - #include "base/lazy_instance.h" - #include "base/logging.h" - #include "base/macros.h" -diff --git a/chromium/net/dns/resolv_compat.h b/chromium/net/dns/resolv_compat.h -new file mode 100644 -index 00000000000..4f0e852a19d ---- /dev/null -+++ b/chromium/net/dns/resolv_compat.h -@@ -0,0 +1,29 @@ -+#if !defined(__GLIBC__) -+/*************************************************************************** -+ * resolv_compat.h -+ * -+ * Mimick GLIBC's res_ninit() and res_nclose() for musl libc -+ * Note: res_init() is actually deprecated according to -+ * http://docs.oracle.com/cd/E36784_01/html/E36875/res-nclose-3resolv.html -+ **************************************************************************/ -+#include -+ -+static inline int res_ninit(res_state statp) -+{ -+ int rc = res_init(); -+ if (statp != &_res) { -+ memcpy(statp, &_res, sizeof(*statp)); -+ } -+ return rc; -+} -+ -+static inline int res_nclose(res_state statp) -+{ -+ if (!statp) -+ return -1; -+ if (statp != &_res) { -+ memset(statp, 0, sizeof(*statp)); -+ } -+ return 0; -+} -+#endif diff --git a/recipes-qt/qt5/qtwebengine/chromium/0020-chromium-musl-linux-glibc-make-the-distinction.patch b/recipes-qt/qt5/qtwebengine/chromium/0020-chromium-musl-linux-glibc-make-the-distinction.patch new file mode 100644 index 00000000..55939ddd --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0020-chromium-musl-linux-glibc-make-the-distinction.patch @@ -0,0 +1,23 @@ +From 350b57a5cad7c655ccb68a8b4b91e7d32021a1d7 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:54:38 -0700 +Subject: [PATCH] chromium: musl: linux != glibc, make the distinction + +Signed-off-by: Khem Raj +--- + chromium/base/allocator/allocator_check.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/chromium/base/allocator/allocator_check.cc b/chromium/base/allocator/allocator_check.cc +index 5ea77ef2d27..85343a13905 100644 +--- a/chromium/base/allocator/allocator_check.cc ++++ b/chromium/base/allocator/allocator_check.cc +@@ -27,7 +27,7 @@ bool IsAllocatorInitialized() { + // Set by allocator_shim_override_ucrt_symbols_win.h when the + // shimmed _set_new_mode() is called. + return g_is_win_shim_layer_initialized; +-#elif defined(OS_LINUX) && BUILDFLAG(USE_TCMALLOC) && \ ++#elif defined(__GLIBC__) && BUILDFLAG(USE_TCMALLOC) && \ + !defined(MEMORY_TOOL_REPLACES_ALLOCATOR) + // From third_party/tcmalloc/chromium/src/gperftools/tcmalloc.h. + // TODO(primiano): replace with an include once base can depend on allocator. diff --git a/recipes-qt/qt5/qtwebengine/chromium/0021-chromium-musl-Do-not-define-__sbrk-on-musl.patch b/recipes-qt/qt5/qtwebengine/chromium/0021-chromium-musl-Do-not-define-__sbrk-on-musl.patch deleted file mode 100644 index 91b87490..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0021-chromium-musl-Do-not-define-__sbrk-on-musl.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 19969b1ef03bce06fbc8518b4db999a243855c32 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 15:39:57 -0700 -Subject: [PATCH] chromium: musl: Do not define __sbrk on musl - -musl libc does not have sbrk. on musl libc will only work when called with 0 as -argument, so we just let it out for now - -Signed-off-by: Khem Raj ---- - .../third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h b/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h -index 59c1b6fb5f6..10f0786d829 100644 ---- a/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h -+++ b/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h -@@ -213,7 +213,7 @@ extern "C" void* mremap(void* old_addr, size_t old_size, size_t new_size, - return result; - } - --#ifndef __UCLIBC__ -+#if !defined(__UCLIBC__) && defined(__GLIBC__) - // libc's version: - extern "C" void* __sbrk(intptr_t increment); - diff --git a/recipes-qt/qt5/qtwebengine/chromium/0021-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch b/recipes-qt/qt5/qtwebengine/chromium/0021-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch new file mode 100644 index 00000000..37276844 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0021-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch @@ -0,0 +1,24 @@ +From 68decc5d87b4eb013f1455fc4f81f67f926fa3b2 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:09:02 -0700 +Subject: [PATCH] chromium: musl: allocator: Do not include glibc_weak_symbols + for musl + +Signed-off-by: Khem Raj +--- + chromium/base/allocator/allocator_shim.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/chromium/base/allocator/allocator_shim.cc b/chromium/base/allocator/allocator_shim.cc +index ef42d5ad67f..626e4c996a5 100644 +--- a/chromium/base/allocator/allocator_shim.cc ++++ b/chromium/base/allocator/allocator_shim.cc +@@ -352,7 +352,7 @@ ALWAYS_INLINE void ShimAlignedFree(void* address, void* context) { + // In the case of tcmalloc we also want to plumb into the glibc hooks + // to avoid that allocations made in glibc itself (e.g., strdup()) get + // accidentally performed on the glibc heap instead of the tcmalloc one. +-#if BUILDFLAG(USE_TCMALLOC) ++#if BUILDFLAG(USE_TCMALLOC) && defined(__GLIBC__) + #include "base/allocator/allocator_shim_override_glibc_weak_symbols.h" + #endif + diff --git a/recipes-qt/qt5/qtwebengine/chromium/0022-chromium-musl-Adjust-default-pthread-stack-size.patch b/recipes-qt/qt5/qtwebengine/chromium/0022-chromium-musl-Adjust-default-pthread-stack-size.patch deleted file mode 100644 index b0833018..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0022-chromium-musl-Adjust-default-pthread-stack-size.patch +++ /dev/null @@ -1,47 +0,0 @@ -From dd7561980e6669aebae6c1fab1c4653139b6740f Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Jul 2017 16:41:23 -0700 -Subject: [PATCH] chromium: musl: Adjust default pthread stack size - -Signed-off-by: Khem Raj ---- - chromium/base/threading/platform_thread_linux.cc | 3 ++- - .../third_party/blink/renderer/platform/wtf/stack_util.cc | 4 ++-- - 2 files changed, 4 insertions(+), 3 deletions(-) - -diff --git a/chromium/base/threading/platform_thread_linux.cc b/chromium/base/threading/platform_thread_linux.cc -index 095c49b8dc0..d1479b54d48 100644 ---- a/chromium/base/threading/platform_thread_linux.cc -+++ b/chromium/base/threading/platform_thread_linux.cc -@@ -186,7 +186,8 @@ void TerminateOnThread() {} - - size_t GetDefaultThreadStackSize(const pthread_attr_t& attributes) { - #if !defined(THREAD_SANITIZER) -- return 0; -+ // use 8mb like glibc to avoid running out of space -+ return (1 << 23); - #else - // ThreadSanitizer bloats the stack heavily. Evidence has been that the - // default stack size isn't enough for some browser tests. -diff --git a/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc b/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc -index b2421649ff3..a31b96e90e6 100644 ---- a/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc -+++ b/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc -@@ -29,7 +29,7 @@ size_t GetUnderestimatedStackSize() { - // FIXME: On Mac OSX and Linux, this method cannot estimate stack size - // correctly for the main thread. - --#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ -+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ - defined(OS_FUCHSIA) - // pthread_getattr_np() can fail if the thread is not invoked by - // pthread_create() (e.g., the main thread of blink_unittests). -@@ -97,7 +97,7 @@ return Threading::ThreadStackSize(); - } - - void* GetStackStart() { --#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ -+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ - defined(OS_FUCHSIA) - pthread_attr_t attr; - int error; diff --git a/recipes-qt/qt5/qtwebengine/chromium/0022-chromium-musl-Use-correct-member-name-__si_fields-fr.patch b/recipes-qt/qt5/qtwebengine/chromium/0022-chromium-musl-Use-correct-member-name-__si_fields-fr.patch new file mode 100644 index 00000000..2da3e09d --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0022-chromium-musl-Use-correct-member-name-__si_fields-fr.patch @@ -0,0 +1,24 @@ +From 1902fc967d6f900a4e918e56f21bc856a0462e4c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:12:39 -0700 +Subject: [PATCH] chromium: musl: Use correct member name __si_fields from + LinuxSigInfo + +Signed-off-by: Khem Raj +--- + chromium/sandbox/linux/seccomp-bpf/trap.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/chromium/sandbox/linux/seccomp-bpf/trap.cc b/chromium/sandbox/linux/seccomp-bpf/trap.cc +index 003708d2c89..0fef3148f9d 100644 +--- a/chromium/sandbox/linux/seccomp-bpf/trap.cc ++++ b/chromium/sandbox/linux/seccomp-bpf/trap.cc +@@ -168,7 +168,7 @@ void Trap::SigSys(int nr, LinuxSigInfo* info, ucontext_t* ctx) { + // most versions of glibc don't include this information in siginfo_t. So, + // we need to explicitly copy it into a arch_sigsys structure. + struct arch_sigsys sigsys; +- memcpy(&sigsys, &info->_sifields, sizeof(sigsys)); ++ memcpy(&sigsys, &info->__si_fields, sizeof(sigsys)); + + #if defined(__mips__) + // When indirect syscall (syscall(__NR_foo, ...)) is made on Mips, the diff --git a/recipes-qt/qt5/qtwebengine/chromium/0023-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch b/recipes-qt/qt5/qtwebengine/chromium/0023-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch new file mode 100644 index 00000000..aea690d9 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0023-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch @@ -0,0 +1,79 @@ +From fea443adcea6e081cfee94a19c75e7b0516e1bce Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:27:50 -0700 +Subject: [PATCH] chromium: musl: Define res_ninit and res_nclose for non-glibc + platforms + +Signed-off-by: Khem Raj +--- + chromium/net/dns/dns_config_service_posix.cc | 4 +++ + chromium/net/dns/dns_reloader.cc | 4 +++ + chromium/net/dns/resolv_compat.h | 29 ++++++++++++++++++++ + 3 files changed, 37 insertions(+) + create mode 100644 chromium/net/dns/resolv_compat.h + +diff --git a/chromium/net/dns/dns_config_service_posix.cc b/chromium/net/dns/dns_config_service_posix.cc +index 2e0f06b0c1e..aaafef77d79 100644 +--- a/chromium/net/dns/dns_config_service_posix.cc ++++ b/chromium/net/dns/dns_config_service_posix.cc +@@ -29,6 +29,10 @@ + #include "net/dns/public/dns_protocol.h" + #include "net/dns/serial_worker.h" + ++#if defined(OS_LINUX) && !defined(__GLIBC__) ++#include "net/dns/resolv_compat.h" ++#endif ++ + #if defined(OS_MACOSX) && !defined(OS_IOS) + #include "net/dns/dns_config_watcher_mac.h" + #endif +diff --git a/chromium/net/dns/dns_reloader.cc b/chromium/net/dns/dns_reloader.cc +index 1c014a65019..2670a827aa5 100644 +--- a/chromium/net/dns/dns_reloader.cc ++++ b/chromium/net/dns/dns_reloader.cc +@@ -9,6 +9,10 @@ + + #include + ++#if defined(OS_LINUX) && !defined(__GLIBC__) ++#include "net/dns/resolv_compat.h" ++#endif ++ + #include "base/lazy_instance.h" + #include "base/logging.h" + #include "base/macros.h" +diff --git a/chromium/net/dns/resolv_compat.h b/chromium/net/dns/resolv_compat.h +new file mode 100644 +index 00000000000..4f0e852a19d +--- /dev/null ++++ b/chromium/net/dns/resolv_compat.h +@@ -0,0 +1,29 @@ ++#if !defined(__GLIBC__) ++/*************************************************************************** ++ * resolv_compat.h ++ * ++ * Mimick GLIBC's res_ninit() and res_nclose() for musl libc ++ * Note: res_init() is actually deprecated according to ++ * http://docs.oracle.com/cd/E36784_01/html/E36875/res-nclose-3resolv.html ++ **************************************************************************/ ++#include ++ ++static inline int res_ninit(res_state statp) ++{ ++ int rc = res_init(); ++ if (statp != &_res) { ++ memcpy(statp, &_res, sizeof(*statp)); ++ } ++ return rc; ++} ++ ++static inline int res_nclose(res_state statp) ++{ ++ if (!statp) ++ return -1; ++ if (statp != &_res) { ++ memset(statp, 0, sizeof(*statp)); ++ } ++ return 0; ++} ++#endif diff --git a/recipes-qt/qt5/qtwebengine/chromium/0023-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch b/recipes-qt/qt5/qtwebengine/chromium/0023-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch deleted file mode 100644 index d71a0926..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0023-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 2150bb364442a2a352fff1f915c387f4dc37bdef Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 25 Sep 2018 12:35:07 -0700 -Subject: [PATCH] chromium: musl: Use _fpstate instead of _libc_fpstate on - linux - -glibc defines both. musl libc only the former. - -Signed-off-by: Khem Raj ---- - .../src/client/linux/dump_writer_common/ucontext_reader.cc | 4 ++-- - .../src/client/linux/dump_writer_common/ucontext_reader.h | 2 +- - .../src/client/linux/minidump_writer/minidump_writer.h | 2 +- - 3 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc b/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc -index 6ee6cc1e4cd..a8f9ccc72ac 100644 ---- a/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc -+++ b/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc -@@ -49,7 +49,7 @@ uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - } - - void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, -- const struct _libc_fpstate* fp) { -+ const struct _fpstate* fp) { - const greg_t* regs = uc->uc_mcontext.gregs; - - out->context_flags = MD_CONTEXT_X86_FULL | -@@ -97,7 +97,7 @@ uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - } - - void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, -- const struct _libc_fpstate* fpregs) { -+ const struct _fpstate* fpregs) { - const greg_t* regs = uc->uc_mcontext.gregs; - - out->context_flags = MD_CONTEXT_AMD64_FULL; -diff --git a/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h b/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h -index f830618f240..f3dde1f4dff 100644 ---- a/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h -+++ b/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h -@@ -50,7 +50,7 @@ struct UContextReader { - // info: the collection of register structures. - #if defined(__i386__) || defined(__x86_64) - static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, -- const struct _libc_fpstate* fp); -+ const struct _fpstate* fp); - #elif defined(__aarch64__) - static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs); -diff --git a/chromium/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h b/chromium/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h -index d1dc331215a..d1cc5624cd4 100644 ---- a/chromium/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h -+++ b/chromium/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h -@@ -48,7 +48,7 @@ class ExceptionHandler; - #if defined(__aarch64__) - typedef struct fpsimd_context fpstate_t; - #elif !defined(__ARM_EABI__) && !defined(__mips__) --typedef struct _libc_fpstate fpstate_t; -+typedef struct _fpstate fpstate_t; - #endif - - // These entries store a list of memory regions that the client wants included diff --git a/recipes-qt/qt5/qtwebengine/chromium/0024-chromium-musl-Do-not-define-__sbrk-on-musl.patch b/recipes-qt/qt5/qtwebengine/chromium/0024-chromium-musl-Do-not-define-__sbrk-on-musl.patch new file mode 100644 index 00000000..cd1059e3 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0024-chromium-musl-Do-not-define-__sbrk-on-musl.patch @@ -0,0 +1,26 @@ +From 64e79d346a2038b976f5bafe2b0b2032b1628229 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:39:57 -0700 +Subject: [PATCH] chromium: musl: Do not define __sbrk on musl + +musl libc does not have sbrk. on musl libc will only work when called with 0 as +argument, so we just let it out for now + +Signed-off-by: Khem Raj +--- + .../third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h b/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h +index 59c1b6fb5f6..10f0786d829 100644 +--- a/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h ++++ b/chromium/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h +@@ -213,7 +213,7 @@ extern "C" void* mremap(void* old_addr, size_t old_size, size_t new_size, + return result; + } + +-#ifndef __UCLIBC__ ++#if !defined(__UCLIBC__) && defined(__GLIBC__) + // libc's version: + extern "C" void* __sbrk(intptr_t increment); + diff --git a/recipes-qt/qt5/qtwebengine/chromium/0024-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch b/recipes-qt/qt5/qtwebengine/chromium/0024-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch deleted file mode 100644 index b829057e..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0024-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch +++ /dev/null @@ -1,56 +0,0 @@ -From f3f26710c365425453d7f8577fc6437f03b89a5c Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 25 Sep 2018 12:59:05 -0700 -Subject: [PATCH] chromium: musl: elf_reader.cc: include to get - __WORDSIZE on musl libc - -Signed-off-by: Khem Raj -Signed-off-by: Martin Jansa ---- - chromium/third_party/breakpad/breakpad/configure.ac | 2 +- - .../breakpad/breakpad/src/common/dwarf/elf_reader.cc | 3 ++- - .../breakpad/breakpad/src/common/linux/elf_core_dump.h | 1 + - 3 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/chromium/third_party/breakpad/breakpad/configure.ac b/chromium/third_party/breakpad/breakpad/configure.ac -index 492d09038f9..a6403ed8c3c 100644 ---- a/chromium/third_party/breakpad/breakpad/configure.ac -+++ b/chromium/third_party/breakpad/breakpad/configure.ac -@@ -72,7 +72,7 @@ AC_ARG_ENABLE(m32, - AC_HEADER_STDC - AC_SYS_LARGEFILE - AX_PTHREAD --AC_CHECK_HEADERS([a.out.h sys/random.h]) -+AC_CHECK_HEADERS([a.out.h sys/random.h sys/reg.h]) - AC_CHECK_FUNCS([arc4random getrandom]) - - AX_CXX_COMPILE_STDCXX(11, noext, mandatory) -diff --git a/chromium/third_party/breakpad/breakpad/src/common/dwarf/elf_reader.cc b/chromium/third_party/breakpad/breakpad/src/common/dwarf/elf_reader.cc -index 4135a51a980..be92b792d3c 100644 ---- a/chromium/third_party/breakpad/breakpad/src/common/dwarf/elf_reader.cc -+++ b/chromium/third_party/breakpad/breakpad/src/common/dwarf/elf_reader.cc -@@ -29,10 +29,11 @@ - #ifndef _GNU_SOURCE - #define _GNU_SOURCE // needed for pread() - #endif -- -+#include - #include - #include - #include -+#include - #include - #include - #include -diff --git a/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h b/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h -index d03c7a88d38..28b55ab6300 100644 ---- a/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h -+++ b/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h -@@ -33,6 +33,7 @@ - #ifndef COMMON_LINUX_ELF_CORE_DUMP_H_ - #define COMMON_LINUX_ELF_CORE_DUMP_H_ - -+#include - #include - #include - #include diff --git a/recipes-qt/qt5/qtwebengine/chromium/0025-chromium-musl-Adjust-default-pthread-stack-size.patch b/recipes-qt/qt5/qtwebengine/chromium/0025-chromium-musl-Adjust-default-pthread-stack-size.patch new file mode 100644 index 00000000..04bf89e4 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0025-chromium-musl-Adjust-default-pthread-stack-size.patch @@ -0,0 +1,47 @@ +From cecdf34d89110115948cfde44c04a43c9925b24a Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 16:41:23 -0700 +Subject: [PATCH] chromium: musl: Adjust default pthread stack size + +Signed-off-by: Khem Raj +--- + chromium/base/threading/platform_thread_linux.cc | 3 ++- + .../third_party/blink/renderer/platform/wtf/stack_util.cc | 4 ++-- + 2 files changed, 4 insertions(+), 3 deletions(-) + +diff --git a/chromium/base/threading/platform_thread_linux.cc b/chromium/base/threading/platform_thread_linux.cc +index 095c49b8dc0..d1479b54d48 100644 +--- a/chromium/base/threading/platform_thread_linux.cc ++++ b/chromium/base/threading/platform_thread_linux.cc +@@ -186,7 +186,8 @@ void TerminateOnThread() {} + + size_t GetDefaultThreadStackSize(const pthread_attr_t& attributes) { + #if !defined(THREAD_SANITIZER) +- return 0; ++ // use 8mb like glibc to avoid running out of space ++ return (1 << 23); + #else + // ThreadSanitizer bloats the stack heavily. Evidence has been that the + // default stack size isn't enough for some browser tests. +diff --git a/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc b/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc +index b2421649ff3..a31b96e90e6 100644 +--- a/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc ++++ b/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc +@@ -29,7 +29,7 @@ size_t GetUnderestimatedStackSize() { + // FIXME: On Mac OSX and Linux, this method cannot estimate stack size + // correctly for the main thread. + +-#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ ++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ + defined(OS_FUCHSIA) + // pthread_getattr_np() can fail if the thread is not invoked by + // pthread_create() (e.g., the main thread of blink_unittests). +@@ -97,7 +97,7 @@ return Threading::ThreadStackSize(); + } + + void* GetStackStart() { +-#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ ++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \ + defined(OS_FUCHSIA) + pthread_attr_t attr; + int error; diff --git a/recipes-qt/qt5/qtwebengine/chromium/0025-chromium-musl-pread-pwrite.patch b/recipes-qt/qt5/qtwebengine/chromium/0025-chromium-musl-pread-pwrite.patch deleted file mode 100644 index e7ba75f0..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0025-chromium-musl-pread-pwrite.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 3c26038e4588bd73d92d5fbd4bd8c2c9a520ea8d Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sun, 23 Dec 2018 16:58:04 -0800 -Subject: [PATCH] chromium: musl: pread pwrite - -Redefine pread/pwrite in terms of 64bit variants on musl -since 32bit variants don't exist and aliases are not defined in -libc either - -Upstream-Status: Submitted [https://codereview.chromium.org/1743093002/] -Signed-off-by: Khem Raj ---- - chromium/third_party/lss/linux_syscall_support.h | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/chromium/third_party/lss/linux_syscall_support.h b/chromium/third_party/lss/linux_syscall_support.h -index d2bd9df4d40..88ea7f508aa 100644 ---- a/chromium/third_party/lss/linux_syscall_support.h -+++ b/chromium/third_party/lss/linux_syscall_support.h -@@ -1239,6 +1239,11 @@ struct kernel_statfs { - #ifndef __NR_fallocate - #define __NR_fallocate 285 - #endif -+#undef __NR_pread -+#define __NR_pread __NR_pread64 -+#undef __NR_pwrite -+#define __NR_pwrite __NR_pwrite64 -+ - /* End of x86-64 definitions */ - #elif defined(__mips__) - #if _MIPS_SIM == _MIPS_SIM_ABI32 diff --git a/recipes-qt/qt5/qtwebengine/chromium/0026-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch b/recipes-qt/qt5/qtwebengine/chromium/0026-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch new file mode 100644 index 00000000..07a1e3d6 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0026-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch @@ -0,0 +1,63 @@ +From ae4187267b4d0d2ff13a6593b69ca06cee321eea Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 25 Sep 2018 12:35:07 -0700 +Subject: [PATCH] chromium: musl: Use _fpstate instead of _libc_fpstate on + linux + +glibc defines both. musl libc only the former. + +Signed-off-by: Khem Raj +--- + .../src/client/linux/dump_writer_common/ucontext_reader.cc | 4 ++-- + .../src/client/linux/dump_writer_common/ucontext_reader.h | 2 +- + .../src/client/linux/minidump_writer/minidump_writer.h | 2 +- + 3 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc b/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc +index 6ee6cc1e4cd..a8f9ccc72ac 100644 +--- a/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc ++++ b/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc +@@ -49,7 +49,7 @@ uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { + } + + void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, +- const struct _libc_fpstate* fp) { ++ const struct _fpstate* fp) { + const greg_t* regs = uc->uc_mcontext.gregs; + + out->context_flags = MD_CONTEXT_X86_FULL | +@@ -97,7 +97,7 @@ uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { + } + + void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, +- const struct _libc_fpstate* fpregs) { ++ const struct _fpstate* fpregs) { + const greg_t* regs = uc->uc_mcontext.gregs; + + out->context_flags = MD_CONTEXT_AMD64_FULL; +diff --git a/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h b/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h +index f830618f240..f3dde1f4dff 100644 +--- a/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h ++++ b/chromium/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h +@@ -50,7 +50,7 @@ struct UContextReader { + // info: the collection of register structures. + #if defined(__i386__) || defined(__x86_64) + static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, +- const struct _libc_fpstate* fp); ++ const struct _fpstate* fp); + #elif defined(__aarch64__) + static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, + const struct fpsimd_context* fpregs); +diff --git a/chromium/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h b/chromium/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h +index d1dc331215a..d1cc5624cd4 100644 +--- a/chromium/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h ++++ b/chromium/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h +@@ -48,7 +48,7 @@ class ExceptionHandler; + #if defined(__aarch64__) + typedef struct fpsimd_context fpstate_t; + #elif !defined(__ARM_EABI__) && !defined(__mips__) +-typedef struct _libc_fpstate fpstate_t; ++typedef struct _fpstate fpstate_t; + #endif + + // These entries store a list of memory regions that the client wants included diff --git a/recipes-qt/qt5/qtwebengine/chromium/0026-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch b/recipes-qt/qt5/qtwebengine/chromium/0026-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch deleted file mode 100644 index d316929c..00000000 --- a/recipes-qt/qt5/qtwebengine/chromium/0026-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch +++ /dev/null @@ -1,45 +0,0 @@ -From f0cb2c411e58217b694f9bdf9d34cbc56bd0d785 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sun, 10 May 2020 08:16:01 -0700 -Subject: [PATCH] chromium: musl: initialize msghdr in a compatible manner - -initialize msghdr in a compatible manner - -msghdr stuct from socket.h is not same between musl and glibc -where musl claims to be more posix compliant where as glibc seems -to fill whats needed for linux sizewise and chooses long enough types -which maybe questionable, therefore constructing a structure with explicit -constructor is not going to work correctly for musl and glibc at same time - -see -https://git.musl-libc.org/cgit/musl/commit/arch/x86_64/bits/socket.h?id=7168790763cdeb794df52be6e3b39fbb021c5a64 - -This fix initialized the struct to 0 first and then sets the struct elements -by name, so we dont have to hard code the positions of elements when initializing -structure - -Upstream-Status: Pending -Signed-off-by: Khem Raj ---- - chromium/net/socket/udp_socket_posix.cc | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/chromium/net/socket/udp_socket_posix.cc b/chromium/net/socket/udp_socket_posix.cc -index 572472a6993..504fdb5d5c6 100644 ---- a/chromium/net/socket/udp_socket_posix.cc -+++ b/chromium/net/socket/udp_socket_posix.cc -@@ -1190,8 +1190,12 @@ SendResult UDPSocketPosixSender::InternalSendmmsgBuffers( - for (auto& buffer : buffers) - msg_iov->push_back({const_cast(buffer->data()), buffer->length()}); - msgvec->reserve(buffers.size()); -- for (size_t j = 0; j < buffers.size(); j++) -- msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, nullptr, 0, 0}, 0}); -+ for (size_t j = 0; j < buffers.size(); j++) { -+ struct msghdr m = {0}; -+ m.msg_iov = &msg_iov[j]; -+ m.msg_iovlen = 1; -+ msgvec->push_back({m, 0}); -+ } - int result = HANDLE_EINTR(Sendmmsg(fd, &msgvec[0], buffers.size(), 0)); - SendResult send_result(0, 0, std::move(buffers)); - if (result < 0) { diff --git a/recipes-qt/qt5/qtwebengine/chromium/0027-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch b/recipes-qt/qt5/qtwebengine/chromium/0027-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch new file mode 100644 index 00000000..63f93873 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0027-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch @@ -0,0 +1,56 @@ +From f12f5d2dc91548ca77b296a0be3705aacc9fca33 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 25 Sep 2018 12:59:05 -0700 +Subject: [PATCH] chromium: musl: elf_reader.cc: include to get + __WORDSIZE on musl libc + +Signed-off-by: Khem Raj +Signed-off-by: Martin Jansa +--- + chromium/third_party/breakpad/breakpad/configure.ac | 2 +- + .../breakpad/breakpad/src/common/dwarf/elf_reader.cc | 3 ++- + .../breakpad/breakpad/src/common/linux/elf_core_dump.h | 1 + + 3 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/chromium/third_party/breakpad/breakpad/configure.ac b/chromium/third_party/breakpad/breakpad/configure.ac +index 492d09038f9..a6403ed8c3c 100644 +--- a/chromium/third_party/breakpad/breakpad/configure.ac ++++ b/chromium/third_party/breakpad/breakpad/configure.ac +@@ -72,7 +72,7 @@ AC_ARG_ENABLE(m32, + AC_HEADER_STDC + AC_SYS_LARGEFILE + AX_PTHREAD +-AC_CHECK_HEADERS([a.out.h sys/random.h]) ++AC_CHECK_HEADERS([a.out.h sys/random.h sys/reg.h]) + AC_CHECK_FUNCS([arc4random getrandom]) + + AX_CXX_COMPILE_STDCXX(11, noext, mandatory) +diff --git a/chromium/third_party/breakpad/breakpad/src/common/dwarf/elf_reader.cc b/chromium/third_party/breakpad/breakpad/src/common/dwarf/elf_reader.cc +index 4135a51a980..be92b792d3c 100644 +--- a/chromium/third_party/breakpad/breakpad/src/common/dwarf/elf_reader.cc ++++ b/chromium/third_party/breakpad/breakpad/src/common/dwarf/elf_reader.cc +@@ -29,10 +29,11 @@ + #ifndef _GNU_SOURCE + #define _GNU_SOURCE // needed for pread() + #endif +- ++#include + #include + #include + #include ++#include + #include + #include + #include +diff --git a/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h b/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h +index d03c7a88d38..28b55ab6300 100644 +--- a/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h ++++ b/chromium/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h +@@ -33,6 +33,7 @@ + #ifndef COMMON_LINUX_ELF_CORE_DUMP_H_ + #define COMMON_LINUX_ELF_CORE_DUMP_H_ + ++#include + #include + #include + #include diff --git a/recipes-qt/qt5/qtwebengine/chromium/0028-chromium-musl-pread-pwrite.patch b/recipes-qt/qt5/qtwebengine/chromium/0028-chromium-musl-pread-pwrite.patch new file mode 100644 index 00000000..e6fa0887 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0028-chromium-musl-pread-pwrite.patch @@ -0,0 +1,31 @@ +From 3269ffba733ed7eeb7c2c36912dd19ca1ef35f8b Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sun, 23 Dec 2018 16:58:04 -0800 +Subject: [PATCH] chromium: musl: pread pwrite + +Redefine pread/pwrite in terms of 64bit variants on musl +since 32bit variants don't exist and aliases are not defined in +libc either + +Upstream-Status: Submitted [https://codereview.chromium.org/1743093002/] +Signed-off-by: Khem Raj +--- + chromium/third_party/lss/linux_syscall_support.h | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/chromium/third_party/lss/linux_syscall_support.h b/chromium/third_party/lss/linux_syscall_support.h +index d2bd9df4d40..88ea7f508aa 100644 +--- a/chromium/third_party/lss/linux_syscall_support.h ++++ b/chromium/third_party/lss/linux_syscall_support.h +@@ -1239,6 +1239,11 @@ struct kernel_statfs { + #ifndef __NR_fallocate + #define __NR_fallocate 285 + #endif ++#undef __NR_pread ++#define __NR_pread __NR_pread64 ++#undef __NR_pwrite ++#define __NR_pwrite __NR_pwrite64 ++ + /* End of x86-64 definitions */ + #elif defined(__mips__) + #if _MIPS_SIM == _MIPS_SIM_ABI32 diff --git a/recipes-qt/qt5/qtwebengine/chromium/0029-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch b/recipes-qt/qt5/qtwebengine/chromium/0029-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch new file mode 100644 index 00000000..8db39395 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/chromium/0029-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch @@ -0,0 +1,45 @@ +From 0b04cbd5b93908bad4dfc6d829048fe90a09b868 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sun, 10 May 2020 08:16:01 -0700 +Subject: [PATCH] chromium: musl: initialize msghdr in a compatible manner + +initialize msghdr in a compatible manner + +msghdr stuct from socket.h is not same between musl and glibc +where musl claims to be more posix compliant where as glibc seems +to fill whats needed for linux sizewise and chooses long enough types +which maybe questionable, therefore constructing a structure with explicit +constructor is not going to work correctly for musl and glibc at same time + +see +https://git.musl-libc.org/cgit/musl/commit/arch/x86_64/bits/socket.h?id=7168790763cdeb794df52be6e3b39fbb021c5a64 + +This fix initialized the struct to 0 first and then sets the struct elements +by name, so we dont have to hard code the positions of elements when initializing +structure + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + chromium/net/socket/udp_socket_posix.cc | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/chromium/net/socket/udp_socket_posix.cc b/chromium/net/socket/udp_socket_posix.cc +index 572472a6993..504fdb5d5c6 100644 +--- a/chromium/net/socket/udp_socket_posix.cc ++++ b/chromium/net/socket/udp_socket_posix.cc +@@ -1190,8 +1190,12 @@ SendResult UDPSocketPosixSender::InternalSendmmsgBuffers( + for (auto& buffer : buffers) + msg_iov->push_back({const_cast(buffer->data()), buffer->length()}); + msgvec->reserve(buffers.size()); +- for (size_t j = 0; j < buffers.size(); j++) +- msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, nullptr, 0, 0}, 0}); ++ for (size_t j = 0; j < buffers.size(); j++) { ++ struct msghdr m = {0}; ++ m.msg_iov = &msg_iov[j]; ++ m.msg_iovlen = 1; ++ msgvec->push_back({m, 0}); ++ } + int result = HANDLE_EINTR(Sendmmsg(fd, &msgvec[0], buffers.size(), 0)); + SendResult send_result(0, 0, std::move(buffers)); + if (result < 0) { diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb index d333ac08..6d6318b0 100644 --- a/recipes-qt/qt5/qtwebengine_git.bb +++ b/recipes-qt/qt5/qtwebengine_git.bb @@ -144,21 +144,22 @@ RDEPENDS_${PN}-examples += " \ QT_MODULE_BRANCH_CHROMIUM = "80-based" -# Patches from https://github.com/meta-qt5/qtwebengine/commits/b5.15 -# 5.15.meta-qt5.7 +# Patches from https://github.com/meta-qt5/qtwebengine/commits/b5.15-glibc +# 5.15-glibc.meta-qt5.8 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://0005-icu-use-system-library-only-targets.patch \ " +# Patches from https://github.com/meta-qt5/qtwebengine/commits/b5.15 +# 5.15-glibc.meta-qt5.8 SRC_URI_append_libc-musl = "\ file://0002-musl-don-t-use-pvalloc-as-it-s-not-available-on-musl.patch \ file://0003-musl-link-against-libexecinfo.patch \ file://0004-mkspecs-Allow-builds-with-libc-glibc.patch \ " -# Patches from https://github.com/meta-qt5/qtwebengine-chromium/commits/80-based -# 80-based.meta-qt5.3 +# Patches from https://github.com/meta-qt5/qtwebengine-chromium/commits/80-based-glibc +# 80-based-glibc.meta-qt5.4 SRC_URI += " \ file://chromium/0001-chromium-workaround-for-too-long-.rps-file-name.patch;patchdir=src/3rdparty \ file://chromium/0002-chromium-stack-pointer-clobber.patch;patchdir=src/3rdparty \ @@ -173,24 +174,27 @@ SRC_URI += " \ file://chromium/0011-chromium-Include-cstddef-and-cstdint.patch;patchdir=src/3rdparty \ file://chromium/0012-chromium-Link-v8-with-libatomic-on-x86.patch;patchdir=src/3rdparty \ file://chromium/0013-chromium-Fix-bison-3.7.patch;patchdir=src/3rdparty \ - file://chromium/0014-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch;patchdir=src/3rdparty/chromium \ + file://chromium/0014-chromium-icu-use-system-library-only-targets.patch;patchdir=src/3rdparty \ + file://chromium/0015-chromium-Fix-sandbox-Aw-snap-for-syscalls-403-and-40.patch;patchdir=src/3rdparty \ " +# Patches from https://github.com/meta-qt5/qtwebengine-chromium/commits/80-based +# 80-based.meta-qt5.4 SRC_URI_append_libc-musl = "\ - file://chromium/0013-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch;patchdir=src/3rdparty \ - file://chromium/0014-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch;patchdir=src/3rdparty \ - file://chromium/0015-chromium-musl-include-fcntl.h-for-loff_t.patch;patchdir=src/3rdparty \ - file://chromium/0016-chromium-musl-use-off64_t-instead-of-the-internal-__.patch;patchdir=src/3rdparty \ - file://chromium/0017-chromium-musl-linux-glibc-make-the-distinction.patch;patchdir=src/3rdparty \ - file://chromium/0018-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch;patchdir=src/3rdparty \ - file://chromium/0019-chromium-musl-Use-correct-member-name-__si_fields-fr.patch;patchdir=src/3rdparty \ - file://chromium/0020-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch;patchdir=src/3rdparty \ - file://chromium/0021-chromium-musl-Do-not-define-__sbrk-on-musl.patch;patchdir=src/3rdparty \ - file://chromium/0022-chromium-musl-Adjust-default-pthread-stack-size.patch;patchdir=src/3rdparty \ - file://chromium/0023-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch;patchdir=src/3rdparty \ - file://chromium/0024-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch;patchdir=src/3rdparty \ - file://chromium/0025-chromium-musl-pread-pwrite.patch;patchdir=src/3rdparty \ - file://chromium/0026-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch;patchdir=src/3rdparty \ + file://chromium/0016-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch;patchdir=src/3rdparty \ + file://chromium/0017-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch;patchdir=src/3rdparty \ + file://chromium/0018-chromium-musl-include-fcntl.h-for-loff_t.patch;patchdir=src/3rdparty \ + file://chromium/0019-chromium-musl-use-off64_t-instead-of-the-internal-__.patch;patchdir=src/3rdparty \ + file://chromium/0020-chromium-musl-linux-glibc-make-the-distinction.patch;patchdir=src/3rdparty \ + file://chromium/0021-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch;patchdir=src/3rdparty \ + file://chromium/0022-chromium-musl-Use-correct-member-name-__si_fields-fr.patch;patchdir=src/3rdparty \ + file://chromium/0023-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch;patchdir=src/3rdparty \ + file://chromium/0024-chromium-musl-Do-not-define-__sbrk-on-musl.patch;patchdir=src/3rdparty \ + file://chromium/0025-chromium-musl-Adjust-default-pthread-stack-size.patch;patchdir=src/3rdparty \ + file://chromium/0026-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch;patchdir=src/3rdparty \ + file://chromium/0027-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch;patchdir=src/3rdparty \ + file://chromium/0028-chromium-musl-pread-pwrite.patch;patchdir=src/3rdparty \ + file://chromium/0029-chromium-musl-initialize-msghdr-in-a-compatible-mann.patch;patchdir=src/3rdparty \ " SRCREV_qtwebengine = "f5268555099a1a96f8730035a40f04a473dd396e" -- cgit v1.2.3 From b72557515e1993a63d658b47f54d6a1aa68e736b Mon Sep 17 00:00:00 2001 From: Daniel Gomez Date: Fri, 11 Sep 2020 15:29:40 +0200 Subject: python3-pyqt5: Update to dev2008271829 snapshot Old version no longer available: ERROR: python3-pyqt5-5.15.1.dev2008081558-r0 do_fetch: Fetcher failure for URL: 'https://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5-5.15.1.dev2008081558.tar.gz'. Unable to fetch URL from any source. Signed-off-by: Daniel Gomez --- .../pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb | 65 ---------------------- .../pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb | 65 ++++++++++++++++++++++ 2 files changed, 65 insertions(+), 65 deletions(-) delete mode 100644 recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb create mode 100644 recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb deleted file mode 100644 index e224f87a..00000000 --- a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008081558.bb +++ /dev/null @@ -1,65 +0,0 @@ -SUMMARY = "Python Qt5 Bindings" -AUTHOR = "Phil Thomson @ riverbank.co.uk" -HOMEPAGE = "http://riverbankcomputing.co.uk" -SECTION = "devel/python" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "\ - file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ -" - -SRC_URI = "\ - https://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5-${PV}.tar.gz \ -" -SRC_URI[sha256sum] = "6c83e0e82e3f2e65079c7442bd15f09b132ea482bb66ef6c1ece5ca43d97f839" - -S = "${WORKDIR}/PyQt5-${PV}" - -inherit qmake5 -inherit python3native python3-dir - -DEPENDS = "qtbase qtdeclarative qtquickcontrols2" -DEPENDS += "sip3 sip3-native python3" - -export BUILD_SYS -export HOST_SYS -export STAGING_INCDIR -export STAGING_LIBDIR - -PARALLEL_MAKEINST = "" - -DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'PyQt_OpenGL', d)}" - -PYQT_MODULES = "QtCore QtGui QtNetwork QtXml QtNetwork QtQml ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'QtQuick QtWidgets QtQuickWidgets', '', d)}" - -do_configure_prepend() { - cd ${S} - echo "py_platform = linux" > pyqt.cfg - echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg - echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg - echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg - echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg - echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg - echo "qt_shared = True" >> pyqt.cfg - QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` - echo "[Qt $QT_VERSION]" >> pyqt.cfg - echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg - echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} -} - -do_compile() { - cd ${S} - oe_runmake -} - -do_install() { - cd ${S} - oe_runmake MAKEFLAGS='-j 1' install -} - -FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" - -RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs" -RDEPENDS_${PN} += "python3-core python3-sip3" diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb new file mode 100644 index 00000000..aea82c0f --- /dev/null +++ b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb @@ -0,0 +1,65 @@ +SUMMARY = "Python Qt5 Bindings" +AUTHOR = "Phil Thomson @ riverbank.co.uk" +HOMEPAGE = "http://riverbankcomputing.co.uk" +SECTION = "devel/python" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "\ + file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ +" + +SRC_URI = "\ + https://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5-${PV}.tar.gz \ +" +SRC_URI[sha256sum] = "c677f538eb52140d454b158f8916f9949737c6a31397606ddf91f4aa569f6cc4" + +S = "${WORKDIR}/PyQt5-${PV}" + +inherit qmake5 +inherit python3native python3-dir + +DEPENDS = "qtbase qtdeclarative qtquickcontrols2" +DEPENDS += "sip3 sip3-native python3" + +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR + +PARALLEL_MAKEINST = "" + +DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'PyQt_OpenGL', d)}" + +PYQT_MODULES = "QtCore QtGui QtNetwork QtXml QtNetwork QtQml ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'QtQuick QtWidgets QtQuickWidgets', '', d)}" + +do_configure_prepend() { + cd ${S} + echo "py_platform = linux" > pyqt.cfg + echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg + echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg + echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg + echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg + echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg + echo "qt_shared = True" >> pyqt.cfg + QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` + echo "[Qt $QT_VERSION]" >> pyqt.cfg + echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg + echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} +} + +do_compile() { + cd ${S} + oe_runmake +} + +do_install() { + cd ${S} + oe_runmake MAKEFLAGS='-j 1' install +} + +FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" + +RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs" +RDEPENDS_${PN} += "python3-core python3-sip3" -- cgit v1.2.3 From 2f17a26d2f4c50458f5b1b145e4462853369b559 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Tue, 15 Sep 2020 16:10:09 +0200 Subject: python3-pyqt5: upgrade to final 5.15.1 * use the released version from: https://www.riverbankcomputing.com/news/PyQt_v5.15.1_Released because the snapshots are pruned very quickly and were causing many fetch issues as the http://sources.openembedded.org/ is no longer updated from meta-qt5 builds * unfortunately this will sort lower than 5.15.1.dev2008271829 added in: https://github.com/meta-qt5/meta-qt5/commit/1650757f4182435a63985f73e477ed80927f0eac I should have rejected it before, if you care about binary package feeds, then send PE bump Signed-off-by: Martin Jansa --- recipes-python/pyqt5/python3-pyqt5_5.15.1.bb | 63 +++++++++++++++++++++ .../pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb | 65 ---------------------- 2 files changed, 63 insertions(+), 65 deletions(-) create mode 100644 recipes-python/pyqt5/python3-pyqt5_5.15.1.bb delete mode 100644 recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.bb new file mode 100644 index 00000000..3cf2a9b4 --- /dev/null +++ b/recipes-python/pyqt5/python3-pyqt5_5.15.1.bb @@ -0,0 +1,63 @@ +SUMMARY = "Python Qt5 Bindings" +AUTHOR = "Phil Thomson @ riverbank.co.uk" +HOMEPAGE = "http://riverbankcomputing.co.uk" +SECTION = "devel/python" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "\ + file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ +" + +SRC_URI = "https://files.pythonhosted.org/packages/1d/31/896dc3dfb6c81c70164019a6cbba6ab037e3af7653d9ca60ccc874ee4c27/PyQt5-${PV}.tar.gz" +SRC_URI[sha256sum] = "d9a76b850246d08da9863189ecb98f6c2aa9b4d97a3e85e29330a264aed0f9a1" + +S = "${WORKDIR}/PyQt5-${PV}" + +inherit qmake5 +inherit python3native python3-dir + +DEPENDS = "qtbase qtdeclarative qtquickcontrols2" +DEPENDS += "sip3 sip3-native python3" + +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR + +PARALLEL_MAKEINST = "" + +DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'PyQt_OpenGL', d)}" + +PYQT_MODULES = "QtCore QtGui QtNetwork QtXml QtNetwork QtQml ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'QtQuick QtWidgets QtQuickWidgets', '', d)}" + +do_configure_prepend() { + cd ${S} + echo "py_platform = linux" > pyqt.cfg + echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg + echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg + echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg + echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg + echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg + echo "qt_shared = True" >> pyqt.cfg + QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` + echo "[Qt $QT_VERSION]" >> pyqt.cfg + echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg + echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} +} + +do_compile() { + cd ${S} + oe_runmake +} + +do_install() { + cd ${S} + oe_runmake MAKEFLAGS='-j 1' install +} + +FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" + +RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs" +RDEPENDS_${PN} += "python3-core python3-sip3" diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb deleted file mode 100644 index aea82c0f..00000000 --- a/recipes-python/pyqt5/python3-pyqt5_5.15.1.dev2008271829.bb +++ /dev/null @@ -1,65 +0,0 @@ -SUMMARY = "Python Qt5 Bindings" -AUTHOR = "Phil Thomson @ riverbank.co.uk" -HOMEPAGE = "http://riverbankcomputing.co.uk" -SECTION = "devel/python" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "\ - file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ -" - -SRC_URI = "\ - https://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5-${PV}.tar.gz \ -" -SRC_URI[sha256sum] = "c677f538eb52140d454b158f8916f9949737c6a31397606ddf91f4aa569f6cc4" - -S = "${WORKDIR}/PyQt5-${PV}" - -inherit qmake5 -inherit python3native python3-dir - -DEPENDS = "qtbase qtdeclarative qtquickcontrols2" -DEPENDS += "sip3 sip3-native python3" - -export BUILD_SYS -export HOST_SYS -export STAGING_INCDIR -export STAGING_LIBDIR - -PARALLEL_MAKEINST = "" - -DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '', 'PyQt_OpenGL', d)}" - -PYQT_MODULES = "QtCore QtGui QtNetwork QtXml QtNetwork QtQml ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'QtQuick QtWidgets QtQuickWidgets', '', d)}" - -do_configure_prepend() { - cd ${S} - echo "py_platform = linux" > pyqt.cfg - echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg - echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg - echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg - echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg - echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg - echo "qt_shared = True" >> pyqt.cfg - QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` - echo "[Qt $QT_VERSION]" >> pyqt.cfg - echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg - echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} -} - -do_compile() { - cd ${S} - oe_runmake -} - -do_install() { - cd ${S} - oe_runmake MAKEFLAGS='-j 1' install -} - -FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" - -RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs" -RDEPENDS_${PN} += "python3-core python3-sip3" -- cgit v1.2.3 From 0aca81dfd47e3f7b6b24faf90d2419d77838808c Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 9 Oct 2020 15:24:14 +0200 Subject: cinematicexperience: don't use trailing slash in S * see oe-core base.bbclass changes from: https://lists.openembedded.org/g/openembedded-core/message/143159 https://lists.openembedded.org/g/openembedded-core/message/143161 Signed-off-by: Martin Jansa --- recipes-qt/examples/cinematicexperience_1.0.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-qt/examples/cinematicexperience_1.0.bb b/recipes-qt/examples/cinematicexperience_1.0.bb index 9a90f1d4..d7372f61 100644 --- a/recipes-qt/examples/cinematicexperience_1.0.bb +++ b/recipes-qt/examples/cinematicexperience_1.0.bb @@ -10,7 +10,7 @@ SRC_URI += "file://fix_qt5_3_compatibility.patch" SRC_URI[md5sum] = "935a5db0a6b2a72c67236e72f52be7d1" SRC_URI[sha256sum] = "0dd602983ced5f7c0cfd5ad0fbfe2b0b7e3c9ff715e4ef23eef818ccc2b6c60b" -S = "${WORKDIR}/Qt5_CinematicExperience_rpi_${PV}/" +S = "${WORKDIR}/Qt5_CinematicExperience_rpi_${PV}" # other version available for small screens #SRC_URI = "http://quitcoding.com/download/Qt5_CinematicExperience_1.0.tgz" -- cgit v1.2.3 From 26142d60a52d629dc6bbc2f222b6bfc748f62690 Mon Sep 17 00:00:00 2001 From: Daniel Gomez Date: Wed, 16 Sep 2020 12:52:07 +0200 Subject: pyqtchart: Update to version 5.15.1 and use pypi Old version no longer available through riverbankcomputing.com. Update to 5.15.1 and download the package sources using pypi class. Signed-off-by: Daniel Gomez --- .../pyqtchart/python3-pyqtchart_5.13.1.bb | 66 --------------------- .../pyqtchart/python3-pyqtchart_5.15.1.bb | 69 ++++++++++++++++++++++ 2 files changed, 69 insertions(+), 66 deletions(-) delete mode 100644 recipes-python/pyqtchart/python3-pyqtchart_5.13.1.bb create mode 100644 recipes-python/pyqtchart/python3-pyqtchart_5.15.1.bb diff --git a/recipes-python/pyqtchart/python3-pyqtchart_5.13.1.bb b/recipes-python/pyqtchart/python3-pyqtchart_5.13.1.bb deleted file mode 100644 index 04e42beb..00000000 --- a/recipes-python/pyqtchart/python3-pyqtchart_5.13.1.bb +++ /dev/null @@ -1,66 +0,0 @@ -SUMMARY = "Python Qt Chart Bindings" -AUTHOR = "Adrian.Fiergolski@fastree3d.com" -SECTION = "devel/python" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "\ - file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ -" -SRC_URI = "\ - https://www.riverbankcomputing.com/static/Downloads/PyQtChart/${PV}/PyQtChart-${PV}.tar.gz \ -" -SRC_URI[md5sum] = "d5d37bff46b690d6318e5e5f25dd5213" -SRC_URI[sha256sum] = "49960a1483527857b38c1527f9b6328d30bdcc84521f579c0a561a892f54130e" - -S = "${WORKDIR}/PyQtChart-${PV}" - -inherit qmake5 -inherit python3native python3-dir - -DEPENDS = "qtcharts" -DEPENDS += "sip3 sip3-native python3 python3-pyqt5" - -export BUILD_SYS -export HOST_SYS -export STAGING_INCDIR -export STAGING_LIBDIR - -PARALLEL_MAKEINST = "" - -DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager" - -do_configure_prepend() { - cd ${S} - echo "[PyQt 5]" > pyqt.cfg - echo "py_platform = linux" >> pyqt.cfg - echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg - echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg - echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg - echo "py_sip_dir = ${STAGING_EXECPREFIXDIR}/share/sip" >> pyqt.cfg - echo "sip_module = PyQt5.sip" >> pyqt.cfg - echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg - echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} -} - -do_configure_append() { - #Fix installation paths - sed -i -e s:'$(INSTALL_ROOT)'${STAGING_EXECPREFIXDIR}:'$(INSTALL_ROOT)'${D}${exec_prefix}:g ${S}/Makefile - sed -i -e s:'$(INSTALL_ROOT)'${STAGING_EXECPREFIXDIR}:'$(INSTALL_ROOT)'${D}${exec_prefix}:g ${S}/QtChart/Makefile - #Skip installed.txt creation - sed -i -e s:" install_distinfo ":" ": ${S}/Makefile -} - -do_compile() { - cd ${S} - oe_runmake -} - -do_install() { - cd ${S} - oe_runmake MAKEFLAGS='-j 1' install -} - - -FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/" - -RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs qtcharts" -RDEPENDS_${PN} += "python3-core python3-sip3 python3-pyqt5" diff --git a/recipes-python/pyqtchart/python3-pyqtchart_5.15.1.bb b/recipes-python/pyqtchart/python3-pyqtchart_5.15.1.bb new file mode 100644 index 00000000..c6cd2ff6 --- /dev/null +++ b/recipes-python/pyqtchart/python3-pyqtchart_5.15.1.bb @@ -0,0 +1,69 @@ +SUMMARY = "Python Qt Chart Bindings" +AUTHOR = "Adrian.Fiergolski@fastree3d.com" +HOMEPAGE = "https://www.riverbankcomputing.com/software/pyqtchart" +SECTION = "devel/python" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "\ + file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ +" + +inherit pypi + +PYPI_PACKAGE = "PyQtChart" + +SRC_URI[md5sum] = "8a36bc796b0d9a2301e613c382336b0e" +SRC_URI[sha256sum] = "8d976b3dbfb233fb0123129323c68adb9d3693c945bba1e227e004208f0747bc" + +S = "${WORKDIR}/PyQtChart-${PV}" + +inherit qmake5 +inherit python3native python3-dir + +DEPENDS = "qtcharts" +DEPENDS += "sip3 sip3-native python3 python3-pyqt5" + +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR + +PARALLEL_MAKEINST = "" + +DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager" + +do_configure_prepend() { + cd ${S} + echo "[PyQt 5]" > pyqt.cfg + echo "py_platform = linux" >> pyqt.cfg + echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg + echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg + echo "py_sip_dir = ${STAGING_EXECPREFIXDIR}/share/sip" >> pyqt.cfg + echo "sip_module = PyQt5.sip" >> pyqt.cfg + echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg + echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} +} + +do_configure_append() { + #Fix installation paths + sed -i -e s:'$(INSTALL_ROOT)'${STAGING_EXECPREFIXDIR}:'$(INSTALL_ROOT)'${D}${exec_prefix}:g ${S}/Makefile + sed -i -e s:'$(INSTALL_ROOT)'${STAGING_EXECPREFIXDIR}:'$(INSTALL_ROOT)'${D}${exec_prefix}:g ${S}/QtChart/Makefile + #Skip installed.txt creation + sed -i -e s:" install_distinfo ":" ": ${S}/Makefile +} + +do_compile() { + cd ${S} + oe_runmake +} + +do_install() { + cd ${S} + oe_runmake MAKEFLAGS='-j 1' install +} + + +FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/" + +RDEPENDS_${PN} = "qtbase qtdeclarative qtquickcontrols2 qtquickcontrols2-mkspecs qtcharts" +RDEPENDS_${PN} += "python3-core python3-sip3 python3-pyqt5" -- cgit v1.2.3 From 0df7c5d1f293296901282510a4d502212cbc42f6 Mon Sep 17 00:00:00 2001 From: Daniel Gomez Date: Wed, 16 Sep 2020 13:14:15 +0200 Subject: python3-pyqt5: Update recipe to use pypi class * Update recipe to inherit from pypi class. * Update homepage. Signed-off-by: Daniel Gomez --- recipes-python/pyqt5/python3-pyqt5_5.15.1.bb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/recipes-python/pyqt5/python3-pyqt5_5.15.1.bb b/recipes-python/pyqt5/python3-pyqt5_5.15.1.bb index 3cf2a9b4..9d8fd39c 100644 --- a/recipes-python/pyqt5/python3-pyqt5_5.15.1.bb +++ b/recipes-python/pyqt5/python3-pyqt5_5.15.1.bb @@ -1,13 +1,17 @@ SUMMARY = "Python Qt5 Bindings" AUTHOR = "Phil Thomson @ riverbank.co.uk" -HOMEPAGE = "http://riverbankcomputing.co.uk" +HOMEPAGE = "https://www.riverbankcomputing.com/software/pyqt" SECTION = "devel/python" LICENSE = "GPLv3" LIC_FILES_CHKSUM = "\ file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ " -SRC_URI = "https://files.pythonhosted.org/packages/1d/31/896dc3dfb6c81c70164019a6cbba6ab037e3af7653d9ca60ccc874ee4c27/PyQt5-${PV}.tar.gz" +inherit pypi + +PYPI_PACKAGE = "PyQt5" + +SRC_URI[md5sum] = "b60f895e70d31d774e6cd374efd17c65" SRC_URI[sha256sum] = "d9a76b850246d08da9863189ecb98f6c2aa9b4d97a3e85e29330a264aed0f9a1" S = "${WORKDIR}/PyQt5-${PV}" -- cgit v1.2.3 From 33af7d85d119797d05ba53062bc05f821ea93dc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 27 Sep 2020 17:24:23 +0200 Subject: qt5-creator: upgrade 4.13.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Andreas Müller --- recipes-qt/qt5/qt5-creator_git.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes-qt/qt5/qt5-creator_git.bb b/recipes-qt/qt5/qt5-creator_git.bb index 5797ca32..4338bf20 100644 --- a/recipes-qt/qt5/qt5-creator_git.bb +++ b/recipes-qt/qt5/qt5-creator_git.bb @@ -17,8 +17,8 @@ inherit qmake5 mime-xdg DEPENDS += "qtbase qtscript qtxmlpatterns qtx11extras qtdeclarative qttools qttools-native qtsvg chrpath-replacement-native zlib" DEPENDS_append_libc-musl = " libexecinfo" -SRCREV = "501e7c2fddec6b93e273dadcac389cd8c934cf00" -PV = "4.12.4+4.13.0+git${SRCPV}" +SRCREV = "1da2c1f7666ced45d6eea1cd0adfdc68a828e3a0" +PV = "4.13.1+git${SRCPV}" # Patches from https://github.com/meta-qt5/qtcreator/commits/b4.9.2 # 4.9.2.meta-qt5.1 SRC_URI = " \ -- cgit v1.2.3 From 8d5672cc6ca327576a814d35dfb5d59ab24043cb Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Thu, 15 Oct 2020 15:42:09 +0200 Subject: layer.conf: include gatesgarth in LAYERSERIES_COMPAT as well Signed-off-by: Martin Jansa --- conf/layer.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/layer.conf b/conf/layer.conf index dbaa3d6b..7b3089dc 100644 --- a/conf/layer.conf +++ b/conf/layer.conf @@ -29,7 +29,7 @@ LAYERVERSION_qt5-layer = "1" LAYERDEPENDS_qt5-layer = "core" -LAYERSERIES_COMPAT_qt5-layer = "dunfell" +LAYERSERIES_COMPAT_qt5-layer = "dunfell gatesgarth" LICENSE_PATH += "${LAYERDIR}/licenses" -- cgit v1.2.3 From f60771c37c2940734a04674bcf91dcb64711fc12 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Mon, 26 Oct 2020 22:13:10 -0700 Subject: qtbase: Fix build on 32-bit arches with 64bit time_t only Signed-off-by: Khem Raj --- recipes-qt/qt5/nativesdk-qtbase_git.bb | 1 + recipes-qt/qt5/qtbase-native_git.bb | 1 + ...19-Define-__NR_futex-if-it-does-not-exist.patch | 36 ++++++++++++++++++++++ recipes-qt/qt5/qtbase_git.bb | 1 + 4 files changed, 39 insertions(+) create mode 100644 recipes-qt/qt5/qtbase/0019-Define-__NR_futex-if-it-does-not-exist.patch diff --git a/recipes-qt/qt5/nativesdk-qtbase_git.bb b/recipes-qt/qt5/nativesdk-qtbase_git.bb index f8d6c7e2..ff989c2f 100644 --- a/recipes-qt/qt5/nativesdk-qtbase_git.bb +++ b/recipes-qt/qt5/nativesdk-qtbase_git.bb @@ -43,6 +43,7 @@ SRC_URI += "\ file://0016-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch \ file://0017-input-Make-use-of-timeval-portable-for-64bit-time_t.patch \ file://0018-tst_qpainter-FE_-macros-are-not-defined-for-every-pl.patch \ + file://0019-Define-__NR_futex-if-it-does-not-exist.patch \ " # common for qtbase-native and nativesdk-qtbase diff --git a/recipes-qt/qt5/qtbase-native_git.bb b/recipes-qt/qt5/qtbase-native_git.bb index 44160963..7ed63851 100644 --- a/recipes-qt/qt5/qtbase-native_git.bb +++ b/recipes-qt/qt5/qtbase-native_git.bb @@ -38,6 +38,7 @@ SRC_URI += "\ file://0016-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch \ file://0017-input-Make-use-of-timeval-portable-for-64bit-time_t.patch \ file://0018-tst_qpainter-FE_-macros-are-not-defined-for-every-pl.patch \ + file://0019-Define-__NR_futex-if-it-does-not-exist.patch \ " # common for qtbase-native and nativesdk-qtbase diff --git a/recipes-qt/qt5/qtbase/0019-Define-__NR_futex-if-it-does-not-exist.patch b/recipes-qt/qt5/qtbase/0019-Define-__NR_futex-if-it-does-not-exist.patch new file mode 100644 index 00000000..2accb08e --- /dev/null +++ b/recipes-qt/qt5/qtbase/0019-Define-__NR_futex-if-it-does-not-exist.patch @@ -0,0 +1,36 @@ +From bf314645e665d82c65771fb0d5f58558bbe1ba87 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 26 Oct 2020 22:10:02 -0700 +Subject: [PATCH] Define __NR_futex if it does not exist + +__NR_futex is not defines by newer architectures e.g. arc, riscv32 as +they only have 64bit variant of time_t. Glibc defines SYS_futex interface based on +__NR_futex, since this is used in applications, such applications start +to fail to build for these newer architectures. This patch defines a +fallback to alias __NR_futex to __NR_futex_tim64 so SYS_futex keeps +working + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + src/corelib/thread/qfutex_p.h | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/corelib/thread/qfutex_p.h b/src/corelib/thread/qfutex_p.h +index f287b752d7..fa5307a604 100644 +--- a/src/corelib/thread/qfutex_p.h ++++ b/src/corelib/thread/qfutex_p.h +@@ -76,6 +76,9 @@ QT_END_NAMESPACE + # include + # include + # include ++# if !defined(__NR_futex) && defined(__NR_futex_time64) ++# define __NR_futex __NR_futex_time64 ++# endif + # define QT_ALWAYS_USE_FUTEX + + // if not defined in linux/futex.h +-- +2.29.1 + diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index 129c4084..a2e87651 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb @@ -34,6 +34,7 @@ SRC_URI += "\ file://0016-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch \ file://0017-input-Make-use-of-timeval-portable-for-64bit-time_t.patch \ file://0018-tst_qpainter-FE_-macros-are-not-defined-for-every-pl.patch \ + file://0019-Define-__NR_futex-if-it-does-not-exist.patch \ " # for syncqt -- cgit v1.2.3 From 1d946dc8f467a37494d3d96a1fa8153199288aff Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 31 Oct 2020 13:07:23 -0700 Subject: qtwebkit: Fix build when Qt is configured without SSL backport a patch to fix the build error Signed-off-by: Khem Raj --- ...e-related-to-HTTP-2-when-Qt-is-configured.patch | 34 ++++++++++++++++++++++ recipes-qt/qt5/qtwebkit_git.bb | 1 + 2 files changed, 35 insertions(+) create mode 100644 recipes-qt/qt5/qtwebkit/0007-Disable-code-related-to-HTTP-2-when-Qt-is-configured.patch diff --git a/recipes-qt/qt5/qtwebkit/0007-Disable-code-related-to-HTTP-2-when-Qt-is-configured.patch b/recipes-qt/qt5/qtwebkit/0007-Disable-code-related-to-HTTP-2-when-Qt-is-configured.patch new file mode 100644 index 00000000..15607c0d --- /dev/null +++ b/recipes-qt/qt5/qtwebkit/0007-Disable-code-related-to-HTTP-2-when-Qt-is-configured.patch @@ -0,0 +1,34 @@ +From 32eb0352d98fcf325b0a94a4f7e141d746938a4b Mon Sep 17 00:00:00 2001 +From: Konstantin Tokarev +Date: Sun, 3 May 2020 18:50:24 +0300 +Subject: [PATCH] Disable code related to HTTP/2 when Qt is configured without SSL support + +For enabling HTTP/2 by default we check if Qt uses OpenSSL and its version +is 1.0.2 or higher via QSslSocket API. While it would be sufficient to +add guards just there, we are not going to enable HTTP/2 for QT_NO_SSL +case by default anyway (note that it still can be done in application code). + +Change-Id: I77b4a423ff1028725ac2c0953c757dce2db23e05 +--- +Upstream-Status: Backport [https://github.com/qtwebkit/qtwebkit/commit/e7ec14144ce58418d94568c41ac94d4d87969363] +Signed-off-by: Khem Raj + + Source/WebCore/platform/network/qt/ResourceRequest.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Source/WebCore/platform/network/qt/ResourceRequest.h b/Source/WebCore/platform/network/qt/ResourceRequest.h +index 1154d56a0..87e21ec3f 100644 +--- a/Source/WebCore/platform/network/qt/ResourceRequest.h ++++ b/Source/WebCore/platform/network/qt/ResourceRequest.h +@@ -32,7 +32,7 @@ + // HTTP/2 is implemented since Qt 5.8, but various QtNetwork bugs make it unusable in browser with Qt < 5.10.1 + // We also don't enable HTTP/2 for unencrypted connections because of possible compatibility issues; it can be + // enabled manually by user application via custom QNAM subclass +-#if QT_VERSION >= QT_VERSION_CHECK(5, 10, 1) ++#if QT_VERSION >= QT_VERSION_CHECK(5, 10, 1) && !defined(QT_NO_SSL) + #define USE_HTTP2 1 + #endif + +-- +2.29.2 + diff --git a/recipes-qt/qt5/qtwebkit_git.bb b/recipes-qt/qt5/qtwebkit_git.bb index acd97e09..ce7d1b85 100644 --- a/recipes-qt/qt5/qtwebkit_git.bb +++ b/recipes-qt/qt5/qtwebkit_git.bb @@ -17,6 +17,7 @@ SRC_URI += "\ file://0004-Fix-build-bug-for-armv32-BE.patch \ file://0005-PlatformQt.cmake-Do-not-generate-hardcoded-include-p.patch \ file://0006-Fix-build-with-bison37.patch \ + file://0007-Disable-code-related-to-HTTP-2-when-Qt-is-configured.patch \ " inherit cmake_qt5 perlnative -- cgit v1.2.3 From a72c04ee797ca70d73784e6bc2fb0701b3ff8a7c Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 31 Oct 2020 13:09:04 -0700 Subject: qtwebkit: Fix build with python 3.9 backport a fix to build with python 3.9 Signed-off-by: Khem Raj --- ...tion-with-Python-3.9-avoid-passing-encodi.patch | 32 ++++++++++++++++++++++ recipes-qt/qt5/qtwebkit_git.bb | 1 + 2 files changed, 33 insertions(+) create mode 100644 recipes-qt/qt5/qtwebkit/0008-Fix-compilation-with-Python-3.9-avoid-passing-encodi.patch diff --git a/recipes-qt/qt5/qtwebkit/0008-Fix-compilation-with-Python-3.9-avoid-passing-encodi.patch b/recipes-qt/qt5/qtwebkit/0008-Fix-compilation-with-Python-3.9-avoid-passing-encodi.patch new file mode 100644 index 00000000..4eef3451 --- /dev/null +++ b/recipes-qt/qt5/qtwebkit/0008-Fix-compilation-with-Python-3.9-avoid-passing-encodi.patch @@ -0,0 +1,32 @@ +From df9f6a8c9d59996b52bfdc5ea6f780de517905e5 Mon Sep 17 00:00:00 2001 +From: Konstantin Tokarev +Date: Wed, 3 Jun 2020 15:01:42 +0300 +Subject: [PATCH] Fix compilation with Python 3.9: avoid passing encoding to + json.load() + +In Python 2.7 UTF-8 is assumed by default, while in Python 3 this argument +is not supported. + +Upstream-Status: Backport [https://github.com/qtwebkit/qtwebkit/commit/78360c01c796b6260bf828bc9c8a0ef73c5132fd] +Change-Id: Ic459d60a6b20bc1838d8771bc36ac41614fe61a9 +Signed-off-by: Khem Raj +--- + Source/JavaScriptCore/generate-bytecode-files | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Source/JavaScriptCore/generate-bytecode-files b/Source/JavaScriptCore/generate-bytecode-files +index c5dab429c..af3431275 100644 +--- a/Source/JavaScriptCore/generate-bytecode-files ++++ b/Source/JavaScriptCore/generate-bytecode-files +@@ -163,7 +163,7 @@ if __name__ == "__main__": + initBytecodesFile = openOrExit(initASMFileName, "w") + + try: +- bytecodeSections = json.load(bytecodeFile, encoding = "utf-8") ++ bytecodeSections = json.load(bytecodeFile) + except: + print("Unexpected error parsing {0}: {1}".format(bytecodeJSONFile, sys.exc_info())) + +-- +2.29.2 + diff --git a/recipes-qt/qt5/qtwebkit_git.bb b/recipes-qt/qt5/qtwebkit_git.bb index ce7d1b85..9ce948e0 100644 --- a/recipes-qt/qt5/qtwebkit_git.bb +++ b/recipes-qt/qt5/qtwebkit_git.bb @@ -18,6 +18,7 @@ SRC_URI += "\ file://0005-PlatformQt.cmake-Do-not-generate-hardcoded-include-p.patch \ file://0006-Fix-build-with-bison37.patch \ file://0007-Disable-code-related-to-HTTP-2-when-Qt-is-configured.patch \ + file://0008-Fix-compilation-with-Python-3.9-avoid-passing-encodi.patch \ " inherit cmake_qt5 perlnative -- cgit v1.2.3 From 21ce4c124d9a972d9122f87c64ac2773bf04c284 Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Tue, 3 Nov 2020 09:35:52 +0200 Subject: qtbase: fix default value for QMAKE_AR The QMAKE_AR value is never empty as it always has at least the cqs argument. Use the default value if the variable has exactly one argument. Fixes issue #165. Signed-off-by: Samuli Piippo --- recipes-qt/qt5/qtbase_git.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index a2e87651..ef415d96 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb @@ -254,7 +254,7 @@ do_install_append() { echo "" >> $conf echo "# default compiler options which can be overwritten from the environment" >> $conf - echo "isEmpty(QMAKE_AR): QMAKE_AR = ${OE_QMAKE_AR} cqs" >> $conf + echo "count(QMAKE_AR, 1): QMAKE_AR = ${OE_QMAKE_AR} cqs" >> $conf echo "isEmpty(QMAKE_CC): QMAKE_CC = $OE_QMAKE_CC_NO_SYSROOT" >> $conf echo "isEmpty(QMAKE_CXX): QMAKE_CXX = $OE_QMAKE_CXX_NO_SYSROOT" >> $conf # OE_QMAKE_CFLAGS and OE_QMAKE_CXXFLAGS contain path of the build host, which is not useful for the target. -- cgit v1.2.3 From df46d9212fff57959a7f2a566c04d2892d1369b6 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sun, 8 Nov 2020 17:54:20 -0800 Subject: qtbase: Disable LTO Signed-off-by: Khem Raj --- recipes-qt/qt5/qtbase_git.bb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index ef415d96..2f1a9273 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb @@ -37,6 +37,10 @@ SRC_URI += "\ file://0019-Define-__NR_futex-if-it-does-not-exist.patch \ " +# Disable LTO for now, QT5 patches are being worked upstream, perhaps revisit with +# next major upgrade of QT +LTO = "" + # for syncqt RDEPENDS_${PN}-tools += "perl" -- cgit v1.2.3 From 7a9f639fbd632dbe23af95c7b8123a0b907c6179 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 11 Nov 2020 09:19:16 -0800 Subject: qt5-creator: Skip it when meta-python2 is not in layermix it depends on qtwebengine which inturn depends on chromium which inturn depends on python2 during build. So lets disable it when meta-python2 is not used until such time when chromium does not need python2 Signed-off-by: Khem Raj --- recipes-qt/qt5/qt5-creator_git.bb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/recipes-qt/qt5/qt5-creator_git.bb b/recipes-qt/qt5/qt5-creator_git.bb index 4338bf20..f8d4aa1d 100644 --- a/recipes-qt/qt5/qt5-creator_git.bb +++ b/recipes-qt/qt5/qt5-creator_git.bb @@ -97,3 +97,8 @@ INSANE_SKIP_${PN} += "ldflags" inherit features_check REQUIRED_DISTRO_FEATURES ?= "x11 opengl" + +python() { + if 'meta-python2' not in d.getVar('BBFILE_COLLECTIONS').split(): + raise bb.parse.SkipRecipe('Requires meta-python2 to be present.') +} -- cgit v1.2.3