From f90537a7decfa5599606d3290bc25de02bfa5796 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Wed, 18 Feb 2015 17:18:00 +0100 Subject: qtdeclarative, *qtbase*: upgrade to latest revision in 5.4 branch Signed-off-by: Martin Jansa --- recipes-qt/qt5/nativesdk-qtbase_git.bb | 25 ++-- .../qtbase-git/0001-Add-linux-oe-g-platform.patch | 11 +- ...o-allow-to-set-qt.conf-from-the-outside-u.patch | 10 +- .../0003-Add-external-hostbindir-option.patch | 91 ++---------- ...p-Prefix-default-LIBDIRS-and-INCDIRS-with.patch | 30 ---- ...le-Fix-pkgconfig-and-libtool-replacements.patch | 114 +++++++++++++++ ...lfs-Print-the-chosen-config-in-debug-mode.patch | 97 +++++++++++++ ...le-Fix-pkgconfig-and-libtool-replacements.patch | 114 --------------- ...lfs-Print-the-chosen-config-in-debug-mode.patch | 97 ------------- ...mintegration-Undefine-CursorShape-from-X..patch | 30 ++++ ...ump-path-length-from-256-to-512-character.patch | 29 ++++ ...mintegration-Undefine-CursorShape-from-X..patch | 30 ---- ...ump-path-length-from-256-to-512-character.patch | 29 ---- ...gl-error-for-platforms-only-supporting-on.patch | 72 ++++++++++ .../0009-QOpenGLPaintDevice-sub-area-support.patch | 157 +++++++++++++++++++++ ...gl-error-for-platforms-only-supporting-on.patch | 72 ---------- ...ConfigExtras.cmake-find-gl-es-include-dir.patch | 42 ++++++ .../0010-QOpenGLPaintDevice-sub-area-support.patch | 157 --------------------- .../qt5/qtbase-git/0011-Always-build-uic.patch | 6 +- ...-build-it-in-configure-but-allow-to-build.patch | 36 +++-- ...external-hostbindir-option-for-native-sdk.patch | 108 ++++++++++++++ .../0012-Set-paths-for-target-properly.patch | 72 ++++++++++ ...reserve-built-qmake-and-swap-with-native-.patch | 30 ---- ...ConfigExtras.cmake-find-gl-es-include-dir.patch | 42 ------ ...reserve-built-qmake-and-swap-with-native-.patch | 30 ++++ recipes-qt/qt5/qtbase-native_git.bb | 22 +-- recipes-qt/qt5/qtbase_git.bb | 21 ++- recipes-qt/qt5/qtdeclarative_git.bb | 2 +- 28 files changed, 844 insertions(+), 732 deletions(-) delete mode 100644 recipes-qt/qt5/qtbase-git/0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch create mode 100644 recipes-qt/qt5/qtbase-git/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch create mode 100644 recipes-qt/qt5/qtbase-git/0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch delete mode 100644 recipes-qt/qt5/qtbase-git/0005-qt_module-Fix-pkgconfig-and-libtool-replacements.patch delete mode 100644 recipes-qt/qt5/qtbase-git/0006-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch create mode 100644 recipes-qt/qt5/qtbase-git/0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch create mode 100644 recipes-qt/qt5/qtbase-git/0007-configure-bump-path-length-from-256-to-512-character.patch delete mode 100644 recipes-qt/qt5/qtbase-git/0007-qeglplatformintegration-Undefine-CursorShape-from-X..patch delete mode 100644 recipes-qt/qt5/qtbase-git/0008-configure-bump-path-length-from-256-to-512-character.patch create mode 100644 recipes-qt/qt5/qtbase-git/0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch create mode 100644 recipes-qt/qt5/qtbase-git/0009-QOpenGLPaintDevice-sub-area-support.patch delete mode 100644 recipes-qt/qt5/qtbase-git/0009-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch create mode 100644 recipes-qt/qt5/qtbase-git/0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch delete mode 100644 recipes-qt/qt5/qtbase-git/0010-QOpenGLPaintDevice-sub-area-support.patch create mode 100644 recipes-qt/qt5/qtbase-git/0012-Add-external-hostbindir-option-for-native-sdk.patch create mode 100644 recipes-qt/qt5/qtbase-git/0012-Set-paths-for-target-properly.patch delete mode 100644 recipes-qt/qt5/qtbase-git/0012-configure-preserve-built-qmake-and-swap-with-native-.patch delete mode 100644 recipes-qt/qt5/qtbase-git/0013-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch create mode 100644 recipes-qt/qt5/qtbase-git/0013-configure-preserve-built-qmake-and-swap-with-native-.patch diff --git a/recipes-qt/qt5/nativesdk-qtbase_git.bb b/recipes-qt/qt5/nativesdk-qtbase_git.bb index 0bfa4425..521736e6 100644 --- a/recipes-qt/qt5/nativesdk-qtbase_git.bb +++ b/recipes-qt/qt5/nativesdk-qtbase_git.bb @@ -13,24 +13,24 @@ SRC_URI += "\ file://0001-Add-linux-oe-g-platform.patch \ file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ file://0003-Add-external-hostbindir-option.patch \ - file://0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ - file://0005-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ - file://0006-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ - file://0007-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ - file://0008-configure-bump-path-length-from-256-to-512-character.patch \ - file://0009-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ - file://0010-QOpenGLPaintDevice-sub-area-support.patch \ + file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ + file://0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ + file://0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ + file://0007-configure-bump-path-length-from-256-to-512-character.patch \ + file://0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ + file://0009-QOpenGLPaintDevice-sub-area-support.patch \ + file://0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch \ " # common for qtbase-native and nativesdk-qtbase SRC_URI += " \ file://0011-Always-build-uic.patch \ - file://0014-Add-external-hostbindir-option-native.patch \ + file://0012-Add-external-hostbindir-option-for-native-sdk.patch \ " # specific for nativesdk-qtbase SRC_URI += " \ - file://0012-configure-preserve-built-qmake-and-swap-with-native-.patch \ + file://0013-configure-preserve-built-qmake-and-swap-with-native-.patch \ " # CMake's toolchain configuration of nativesdk-qtbase @@ -38,4 +38,9 @@ SRC_URI += " \ file://OEQt5Toolchain.cmake \ " -SRCREV = "47326b9c5c38fea39f8539f50f32667d2c391b70" +SRCREV = "02c5657a7d6d30c6e874e29a0adcc38b58a45b7d" + +LIC_FILES_CHKSUM = "file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ + file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ + file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ + file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e" diff --git a/recipes-qt/qt5/qtbase-git/0001-Add-linux-oe-g-platform.patch b/recipes-qt/qt5/qtbase-git/0001-Add-linux-oe-g-platform.patch index 7a94dffe..1455c6b5 100644 --- a/recipes-qt/qt5/qtbase-git/0001-Add-linux-oe-g-platform.patch +++ b/recipes-qt/qt5/qtbase-git/0001-Add-linux-oe-g-platform.patch @@ -1,7 +1,7 @@ -From 81cd2947e9b1290498bdc2505a76fb053ff33be8 Mon Sep 17 00:00:00 2001 +From cfab0821397f5c41e123590b388c6f9c6834b1be Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Mon, 15 Apr 2013 04:29:32 +0200 -Subject: [PATCH 01/11] Add linux-oe-g++ platform +Subject: [PATCH 01/12] Add linux-oe-g++ platform * This qmake.conf unlike other platforms reads most variables from shell environment, because it's easier for qt recipes to export @@ -40,6 +40,7 @@ Subject: [PATCH 01/11] Add linux-oe-g++ platform Upstream-Status: Inappropriate [embedded specific] too OE specific, probably cannot be upstreamed +Change-Id: I0591ed5da0d61d7cf1509d420e6b293582f1863c Signed-off-by: Martin Jansa --- configure | 66 ++++++++++++++++------- @@ -51,7 +52,7 @@ Signed-off-by: Martin Jansa create mode 100644 mkspecs/linux-oe-g++/qplatformdefs.h diff --git a/configure b/configure -index 229fb4e..b7a6fe3 100755 +index 043d9fc..12fe2f0 100755 --- a/configure +++ b/configure @@ -316,6 +316,16 @@ getQMakeConf() @@ -195,7 +196,7 @@ index 6b37a04..dcf6025 100644 write_file($$QMAKE_CONFIG_LOG, msg, append) diff --git a/mkspecs/linux-oe-g++/qmake.conf b/mkspecs/linux-oe-g++/qmake.conf new file mode 100644 -index 0000000..ca26b10 +index 0000000..2ad2810 --- /dev/null +++ b/mkspecs/linux-oe-g++/qmake.conf @@ -0,0 +1,40 @@ @@ -346,5 +347,5 @@ index 0000000..dd12003 + +#endif // QPLATFORMDEFS_H -- -2.1.3 +2.3.0 diff --git a/recipes-qt/qt5/qtbase-git/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch b/recipes-qt/qt5/qtbase-git/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch index bae0dd3b..127eada2 100644 --- a/recipes-qt/qt5/qtbase-git/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch +++ b/recipes-qt/qt5/qtbase-git/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch @@ -1,7 +1,7 @@ -From aae38b0ff226f287ad40f6eb423f1b974f548b73 Mon Sep 17 00:00:00 2001 +From 060ea3b14cdf9c9224867d114344a4034edfd30f Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Sep 2012 17:22:30 +0200 -Subject: [PATCH 02/11] qlibraryinfo: allow to set qt.conf from the outside +Subject: [PATCH 02/12] qlibraryinfo: allow to set qt.conf from the outside using the environment Allow to set a qt.conf from the outside using the environment. This allows @@ -19,10 +19,10 @@ Signed-off-by: Martin Jansa 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp -index 7ca0aa7..d68c51b 100644 +index d592032..c418c5e 100644 --- a/src/corelib/global/qlibraryinfo.cpp +++ b/src/corelib/global/qlibraryinfo.cpp -@@ -139,7 +139,10 @@ QLibrarySettings::QLibrarySettings() +@@ -138,7 +138,10 @@ QLibrarySettings::QLibrarySettings() QSettings *QLibraryInfoPrivate::findConfiguration() { @@ -35,5 +35,5 @@ index 7ca0aa7..d68c51b 100644 if(!QFile::exists(qtconfig)) qtconfig = qt_libraryInfoFile(); -- -2.1.3 +2.3.0 diff --git a/recipes-qt/qt5/qtbase-git/0003-Add-external-hostbindir-option.patch b/recipes-qt/qt5/qtbase-git/0003-Add-external-hostbindir-option.patch index c633ea70..2957c4fd 100644 --- a/recipes-qt/qt5/qtbase-git/0003-Add-external-hostbindir-option.patch +++ b/recipes-qt/qt5/qtbase-git/0003-Add-external-hostbindir-option.patch @@ -1,7 +1,7 @@ -From f2d51e50a7fbdf485696d1b8b2d29e64c729c76b Mon Sep 17 00:00:00 2001 +From 4efa6ef7025ebd03379d76a419c118189e8e9d4e Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Sat, 6 Apr 2013 13:15:07 +0200 -Subject: [PATCH 03/11] Add -external-hostbindir option +Subject: [PATCH 03/12] Add -external-hostbindir option * when cross-compiling it's sometimes useful to use existing tools from machine (or in OpenEmbedded built with separate native recipe) when building for target @@ -27,18 +27,14 @@ Signed-off-by: Jonathan Liu configure | 15 +++++++++++++++ mkspecs/features/qt_functions.prf | 6 +++++- mkspecs/features/qt_tool.prf | 4 ++-- - qmake/property.cpp | 1 + qtbase.pro | 13 ++++++++++--- src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++--- - src/corelib/global/qlibraryinfo.cpp | 3 ++- - src/corelib/global/qlibraryinfo.h | 1 + src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++-- src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- - tools/configure/configureapp.cpp | 8 ++++++++ - 11 files changed, 50 insertions(+), 13 deletions(-) + 7 files changed, 38 insertions(+), 12 deletions(-) diff --git a/configure b/configure -index b7a6fe3..d715f6c 100755 +index 12fe2f0..7ac81d8 100755 --- a/configure +++ b/configure @@ -769,6 +769,7 @@ QT_HOST_BINS= @@ -99,10 +95,10 @@ index b7a6fe3..d715f6c 100755 "qt_hostspec=$shortspec", #endif diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf -index a9a622d..b6f1db0 100644 +index 7961f65..e11b23d 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf -@@ -191,7 +191,11 @@ defineTest(qtAddRpathLink) { +@@ -192,7 +192,11 @@ defineTest(qtAddRpathLink) { defineTest(qtPrepareTool) { cmd = $$eval(QT_TOOL.$${2}.binary) isEmpty(cmd) { @@ -133,18 +129,6 @@ index 1d3e88c..9b26adf 100644 isEmpty(MODULE):MODULE = $$TARGET !host_build|!force_bootstrap: MODULE_DEPENDS = $$replace(QT, -private$, _private) -diff --git a/qmake/property.cpp b/qmake/property.cpp -index 051e056..50da6ed 100644 ---- a/qmake/property.cpp -+++ b/qmake/property.cpp -@@ -67,6 +67,7 @@ static const struct { - { "QT_HOST_DATA", QLibraryInfo::HostDataPath, true }, - { "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, true }, - { "QT_HOST_LIBS", QLibraryInfo::HostLibrariesPath, true }, -+ { "QT_EXTERNAL_HOST_BINS", QLibraryInfo::ExternalHostBinariesPath, true }, - { "QMAKE_SPEC", QLibraryInfo::HostSpecPath, true }, - { "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true }, - }; diff --git a/qtbase.pro b/qtbase.pro index 6d0de44..ddf7478 100644 --- a/qtbase.pro @@ -179,7 +163,7 @@ index 6d0de44..ddf7478 100644 # If we are doing a prefix build, create a "module" pri which enables diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in -index 9bda70e..6e3605a 100644 +index 4387bed..6e1aa7a 100644 --- a/src/corelib/Qt5CoreConfigExtras.cmake.in +++ b/src/corelib/Qt5CoreConfigExtras.cmake.in @@ -5,7 +5,7 @@ if (NOT TARGET Qt5::qmake) @@ -209,39 +193,6 @@ index 9bda70e..6e3605a 100644 !!ENDIF _qt5_Core_check_file_exists(${imported_location}) -diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp -index d68c51b..7191159 100644 ---- a/src/corelib/global/qlibraryinfo.cpp -+++ b/src/corelib/global/qlibraryinfo.cpp -@@ -349,7 +349,7 @@ QLibraryInfo::isDebugBuild() - */ - - static const struct { -- char key[19], value[13]; -+ char key[21], value[13]; - } qtConfEntries[] = { - { "Prefix", "." }, - { "Documentation", "doc" }, // should be ${Data}/doc -@@ -375,6 +375,7 @@ static const struct { - { "HostBinaries", "bin" }, - { "HostLibraries", "lib" }, - { "HostData", "." }, -+ { "ExternalHostBinaries", "" }, - { "TargetSpec", "" }, - { "HostSpec", "" }, - #endif -diff --git a/src/corelib/global/qlibraryinfo.h b/src/corelib/global/qlibraryinfo.h -index 543c4b3..a02e03a 100644 ---- a/src/corelib/global/qlibraryinfo.h -+++ b/src/corelib/global/qlibraryinfo.h -@@ -80,6 +80,7 @@ public: - HostBinariesPath, - HostLibrariesPath, - HostDataPath, -+ ExternalHostBinariesPath, - TargetSpecPath, - HostSpecPath, - LastHostPath = HostSpecPath, diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in index 1d94715..301af8f 100644 --- a/src/dbus/Qt5DBusConfigExtras.cmake.in @@ -277,32 +228,6 @@ index 99d87e2..5621dc0 100644 !!ENDIF _qt5_Widgets_check_file_exists(${imported_location}) -diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp -index 92422c2..d0a62c8 100644 ---- a/tools/configure/configureapp.cpp -+++ b/tools/configure/configureapp.cpp -@@ -1191,6 +1191,13 @@ void Configure::parseCmdLine() - dictionary[ "QT_EXT_PREFIX" ] = configCmdLine.at(i); - } - -+ else if (configCmdLine.at(i) == "-external-hostbindir") { -+ ++i; -+ if (i == argCount) -+ break; -+ dictionary[ "QT_EXTERNAL_HOST_BINS" ] = configCmdLine.at(i); -+ } -+ - else if (configCmdLine.at(i) == "-make-tool") { - ++i; - if (i == argCount) -@@ -3995,6 +4002,7 @@ void Configure::generateQConfigCpp() - << " \"qt_hbinpath=" << formatPath(dictionary["QT_HOST_BINS"]) << "\"," << endl - << " \"qt_hlibpath=" << formatPath(dictionary["QT_HOST_LIBS"]) << "\"," << endl - << " \"qt_hdatpath=" << formatPath(dictionary["QT_HOST_DATA"]) << "\"," << endl -+ << " \"qt_ebinpath=" << formatPath(dictionary["QT_EXTERNAL_HOST_BINS"]) << "\"," << endl - << " \"qt_targspec=" << targSpec << "\"," << endl - << " \"qt_hostspec=" << hostSpec << "\"," << endl - << "#endif" << endl -- -2.1.3 +2.3.0 diff --git a/recipes-qt/qt5/qtbase-git/0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch b/recipes-qt/qt5/qtbase-git/0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch deleted file mode 100644 index 83694b7d..00000000 --- a/recipes-qt/qt5/qtbase-git/0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 13a61389aa33fdfd5d9a1adf824d98c5ebf1cdff Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Sat, 27 Apr 2013 22:33:33 +0200 -Subject: [PATCH 04/11] configureapp: Prefix default LIBDIRS and INCDIRS with - SYSROOT - -Upstream-Status: Pending - again a bit OE specific ---- - tools/configure/configureapp.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp -index d0a62c8..b3f3ff8 100644 ---- a/tools/configure/configureapp.cpp -+++ b/tools/configure/configureapp.cpp -@@ -3384,8 +3384,8 @@ void Configure::generateQConfigPri() - configStream << " QT_ARCH = " << dictionary["QT_ARCH"] << endl; - if (dictionary.contains("XQMAKESPEC") && !dictionary["XQMAKESPEC"].startsWith("wince")) { - // FIXME: add detection -- configStream << " QMAKE_DEFAULT_LIBDIRS = /lib /usr/lib" << endl; -- configStream << " QMAKE_DEFAULT_INCDIRS = /usr/include /usr/local/include" << endl; -+ configStream << " QMAKE_DEFAULT_LIBDIRS = $$[QT_SYSROOT]/lib $$[QT_SYSROOT]/usr/lib" << endl; -+ configStream << " QMAKE_DEFAULT_INCDIRS = $$[QT_SYSROOT]/usr/include $$[QT_SYSROOT]/usr/local/include" << endl; - } - configStream << "}" << endl; - configStream << "QT_CONFIG += " << qtConfig.join(' ') << endl; --- -2.1.3 - diff --git a/recipes-qt/qt5/qtbase-git/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch b/recipes-qt/qt5/qtbase-git/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch new file mode 100644 index 00000000..8790ae65 --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch @@ -0,0 +1,114 @@ +From efd941d9d21a7f9a41dcabf7ea88481c3563ae93 Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Sat, 27 Apr 2013 23:15:37 +0200 +Subject: [PATCH 04/12] qt_module: Fix pkgconfig and libtool replacements +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* in situation like this: + QT_SYSROOT:/OE/oe-core/tmp-eglibc/sysroots/qemuarm + QT_INSTALL_LIBS:/OE/oe-core/tmp-eglibc/sysroots/qemuarm/usr/lib + QT_INSTALL_LIBS/raw:/usr/lib + QT_INSTALL_LIBS/get:/OE/oe-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtbase/5.0.0-r0.0/build/lib + + I don't want the replacement like this: + sed + -e "s,/OE/oe-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtbase/5.0.0-r0.0/build/include,/usr/include/qt5,g" + -e "s,/OE/oe-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtbase/5.0.0-r0.0/build/lib,/usr/lib,g" + "../../lib/pkgconfig/Qt5Core.pc" + >"/OE/oe-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtbase/5.0.0-r0.0/image/OE/oe-core/tmp-eglibc/sysroots/qemuarm/usr/lib/pkgconfig/Qt5Core.pc" + because that way I'll end with -L/usr/lib in .pc file which is + cross-compile unfriendly, keeping ${libdir}/${includedir} works better + in my case + +* qt_module: Fix paths in .prl files +* qmake does not prefix them with QT_SYSROOT when using them + so e.g. when building qtdeclarative we get -L/usr/lib to LINKAGE + variable, which is unsafe for cross-compilation +* writting QT_SYSROOT in .prl files is dangerous for sstate when + builds are in different directories, so we need + SSTATE_SCAN_FILES += "*.pri *.prl" + to make them relocateble + +* fix paths in packageconfig files + This reverts parts of: + + enable path replacement in installed prl files on all platforms + + Task-number: QTBUG-33794 + Change-Id: Id0d38715673b8a1c0c034e9c15783eb255c4315b + Reviewed-by: Joerg Bornemann + +* to debug this, rebuild qtbase and read build/src/corelib/Makefile +* this is example of broken install_target rule (added line feeds): + -$(SED) -e s,/OE/5.3.1-r0/build/lib,/usr/lib,g + -e 's,/OE/5.3.1-r0/build/include,$$\{includedir},g' + -e 's,/OE/5.3.1-r0/build/lib,$$\{libdir},g' + "../../lib/pkgconfig/Qt5Core.pc" + >"$(INSTALL_ROOT)/usr/lib/pkgconfig/Qt5Core.pc" + change .prf files, create copy of WORKDIR, re-excecute only + do_configure task and compare generated Makefile, repeat until + replace in generated Makefile works ok, then refresh patch and + try complete rebuild for qtbase +* if everything is ok, then try: + image $ grep -R "\-L/usr" . + image $ grep -R "\-I/usr" . + and it should return only few cases of + qmake.conf:QMAKE_LFLAGS_THREAD = -L/usr/lib/threads + for aix* platformas + +Change-Id: Ie1c94b15f2a4e736b65b4d0924d99eb2a7d92a6c +Signed-off-by: Martin Jansa +Signed-off-by: Andreas Müller +--- + mkspecs/features/qt_common.prf | 2 +- + mkspecs/features/qt_module.prf | 15 +++++++++++++++ + 2 files changed, 16 insertions(+), 1 deletion(-) + +diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf +index eb65e73..4db40d0 100644 +--- a/mkspecs/features/qt_common.prf ++++ b/mkspecs/features/qt_common.prf +@@ -33,7 +33,7 @@ contains(TEMPLATE, .*lib) { + lib_replace.replace = + } else { + lib_replace.match = $$rplbase/lib +- lib_replace.replace = $$qt_libdir ++ lib_replace.replace = "\$$\\{libdir}" + } + lib_replace.CONFIG = path + QMAKE_PRL_INSTALL_REPLACE += lib_replace +diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf +index d213f9e..915c596 100644 +--- a/mkspecs/features/qt_module.prf ++++ b/mkspecs/features/qt_module.prf +@@ -192,10 +192,25 @@ unix|mingw { + QMAKE_PKGCONFIG_DESCRIPTION = $$replace(TARGET, ^Qt, "Qt ") module + QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace + ++ pkgconfig_include_replace.match = $$rplbase/include ++ pkgconfig_include_replace.replace = "\$$\\{includedir}" ++ pkgconfig_include_replace.CONFIG = path ++ QMAKE_PKGCONFIG_INSTALL_REPLACE += pkgconfig_include_replace ++ + unix { + CONFIG += create_libtool explicitlib + QMAKE_LIBTOOL_LIBDIR = $$qt_libdir + QMAKE_LIBTOOL_INSTALL_REPLACE += lib_replace ++ # add '=' as sysroot in .la files ++ lafile_replace.match = "-L\$${libdir}" ++ lafile_replace.replace = "-L=\$$\\{libdir}" ++ lafile_replace.CONFIG = path ++ QMAKE_LIBTOOL_INSTALL_REPLACE += lafile_replace ++ # drop -L/usr/lib in .prl files ++ prl_replace.match = "-L\$${libdir}" ++ prl_replace.replace = "" ++ prl_replace.CONFIG = path ++ QMAKE_PRL_INSTALL_REPLACE += prl_replace + } + } + +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch b/recipes-qt/qt5/qtbase-git/0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch new file mode 100644 index 00000000..b7bb8c89 --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch @@ -0,0 +1,97 @@ +From 4d32129ba11c6b7d4cfd4d037e3e3b73fd32b6b5 Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Mon, 21 Apr 2014 19:22:04 +0200 +Subject: [PATCH 05/12] Revert "eglfs: Print the chosen config in debug mode" + +With this change the build is failing with: +| In file included from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/eglplatform.h:118:0, +| from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/egl.h:36, +| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext_p.h:51, +| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext.cpp:34: +| ../../include/QtCore/../../../git/src/corelib/io/qtextstream.h:72:10: error: expected identifier before 'int' +| enum Status { +| ^ +| In file included from ../../include/QtCore/qtextstream.h:1:0, +| from ../../include/QtCore/../../../git/src/corelib/io/qdebug.h:42, +| from ../../include/QtCore/qdebug.h:1, +| from ../../include/QtCore/QDebug:1, +| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext.cpp:40: +| ../../include/QtCore/../../../git/src/corelib/io/qtextstream.h:72:17: error: expected unqualified-id before '{' token +| enum Status { +| ^ +| Makefile:3896: recipe for target '.obj/qeglplatformcontext.o' failed +| make[2]: *** [.obj/qeglplatformcontext.o] Error 1 +| make[2]: *** Waiting for unfinished jobs.... +| /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:196:5: error: 'Display' redeclared as different kind of symbol +| Display +| ^ +| In file included from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/eglplatform.h:118:0, +| from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/egl.h:36, +| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration_p.h:51, +| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:55: +| /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/X11/Xlib.h:499:26: note: previous declaration 'typedef struct _XDisplay Display' +| typedef struct _XDisplay Display; +| ^ +| /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp: In member function 'virtual void* QEGLPlatformIntegration::nativeResourceForScreen(const QByteArray&, QScreen*)': +| /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:239:17: error: expected primary-expression before ':' token +| case Display: +| ^ +| Makefile:5486: recipe for target '.obj/qeglplatformintegration.o' failed + +This reverts commit dc685cf6331f5fb46285cf10d6464c2ecf41f73e. + +Will be partially resolved in newer revision with: +https://codereview.qt-project.org/96220 + +Change-Id: I7a6a926b7525d4f137824c71f2ec8cd089c21f13 +Signed-off-by: Martin Jansa +--- + src/platformsupport/eglconvenience/qeglconvenience.cpp | 4 +++- + src/platformsupport/eglconvenience/qeglplatformcontext.cpp | 7 ------- + 2 files changed, 3 insertions(+), 8 deletions(-) + +diff --git a/src/platformsupport/eglconvenience/qeglconvenience.cpp b/src/platformsupport/eglconvenience/qeglconvenience.cpp +index c1a491c..7a0fc87 100644 +--- a/src/platformsupport/eglconvenience/qeglconvenience.cpp ++++ b/src/platformsupport/eglconvenience/qeglconvenience.cpp +@@ -443,9 +443,11 @@ void q_printEglConfig(EGLDisplay display, EGLConfig config) + for (index = 0; attrs[index].attr != -1; ++index) { + EGLint value; + if (eglGetConfigAttrib(display, config, attrs[index].attr, &value)) { +- qDebug("\t%s: %d", attrs[index].name, (int)value); ++ qWarning("\t%s: %d\n", attrs[index].name, (int)value); + } + } ++ ++ qWarning("\n"); + } + + #ifdef Q_OS_UNIX +diff --git a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp +index 7cc3300..ccbd974a 100644 +--- a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp ++++ b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp +@@ -37,7 +37,6 @@ + #include + #include + #include +-#include + + QT_BEGIN_NAMESPACE + +@@ -181,12 +180,6 @@ void QEGLPlatformContext::init(const QSurfaceFormat &format, QPlatformOpenGLCont + return; + } + +- static const bool printConfig = qgetenv("QT_QPA_EGLFS_DEBUG").toInt(); +- if (printConfig) { +- qDebug() << "Created context for format" << format << "with config:"; +- q_printEglConfig(m_eglDisplay, m_eglConfig); +- } +- + updateFormatFromGL(); + } + +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0005-qt_module-Fix-pkgconfig-and-libtool-replacements.patch b/recipes-qt/qt5/qtbase-git/0005-qt_module-Fix-pkgconfig-and-libtool-replacements.patch deleted file mode 100644 index a6e90894..00000000 --- a/recipes-qt/qt5/qtbase-git/0005-qt_module-Fix-pkgconfig-and-libtool-replacements.patch +++ /dev/null @@ -1,114 +0,0 @@ -From 5778f98f990781710e72be8275dae32a7999330d Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Sat, 27 Apr 2013 23:15:37 +0200 -Subject: [PATCH 05/11] qt_module: Fix pkgconfig and libtool replacements -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -* in situation like this: - QT_SYSROOT:/OE/oe-core/tmp-eglibc/sysroots/qemuarm - QT_INSTALL_LIBS:/OE/oe-core/tmp-eglibc/sysroots/qemuarm/usr/lib - QT_INSTALL_LIBS/raw:/usr/lib - QT_INSTALL_LIBS/get:/OE/oe-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtbase/5.0.0-r0.0/build/lib - - I don't want the replacement like this: - sed - -e "s,/OE/oe-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtbase/5.0.0-r0.0/build/include,/usr/include/qt5,g" - -e "s,/OE/oe-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtbase/5.0.0-r0.0/build/lib,/usr/lib,g" - "../../lib/pkgconfig/Qt5Core.pc" - >"/OE/oe-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtbase/5.0.0-r0.0/image/OE/oe-core/tmp-eglibc/sysroots/qemuarm/usr/lib/pkgconfig/Qt5Core.pc" - because that way I'll end with -L/usr/lib in .pc file which is - cross-compile unfriendly, keeping ${libdir}/${includedir} works better - in my case - -* qt_module: Fix paths in .prl files -* qmake does not prefix them with QT_SYSROOT when using them - so e.g. when building qtdeclarative we get -L/usr/lib to LINKAGE - variable, which is unsafe for cross-compilation -* writting QT_SYSROOT in .prl files is dangerous for sstate when - builds are in different directories, so we need - SSTATE_SCAN_FILES += "*.pri *.prl" - to make them relocateble - -* fix paths in packageconfig files - This reverts parts of: - - enable path replacement in installed prl files on all platforms - - Task-number: QTBUG-33794 - Change-Id: Id0d38715673b8a1c0c034e9c15783eb255c4315b - Reviewed-by: Joerg Bornemann - -* to debug this, rebuild qtbase and read build/src/corelib/Makefile -* this is example of broken install_target rule (added line feeds): - -$(SED) -e s,/OE/5.3.1-r0/build/lib,/usr/lib,g - -e 's,/OE/5.3.1-r0/build/include,$$\{includedir},g' - -e 's,/OE/5.3.1-r0/build/lib,$$\{libdir},g' - "../../lib/pkgconfig/Qt5Core.pc" - >"$(INSTALL_ROOT)/usr/lib/pkgconfig/Qt5Core.pc" - change .prf files, create copy of WORKDIR, re-excecute only - do_configure task and compare generated Makefile, repeat until - replace in generated Makefile works ok, then refresh patch and - try complete rebuild for qtbase -* if everything is ok, then try: - image $ grep -R "\-L/usr" . - image $ grep -R "\-I/usr" . - and it should return only few cases of - qmake.conf:QMAKE_LFLAGS_THREAD = -L/usr/lib/threads - for aix* platformas - -Change-Id: Ie1c94b15f2a4e736b65b4d0924d99eb2a7d92a6c -Signed-off-by: Martin Jansa -Signed-off-by: Andreas Müller ---- - mkspecs/features/qt_common.prf | 2 +- - mkspecs/features/qt_module.prf | 15 +++++++++++++++ - 2 files changed, 16 insertions(+), 1 deletion(-) - -diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf -index af9d6ca..a4781d6 100644 ---- a/mkspecs/features/qt_common.prf -+++ b/mkspecs/features/qt_common.prf -@@ -33,7 +33,7 @@ contains(TEMPLATE, .*lib) { - lib_replace.replace = - } else { - lib_replace.match = $$rplbase/lib -- lib_replace.replace = $$qt_libdir -+ lib_replace.replace = "\$$\\{libdir}" - } - lib_replace.CONFIG = path - QMAKE_PRL_INSTALL_REPLACE += lib_replace -diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf -index d213f9e..915c596 100644 ---- a/mkspecs/features/qt_module.prf -+++ b/mkspecs/features/qt_module.prf -@@ -192,10 +192,25 @@ unix|mingw { - QMAKE_PKGCONFIG_DESCRIPTION = $$replace(TARGET, ^Qt, "Qt ") module - QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace - -+ pkgconfig_include_replace.match = $$rplbase/include -+ pkgconfig_include_replace.replace = "\$$\\{includedir}" -+ pkgconfig_include_replace.CONFIG = path -+ QMAKE_PKGCONFIG_INSTALL_REPLACE += pkgconfig_include_replace -+ - unix { - CONFIG += create_libtool explicitlib - QMAKE_LIBTOOL_LIBDIR = $$qt_libdir - QMAKE_LIBTOOL_INSTALL_REPLACE += lib_replace -+ # add '=' as sysroot in .la files -+ lafile_replace.match = "-L\$${libdir}" -+ lafile_replace.replace = "-L=\$$\\{libdir}" -+ lafile_replace.CONFIG = path -+ QMAKE_LIBTOOL_INSTALL_REPLACE += lafile_replace -+ # drop -L/usr/lib in .prl files -+ prl_replace.match = "-L\$${libdir}" -+ prl_replace.replace = "" -+ prl_replace.CONFIG = path -+ QMAKE_PRL_INSTALL_REPLACE += prl_replace - } - } - --- -2.1.3 - diff --git a/recipes-qt/qt5/qtbase-git/0006-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch b/recipes-qt/qt5/qtbase-git/0006-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch deleted file mode 100644 index 042d7638..00000000 --- a/recipes-qt/qt5/qtbase-git/0006-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch +++ /dev/null @@ -1,97 +0,0 @@ -From 4a067c162d08596e3ec89dcfb3ecdf197b1bf22a Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Mon, 21 Apr 2014 19:22:04 +0200 -Subject: [PATCH 06/11] Revert "eglfs: Print the chosen config in debug mode" - -With this change the build is failing with: -| In file included from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/eglplatform.h:118:0, -| from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/egl.h:36, -| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext_p.h:51, -| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext.cpp:34: -| ../../include/QtCore/../../../git/src/corelib/io/qtextstream.h:72:10: error: expected identifier before 'int' -| enum Status { -| ^ -| In file included from ../../include/QtCore/qtextstream.h:1:0, -| from ../../include/QtCore/../../../git/src/corelib/io/qdebug.h:42, -| from ../../include/QtCore/qdebug.h:1, -| from ../../include/QtCore/QDebug:1, -| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext.cpp:40: -| ../../include/QtCore/../../../git/src/corelib/io/qtextstream.h:72:17: error: expected unqualified-id before '{' token -| enum Status { -| ^ -| Makefile:3896: recipe for target '.obj/qeglplatformcontext.o' failed -| make[2]: *** [.obj/qeglplatformcontext.o] Error 1 -| make[2]: *** Waiting for unfinished jobs.... -| /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:196:5: error: 'Display' redeclared as different kind of symbol -| Display -| ^ -| In file included from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/eglplatform.h:118:0, -| from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/egl.h:36, -| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration_p.h:51, -| from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:55: -| /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/X11/Xlib.h:499:26: note: previous declaration 'typedef struct _XDisplay Display' -| typedef struct _XDisplay Display; -| ^ -| /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp: In member function 'virtual void* QEGLPlatformIntegration::nativeResourceForScreen(const QByteArray&, QScreen*)': -| /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:239:17: error: expected primary-expression before ':' token -| case Display: -| ^ -| Makefile:5486: recipe for target '.obj/qeglplatformintegration.o' failed - -This reverts commit dc685cf6331f5fb46285cf10d6464c2ecf41f73e. - -Will be partially resolved in newer revision with: -https://codereview.qt-project.org/96220 - -Change-Id: I7a6a926b7525d4f137824c71f2ec8cd089c21f13 -Signed-off-by: Martin Jansa ---- - src/platformsupport/eglconvenience/qeglconvenience.cpp | 4 +++- - src/platformsupport/eglconvenience/qeglplatformcontext.cpp | 7 ------- - 2 files changed, 3 insertions(+), 8 deletions(-) - -diff --git a/src/platformsupport/eglconvenience/qeglconvenience.cpp b/src/platformsupport/eglconvenience/qeglconvenience.cpp -index c1a491c..7a0fc87 100644 ---- a/src/platformsupport/eglconvenience/qeglconvenience.cpp -+++ b/src/platformsupport/eglconvenience/qeglconvenience.cpp -@@ -443,9 +443,11 @@ void q_printEglConfig(EGLDisplay display, EGLConfig config) - for (index = 0; attrs[index].attr != -1; ++index) { - EGLint value; - if (eglGetConfigAttrib(display, config, attrs[index].attr, &value)) { -- qDebug("\t%s: %d", attrs[index].name, (int)value); -+ qWarning("\t%s: %d\n", attrs[index].name, (int)value); - } - } -+ -+ qWarning("\n"); - } - - #ifdef Q_OS_UNIX -diff --git a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp -index 7cc3300..ccbd974 100644 ---- a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp -+++ b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp -@@ -37,7 +37,6 @@ - #include - #include - #include --#include - - QT_BEGIN_NAMESPACE - -@@ -181,12 +180,6 @@ void QEGLPlatformContext::init(const QSurfaceFormat &format, QPlatformOpenGLCont - return; - } - -- static const bool printConfig = qgetenv("QT_QPA_EGLFS_DEBUG").toInt(); -- if (printConfig) { -- qDebug() << "Created context for format" << format << "with config:"; -- q_printEglConfig(m_eglDisplay, m_eglConfig); -- } -- - updateFormatFromGL(); - } - --- -2.1.3 - diff --git a/recipes-qt/qt5/qtbase-git/0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch b/recipes-qt/qt5/qtbase-git/0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch new file mode 100644 index 00000000..386d2e87 --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch @@ -0,0 +1,30 @@ +From 29c6088243796faf0b4115a93239d4ada9182757 Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Wed, 19 Mar 2014 18:32:28 +0100 +Subject: [PATCH 06/12] qeglplatformintegration: Undefine CursorShape from X.h + +Signed-off-by: Martin Jansa +--- + src/platformsupport/eglconvenience/qeglplatformintegration_p.h | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/platformsupport/eglconvenience/qeglplatformintegration_p.h b/src/platformsupport/eglconvenience/qeglplatformintegration_p.h +index 2b5d5f5..a0aab03 100644 +--- a/src/platformsupport/eglconvenience/qeglplatformintegration_p.h ++++ b/src/platformsupport/eglconvenience/qeglplatformintegration_p.h +@@ -50,6 +50,12 @@ + #include + #include + ++// Undefine CursorShape from X.h, which is causing breakage in Qt::CursorShape in platformsupport/eglconvenience/ ++// /usr/include/X11/X.h:#define CursorShape 0 /* largest size that can be displayed */ ++#ifdef CursorShape ++#undef CursorShape ++#endif ++ + QT_BEGIN_NAMESPACE + + class QEGLPlatformScreen; +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0007-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/qtbase-git/0007-configure-bump-path-length-from-256-to-512-character.patch new file mode 100644 index 00000000..d6731d63 --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0007-configure-bump-path-length-from-256-to-512-character.patch @@ -0,0 +1,29 @@ +From 9eadba2398bfba10209f25b1c2e0ceb04e04957c Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko +Date: Mon, 11 Nov 2013 20:27:30 -0500 +Subject: [PATCH 07/12] configure: bump path length from 256 to 512 characters + +Increase the path length that gets hardcoded into generated config.cpp file +from 256 to 512 characters, as nativesdk path can be quite long. + +Signed-off-by: Denys Dmytriyenko +--- + configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure b/configure +index 7ac81d8..8b42b8e 100755 +--- a/configure ++++ b/configure +@@ -3622,7 +3622,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ + static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; + + /* Installation Info */ +-static const char qt_configure_prefix_path_strs[][256 + 12] = { ++static const char qt_configure_prefix_path_strs[][512 + 12] = { + #ifndef QT_BUILD_QMAKE + "qt_prfxpath=$QT_SYSROOT_PREFIX", + "qt_docspath=$QT_SYSROOT_DOCS", +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0007-qeglplatformintegration-Undefine-CursorShape-from-X..patch b/recipes-qt/qt5/qtbase-git/0007-qeglplatformintegration-Undefine-CursorShape-from-X..patch deleted file mode 100644 index c528f0c9..00000000 --- a/recipes-qt/qt5/qtbase-git/0007-qeglplatformintegration-Undefine-CursorShape-from-X..patch +++ /dev/null @@ -1,30 +0,0 @@ -From 8e152449beb18454347cfdb300c50d113fa48383 Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Wed, 19 Mar 2014 18:32:28 +0100 -Subject: [PATCH 07/11] qeglplatformintegration: Undefine CursorShape from X.h - -Signed-off-by: Martin Jansa ---- - src/platformsupport/eglconvenience/qeglplatformintegration_p.h | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/src/platformsupport/eglconvenience/qeglplatformintegration_p.h b/src/platformsupport/eglconvenience/qeglplatformintegration_p.h -index 4d7adce..c9b6873 100644 ---- a/src/platformsupport/eglconvenience/qeglplatformintegration_p.h -+++ b/src/platformsupport/eglconvenience/qeglplatformintegration_p.h -@@ -50,6 +50,12 @@ - #include - #include - -+// Undefine CursorShape from X.h, which is causing breakage in Qt::CursorShape in platformsupport/eglconvenience/ -+// /usr/include/X11/X.h:#define CursorShape 0 /* largest size that can be displayed */ -+#ifdef CursorShape -+#undef CursorShape -+#endif -+ - QT_BEGIN_NAMESPACE - - class QEGLPlatformScreen; --- -2.1.3 - diff --git a/recipes-qt/qt5/qtbase-git/0008-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/qtbase-git/0008-configure-bump-path-length-from-256-to-512-character.patch deleted file mode 100644 index c20d6f15..00000000 --- a/recipes-qt/qt5/qtbase-git/0008-configure-bump-path-length-from-256-to-512-character.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 3a31a14c9c244a22337f22d083a680f69a1b1ce8 Mon Sep 17 00:00:00 2001 -From: Denys Dmytriyenko -Date: Mon, 11 Nov 2013 20:27:30 -0500 -Subject: [PATCH 08/11] configure: bump path length from 256 to 512 characters - -Increase the path length that gets hardcoded into generated config.cpp file -from 256 to 512 characters, as nativesdk path can be quite long. - -Signed-off-by: Denys Dmytriyenko ---- - configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure b/configure -index d715f6c..bd43281 100755 ---- a/configure -+++ b/configure -@@ -3622,7 +3622,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ - static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; - - /* Installation Info */ --static const char qt_configure_prefix_path_strs[][256 + 12] = { -+static const char qt_configure_prefix_path_strs[][512 + 12] = { - #ifndef QT_BUILD_QMAKE - "qt_prfxpath=$QT_SYSROOT_PREFIX", - "qt_docspath=$QT_SYSROOT_DOCS", --- -2.1.3 - diff --git a/recipes-qt/qt5/qtbase-git/0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch b/recipes-qt/qt5/qtbase-git/0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch new file mode 100644 index 00000000..650dd9dd --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch @@ -0,0 +1,72 @@ +From b6776c9f0da5988013d5195592b84e313b79daab Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Wed, 5 Feb 2014 18:35:08 +0100 +Subject: [PATCH 08/12] eglfs: fix egl error for platforms only supporting one + window/surface +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +running qmlscene -platform eglfs .qml + +caused + +EGL Error : Could not create the egl surface: error = 0x3003 + +Rebased version of [1-2] + +Upstream-Status: unknown + +[1] http://repository.timesys.com/buildsources/q/qt-everywhere-opensource/qt-everywhere-opensource-5.1.1/qt-everywhere-opensource-5.1.1-qeglfswindow.cpp.patch +[2] https://github.com/prabindh/qt-configs/blob/master/qt5_1.0_Feb13/qeglfswindow.cpp.patch + +Signed-off-by: Andreas Müller +Signed-off-by: Martin Jansa +--- + src/plugins/platforms/eglfs/qeglfswindow.cpp | 16 +++++++++++++++- + 1 file changed, 15 insertions(+), 1 deletion(-) + +diff --git a/src/plugins/platforms/eglfs/qeglfswindow.cpp b/src/plugins/platforms/eglfs/qeglfswindow.cpp +index 39a3ef9..2c05979 100644 +--- a/src/plugins/platforms/eglfs/qeglfswindow.cpp ++++ b/src/plugins/platforms/eglfs/qeglfswindow.cpp +@@ -68,6 +68,15 @@ void QEglFSWindow::create() + + m_flags = Created; + ++ static EGLSurface __singleWindowSurface; ++ if(QEglFSHooks::hooks() && ! QEglFSHooks::hooks()->hasCapability(QPlatformIntegration::MultipleWindows) && (__singleWindowSurface)) { ++ m_surface = __singleWindowSurface; ++#ifdef QEGL_EXTRA_DEBUG ++ qWarning("Surface recreate request, re-using %x\n", m_surface); ++#endif ++ return; ++ } ++ + if (window()->type() == Qt::Desktop) + return; + +@@ -81,7 +90,7 @@ void QEglFSWindow::create() + return; + } + +-#if !defined(Q_OS_ANDROID) || defined(Q_OS_ANDROID_NO_SDK) ++#if !defined(Q_OS_ANDROID) || defined(Q_OS_ANDROID_NO_SDK) || defined(EGL_API_FB) + // We can have either a single OpenGL window or multiple raster windows. + // Other combinations cannot work. + qFatal("EGLFS: OpenGL windows cannot be mixed with others."); +@@ -101,6 +110,11 @@ void QEglFSWindow::create() + + resetSurface(); + ++ if(QEglFSHooks::hooks() && !QEglFSHooks::hooks()->hasCapability(QPlatformIntegration::MultipleWindows)) ++ { ++ __singleWindowSurface = m_surface; ++ } ++ + screen->setPrimarySurface(m_surface); + + if (isRaster()) { +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0009-QOpenGLPaintDevice-sub-area-support.patch b/recipes-qt/qt5/qtbase-git/0009-QOpenGLPaintDevice-sub-area-support.patch new file mode 100644 index 00000000..e30c06fd --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0009-QOpenGLPaintDevice-sub-area-support.patch @@ -0,0 +1,157 @@ +From 010322a4ca16bcf1ea357689be4a94145733325d Mon Sep 17 00:00:00 2001 +From: Jani Hautakangas +Date: Thu, 16 May 2013 09:52:07 +0300 +Subject: [PATCH 09/12] QOpenGLPaintDevice sub-area support + +Allows creating QOpenGLPaintDevice targetting sub-area +of binded framebuffer. + +Upstream-Status: Pending + +Change-Id: Ida2f079aa1ac0b87d36b54129e226399dbcdda80 + +Signed-off-by: Martin Jansa +--- + src/gui/opengl/qopenglpaintdevice.cpp | 11 +++++++++++ + src/gui/opengl/qopenglpaintdevice.h | 2 ++ + src/gui/opengl/qopenglpaintdevice_p.h | 1 + + src/gui/opengl/qopenglpaintengine.cpp | 9 +++++++-- + src/gui/opengl/qopenglpaintengine_p.h | 1 + + src/gui/opengl/qopengltextureglyphcache.cpp | 2 +- + 6 files changed, 23 insertions(+), 3 deletions(-) + +diff --git a/src/gui/opengl/qopenglpaintdevice.cpp b/src/gui/opengl/qopenglpaintdevice.cpp +index a08d26f..cff3155 100644 +--- a/src/gui/opengl/qopenglpaintdevice.cpp ++++ b/src/gui/opengl/qopenglpaintdevice.cpp +@@ -135,6 +135,12 @@ QOpenGLPaintDevice::QOpenGLPaintDevice(int width, int height) + { + } + ++QOpenGLPaintDevice::QOpenGLPaintDevice(int x, int y, int width, int height) ++ : d_ptr(new QOpenGLPaintDevicePrivate(QSize(width, height))) ++{ ++ d_ptr->offset = QPoint(x,y); ++} ++ + /*! + \internal + */ +@@ -212,6 +218,11 @@ QOpenGLContext *QOpenGLPaintDevice::context() const + return d_ptr->ctx; + } + ++QPoint QOpenGLPaintDevice::offset() const ++{ ++ return d_ptr->offset; ++} ++ + /*! + Returns the pixel size of the paint device. + +diff --git a/src/gui/opengl/qopenglpaintdevice.h b/src/gui/opengl/qopenglpaintdevice.h +index 10cee84..a6683c5 100644 +--- a/src/gui/opengl/qopenglpaintdevice.h ++++ b/src/gui/opengl/qopenglpaintdevice.h +@@ -53,12 +53,14 @@ public: + QOpenGLPaintDevice(); + explicit QOpenGLPaintDevice(const QSize &size); + QOpenGLPaintDevice(int width, int height); ++ QOpenGLPaintDevice(int x, int y, int width, int height); + virtual ~QOpenGLPaintDevice(); + + int devType() const { return QInternal::OpenGL; } + QPaintEngine *paintEngine() const; + + QOpenGLContext *context() const; ++ QPoint offset() const; + QSize size() const; + void setSize(const QSize &size); + void setDevicePixelRatio(qreal devicePixelRatio); +diff --git a/src/gui/opengl/qopenglpaintdevice_p.h b/src/gui/opengl/qopenglpaintdevice_p.h +index 0b01129..211f2f3 100644 +--- a/src/gui/opengl/qopenglpaintdevice_p.h ++++ b/src/gui/opengl/qopenglpaintdevice_p.h +@@ -65,6 +65,7 @@ public: + + public: + QSize size; ++ QPoint offset; + QOpenGLContext *ctx; + + qreal dpmx; +diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp +index 8eeaa31..e17520e 100644 +--- a/src/gui/opengl/qopenglpaintengine.cpp ++++ b/src/gui/opengl/qopenglpaintengine.cpp +@@ -2080,7 +2080,10 @@ bool QOpenGL2PaintEngineEx::begin(QPaintDevice *pdev) + for (int i = 0; i < QT_GL_VERTEX_ARRAY_TRACKED_COUNT; ++i) + d->vertexAttributeArraysEnabledState[i] = false; + ++ const QPoint offset = d->device->offset(); + const QSize sz = d->device->size(); ++ d->x = offset.x(); ++ d->y = offset.y(); + d->width = sz.width(); + d->height = sz.height(); + d->mode = BrushDrawingMode; +@@ -2167,7 +2170,7 @@ void QOpenGL2PaintEngineEx::ensureActive() + d->device->ensureActiveTarget(); + + d->transferMode(BrushDrawingMode); +- d->funcs.glViewport(0, 0, d->width, d->height); ++ d->funcs.glViewport(d->x, d->y, d->width, d->height); + d->needsSync = false; + d->shaderManager->setDirty(); + d->syncGlState(); +@@ -2209,6 +2212,7 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest() + if (bounds == QRect(0, 0, width, height)) { + funcs.glDisable(GL_SCISSOR_TEST); + } else { ++ bounds = QRect(bounds.x(), bounds.y(), bounds.width(), bounds.height()); + funcs.glEnable(GL_SCISSOR_TEST); + setScissor(bounds); + } +@@ -2217,12 +2221,13 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest() + + void QOpenGL2PaintEngineExPrivate::setScissor(const QRect &rect) + { +- const int left = rect.left(); ++ const int left = rect.left() + x; + const int width = rect.width(); + int bottom = height - (rect.top() + rect.height()); + if (device->paintFlipped()) { + bottom = rect.top(); + } ++ bottom += y; + const int height = rect.height(); + + funcs.glScissor(left, bottom, width, height); +diff --git a/src/gui/opengl/qopenglpaintengine_p.h b/src/gui/opengl/qopenglpaintengine_p.h +index 9722ea3..07e3163 100644 +--- a/src/gui/opengl/qopenglpaintengine_p.h ++++ b/src/gui/opengl/qopenglpaintengine_p.h +@@ -264,6 +264,7 @@ public: + QOpenGL2PaintEngineEx* q; + QOpenGLEngineShaderManager* shaderManager; + QOpenGLPaintDevice* device; ++ int x, y; + int width, height; + QOpenGLContext *ctx; + EngineMode mode; +diff --git a/src/gui/opengl/qopengltextureglyphcache.cpp b/src/gui/opengl/qopengltextureglyphcache.cpp +index cd268cd..997bc35 100644 +--- a/src/gui/opengl/qopengltextureglyphcache.cpp ++++ b/src/gui/opengl/qopengltextureglyphcache.cpp +@@ -310,7 +310,7 @@ void QOpenGLTextureGlyphCache::resizeTextureData(int width, int height) + funcs->glBindFramebuffer(GL_FRAMEBUFFER, (GLuint)oldFbo); + + if (pex != 0) { +- funcs->glViewport(0, 0, pex->width, pex->height); ++ funcs->glViewport(pex->x, pex->y, pex->width, pex->height); + pex->updateClipScissorTest(); + } else { + if (m_vao.isCreated()) { +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0009-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch b/recipes-qt/qt5/qtbase-git/0009-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch deleted file mode 100644 index 200864a9..00000000 --- a/recipes-qt/qt5/qtbase-git/0009-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 621d867223a135a9babd452d4918200bc6d0463b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= -Date: Wed, 5 Feb 2014 18:35:08 +0100 -Subject: [PATCH 09/11] eglfs: fix egl error for platforms only supporting one - window/surface -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -running qmlscene -platform eglfs .qml - -caused - -EGL Error : Could not create the egl surface: error = 0x3003 - -Rebased version of [1-2] - -Upstream-Status: unknown - -[1] http://repository.timesys.com/buildsources/q/qt-everywhere-opensource/qt-everywhere-opensource-5.1.1/qt-everywhere-opensource-5.1.1-qeglfswindow.cpp.patch -[2] https://github.com/prabindh/qt-configs/blob/master/qt5_1.0_Feb13/qeglfswindow.cpp.patch - -Signed-off-by: Andreas Müller -Signed-off-by: Martin Jansa ---- - src/plugins/platforms/eglfs/qeglfswindow.cpp | 16 +++++++++++++++- - 1 file changed, 15 insertions(+), 1 deletion(-) - -diff --git a/src/plugins/platforms/eglfs/qeglfswindow.cpp b/src/plugins/platforms/eglfs/qeglfswindow.cpp -index f5839e0..5ebde6d 100644 ---- a/src/plugins/platforms/eglfs/qeglfswindow.cpp -+++ b/src/plugins/platforms/eglfs/qeglfswindow.cpp -@@ -66,6 +66,15 @@ void QEglFSWindow::create() - - m_flags = Created; - -+ static EGLSurface __singleWindowSurface; -+ if(QEglFSHooks::hooks() && ! QEglFSHooks::hooks()->hasCapability(QPlatformIntegration::MultipleWindows) && (__singleWindowSurface)) { -+ m_surface = __singleWindowSurface; -+#ifdef QEGL_EXTRA_DEBUG -+ qWarning("Surface recreate request, re-using %x\n", m_surface); -+#endif -+ return; -+ } -+ - if (window()->type() == Qt::Desktop) - return; - -@@ -79,7 +88,7 @@ void QEglFSWindow::create() - return; - } - --#if !defined(Q_OS_ANDROID) || defined(Q_OS_ANDROID_NO_SDK) -+#if !defined(Q_OS_ANDROID) || defined(Q_OS_ANDROID_NO_SDK) || defined(EGL_API_FB) - // We can have either a single OpenGL window or multiple raster windows. - // Other combinations cannot work. - qFatal("EGLFS: OpenGL windows cannot be mixed with others."); -@@ -99,6 +108,11 @@ void QEglFSWindow::create() - - resetSurface(); - -+ if(QEglFSHooks::hooks() && !QEglFSHooks::hooks()->hasCapability(QPlatformIntegration::MultipleWindows)) -+ { -+ __singleWindowSurface = m_surface; -+ } -+ - screen->setPrimarySurface(m_surface); - - if (isRaster()) { --- -2.1.3 - diff --git a/recipes-qt/qt5/qtbase-git/0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch b/recipes-qt/qt5/qtbase-git/0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch new file mode 100644 index 00000000..d2a1810a --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch @@ -0,0 +1,42 @@ +From e163574a35ad782a3d43ee8d5e3f212870962e10 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Thu, 18 Dec 2014 13:41:09 +0100 +Subject: [PATCH 10/12] Make Qt5GuiConfigExtras.cmake find gl(es) include dir +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +In configure QMAKE_INCDIR_OPENGL is set with pkg-config. Without +PKG_CONFIG_ALLOW_SYSTEM_CFLAGS set, pkg-config returns paths outside +/usr/include only (in my case /usr/include/libdrm). With NO_DEFAULT_PATH set +gl(es) include directories cannot be found. Cmake builds depending on +Qt5Gui error out with + +| Failed to find "GLES2/gl2.h" in "/usr/include/libdrm" + +Upstream-Status: submitted [1] + +[1] https://bugreports.qt-project.org/browse/QTBUG-43445 + +Signed-off-by: Andreas Müller +--- + src/gui/Qt5GuiConfigExtras.cmake.in | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in +index 9a846d4..07869ef 100644 +--- a/src/gui/Qt5GuiConfigExtras.cmake.in ++++ b/src/gui/Qt5GuiConfigExtras.cmake.in +@@ -57,9 +57,6 @@ set(Qt5Gui_OPENGL_LIBRARIES Qt5::Gui_GLESv2) + set(_GL_INCDIRS $$CMAKE_GL_INCDIRS) + find_path(_qt5gui_OPENGL_INCLUDE_DIR $$CMAKE_GL_HEADER_NAME + PATHS ${_GL_INCDIRS} +-!!IF !mac +- NO_DEFAULT_PATH +-!!ENDIF + ) + if (NOT _qt5gui_OPENGL_INCLUDE_DIR) + message(FATAL_ERROR \"Failed to find \\\"$$CMAKE_GL_HEADER_NAME\\\" in \\\"${_GL_INCDIRS}\\\".\") +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0010-QOpenGLPaintDevice-sub-area-support.patch b/recipes-qt/qt5/qtbase-git/0010-QOpenGLPaintDevice-sub-area-support.patch deleted file mode 100644 index 986d2a93..00000000 --- a/recipes-qt/qt5/qtbase-git/0010-QOpenGLPaintDevice-sub-area-support.patch +++ /dev/null @@ -1,157 +0,0 @@ -From 46074ffb4525e8217acd78c9cbe29f3d62f85c78 Mon Sep 17 00:00:00 2001 -From: Jani Hautakangas -Date: Thu, 16 May 2013 09:52:07 +0300 -Subject: [PATCH 10/11] QOpenGLPaintDevice sub-area support - -Allows creating QOpenGLPaintDevice targetting sub-area -of binded framebuffer. - -Upstream-Status: Pending - -Change-Id: Ida2f079aa1ac0b87d36b54129e226399dbcdda80 - -Signed-off-by: Martin Jansa ---- - src/gui/opengl/qopenglpaintdevice.cpp | 11 +++++++++++ - src/gui/opengl/qopenglpaintdevice.h | 2 ++ - src/gui/opengl/qopenglpaintdevice_p.h | 1 + - src/gui/opengl/qopenglpaintengine.cpp | 9 +++++++-- - src/gui/opengl/qopenglpaintengine_p.h | 1 + - src/gui/opengl/qopengltextureglyphcache.cpp | 2 +- - 6 files changed, 23 insertions(+), 3 deletions(-) - -diff --git a/src/gui/opengl/qopenglpaintdevice.cpp b/src/gui/opengl/qopenglpaintdevice.cpp -index a08d26f..cff3155 100644 ---- a/src/gui/opengl/qopenglpaintdevice.cpp -+++ b/src/gui/opengl/qopenglpaintdevice.cpp -@@ -135,6 +135,12 @@ QOpenGLPaintDevice::QOpenGLPaintDevice(int width, int height) - { - } - -+QOpenGLPaintDevice::QOpenGLPaintDevice(int x, int y, int width, int height) -+ : d_ptr(new QOpenGLPaintDevicePrivate(QSize(width, height))) -+{ -+ d_ptr->offset = QPoint(x,y); -+} -+ - /*! - \internal - */ -@@ -212,6 +218,11 @@ QOpenGLContext *QOpenGLPaintDevice::context() const - return d_ptr->ctx; - } - -+QPoint QOpenGLPaintDevice::offset() const -+{ -+ return d_ptr->offset; -+} -+ - /*! - Returns the pixel size of the paint device. - -diff --git a/src/gui/opengl/qopenglpaintdevice.h b/src/gui/opengl/qopenglpaintdevice.h -index 10cee84..a6683c5 100644 ---- a/src/gui/opengl/qopenglpaintdevice.h -+++ b/src/gui/opengl/qopenglpaintdevice.h -@@ -53,12 +53,14 @@ public: - QOpenGLPaintDevice(); - explicit QOpenGLPaintDevice(const QSize &size); - QOpenGLPaintDevice(int width, int height); -+ QOpenGLPaintDevice(int x, int y, int width, int height); - virtual ~QOpenGLPaintDevice(); - - int devType() const { return QInternal::OpenGL; } - QPaintEngine *paintEngine() const; - - QOpenGLContext *context() const; -+ QPoint offset() const; - QSize size() const; - void setSize(const QSize &size); - void setDevicePixelRatio(qreal devicePixelRatio); -diff --git a/src/gui/opengl/qopenglpaintdevice_p.h b/src/gui/opengl/qopenglpaintdevice_p.h -index 0b01129..211f2f3 100644 ---- a/src/gui/opengl/qopenglpaintdevice_p.h -+++ b/src/gui/opengl/qopenglpaintdevice_p.h -@@ -65,6 +65,7 @@ public: - - public: - QSize size; -+ QPoint offset; - QOpenGLContext *ctx; - - qreal dpmx; -diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp -index c490726..1d775fd 100644 ---- a/src/gui/opengl/qopenglpaintengine.cpp -+++ b/src/gui/opengl/qopenglpaintengine.cpp -@@ -2002,7 +2002,10 @@ bool QOpenGL2PaintEngineEx::begin(QPaintDevice *pdev) - for (int i = 0; i < QT_GL_VERTEX_ARRAY_TRACKED_COUNT; ++i) - d->vertexAttributeArraysEnabledState[i] = false; - -+ const QPoint offset = d->device->offset(); - const QSize sz = d->device->size(); -+ d->x = offset.x(); -+ d->y = offset.y(); - d->width = sz.width(); - d->height = sz.height(); - d->mode = BrushDrawingMode; -@@ -2089,7 +2092,7 @@ void QOpenGL2PaintEngineEx::ensureActive() - d->device->ensureActiveTarget(); - - d->transferMode(BrushDrawingMode); -- d->funcs.glViewport(0, 0, d->width, d->height); -+ d->funcs.glViewport(d->x, d->y, d->width, d->height); - d->needsSync = false; - d->lastMaskTextureUsed = 0; - d->shaderManager->setDirty(); -@@ -2132,6 +2135,7 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest() - if (bounds == QRect(0, 0, width, height)) { - funcs.glDisable(GL_SCISSOR_TEST); - } else { -+ bounds = QRect(bounds.x(), bounds.y(), bounds.width(), bounds.height()); - funcs.glEnable(GL_SCISSOR_TEST); - setScissor(bounds); - } -@@ -2140,12 +2144,13 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest() - - void QOpenGL2PaintEngineExPrivate::setScissor(const QRect &rect) - { -- const int left = rect.left(); -+ const int left = rect.left() + x; - const int width = rect.width(); - int bottom = height - (rect.top() + rect.height()); - if (device->paintFlipped()) { - bottom = rect.top(); - } -+ bottom += y; - const int height = rect.height(); - - funcs.glScissor(left, bottom, width, height); -diff --git a/src/gui/opengl/qopenglpaintengine_p.h b/src/gui/opengl/qopenglpaintengine_p.h -index 5ef0366..c5b517d 100644 ---- a/src/gui/opengl/qopenglpaintengine_p.h -+++ b/src/gui/opengl/qopenglpaintengine_p.h -@@ -256,6 +256,7 @@ public: - QOpenGL2PaintEngineEx* q; - QOpenGLEngineShaderManager* shaderManager; - QOpenGLPaintDevice* device; -+ int x, y; - int width, height; - QOpenGLContext *ctx; - EngineMode mode; -diff --git a/src/gui/opengl/qopengltextureglyphcache.cpp b/src/gui/opengl/qopengltextureglyphcache.cpp -index cd268cd..997bc35 100644 ---- a/src/gui/opengl/qopengltextureglyphcache.cpp -+++ b/src/gui/opengl/qopengltextureglyphcache.cpp -@@ -310,7 +310,7 @@ void QOpenGLTextureGlyphCache::resizeTextureData(int width, int height) - funcs->glBindFramebuffer(GL_FRAMEBUFFER, (GLuint)oldFbo); - - if (pex != 0) { -- funcs->glViewport(0, 0, pex->width, pex->height); -+ funcs->glViewport(pex->x, pex->y, pex->width, pex->height); - pex->updateClipScissorTest(); - } else { - if (m_vao.isCreated()) { --- -2.1.3 - diff --git a/recipes-qt/qt5/qtbase-git/0011-Always-build-uic.patch b/recipes-qt/qt5/qtbase-git/0011-Always-build-uic.patch index 86bf90d7..728bb5a9 100644 --- a/recipes-qt/qt5/qtbase-git/0011-Always-build-uic.patch +++ b/recipes-qt/qt5/qtbase-git/0011-Always-build-uic.patch @@ -1,7 +1,7 @@ -From d48323aae1bee4b2398d61e1777815ffac15ccce Mon Sep 17 00:00:00 2001 +From 17929906fd0c057b35ad48b3a22770f8c52c1108 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Sat, 16 Nov 2013 00:32:30 +0100 -Subject: [PATCH 11/12] Always build uic +Subject: [PATCH 11/13] Always build uic Even if we are not building gui or widgets. This tool is needed later as a native tool when compiling the target. @@ -27,5 +27,5 @@ index 81f4fa5..74ec23d 100644 nacl: SUBDIRS -= src_network src_testlib -- -2.1.3 +2.3.0 diff --git a/recipes-qt/qt5/qtbase-git/0011-qmake-don-t-build-it-in-configure-but-allow-to-build.patch b/recipes-qt/qt5/qtbase-git/0011-qmake-don-t-build-it-in-configure-but-allow-to-build.patch index 21e0987b..ef65da08 100644 --- a/recipes-qt/qt5/qtbase-git/0011-qmake-don-t-build-it-in-configure-but-allow-to-build.patch +++ b/recipes-qt/qt5/qtbase-git/0011-qmake-don-t-build-it-in-configure-but-allow-to-build.patch @@ -1,7 +1,7 @@ -From ee542556da221be99fa3344630b78529555be2bc Mon Sep 17 00:00:00 2001 +From e199e105df6ded6ea9404b4f7f6f7f8381a51e85 Mon Sep 17 00:00:00 2001 From: Michael Krelin Date: Mon, 29 Oct 2012 20:07:49 -0700 -Subject: [PATCH 11/11] qmake: don't build it in configure, but allow to build +Subject: [PATCH 11/12] qmake: don't build it in configure, but allow to build it separately * it is already built in qtbase-native, so we don't need it in configure @@ -14,13 +14,18 @@ Signed-off-by: Yu Ke Signed-off-by: Paul Eggleton Signed-off-by: Mikko Levonmaa Signed-off-by: Martin Jansa ---- configure | 2 +- + qmake/qmake.pri | 3 ++- qmake/qmake.pro | 2 ++ - 2 files changed, 3 insertions(+), 1 deletion(-) + 3 files changed, 5 insertions(+), 2 deletions(-) +--- + configure | 2 +- + qmake/qmake.pri | 3 ++- + qmake/qmake.pro | 1 + + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/configure b/configure -index bd43281..5d1b3aa 100755 +index 8b42b8e..aa21ff6 100755 --- a/configure +++ b/configure @@ -3724,7 +3724,7 @@ setBootstrapEvalVariable() @@ -32,19 +37,32 @@ index bd43281..5d1b3aa 100755 echo "Creating qmake..." mkdir -p "$outpath/qmake" || exit +diff --git a/qmake/qmake.pri b/qmake/qmake.pri +index 4de41d6..69982b7 100644 +--- a/qmake/qmake.pri ++++ b/qmake/qmake.pri +@@ -82,7 +82,8 @@ bootstrap { #Qt code + qjsonparser.cpp \ + qjsonarray.cpp \ + qjsonobject.cpp \ +- qjsonvalue.cpp ++ qjsonvalue.cpp \ ++ qdebug.cpp + + HEADERS+= \ + qbitarray.h \ diff --git a/qmake/qmake.pro b/qmake/qmake.pro -index 89d6ea5..7c605b9 100644 +index 89d6ea5..0ff4a96 100644 --- a/qmake/qmake.pro +++ b/qmake/qmake.pro -@@ -8,6 +8,8 @@ CONFIG -= qt +@@ -8,6 +8,7 @@ CONFIG -= qt DEFINES += \ QT_BUILD_QMAKE \ PROEVALUATOR_FULL -+DESTDIR = ../bin/ +TARGET = qmake VPATH += \ ../src/corelib/global \ -- -2.1.3 +2.3.0 diff --git a/recipes-qt/qt5/qtbase-git/0012-Add-external-hostbindir-option-for-native-sdk.patch b/recipes-qt/qt5/qtbase-git/0012-Add-external-hostbindir-option-for-native-sdk.patch new file mode 100644 index 00000000..90dacc20 --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0012-Add-external-hostbindir-option-for-native-sdk.patch @@ -0,0 +1,108 @@ +From dee6fc781f5ac77155817b82f9d66787690a3bb3 Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Sat, 6 Apr 2013 13:15:07 +0200 +Subject: [PATCH 12/13] Add -external-hostbindir option for native(sdk) + +* when cross-compiling it's sometimes useful to use existing tools from machine + (or in OpenEmbedded built with separate native recipe) when building for target + +* this way we can skip bootstraping tools we already have + +* qt_functions: temporary remove isEmpty check +* now we assume that every build will provide QT_EXTERNAL_HOST_BINS value +* isEmpty works correctly only with qmake variables (e.g. $$FOO - + isEmpty(FOO)), but doesn't work with system properties like $$[FOO]. + +* cmake: Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS to determine path to host binaries + +Upstream-Status: Pending + is a lot better for upstreaming (and it was already sort of approved by + Oswald) but in 5.2.0 I've noticed that he added something similar for + android builds + +Change-Id: I4f6e634bf0b2cb96065ee5c38b9cd8a224c3bd37 +Signed-off-by: Martin Jansa +Signed-off-by: Simon Busch +Signed-off-by: Jonathan Liu +Signed-off-by: Martin Jansa +--- + qmake/property.cpp | 1 + + src/corelib/global/qlibraryinfo.cpp | 3 ++- + src/corelib/global/qlibraryinfo.h | 1 + + tools/configure/configureapp.cpp | 8 ++++++++ + 4 files changed, 12 insertions(+), 1 deletion(-) + +diff --git a/qmake/property.cpp b/qmake/property.cpp +index 051e056..50da6ed 100644 +--- a/qmake/property.cpp ++++ b/qmake/property.cpp +@@ -67,6 +67,7 @@ static const struct { + { "QT_HOST_DATA", QLibraryInfo::HostDataPath, true }, + { "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, true }, + { "QT_HOST_LIBS", QLibraryInfo::HostLibrariesPath, true }, ++ { "QT_EXTERNAL_HOST_BINS", QLibraryInfo::ExternalHostBinariesPath, true }, + { "QMAKE_SPEC", QLibraryInfo::HostSpecPath, true }, + { "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true }, + }; +diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp +index c418c5e..c8c4188 100644 +--- a/src/corelib/global/qlibraryinfo.cpp ++++ b/src/corelib/global/qlibraryinfo.cpp +@@ -348,7 +348,7 @@ QLibraryInfo::isDebugBuild() + */ + + static const struct { +- char key[19], value[13]; ++ char key[21], value[13]; + } qtConfEntries[] = { + { "Prefix", "." }, + { "Documentation", "doc" }, // should be ${Data}/doc +@@ -374,6 +374,7 @@ static const struct { + { "HostBinaries", "bin" }, + { "HostLibraries", "lib" }, + { "HostData", "." }, ++ { "ExternalHostBinaries", "" }, + { "TargetSpec", "" }, + { "HostSpec", "" }, + #endif +diff --git a/src/corelib/global/qlibraryinfo.h b/src/corelib/global/qlibraryinfo.h +index 543c4b3..a02e03a 100644 +--- a/src/corelib/global/qlibraryinfo.h ++++ b/src/corelib/global/qlibraryinfo.h +@@ -80,6 +80,7 @@ public: + HostBinariesPath, + HostLibrariesPath, + HostDataPath, ++ ExternalHostBinariesPath, + TargetSpecPath, + HostSpecPath, + LastHostPath = HostSpecPath, +diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp +index 6e9d4aa..0ca4daf 100644 +--- a/tools/configure/configureapp.cpp ++++ b/tools/configure/configureapp.cpp +@@ -1191,6 +1191,13 @@ void Configure::parseCmdLine() + dictionary[ "QT_EXT_PREFIX" ] = configCmdLine.at(i); + } + ++ else if (configCmdLine.at(i) == "-external-hostbindir") { ++ ++i; ++ if (i == argCount) ++ break; ++ dictionary[ "QT_EXTERNAL_HOST_BINS" ] = configCmdLine.at(i); ++ } ++ + else if (configCmdLine.at(i) == "-make-tool") { + ++i; + if (i == argCount) +@@ -4004,6 +4011,7 @@ void Configure::generateQConfigCpp() + << " \"qt_hbinpath=" << formatPath(dictionary["QT_HOST_BINS"]) << "\"," << endl + << " \"qt_hlibpath=" << formatPath(dictionary["QT_HOST_LIBS"]) << "\"," << endl + << " \"qt_hdatpath=" << formatPath(dictionary["QT_HOST_DATA"]) << "\"," << endl ++ << " \"qt_ebinpath=" << formatPath(dictionary["QT_EXTERNAL_HOST_BINS"]) << "\"," << endl + << " \"qt_targspec=" << targSpec << "\"," << endl + << " \"qt_hostspec=" << hostSpec << "\"," << endl + << "#endif" << endl +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0012-Set-paths-for-target-properly.patch b/recipes-qt/qt5/qtbase-git/0012-Set-paths-for-target-properly.patch new file mode 100644 index 00000000..3253ed26 --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0012-Set-paths-for-target-properly.patch @@ -0,0 +1,72 @@ +From f14e186762bb31f2d9c1e54fd62a0fa4d6cb3550 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Thu, 22 Jan 2015 16:09:35 +0100 +Subject: [PATCH 12/12] Set paths for target properly +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream-Status: Inappropriate [OE specific] + +Signed-off-by: Andreas Müller +--- + configure | 43 +++++++++++++++++++++---------------------- + 1 file changed, 21 insertions(+), 22 deletions(-) + +diff --git a/configure b/configure +index aa21ff6..bc965f6 100755 +--- a/configure ++++ b/configure +@@ -3639,28 +3639,27 @@ static const char qt_configure_prefix_path_strs[][512 + 12] = { + "qt_xmplpath=$QT_SYSROOT_EXAMPLES", + "qt_tstspath=$QT_SYSROOT_TESTS", + #else +- "qt_prfxpath=$QT_INSTALL_PREFIX", +- "qt_docspath=$QT_INSTALL_DOCS", +- "qt_hdrspath=$QT_INSTALL_HEADERS", +- "qt_libspath=$QT_INSTALL_LIBS", +- "qt_lbexpath=$QT_INSTALL_LIBEXECS", +- "qt_binspath=$QT_INSTALL_BINS", +- "qt_plugpath=$QT_INSTALL_PLUGINS", +- "qt_impspath=$QT_INSTALL_IMPORTS", +- "qt_qml2path=$QT_INSTALL_QML", +- "qt_adatpath=$QT_INSTALL_ARCHDATA", +- "qt_datapath=$QT_INSTALL_DATA", +- "qt_trnspath=$QT_INSTALL_TRANSLATIONS", +- "qt_xmplpath=$QT_INSTALL_EXAMPLES", +- "qt_tstspath=$QT_INSTALL_TESTS", +- "qt_ssrtpath=$CFG_SYSROOT", +- "qt_hpfxpath=$QT_HOST_PREFIX", +- "qt_hbinpath=$QT_HOST_BINS", +- "qt_hlibpath=$QT_HOST_LIBS", +- "qt_hdatpath=$QT_HOST_DATA", +- "qt_ebinpath=$QT_EXTERNAL_HOST_BINS", +- "qt_targspec=$shortxspec", +- "qt_hostspec=$shortspec", ++ "qt_prfxpath=$QT_SYSROOT_PREFIX", ++ "qt_docspath=$QT_SYSROOT_DOCS", ++ "qt_hdrspath=$QT_SYSROOT_HEADERS", ++ "qt_libspath=$QT_SYSROOT_LIBS", ++ "qt_lbexpath=$QT_SYSROOT_LIBEXECS", ++ "qt_binspath=$QT_SYSROOT_BINS", ++ "qt_plugpath=$QT_SYSROOT_PLUGINS", ++ "qt_impspath=$QT_SYSROOT_IMPORTS", ++ "qt_qml2path=$QT_SYSROOT_QML", ++ "qt_adatpath=$QT_SYSROOT_ARCHDATA", ++ "qt_datapath=$QT_SYSROOT_DATA", ++ "qt_trnspath=$QT_SYSROOT_TRANSLATIONS", ++ "qt_xmplpath=$QT_SYSROOT_EXAMPLES", ++ "qt_tstspath=$QT_SYSROOT_TESTS", ++ "qt_ssrtpath=", ++ "qt_hpfxpath=$QT_SYSROOT_PREFIX", ++ "qt_hbinpath=$QT_SYSROOT_BINS", ++ "qt_hlibpath=$QT_SYSROOT_LIBS", ++ "qt_hdatpath=$QT_SYSROOT_LIBS/qt5", ++ "qt_targspec=linux-g++", ++ "qt_hostspec=linux-g++", + #endif + }; + static const char qt_configure_settings_path_str[256 + 12] = "qt_stngpath=$QT_INSTALL_SETTINGS"; +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-git/0012-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/qtbase-git/0012-configure-preserve-built-qmake-and-swap-with-native-.patch deleted file mode 100644 index 6a428ed2..00000000 --- a/recipes-qt/qt5/qtbase-git/0012-configure-preserve-built-qmake-and-swap-with-native-.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 9089bf90632ffc983625816c5b0f2f2509ffc176 Mon Sep 17 00:00:00 2001 -From: Denys Dmytriyenko -Date: Mon, 11 Nov 2013 20:22:34 -0500 -Subject: [PATCH 12/12] configure: preserve built qmake and swap with native - one - -Let configure script build the real qmake, but right after it's built, swap -it with a native qmake for further internal use, preserving the real one. - -Signed-off-by: Denys Dmytriyenko ---- - configure | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/configure b/configure -index bd43281..d331711 100755 ---- a/configure -+++ b/configure -@@ -3874,6 +3874,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; - - (cd "$outpath/qmake"; "$MAKE") || exit 2 - fi # Build qmake -+mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" -+mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" - - echo "Running configuration tests..." - --- -2.1.3 - diff --git a/recipes-qt/qt5/qtbase-git/0013-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch b/recipes-qt/qt5/qtbase-git/0013-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch deleted file mode 100644 index 6ea42bc5..00000000 --- a/recipes-qt/qt5/qtbase-git/0013-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch +++ /dev/null @@ -1,42 +0,0 @@ -From f5df17e2a02cf67f3436b7fe640c6bf54ba93ad6 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= -Date: Thu, 18 Dec 2014 13:41:09 +0100 -Subject: [PATCH] Make Qt5GuiConfigExtras.cmake find gl(es) include dir -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -In configure QMAKE_INCDIR_OPENGL is set with pkg-config. Without -PKG_CONFIG_ALLOW_SYSTEM_CFLAGS set, pkg-config returns paths outside -/usr/include only (in my case /usr/include/libdrm). With NO_DEFAULT_PATH set -gl(es) include directories cannot be found. Cmake builds depending on -Qt5Gui error out with - -| Failed to find "GLES2/gl2.h" in "/usr/include/libdrm" - -Upstream-Status: submitted [1] - -[1] https://bugreports.qt-project.org/browse/QTBUG-43445 - -Signed-off-by: Andreas Müller ---- - src/gui/Qt5GuiConfigExtras.cmake.in | 3 --- - 1 file changed, 3 deletions(-) - -diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in -index 9a846d4..07869ef 100644 ---- a/src/gui/Qt5GuiConfigExtras.cmake.in -+++ b/src/gui/Qt5GuiConfigExtras.cmake.in -@@ -57,9 +57,6 @@ set(Qt5Gui_OPENGL_LIBRARIES Qt5::Gui_GLESv2) - set(_GL_INCDIRS $$CMAKE_GL_INCDIRS) - find_path(_qt5gui_OPENGL_INCLUDE_DIR $$CMAKE_GL_HEADER_NAME - PATHS ${_GL_INCDIRS} --!!IF !mac -- NO_DEFAULT_PATH --!!ENDIF - ) - if (NOT _qt5gui_OPENGL_INCLUDE_DIR) - message(FATAL_ERROR \"Failed to find \\\"$$CMAKE_GL_HEADER_NAME\\\" in \\\"${_GL_INCDIRS}\\\".\") --- -1.8.3.1 - diff --git a/recipes-qt/qt5/qtbase-git/0013-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/qtbase-git/0013-configure-preserve-built-qmake-and-swap-with-native-.patch new file mode 100644 index 00000000..319fb55c --- /dev/null +++ b/recipes-qt/qt5/qtbase-git/0013-configure-preserve-built-qmake-and-swap-with-native-.patch @@ -0,0 +1,30 @@ +From 2795008ce11d680385610b80a84b4ee03db78cf0 Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko +Date: Mon, 11 Nov 2013 20:22:34 -0500 +Subject: [PATCH 13/13] configure: preserve built qmake and swap with native + one + +Let configure script build the real qmake, but right after it's built, swap +it with a native qmake for further internal use, preserving the real one. + +Signed-off-by: Denys Dmytriyenko +--- + configure | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/configure b/configure +index 8b42b8e..486bb2d 100755 +--- a/configure ++++ b/configure +@@ -3874,6 +3874,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; + + (cd "$outpath/qmake"; "$MAKE") || exit 2 + fi # Build qmake ++mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" ++mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" + + echo "Running configuration tests..." + +-- +2.3.0 + diff --git a/recipes-qt/qt5/qtbase-native_git.bb b/recipes-qt/qt5/qtbase-native_git.bb index 8989fc21..b5387b23 100644 --- a/recipes-qt/qt5/qtbase-native_git.bb +++ b/recipes-qt/qt5/qtbase-native_git.bb @@ -10,18 +10,19 @@ SRC_URI += "\ file://0001-Add-linux-oe-g-platform.patch \ file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ file://0003-Add-external-hostbindir-option.patch \ - file://0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ - file://0005-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ - file://0006-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ - file://0007-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ - file://0008-configure-bump-path-length-from-256-to-512-character.patch \ - file://0009-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ - file://0010-QOpenGLPaintDevice-sub-area-support.patch \ + file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ + file://0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ + file://0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ + file://0007-configure-bump-path-length-from-256-to-512-character.patch \ + file://0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ + file://0009-QOpenGLPaintDevice-sub-area-support.patch \ + file://0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch \ " # common for qtbase-native and nativesdk-qtbase SRC_URI += " \ file://0011-Always-build-uic.patch \ + file://0012-Add-external-hostbindir-option-for-native-sdk.patch \ " do_install_append() { @@ -30,4 +31,9 @@ do_install_append() { ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt } -SRCREV = "47326b9c5c38fea39f8539f50f32667d2c391b70" +SRCREV = "02c5657a7d6d30c6e874e29a0adcc38b58a45b7d" + +LIC_FILES_CHKSUM = "file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ + file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ + file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ + file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e" diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index 0424bc24..b6c84113 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb @@ -10,17 +10,24 @@ SRC_URI += "\ file://0001-Add-linux-oe-g-platform.patch \ file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ file://0003-Add-external-hostbindir-option.patch \ - file://0006-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ - file://0007-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ - file://0008-configure-bump-path-length-from-256-to-512-character.patch \ - file://0009-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ - file://0010-QOpenGLPaintDevice-sub-area-support.patch \ + file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ + file://0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ + file://0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ + file://0007-configure-bump-path-length-from-256-to-512-character.patch \ + file://0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ + file://0009-QOpenGLPaintDevice-sub-area-support.patch \ + file://0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch \ " # specific for qtbase SRC_URI += "\ file://0011-qmake-don-t-build-it-in-configure-but-allow-to-build.patch \ - file://0015-Set-paths-for-target-properly.patch \ + file://0012-Set-paths-for-target-properly.patch \ " -SRCREV = "47326b9c5c38fea39f8539f50f32667d2c391b70" +SRCREV = "02c5657a7d6d30c6e874e29a0adcc38b58a45b7d" + +LIC_FILES_CHKSUM = "file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ + file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ + file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ + file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e" diff --git a/recipes-qt/qt5/qtdeclarative_git.bb b/recipes-qt/qt5/qtdeclarative_git.bb index 8479eaf9..404fb48d 100644 --- a/recipes-qt/qt5/qtdeclarative_git.bb +++ b/recipes-qt/qt5/qtdeclarative_git.bb @@ -1,4 +1,4 @@ require qt5-git.inc require ${PN}.inc -SRCREV = "dbe67b8512bfd78ba3c68fcfff27418bbf54141c" +SRCREV = "c4fcbe9e342f5fa7b86b7facc662575a3f21689b" -- cgit v1.2.3