summaryrefslogtreecommitdiffstats
path: root/meta/recipes-qt/qt5/qtbase
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-qt/qt5/qtbase')
-rw-r--r--meta/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch338
-rw-r--r--meta/recipes-qt/qt5/qtbase/0002-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS.patch86
-rw-r--r--meta/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch (renamed from meta/recipes-qt/qt5/qtbase/0003-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch)16
-rw-r--r--meta/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch226
-rw-r--r--meta/recipes-qt/qt5/qtbase/0004-configure-bump-path-length-from-256-to-512-character.patch34
-rw-r--r--meta/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch106
-rw-r--r--meta/recipes-qt/qt5/qtbase/0005-Disable-all-unknown-features-instead-of-erroring-out.patch25
-rw-r--r--meta/recipes-qt/qt5/qtbase/0005-configure-bump-path-length-from-256-to-512-character.patch33
-rw-r--r--meta/recipes-qt/qt5/qtbase/0006-QOpenGLPaintDevice-sub-area-support.patch154
-rw-r--r--meta/recipes-qt/qt5/qtbase/0007-Delete-qlonglong-and-qulonglong.patch25
-rw-r--r--meta/recipes-qt/qt5/qtbase/0007-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch (renamed from meta/recipes-qt/qt5/qtbase/0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch)20
-rw-r--r--meta/recipes-qt/qt5/qtbase/0008-Replace-pthread_yield-with-sched_yield.patch60
-rw-r--r--meta/recipes-qt/qt5/qtbase/0008-configure-paths-for-target-qmake-properly.patch75
-rw-r--r--meta/recipes-qt/qt5/qtbase/0009-Add-OE-specific-specs-for-clang-compiler.patch69
-rw-r--r--meta/recipes-qt/qt5/qtbase/0009-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch (renamed from meta/recipes-qt/qt5/qtbase/0006-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch)6
-rw-r--r--meta/recipes-qt/qt5/qtbase/0010-Always-build-uic.patch (renamed from meta/recipes-qt/qt5/qtbase/0013-Always-build-uic-and-qvkgen.patch)10
-rw-r--r--meta/recipes-qt/qt5/qtbase/0011-Add-external-hostbindir-option-for-native-sdk.patch131
-rw-r--r--meta/recipes-qt/qt5/qtbase/0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch25
-rw-r--r--meta/recipes-qt/qt5/qtbase/0012-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch33
-rw-r--r--meta/recipes-qt/qt5/qtbase/0014-Bootstrap-without-linkat-feature.patch27
20 files changed, 1035 insertions, 464 deletions
diff --git a/meta/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch b/meta/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch
index 07fc2f77b7..37ed1e6522 100644
--- a/meta/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch
+++ b/meta/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch
@@ -1,4 +1,4 @@
-From 1ed7a2e9a883fe1240d89b7b70fb0f296bb2b54f Mon Sep 17 00:00:00 2001
+From 5d1bf6c3e826af7282b858c192c62aad77095fc0 Mon Sep 17 00:00:00 2001
From: Martin Jansa <Martin.Jansa@gmail.com>
Date: Mon, 15 Apr 2013 04:29:32 +0200
Subject: [PATCH] Add linux-oe-g++ platform
@@ -7,78 +7,209 @@ 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: extend setBootstrapVariable to convert $$(...) operator
- to $(...) operator to work in qmake's Makefiles
+* 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.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 <Martin.Jansa@gmail.com>
---
- configure | 2 +-
- mkspecs/features/configure.prf | 4 ++--
- mkspecs/features/qt_functions.prf | 2 +-
- mkspecs/linux-oe-g++/qmake.conf | 42 ++++++++++++++++++++++++++++++++++++
- mkspecs/linux-oe-g++/qplatformdefs.h | 1 +
- 5 files changed, 47 insertions(+), 4 deletions(-)
+ configure | 71 ++++++++++++++++---------
+ mkspecs/features/configure.prf | 4 +-
+ mkspecs/linux-oe-g++/qmake.conf | 42 +++++++++++++++
+ mkspecs/linux-oe-g++/qplatformdefs.h | 100 +++++++++++++++++++++++++++++++++++
+ 4 files changed, 189 insertions(+), 28 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 08b49a8..5876721 100755
+index 6ebeab3..9e552c6 100755
--- a/configure
+++ b/configure
-@@ -712,7 +712,7 @@ fi
- # is where the resulting variable is written to
- setBootstrapVariable()
+@@ -343,6 +343,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()
{
-- 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"
+ if [ -z "$xspecvals" ]; then
+@@ -367,6 +377,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 <<EOF
+@@ -573,24 +593,14 @@ fi
+ # initalize variables
+ #-------------------------------------------------------------------------------
+
+-SYSTEM_VARIABLES="AR RANLIB STRIP OBJDUMP LD CC CXX CFLAGS CXXFLAGS LDFLAGS"
+-for varname in $SYSTEM_VARIABLES; do
++# Export all OE variables for qmake.conf from shell env to QMakeVars
++OE_VARIABLES="AR CC CFLAGS COMPILER CXX CXXFLAGS LDFLAGS LINK QT_CONFIG STRIP"
++for varname in $OE_VARIABLES; do
+ qmakevarname="${varname}"
+- qmakecmdargs=""
+- # use LDFLAGS for autoconf compat, but qmake uses QMAKE_LFLAGS
+- if [ "${varname}" = "LDFLAGS" ]; then
+- qmakevarname="LFLAGS"
+- elif [ "${varname}" = "LD" ]; then
+- qmakevarname="LINK"
+- elif [ "${varname}" = "AR" ]; then
+- # QMAKE_AR needs to be set to "/path/to/ar cqs" but the
+- # environment variable will be set to the command only so we
+- # need to append " cqs" for autoconf compatibility
+- qmakecmdargs=" cqs"
+- fi
+ cmd=`echo \
+-'if [ -n "\$'${varname}'" ]; then
+- QMakeVar set QMAKE_'${qmakevarname}' "\$'${varname}${qmakecmdargs}'"
++'if [ -n "\$OE_QMAKE_'${varname}'" ]; then
++ QMakeVar set OE_QMAKE_'${qmakevarname}' "\$OE_QMAKE_'${varname}'"
++# echo "Exporting OE_QMAKE_'${qmakevarname}' value=\"\$OE_QMAKE_'${varname}'\"" >&2
+ fi'`
+ eval "$cmd"
+ done
+@@ -3443,7 +3453,7 @@ if [ "$XPLATFORM_MAC" = "yes" ]; then
+ [ "$CFG_QGTKSTYLE" = "auto" ] && CFG_QGTKSTYLE=no
+ fi
+
+-QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX`
++QMAKE_CONF_COMPILER=`getXQEvalMakeConf QMAKE_CXX`
+
+ TEST_COMPILER=$QMAKE_CONF_COMPILER
+
+@@ -3504,7 +3514,7 @@ if [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then
+ exit 1
+ 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
+@@ -4005,6 +4015,14 @@ setBootstrapVariable()
+ getQMakeConf "$1" | 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..."
+@@ -4043,14 +4061,14 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ];
+ fi
+
+ [ "$CFG_SILENT" = "yes" ] && CC_TRANSFORM='s,^,\@,' || CC_TRANSFORM=
+- setBootstrapVariable QMAKE_CC CC "$CC_TRANSFORM"
+- setBootstrapVariable QMAKE_CXX CXX "$CC_TRANSFORM"
+- setBootstrapVariable QMAKE_CFLAGS
+- setBootstrapVariable QMAKE_CFLAGS_SPLIT_SECTIONS
+- setBootstrapVariable QMAKE_CXXFLAGS
+- setBootstrapVariable QMAKE_CXXFLAGS_SPLIT_SECTIONS
+- setBootstrapVariable QMAKE_LFLAGS
+- setBootstrapVariable QMAKE_LFLAGS_GCSECTIONS
++ setBootstrapEvalVariable QMAKE_CC CC "$CC_TRANSFORM"
++ setBootstrapEvalVariable QMAKE_CXX CXX "$CC_TRANSFORM"
++ setBootstrapEvalVariable QMAKE_CFLAGS
++ setBootstrapEvalVariable QMAKE_CFLAGS_SPLIT_SECTIONS
++ setBootstrapEvalVariable QMAKE_CXXFLAGS
++ setBootstrapEvalVariable QMAKE_CXXFLAGS_SPLIT_SECTIONS
++ setBootstrapEvalVariable QMAKE_LFLAGS
++ setBootstrapEvalVariable QMAKE_LFLAGS_GCSECTIONS
+
+ if [ "$CFG_DEBUG" = "no" ] || [ "$CFG_RELEASE_TOOLS" = "yes" ]; then
+ setBootstrapVariable QMAKE_CFLAGS_RELEASE
+@@ -4093,6 +4111,7 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ];
+ \"\$(SOURCE_PATH)/src/corelib/io/qfsfileengine_unix.cpp\" \
+ \"\$(SOURCE_PATH)/src/corelib/tools/qlocale_unix.cpp\""
+ EXEEXT=
++ [ "$QT_CROSS_COMPILE" = "yes" ] && EXEEXT=-target
+ fi
+ if [ "$BUILD_ON_MAC" = "yes" ]; then
+ echo "COCOA_LFLAGS =-framework Foundation -framework CoreServices" >>"$mkfile"
diff --git a/mkspecs/features/configure.prf b/mkspecs/features/configure.prf
-index 934a18a..0f5b1b6 100644
+index a3ec227..eef6006 100644
--- a/mkspecs/features/configure.prf
+++ b/mkspecs/features/configure.prf
-@@ -46,14 +46,14 @@ defineTest(qtCompileTest) {
+@@ -71,12 +71,12 @@ 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()
+ mkpath($$test_out_dir)|error("Aborting.")
- !isEmpty (QMAKE_QTCONF): qtconfarg = -qtconf $$QMAKE_QTCONF
-
- qtRunLoggedCommand("$$test_cmd_base $$system_quote($$system_path($$QMAKE_QMAKE)) $$qtconfarg -spec $$QMAKESPEC $$qmake_configs $$shell_quote($$test_dir)") {
+ qtRunLoggedCommand("$$test_cmd_base $$system_quote($$system_path($$QMAKE_QMAKE)) -spec $$QMAKESPEC $$qmake_configs $$shell_quote($$test_dir)") {
- qtRunLoggedCommand("$$test_cmd_base $$QMAKE_MAKE") {
+ qtRunLoggedCommand("$$test_cmd_base $$QMAKE_MAKE $$(QMAKE_MAKE_ARGS)") {
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 1903e50..c093dd4 100644
---- a/mkspecs/features/qt_functions.prf
-+++ b/mkspecs/features/qt_functions.prf
-@@ -69,7 +69,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..30d31ed
+index 0000000..311ba04
--- /dev/null
+++ b/mkspecs/linux-oe-g++/qmake.conf
@@ -0,0 +1,42 @@
@@ -86,48 +217,147 @@ index 0000000..30d31ed
+# 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_<TOOL> (moc, uic, rcc) are gone, overwrite only ar and strip
-+QMAKE_AR = $$(OE_QMAKE_AR) cqs
-+QMAKE_STRIP = $$(OE_QMAKE_STRIP)
++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..5d22fb4
+index 0000000..dd12003
--- /dev/null
+++ b/mkspecs/linux-oe-g++/qplatformdefs.h
-@@ -0,0 +1 @@
-+#include "../linux-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 <unistd.h>
++
++
++// We are hot - unistd.h should have turned on the specific APIs we requested
++
++#include <features.h>
++#include <pthread.h>
++#include <dirent.h>
++#include <fcntl.h>
++#include <grp.h>
++#include <pwd.h>
++#include <signal.h>
++
++#include <sys/types.h>
++#include <sys/ioctl.h>
++#include <sys/ipc.h>
++#include <sys/time.h>
++#include <sys/shm.h>
++#include <sys/socket.h>
++#include <sys/stat.h>
++#include <sys/wait.h>
++#include <netinet/in.h>
++#ifndef QT_NO_IPV6IFNAME
++#include <net/if.h>
++#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
diff --git a/meta/recipes-qt/qt5/qtbase/0002-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS.patch b/meta/recipes-qt/qt5/qtbase/0002-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS.patch
deleted file mode 100644
index fa59883490..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0002-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-From c7dd4e5de1fac8c35df79a86418b6cd552024bd0 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Sat, 6 Apr 2013 13:15:07 +0200
-Subject: [PATCH] cmake: Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS
-
-... to determine path to host binaries
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-Signed-off-by: Simon Busch <morphis@gravedo.de>
-Signed-off-by: Jonathan Liu <net147@gmail.com>
-
-Change-Id: Iacaa1c5531cd6dcc094891610c351673db55d7b2
----
- 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/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in
-index 545b9a3..c991a9b 100644
---- a/src/corelib/Qt5CoreConfigExtras.cmake.in
-+++ b/src/corelib/Qt5CoreConfigExtras.cmake.in
-@@ -5,7 +5,7 @@ if (NOT TARGET Qt5::qmake)
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
- !!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qmake$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
- _qt5_Core_check_file_exists(${imported_location})
-
-@@ -20,7 +20,7 @@ if (NOT TARGET Qt5::moc)
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
- !!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/moc$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
- _qt5_Core_check_file_exists(${imported_location})
-
-@@ -37,7 +37,7 @@ if (NOT TARGET Qt5::rcc)
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
- !!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/rcc$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
- _qt5_Core_check_file_exists(${imported_location})
-
-diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in
-index 1d94715..301af8f 100644
---- a/src/dbus/Qt5DBusConfigExtras.cmake.in
-+++ b/src/dbus/Qt5DBusConfigExtras.cmake.in
-@@ -5,7 +5,7 @@ if (NOT TARGET Qt5::qdbuscpp2xml)
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
- !!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
- _qt5_DBus_check_file_exists(${imported_location})
-
-@@ -20,7 +20,7 @@ if (NOT TARGET Qt5::qdbusxml2cpp)
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
- !!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
- _qt5_DBus_check_file_exists(${imported_location})
-
-diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
-index 99d87e2..5621dc0 100644
---- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in
-+++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
-@@ -5,7 +5,7 @@ if (NOT TARGET Qt5::uic)
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
- !!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/uic$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
- _qt5_Widgets_check_file_exists(${imported_location})
-
diff --git a/meta/recipes-qt/qt5/qtbase/0003-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch b/meta/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch
index cc0a330517..db8005572b 100644
--- a/meta/recipes-qt/qt5/qtbase/0003-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch
+++ b/meta/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch
@@ -1,4 +1,4 @@
-From f1d359e60e76867cee1df636c5c834fe829f5316 Mon Sep 17 00:00:00 2001
+From a5e43264353bafc2ea4ad6813dbab6b271aee388 Mon Sep 17 00:00:00 2001
From: Holger Freyther <zecke@selfish.org>
Date: Wed, 26 Sep 2012 17:22:30 +0200
Subject: [PATCH] qlibraryinfo: allow to set qt.conf from the outside using the
@@ -19,18 +19,18 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp
-index b4ba0b5..11d4c00 100644
+index 14be4c3..1bddb53 100644
--- a/src/corelib/global/qlibraryinfo.cpp
+++ b/src/corelib/global/qlibraryinfo.cpp
-@@ -172,7 +172,10 @@ void QLibrarySettings::load()
+@@ -157,7 +157,10 @@ void QLibrarySettings::load()
+
QSettings *QLibraryInfoPrivate::findConfiguration()
{
- #ifdef QT_BUILD_QMAKE
-- QString qtconfig = qmake_libraryInfoFile();
-+ QByteArray config = getenv("OE_QMAKE_QTCONF_PATH");
+- QString qtconfig = QStringLiteral(":/qt/etc/qt.conf");
++ QByteArray config = getenv("QT_CONF_PATH");
+ QString qtconfig = QFile::decodeName(config);
+ if(!QFile::exists(qtconfig))
-+ qtconfig = qmake_libraryInfoFile();
++ qtconfig = QStringLiteral(":/qt/etc/qt.conf");
if (QFile::exists(qtconfig))
return new QSettings(qtconfig, QSettings::IniFormat);
- #else
+ #ifdef QT_BUILD_QMAKE
diff --git a/meta/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch b/meta/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch
new file mode 100644
index 0000000000..aead543a12
--- /dev/null
+++ b/meta/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch
@@ -0,0 +1,226 @@
+From 1e9313a736c9d381c70e723d8075c206bfaf47f5 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+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
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+Signed-off-by: Simon Busch <morphis@gravedo.de>
+Signed-off-by: Jonathan Liu <net147@gmail.com>
+
+Conflicts:
+ configure
+---
+ configure | 14 ++++++++++++++
+ mkspecs/features/qt_functions.prf | 6 +++++-
+ mkspecs/features/qt_tool.prf | 5 +++--
+ qtbase.pro | 13 ++++++++++---
+ src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++---
+ src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++--
+ src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +-
+ 7 files changed, 38 insertions(+), 12 deletions(-)
+
+diff --git a/configure b/configure
+index 9e552c6..ae724d6 100755
+--- a/configure
++++ b/configure
+@@ -826,6 +826,7 @@ QT_HOST_BINS=
+ QT_HOST_LIBS=
+ QT_HOST_DATA=
+ QT_EXT_PREFIX=
++QT_EXTERNAL_HOST_BINS=
+
+ #flags for SQL drivers
+ QT_CFLAGS_PSQL=
+@@ -945,6 +946,7 @@ while [ "$#" -gt 0 ]; do
+ -testsdir| \
+ -hostdatadir| \
+ -hostbindir| \
++ -external-hostbindir| \
+ -hostlibdir| \
+ -extprefix| \
+ -sysroot| \
+@@ -1175,6 +1177,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"
+@@ -2444,6 +2449,10 @@ Installation options:
+ -hostdatadir <dir> . Data used by qmake will be installed to <dir>
+ (default HOSTPREFIX)
+
++ -external-hostbindir <dir> 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
+@@ -3195,6 +3204,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 4a1d265..a2bdd29 100644
+--- a/mkspecs/features/qt_functions.prf
++++ b/mkspecs/features/qt_functions.prf
+@@ -70,7 +70,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) {
+ cmd = perl -w $$system_path($${cmd}.pl)
+ } else: contains(QMAKE_HOST.os, Windows) {
+diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf
+index 839c3d6..45934a0 100644
+--- a/mkspecs/features/qt_tool.prf
++++ b/mkspecs/features/qt_tool.prf
+@@ -14,10 +14,11 @@ 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) {
++!build_pass:if(!host_build|!force_bootstrap|force_independent):isEmpty(QT_EXTERNAL_HOST_BINS) {
+ isEmpty(MODULE):MODULE = $$TARGET
+
+ !host_build|!force_bootstrap: MODULE_DEPENDS = $$replace(QT, -private$, _private)
+diff --git a/qtbase.pro b/qtbase.pro
+index 78f9b3a..f4b7fc4 100644
+--- a/qtbase.pro
++++ b/qtbase.pro
+@@ -37,12 +37,16 @@ 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 = $$OUT_PWD/bin/qmake.exe
+-} else {
+- qmake.files = $$OUT_PWD/bin/qmake
++ qmake.files = $${qmake.files}.exe
+ }
+ INSTALLS += qmake
+
+@@ -59,6 +63,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 91a4eb6..25df27c 100644
+--- a/src/corelib/Qt5CoreConfigExtras.cmake.in
++++ b/src/corelib/Qt5CoreConfigExtras.cmake.in
+@@ -5,7 +5,7 @@ if (NOT TARGET Qt5::qmake)
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+ set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qmake$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+ _qt5_Core_check_file_exists(${imported_location})
+
+@@ -20,7 +20,7 @@ if (NOT TARGET Qt5::moc)
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+ set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/moc$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+ _qt5_Core_check_file_exists(${imported_location})
+
+@@ -37,7 +37,7 @@ if (NOT TARGET Qt5::rcc)
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+ set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/rcc$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+ _qt5_Core_check_file_exists(${imported_location})
+
+diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in
+index 1d94715..301af8f 100644
+--- a/src/dbus/Qt5DBusConfigExtras.cmake.in
++++ b/src/dbus/Qt5DBusConfigExtras.cmake.in
+@@ -5,7 +5,7 @@ if (NOT TARGET Qt5::qdbuscpp2xml)
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+ set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+ _qt5_DBus_check_file_exists(${imported_location})
+
+@@ -20,7 +20,7 @@ if (NOT TARGET Qt5::qdbusxml2cpp)
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+ set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+ _qt5_DBus_check_file_exists(${imported_location})
+
+diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+index 99d87e2..5621dc0 100644
+--- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in
++++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+@@ -5,7 +5,7 @@ if (NOT TARGET Qt5::uic)
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+ set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/uic$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+ _qt5_Widgets_check_file_exists(${imported_location})
+
diff --git a/meta/recipes-qt/qt5/qtbase/0004-configure-bump-path-length-from-256-to-512-character.patch b/meta/recipes-qt/qt5/qtbase/0004-configure-bump-path-length-from-256-to-512-character.patch
deleted file mode 100644
index 5a3dfea2f5..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0004-configure-bump-path-length-from-256-to-512-character.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From cb813ec552f965208ecfc9750a0fbf10841322fb Mon Sep 17 00:00:00 2001
-From: Denys Dmytriyenko <denys@ti.com>
-Date: Tue, 25 Aug 2015 10:05:15 -0400
-Subject: [PATCH] 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.
-
-Also update length of EXT_PREFIX and HOST_PREFIX now.
-
-Change-Id: If98dd57160efe9c98c36148cdf872f50b3d38118
-Signed-off-by: Denys Dmytriyenko <denys@ti.com>
----
- configure.pri | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/configure.pri b/configure.pri
-index ea48255..0699701 100644
---- a/configure.pri
-+++ b/configure.pri
-@@ -796,10 +796,10 @@ defineTest(qtConfOutput_preparePaths) {
- "static const char qt_configure_installation [12+11] = \"qt_instdate=2012-12-20\";" \
- "" \
- "/* Installation Info */" \
-- "static const char qt_configure_prefix_path_str [12+256] = \"qt_prfxpath=$$config.input.prefix\";" \
-+ "static const char qt_configure_prefix_path_str [12+512] = \"qt_prfxpath=$$config.input.prefix\";" \
- "$${LITERAL_HASH}ifdef QT_BUILD_QMAKE" \
-- "static const char qt_configure_ext_prefix_path_str [12+256] = \"qt_epfxpath=$$config.input.extprefix\";" \
-- "static const char qt_configure_host_prefix_path_str [12+256] = \"qt_hpfxpath=$$config.input.hostprefix\";" \
-+ "static const char qt_configure_ext_prefix_path_str [12+512] = \"qt_epfxpath=$$config.input.extprefix\";" \
-+ "static const char qt_configure_host_prefix_path_str [12+512] = \"qt_hpfxpath=$$config.input.hostprefix\";" \
- "$${LITERAL_HASH}endif" \
- "" \
- "static const short qt_configure_str_offsets[] = {" \
diff --git a/meta/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch b/meta/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch
new file mode 100644
index 0000000000..e29f85f9aa
--- /dev/null
+++ b/meta/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch
@@ -0,0 +1,106 @@
+From da99a6be6f55cce1363962ffa897b868a6009cd3 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Sat, 27 Apr 2013 23:15:37 +0200
+Subject: [PATCH] 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 <joerg.bornemann@digia.com>
+
+* 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 <Martin.Jansa@gmail.com>
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+Signed-off-by: Jonathan Liu <net147@gmail.com>
+---
+ mkspecs/features/qt.prf | 13 +++++++++++++
+ mkspecs/features/qt_common.prf | 2 +-
+ 2 files changed, 14 insertions(+), 1 deletion(-)
+
+diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf
+index ddf99da..9596b87 100644
+--- a/mkspecs/features/qt.prf
++++ b/mkspecs/features/qt.prf
+@@ -318,6 +318,19 @@ contains(TEMPLATE, .*app) {
+ QTPLUGIN = $$manualplugs $$autoplugs
+ }
+
++contains(TEMPLATE, .*lib) {
++ pkgconfig_prefix_replace.match = "prefix=$$[QT_SYSROOT]"
++ pkgconfig_prefix_replace.replace = "prefix="
++ pkgconfig_prefix_replace.CONFIG = path
++ QMAKE_PKGCONFIG_INSTALL_REPLACE += pkgconfig_prefix_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
++}
++
+ QT_PLUGIN_VERIFY = DEPLOYMENT_PLUGIN
+ contains(QT_CONFIG, static) {
+ QT_PLUGIN_VERIFY += QTPLUGIN
+diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf
+index 08b3f3e..8a667f3 100644
+--- a/mkspecs/features/qt_common.prf
++++ b/mkspecs/features/qt_common.prf
+@@ -38,7 +38,7 @@ contains(TEMPLATE, .*lib) {
+ lib_replace.replace =
+ } else {
+ lib_replace.match = $$rplbase/lib
+- lib_replace.replace = $$qqt_libdir
++ lib_replace.replace = "\$$\\{libdir}"
+ }
+ lib_replace.CONFIG = path
+ QMAKE_PRL_INSTALL_REPLACE += lib_replace
diff --git a/meta/recipes-qt/qt5/qtbase/0005-Disable-all-unknown-features-instead-of-erroring-out.patch b/meta/recipes-qt/qt5/qtbase/0005-Disable-all-unknown-features-instead-of-erroring-out.patch
deleted file mode 100644
index 2e261b813e..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0005-Disable-all-unknown-features-instead-of-erroring-out.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 6cd8e808e0eb8fa26976da66dd3dfdd58c1d026a Mon Sep 17 00:00:00 2001
-From: Samuli Piippo <samuli.piippo@qt.io>
-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 d5dcda2..501151d 100644
---- a/mkspecs/features/qt_configure.prf
-+++ b/mkspecs/features/qt_configure.prf
-@@ -1251,7 +1251,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}.")
diff --git a/meta/recipes-qt/qt5/qtbase/0005-configure-bump-path-length-from-256-to-512-character.patch b/meta/recipes-qt/qt5/qtbase/0005-configure-bump-path-length-from-256-to-512-character.patch
new file mode 100644
index 0000000000..7ac394a723
--- /dev/null
+++ b/meta/recipes-qt/qt5/qtbase/0005-configure-bump-path-length-from-256-to-512-character.patch
@@ -0,0 +1,33 @@
+From 8eaae5ee0e77b3783afd0f10a89004fd981f29b3 Mon Sep 17 00:00:00 2001
+From: Denys Dmytriyenko <denys@ti.com>
+Date: Tue, 25 Aug 2015 10:05:15 -0400
+Subject: [PATCH] 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.
+
+Also update length of EXT_PREFIX and HOST_PREFIX now.
+
+Signed-off-by: Denys Dmytriyenko <denys@ti.com>
+---
+ configure | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/configure b/configure
+index ae724d6..df089f2 100755
+--- a/configure
++++ b/configure
+@@ -3959,10 +3959,10 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$
+ static const char qt_configure_installation [12+11] = "qt_instdate=2012-12-20";
+
+ /* Installation Info */
+-static const char qt_configure_prefix_path_str [256 + 12] = "qt_prfxpath=$QT_INSTALL_PREFIX";
++static const char qt_configure_prefix_path_str [512 + 12] = "qt_prfxpath=$QT_INSTALL_PREFIX";
+ #ifdef QT_BUILD_QMAKE
+-static const char qt_configure_ext_prefix_path_str [256 + 12] = "qt_epfxpath=$QT_EXT_PREFIX";
+-static const char qt_configure_host_prefix_path_str [256 + 12] = "qt_hpfxpath=$QT_HOST_PREFIX";
++static const char qt_configure_ext_prefix_path_str [512 + 12] = "qt_epfxpath=$QT_EXT_PREFIX";
++static const char qt_configure_host_prefix_path_str [512 + 12] = "qt_hpfxpath=$QT_HOST_PREFIX";
+ #endif
+
+ static const short qt_configure_str_offsets[] = {
diff --git a/meta/recipes-qt/qt5/qtbase/0006-QOpenGLPaintDevice-sub-area-support.patch b/meta/recipes-qt/qt5/qtbase/0006-QOpenGLPaintDevice-sub-area-support.patch
new file mode 100644
index 0000000000..3e6f459c90
--- /dev/null
+++ b/meta/recipes-qt/qt5/qtbase/0006-QOpenGLPaintDevice-sub-area-support.patch
@@ -0,0 +1,154 @@
+From b4be62e9ac936b110375492dcdc7aeccfe46bd29 Mon Sep 17 00:00:00 2001
+From: Jani Hautakangas <jani.hautakangas@ixonos.com>
+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 <Martin.Jansa@gmail.com>
+---
+ 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 17a3277..85425da 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
+ */
+@@ -216,6 +222,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 804e485..88b481a 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 54ea092..f660143 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 0b92bf4..f41e059 100644
+--- a/src/gui/opengl/qopenglpaintengine.cpp
++++ b/src/gui/opengl/qopenglpaintengine.cpp
+@@ -2078,7 +2078,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;
+@@ -2165,7 +2168,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();
+@@ -2207,6 +2210,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);
+ }
+@@ -2215,12 +2219,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 f1ec669..6d302b8 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 c179143..fad68d5 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()) {
diff --git a/meta/recipes-qt/qt5/qtbase/0007-Delete-qlonglong-and-qulonglong.patch b/meta/recipes-qt/qt5/qtbase/0007-Delete-qlonglong-and-qulonglong.patch
deleted file mode 100644
index fd9a9e5a56..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0007-Delete-qlonglong-and-qulonglong.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From efaae3535a1ac006ec1b3003258b83d905265fd3 Mon Sep 17 00:00:00 2001
-From: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
-Date: Wed, 7 Jun 2017 21:00:49 +0900
-Subject: [PATCH] Delete qlonglong and qulonglong
-
-Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
----
- tests/auto/corelib/thread/qatomicinteger/qatomicinteger.pro | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/tests/auto/corelib/thread/qatomicinteger/qatomicinteger.pro b/tests/auto/corelib/thread/qatomicinteger/qatomicinteger.pro
-index 09458bd..59a120e 100644
---- a/tests/auto/corelib/thread/qatomicinteger/qatomicinteger.pro
-+++ b/tests/auto/corelib/thread/qatomicinteger/qatomicinteger.pro
-@@ -5,10 +5,8 @@ SUBDIRS=\
- char32_t \
- int \
- long \
-- qlonglong \
- qptrdiff \
- quintptr \
-- qulonglong \
- schar \
- short \
- uchar \
diff --git a/meta/recipes-qt/qt5/qtbase/0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch b/meta/recipes-qt/qt5/qtbase/0007-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch
index 5fed2ff891..36a4b18147 100644
--- a/meta/recipes-qt/qt5/qtbase/0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch
+++ b/meta/recipes-qt/qt5/qtbase/0007-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch
@@ -1,22 +1,22 @@
-From 7c7545fc64e78b2a4a411aa392df6f424ee27c5a Mon Sep 17 00:00:00 2001
+From 6649a3df359d3d55b1caaa6601692a1dcc2ef92c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 3 Sep 2017 09:44:48 -0700
-Subject: [PATCH] linux-clang: Invert conditional for defining QT_SOCKLEN_T
+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 for other libcswhich may define
+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 <raj.khem@gmail.com>
---
- mkspecs/linux-clang/qplatformdefs.h | 6 +++---
+ mkspecs/linux-oe-g++/qplatformdefs.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
-diff --git a/mkspecs/linux-clang/qplatformdefs.h b/mkspecs/linux-clang/qplatformdefs.h
-index d29225f..a0cdb57 100644
---- a/mkspecs/linux-clang/qplatformdefs.h
-+++ b/mkspecs/linux-clang/qplatformdefs.h
-@@ -84,10 +84,10 @@
+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
diff --git a/meta/recipes-qt/qt5/qtbase/0008-Replace-pthread_yield-with-sched_yield.patch b/meta/recipes-qt/qt5/qtbase/0008-Replace-pthread_yield-with-sched_yield.patch
deleted file mode 100644
index 81269d2e87..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0008-Replace-pthread_yield-with-sched_yield.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From d79fecb4e8d2040efdc295d06c5e24bdf3cf6b60 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 27 Jul 2017 08:02:51 -0700
-Subject: [PATCH] Replace pthread_yield with sched_yield
-
-On Linux pthead_yield is same as sched_yield implementation wise
-and sched_yield is available on all libc
-implementations on Linux
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp | 4 ++--
- tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp | 5 +++--
- 2 files changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
-index 076610a..cb8431f 100644
---- a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
-+++ b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
-@@ -34,7 +34,7 @@
- #include "tst_qvariant_common.h"
-
- #ifdef Q_OS_LINUX
--# include <pthread.h>
-+# include <sched.h>
- #endif
-
- #include <algorithm>
-@@ -199,7 +199,7 @@ protected:
- const char *nm = name.constData();
- int tp = qRegisterMetaType<Bar>(nm);
- #if defined(Q_OS_LINUX) && !defined(Q_OS_ANDROID)
-- pthread_yield();
-+ sched_yield();
- #endif
- QMetaType info(tp);
- if (!info.isValid()) {
-diff --git a/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp b/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp
-index e45eda2..e64f329 100644
---- a/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp
-+++ b/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp
-@@ -78,6 +78,7 @@
- #include <stdlib.h>
- #include <sys/stat.h>
- #include <unistd.h>
-+#include <sched.h>
- #endif
-
- #include "private/qhostinfo_p.h"
-@@ -2136,8 +2137,8 @@ public slots:
-
- #if defined(Q_OS_MAC)
- pthread_yield_np();
--#elif defined Q_OS_LINUX && !defined Q_OS_ANDROID
-- pthread_yield();
-+#elif defined Q_OS_LINUX
-+ sched_yield();
- #endif
- if (!sock->waitForConnected()) {
- networkTimeout = true;
diff --git a/meta/recipes-qt/qt5/qtbase/0008-configure-paths-for-target-qmake-properly.patch b/meta/recipes-qt/qt5/qtbase/0008-configure-paths-for-target-qmake-properly.patch
new file mode 100644
index 0000000000..3375c8c3d1
--- /dev/null
+++ b/meta/recipes-qt/qt5/qtbase/0008-configure-paths-for-target-qmake-properly.patch
@@ -0,0 +1,75 @@
+From 5e8f8f44227fea48b84fd79e1fc4122d66776bf3 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Fri, 13 Nov 2015 12:36:11 +0100
+Subject: [PATCH] configure paths for target qmake properly
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+to use this patch in all qtbase/qtbase-native(sdk) changes ore made
+conditionally based on QT_CROSS_COMPILE
+
+Upstream-Status: Inappropriate [OE specific]
+
+Change-Id: I2b2f00c496216e98fbe14801f9e840ef5333c4b6
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 23 +++++++++++++++++++----
+ 1 file changed, 19 insertions(+), 4 deletions(-)
+
+diff --git a/configure b/configure
+index df089f2..224f9f5 100755
+--- a/configure
++++ b/configure
+@@ -3904,8 +3904,13 @@ if [ "$CFG_COMPILE_EXAMPLES" = "yes" ]; then
+ QMAKE_CONFIG="$QMAKE_CONFIG compile_examples"
+ fi
+
+-shortxspec=`echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"`
+-shortspec=`echo $QMAKESPEC | sed "s,^${relpath}/mkspecs/,,"`
++if [ "$QT_CROSS_COMPILE" = "yes" ] ; then
++ shortxspec=linux-g++
++ shortspec=linux-g++
++else
++ shortxspec=`echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"`
++ shortspec=`echo $QMAKESPEC | sed "s,^${relpath}/mkspecs/,,"`
++fi
+
+ QT_CONFIGURE_STR_OFF=0
+
+@@ -3938,7 +3943,11 @@ QT_CONFIGURE_STRS_ALL=$QT_CONFIGURE_STRS
+
+ QT_CONFIGURE_STR_OFFSETS=
+ QT_CONFIGURE_STRS=
+-addConfStr "$CFG_SYSROOT"
++if [ "$QT_CROSS_COMPILE" = "yes" ] ; then
++ addConfStr ""
++else
++ addConfStr "$CFG_SYSROOT"
++fi
+ addConfStr "$QT_REL_HOST_BINS"
+ addConfStr "$QT_REL_HOST_LIBS"
+ addConfStr "$QT_REL_HOST_DATA"
+@@ -3950,6 +3959,12 @@ addConfStr "$shortspec"
+ #-------------------------------------------------------------------------------
+ [ -d "$outpath/src/corelib/global" ] || mkdir -p "$outpath/src/corelib/global"
+
++if [ "$QT_CROSS_COMPILE" = "yes" ] ; then
++ QT_TARGET_PREFIX=$QT_EXT_PREFIX
++else
++ QT_TARGET_PREFIX=$QT_HOST_PREFIX
++fi
++
+ cat > "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
+ /* License Info */
+ static const char qt_configure_licensee_str [256 + 12] = "qt_lcnsuser=$Licensee";
+@@ -3962,7 +3977,7 @@ static const char qt_configure_installation [12+11] = "qt_instdate=2
+ static const char qt_configure_prefix_path_str [512 + 12] = "qt_prfxpath=$QT_INSTALL_PREFIX";
+ #ifdef QT_BUILD_QMAKE
+ static const char qt_configure_ext_prefix_path_str [512 + 12] = "qt_epfxpath=$QT_EXT_PREFIX";
+-static const char qt_configure_host_prefix_path_str [512 + 12] = "qt_hpfxpath=$QT_HOST_PREFIX";
++static const char qt_configure_host_prefix_path_str [512 + 12] = "qt_hpfxpath=$QT_TARGET_PREFIX";
+ #endif
+
+ static const short qt_configure_str_offsets[] = {
diff --git a/meta/recipes-qt/qt5/qtbase/0009-Add-OE-specific-specs-for-clang-compiler.patch b/meta/recipes-qt/qt5/qtbase/0009-Add-OE-specific-specs-for-clang-compiler.patch
deleted file mode 100644
index c210d644b6..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0009-Add-OE-specific-specs-for-clang-compiler.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From aaeadb4326f1f9df7bbafa0b9fa6937504a1c035 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 3 Sep 2017 09:11:44 -0700
-Subject: [PATCH] Add OE specific specs for clang compiler
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- mkspecs/linux-oe-clang/qmake.conf | 43 ++++++++++++++++++++++++++++++++++
- mkspecs/linux-oe-clang/qplatformdefs.h | 1 +
- 2 files changed, 44 insertions(+)
- create mode 100644 mkspecs/linux-oe-clang/qmake.conf
- create mode 100644 mkspecs/linux-oe-clang/qplatformdefs.h
-
-diff --git a/mkspecs/linux-oe-clang/qmake.conf b/mkspecs/linux-oe-clang/qmake.conf
-new file mode 100644
-index 0000000..ffc9f05
---- /dev/null
-+++ b/mkspecs/linux-oe-clang/qmake.conf
-@@ -0,0 +1,43 @@
-+#
-+# qmake configuration for linux-g++ with modifications for building with OpenEmbedded
-+#
-+
-+MAKEFILE_GENERATOR = UNIX
-+CONFIG += incremental
-+QMAKE_INCREMENTAL_STYLE = sublib
-+
-+include(../common/linux.conf)
-+
-+# QMAKE_<TOOL> (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)
-+
-+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)
-+
-+include(../common/clang.conf)
-+
-+# tc settings from g++-base.conf
-+QMAKE_COMPILER = $$(OE_QMAKE_COMPILER) clang
-+QMAKE_CC = $$(OE_QMAKE_CC)
-+QMAKE_CXX = $$(OE_QMAKE_CXX)
-+
-+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)
-+
-+# for the SDK
-+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-clang/qplatformdefs.h b/mkspecs/linux-oe-clang/qplatformdefs.h
-new file mode 100644
-index 0000000..880c927
---- /dev/null
-+++ b/mkspecs/linux-oe-clang/qplatformdefs.h
-@@ -0,0 +1 @@
-+#include "../linux-clang/qplatformdefs.h"
diff --git a/meta/recipes-qt/qt5/qtbase/0006-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch b/meta/recipes-qt/qt5/qtbase/0009-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch
index cf1a716f6e..c04d0b8e9a 100644
--- a/meta/recipes-qt/qt5/qtbase/0006-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch
+++ b/meta/recipes-qt/qt5/qtbase/0009-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch
@@ -1,4 +1,4 @@
-From e3fe48be51aa67227ac1b34c01e4c913d82866c2 Mon Sep 17 00:00:00 2001
+From 34864cac45a112f27c2587ebfff7f10184607fad Mon Sep 17 00:00:00 2001
From: Pascal Bach <pascal.bach@siemens.com>
Date: Wed, 11 May 2016 15:20:41 +0200
Subject: [PATCH] Pretend Qt5 wasn't found if OE_QMAKE_PATH_EXTERNAL_HOST_BINS
@@ -30,7 +30,7 @@ Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
2 files changed, 10 insertions(+)
diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-index 55c74aa..f9ec328 100644
+index d2358ca..feb73c0 100644
--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -9,6 +9,11 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0)
@@ -46,7 +46,7 @@ index 55c74aa..f9ec328 100644
!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
diff --git a/src/corelib/Qt5Config.cmake.in b/src/corelib/Qt5Config.cmake.in
-index 75b5348..ed31888 100644
+index a872d0e..233d663 100644
--- a/src/corelib/Qt5Config.cmake.in
+++ b/src/corelib/Qt5Config.cmake.in
@@ -3,6 +3,11 @@ if (CMAKE_VERSION VERSION_LESS 2.8.9)
diff --git a/meta/recipes-qt/qt5/qtbase/0013-Always-build-uic-and-qvkgen.patch b/meta/recipes-qt/qt5/qtbase/0010-Always-build-uic.patch
index 3d40515f1a..721f47d114 100644
--- a/meta/recipes-qt/qt5/qtbase/0013-Always-build-uic-and-qvkgen.patch
+++ b/meta/recipes-qt/qt5/qtbase/0010-Always-build-uic.patch
@@ -1,7 +1,7 @@
-From 2ea3a1612452f1dc9c2febb4ae610194f67e39d6 Mon Sep 17 00:00:00 2001
+From d3e797e0fa9bb9425bc50ac280685b541ed830c7 Mon Sep 17 00:00:00 2001
From: Martin Jansa <Martin.Jansa@gmail.com>
Date: Sat, 16 Nov 2013 00:32:30 +0100
-Subject: [PATCH] Always build uic and qvkgen
+Subject: [PATCH] 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.
@@ -14,15 +14,15 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/src.pro b/src/src.pro
-index a73729a..c7668b5 100644
+index dd15559..b29a33c 100644
--- a/src/src.pro
+++ b/src/src.pro
-@@ -213,7 +213,7 @@ qtConfig(gui) {
+@@ -189,7 +189,7 @@ contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent
}
}
}
-SUBDIRS += src_plugins
-+SUBDIRS += src_plugins src_tools_uic src_tools_qvkgen
++SUBDIRS += src_plugins src_tools_uic
nacl: SUBDIRS -= src_network src_testlib
diff --git a/meta/recipes-qt/qt5/qtbase/0011-Add-external-hostbindir-option-for-native-sdk.patch b/meta/recipes-qt/qt5/qtbase/0011-Add-external-hostbindir-option-for-native-sdk.patch
new file mode 100644
index 0000000000..5d2b979bc4
--- /dev/null
+++ b/meta/recipes-qt/qt5/qtbase/0011-Add-external-hostbindir-option-for-native-sdk.patch
@@ -0,0 +1,131 @@
+From 1bea31d8abd34ab33daec6df91ffc0bc63b75f9e Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+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 <Martin.Jansa@gmail.com>
+Signed-off-by: Simon Busch <morphis@gravedo.de>
+Signed-off-by: Jonathan Liu <net147@gmail.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+
+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 224f9f5..271c4f4 100755
+--- a/configure
++++ b/configure
+@@ -3951,6 +3951,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 b9139d5..6725ab7 100644
+--- a/qmake/property.cpp
++++ b/qmake/property.cpp
+@@ -69,6 +69,7 @@ static const struct {
+ { "QT_HOST_DATA", QLibraryInfo::HostDataPath, true, false },
+ { "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, true, false },
+ { "QT_HOST_LIBS", QLibraryInfo::HostLibrariesPath, true, false },
++ { "QT_EXTERNAL_HOST_BINS", QLibraryInfo::ExternalHostBinariesPath, true, false },
+ { "QMAKE_SPEC", QLibraryInfo::HostSpecPath, true, true },
+ { "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true, true },
+ };
+diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp
+index 1bddb53..cd0a666 100644
+--- a/src/corelib/global/qlibraryinfo.cpp
++++ b/src/corelib/global/qlibraryinfo.cpp
+@@ -375,7 +375,7 @@ QLibraryInfo::isDebugBuild()
+ */
+
+ static const struct {
+- char key[19], value[13];
++ char key[21], value[13];
+ } qtConfEntries[] = {
+ { "Prefix", "." },
+ { "Documentation", "doc" }, // should be ${Data}/doc
+@@ -400,6 +400,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 1ad7637..5a8b127 100644
+--- a/src/corelib/global/qlibraryinfo.h
++++ b/src/corelib/global/qlibraryinfo.h
+@@ -81,6 +81,7 @@ public:
+ HostBinariesPath,
+ HostLibrariesPath,
+ HostDataPath,
++ ExternalHostBinariesPath,
+ TargetSpecPath,
+ HostSpecPath,
+ HostPrefixPath,
+diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
+index 2b7a1d6..77ba91e 100644
+--- a/tools/configure/configureapp.cpp
++++ b/tools/configure/configureapp.cpp
+@@ -1267,6 +1267,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)
+@@ -4269,6 +4276,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"]);
+@@ -4288,6 +4298,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/meta/recipes-qt/qt5/qtbase/0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch b/meta/recipes-qt/qt5/qtbase/0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch
deleted file mode 100644
index a0aaa520ee..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From ba70f3ca46d921c20bebb5cb9d4b41e64bd02d8b Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 3 Sep 2017 10:11:50 -0700
-Subject: [PATCH] tst_qlocale: Enable QT_USE_FENV only on glibc
-
-musl does not have feenableexcept function
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tests/auto/corelib/tools/qlocale/tst_qlocale.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp b/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
-index d424e60..3eae828 100644
---- a/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
-+++ b/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
-@@ -46,7 +46,7 @@
- #include <private/qlocale_tools_p.h>
- #include <qnumeric.h>
-
--#if defined(Q_OS_LINUX) && !defined(__UCLIBC__)
-+#if defined(Q_OS_LINUX) && defined(__GLIBC__)
- # define QT_USE_FENV
- #endif
-
diff --git a/meta/recipes-qt/qt5/qtbase/0012-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch b/meta/recipes-qt/qt5/qtbase/0012-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
deleted file mode 100644
index fe1fcf57ae..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0012-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 81fc64f7f3a8b0554fd8d1b96b113bc04b5f0b5c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 14 Feb 2018 17:08:43 -0800
-Subject: [PATCH] mkspecs/common/gcc-base.conf: Use -I instead of -isystem
-
--isystem fails to build when code uses include_next on certain files e.g.
-
-qtbase/5.10.0+gitAUTOINC+50117d738a-r0/recipe-sysroot/usr/include/c++/7.3.0/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
- #include_next <stdlib.h>
- ^~~~~~~~~~
-compilation terminated.
-make[2]: *** [Makefile:11592: .obj/qgenericpluginfactory.o] Error 1
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- mkspecs/common/gcc-base.conf | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
-index 234f71d..ee3da02 100644
---- a/mkspecs/common/gcc-base.conf
-+++ b/mkspecs/common/gcc-base.conf
-@@ -46,7 +46,7 @@ QMAKE_CFLAGS_DEBUG += -g
- QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC
- QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC
- QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC
--QMAKE_CFLAGS_ISYSTEM = -isystem
-+QMAKE_CFLAGS_ISYSTEM = -I
- QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
- QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
- QMAKE_CFLAGS_EXCEPTIONS_OFF += -fno-exceptions
diff --git a/meta/recipes-qt/qt5/qtbase/0014-Bootstrap-without-linkat-feature.patch b/meta/recipes-qt/qt5/qtbase/0014-Bootstrap-without-linkat-feature.patch
deleted file mode 100644
index c733c1566d..0000000000
--- a/meta/recipes-qt/qt5/qtbase/0014-Bootstrap-without-linkat-feature.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 77365eda4dd1c4c26803b3f0d1f411b7416ad531 Mon Sep 17 00:00:00 2001
-From: Samuli Piippo <samuli.piippo@qt.io>
-Date: Fri, 24 Nov 2017 15:16:31 +0200
-Subject: [PATCH] Bootstrap without linkat feature
-
-qmake does not work together with pseudo when unnamed temporary files
-are used with linkat.
-
-Upstream-Status: Inappropriate [OE specific]
-[YOCTO #11996]
----
- src/corelib/global/qconfig-bootstrapped.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h
-index dabb715..5b4ff86 100644
---- a/src/corelib/global/qconfig-bootstrapped.h
-+++ b/src/corelib/global/qconfig-bootstrapped.h
-@@ -88,7 +88,7 @@
- #define QT_FEATURE_futimes -1
- #define QT_FEATURE_library -1
- #ifdef __linux__
--# define QT_FEATURE_linkat 1
-+# define QT_FEATURE_linkat -1
- #else
- # define QT_FEATURE_linkat -1
- #endif