From 333949a8239dfa7788b35f1059614733e11a6a25 Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Thu, 26 Jan 2017 16:54:50 +0200 Subject: Upgrade to Qt 5.8 The linux-oe-g++ mkspec is changed to use $$(...) operator to obtain the contents of an environment value when qmake is run instead of when Makefile is processed. All OE_QMAKE_xxx variables need to be exported for qmake to find them. configure's setBootstrapVariable function needs to change $$(..) to normal $(...) operator to work with qmake's Makefile. qt.conf generation for qtbase recipes is not needed, as configure will generate its own version based on configure arguments. Skip running qmake, since configure is now automatically invoked when it's run in qtbase's root folder. Update PACKAGECONFIGs for qtbase to match current configure options. The new Qt configuration system [1] can be used with a new variable EXTRA_QMAKEVARS_CONFIGURE, which takes both command line and feature arguments. Merge the two qtwayland recipes to one that supports all three targets (target, native, nativesdk) without need for additional patch. Recipes for new Qt modules: QtSCXML, QtNetworkAuth, QtGamepad. Removes qtdeclarative-render2d [1] https://www.mail-archive.com/development@qt-project.org/msg25257.html Change-Id: Ib37c4d7323e8b45aa2b171e8427b6ec15aaee213 Signed-off-by: Samuli Piippo Signed-off-by: Martin Jansa --- .../qt5/qtbase/0001-Add-linux-oe-g-platform.patch | 314 ++++----------------- ...o-allow-to-set-qt.conf-from-the-outside-u.patch | 36 --- .../0003-Add-external-hostbindir-option.patch | 154 +--------- ...le-Fix-pkgconfig-and-libtool-replacements.patch | 10 +- .../0006-QOpenGLPaintDevice-sub-area-support.patch | 154 ---------- ...Invert-conditional-for-defining-QT_SOCKLE.patch | 32 --- ...configure-paths-for-target-qmake-properly.patch | 18 +- ...-unknown-features-instead-of-erroring-out.patch | 28 ++ ...EGL-libraries-from-pkgconfig-and-defaults.patch | 95 ------- ...external-hostbindir-option-for-native-sdk.patch | 131 --------- .../qtbase/0013-Fix-build-with-QT_NO_OPENGL.patch | 33 --- 11 files changed, 101 insertions(+), 904 deletions(-) delete mode 100644 recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch delete mode 100644 recipes-qt/qt5/qtbase/0006-QOpenGLPaintDevice-sub-area-support.patch delete mode 100644 recipes-qt/qt5/qtbase/0007-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch create mode 100644 recipes-qt/qt5/qtbase/0009-Disable-all-unknown-features-instead-of-erroring-out.patch delete mode 100644 recipes-qt/qt5/qtbase/0009-Reorder-EGL-libraries-from-pkgconfig-and-defaults.patch delete mode 100644 recipes-qt/qt5/qtbase/0012-Add-external-hostbindir-option-for-native-sdk.patch delete mode 100644 recipes-qt/qt5/qtbase/0013-Fix-build-with-QT_NO_OPENGL.patch (limited to 'recipes-qt/qt5/qtbase') diff --git a/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch b/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch index b28ca8b6..df2016e1 100644 --- a/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch +++ b/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch @@ -1,4 +1,4 @@ -From d6c75f788e15fb552eacb08359698a1342a97f20 Mon Sep 17 00:00:00 2001 +From 2784921c40d0b523c75e613e48b7fd1e90ba3ef1 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Mon, 15 Apr 2013 04:29:32 +0200 Subject: [PATCH] Add linux-oe-g++ platform @@ -7,176 +7,53 @@ Subject: [PATCH] Add linux-oe-g++ platform shell environment, because it's easier for qt recipes to export *FLAGS or CC specific for given recipe -* configure: add getQEvalMakeConf and getXQEvalMakeConf - Allow expansion of $(...) references from qmake.conf to generate - qmake environment from shell environment as exported by qmake5_base - -* configure: don't export SYSTEM_VARIABLES to .qmake.vars - linux-oe-g++ should handle this correctly and exporting LD as QMAKE_LINK is - causing issues as we need g++ to be used as linker +* configure: extend setBootstrapVariable to convert $$(...) operator + to $(...) operator to work in qmake's Makefiles * configure.prf: Allow to add extra arguments to make sometimes we would like to add -e or define some variable and respect it from both Makefiles used in configure tests and also Makefiles to build the application -* OE_QMAKE_CXX in order to allow compiler version check to succeed - which allows WebKit to be enabled. - -* Other variables in order to let config.tests to use our -platform - settings - -* Add setBootstrapEvalVariable to bootstrap qmake with our environment - too, this allows us to use -platform linux-oe-g++ also for native - recipe - -* disable gdb_dwarf_index - * qmake is trying to call native gdb and we don't depend on gdb-native - (or even provide gdb-native) - * fixes errors like this: - /bin/sh: gdb: command not found - /bin/sh: line 0: test: -gt: unary operator expected - which are not fatal, but still misleading in do_configure output - -* add -target suffix to qmake built in qtbase configure, this way we can - use qmake from qtbase-native, but then include qmake built for target - in qtbase-tools package (smilarly for nativesdk-qtbase). - Upstream-Status: Inappropriate [embedded specific] too OE specific, probably cannot be upstreamed Change-Id: I0591ed5da0d61d7cf1509d420e6b293582f1863c Signed-off-by: Martin Jansa --- - configure | 55 ++++++++++++------- - mkspecs/features/configure.prf | 4 +- - mkspecs/linux-oe-g++/qmake.conf | 42 +++++++++++++++ - mkspecs/linux-oe-g++/qplatformdefs.h | 100 +++++++++++++++++++++++++++++++++++ - 4 files changed, 181 insertions(+), 20 deletions(-) + configure | 2 +- + mkspecs/features/configure.prf | 4 ++-- + mkspecs/features/qt_functions.prf | 2 +- + mkspecs/linux-oe-g++/qmake.conf | 43 ++++++++++++++++++++++++++++++++++++ + mkspecs/linux-oe-g++/qplatformdefs.h | 1 + + 5 files changed, 48 insertions(+), 4 deletions(-) create mode 100644 mkspecs/linux-oe-g++/qmake.conf create mode 100644 mkspecs/linux-oe-g++/qplatformdefs.h diff --git a/configure b/configure -index 0ba0c31..052872e 100755 +index 789ba4c..59cce01 100755 --- a/configure +++ b/configure -@@ -333,6 +333,16 @@ getQMakeConf() - getSingleQMakeVariable "$1" "$specvals" - } - -+# OE qmake.conf is reading some variables from shell env -+# read them from qmake.conf, replace qmake () syntax with shell and eval -+getQEvalMakeConf() -+{ -+ VAL=`getQMakeConf "$1" | sed -n 's/$[(]\([0-9a-zA-Z_]*\)[)]/$\1/pg'` -+ EVAL=`eval "echo ${VAL}"` -+# echo "Running getQEvalMakeConf: var='$1', val='`getQMakeConf \"$1\"`, val-sed='$VAL', eval='$EVAL'" >&2 -+ eval "echo ${VAL}" -+} -+ - getXQMakeConf() +@@ -1624,7 +1624,7 @@ fi + # is where the resulting variable is written to + setBootstrapVariable() { - if [ -z "$xspecvals" ]; then -@@ -357,6 +367,16 @@ testXConfig() - esac - } - -+# OE qmake.conf is reading some variables from shell env -+# read them from qmake.conf, replace qmake () syntax with shell and eval -+getXQEvalMakeConf() -+{ -+ VAL=`getXQMakeConf "$1" | sed -n 's/$[(]\([0-9a-zA-Z_]*\)[)]/$\1/pg'` -+ EVAL=`eval "echo ${VAL}"` -+# echo "Running getXQEvalMakeConf: var='$1', val='`getXQMakeConf \"$1\"`, val-sed='$VAL', eval='$EVAL'" >&2 -+ eval "echo ${VAL}" -+} -+ - compilerSupportsFlag() - { - cat >conftest.cpp <&2 - fi'` - eval "$cmd" - done -@@ -3443,7 +3453,7 @@ if [ "$XPLATFORM_MAC" = "yes" ]; then - [ "$CFG_GTK" = "auto" ] && CFG_GTK=no - fi - --QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX` -+QMAKE_CONF_COMPILER=`getXQEvalMakeConf QMAKE_CXX` - - TEST_COMPILER=$QMAKE_CONF_COMPILER - -@@ -3494,7 +3504,7 @@ if [ "$XPLATFORM_ANDROID" = "yes" ] ; then - fi - fi - --TEST_COMPILER_CXXFLAGS=`getXQMakeConf QMAKE_CXXFLAGS` -+TEST_COMPILER_CXXFLAGS=`getXQEvalMakeConf QMAKE_CXXFLAGS` - - GCC_MACHINE_DUMP= - case "$TEST_COMPILER" in *g++) GCC_MACHINE_DUMP=$($TEST_COMPILER -dumpmachine);; esac -@@ -3893,6 +3903,14 @@ setBootstrapVariable() - getQMakeConf "$1" | echo ${2-$1} = `if [ -n "$3" ]; then sed "$3"; else cat; fi` >> "$mkfile" +- getQMakeConf "$1" | echo ${2-$1} = `if [ -n "$3" ]; then sed "$3"; else cat; fi` >> "$mkfile" ++ getQMakeConf "$1" | sed 's:\$\$(:\$(:' | echo ${2-$1} = `if [ -n "$3" ]; then sed "$3"; else cat; fi` >> "$mkfile" } -+# OE qmake.conf is reading some variables from shell env -+# read them from qmake.conf, replace qmake () syntax with shell and eval -+setBootstrapEvalVariable() -+{ -+ getQEvalMakeConf "$1" | echo ${2-$1} = `if [ -n "$3" ]; then sed "$3"; else cat; fi` >> "$mkfile" -+} -+ -+ # build qmake - if true; then ###[ '!' -f "$outpath/bin/qmake" ]; - echo "Creating qmake..." -@@ -3986,6 +4004,7 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; - EXEEXT= - ;; - esac -+ [ "$QT_CROSS_COMPILE" = "yes" ] && EXEEXT=-target - if [ "$BUILD_ON_MAC" = "yes" ]; then - echo "COCOA_LFLAGS =-framework Foundation -framework CoreServices" >>"$mkfile" - echo "CARBON_LFLAGS =-framework ApplicationServices" >>"$mkfile" diff --git a/mkspecs/features/configure.prf b/mkspecs/features/configure.prf -index a890c7f..151630c 100644 +index f275e3a..5aa15f5 100644 --- a/mkspecs/features/configure.prf +++ b/mkspecs/features/configure.prf -@@ -71,14 +71,14 @@ defineTest(qtCompileTest) { +@@ -37,14 +37,14 @@ defineTest(qtCompileTest) { } # Clean up after previous run - exists($$test_out_dir/Makefile):qtRunLoggedCommand("$$test_cmd_base $$QMAKE_MAKE distclean") + exists($$test_out_dir/Makefile):qtRunLoggedCommand("$$test_cmd_base $$QMAKE_MAKE $$(QMAKE_MAKE_ARGS) distclean") - mkpath($$test_out_dir)|error("Aborting.") + mkpath($$test_out_dir)|error() !isEmpty (QMAKE_QTCONF): qtconfarg = -qtconf $$QMAKE_QTCONF @@ -186,157 +63,72 @@ index a890c7f..151630c 100644 log("yes$$escape_expand(\\n)") msg = "test $$1 succeeded" write_file($$QMAKE_CONFIG_LOG, msg, append) +diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf +index 708815d..097ac49 100644 +--- a/mkspecs/features/qt_functions.prf ++++ b/mkspecs/features/qt_functions.prf +@@ -67,7 +67,7 @@ defineTest(qtHaveModule) { + defineTest(qtPrepareTool) { + cmd = $$eval(QT_TOOL.$${2}.binary) + isEmpty(cmd) { +- cmd = $$[QT_HOST_BINS]/$$2 ++ cmd = $$[QT_HOST_BINS/get]/$$2 + exists($${cmd}.pl) { + $${1}_EXE = $${cmd}.pl + cmd = perl -w $$system_path($${cmd}.pl) diff --git a/mkspecs/linux-oe-g++/qmake.conf b/mkspecs/linux-oe-g++/qmake.conf new file mode 100644 -index 0000000..311ba04 +index 0000000..c1837e6 --- /dev/null +++ b/mkspecs/linux-oe-g++/qmake.conf -@@ -0,0 +1,42 @@ +@@ -0,0 +1,43 @@ +# +# qmake configuration for linux-g++ with modifications for building with OpenEmbedded +# + -+MAKEFILE_GENERATOR = UNIX ++MAKEFILE_GENERATOR = UNIX +CONFIG += incremental +QMAKE_INCREMENTAL_STYLE = sublib + +include(../common/linux.conf) + +# QMAKE_ (moc, uic, rcc) are gone, overwrite only ar and strip -+QMAKE_AR = $(OE_QMAKE_AR) cqs -+QMAKE_STRIP = $(OE_QMAKE_STRIP) -+QMAKE_WAYLAND_SCANNER = $(OE_QMAKE_WAYLAND_SCANNER) ++QMAKE_AR = $$(OE_QMAKE_AR) cqs ++QMAKE_STRIP = $$(OE_QMAKE_STRIP) ++QMAKE_WAYLAND_SCANNER = $$(OE_QMAKE_WAYLAND_SCANNER) + +include(../common/gcc-base-unix.conf) + +# *FLAGS from gcc-base.conf -+QMAKE_CFLAGS += $(OE_QMAKE_CFLAGS) -+QMAKE_CXXFLAGS += $(OE_QMAKE_CXXFLAGS) -+QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS) ++QMAKE_CFLAGS += $$(OE_QMAKE_CFLAGS) ++QMAKE_CXXFLAGS += $$(OE_QMAKE_CXXFLAGS) ++QMAKE_LFLAGS += $$(OE_QMAKE_LDFLAGS) + +include(../common/g++-unix.conf) + +# tc settings from g++-base.conf -+QMAKE_COMPILER = $(OE_QMAKE_COMPILER) gcc -+QMAKE_CC = $(OE_QMAKE_CC) -+QMAKE_CXX = $(OE_QMAKE_CXX) ++QMAKE_COMPILER = $$(OE_QMAKE_COMPILER) gcc ++QMAKE_CC = $$(OE_QMAKE_CC) ++QMAKE_CXX = $$(OE_QMAKE_CXX) + -+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $(OE_QMAKE_CFLAGS) ++QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$(OE_QMAKE_CFLAGS) + -+QMAKE_LINK = $(OE_QMAKE_LINK) -+QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK) -+QMAKE_LINK_C = $(OE_QMAKE_LINK) -+QMAKE_LINK_C_SHLIB = $(OE_QMAKE_LINK) ++QMAKE_LINK = $$(OE_QMAKE_LINK) ++QMAKE_LINK_SHLIB = $$(OE_QMAKE_LINK) ++QMAKE_LINK_C = $$(OE_QMAKE_LINK) ++QMAKE_LINK_C_SHLIB = $$(OE_QMAKE_LINK) + +# for the SDK -+isEmpty(QMAKE_QT_CONFIG):QMAKE_QT_CONFIG = $(OE_QMAKE_QT_CONFIG) ++isEmpty(QMAKE_QT_CONFIG):QMAKE_QT_CONFIG = $$(OE_QMAKE_QT_CONFIG) + +include(../oe-device-extra.pri) + ++load(device_config) +load(qt_config) diff --git a/mkspecs/linux-oe-g++/qplatformdefs.h b/mkspecs/linux-oe-g++/qplatformdefs.h new file mode 100644 -index 0000000..dd12003 +index 0000000..5d22fb4 --- /dev/null +++ b/mkspecs/linux-oe-g++/qplatformdefs.h -@@ -0,0 +1,100 @@ -+/**************************************************************************** -+** -+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). -+** Contact: http://www.qt-project.org/legal -+** -+** This file is part of the qmake spec of the Qt Toolkit. -+** -+** $QT_BEGIN_LICENSE:LGPL$ -+** Commercial License Usage -+** Licensees holding valid commercial Qt licenses may use this file in -+** accordance with the commercial license agreement provided with the -+** Software or, alternatively, in accordance with the terms contained in -+** a written agreement between you and Digia. For licensing terms and -+** conditions see http://qt.digia.com/licensing. For further information -+** use the contact form at http://qt.digia.com/contact-us. -+** -+** GNU Lesser General Public License Usage -+** Alternatively, this file may be used under the terms of the GNU Lesser -+** General Public License version 2.1 as published by the Free Software -+** Foundation and appearing in the file LICENSE.LGPL included in the -+** packaging of this file. Please review the following information to -+** ensure the GNU Lesser General Public License version 2.1 requirements -+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -+** -+** In addition, as a special exception, Digia gives you certain additional -+** rights. These rights are described in the Digia Qt LGPL Exception -+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -+** -+** GNU General Public License Usage -+** Alternatively, this file may be used under the terms of the GNU -+** General Public License version 3.0 as published by the Free Software -+** Foundation and appearing in the file LICENSE.GPL included in the -+** packaging of this file. Please review the following information to -+** ensure the GNU General Public License version 3.0 requirements will be -+** met: http://www.gnu.org/copyleft/gpl.html. -+** -+** -+** $QT_END_LICENSE$ -+** -+****************************************************************************/ -+ -+#ifndef QPLATFORMDEFS_H -+#define QPLATFORMDEFS_H -+ -+// Get Qt defines/settings -+ -+#include "qglobal.h" -+ -+// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs -+ -+// 1) need to reset default environment if _BSD_SOURCE is defined -+// 2) need to specify POSIX thread interfaces explicitly in glibc 2.0 -+// 3) it seems older glibc need this to include the X/Open stuff -+#ifndef _GNU_SOURCE -+# define _GNU_SOURCE -+#endif -+ -+#include -+ -+ -+// We are hot - unistd.h should have turned on the specific APIs we requested -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#ifndef QT_NO_IPV6IFNAME -+#include -+#endif -+ -+#define QT_USE_XOPEN_LFS_EXTENSIONS -+#include "../common/posix/qplatformdefs.h" -+ -+#undef QT_SOCKLEN_T -+ -+#if defined(__GLIBC__) && (__GLIBC__ >= 2) -+#define QT_SOCKLEN_T socklen_t -+#else -+#define QT_SOCKLEN_T int -+#endif -+ -+#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500) -+#define QT_SNPRINTF ::snprintf -+#define QT_VSNPRINTF ::vsnprintf -+#endif -+ -+#endif // QPLATFORMDEFS_H +@@ -0,0 +1 @@ ++#include "../linux-g++/qplatformdefs.h" diff --git a/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch b/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch deleted file mode 100644 index 699e3856..00000000 --- a/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch +++ /dev/null @@ -1,36 +0,0 @@ -From e5f8607cfa1d2bcc798686cdf7c87ea0c6577d30 Mon Sep 17 00:00:00 2001 -From: Holger Freyther -Date: Wed, 26 Sep 2012 17:22:30 +0200 -Subject: [PATCH] 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 -to inject new prefixes and other paths into qmake. This is needed when using -the same qmake binary to build qt/x11 and qt/embedded - -Upstream-Status: Inappropriate [embedded specific] - again very OE specific to read everything from environment (reusing the same - qmake from sstate and replacing all configured paths in it with qt.conf from - environment). - -Signed-off-by: Martin Jansa ---- - src/corelib/global/qlibraryinfo.cpp | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp -index 4582001..ff65ef9 100644 ---- a/src/corelib/global/qlibraryinfo.cpp -+++ b/src/corelib/global/qlibraryinfo.cpp -@@ -163,7 +163,10 @@ void QLibrarySettings::load() - - QSettings *QLibraryInfoPrivate::findConfiguration() - { -- QString qtconfig = QStringLiteral(":/qt/etc/qt.conf"); -+ QByteArray config = getenv("QT_CONF_PATH"); -+ QString qtconfig = QFile::decodeName(config); -+ if(!QFile::exists(qtconfig)) -+ qtconfig = QStringLiteral(":/qt/etc/qt.conf"); - if (QFile::exists(qtconfig)) - return new QSettings(qtconfig, QSettings::IniFormat); - #ifdef QT_BUILD_QMAKE diff --git a/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch b/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch index 381cde29..8224171a 100644 --- a/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch +++ b/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch @@ -1,165 +1,23 @@ -From c1dc6165d6a085f162ed32ef5697f645019f9ee0 Mon Sep 17 00:00:00 2001 +From 502b95b840a5f79e5a68e9bd5b10dbdc92485f1f Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Sat, 6 Apr 2013 13:15:07 +0200 Subject: [PATCH] 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 - -* 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 +Upstream-Status: Inappropriate [OE specific] Signed-off-by: Martin Jansa Signed-off-by: Simon Busch Signed-off-by: Jonathan Liu -Conflicts: - configure - Change-Id: Iacaa1c5531cd6dcc094891610c351673db55d7b2 --- - configure | 14 ++++++++++++++ - mkspecs/features/qt_functions.prf | 6 +++++- - mkspecs/features/qt_tool.prf | 4 +++- - qtbase.pro | 16 ++++++++++++++++ - src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++--- - src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++-- - src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- - 7 files changed, 44 insertions(+), 8 deletions(-) + src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++--- + src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++-- + src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- + 3 files changed, 6 insertions(+), 6 deletions(-) -diff --git a/configure b/configure -index 052872e..1fcbb3a 100755 ---- a/configure -+++ b/configure -@@ -834,6 +834,7 @@ QT_HOST_BINS= - QT_HOST_LIBS= - QT_HOST_DATA= - QT_EXT_PREFIX= -+QT_EXTERNAL_HOST_BINS= - - #flags for SQL drivers - QT_CFLAGS_PSQL= -@@ -953,6 +954,7 @@ while [ "$#" -gt 0 ]; do - -testsdir| \ - -hostdatadir| \ - -hostbindir| \ -+ -external-hostbindir| \ - -hostlibdir| \ - -extprefix| \ - -sysroot| \ -@@ -1185,6 +1187,9 @@ while [ "$#" -gt 0 ]; do - extprefix) - QT_EXT_PREFIX="$VAL" - ;; -+ external-hostbindir) -+ QT_EXTERNAL_HOST_BINS="$VAL" -+ ;; - pkg-config) - if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then - CFG_PKGCONFIG="$VAL" -@@ -2447,6 +2452,10 @@ Installation options: - -hostdatadir . Data used by qmake will be installed to - (default HOSTPREFIX) - -+ -external-hostbindir Use external host executables instead of building them -+ (not used by defaut) -+ -+ - Configure options: - - The defaults (*) are usually acceptable. A plus (+) denotes a default value -@@ -3209,6 +3218,11 @@ fi - # command line and environment validation - #------------------------------------------------------------------------------- - -+# default is empty, don't call makeabs if it is empty -+if [ ! -z "$QT_EXTERNAL_HOST_BINS" ]; then -+ QT_EXTERNAL_HOST_BINS=`"$relpath/config.tests/unix/makeabs" "$QT_EXTERNAL_HOST_BINS"` -+fi -+ - # update QT_CONFIG to show our current predefined configuration - CFG_QCONFIG_PATH=$relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h - case "$CFG_QCONFIG" in -diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf -index 54641ce..7d7baa4 100644 ---- a/mkspecs/features/qt_functions.prf -+++ b/mkspecs/features/qt_functions.prf -@@ -71,7 +71,11 @@ defineTest(qtHaveModule) { - defineTest(qtPrepareTool) { - cmd = $$eval(QT_TOOL.$${2}.binary) - isEmpty(cmd) { -- cmd = $$[QT_HOST_BINS]/$$2 -+ QT_EXTERNAL_HOST_BINS = $$[QT_EXTERNAL_HOST_BINS] -+ isEmpty(QT_EXTERNAL_HOST_BINS): \ -+ cmd = $$[QT_HOST_BINS]/$$2 -+ else: \ -+ cmd = $$[QT_EXTERNAL_HOST_BINS]/$$2 - exists($${cmd}.pl) { - $${1}_EXE = $${cmd}.pl - cmd = perl -w $$system_path($${cmd}.pl) -diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf -index bdeb59c..b8c539f 100644 ---- a/mkspecs/features/qt_tool.prf -+++ b/mkspecs/features/qt_tool.prf -@@ -14,10 +14,12 @@ load(qt_app) - CONFIG += console - DEFINES *= QT_USE_QSTRINGBUILDER - -+QT_EXTERNAL_HOST_BINS = $$[QT_EXTERNAL_HOST_BINS] -+ - # If we are doing a prefix build, create a "module" pri which enables - # qtPrepareTool() to work with the non-installed build. - # Non-bootstrapped tools always need this because of the environment setup. --!build_pass:if(!host_build|!force_bootstrap|force_independent|!isEmpty(HOST_QT_TOOLS)) { -+!build_pass:if(!host_build|!force_bootstrap|force_independent|!isEmpty(HOST_QT_TOOLS)):isEmpty(QT_EXTERNAL_HOST_BINS) { - isEmpty(MODULE):MODULE = $$TARGET - - load(qt_build_paths) -diff --git a/qtbase.pro b/qtbase.pro -index 11cff9e..ec03669 100644 ---- a/qtbase.pro -+++ b/qtbase.pro -@@ -38,6 +38,19 @@ CONFIG -= qt - - ### installations #### - -+QT_EXTERNAL_HOST_BINS = $$[QT_EXTERNAL_HOST_BINS] -+ -+#qmake -+qmake.path = $$[QT_HOST_BINS] -+qmake.files = $$OUT_PWD/bin/qmake -+!isEmpty(QT_EXTERNAL_HOST_BINS) { -+ qmake.files = $$[QT_EXTERNAL_HOST_BINS]/qmake -+} -+equals(QMAKE_HOST.os, Windows) { -+ qmake.files = $${qmake.files}.exe -+} -+INSTALLS += qmake -+ - #licheck - licheck.path = $$[QT_HOST_BINS] - licheck.files = $$PWD/bin/$$QT_LICHECK -@@ -51,6 +64,9 @@ INSTALLS += fixqt4headers - #syncqt - syncqt.path = $$[QT_HOST_BINS] - syncqt.files = $$PWD/bin/syncqt.pl -+!isEmpty(QT_EXTERNAL_HOST_BINS) { -+ syncqt.files = $$[QT_EXTERNAL_HOST_BINS]/syncqt.pl -+} - INSTALLS += syncqt - - # 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 a5ed8b2..0e11a1e 100644 --- a/src/corelib/Qt5CoreConfigExtras.cmake.in diff --git a/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch b/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch index e24d4758..c105488e 100644 --- a/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch +++ b/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch @@ -1,4 +1,4 @@ -From d83234c35de8f52ce3bf6eb262ad8e6af467ac34 Mon Sep 17 00:00:00 2001 +From bf1498618415e7b1e57b54881b1e56d74f2cdf6b Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Sat, 27 Apr 2013 23:15:37 +0200 Subject: [PATCH] qt_module: Fix pkgconfig and libtool replacements @@ -68,7 +68,7 @@ Signed-off-by: Jonathan Liu 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf -index 71e96b4..0d7535c 100644 +index 0c5f080..a6e4f09 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -317,6 +317,19 @@ contains(TEMPLATE, .*app) { @@ -89,13 +89,13 @@ index 71e96b4..0d7535c 100644 +} + QT_PLUGIN_VERIFY = DEPLOYMENT_PLUGIN - contains(QT_CONFIG, static) { + qtConfig(static) { QT_PLUGIN_VERIFY += QTPLUGIN diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf -index b367bc1..209cc43 100644 +index e754a17..4c1530e 100644 --- a/mkspecs/features/qt_common.prf +++ b/mkspecs/features/qt_common.prf -@@ -38,7 +38,7 @@ contains(TEMPLATE, .*lib) { +@@ -37,7 +37,7 @@ contains(TEMPLATE, .*lib) { lib_replace.replace = } else { lib_replace.match = $$rplbase/lib diff --git a/recipes-qt/qt5/qtbase/0006-QOpenGLPaintDevice-sub-area-support.patch b/recipes-qt/qt5/qtbase/0006-QOpenGLPaintDevice-sub-area-support.patch deleted file mode 100644 index c58b1d9a..00000000 --- a/recipes-qt/qt5/qtbase/0006-QOpenGLPaintDevice-sub-area-support.patch +++ /dev/null @@ -1,154 +0,0 @@ -From f207997b59f1381cf3523521209cb435b1a73f25 Mon Sep 17 00:00:00 2001 -From: Jani Hautakangas -Date: Thu, 16 May 2013 09:52:07 +0300 -Subject: [PATCH] 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 75f09d6..17d7155 100644 ---- a/src/gui/opengl/qopenglpaintdevice.cpp -+++ b/src/gui/opengl/qopenglpaintdevice.cpp -@@ -141,6 +141,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 - */ -@@ -222,6 +228,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 dffa68c..66a1e3d 100644 ---- a/src/gui/opengl/qopenglpaintdevice.h -+++ b/src/gui/opengl/qopenglpaintdevice.h -@@ -59,12 +59,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 78e6b7a..6630461 100644 ---- a/src/gui/opengl/qopenglpaintdevice_p.h -+++ b/src/gui/opengl/qopenglpaintdevice_p.h -@@ -71,6 +71,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 d93871c..be2bee9 100644 ---- a/src/gui/opengl/qopenglpaintengine.cpp -+++ b/src/gui/opengl/qopenglpaintengine.cpp -@@ -2084,7 +2084,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; -@@ -2171,7 +2174,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(); -@@ -2213,6 +2216,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); - } -@@ -2221,12 +2225,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 c9f3282..7c0616b 100644 ---- a/src/gui/opengl/qopenglpaintengine_p.h -+++ b/src/gui/opengl/qopenglpaintengine_p.h -@@ -270,6 +270,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 9a7b1eb..6f301f8 100644 ---- a/src/gui/opengl/qopengltextureglyphcache.cpp -+++ b/src/gui/opengl/qopengltextureglyphcache.cpp -@@ -403,7 +403,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()) { diff --git a/recipes-qt/qt5/qtbase/0007-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch b/recipes-qt/qt5/qtbase/0007-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch deleted file mode 100644 index 4ea4061a..00000000 --- a/recipes-qt/qt5/qtbase/0007-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 7ab6ff7ba20a3173c10a76814d3c9ed312c80627 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 8 Jun 2015 13:59:25 -0700 -Subject: [PATCH] linux-oe-g++: Invert conditional for defining QT_SOCKLEN_T - -This helps to make sure that QT_SOCKLEN_T is defined to be 'int' -only when its glibc < 2 and not also for the libraries which may define -it as per standards but are not glibc, e.g. musl - -Signed-off-by: Khem Raj ---- - mkspecs/linux-oe-g++/qplatformdefs.h | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/mkspecs/linux-oe-g++/qplatformdefs.h b/mkspecs/linux-oe-g++/qplatformdefs.h -index dd12003..8623651 100644 ---- a/mkspecs/linux-oe-g++/qplatformdefs.h -+++ b/mkspecs/linux-oe-g++/qplatformdefs.h -@@ -86,10 +86,10 @@ - - #undef QT_SOCKLEN_T - --#if defined(__GLIBC__) && (__GLIBC__ >= 2) --#define QT_SOCKLEN_T socklen_t --#else -+#if defined(__GLIBC__) && (__GLIBC__ < 2) - #define QT_SOCKLEN_T int -+#else -+#define QT_SOCKLEN_T socklen_t - #endif - - #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500) diff --git a/recipes-qt/qt5/qtbase/0008-configure-paths-for-target-qmake-properly.patch b/recipes-qt/qt5/qtbase/0008-configure-paths-for-target-qmake-properly.patch index bac18412..6d64e6b5 100644 --- a/recipes-qt/qt5/qtbase/0008-configure-paths-for-target-qmake-properly.patch +++ b/recipes-qt/qt5/qtbase/0008-configure-paths-for-target-qmake-properly.patch @@ -1,4 +1,4 @@ -From 0f4ab3e27938002134e8f3f9eb12cf9c50b2ab95 Mon Sep 17 00:00:00 2001 +From cc926956758bf8170c4e49c66e1066524b43f65f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 13 Nov 2015 12:36:11 +0100 Subject: [PATCH] configure paths for target qmake properly @@ -19,11 +19,11 @@ Signed-off-by: Martin Jansa 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/configure b/configure -index f49a674..d30d0ca 100755 +index 8b33c5b..1df248f 100755 --- a/configure +++ b/configure -@@ -3792,8 +3792,13 @@ if [ "$CFG_COMPILE_EXAMPLES" = "yes" ]; then - QMAKE_CONFIG="$QMAKE_CONFIG compile_examples" +@@ -1545,8 +1545,13 @@ if [ -z "$QT_REL_HOST_DATA" ]; then + fi fi -shortxspec=`echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"` @@ -38,7 +38,7 @@ index f49a674..d30d0ca 100755 QT_CONFIGURE_STR_OFF=0 -@@ -3826,7 +3831,11 @@ QT_CONFIGURE_STRS_ALL=$QT_CONFIGURE_STRS +@@ -1579,7 +1584,11 @@ QT_CONFIGURE_STRS_ALL=$QT_CONFIGURE_STRS QT_CONFIGURE_STR_OFFSETS= QT_CONFIGURE_STRS= @@ -51,7 +51,7 @@ index f49a674..d30d0ca 100755 addConfStr "$QT_REL_HOST_BINS" addConfStr "$QT_REL_HOST_LIBS" addConfStr "$QT_REL_HOST_DATA" -@@ -3838,6 +3847,12 @@ addConfStr "$shortspec" +@@ -1591,6 +1600,12 @@ addConfStr "$shortspec" #------------------------------------------------------------------------------- [ -d "$outpath/src/corelib/global" ] || mkdir -p "$outpath/src/corelib/global" @@ -62,9 +62,9 @@ index f49a674..d30d0ca 100755 +fi + cat > "$outpath/src/corelib/global/qconfig.cpp.new" < +Date: Mon, 24 Oct 2016 09:45:18 +0300 +Subject: [PATCH] Disable all unknown features instead of erroring out + +Task-number: QTBUG-56656 +Change-Id: Ib884fe33cac74439f9592b145937f6b75ced8447 +--- + mkspecs/features/qt_configure.prf | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf +index e8fa0c6..0ca5670 100644 +--- a/mkspecs/features/qt_configure.prf ++++ b/mkspecs/features/qt_configure.prf +@@ -1009,7 +1009,8 @@ defineReplace(qtConfEvaluateSingleExpression) { + error("Expression '$$1' is accessing field '$$var' of non-local feature $${feature}.") + return($$result) + } +- error("Unknown feature object $${feature} in expression '$${1}'.") ++ warning("Unknown feature object $${feature} in expression '$${1}'.") ++ result = false + } + !qtConfCheckFeature($$feature): \ + error("Expression '$$1' is accessing non-emitted feature $${feature}.") +-- +1.9.1 + diff --git a/recipes-qt/qt5/qtbase/0009-Reorder-EGL-libraries-from-pkgconfig-and-defaults.patch b/recipes-qt/qt5/qtbase/0009-Reorder-EGL-libraries-from-pkgconfig-and-defaults.patch deleted file mode 100644 index 23d0ab38..00000000 --- a/recipes-qt/qt5/qtbase/0009-Reorder-EGL-libraries-from-pkgconfig-and-defaults.patch +++ /dev/null @@ -1,95 +0,0 @@ -From 91b87aed0a2a96b0d6b54757ea13c75ee648a9b0 Mon Sep 17 00:00:00 2001 -From: Julien Gueytat -Date: Wed, 27 Apr 2016 19:24:39 +0200 -Subject: [PATCH] Reorder EGL libraries from pkgconfig and defaults: - -https://bugreports.qt.io/browse/QTBUG-50838 -https://bugreports.qt.io/browse/QTBUG-52739 - -The modification is the less intrusive possible. It only swaps LIBS and QMAKE_LIBS_EGL. -The reason behind that was that for the RaspberryPi: - * -lEGL -GLESv2 can link - * -lGLESv2 -lEGL can't - -Adding -lEGL -lGLESv2 and then -lEGL gives -lGLESv2 -lEGL ... the libraries swaped. - -Signed-off-by: Julien Gueytat ---- - config.tests/qpa/egl/egl.pro | 5 ++++- - config.tests/qpa/eglfs-brcm/eglfs-brcm.pro | 12 +++++++----- - configure | 16 ++++++++++++++-- - 3 files changed, 25 insertions(+), 8 deletions(-) - -diff --git a/config.tests/qpa/egl/egl.pro b/config.tests/qpa/egl/egl.pro -index b5396da..828b674 100644 ---- a/config.tests/qpa/egl/egl.pro -+++ b/config.tests/qpa/egl/egl.pro -@@ -5,6 +5,9 @@ for(p, QMAKE_LIBDIR_EGL) { - } - - !isEmpty(QMAKE_INCDIR_EGL): INCLUDEPATH += $$QMAKE_INCDIR_EGL --!isEmpty(QMAKE_LIBS_EGL): LIBS += $$QMAKE_LIBS_EGL -+ -+BACKUP_LIBS = $$LIBS -+!isEmpty(QMAKE_LIBS_EGL): LIBS = $$QMAKE_LIBS_EGL -+LIBS += $$BACKUP_LIBS - - CONFIG -= qt -diff --git a/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro b/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro -index d8b1c3e..06f7241 100644 ---- a/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro -+++ b/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro -@@ -1,11 +1,13 @@ - SOURCES = eglfs-brcm.cpp - --CONFIG -= qt -- --INCLUDEPATH += $$QMAKE_INCDIR_EGL -- - for(p, QMAKE_LIBDIR_EGL) { - LIBS += -L$$p - } - --LIBS += -lEGL -lGLESv2 -lbcm_host -+INCLUDEPATH += $$QMAKE_INCDIR_EGL -+ -+BACKUP_LIBS = $$LIBS -+LIBS = -lEGL -lGLESv2 -lbcm_host -+LIBS += $$BACKUP_LIBS -+ -+CONFIG -= qt -diff --git a/configure b/configure -index d30d0ca..14f348c 100755 ---- a/configure -+++ b/configure -@@ -5891,7 +5891,9 @@ if [ "$CFG_EGL" != "no" ]; then - QMakeVar set QMAKE_INCDIR_EGL "$QMAKE_INCDIR_EGL" - QMakeVar set QMAKE_LIBS_EGL "$QMAKE_LIBS_EGL" - QMakeVar set QMAKE_CFLAGS_EGL "`echo " $QMAKE_CFLAGS_EGL " | sed -e 's, -I[^ ]* , ,g;s,^ ,,;s, $,,'`" -- fi # detect EGL support -+ fi -+ -+ # detect EGL support - if compileTest qpa/egl "EGL" $QMAKE_CFLAGS_EGL $QMAKE_LIBS_EGL; then - CFG_EGL=yes - if compileTest qpa/egl-x11 "EGL-X11" $QMAKE_CFLAGS_EGL $QMAKE_LIBS_EGL; then -@@ -5914,8 +5916,18 @@ fi - if [ "$CFG_EGLFS" != "no" ]; then - if [ "$XPLATFORM_QNX" = "no" ] && [ "$CFG_OPENGL" != "no" ]; then - CFG_EGLFS="$CFG_EGL" -+ -+ if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists egl 2>/dev/null; then -+ QMAKE_INCDIR_EGL=`$PKG_CONFIG --cflags-only-I egl 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'` -+ QMAKE_LIBS_EGL=`$PKG_CONFIG --libs egl 2>/dev/null` -+ QMAKE_CFLAGS_EGL=`$PKG_CONFIG --cflags egl 2>/dev/null` -+ QMakeVar set QMAKE_INCDIR_EGL "$QMAKE_INCDIR_EGL" -+ QMakeVar set QMAKE_LIBS_EGL "$QMAKE_LIBS_EGL" -+ QMakeVar set QMAKE_CFLAGS_EGL "`echo " $QMAKE_CFLAGS_EGL " | sed -e 's, -I[^ ]* , ,g;s,^ ,,;s, $,,'`" -+ fi -+ - # Detect eglfs backends. -- if compileTest qpa/eglfs-brcm "eglfs-brcm"; then -+ if compileTest qpa/eglfs-brcm "eglfs-brcm" $QMAKE_CFLAGS_EGL $QMAKE_LIBS_EGL; then - CFG_EGLFS_BRCM=yes - else - CFG_EGLFS_BRCM=no diff --git a/recipes-qt/qt5/qtbase/0012-Add-external-hostbindir-option-for-native-sdk.patch b/recipes-qt/qt5/qtbase/0012-Add-external-hostbindir-option-for-native-sdk.patch deleted file mode 100644 index 1ab8abef..00000000 --- a/recipes-qt/qt5/qtbase/0012-Add-external-hostbindir-option-for-native-sdk.patch +++ /dev/null @@ -1,131 +0,0 @@ -From cb66a3193b1b1b8b402548b615c3675c4adcf13a Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Sat, 6 Apr 2013 13:15:07 +0200 -Subject: [PATCH] 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 - -Conflicts: - tools/configure/configureapp.cpp ---- - configure | 1 + - qmake/property.cpp | 1 + - src/corelib/global/qlibraryinfo.cpp | 3 ++- - src/corelib/global/qlibraryinfo.h | 1 + - tools/configure/configureapp.cpp | 11 +++++++++++ - 5 files changed, 16 insertions(+), 1 deletion(-) - -diff --git a/configure b/configure -index 14f348c..61f22e8 100755 ---- a/configure -+++ b/configure -@@ -3839,6 +3839,7 @@ fi - addConfStr "$QT_REL_HOST_BINS" - addConfStr "$QT_REL_HOST_LIBS" - addConfStr "$QT_REL_HOST_DATA" -+addConfStr "$QT_EXTERNAL_HOST_BINS" - addConfStr "$shortxspec" - addConfStr "$shortspec" - -diff --git a/qmake/property.cpp b/qmake/property.cpp -index 9ee08f4..e6ecf92 100644 ---- a/qmake/property.cpp -+++ b/qmake/property.cpp -@@ -63,6 +63,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 ff65ef9..3726831 100644 ---- a/src/corelib/global/qlibraryinfo.cpp -+++ b/src/corelib/global/qlibraryinfo.cpp -@@ -381,7 +381,7 @@ QLibraryInfo::isDebugBuild() - */ - - static const struct { -- char key[19], value[13]; -+ char key[21], value[13]; - } qtConfEntries[] = { - { "Prefix", "." }, - { "Documentation", "doc" }, // should be ${Data}/doc -@@ -406,6 +406,7 @@ static const struct { - { "HostBinaries", "bin" }, - { "HostLibraries", "lib" }, - { "HostData", "." }, -+ { "ExternalHostBinaries", "" }, - { "TargetSpec", "" }, - { "HostSpec", "" }, - { "HostPrefix", "" }, -diff --git a/src/corelib/global/qlibraryinfo.h b/src/corelib/global/qlibraryinfo.h -index 362d47d..a2326e2 100644 ---- a/src/corelib/global/qlibraryinfo.h -+++ b/src/corelib/global/qlibraryinfo.h -@@ -87,6 +87,7 @@ public: - HostBinariesPath, - HostLibrariesPath, - HostDataPath, -+ ExternalHostBinariesPath, - TargetSpecPath, - HostSpecPath, - HostPrefixPath, -diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp -index 0fa205b..2921e2b 100644 ---- a/tools/configure/configureapp.cpp -+++ b/tools/configure/configureapp.cpp -@@ -1219,6 +1219,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) -@@ -4171,6 +4178,9 @@ void Configure::generateQConfigCpp() - - if (dictionary["QT_REL_HOST_DATA"].isEmpty()) - dictionary["QT_REL_HOST_DATA"] = haveHpx ? "." : dictionary["QT_REL_INSTALL_ARCHDATA"]; -+ -+ if (dictionary["QT_EXTERNAL_HOST_BINS"].isEmpty()) -+ dictionary["QT_EXTERNAL_HOST_BINS"] = haveHpx ? "bin" : dictionary["QT_REL_INSTALL_BINS"]; - - confStringOff = 0; - addConfStr(0, dictionary["QT_REL_INSTALL_DOCS"]); -@@ -4190,6 +4200,7 @@ void Configure::generateQConfigCpp() - addConfStr(1, dictionary["QT_REL_HOST_BINS"]); - addConfStr(1, dictionary["QT_REL_HOST_LIBS"]); - addConfStr(1, dictionary["QT_REL_HOST_DATA"]); -+ addConfStr(1, dictionary["QT_EXTERNAL_HOST_BINS"]); - addConfStr(1, targSpec); - addConfStr(1, hostSpec); - diff --git a/recipes-qt/qt5/qtbase/0013-Fix-build-with-QT_NO_OPENGL.patch b/recipes-qt/qt5/qtbase/0013-Fix-build-with-QT_NO_OPENGL.patch deleted file mode 100644 index 7b681dce..00000000 --- a/recipes-qt/qt5/qtbase/0013-Fix-build-with-QT_NO_OPENGL.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 2e176e3d10535e4fdaa6ecc919538f66f4a2930d Mon Sep 17 00:00:00 2001 -From: Andy Nichols -Date: Mon, 11 Jul 2016 09:18:33 +0200 -Subject: QWidgetBackingStore: Fix build with QT_NO_OPENGL - -A define moved out of the #ifndef QT_NO_OPENGL scope. - -Change-Id: I41c943b97f165b5171581e01f3a4b2d3fb25747e -Reviewed-by: Laszlo Agocs - -Upstream-Status: Backport -Signed-off-by: Johannes Pointner ---- - src/widgets/kernel/qwidgetbackingstore.cpp | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/widgets/kernel/qwidgetbackingstore.cpp b/src/widgets/kernel/qwidgetbackingstore.cpp -index 32aabce..242e625 100644 ---- a/src/widgets/kernel/qwidgetbackingstore.cpp -+++ b/src/widgets/kernel/qwidgetbackingstore.cpp -@@ -67,7 +67,9 @@ QT_BEGIN_NAMESPACE - - extern QRegion qt_dirtyRegion(QWidget *); - -+#ifndef QT_NO_OPENGL - Q_GLOBAL_STATIC(QPlatformTextureList, qt_dummy_platformTextureList) -+#endif - - /** - * Flushes the contents of the \a backingStore into the screen area of \a widget. --- -cgit v1.0-4-g1e03 - -- cgit v1.2.3-54-g00ecf