From 902f55b957ba0407816739bfcae864c6bd2c3d68 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Wed, 3 Jul 2013 16:14:44 +0200 Subject: [PATCH] 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 --- conf/distro/include/qt5-versions.inc | 4 +- recipes-qt/qt5/qt5-5.1.0.inc | 22 ++ recipes-qt/qt5/qt5.inc | 1 + .../0001-Add-linux-oe-g-platform.patch | 304 ++++++++++++++++++ .../qtbase-5.1.0/0001-Always-build-uic.patch | 40 +++ ...ow-to-set-qt.conf-from-the-outside-u.patch | 36 +++ .../0003-Add-external-hostbindir-option.patch | 218 +++++++++++++ ...tions-temporary-remove-isEmpty-check.patch | 51 +++ ...ke-is-already-built-in-qtbase-native.patch | 30 ++ ...ding-a-separate-qmake-for-the-target.patch | 29 ++ ...fix-default-LIBDIRS-and-INCDIRS-with.patch | 29 ++ ...-qt_module-Fix-pkgconfig-replacement.patch | 70 ++++ ...09-qt_module-Fix-paths-in-.prl-files.patch | 62 ++++ ...wayland-scanner-disable-silent-rules.patch | 82 +++++ ...export-SYSTEM_VARIABLES-to-.qmake.va.patch | 44 +++ ...Allow-to-add-extra-arguments-to-make.patch | 37 +++ .../0013-Disable-mkv8snapshot.patch | 47 +++ ...-device-to-be-read-from-env-variable.patch | 35 ++ .../0015-qtbase-allow-build-of-examples.patch | 48 +++ ...-QOpenGLPaintDevice-sub-area-support.patch | 154 +++++++++ ...estoring-in-QOpenGLTextureGlyphCache.patch | 49 +++ ...20-Use-BGRA-extension-in-bindTexture.patch | 34 ++ ...ake-pulseaudio-a-configurable-option.patch | 36 +++ ...gure-make-alsa-a-configurable-option.patch | 35 ++ ...-make-freetype-a-configurable-option.patch | 35 ++ recipes-qt/qt5/qtbase-native_5.1.0.bb | 11 + recipes-qt/qt5/qtbase_5.1.0.bb | 5 + .../0001-qmltestexample-fix-link.patch | 46 +++ ...culation-of-viewPort-for-transitions.patch | 41 +++ recipes-qt/qt5/qtdeclarative_5.1.0.bb | 15 + recipes-qt/qt5/qtgraphicaleffects_5.1.0.bb | 5 + recipes-qt/qt5/qtimageformats_5.1.0.bb | 5 + ...mkv8snapshot-tool-to-the-native-side.patch | 32 ++ ...espect-external-host-bindir-when-set.patch | 31 ++ recipes-qt/qt5/qtjsbackend-native_5.1.0.bb | 5 + recipes-qt/qt5/qtjsbackend_5.1.0.bb | 5 + recipes-qt/qt5/qtmultimedia_5.1.0.bb | 5 + recipes-qt/qt5/qtquick1_5.1.0.bb | 5 + recipes-qt/qt5/qtscript_5.1.0.bb | 5 + recipes-qt/qt5/qtsensors_5.1.0.bb | 5 + recipes-qt/qt5/qtsvg_5.1.0.bb | 5 + recipes-qt/qt5/qtwebkit_5.1.0.bb | 5 + recipes-qt/qt5/qtxmlpatterns_5.1.0.bb | 5 + 43 files changed, 1767 insertions(+), 1 deletion(-) create mode 100644 recipes-qt/qt5/qt5-5.1.0.inc create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0001-Add-linux-oe-g-platform.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0001-Always-build-uic.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0003-Add-external-hostbindir-option.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0004-qt_functions-temporary-remove-isEmpty-check.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0005-qmake-is-already-built-in-qtbase-native.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0006-Allow-building-a-separate-qmake-for-the-target.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0008-qt_module-Fix-pkgconfig-replacement.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0009-qt_module-Fix-paths-in-.prl-files.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0010-wayland-scanner-disable-silent-rules.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0013-Disable-mkv8snapshot.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0014-enables-tslib-device-to-be-read-from-env-variable.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0015-qtbase-allow-build-of-examples.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0018-QOpenGLPaintDevice-sub-area-support.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0019-Fix-FBO-restoring-in-QOpenGLTextureGlyphCache.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0020-Use-BGRA-extension-in-bindTexture.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0021-configure-make-pulseaudio-a-configurable-option.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0022-configure-make-alsa-a-configurable-option.patch create mode 100644 recipes-qt/qt5/qtbase-5.1.0/0023-configure-make-freetype-a-configurable-option.patch create mode 100644 recipes-qt/qt5/qtbase-native_5.1.0.bb create mode 100644 recipes-qt/qt5/qtbase_5.1.0.bb create mode 100644 recipes-qt/qt5/qtdeclarative-5.1.0/0001-qmltestexample-fix-link.patch create mode 100644 recipes-qt/qt5/qtdeclarative-5.1.0/0003-Fix-wrong-calculation-of-viewPort-for-transitions.patch create mode 100644 recipes-qt/qt5/qtdeclarative_5.1.0.bb create mode 100644 recipes-qt/qt5/qtgraphicaleffects_5.1.0.bb create mode 100644 recipes-qt/qt5/qtimageformats_5.1.0.bb create mode 100644 recipes-qt/qt5/qtjsbackend-5.1.0/0001-Install-the-mkv8snapshot-tool-to-the-native-side.patch create mode 100644 recipes-qt/qt5/qtjsbackend-5.1.0/0002-v8.pro-respect-external-host-bindir-when-set.patch create mode 100644 recipes-qt/qt5/qtjsbackend-native_5.1.0.bb create mode 100644 recipes-qt/qt5/qtjsbackend_5.1.0.bb create mode 100644 recipes-qt/qt5/qtmultimedia_5.1.0.bb create mode 100644 recipes-qt/qt5/qtquick1_5.1.0.bb create mode 100644 recipes-qt/qt5/qtscript_5.1.0.bb create mode 100644 recipes-qt/qt5/qtsensors_5.1.0.bb create mode 100644 recipes-qt/qt5/qtsvg_5.1.0.bb create mode 100644 recipes-qt/qt5/qtwebkit_5.1.0.bb create mode 100644 recipes-qt/qt5/qtxmlpatterns_5.1.0.bb diff --git a/conf/distro/include/qt5-versions.inc b/conf/distro/include/qt5-versions.inc index 01a5a25aef..f033a20a78 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 0000000000..e26cc05344 --- /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 + +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 87bf5e8f18..80acb73e39 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 0000000000..669dffcd60 --- /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 +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 +--- + 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 <&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_ (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 ++ ++ ++// We are hot - unistd.h should have turned on the specific APIs we requested ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#ifndef QT_NO_IPV6IFNAME ++#include ++#endif ++ ++#define QT_USE_XOPEN_LFS_EXTENSIONS ++#include "../common/posix/qplatformdefs.h" ++ ++#undef QT_SOCKLEN_T ++ ++#if defined(__GLIBC__) && (__GLIBC__ >= 2) ++#define QT_SOCKLEN_T socklen_t ++#else ++#define QT_SOCKLEN_T int ++#endif ++ ++#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500) ++#define QT_SNPRINTF ::snprintf ++#define QT_VSNPRINTF ::vsnprintf ++#endif ++ ++#endif // QPLATFORMDEFS_H +-- +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 0000000000..5f37a971d6 --- /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 +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 +Signed-off-by: Martin Jansa +--- + 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 0000000000..c9c663a3d7 --- /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 +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 +--- + 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 0000000000..751275ed41 --- /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 +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 +--- + 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 . Data used by qmake will be installed to + (default HOSTPREFIX) + ++ -external-hostbindir Use external host executables instead of building them ++ (not used by defaut) ++ + Configure options: + + The defaults (*) are usually acceptable. A plus (+) denotes a default value +@@ -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 0000000000..4fe10871bb --- /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 +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 +--- + 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 0000000000..69b1435811 --- /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 +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 +Upstream-Status: Inappropriate [configuration] + +Signed-off-by: Mikko Levonmaa +Signed-off-by: Martin Jansa +--- + 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 0000000000..363a8ee944 --- /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 +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 +Signed-off-by: Mikko Levonmaa +Signed-off-by: Martin Jansa +--- + 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 0000000000..97b1269c3f --- /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 +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 0000000000..2de710372f --- /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 +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 +--- + 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 0000000000..f9e6c64ecc --- /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 +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 +--- + 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 0000000000..bdbb52a1d9 --- /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 +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 +--- + 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 0000000000..7c1e44590a --- /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 +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 +--- + 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 0000000000..66df3688ff --- /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 +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 +--- + 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 0000000000..0a50ee0d44 --- /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 +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=, argc=, argv=, + pending_exception=0x7efff277, convert_receiver=false) + at ../3rdparty/v8/src/execution.cc:161 + data=, exc=0x7efff277) + at ../3rdparty/v8/src/execution.cc:734 + at ../3rdparty/v8/src/api.cc:4742 + at qml/v8/qv8contextwrapper.cpp:155 + ownership=) at qml/v8/qv8engine.cpp:155 + parent=) at qml/v8/qjsengine.cpp:192 + +Signed-off-by: Mikko Levonmaa +Signed-off-by: Martin Jansa +--- + 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 0000000000..38b1e65995 --- /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?= +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 +Signed-off-by: Martin Jansa +--- + 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 0000000000..068467a697 --- /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?= +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 +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 + +Signed-off-by: Eric Bénard +--- + 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 0000000000..2069fffb5c --- /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 +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 +--- + 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 0000000000..c3a9dd5449 --- /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 +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 +--- + 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 0000000000..e081e69a47 --- /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 +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 +--- + 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(tx).bits()); ++ glTexImage2D(GL_TEXTURE_2D, 0, GL_BGRA_EXT, tx.width(), tx.height(), 0, GL_BGRA_EXT, GL_UNSIGNED_BYTE, const_cast(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 0000000000..797f258b82 --- /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 +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 +Signed-off-by: Martin Jansa +--- + 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 0000000000..5fe40805f7 --- /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 +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 +--- + 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 0000000000..d8ad4b8273 --- /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 +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 +--- + 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 0000000000..563e000ee4 --- /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 0000000000..b55546418c --- /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 0000000000..7a68dd53e9 --- /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?= +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 +--- + 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 0000000000..d355e4880c --- /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?= +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 +Signed-off-by: Martin Jansa + +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::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 0000000000..2421bdbf9c --- /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 0000000000..3d24d7ab17 --- /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 0000000000..b7a8b08ddb --- /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 0000000000..1f94e4cee1 --- /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 +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 +--- + 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 0000000000..d9bb5b4399 --- /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 +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 +--- + 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 0000000000..fcc7cde617 --- /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 0000000000..fcc7cde617 --- /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 0000000000..97ef3ba60f --- /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 0000000000..c29f96ed0c --- /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 0000000000..d9bd00fc81 --- /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 0000000000..9d314eae47 --- /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 0000000000..b54484dfaa --- /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 0000000000..77725e3b94 --- /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 0000000000..f054159516 --- /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"