diff options
author | Michael Olbrich <m.olbrich@pengutronix.de> | 2019-02-09 09:22:52 +0100 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2019-02-26 09:13:26 +0100 |
commit | a1122895cba5a50506ab22ffc2211e8d8c67e09d (patch) | |
tree | db769dfb1a98c80a5a770ba4eef7b8f1737e9401 /patches | |
parent | 7965e309e43d8101ca27637aa6bcaed1823a69db (diff) | |
download | ptxdist-a1122895cba5a50506ab22ffc2211e8d8c67e09d.tar.gz ptxdist-a1122895cba5a50506ab22ffc2211e8d8c67e09d.tar.xz |
qt5: version bump 5.6.3 -> 5.12.1
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Diffstat (limited to 'patches')
15 files changed, 318 insertions, 127 deletions
diff --git a/patches/qt-everywhere-opensource-src-5.6.3/0100-eglfs-plugin-needs-egl-for-correct-cflags.patch b/patches/qt-everywhere-opensource-src-5.6.3/0100-eglfs-plugin-needs-egl-for-correct-cflags.patch deleted file mode 100644 index 3baf73a39..000000000 --- a/patches/qt-everywhere-opensource-src-5.6.3/0100-eglfs-plugin-needs-egl-for-correct-cflags.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Michael Olbrich <m.olbrich@pengutronix.de> -Date: Mon, 15 Feb 2016 15:24:41 +0100 -Subject: [PATCH] eglfs-plugin: needs egl for correct cflags - -Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> ---- - qtbase/src/plugins/platforms/eglfs/eglfs-plugin.pro | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/qtbase/src/plugins/platforms/eglfs/eglfs-plugin.pro b/qtbase/src/plugins/platforms/eglfs/eglfs-plugin.pro -index a628cdccd938..f7e3400615e6 100644 ---- a/qtbase/src/plugins/platforms/eglfs/eglfs-plugin.pro -+++ b/qtbase/src/plugins/platforms/eglfs/eglfs-plugin.pro -@@ -2,6 +2,8 @@ TARGET = qeglfs - - QT += platformsupport-private eglfs_device_lib-private - -+CONFIG += egl -+ - SOURCES += $$PWD/qeglfsmain.cpp - - OTHER_FILES += $$PWD/eglfs.json diff --git a/patches/qt-everywhere-opensource-src-5.6.3/0101-qtwebengine-make-sure-sysroot-is-always-set-to.patch b/patches/qt-everywhere-opensource-src-5.6.3/0101-qtwebengine-make-sure-sysroot-is-always-set-to.patch deleted file mode 100644 index fa0e06a8f..000000000 --- a/patches/qt-everywhere-opensource-src-5.6.3/0101-qtwebengine-make-sure-sysroot-is-always-set-to.patch +++ /dev/null @@ -1,23 +0,0 @@ -From: Michael Olbrich <m.olbrich@pengutronix.de> -Date: Sun, 6 May 2018 09:00:11 +0200 -Subject: [PATCH] qtwebengine: make sure sysroot is always set to "" - -Otherwise chromium will set it's own bogus sysroot. - -Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> ---- - qtwebengine/src/core/gyp_run.pro | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/qtwebengine/src/core/gyp_run.pro b/qtwebengine/src/core/gyp_run.pro -index 81e1c3297ad2..b96e9f026beb 100644 ---- a/qtwebengine/src/core/gyp_run.pro -+++ b/qtwebengine/src/core/gyp_run.pro -@@ -44,6 +44,7 @@ force_debug_info { - cross_compile { - TOOLCHAIN_SYSROOT = $$[QT_SYSROOT] - !isEmpty(TOOLCHAIN_SYSROOT): GYP_CONFIG += sysroot=\"$${TOOLCHAIN_SYSROOT}\" -+ else: GYP_CONFIG += sysroot=\"\" - - # Needed for v8, see chromium/v8/build/toolchain.gypi - GYP_CONFIG += CXX=\"$$which($$QMAKE_CXX)\" diff --git a/patches/qt-everywhere-opensource-src-5.6.3/0200-ptxdist-qtwebengine-allow-building-with-ptxdist.patch b/patches/qt-everywhere-opensource-src-5.6.3/0200-ptxdist-qtwebengine-allow-building-with-ptxdist.patch deleted file mode 100644 index c25c32e05..000000000 --- a/patches/qt-everywhere-opensource-src-5.6.3/0200-ptxdist-qtwebengine-allow-building-with-ptxdist.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Michael Olbrich <m.olbrich@pengutronix.de> -Date: Tue, 12 May 2015 11:38:35 +0200 -Subject: [PATCH] ptxdist: qtwebengine: allow building with ptxdist - -Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> ---- - qtwebengine/tools/qmake/mkspecs/features/functions.prf | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/qtwebengine/tools/qmake/mkspecs/features/functions.prf b/qtwebengine/tools/qmake/mkspecs/features/functions.prf -index c8fd278b4e01..3faee6455953 100644 ---- a/qtwebengine/tools/qmake/mkspecs/features/functions.prf -+++ b/qtwebengine/tools/qmake/mkspecs/features/functions.prf -@@ -162,7 +162,7 @@ defineReplace(getChromiumSrcDir) { - } - - defineReplace(extractCFlag) { -- CFLAGS = $$QMAKE_CC $$QMAKE_CFLAGS -+ CFLAGS = $$QMAKE_CC $$QMAKE_CFLAGS $$PTX_QMAKE_CFLAGS - OPTION = $$find(CFLAGS, $$1) - OPTION = $$split(OPTION, =) - return ($$member(OPTION, 1)) diff --git a/patches/qt-everywhere-opensource-src-5.6.3/0201-HACK-put-wayland-scanner-outout-in-srcdir.patch b/patches/qt-everywhere-opensource-src-5.6.3/0201-HACK-put-wayland-scanner-outout-in-srcdir.patch deleted file mode 100644 index 2ea4c7587..000000000 --- a/patches/qt-everywhere-opensource-src-5.6.3/0201-HACK-put-wayland-scanner-outout-in-srcdir.patch +++ /dev/null @@ -1,24 +0,0 @@ -From: Michael Olbrich <m.olbrich@pengutronix.de> -Date: Mon, 10 Nov 2014 17:44:10 +0100 -Subject: [PATCH] HACK: put wayland-scanner outout in srcdir - -The include paths are currently broken when building OOT - -Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> ---- - qtbase/mkspecs/features/wayland-scanner.prf | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/qtbase/mkspecs/features/wayland-scanner.prf b/qtbase/mkspecs/features/wayland-scanner.prf -index 5a97d98373fa..a5477e8f9b42 100644 ---- a/qtbase/mkspecs/features/wayland-scanner.prf -+++ b/qtbase/mkspecs/features/wayland-scanner.prf -@@ -26,7 +26,7 @@ defineReplace(waylandScannerHeaderFiles) { - } - - qt_install_headers { -- header_dest = $$MODULE_BASE_OUTDIR/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private -+ header_dest = $$MODULE_BASE_INDIR/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private - - header_files_client = $$waylandScannerHeaderFiles(client, $$header_dest) - !isEmpty(header_files_client) { diff --git a/patches/qt-everywhere-opensource-src-5.6.3/0202-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch b/patches/qt-everywhere-opensource-src-5.6.3/0202-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch deleted file mode 100644 index 743650049..000000000 --- a/patches/qt-everywhere-opensource-src-5.6.3/0202-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch +++ /dev/null @@ -1,23 +0,0 @@ -From: Philipp Zabel <p.zabel@pengutronix.de> -Date: Tue, 4 Aug 2015 13:53:28 +0200 -Subject: [PATCH] qtwebengine: #define TRUE in case of USE_SYSTEM_LIBJPEG - -Otherwise libjpeg headers typedefs boolean to an incompatible enum. - -Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> ---- - qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc b/qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc -index 8a08fe0291af..ef52a292ac87 100644 ---- a/qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc -+++ b/qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc -@@ -13,6 +13,7 @@ - - extern "C" { - #if defined(USE_SYSTEM_LIBJPEG) -+#define TRUE - #include <jpeglib.h> - #elif defined(USE_LIBJPEG_TURBO) - #include "third_party/libjpeg_turbo/jpeglib.h" diff --git a/patches/qt-everywhere-opensource-src-5.6.3/series b/patches/qt-everywhere-opensource-src-5.6.3/series deleted file mode 100644 index 455993097..000000000 --- a/patches/qt-everywhere-opensource-src-5.6.3/series +++ /dev/null @@ -1,12 +0,0 @@ -# generated by git-ptx-patches -#tag:base --start-number 1 -#tag:upstream --start-number 1 -#tag:fixes --start-number 100 -0100-eglfs-plugin-needs-egl-for-correct-cflags.patch -0101-qtwebengine-make-sure-sysroot-is-always-set-to.patch -0102-qt3d-link-with-latomic-if-necessary.patch -#tag:hacks --start-number 200 -0200-ptxdist-qtwebengine-allow-building-with-ptxdist.patch -0201-HACK-put-wayland-scanner-outout-in-srcdir.patch -0202-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch -# e359f6ab7b01e1225f7005e11b8aa6cb - git-ptx-patches magic diff --git a/patches/qt-everywhere-src-5.12.1/0001-qtwayland-use-QT_EGL_NO_X11-and-qt_egl_p.h-everywher.patch b/patches/qt-everywhere-src-5.12.1/0001-qtwayland-use-QT_EGL_NO_X11-and-qt_egl_p.h-everywher.patch new file mode 100644 index 000000000..1872c83ad --- /dev/null +++ b/patches/qt-everywhere-src-5.12.1/0001-qtwayland-use-QT_EGL_NO_X11-and-qt_egl_p.h-everywher.patch @@ -0,0 +1,87 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Tue, 7 Nov 2017 14:51:03 +0100 +Subject: [PATCH] qtwayland: use QT_EGL_NO_X11 and qt_egl_p.h everywhere + +Otherwise egl.h is included without MESA_EGL_NO_X11_HEADERS + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + .../src/hardwareintegration/client/drm-egl-server/drm-egl-server.pri | 4 ++++ + .../client/drm-egl-server/drmeglserverbufferintegration.h | 4 ++-- + .../hardwareintegration/compositor/drm-egl-server/drm-egl-server.pri | 3 +++ + .../compositor/drm-egl-server/drmeglserverbufferintegration.h | 4 ++-- + .../src/hardwareintegration/compositor/wayland-egl/wayland-egl.pri | 2 ++ + 5 files changed, 13 insertions(+), 4 deletions(-) + +diff --git a/qtwayland/src/hardwareintegration/client/drm-egl-server/drm-egl-server.pri b/qtwayland/src/hardwareintegration/client/drm-egl-server/drm-egl-server.pri +index 700e95e32df5..7667b5418261 100644 +--- a/qtwayland/src/hardwareintegration/client/drm-egl-server/drm-egl-server.pri ++++ b/qtwayland/src/hardwareintegration/client/drm-egl-server/drm-egl-server.pri +@@ -2,6 +2,10 @@ INCLUDEPATH += $$PWD + + QMAKE_USE += egl wayland-client + ++QT += egl_support-private ++ ++DEFINES += QT_EGL_NO_X11 ++ + SOURCES += \ + $$PWD/drmeglserverbufferintegration.cpp + +diff --git a/qtwayland/src/hardwareintegration/client/drm-egl-server/drmeglserverbufferintegration.h b/qtwayland/src/hardwareintegration/client/drm-egl-server/drmeglserverbufferintegration.h +index 2c65969f8488..e6387c37158b 100644 +--- a/qtwayland/src/hardwareintegration/client/drm-egl-server/drmeglserverbufferintegration.h ++++ b/qtwayland/src/hardwareintegration/client/drm-egl-server/drmeglserverbufferintegration.h +@@ -48,8 +48,8 @@ + #include <QtWaylandClient/private/qwaylanddisplay_p.h> + #include <QtCore/QTextStream> + +-#include <EGL/egl.h> +-#include <EGL/eglext.h> ++#include <QtEglSupport/private/qt_egl_p.h> ++ + #ifndef EGL_KHR_image + typedef void *EGLImageKHR; + typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list); +diff --git a/qtwayland/src/hardwareintegration/compositor/drm-egl-server/drm-egl-server.pri b/qtwayland/src/hardwareintegration/compositor/drm-egl-server/drm-egl-server.pri +index 7d6841748c5a..553b49f3fe38 100644 +--- a/qtwayland/src/hardwareintegration/compositor/drm-egl-server/drm-egl-server.pri ++++ b/qtwayland/src/hardwareintegration/compositor/drm-egl-server/drm-egl-server.pri +@@ -5,6 +5,9 @@ QMAKE_USE_PRIVATE += egl wayland-server + SOURCES += \ + $$PWD/drmeglserverbufferintegration.cpp + ++QT += egl_support-private ++ ++DEFINES += QT_EGL_NO_X11 + + HEADERS += \ + $$PWD/drmeglserverbufferintegration.h +diff --git a/qtwayland/src/hardwareintegration/compositor/drm-egl-server/drmeglserverbufferintegration.h b/qtwayland/src/hardwareintegration/compositor/drm-egl-server/drmeglserverbufferintegration.h +index ff329c1a17fc..3d4f23d9404f 100644 +--- a/qtwayland/src/hardwareintegration/compositor/drm-egl-server/drmeglserverbufferintegration.h ++++ b/qtwayland/src/hardwareintegration/compositor/drm-egl-server/drmeglserverbufferintegration.h +@@ -52,8 +52,8 @@ + #include <QtWaylandCompositor/private/qwayland-server-server-buffer-extension.h> + + #include <QtCore/QDebug> +-#include <EGL/egl.h> +-#include <EGL/eglext.h> ++ ++#include <QtEglSupport/private/qt_egl_p.h> + + #ifndef EGL_KHR_image + typedef void *EGLImageKHR; +diff --git a/qtwayland/src/hardwareintegration/compositor/wayland-egl/wayland-egl.pri b/qtwayland/src/hardwareintegration/compositor/wayland-egl/wayland-egl.pri +index e20c6802c200..078b74839cb1 100644 +--- a/qtwayland/src/hardwareintegration/compositor/wayland-egl/wayland-egl.pri ++++ b/qtwayland/src/hardwareintegration/compositor/wayland-egl/wayland-egl.pri +@@ -4,6 +4,8 @@ QMAKE_USE_PRIVATE += egl wayland-server wayland-egl + + QT += egl_support-private + ++DEFINES += QT_EGL_NO_X11 ++ + SOURCES += \ + $$PWD/waylandeglclientbufferintegration.cpp + diff --git a/patches/qt-everywhere-src-5.12.1/0002-videonode-egl-use-QT_EGL_NO_X11-and-qt_egl_p.h.patch b/patches/qt-everywhere-src-5.12.1/0002-videonode-egl-use-QT_EGL_NO_X11-and-qt_egl_p.h.patch new file mode 100644 index 000000000..c3935b413 --- /dev/null +++ b/patches/qt-everywhere-src-5.12.1/0002-videonode-egl-use-QT_EGL_NO_X11-and-qt_egl_p.h.patch @@ -0,0 +1,47 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Tue, 7 Nov 2017 14:51:03 +0100 +Subject: [PATCH] videonode: egl: use QT_EGL_NO_X11 and qt_egl_p.h + +Otherwise egl.h is included without MESA_EGL_NO_X11_HEADERS + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + qtmultimedia/src/plugins/videonode/egl/egl.pro | 4 +++- + qtmultimedia/src/plugins/videonode/egl/qsgvideonode_egl.h | 3 +-- + 2 files changed, 4 insertions(+), 3 deletions(-) + +diff --git a/qtmultimedia/src/plugins/videonode/egl/egl.pro b/qtmultimedia/src/plugins/videonode/egl/egl.pro +index 7151123ea7a3..106f982e5ec0 100644 +--- a/qtmultimedia/src/plugins/videonode/egl/egl.pro ++++ b/qtmultimedia/src/plugins/videonode/egl/egl.pro +@@ -1,6 +1,6 @@ + TARGET = eglvideonode + +-QT += multimedia-private qtmultimediaquicktools-private ++QT += multimedia-private qtmultimediaquicktools-private egl_support-private + CONFIG += egl + + HEADERS += \ +@@ -12,6 +12,8 @@ SOURCES += \ + OTHER_FILES += \ + egl.json + ++DEFINES += QT_EGL_NO_X11 ++ + PLUGIN_TYPE = video/videonode + PLUGIN_EXTENDS = quick + PLUGIN_CLASS_NAME = QSGVideoNodeFactory_EGL +diff --git a/qtmultimedia/src/plugins/videonode/egl/qsgvideonode_egl.h b/qtmultimedia/src/plugins/videonode/egl/qsgvideonode_egl.h +index 0ec63eac1798..1a753463a5b7 100644 +--- a/qtmultimedia/src/plugins/videonode/egl/qsgvideonode_egl.h ++++ b/qtmultimedia/src/plugins/videonode/egl/qsgvideonode_egl.h +@@ -45,8 +45,7 @@ + #include <QSGOpaqueTextureMaterial> + #include <QSGTexture> + +-#include <EGL/egl.h> +-#include <EGL/eglext.h> ++#include <QtEglSupport/private/qt_egl_p.h> + + #ifdef Bool + # undef Bool diff --git a/patches/qt-everywhere-opensource-src-5.6.3/0102-qt3d-link-with-latomic-if-necessary.patch b/patches/qt-everywhere-src-5.12.1/0003-qt3d-link-with-latomic-if-necessary.patch index 0e62abc48..6445dc4f4 100644 --- a/patches/qt-everywhere-opensource-src-5.6.3/0102-qt3d-link-with-latomic-if-necessary.patch +++ b/patches/qt-everywhere-src-5.12.1/0003-qt3d-link-with-latomic-if-necessary.patch @@ -12,7 +12,7 @@ Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> 1 file changed, 2 insertions(+) diff --git a/qt3d/src/core/nodes/nodes.pri b/qt3d/src/core/nodes/nodes.pri -index 64823813e1d3..d4cd1b5b923a 100644 +index 785ae2b21472..de97caee8662 100644 --- a/qt3d/src/core/nodes/nodes.pri +++ b/qt3d/src/core/nodes/nodes.pri @@ -1,5 +1,7 @@ diff --git a/patches/qt-everywhere-src-5.12.1/0004-eglfs_kms-device-ordering-robustness.patch b/patches/qt-everywhere-src-5.12.1/0004-eglfs_kms-device-ordering-robustness.patch new file mode 100644 index 000000000..d466e32b3 --- /dev/null +++ b/patches/qt-everywhere-src-5.12.1/0004-eglfs_kms-device-ordering-robustness.patch @@ -0,0 +1,58 @@ +From: Lucas Stach <l.stach@pengutronix.de> +Date: Mon, 29 Jan 2018 14:02:03 +0100 +Subject: [PATCH] eglfs_kms: device ordering robustness + +Check the DRM device for available mode resources before deciding to +use it as the KMS device. This way we are robust against changes in +DRM device ordering, where some of the devices are render only. + +Signed-off-by: Lucas Stach <l.stach@pengutronix.de> +--- + .../eglfs_kms/qeglfskmsgbmintegration.cpp | 20 ++++++++++++++++++++ + 1 file changed, 20 insertions(+) + +diff --git a/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp b/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp +index 402338197d0f..227f6fe3e9fb 100644 +--- a/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp ++++ b/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp +@@ -47,6 +47,7 @@ + #include "private/qeglfscursor_p.h" + + #include <QtCore/QLoggingCategory> ++#include <QtCore/private/qcore_unix_p.h> + #include <QtGui/QScreen> + #include <QtDeviceDiscoverySupport/private/qdevicediscovery_p.h> + +@@ -129,6 +130,20 @@ void QEglFSKmsGbmIntegration::presentBuffer(QPlatformSurface *surface) + screen->flip(); + } + ++static bool check_modesetting(QString devpath) ++{ ++ bool moderes = false; ++ struct drm_mode_card_res res = { }; ++ int fd = qt_safe_open(devpath.toLocal8Bit().constData(), O_RDWR | O_CLOEXEC); ++ ++ if (!drmIoctl(fd, DRM_IOCTL_MODE_GETRESOURCES, &res)) ++ moderes = true; ++ ++ qt_safe_close(fd); ++ ++ return moderes; ++} ++ + QKmsDevice *QEglFSKmsGbmIntegration::createDevice() + { + QString path = screenConfig()->devicePath(); +@@ -144,6 +159,11 @@ QKmsDevice *QEglFSKmsGbmIntegration::createDevice() + qFatal("Could not find DRM device!"); + + path = devices.first(); ++ for (int i = 0; i < devices.count(); i++) { ++ path = devices.at(i); ++ if (check_modesetting(path)) ++ break; ++ } + qCDebug(qLcEglfsKmsDebug) << "Using" << path; + } + diff --git a/patches/qt-everywhere-src-5.12.1/0005-ptxdist-qtwebengine-allow-building-with-ptxdist.patch b/patches/qt-everywhere-src-5.12.1/0005-ptxdist-qtwebengine-allow-building-with-ptxdist.patch new file mode 100644 index 000000000..c7292d4c1 --- /dev/null +++ b/patches/qt-everywhere-src-5.12.1/0005-ptxdist-qtwebengine-allow-building-with-ptxdist.patch @@ -0,0 +1,23 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Tue, 12 May 2015 11:38:35 +0200 +Subject: [PATCH] ptxdist: qtwebengine: allow building with ptxdist + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + qtwebengine/mkspecs/features/functions.prf | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/qtwebengine/mkspecs/features/functions.prf b/qtwebengine/mkspecs/features/functions.prf +index f433de3b278f..e7e4955c8292 100644 +--- a/qtwebengine/mkspecs/features/functions.prf ++++ b/qtwebengine/mkspecs/features/functions.prf +@@ -11,7 +11,8 @@ defineReplace(getChromiumSrcDir) { + } + + defineReplace(extractCFlag) { +- CFLAGS = $$QMAKE_CC $$QMAKE_CFLAGS ++ PTX_QMAKE_CFLAGS = $$(PTX_QMAKE_CFLAGS) ++ CFLAGS = $$QMAKE_CC $$QMAKE_CFLAGS $$split(PTX_QMAKE_CFLAGS, " ") + OPTION = $$find(CFLAGS, $$1) + OPTION = $$split(OPTION, =) + PARAM = $$member(OPTION, 1) diff --git a/patches/qt-everywhere-src-5.12.1/0006-ptxdist-qtwebengine-let-ninja-use-the-jobserver.patch b/patches/qt-everywhere-src-5.12.1/0006-ptxdist-qtwebengine-let-ninja-use-the-jobserver.patch new file mode 100644 index 000000000..58de4fe78 --- /dev/null +++ b/patches/qt-everywhere-src-5.12.1/0006-ptxdist-qtwebengine-let-ninja-use-the-jobserver.patch @@ -0,0 +1,22 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Tue, 14 Nov 2017 21:52:24 +0100 +Subject: [PATCH] ptxdist: qtwebengine: let ninja use the jobserver + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + qtwebengine/src/core/gn_run.pro | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/qtwebengine/src/core/gn_run.pro b/qtwebengine/src/core/gn_run.pro +index 9860c4541882..777625f96ec0 100644 +--- a/qtwebengine/src/core/gn_run.pro ++++ b/qtwebengine/src/core/gn_run.pro +@@ -49,7 +49,7 @@ build_pass|!debug_and_release { + ninjaflags = $$(NINJAFLAGS) + isEmpty(ninjaflags):!silent: ninjaflags = "-v" + +- runninja.commands = $$NINJA $$ninjaflags -C $$gn_build_root QtWebEngineCore ++ runninja.commands = +$$NINJA $$ninjaflags -C $$gn_build_root QtWebEngineCore + QMAKE_EXTRA_TARGETS += runninja + + build_pass:build_all: default_target.target = all diff --git a/patches/qt-everywhere-src-5.12.1/0007-HACK-qtwebengine-workaround-for-too-long-file-names.patch b/patches/qt-everywhere-src-5.12.1/0007-HACK-qtwebengine-workaround-for-too-long-file-names.patch new file mode 100644 index 000000000..bef3dfc2f --- /dev/null +++ b/patches/qt-everywhere-src-5.12.1/0007-HACK-qtwebengine-workaround-for-too-long-file-names.patch @@ -0,0 +1,39 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Tue, 7 Nov 2017 10:20:09 +0100 +Subject: [PATCH] HACK: qtwebengine: workaround for too long file names + +Without this building fails with: +ninja: error: WriteFile(__third_party_WebKit_Source_bindings_modules_v8_bindings_modules_v8_generated_init_partial__XXX_path_to_the_bsp_platform_XX_build-target_qt-everywhere-opensource-src-5.9.2-build_qtwebengine_src_toolchain_target__rule.rsp): Unable to create file. File name too long + +Hack taken from the upstream bugreport: +https://bugreports.qt.io/browse/QTBUG-59769 + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> +--- + .../src/3rdparty/gn/tools/gn/ninja_action_target_writer.cc | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/qtwebengine/src/3rdparty/gn/tools/gn/ninja_action_target_writer.cc b/qtwebengine/src/3rdparty/gn/tools/gn/ninja_action_target_writer.cc +index 7e945c0de0ed..cd98df3c5657 100644 +--- a/qtwebengine/src/3rdparty/gn/tools/gn/ninja_action_target_writer.cc ++++ b/qtwebengine/src/3rdparty/gn/tools/gn/ninja_action_target_writer.cc +@@ -118,9 +118,18 @@ std::string NinjaActionTargetWriter::WriteRuleDefinition() { + // strictly necessary for regular one-shot actions, but it's easier to + // just always define unique_name. + std::string rspfile = custom_rule_name; ++ ++ //quick workaround if filename length > 255 - ".rsp", just cut the dirs starting from the end ++ //please note ".$unique_name" is not used at the moment ++ int pos = 0; ++ std::string delimiter("_"); ++ while (rspfile.length() > 250 && (pos = rspfile.find_last_of(delimiter)) != std::string::npos) ++ rspfile = rspfile.substr(0,pos); ++ + if (!target_->sources().empty()) + rspfile += ".$unique_name"; + rspfile += ".rsp"; ++ + out_ << " rspfile = " << rspfile << std::endl; + + // Response file contents. diff --git a/patches/qt-everywhere-src-5.12.1/0008-HACK-don-t-resolv-library-paths.patch b/patches/qt-everywhere-src-5.12.1/0008-HACK-don-t-resolv-library-paths.patch new file mode 100644 index 000000000..962acdbb2 --- /dev/null +++ b/patches/qt-everywhere-src-5.12.1/0008-HACK-don-t-resolv-library-paths.patch @@ -0,0 +1,30 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Fri, 8 Feb 2019 15:56:46 +0100 +Subject: [PATCH] HACK: don't resolv library paths + +qtConfResolveLibs turns '-lfoo' into the full path for libfoo.so and fails +if the library is not found. + +This break when the library is a ld scripts in a relocatable toolchain. +For example libm.so may contain 'GROUP ( /lib/libm.so.6 ...)' and this path +is not prefixed with the toolchain sysroot when the absolute path for +libm.so is used. + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + qtbase/mkspecs/features/qt_configure.prf | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/qtbase/mkspecs/features/qt_configure.prf b/qtbase/mkspecs/features/qt_configure.prf +index c45439c3ef1d..1a0368bc5481 100644 +--- a/qtbase/mkspecs/features/qt_configure.prf ++++ b/qtbase/mkspecs/features/qt_configure.prf +@@ -561,7 +561,7 @@ defineTest(qtConfResolveLibs) { + out += $$l + } + } +- $$1 = $$out ++ $$1 = $$2 + export($$1) + !isEmpty(4) { + $$4 = $$paths diff --git a/patches/qt-everywhere-src-5.12.1/series b/patches/qt-everywhere-src-5.12.1/series new file mode 100644 index 000000000..3dab08f03 --- /dev/null +++ b/patches/qt-everywhere-src-5.12.1/series @@ -0,0 +1,11 @@ +# generated by git-ptx-patches +#tag:base --start-number 1 +0001-qtwayland-use-QT_EGL_NO_X11-and-qt_egl_p.h-everywher.patch +0002-videonode-egl-use-QT_EGL_NO_X11-and-qt_egl_p.h.patch +0003-qt3d-link-with-latomic-if-necessary.patch +0004-eglfs_kms-device-ordering-robustness.patch +0005-ptxdist-qtwebengine-allow-building-with-ptxdist.patch +0006-ptxdist-qtwebengine-let-ninja-use-the-jobserver.patch +0007-HACK-qtwebengine-workaround-for-too-long-file-names.patch +0008-HACK-don-t-resolv-library-paths.patch +# 70ad5e6c28ffb057886e0363cdb43ef6 - git-ptx-patches magic |