aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2013-07-03 16:14:44 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2013-07-25 12:14:11 +0200
commit902f55b957ba0407816739bfcae864c6bd2c3d68 (patch)
tree220ada24d4edd83938e8eceaf24b91ad81ff5231
parentca4a0758e17c69905df6eda86fe678a4f10f50f7 (diff)
qt5: add recipes for 5.1.0
* only rebased patches and updated SRC_URI checksum, haven't even build tested it yet Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r--conf/distro/include/qt5-versions.inc4
-rw-r--r--recipes-qt/qt5/qt5-5.1.0.inc22
-rw-r--r--recipes-qt/qt5/qt5.inc1
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0001-Add-linux-oe-g-platform.patch304
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0001-Always-build-uic.patch40
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch36
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0003-Add-external-hostbindir-option.patch218
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0004-qt_functions-temporary-remove-isEmpty-check.patch51
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0005-qmake-is-already-built-in-qtbase-native.patch30
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0006-Allow-building-a-separate-qmake-for-the-target.patch29
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch29
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0008-qt_module-Fix-pkgconfig-replacement.patch70
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0009-qt_module-Fix-paths-in-.prl-files.patch62
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0010-wayland-scanner-disable-silent-rules.patch82
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch44
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch37
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0013-Disable-mkv8snapshot.patch47
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0014-enables-tslib-device-to-be-read-from-env-variable.patch35
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0015-qtbase-allow-build-of-examples.patch48
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0018-QOpenGLPaintDevice-sub-area-support.patch154
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0019-Fix-FBO-restoring-in-QOpenGLTextureGlyphCache.patch49
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0020-Use-BGRA-extension-in-bindTexture.patch34
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0021-configure-make-pulseaudio-a-configurable-option.patch36
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0022-configure-make-alsa-a-configurable-option.patch35
-rw-r--r--recipes-qt/qt5/qtbase-5.1.0/0023-configure-make-freetype-a-configurable-option.patch35
-rw-r--r--recipes-qt/qt5/qtbase-native_5.1.0.bb11
-rw-r--r--recipes-qt/qt5/qtbase_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtdeclarative-5.1.0/0001-qmltestexample-fix-link.patch46
-rw-r--r--recipes-qt/qt5/qtdeclarative-5.1.0/0003-Fix-wrong-calculation-of-viewPort-for-transitions.patch41
-rw-r--r--recipes-qt/qt5/qtdeclarative_5.1.0.bb15
-rw-r--r--recipes-qt/qt5/qtgraphicaleffects_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtimageformats_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtjsbackend-5.1.0/0001-Install-the-mkv8snapshot-tool-to-the-native-side.patch32
-rw-r--r--recipes-qt/qt5/qtjsbackend-5.1.0/0002-v8.pro-respect-external-host-bindir-when-set.patch31
-rw-r--r--recipes-qt/qt5/qtjsbackend-native_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtjsbackend_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtmultimedia_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtquick1_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtscript_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtsensors_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtsvg_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtwebkit_5.1.0.bb5
-rw-r--r--recipes-qt/qt5/qtxmlpatterns_5.1.0.bb5
43 files changed, 1767 insertions, 1 deletions
diff --git a/conf/distro/include/qt5-versions.inc b/conf/distro/include/qt5-versions.inc
index 01a5a25a..f033a20a 100644
--- a/conf/distro/include/qt5-versions.inc
+++ b/conf/distro/include/qt5-versions.inc
@@ -1,5 +1,5 @@
# Select which version you prefer by defining QT5_VERSION and including this file
-# possible values now "5.0.2", "5.0.2+git%"
+# possible values now "5.0.2", "5.0.2+git%", "5.1.0%"
QT5_VERSION ?= "5.0.2"
@@ -12,7 +12,9 @@ PREFERRED_VERSION_qtgraphicaleffects = "${QT5_VERSION}"
PREFERRED_VERSION_qtimageformats = "${QT5_VERSION}"
PREFERRED_VERSION_qtmultimedia = "${QT5_VERSION}"
PREFERRED_VERSION_qtquick1 = "${QT5_VERSION}"
+PREFERRED_VERSION_qtsensors = "${QT5_VERSION}"
PREFERRED_VERSION_qtscript = "${QT5_VERSION}"
PREFERRED_VERSION_qtsvg = "${QT5_VERSION}"
PREFERRED_VERSION_qtwebkit = "${QT5_VERSION}"
PREFERRED_VERSION_qtxmlpatterns = "${QT5_VERSION}"
+PREFERRED_VERSION_qtwayland = "${QT5_VERSION}"
diff --git a/recipes-qt/qt5/qt5-5.1.0.inc b/recipes-qt/qt5/qt5-5.1.0.inc
new file mode 100644
index 00000000..e26cc053
--- /dev/null
+++ b/recipes-qt/qt5/qt5-5.1.0.inc
@@ -0,0 +1,22 @@
+# Copyright (C) 2012 O.S. Systems Software LTDA.
+# Copyright (C) 2013 Martin Jansa <martin.jansa@gmail.com>
+
+QT_VERSION ?= "${PV}"
+
+# it's different for RC versions
+QT_VERSION_DIR ?= "5.1"
+
+# less tested then 5.0.2 or git recipes
+DEFAULT_PREFERENCE = "-2"
+
+SRC_URI += " \
+ http://download.qt-project.org/official_releases/qt/${QT_VERSION_DIR}/${QT_VERSION}/submodules/${QT_MODULE}-opensource-src-${QT_VERSION}.tar.xz \
+"
+
+S = "${WORKDIR}/${QT_MODULE}-opensource-src-${QT_VERSION}"
+
+LICENSE = "GFDL-1.3 & LGPL-2.1 | GPL-3.0"
+LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=4193e7f1d47a858f6b7c0f1ee66161de \
+ file://LICENSE.GPL;md5=d32239bcb673463ab874e80d47fae504 \
+ file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \
+ file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e"
diff --git a/recipes-qt/qt5/qt5.inc b/recipes-qt/qt5/qt5.inc
index 87bf5e8f..80acb73e 100644
--- a/recipes-qt/qt5/qt5.inc
+++ b/recipes-qt/qt5/qt5.inc
@@ -67,6 +67,7 @@ FILES_${PN}-qmlplugins = " \
${OE_QMAKE_PATH_IMPORTS}/*/*/*/*.qmltypes \
${OE_QMAKE_PATH_IMPORTS}/*/*/*/qmldir \
"
+
FILES_${PN}-tools = " \
${OE_QMAKE_PATH_BINS}/* \
"
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0001-Add-linux-oe-g-platform.patch b/recipes-qt/qt5/qtbase-5.1.0/0001-Add-linux-oe-g-platform.patch
new file mode 100644
index 00000000..669dffcd
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0001-Add-linux-oe-g-platform.patch
@@ -0,0 +1,304 @@
+From 7244ed3ca9326f3521de8961dbe7f9759f8e8041 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 01/23] Add linux-oe-g++ platform
+
+* This qmake.conf unlike other platforms reads most variables from
+ shell environment, because it's easier for qt recipes to export
+ *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
+
+* 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
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 54 ++++++++++++++++---
+ mkspecs/linux-oe-g++/qmake.conf | 40 ++++++++++++++
+ mkspecs/linux-oe-g++/qplatformdefs.h | 100 +++++++++++++++++++++++++++++++++++
+ 3 files changed, 187 insertions(+), 7 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 d7c9674..45e0586 100755
+--- a/configure
++++ b/configure
+@@ -284,6 +284,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()
+ {
+ if [ -z "$xspecvals" ]; then
+@@ -293,6 +303,16 @@ getXQMakeConf()
+ getSingleQMakeVariable "$1" "$xspecvals"
+ }
+
++# 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
+@@ -809,6 +829,18 @@ fi
+ # initalize variables
+ #-------------------------------------------------------------------------------
+
++# 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}"
++ cmd=`echo \
++'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
++
+ SYSTEM_VARIABLES="RANLIB STRIP OBJDUMP LD CC CXX CFLAGS CXXFLAGS LDFLAGS"
+ for varname in $SYSTEM_VARIABLES; do
+ qmakevarname="${varname}"
+@@ -2836,7 +2868,7 @@ if [ "$BUILD_ON_MAC" = "yes" ] && [ "$CFG_QGTKSTYLE" = "auto" ]; then
+ CFG_QGTKSTYLE=no
+ fi
+
+-QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX`
++QMAKE_CONF_COMPILER=`getXQEvalMakeConf QMAKE_CXX`
+
+ TEST_COMPILER=$QMAKE_CONF_COMPILER
+
+@@ -2871,7 +2903,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
+@@ -3909,6 +3941,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..."
+@@ -3947,11 +3987,11 @@ 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_CXXFLAGS
+- setBootstrapVariable QMAKE_LFLAGS
++ setBootstrapEvalVariable QMAKE_CC CC "$CC_TRANSFORM"
++ setBootstrapEvalVariable QMAKE_CXX CXX "$CC_TRANSFORM"
++ setBootstrapEvalVariable QMAKE_CFLAGS
++ setBootstrapEvalVariable QMAKE_CXXFLAGS
++ setBootstrapEvalVariable QMAKE_LFLAGS
+
+ if [ "$CFG_RELEASE_QMAKE" = "yes" ]; then
+ setBootstrapVariable QMAKE_CFLAGS_RELEASE
+diff --git a/mkspecs/linux-oe-g++/qmake.conf b/mkspecs/linux-oe-g++/qmake.conf
+new file mode 100644
+index 0000000..ca26b10
+--- /dev/null
++++ b/mkspecs/linux-oe-g++/qmake.conf
+@@ -0,0 +1,40 @@
++#
++# 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/g++-unix.conf)
++
++# tc settings from g++-base.conf
++QMAKE_COMPILER = $(OE_QMAKE_COMPILER)
++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)
++
++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
+--- /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 <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
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0001-Always-build-uic.patch b/recipes-qt/qt5/qtbase-5.1.0/0001-Always-build-uic.patch
new file mode 100644
index 00000000..5f37a971
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0001-Always-build-uic.patch
@@ -0,0 +1,40 @@
+From 28cb656a49b80364f4bfc4387849f1e9ac56fbf2 Mon Sep 17 00:00:00 2001
+From: Mikko Levonmaa <mikko.levonmaa@palm.com>
+Date: Tue, 27 Nov 2012 12:46:44 -0800
+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.
+
+Change-Id: I257668ac28c22b192e7ec7736e6c23fa3be6bab6
+Signed-off-by: Mikko Levonmaa <mikko.levonmaa@palm.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ src/src.pro | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/src.pro b/src/src.pro
+index b4c9602..f30ec1f 100644
+--- a/src/src.pro
++++ b/src/src.pro
+@@ -122,7 +122,7 @@ contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent
+ contains(QT_CONFIG, opengl(es1|es2)?):SUBDIRS += src_openglextensions
+ src_plugins.depends += src_gui src_platformsupport
+ !contains(QT_CONFIG, no-widgets) {
+- SUBDIRS += src_tools_uic src_widgets
++ SUBDIRS += src_widgets
+ src_plugins.depends += src_widgets
+ contains(QT_CONFIG, opengl(es1|es2)?) {
+ SUBDIRS += src_opengl
+@@ -134,7 +134,7 @@ contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent
+ }
+ }
+ }
+-SUBDIRS += src_plugins src_tools_qdoc
++SUBDIRS += src_plugins src_tools_qdoc src_tools_uic
+
+ nacl: SUBDIRS -= src_network src_testlib
+
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch b/recipes-qt/qt5/qtbase-5.1.0/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch
new file mode 100644
index 00000000..c9c663a3
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch
@@ -0,0 +1,36 @@
+From 6eb6d141309bc5a42218fbc755545ead70a88b55 Mon Sep 17 00:00:00 2001
+From: Holger Freyther <zecke@selfish.org>
+Date: Wed, 26 Sep 2012 17:22:30 +0200
+Subject: [PATCH 02/23] 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: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ 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 1eaebe5..bda2ffe 100644
+--- a/src/corelib/global/qlibraryinfo.cpp
++++ b/src/corelib/global/qlibraryinfo.cpp
+@@ -138,7 +138,10 @@ QLibrarySettings::QLibrarySettings()
+
+ 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");
+ #ifdef QT_BOOTSTRAPPED
+ if(!QFile::exists(qtconfig))
+ qtconfig = qt_libraryInfoFile();
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0003-Add-external-hostbindir-option.patch b/recipes-qt/qt5/qtbase-5.1.0/0003-Add-external-hostbindir-option.patch
new file mode 100644
index 00000000..751275ed
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0003-Add-external-hostbindir-option.patch
@@ -0,0 +1,218 @@
+From 253db5565b402dfc0b2abbcc813d6ac32eecef96 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 03/23] 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
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 15 ++++++++++++++-
+ mkspecs/features/qt_functions.prf | 5 ++++-
+ mkspecs/features/qt_tool.prf | 2 +-
+ qmake/property.cpp | 1 +
+ qtbase.pro | 12 +++++++++---
+ src/corelib/global/qlibraryinfo.cpp | 3 ++-
+ src/corelib/global/qlibraryinfo.h | 1 +
+ tools/configure/configureapp.cpp | 8 ++++++++
+ 8 files changed, 40 insertions(+), 7 deletions(-)
+
+diff --git a/configure b/configure
+index 45e0586..dbe7360 100755
+--- a/configure
++++ b/configure
+@@ -1038,6 +1038,7 @@ QT_HOST_PREFIX=
+ QT_HOST_BINS=
+ QT_HOST_LIBS=
+ QT_HOST_DATA=
++QT_EXTERNAL_HOST_BINS=
+
+ #flags for SQL drivers
+ QT_CFLAGS_PSQL=
+@@ -1145,7 +1146,7 @@ while [ "$#" -gt 0 ]; do
+ VAL=no
+ ;;
+ #Qt style options that pass an argument
+- -prefix|-docdir|-headerdir|-plugindir|-importdir|-qmldir|-archdatadir|-datadir|-libdir|-bindir|-libexecdir|-translationdir|-sysconfdir|-examplesdir|-testsdir|-depths|-make|-nomake|-skip|-platform|-xplatform|-device|-device-option|-sdk|-arch|-host-arch|-mysql_config|-sysroot|-hostdatadir|-hostbindir|-hostlibdir|-qpa|-qconfig|-android-sdk|-android-ndk|-android-ndk-platform|-android-ndk-host|-android-arch|-android-toolchain-version)
++ -prefix|-docdir|-headerdir|-plugindir|-importdir|-qmldir|-archdatadir|-datadir|-libdir|-bindir|-libexecdir|-translationdir|-sysconfdir|-examplesdir|-testsdir|-depths|-make|-nomake|-skip|-platform|-xplatform|-device|-device-option|-sdk|-arch|-host-arch|-mysql_config|-sysroot|-hostdatadir|-hostbindir|-hostlibdir|-qpa|-qconfig|-android-sdk|-android-ndk|-android-ndk-platform|-android-ndk-host|-android-arch|-android-toolchain-version|-external-hostbindir)
+ VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
+ shift
+ VAL="$1"
+@@ -1333,6 +1334,9 @@ while [ "$#" -gt 0 ]; do
+ hostlibdir)
+ QT_HOST_LIBS="$VAL"
+ ;;
++ external-hostbindir)
++ QT_EXTERNAL_HOST_BINS="$VAL"
++ ;;
+ pkg-config)
+ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
+ CFG_PKGCONFIG="$VAL"
+@@ -3190,6 +3194,11 @@ if [ "$CFG_COMPILE_EXAMPLES" = "yes" ]; then
+ QMAKE_CONFIG="$QMAKE_CONFIG compile_examples"
+ fi
+
++# 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
++
+ #-------------------------------------------------------------------------------
+ # help - interactive parts of the script _after_ this section please
+ #-------------------------------------------------------------------------------
+@@ -3358,6 +3367,9 @@ 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
+@@ -3873,6 +3885,7 @@ static const char qt_configure_prefix_path_strs[][256 + 12] = {
+ "qt_hbinpath=$QT_HOST_BINS",
+ "qt_hlibpath=$QT_HOST_LIBS",
+ "qt_hdatpath=$QT_HOST_DATA",
++ "qt_ebinpath=$QT_EXTERNAL_HOST_BINS",
+ "qt_targspec=$shortxspec",
+ "qt_hostspec=$shortspec",
+ #endif
+diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
+index bbbb5d3..d581367 100644
+--- a/mkspecs/features/qt_functions.prf
++++ b/mkspecs/features/qt_functions.prf
+@@ -193,7 +193,10 @@ defineTest(qtAddRpathLink) {
+ defineTest(qtPrepareTool) {
+ $$1 = $$eval(QT_TOOL.$${2}.binary)
+ isEmpty($$1) {
+- $$1 = $$[QT_HOST_BINS]/$$2
++ $$1 = $$[QT_EXTERNAL_HOST_BINS]/$$2
++ isEmpty($$[QT_EXTERNAL_HOST_BINS]) {
++ $$1 = $$[QT_HOST_BINS]/$$2
++ }
+ exists($$eval($$1).pl) {
+ $$1 = perl -w $$eval($$1).pl
+ } else: contains(QMAKE_HOST.os, Windows) {
+diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf
+index 9a6b963..83ef3a0 100644
+--- a/mkspecs/features/qt_tool.prf
++++ b/mkspecs/features/qt_tool.prf
+@@ -16,7 +16,7 @@ CONFIG += console
+ # 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$, )
+diff --git a/qmake/property.cpp b/qmake/property.cpp
+index 4685440..93eb1d4 100644
+--- a/qmake/property.cpp
++++ b/qmake/property.cpp
+@@ -75,6 +75,7 @@ static const struct {
+ { "QT_HOST_DATA", QLibraryInfo::HostDataPath, true },
+ { "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, true },
+ { "QT_HOST_LIBS", QLibraryInfo::HostLibrariesPath, true },
++ { "QT_EXTERNAL_HOST_BINS", QLibraryInfo::ExternalHostBinariesPath, true },
+ { "QMAKE_SPEC", QLibraryInfo::HostSpecPath, true },
+ { "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true },
+ };
+diff --git a/qtbase.pro b/qtbase.pro
+index 6ab032e..38872b6 100644
+--- a/qtbase.pro
++++ b/qtbase.pro
+@@ -68,16 +68,22 @@ CONFIG -= qt
+
+ #qmake
+ qmake.path = $$[QT_HOST_BINS]
++qmake.files = $$OUT_PWD/bin/qmake
++!isEmpty($$[QT_EXTERNAL_HOST_BINS]) {
++ qmake.files = $$[QT_EXTERNAL_HOST_BINS]/bin/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
+
+ #syncqt
+ syncqt.path = $$[QT_HOST_BINS]
+ syncqt.files = $$PWD/bin/syncqt.pl
++syncqt.files = $$PWD/bin/syncqt.pl
++!isEmpty($$[QT_EXTERNAL_HOST_BINS]) {
++ syncqt.files = $$[QT_EXTERNAL_HOST_BINS]/bin/syncqt.pl
++}
+ INSTALLS += syncqt
+
+ # If we are doing a prefix build, create a "module" pri which enables
+diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp
+index bda2ffe..530aea9 100644
+--- a/src/corelib/global/qlibraryinfo.cpp
++++ b/src/corelib/global/qlibraryinfo.cpp
+@@ -270,7 +270,7 @@ QLibraryInfo::isDebugBuild()
+ */
+
+ static const struct {
+- char key[19], value[13];
++ char key[21], value[13];
+ } qtConfEntries[] = {
+ { "Prefix", "." },
+ { "Documentation", "doc" }, // should be ${Data}/doc
+@@ -296,6 +296,7 @@ static const struct {
+ { "HostBinaries", "bin" },
+ { "HostLibraries", "lib" },
+ { "HostData", "." },
++ { "ExternalHostBinaries", "" },
+ { "TargetSpec", "" },
+ { "HostSpec", "" },
+ #endif
+diff --git a/src/corelib/global/qlibraryinfo.h b/src/corelib/global/qlibraryinfo.h
+index b275e01..0e6baed 100644
+--- a/src/corelib/global/qlibraryinfo.h
++++ b/src/corelib/global/qlibraryinfo.h
+@@ -84,6 +84,7 @@ public:
+ HostBinariesPath,
+ HostLibrariesPath,
+ HostDataPath,
++ ExternalHostBinariesPath,
+ TargetSpecPath,
+ HostSpecPath,
+ LastHostPath = HostSpecPath,
+diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
+index f92fad1..8f0bd0e 100644
+--- a/tools/configure/configureapp.cpp
++++ b/tools/configure/configureapp.cpp
+@@ -1161,6 +1161,13 @@ void Configure::parseCmdLine()
+ dictionary[ "QT_HOST_DATA" ] = 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)
+@@ -3752,6 +3759,7 @@ void Configure::generateQConfigCpp()
+ << " \"qt_hbinpath=" << formatPath(dictionary["QT_HOST_BINS"]) << "\"," << endl
+ << " \"qt_hlibpath=" << formatPath(dictionary["QT_HOST_LIBS"]) << "\"," << endl
+ << " \"qt_hdatpath=" << formatPath(dictionary["QT_HOST_DATA"]) << "\"," << endl
++ << " \"qt_ebinpath=" << formatPath(dictionary["QT_EXTERNAL_HOST_BINS"]) << "\"," << endl
+ << " \"qt_targspec=" << targSpec << "\"," << endl
+ << " \"qt_hostspec=" << hostSpec << "\"," << endl
+ << "#endif" << endl
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0004-qt_functions-temporary-remove-isEmpty-check.patch b/recipes-qt/qt5/qtbase-5.1.0/0004-qt_functions-temporary-remove-isEmpty-check.patch
new file mode 100644
index 00000000..4fe10871
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0004-qt_functions-temporary-remove-isEmpty-check.patch
@@ -0,0 +1,51 @@
+From ad252e21f737536027aebbf63217188a80d108ba Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Wed, 17 Apr 2013 18:06:25 +0200
+Subject: [PATCH 04/23] 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].
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ mkspecs/features/qt_functions.prf | 6 +++++-
+ mkspecs/features/qt_tool.prf | 3 +--
+ 2 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
+index d581367..2bc6533 100644
+--- a/mkspecs/features/qt_functions.prf
++++ b/mkspecs/features/qt_functions.prf
+@@ -194,7 +194,11 @@ defineTest(qtPrepareTool) {
+ $$1 = $$eval(QT_TOOL.$${2}.binary)
+ isEmpty($$1) {
+ $$1 = $$[QT_EXTERNAL_HOST_BINS]/$$2
+- isEmpty($$[QT_EXTERNAL_HOST_BINS]) {
++ # for some reason isEmpty does not work here, FIXME before submitting upstream
++ # DEBUG 1: mkspecs/features/qt_functions.prf:198: calling built-in isEmpty(/OE/oe-core/tmp-eglibc/sysroots/x86_64-linux/usr/bin/qt5)
++ # DEBUG 1: mkspecs/features/qt_functions.prf:198: test function returned true
++ # DEBUG 1: mkspecs/features/qt_functions.prf:198: taking 'then' branch
++ !exists($$[QT_EXTERNAL_HOST_BINS]/$$2) {
+ $$1 = $$[QT_HOST_BINS]/$$2
+ }
+ exists($$eval($$1).pl) {
+diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf
+index 83ef3a0..21c9eb7 100644
+--- a/mkspecs/features/qt_tool.prf
++++ b/mkspecs/features/qt_tool.prf
+@@ -15,8 +15,7 @@ CONFIG += console
+
+ # 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($$[QT_EXTERNAL_HOST_BINS]) {
++!build_pass:if(!host_build|!force_bootstrap|force_independent):!exists($$[QT_EXTERNAL_HOST_BINS]) {
+ isEmpty(MODULE):MODULE = $$TARGET
+
+ !host_build|!force_bootstrap: MODULE_DEPENDS = $$replace(QT, -private$, )
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0005-qmake-is-already-built-in-qtbase-native.patch b/recipes-qt/qt5/qtbase-5.1.0/0005-qmake-is-already-built-in-qtbase-native.patch
new file mode 100644
index 00000000..69b14358
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0005-qmake-is-already-built-in-qtbase-native.patch
@@ -0,0 +1,30 @@
+From bd7521ebc01feedde14e3e5e037ebd66b994db06 Mon Sep 17 00:00:00 2001
+From: Michael Krelin <hacker@klever.net>
+Date: Mon, 29 Oct 2012 20:07:49 -0700
+Subject: [PATCH 05/23] qmake is already built in qtbase-native
+
+Ported from OE by: Yu Ke <ke.yu@intel.com>
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Mikko Levonmaa <mikko.levonmaa@gmail.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index dbe7360..f8f0e9a 100755
+--- a/configure
++++ b/configure
+@@ -3963,7 +3963,7 @@ setBootstrapEvalVariable()
+
+
+ # build qmake
+-if true; then ###[ '!' -f "$outpath/bin/qmake" ];
++if false; then ###[ '!' -f "$outpath/bin/qmake" ];
+ echo "Creating qmake..."
+
+ mkdir -p "$outpath/qmake" || exit
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0006-Allow-building-a-separate-qmake-for-the-target.patch b/recipes-qt/qt5/qtbase-5.1.0/0006-Allow-building-a-separate-qmake-for-the-target.patch
new file mode 100644
index 00000000..363a8ee9
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0006-Allow-building-a-separate-qmake-for-the-target.patch
@@ -0,0 +1,29 @@
+From 00997b0cf46d6b6c362c48ee31f886c553a3fb4f Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.intel.com>
+Date: Mon, 29 Oct 2012 20:26:36 -0700
+Subject: [PATCH 06/23] Allow building a separate qmake for the target
+
+Upstream-Status: Inappropriate [config]
+
+Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
+Signed-off-by: Mikko Levonmaa <mikko.levonmaa@gmail.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ qmake/qmake.pro | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/qmake/qmake.pro b/qmake/qmake.pro
+index 0d92ac2..9be0e9b 100644
+--- a/qmake/qmake.pro
++++ b/qmake/qmake.pro
+@@ -9,6 +9,7 @@ CONFIG -= qt shared app_bundle uic
+ DEFINES += QT_BUILD_QMAKE QT_BOOTSTRAPPED \
+ PROEVALUATOR_FULL PROEVALUATOR_DEBUG
+ DESTDIR = ../bin/
++TARGET = qmake
+
+ OBJECTS_DIR = .
+ MOC_DIR = .
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch b/recipes-qt/qt5/qtbase-5.1.0/0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch
new file mode 100644
index 00000000..97b1269c
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch
@@ -0,0 +1,29 @@
+From 662115f5e837fc397533810ca659af0f66749ce4 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Sat, 27 Apr 2013 22:33:33 +0200
+Subject: [PATCH 07/23] configureapp: Prefix default LIBDIRS and INCDIRS with
+ SYSROOT
+
+Upstream-Status: Pending
+---
+ tools/configure/configureapp.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
+index 8f0bd0e..f7ff15c 100644
+--- a/tools/configure/configureapp.cpp
++++ b/tools/configure/configureapp.cpp
+@@ -3118,8 +3118,8 @@ void Configure::generateQConfigPri()
+ configStream << "QT_HOST_CPU_FEATURES = " << dictionary["QT_HOST_CPU_FEATURES"] << endl;
+ if (dictionary.contains("XQMAKESPEC") && !dictionary["XQMAKESPEC"].startsWith("wince")) {
+ // FIXME: add detection
+- configStream << "QMAKE_DEFAULT_LIBDIRS = /lib /usr/lib" << endl;
+- configStream << "QMAKE_DEFAULT_INCDIRS = /usr/include /usr/local/include" << endl;
++ configStream << "QMAKE_DEFAULT_LIBDIRS = $$[QT_SYSROOT]/lib $$[QT_SYSROOT]/usr/lib" << endl;
++ configStream << "QMAKE_DEFAULT_INCDIRS = $$[QT_SYSROOT]/usr/include $$[QT_SYSROOT]/usr/local/include" << endl;
+ }
+ if (dictionary["QT_EDITION"].contains("OPENSOURCE"))
+ configStream << "QT_EDITION = " << QLatin1String("OpenSource") << endl;
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0008-qt_module-Fix-pkgconfig-replacement.patch b/recipes-qt/qt5/qtbase-5.1.0/0008-qt_module-Fix-pkgconfig-replacement.patch
new file mode 100644
index 00000000..2de71037
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0008-qt_module-Fix-pkgconfig-replacement.patch
@@ -0,0 +1,70 @@
+From 1db1ad1ef3c57f531bf67be33a4cc43528864543 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 08/23] qt_module: Fix pkgconfig replacement
+
+* 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
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ mkspecs/features/qt_module.prf | 20 ++++++++++++++++----
+ 1 file changed, 16 insertions(+), 4 deletions(-)
+
+diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
+index 53a5499..9dfc1dd 100644
+--- a/mkspecs/features/qt_module.prf
++++ b/mkspecs/features/qt_module.prf
+@@ -140,18 +140,30 @@ unix|win32-g++* {
+ rplbase = $$dirname(_QMAKE_SUPER_CACHE_)/[^/][^/]*
+ else: \
+ rplbase = $$MODULE_BASE_OUTDIR
++ pkgconfig_include_replace.match = $$rplbase/include
++ pkgconfig_include_replace.replace = "\$$\\{includedir}"
++ pkgconfig_lib_replace.match = $$rplbase/lib
++ pkgconfig_lib_replace.replace = "\$$\\{libdir}"
+ include_replace.match = $$rplbase/include
+ include_replace.replace = $$[QT_INSTALL_HEADERS/raw]
+ lib_replace.match = $$rplbase/lib
+- lib_replace.replace = $$QMAKE_PKGCONFIG_LIBDIR
+- QMAKE_PKGCONFIG_INSTALL_REPLACE += include_replace lib_replace
++ lib_replace.replace = $$[QT_INSTALL_LIBS/raw]
++ lafile_replace.match = $$rplbase
++ lafile_replace.replace = "=$$[QT_INSTALL_PREFIX/raw]"
++
++ !isEmpty(SYSROOT): \
++ rplbase = $$[SYSROOT] \
++ lafile_replace.match = $$rplbase \
++ lafile_replace.replace = "=" \
++
++ QMAKE_PKGCONFIG_INSTALL_REPLACE += pkgconfig_include_replace pkgconfig_lib_replace
+ QMAKE_PRL_INSTALL_REPLACE += include_replace lib_replace
+ }
+
+ unix {
+ CONFIG += create_libtool explicitlib
+- QMAKE_LIBTOOL_LIBDIR = $$QMAKE_PKGCONFIG_LIBDIR
+- QMAKE_LIBTOOL_INSTALL_REPLACE += include_replace lib_replace
++ QMAKE_LIBTOOL_LIBDIR = $$[QT_INSTALL_LIBS/raw]
++ QMAKE_LIBTOOL_INSTALL_REPLACE += include_replace lib_replace lafile_replace
+ }
+
+ unix|win32-g++* {
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0009-qt_module-Fix-paths-in-.prl-files.patch b/recipes-qt/qt5/qtbase-5.1.0/0009-qt_module-Fix-paths-in-.prl-files.patch
new file mode 100644
index 00000000..f9e6c64e
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0009-qt_module-Fix-paths-in-.prl-files.patch
@@ -0,0 +1,62 @@
+From 036a2be171a0bf6fea5eaa7383e19f2559a37dce Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Sun, 28 Apr 2013 12:56:55 +0200
+Subject: [PATCH 09/23] 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
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ mkspecs/features/qt_module.prf | 28 +++++++++++++++++-----------
+ 1 file changed, 17 insertions(+), 11 deletions(-)
+
+diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
+index 9dfc1dd..5cedb8f 100644
+--- a/mkspecs/features/qt_module.prf
++++ b/mkspecs/features/qt_module.prf
+@@ -144,17 +144,23 @@ unix|win32-g++* {
+ pkgconfig_include_replace.replace = "\$$\\{includedir}"
+ pkgconfig_lib_replace.match = $$rplbase/lib
+ pkgconfig_lib_replace.replace = "\$$\\{libdir}"
+- include_replace.match = $$rplbase/include
+- include_replace.replace = $$[QT_INSTALL_HEADERS/raw]
+- lib_replace.match = $$rplbase/lib
+- lib_replace.replace = $$[QT_INSTALL_LIBS/raw]
+- lafile_replace.match = $$rplbase
+- lafile_replace.replace = "=$$[QT_INSTALL_PREFIX/raw]"
+-
+- !isEmpty(SYSROOT): \
+- rplbase = $$[SYSROOT] \
+- lafile_replace.match = $$rplbase \
+- lafile_replace.replace = "=" \
++ !exists($$[QT_SYSROOT]) {
++ include_replace.match = $$rplbase/include
++ include_replace.replace = $$[QT_INSTALL_HEADERS/raw]
++ lib_replace.match = $$rplbase/lib
++ lib_replace.replace = $$[QT_INSTALL_LIBS/raw]
++ lafile_replace.match = $$rplbase
++ lafile_replace.replace = "$$[QT_INSTALL_PREFIX/raw]"
++ } else {
++ # include_replace and lib_replace are duplicate, but we don't want to
++ # make QMAKE_PKGCONFIG_INSTALL_REPLACE, QMAKE_PRL_INSTALL_REPLACE conditional
++ include_replace.match = $$rplbase
++ include_replace.replace = $$[QT_SYSROOT]$$[QT_INSTALL_PREFIX/raw]
++ lib_replace.match = $$rplbase
++ lib_replace.replace = $$[QT_SYSROOT]$$[QT_INSTALL_PREFIX/raw]
++ lafile_replace.match = $$rplbase
++ lafile_replace.replace = "=$$[QT_INSTALL_PREFIX/raw]"
++ }
+
+ QMAKE_PKGCONFIG_INSTALL_REPLACE += pkgconfig_include_replace pkgconfig_lib_replace
+ QMAKE_PRL_INSTALL_REPLACE += include_replace lib_replace
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0010-wayland-scanner-disable-silent-rules.patch b/recipes-qt/qt5/qtbase-5.1.0/0010-wayland-scanner-disable-silent-rules.patch
new file mode 100644
index 00000000..bdbb52a1
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0010-wayland-scanner-disable-silent-rules.patch
@@ -0,0 +1,82 @@
+From c441038a17c1173c8abafd451c4083b2eccc54ab Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Sun, 5 May 2013 11:18:34 +0200
+Subject: [PATCH 10/23] wayland-scanner: disable silent rules
+
+* for some reason "$$qtwayland-server-header.commands" on second line gets expanded as -server-header.commands
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ mkspecs/features/wayland-scanner.prf | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/mkspecs/features/wayland-scanner.prf b/mkspecs/features/wayland-scanner.prf
+index 2ec064f..847d0f7 100644
+--- a/mkspecs/features/wayland-scanner.prf
++++ b/mkspecs/features/wayland-scanner.prf
+@@ -10,7 +10,7 @@ wayland-server-header.input = WAYLANDSERVERSOURCES
+ wayland-server-header.variable_out = HEADERS
+ wayland-server-header.output = wayland-${QMAKE_FILE_BASE}-server-protocol$${first(QMAKE_EXT_H)}
+ wayland-server-header.commands = $$QMAKE_WAYLAND_SCANNER server-header < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT}
+-silent:wayland-server-header.commands = @echo Wayland server header ${QMAKE_FILE_IN} && $$wayland-server-header.commands
++#silent:wayland-server-header.commands = @echo Wayland server header ${QMAKE_FILE_IN} && $$wayland-server-header.commands
+ QMAKE_EXTRA_COMPILERS += wayland-server-header
+
+ wayland-client-header.name = wayland ${QMAKE_FILE_BASE}
+@@ -18,7 +18,7 @@ wayland-client-header.input = WAYLANDCLIENTSOURCES
+ wayland-client-header.variable_out = HEADERS
+ wayland-client-header.output = wayland-${QMAKE_FILE_BASE}-client-protocol$${first(QMAKE_EXT_H)}
+ wayland-client-header.commands = $$QMAKE_WAYLAND_SCANNER client-header < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT}
+-silent:wayland-client-header.commands = @echo Wayland client header ${QMAKE_FILE_IN} && $$wayland-client-header.commands
++#silent:wayland-client-header.commands = @echo Wayland client header ${QMAKE_FILE_IN} && $$wayland-client-header.commands
+ QMAKE_EXTRA_COMPILERS += wayland-client-header
+
+ wayland-code.name = wayland ${QMAKE_FILE_BASE}
+@@ -26,7 +26,7 @@ wayland-code.input = WAYLANDCLIENTSOURCES WAYLANDSERVERSOURCES
+ wayland-code.variable_out = SOURCES
+ wayland-code.output = wayland-${QMAKE_FILE_BASE}-protocol.c
+ wayland-code.commands = $$QMAKE_WAYLAND_SCANNER code < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT}
+-silent:wayland-code.commands = @echo Wayland code header ${QMAKE_FILE_IN} && $$wayland-code.commands
++#silent:wayland-code.commands = @echo Wayland code header ${QMAKE_FILE_IN} && $$wayland-code.commands
+ QMAKE_EXTRA_COMPILERS += wayland-code
+
+ qtPrepareTool(QMAKE_QTWAYLANDSCANNER, qtwaylandscanner)
+@@ -37,7 +37,7 @@ qtwayland-client-header.variable_out = HEADERS
+ qtwayland-client-header.depends = wayland-${QMAKE_FILE_BASE}-client-protocol$${first(QMAKE_EXT_H)}
+ qtwayland-client-header.output = qwayland-${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)}
+ qtwayland-client-header.commands = $$QMAKE_QTWAYLANDSCANNER client-header ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT}
+-silent:qtwayland-client-header.commands = @echo QtWayland client header ${QMAKE_FILE_IN} && $$qtwayland-client-header.commands
++#silent:qtwayland-client-header.commands = @echo QtWayland client header ${QMAKE_FILE_IN} && $$qtwayland-client-header.commands
+ QMAKE_EXTRA_COMPILERS += qtwayland-client-header
+
+ qtwayland-client-code.name = qtwayland ${QMAKE_FILE_BASE}
+@@ -46,7 +46,7 @@ qtwayland-client-code.variable_out = SOURCES
+ qtwayland-client-code.depends = qwayland-${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)}
+ qtwayland-client-code.output = qwayland-${QMAKE_FILE_BASE}.cpp
+ qtwayland-client-code.commands = $$QMAKE_QTWAYLANDSCANNER client-code ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT}
+-silent:qtwayland-client-code.commands = @echo QtWayland client code ${QMAKE_FILE_IN} && $$qtwayland-client-code.commands
++#silent:qtwayland-client-code.commands = @echo QtWayland client code ${QMAKE_FILE_IN} && $$qtwayland-client-code.commands
+ QMAKE_EXTRA_COMPILERS += qtwayland-client-code
+
+ qtwayland-server-header.name = qtwayland ${QMAKE_FILE_BASE}
+@@ -55,7 +55,7 @@ qtwayland-server-header.variable_out = HEADERS
+ qtwayland-server-header.depends = wayland-${QMAKE_FILE_BASE}-server-protocol$${first(QMAKE_EXT_H)}
+ qtwayland-server-header.output = qwayland-server-${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)}
+ qtwayland-server-header.commands = $$QMAKE_QTWAYLANDSCANNER server-header ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT}
+-silent:qtwayland-server-header.commands = @echo QtWayland server header ${QMAKE_FILE_IN} && $$qtwayland-server-header.commands
++#silent:qtwayland-server-header.commands = @echo QtWayland server header ${QMAKE_FILE_IN} && $$qtwayland-server-header.commands
+ QMAKE_EXTRA_COMPILERS += qtwayland-server-header
+
+ qtwayland-server-code.name = qtwayland ${QMAKE_FILE_BASE}
+@@ -64,5 +64,5 @@ qtwayland-server-code.variable_out = SOURCES
+ qtwayland-server-code.depends = qwayland-server-${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)}
+ qtwayland-server-code.output = qwayland-server-${QMAKE_FILE_BASE}.cpp
+ qtwayland-server-code.commands = $$QMAKE_QTWAYLANDSCANNER server-code ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT}
+-silent:qtwayland-server-code.commands = @echo QtWayland server code ${QMAKE_FILE_IN} && $$qtwayland-server-code.commands
++#silent:qtwayland-server-code.commands = @echo QtWayland server code ${QMAKE_FILE_IN} && $$qtwayland-server-code.commands
+ QMAKE_EXTRA_COMPILERS += qtwayland-server-code
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch b/recipes-qt/qt5/qtbase-5.1.0/0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch
new file mode 100644
index 00000000..7c1e4459
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch
@@ -0,0 +1,44 @@
+From 7a24e90118a0d81d76b68d3bd0dafcad0966e49e Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Wed, 8 May 2013 23:54:35 +0200
+Subject: [PATCH 11/23] 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
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 15 +--------------
+ 1 file changed, 1 insertion(+), 14 deletions(-)
+
+diff --git a/configure b/configure
+index f8f0e9a..3c80d5f 100755
+--- a/configure
++++ b/configure
+@@ -842,20 +842,7 @@ fi'`
+ done
+
+ SYSTEM_VARIABLES="RANLIB STRIP OBJDUMP LD CC CXX CFLAGS CXXFLAGS LDFLAGS"
+-for varname in $SYSTEM_VARIABLES; do
+- qmakevarname="${varname}"
+- # use LDFLAGS for autoconf compat, but qmake uses QMAKE_LFLAGS
+- if [ "${varname}" = "LDFLAGS" ]; then
+- qmakevarname="LFLAGS"
+- elif [ "${varname}" = "LD" ]; then
+- qmakevarname="LINK"
+- fi
+- cmd=`echo \
+-'if [ -n "\$'${varname}'" ]; then
+- QMakeVar set QMAKE_'${qmakevarname}' "\$'${varname}'"
+-fi'`
+- eval "$cmd"
+-done
++
+ # Use CC/CXX to run config.tests
+ mkdir -p "$outpath/config.tests"
+ rm -f "$outpath/config.tests/.qmake.cache"
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch b/recipes-qt/qt5/qtbase-5.1.0/0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch
new file mode 100644
index 00000000..66df3688
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch
@@ -0,0 +1,37 @@
+From b115685d8c684181a0af79e44a1d170a5a8bfd05 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Thu, 9 May 2013 10:06:50 +0200
+Subject: [PATCH 12/23] 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
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ mkspecs/features/configure.prf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/mkspecs/features/configure.prf b/mkspecs/features/configure.prf
+index b4569df..d189e50 100644
+--- a/mkspecs/features/configure.prf
++++ b/mkspecs/features/configure.prf
+@@ -57,12 +57,12 @@ defineTest(qtCompileTest) {
+ qmake_configs = "\"CONFIG -= qt debug_and_release app_bundle lib_bundle\""
+
+ # 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.")
+
+ qtRunLoggedCommand("$$test_cmd_base $$system_quote($$system_path($$QMAKE_QMAKE)) $$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)
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0013-Disable-mkv8snapshot.patch b/recipes-qt/qt5/qtbase-5.1.0/0013-Disable-mkv8snapshot.patch
new file mode 100644
index 00000000..0a50ee0d
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0013-Disable-mkv8snapshot.patch
@@ -0,0 +1,47 @@
+From 7455bfff17483c19d7eef3ad81a95f6996ff0ce8 Mon Sep 17 00:00:00 2001
+From: Mikko Levonmaa <mikko.levonmaa@palm.com>
+Date: Tue, 8 Jan 2013 15:58:29 -0800
+Subject: [PATCH 13/23] Disable mkv8snapshot
+
+It seems to generate code that throws SIGILL, so disabling it
+
+Program received signal SIGILL, Illegal instruction.
+0x26312c60 in ?? ()
+(gdb) bt
+ function=..., receiver=..., argc=1978934572, args=0x7efff254,
+ has_pending_exception=0x7efff277, qml=...)
+ at ../3rdparty/v8/src/execution.cc:125
+ argc=1, argv=0x7efff254, pending_exception=0x7efff277,
+ convert_receiver=false, qml=...) at ../3rdparty/v8/src/execution.cc:194
+ receiver=<optimized out>, argc=<optimized out>, argv=<optimized out>,
+ pending_exception=0x7efff277, convert_receiver=false)
+ at ../3rdparty/v8/src/execution.cc:161
+ data=<optimized out>, exc=0x7efff277)
+ at ../3rdparty/v8/src/execution.cc:734
+ at ../3rdparty/v8/src/api.cc:4742
+ at qml/v8/qv8contextwrapper.cpp:155
+ ownership=<optimized out>) at qml/v8/qv8engine.cpp:155
+ parent=<optimized out>) at qml/v8/qjsengine.cpp:192
+
+Signed-off-by: Mikko Levonmaa <mikko.levonmaa@palm.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index 3c80d5f..50dbebf 100755
+--- a/configure
++++ b/configure
+@@ -902,7 +902,7 @@ CFG_SKIP_MODULES=""
+ CFG_COMPILE_EXAMPLES=auto
+ CFG_RELEASE_QMAKE=no
+ CFG_AUDIO_BACKEND=auto
+-CFG_V8SNAPSHOT=auto
++CFG_V8SNAPSHOT=no
+ CFG_QML_DEBUG=yes
+ CFG_JAVASCRIPTCORE_JIT=auto
+ CFG_PKGCONFIG=auto
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0014-enables-tslib-device-to-be-read-from-env-variable.patch b/recipes-qt/qt5/qtbase-5.1.0/0014-enables-tslib-device-to-be-read-from-env-variable.patch
new file mode 100644
index 00000000..38b1e659
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0014-enables-tslib-device-to-be-read-from-env-variable.patch
@@ -0,0 +1,35 @@
+From 6da394a759ada8c3dcc6649dbbdf89918d675ae7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com>
+Date: Mon, 27 May 2013 18:32:37 +0200
+Subject: [PATCH 14/23] enables tslib device to be read from env variable
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+from :
+https://github.com/prabindh/qt-configs/blob/master/qt5_1.0_Feb13/tslib.patch
+
+Signed-off-by: Eric Bénard <eric@eukrea.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ src/plugins/generic/tslib/qtslib.cpp | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/plugins/generic/tslib/qtslib.cpp b/src/plugins/generic/tslib/qtslib.cpp
+index 6986fd5..2ed4a69 100644
+--- a/src/plugins/generic/tslib/qtslib.cpp
++++ b/src/plugins/generic/tslib/qtslib.cpp
+@@ -64,7 +64,9 @@ QTsLibMouseHandler::QTsLibMouseHandler(const QString &key,
+ qDebug() << "QTsLibMouseHandler" << key << specification;
+ setObjectName(QLatin1String("TSLib Mouse Handler"));
+
+- QByteArray device = "/dev/input/event1";
++ QByteArray device = qgetenv("TSLIB_TSDEVICE");
++ if(device.isEmpty())
++ device = "/dev/input/event1";
+ if (specification.startsWith("/dev/"))
+ device = specification.toLocal8Bit();
+
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0015-qtbase-allow-build-of-examples.patch b/recipes-qt/qt5/qtbase-5.1.0/0015-qtbase-allow-build-of-examples.patch
new file mode 100644
index 00000000..068467a6
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0015-qtbase-allow-build-of-examples.patch
@@ -0,0 +1,48 @@
+From 94a5ed9c22ed927123df3007d426de5d19e4f692 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com>
+Date: Sat, 25 May 2013 17:34:32 +0200
+Subject: [PATCH 15/23] qtbase: allow build of examples
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+this revert the following commit :
+
+commit 2b397f985e4ef6ae5c0571a928bb1320fb048c61
+Author: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
+Date: Fri Dec 21 19:36:12 2012 +0100
+
+ do not actually build examples in production builds
+
+ -developer-build enables an actual build of examples, based on the
+ assumption that developers want to test it (it can be still disabled
+ with -nomake examples). regular users otoh want only the examples
+ sources installed.
+
+ Change-Id: Ifc6a108099929175a3960480802b271a758fdd38
+ Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
+
+Signed-off-by: Eric Bénard <eric@eukrea.com>
+---
+ mkspecs/features/qt_example_installs.prf | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf
+index 2db752c..ca1b0c7 100644
+--- a/mkspecs/features/qt_example_installs.prf
++++ b/mkspecs/features/qt_example_installs.prf
+@@ -92,11 +92,4 @@ probase = $$relative_path($$_PRO_FILE_PWD_, $$dirname(_QMAKE_CONF_)/examples)
+ allfiles -= doc
+ !isEmpty(allfiles): warning("remaining files in $$_PRO_FILE_PWD_: $$allfiles")
+ }
+-
+- !equals(TEMPLATE, subdirs):!compile_examples {
+- TEMPLATE = aux
+- CONFIG -= have_target qt staticlib dll
+- SOURCES =
+- INSTALLS -= target
+- }
+ }
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0018-QOpenGLPaintDevice-sub-area-support.patch b/recipes-qt/qt5/qtbase-5.1.0/0018-QOpenGLPaintDevice-sub-area-support.patch
new file mode 100644
index 00000000..2069fffb
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0018-QOpenGLPaintDevice-sub-area-support.patch
@@ -0,0 +1,154 @@
+From 41a9c47ca820502d98039273f7465605464cdf9c 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 18/23] 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 | 12 ++++++++++++
+ src/gui/opengl/qopenglpaintdevice.h | 2 ++
+ src/gui/opengl/qopenglpaintengine.cpp | 10 +++++++---
+ src/gui/opengl/qopenglpaintengine_p.h | 1 +
+ src/gui/opengl/qopengltextureglyphcache.cpp | 2 +-
+ 5 files changed, 23 insertions(+), 4 deletions(-)
+
+diff --git a/src/gui/opengl/qopenglpaintdevice.cpp b/src/gui/opengl/qopenglpaintdevice.cpp
+index f0e7e49..fe9a30c 100644
+--- a/src/gui/opengl/qopenglpaintdevice.cpp
++++ b/src/gui/opengl/qopenglpaintdevice.cpp
+@@ -111,6 +111,7 @@ class QOpenGLPaintDevicePrivate
+ public:
+ QOpenGLPaintDevicePrivate(const QSize &size);
+
++ QPoint offset;
+ QSize size;
+ QOpenGLContext *ctx;
+
+@@ -159,6 +160,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);
++}
++
+ /*!
+ Destroys the QOpenGLPaintDevice.
+ */
+@@ -228,6 +235,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 c05571c..01eb1bc 100644
+--- a/src/gui/opengl/qopenglpaintdevice.h
++++ b/src/gui/opengl/qopenglpaintdevice.h
+@@ -62,12 +62,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/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp
+index 0782e42..52afc60 100644
+--- a/src/gui/opengl/qopenglpaintengine.cpp
++++ b/src/gui/opengl/qopenglpaintengine.cpp
+@@ -1978,7 +1978,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;
+@@ -2066,7 +2069,7 @@ void QOpenGL2PaintEngineEx::ensureActive()
+ d->device->ensureActiveTarget();
+
+ d->transferMode(BrushDrawingMode);
+- glViewport(0, 0, d->width, d->height);
++ glViewport(d->x, d->y, d->width, d->height);
+ d->needsSync = false;
+ d->lastMaskTextureUsed = 0;
+ d->shaderManager->setDirty();
+@@ -2109,6 +2112,7 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest()
+ if (bounds == QRect(0, 0, width, height)) {
+ glDisable(GL_SCISSOR_TEST);
+ } else {
++ bounds = QRect(bounds.x(), bounds.y(), bounds.width(), bounds.height());
+ glEnable(GL_SCISSOR_TEST);
+ setScissor(bounds);
+ }
+@@ -2117,14 +2121,14 @@ 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();
+-
+ glScissor(left, bottom, width, height);
+ }
+
+diff --git a/src/gui/opengl/qopenglpaintengine_p.h b/src/gui/opengl/qopenglpaintengine_p.h
+index d51f0e5..0d4b38d 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 83f4075..ec29900 100644
+--- a/src/gui/opengl/qopengltextureglyphcache.cpp
++++ b/src/gui/opengl/qopengltextureglyphcache.cpp
+@@ -268,7 +268,7 @@ void QOpenGLTextureGlyphCache::resizeTextureData(int width, int height)
+ funcs.glBindFramebuffer(GL_FRAMEBUFFER, ctx->d_func()->current_fbo);
+
+ if (pex != 0) {
+- glViewport(0, 0, pex->width, pex->height);
++ glViewport(pex->x, pex->y, pex->width, pex->height);
+ pex->updateClipScissorTest();
+ } else {
+ m_blitProgram->disableAttributeArray(int(QT_VERTEX_COORDS_ATTR));
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0019-Fix-FBO-restoring-in-QOpenGLTextureGlyphCache.patch b/recipes-qt/qt5/qtbase-5.1.0/0019-Fix-FBO-restoring-in-QOpenGLTextureGlyphCache.patch
new file mode 100644
index 00000000..c3a9dd54
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0019-Fix-FBO-restoring-in-QOpenGLTextureGlyphCache.patch
@@ -0,0 +1,49 @@
+From 7c4453b5203e908f0c851c2a34231d81eb2f73c2 Mon Sep 17 00:00:00 2001
+From: Valery Volgutov <valery.volgutov@lge.com>
+Date: Tue, 21 May 2013 12:02:19 -0700
+Subject: [PATCH 19/23] Fix FBO restoring in QOpenGLTextureGlyphCache
+
+QOpenGLTextureGlyphCache::restoreTextureData restores FBO which
+was binded before restoreTextureData call. More specifically,
+it restores QOpenGLContextPrivate's current_fbo member. This works
+if FBO was binded by QOpenGLFramebufferObject but not if FBO was
+binded using glBindFramebufferObject and rendering done via
+QOpenGLPaintDevice.
+
+This patch fixes it by querying current FBO using
+GL_FRAMEBUFFER_BINDING query and restoring it.
+
+Upstream-Status: Backport
+https://codereview.qt-project.org/#change,56608
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ src/gui/opengl/qopengltextureglyphcache.cpp | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/gui/opengl/qopengltextureglyphcache.cpp b/src/gui/opengl/qopengltextureglyphcache.cpp
+index ec29900..9bda1db 100644
+--- a/src/gui/opengl/qopengltextureglyphcache.cpp
++++ b/src/gui/opengl/qopengltextureglyphcache.cpp
+@@ -147,6 +147,9 @@ void QOpenGLTextureGlyphCache::resizeTextureData(int width, int height)
+ return;
+ }
+
++ GLuint saveFbo;
++ glGetIntegerv(GL_FRAMEBUFFER_BINDING, &saveFbo);
++
+ int oldWidth = m_textureResource->m_width;
+ int oldHeight = m_textureResource->m_height;
+
+@@ -265,7 +268,7 @@ void QOpenGLTextureGlyphCache::resizeTextureData(int width, int height)
+ glDeleteTextures(1, &tmp_texture);
+ glDeleteTextures(1, &oldTexture);
+
+- funcs.glBindFramebuffer(GL_FRAMEBUFFER, ctx->d_func()->current_fbo);
++ funcs.glBindFramebuffer(GL_FRAMEBUFFER, saveFbo);
+
+ if (pex != 0) {
+ glViewport(pex->x, pex->y, pex->width, pex->height);
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0020-Use-BGRA-extension-in-bindTexture.patch b/recipes-qt/qt5/qtbase-5.1.0/0020-Use-BGRA-extension-in-bindTexture.patch
new file mode 100644
index 00000000..e081e69a
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0020-Use-BGRA-extension-in-bindTexture.patch
@@ -0,0 +1,34 @@
+From fb16e96ffef959e45c9cbcbef4cc4f51065f2e47 Mon Sep 17 00:00:00 2001
+From: Jani Hautakangas <jani.hautakangas@ixonos.com>
+Date: Mon, 27 May 2013 15:25:25 -0700
+Subject: [PATCH 20/23] Use BGRA extension in bindTexture
+
+Upstream-Status: Pending
+
+Change-Id: I18aecc87c5c7d4483cabe5555da33ca6bb8580f1
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ src/gui/opengl/qopengltexturecache.cpp | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/src/gui/opengl/qopengltexturecache.cpp b/src/gui/opengl/qopengltexturecache.cpp
+index 94b8288..5c8aa3c 100644
+--- a/src/gui/opengl/qopengltexturecache.cpp
++++ b/src/gui/opengl/qopengltexturecache.cpp
+@@ -181,11 +181,7 @@ GLuint QOpenGLTextureCache::bindTexture(QOpenGLContext *context, qint64 key, con
+
+ QImage tx = image.convertToFormat(QImage::Format_ARGB32_Premultiplied);
+
+- // Performance could be improved by skipping qgl_byteSwapImage().
+- if (m_useByteSwapImage)
+- qgl_byteSwapImage(tx);
+-
+- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, tx.width(), tx.height(), 0, GL_RGBA, GL_UNSIGNED_BYTE, const_cast<const QImage &>(tx).bits());
++ glTexImage2D(GL_TEXTURE_2D, 0, GL_BGRA_EXT, tx.width(), tx.height(), 0, GL_BGRA_EXT, GL_UNSIGNED_BYTE, const_cast<const QImage &>(tx).bits());
+
+ int cost = tx.width() * tx.height() * 4 / 1024;
+ m_cache.insert(key, new QOpenGLCachedTexture(id, context), cost);
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0021-configure-make-pulseaudio-a-configurable-option.patch b/recipes-qt/qt5/qtbase-5.1.0/0021-configure-make-pulseaudio-a-configurable-option.patch
new file mode 100644
index 00000000..797f258b
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0021-configure-make-pulseaudio-a-configurable-option.patch
@@ -0,0 +1,36 @@
+From 9f79c8047289b9c5bff025a46757bfd5f9bfec4b Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.intel.com>
+Date: Tue, 28 Feb 2012 15:10:24 +0000
+Subject: [PATCH 21/23] configure: make pulseaudio a configurable option
+
+Allows disabling pulseaudio support at configure time.
+
+Upstream-Status: Pending
+
+Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/configure b/configure
+index 50dbebf..3b511d4 100755
+--- a/configure
++++ b/configure
+@@ -1980,6 +1980,13 @@ while [ "$#" -gt 0 ]; do
+ UNKNOWN_OPT=yes
+ fi
+ ;;
++ pulseaudio)
++ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
++ CFG_PULSEAUDIO="$VAL"
++ else
++ UNKNOWN_OPT=yes
++ fi
++ ;;
+ gtkstyle)
+ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
+ CFG_QGTKSTYLE="$VAL"
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0022-configure-make-alsa-a-configurable-option.patch b/recipes-qt/qt5/qtbase-5.1.0/0022-configure-make-alsa-a-configurable-option.patch
new file mode 100644
index 00000000..5fe40805
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0022-configure-make-alsa-a-configurable-option.patch
@@ -0,0 +1,35 @@
+From a51b5c64a33a0c8b411aa4317356c7dfcb99e452 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Fri, 19 Jul 2013 23:21:28 +0200
+Subject: [PATCH 22/23] configure: make alsa a configurable option
+
+Allows disabling alsa support at configure time.
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/configure b/configure
+index 3b511d4..2a0be04 100755
+--- a/configure
++++ b/configure
+@@ -1987,6 +1987,13 @@ while [ "$#" -gt 0 ]; do
+ UNKNOWN_OPT=yes
+ fi
+ ;;
++ alsa)
++ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
++ CFG_ALSA="$VAL"
++ else
++ UNKNOWN_OPT=yes
++ fi
++ ;;
+ gtkstyle)
+ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
+ CFG_QGTKSTYLE="$VAL"
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-5.1.0/0023-configure-make-freetype-a-configurable-option.patch b/recipes-qt/qt5/qtbase-5.1.0/0023-configure-make-freetype-a-configurable-option.patch
new file mode 100644
index 00000000..d8ad4b82
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-5.1.0/0023-configure-make-freetype-a-configurable-option.patch
@@ -0,0 +1,35 @@
+From eef64dc5f4d998518c314a765bc0a9db7f6fdf9b Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Sat, 20 Jul 2013 10:56:37 +0200
+Subject: [PATCH 23/23] configure: make freetype a configurable option
+
+Allows disabling freetype support at configure time.
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ configure | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/configure b/configure
+index 2a0be04..64fbaeb 100755
+--- a/configure
++++ b/configure
+@@ -1994,6 +1994,13 @@ while [ "$#" -gt 0 ]; do
+ UNKNOWN_OPT=yes
+ fi
+ ;;
++ freetype)
++ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
++ CFG_LIBFREETYPE="$VAL"
++ else
++ UNKNOWN_OPT=yes
++ fi
++ ;;
+ gtkstyle)
+ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
+ CFG_QGTKSTYLE="$VAL"
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtbase-native_5.1.0.bb b/recipes-qt/qt5/qtbase-native_5.1.0.bb
new file mode 100644
index 00000000..563e000e
--- /dev/null
+++ b/recipes-qt/qt5/qtbase-native_5.1.0.bb
@@ -0,0 +1,11 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+do_install_append() {
+ # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt)
+ # e.g. qt3d, qtjsondb, qtwayland
+ ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt
+}
+
+SRC_URI[md5sum] = "0f8d14bb4039a2996c501a376ca7dae0"
+SRC_URI[sha256sum] = "1fa8c591adab9d45e4f322edea9a55a517ebf1a006dd481eace0236623adc90a"
diff --git a/recipes-qt/qt5/qtbase_5.1.0.bb b/recipes-qt/qt5/qtbase_5.1.0.bb
new file mode 100644
index 00000000..b5554641
--- /dev/null
+++ b/recipes-qt/qt5/qtbase_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "0f8d14bb4039a2996c501a376ca7dae0"
+SRC_URI[sha256sum] = "1fa8c591adab9d45e4f322edea9a55a517ebf1a006dd481eace0236623adc90a"
diff --git a/recipes-qt/qt5/qtdeclarative-5.1.0/0001-qmltestexample-fix-link.patch b/recipes-qt/qt5/qtdeclarative-5.1.0/0001-qmltestexample-fix-link.patch
new file mode 100644
index 00000000..7a68dd53
--- /dev/null
+++ b/recipes-qt/qt5/qtdeclarative-5.1.0/0001-qmltestexample-fix-link.patch
@@ -0,0 +1,46 @@
+From ea698b0a2588585356d1ea5139ca6feb7110611a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com>
+Date: Sun, 26 May 2013 14:26:19 +0200
+Subject: [PATCH 1/3] qmltestexample: fix link
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+else we get :
+ld: warning: libQt5Quick.so.5, needed by libQt5QuickTest.so, not found
+
+Upstream-Status: Inappropriate
+
+Signed-off-by: Eric Bénard <eric@eukrea.com>
+---
+ examples/qmltest/qmltest/qmltest.pro | 2 +-
+ tools/qmltestrunner/qmltestrunner.pro | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/examples/qmltest/qmltest/qmltest.pro b/examples/qmltest/qmltest/qmltest.pro
+index b5893c5..1b00e6c 100644
+--- a/examples/qmltest/qmltest/qmltest.pro
++++ b/examples/qmltest/qmltest/qmltest.pro
+@@ -14,7 +14,7 @@ TESTDATA += tst_basic.qml tst_item.qml
+ # This code exists solely for the purpose of building this example
+ # inside the examples/ hierarchy.
+
+-QT += qml qmltest
++QT += qml qmltest quick
+
+ macx: CONFIG -= app_bundle
+
+diff --git a/tools/qmltestrunner/qmltestrunner.pro b/tools/qmltestrunner/qmltestrunner.pro
+index 5184c1f..668cf17 100644
+--- a/tools/qmltestrunner/qmltestrunner.pro
++++ b/tools/qmltestrunner/qmltestrunner.pro
+@@ -1,5 +1,5 @@
+ SOURCES += main.cpp
+
+-QT += qml qmltest
++QT += qml qmltest quick
+
+ load(qt_tool)
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtdeclarative-5.1.0/0003-Fix-wrong-calculation-of-viewPort-for-transitions.patch b/recipes-qt/qt5/qtdeclarative-5.1.0/0003-Fix-wrong-calculation-of-viewPort-for-transitions.patch
new file mode 100644
index 00000000..d355e488
--- /dev/null
+++ b/recipes-qt/qt5/qtdeclarative-5.1.0/0003-Fix-wrong-calculation-of-viewPort-for-transitions.patch
@@ -0,0 +1,41 @@
+From 6d28b0ec1bc93fea7502fadfbc12f8198ccf9d14 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Florian=20H=C3=A4nel?= <florian.haenel@basyskom.com>
+Date: Wed, 5 Jun 2013 19:23:32 +0200
+Subject: [PATCH 3/3] Fix wrong calculation of viewPort for transitions
+
+Viewport is calculated wrong for horizontal layout in a second instance
+
+Task-number: QTBUG-29944
+Task-Number: QTBUG-31546
+
+Upstream-Status: Pending
+
+Looks like backport of https://codereview.qt-project.org/49226 but this
+one was applied in previous patch, this change looks the same but is
+in different part of qquickitemview.cpp and ISN'T applied yet in dev
+branch.
+
+Signed-off-by: Florian Haenel <florian.haenel@lge.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+
+Change-Id: I136ae4484278d14f796613505e3f38c65ec51ebe
+---
+ src/quick/items/qquickitemview.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/quick/items/qquickitemview.cpp b/src/quick/items/qquickitemview.cpp
+index a6dabee..290f283 100644
+--- a/src/quick/items/qquickitemview.cpp
++++ b/src/quick/items/qquickitemview.cpp
+@@ -1815,7 +1815,7 @@ void QQuickItemViewPrivate::layout()
+
+ prepareVisibleItemTransitions();
+
+- QRectF viewBounds(0, position(), q->width(), q->height());
++ QRectF viewBounds(q->contentX(), q->contentY(), q->width(), q->height());
+ for (QList<FxViewItem*>::Iterator it = releasePendingTransition.begin();
+ it != releasePendingTransition.end(); ) {
+ FxViewItem *item = *it;
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtdeclarative_5.1.0.bb b/recipes-qt/qt5/qtdeclarative_5.1.0.bb
new file mode 100644
index 00000000..2421bdbf
--- /dev/null
+++ b/recipes-qt/qt5/qtdeclarative_5.1.0.bb
@@ -0,0 +1,15 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI += " \
+ file://0001-qmltestexample-fix-link.patch \
+ file://0003-Fix-wrong-calculation-of-viewPort-for-transitions.patch \
+"
+
+SRC_URI[md5sum] = "604a6e3ae051a21aac0024694d55cb3b"
+SRC_URI[sha256sum] = "d8849755c17fca9bb44c09c442001bc5593c24986ea616c536719414e85d90cc"
+
+# /usr/lib/qt5/qml/QtQuick/Dialogs/images/*.png
+FILES_${PN}-qmlplugins += " \
+ ${OE_QMAKE_PATH_QML}/*/*/*/*.png \
+"
diff --git a/recipes-qt/qt5/qtgraphicaleffects_5.1.0.bb b/recipes-qt/qt5/qtgraphicaleffects_5.1.0.bb
new file mode 100644
index 00000000..3d24d7ab
--- /dev/null
+++ b/recipes-qt/qt5/qtgraphicaleffects_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "0e38ef686197fbf1207a9510f07d0656"
+SRC_URI[sha256sum] = "ea30ed7c3523d1a800a63cb888096cef89c61b590bfc81ba815ab9b12e283a89"
diff --git a/recipes-qt/qt5/qtimageformats_5.1.0.bb b/recipes-qt/qt5/qtimageformats_5.1.0.bb
new file mode 100644
index 00000000..b7a8b08d
--- /dev/null
+++ b/recipes-qt/qt5/qtimageformats_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "6dfab2e481e90ce74e89c646b91a11ca"
+SRC_URI[sha256sum] = "c740442a46715e32a45f60e42fda76afd8430bf0004ee1f7147aa77cf92ed846"
diff --git a/recipes-qt/qt5/qtjsbackend-5.1.0/0001-Install-the-mkv8snapshot-tool-to-the-native-side.patch b/recipes-qt/qt5/qtjsbackend-5.1.0/0001-Install-the-mkv8snapshot-tool-to-the-native-side.patch
new file mode 100644
index 00000000..1f94e4ce
--- /dev/null
+++ b/recipes-qt/qt5/qtjsbackend-5.1.0/0001-Install-the-mkv8snapshot-tool-to-the-native-side.patch
@@ -0,0 +1,32 @@
+From 973d4f0974c0b9c2504c56a2b9b8d6c709275ee4 Mon Sep 17 00:00:00 2001
+From: Mikko Levonmaa <mikko.levonmaa@palm.com>
+Date: Tue, 4 Dec 2012 11:20:13 -0800
+Subject: [PATCH 1/2] Install the mkv8snapshot tool to the native side
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Mikko Levonmaa <mikko.levonmaa@palm.com>
+---
+ src/tools/mkv8snapshot/mkv8snapshot.pro | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/src/tools/mkv8snapshot/mkv8snapshot.pro b/src/tools/mkv8snapshot/mkv8snapshot.pro
+index 16beb02..5e327f7 100644
+--- a/src/tools/mkv8snapshot/mkv8snapshot.pro
++++ b/src/tools/mkv8snapshot/mkv8snapshot.pro
+@@ -24,5 +24,10 @@ unix:LIBS += -lpthread
+
+ # We don't need to install this tool, it's only used for building v8.
+ # However we do have to make sure that 'make install' builds it.
+-dummytarget.CONFIG = dummy_install
+-INSTALLS += dummytarget
++#dummytarget.CONFIG = dummy_install
++#INSTALLS += dummytarget
++
++# Install the tool so that during target cross compilation we have access to the native side binary
++target.path = $$[QT_HOST_BINS]
++INSTALLS += target
++
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtjsbackend-5.1.0/0002-v8.pro-respect-external-host-bindir-when-set.patch b/recipes-qt/qt5/qtjsbackend-5.1.0/0002-v8.pro-respect-external-host-bindir-when-set.patch
new file mode 100644
index 00000000..d9bb5b43
--- /dev/null
+++ b/recipes-qt/qt5/qtjsbackend-5.1.0/0002-v8.pro-respect-external-host-bindir-when-set.patch
@@ -0,0 +1,31 @@
+From b0610cdb0c53be6da6d8f94be9af40bf50075368 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Sun, 28 Apr 2013 02:45:01 +0200
+Subject: [PATCH 2/2] v8.pro: respect external-host-bindir, when set
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ src/v8/v8.pro | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/v8/v8.pro b/src/v8/v8.pro
+index 2be6a19..d3da4e1 100644
+--- a/src/v8/v8.pro
++++ b/src/v8/v8.pro
+@@ -25,7 +25,10 @@ INCLUDEPATH -= $$MODULE_INCLUDES $$MODULE_INCLUDES/..
+ include(v8.pri)
+
+ contains(QT_CONFIG, v8snapshot) {
+- mkv8snapshot.commands = ../../bin/mkv8snapshot$$qtPlatformTargetSuffix() ${QMAKE_FILE_OUT}
++ mkv8snapshot.tool=$$[QT_EXTERNAL_HOST_BINS]/mkv8snapshot$$qtPlatformTargetSuffix()
++ !exists($$mkv8snapshot.tool): \
++ mkv8snapshot.tool=../../bin/mkv8snapshot$$qtPlatformTargetSuffix()
++ mkv8snapshot.commands = $$mkv8snapshot.tool ${QMAKE_FILE_OUT}
+ DUMMY_FILE = v8.pro
+ mkv8snapshot.input = DUMMY_FILE
+ mkv8snapshot.output = $$V8_GENERATED_SOURCES_DIR/snapshot.cpp
+--
+1.8.3.2
+
diff --git a/recipes-qt/qt5/qtjsbackend-native_5.1.0.bb b/recipes-qt/qt5/qtjsbackend-native_5.1.0.bb
new file mode 100644
index 00000000..fcc7cde6
--- /dev/null
+++ b/recipes-qt/qt5/qtjsbackend-native_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "bb4a74f3cd1db59274c9f4aaca0912af"
+SRC_URI[sha256sum] = "8df057d527f98b1c2aa2941ff22adaf9b9c6441ea0e6c44f91f49bbcdbab57ce"
diff --git a/recipes-qt/qt5/qtjsbackend_5.1.0.bb b/recipes-qt/qt5/qtjsbackend_5.1.0.bb
new file mode 100644
index 00000000..fcc7cde6
--- /dev/null
+++ b/recipes-qt/qt5/qtjsbackend_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "bb4a74f3cd1db59274c9f4aaca0912af"
+SRC_URI[sha256sum] = "8df057d527f98b1c2aa2941ff22adaf9b9c6441ea0e6c44f91f49bbcdbab57ce"
diff --git a/recipes-qt/qt5/qtmultimedia_5.1.0.bb b/recipes-qt/qt5/qtmultimedia_5.1.0.bb
new file mode 100644
index 00000000..97ef3ba6
--- /dev/null
+++ b/recipes-qt/qt5/qtmultimedia_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "ae0301809ca504b4b67d817fd46f9a2e"
+SRC_URI[sha256sum] = "1df262e4d8d16f83511a096974a5a14af21d366493c5302d549e3dc52fa0b00f"
diff --git a/recipes-qt/qt5/qtquick1_5.1.0.bb b/recipes-qt/qt5/qtquick1_5.1.0.bb
new file mode 100644
index 00000000..c29f96ed
--- /dev/null
+++ b/recipes-qt/qt5/qtquick1_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "0c4c7b81258dd889e020b6025f542387"
+SRC_URI[sha256sum] = "51d83033c2012de9806be13434b48430401c395c0d0a58390ada290581b3fc5f"
diff --git a/recipes-qt/qt5/qtscript_5.1.0.bb b/recipes-qt/qt5/qtscript_5.1.0.bb
new file mode 100644
index 00000000..d9bd00fc
--- /dev/null
+++ b/recipes-qt/qt5/qtscript_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "c9348cdc39826c717c75b930a7b5a3bf"
+SRC_URI[sha256sum] = "0cbe2e472657673ec8bd2f1ad133140b498292065159e67355f427e903c46d9b"
diff --git a/recipes-qt/qt5/qtsensors_5.1.0.bb b/recipes-qt/qt5/qtsensors_5.1.0.bb
new file mode 100644
index 00000000..9d314eae
--- /dev/null
+++ b/recipes-qt/qt5/qtsensors_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "bcb4b546d1d39f2e27425b48bae90ac2"
+SRC_URI[sha256sum] = "5cfd74323e8145a282fe840c47c639c064e832263744a24270f326a1464830ee"
diff --git a/recipes-qt/qt5/qtsvg_5.1.0.bb b/recipes-qt/qt5/qtsvg_5.1.0.bb
new file mode 100644
index 00000000..b54484df
--- /dev/null
+++ b/recipes-qt/qt5/qtsvg_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "394d33cc5d6b7aafbaae5a4f1d9e6652"
+SRC_URI[sha256sum] = "50fc66ada43472e42245c18095e9eac84b496a634736cf55aac81326e4aad54a"
diff --git a/recipes-qt/qt5/qtwebkit_5.1.0.bb b/recipes-qt/qt5/qtwebkit_5.1.0.bb
new file mode 100644
index 00000000..77725e3b
--- /dev/null
+++ b/recipes-qt/qt5/qtwebkit_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "fad7e7d6637719c2be101f9b3957d451"
+SRC_URI[sha256sum] = "b49c4cfae697ea67142e7b35ecb0e3fec06814153e8226b8c6655c4dafc92ac3"
diff --git a/recipes-qt/qt5/qtxmlpatterns_5.1.0.bb b/recipes-qt/qt5/qtxmlpatterns_5.1.0.bb
new file mode 100644
index 00000000..f0541595
--- /dev/null
+++ b/recipes-qt/qt5/qtxmlpatterns_5.1.0.bb
@@ -0,0 +1,5 @@
+require qt5-${PV}.inc
+require ${PN}.inc
+
+SRC_URI[md5sum] = "1d1ebc4d6efa4d05368c0c716858d314"
+SRC_URI[sha256sum] = "9d06493a4387d19e561f79f79c0a9c4c333eb764d64af54dc05f13a978694537"