recipes-qt5: Drop 5.0.2 version and 2nd qtwayland recipe
* this will make maintaining meta-qt5 a bit easier Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
parent
671313d0b5
commit
c67873216b
|
@ -1,5 +1,5 @@
|
|||
# Select which version you prefer by defining QT5_VERSION and including this file
|
||||
# possible values now "5.0.2", "5.1.0", "5.1.0+git%"
|
||||
# possible values now "5.1.0", "5.1.0+git%"
|
||||
|
||||
QT5_VERSION ?= "5.1.0"
|
||||
|
||||
|
@ -19,8 +19,3 @@ PREFERRED_VERSION_qttools-native = "${QT5_VERSION}"
|
|||
PREFERRED_VERSION_qtwebkit = "${QT5_VERSION}"
|
||||
PREFERRED_VERSION_qtwebkit-examples = "${QT5_VERSION}"
|
||||
PREFERRED_VERSION_qtxmlpatterns = "${QT5_VERSION}"
|
||||
|
||||
# append % only if it isn't included already
|
||||
# 5.1.0+git%% won't work and it's exactly where we need to overcome DEFAULT_PREFERENCE with PREFERRED_VERSION
|
||||
QT5_VERSION_WAYLAND = "${@base_contains('QT5_VERSION', '5.1.0+git%', '${QT5_VERSION}', '${QT5_VERSION}%', d)}"
|
||||
PREFERRED_VERSION_qtwayland = "${QT5_VERSION_WAYLAND}"
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
# 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 ?= "${QT_VERSION}"
|
||||
|
||||
SRC_URI += " \
|
||||
http://download.qt-project.org/archive/qt/5.0/${QT_VERSION_DIR}/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"
|
|
@ -1,304 +0,0 @@
|
|||
From d64321c240cbb949b9e55e2cd448c78bf9865c56 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/22] 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 2ea1ea4..6db4577 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -216,6 +216,16 @@ getQMakeConf()
|
||||
getQMakeConf3 "$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
|
||||
@@ -224,6 +234,16 @@ getXQMakeConf()
|
||||
getQMakeConf3 "$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
|
||||
@@ -707,6 +727,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}"
|
||||
@@ -2636,7 +2668,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
|
||||
if [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then
|
||||
@@ -2645,7 +2677,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
|
||||
@@ -3613,6 +3645,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..."
|
||||
@@ -3651,11 +3691,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 [ $QT_EDITION = "QT_EDITION_OPENSOURCE" ]; then
|
||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -DQMAKE_OPENSOURCE_EDITION"
|
||||
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
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
From 1092de02d1ac256a8c56fb5b5e590a4df8188acb 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.
|
||||
|
||||
Signed-off-by: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
---
|
||||
src/tools/tools.pro | 4 ++--
|
||||
1 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/tools/tools.pro b/src/tools/tools.pro
|
||||
index c67d6bf..b6f3b39 100644
|
||||
--- a/src/tools/tools.pro
|
||||
+++ b/src/tools/tools.pro
|
||||
@@ -1,8 +1,8 @@
|
||||
TEMPLATE = subdirs
|
||||
|
||||
-TOOLS_SUBDIRS = src_tools_bootstrap src_tools_moc src_tools_rcc src_tools_qdoc
|
||||
+TOOLS_SUBDIRS = src_tools_bootstrap src_tools_moc src_tools_rcc src_tools_qdoc src_tools_uic
|
||||
contains(QT_CONFIG, dbus): TOOLS_SUBDIRS += src_tools_qdbusxml2cpp src_tools_qdbuscpp2xml
|
||||
-!contains(QT_CONFIG, no-widgets): TOOLS_SUBDIRS += src_tools_uic
|
||||
+
|
||||
# Set subdir and respective target name
|
||||
src_tools_bootstrap.subdir = $$PWD/bootstrap
|
||||
src_tools_bootstrap.target = sub-tools-bootstrap
|
||||
--
|
||||
1.7.4.1
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
From 542325db6c9e9e2ffc2390b8eb1f8b16e674ca41 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/22] 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 5fb9640..6b40731 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
|
||||
|
|
@ -1,221 +0,0 @@
|
|||
From 943c30aa55fbf1e330e7c987e989ddbd656e69c0 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/22] 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 | 15 +++++++++++----
|
||||
src/corelib/global/qlibraryinfo.cpp | 3 ++-
|
||||
src/corelib/global/qlibraryinfo.h | 1 +
|
||||
tools/configure/configureapp.cpp | 8 ++++++++
|
||||
8 files changed, 42 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 6db4577..1ca5b4e 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -930,6 +930,7 @@ CFG_GCC_SYSROOT="yes"
|
||||
QT_HOST_PREFIX=
|
||||
QT_HOST_BINS=
|
||||
QT_HOST_DATA=
|
||||
+QT_EXTERNAL_HOST_BINS=
|
||||
|
||||
#flags for SQL drivers
|
||||
QT_CFLAGS_PSQL=
|
||||
@@ -1028,7 +1029,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|-qpa|-qconfig)
|
||||
+ -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|-qpa|-qconfig|-external-hostbindir)
|
||||
VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
|
||||
shift
|
||||
VAL="$1"
|
||||
@@ -1213,6 +1214,9 @@ while [ "$#" -gt 0 ]; do
|
||||
hostbindir)
|
||||
QT_HOST_BINS="$VAL"
|
||||
;;
|
||||
+ external-hostbindir)
|
||||
+ QT_EXTERNAL_HOST_BINS="$VAL"
|
||||
+ ;;
|
||||
pkg-config)
|
||||
if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
|
||||
CFG_PKGCONFIG="$VAL"
|
||||
@@ -2941,6 +2945,11 @@ else
|
||||
QT_HOST_DATA=`"$relpath/config.tests/unix/makeabs" "$QT_HOST_DATA"`
|
||||
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
|
||||
#-------------------------------------------------------------------------------
|
||||
@@ -3107,6 +3116,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
|
||||
@@ -3584,6 +3596,7 @@ static const char qt_configure_prefix_path_strs[][256 + 12] = {
|
||||
"qt_hpfxpath=$QT_HOST_PREFIX",
|
||||
"qt_hbinpath=$QT_HOST_BINS",
|
||||
"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 8cd2473..876f657 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}.command)
|
||||
isEmpty($$1) {
|
||||
- $$1 = $$[QT_HOST_BINS]/$$2
|
||||
+ $$1 = $$[QT_EXTERNAL_HOST_BINS]/$$2
|
||||
+ isEmpty($$[QT_EXTERNAL_HOST_BINS]) {
|
||||
+ $$1 = $$[QT_HOST_BINS]/$$2
|
||||
+ }
|
||||
contains(QMAKE_HOST.os, Windows):!contains($$1, .*\\.(exe|bat)$) {
|
||||
exists($$eval($$1).bat) {
|
||||
$$1 = $$eval($$1).bat
|
||||
diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf
|
||||
index 9d50856..8a636c7 100644
|
||||
--- a/mkspecs/features/qt_tool.prf
|
||||
+++ b/mkspecs/features/qt_tool.prf
|
||||
@@ -31,7 +31,7 @@ load(qt_targets)
|
||||
|
||||
# If we are doing a prefix build, create a "module" pri which enables
|
||||
# qtPrepareTool() to work with the non-installed build.
|
||||
-!build_pass:force_independent {
|
||||
+!build_pass:force_independent:isEmpty($$[QT_EXTERNAL_HOST_BINS]) {
|
||||
|
||||
isEmpty(MODULE):MODULE = $$TARGET
|
||||
|
||||
diff --git a/qmake/property.cpp b/qmake/property.cpp
|
||||
index c4fbcd6..c1b7a9f 100644
|
||||
--- a/qmake/property.cpp
|
||||
+++ b/qmake/property.cpp
|
||||
@@ -74,6 +74,7 @@ static const struct {
|
||||
{ "QT_HOST_PREFIX", QLibraryInfo::HostPrefixPath, true },
|
||||
{ "QT_HOST_DATA", QLibraryInfo::HostDataPath, true },
|
||||
{ "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, 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 4c41cff..997ea6d 100644
|
||||
--- a/qtbase.pro
|
||||
+++ b/qtbase.pro
|
||||
@@ -68,17 +68,24 @@ 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
|
||||
-equals(QMAKE_HOST.os, Windows):syncqt.files += $$PWD/bin/syncqt.bat
|
||||
+!isEmpty($$[QT_EXTERNAL_HOST_BINS]) {
|
||||
+ syncqt.files = $$[QT_EXTERNAL_HOST_BINS]/bin/syncqt
|
||||
+}
|
||||
+equals(QMAKE_HOST.os, Windows) {
|
||||
+ syncqt.files = $${syncqt.files}.bat
|
||||
+}
|
||||
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 6b40731..139a60f 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
|
||||
@@ -295,6 +295,7 @@ static const struct {
|
||||
{ "HostPrefix", "" },
|
||||
{ "HostBinaries", "bin" },
|
||||
{ "HostData", "." },
|
||||
+ { "ExternalHostBinaries", "" },
|
||||
{ "TargetSpec", "" },
|
||||
{ "HostSpec", "" },
|
||||
#endif
|
||||
diff --git a/src/corelib/global/qlibraryinfo.h b/src/corelib/global/qlibraryinfo.h
|
||||
index 054231b..37fe529 100644
|
||||
--- a/src/corelib/global/qlibraryinfo.h
|
||||
+++ b/src/corelib/global/qlibraryinfo.h
|
||||
@@ -85,6 +85,7 @@ public:
|
||||
HostPrefixPath,
|
||||
HostBinariesPath,
|
||||
HostDataPath,
|
||||
+ ExternalHostBinariesPath,
|
||||
TargetSpecPath,
|
||||
HostSpecPath,
|
||||
LastHostPath = HostSpecPath,
|
||||
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
|
||||
index 22ee456..cfc6f97 100644
|
||||
--- a/tools/configure/configureapp.cpp
|
||||
+++ b/tools/configure/configureapp.cpp
|
||||
@@ -1156,6 +1156,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)
|
||||
@@ -3657,6 +3664,7 @@ void Configure::generateQConfigCpp()
|
||||
<< " \"qt_hpfxpath=" << formatPath(dictionary["QT_HOST_PREFIX"]) << "\"," << endl
|
||||
<< " \"qt_hbinpath=" << formatPath(dictionary["QT_HOST_BINS"]) << "\"," << 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
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
From 2a3c7bb40de7ae8f060e69bdaa77522172101f00 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/22] 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 | 2 +-
|
||||
2 files changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
|
||||
index 876f657..0e094a8 100644
|
||||
--- a/mkspecs/features/qt_functions.prf
|
||||
+++ b/mkspecs/features/qt_functions.prf
|
||||
@@ -194,7 +194,11 @@ defineTest(qtPrepareTool) {
|
||||
$$1 = $$eval(QT_TOOL.$${2}.command)
|
||||
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
|
||||
}
|
||||
contains(QMAKE_HOST.os, Windows):!contains($$1, .*\\.(exe|bat)$) {
|
||||
diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf
|
||||
index 8a636c7..0dad97c 100644
|
||||
--- a/mkspecs/features/qt_tool.prf
|
||||
+++ b/mkspecs/features/qt_tool.prf
|
||||
@@ -31,7 +31,7 @@ load(qt_targets)
|
||||
|
||||
# If we are doing a prefix build, create a "module" pri which enables
|
||||
# qtPrepareTool() to work with the non-installed build.
|
||||
-!build_pass:force_independent:isEmpty($$[QT_EXTERNAL_HOST_BINS]) {
|
||||
+!build_pass:force_independent:!exists($$[QT_EXTERNAL_HOST_BINS]) {
|
||||
|
||||
isEmpty(MODULE):MODULE = $$TARGET
|
||||
|
||||
--
|
||||
1.8.3.2
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
From 7b37f7fa8c68c1807eeb45936154a42c34cda666 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/22] 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 1ca5b4e..546bed2 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -3667,7 +3667,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
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
From 76537aca4118f5f7c336b7d17594c9644b6272b5 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/22] 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
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
From a1d0c7fb8fd689af7d3616ecf5d6aaf5ffd84bc9 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/22] configureapp: Prefix default LIBDIRS and INCDIRS with
|
||||
SYSROOT
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
---
|
||||
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 cfc6f97..d0e17fa 100644
|
||||
--- a/tools/configure/configureapp.cpp
|
||||
+++ b/tools/configure/configureapp.cpp
|
||||
@@ -3087,8 +3087,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
|
||||
|
|
@ -1,68 +0,0 @@
|
|||
From 8a97079c1b17f27256a4a816e5cc85344c29ac6f 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/22] 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 | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
|
||||
index 1132943..7fbfd8d 100644
|
||||
--- a/mkspecs/features/qt_module.prf
|
||||
+++ b/mkspecs/features/qt_module.prf
|
||||
@@ -128,18 +128,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 = $$[QT_INSTALL_LIBS/raw]
|
||||
- QMAKE_PKGCONFIG_INSTALL_REPLACE += include_replace lib_replace
|
||||
+ 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 = $$[QT_INSTALL_LIBS/raw]
|
||||
- QMAKE_LIBTOOL_INSTALL_REPLACE += include_replace lib_replace
|
||||
+ QMAKE_LIBTOOL_INSTALL_REPLACE += lafile_replace
|
||||
}
|
||||
|
||||
unix|win32-g++* {
|
||||
--
|
||||
1.8.3.2
|
||||
|
|
@ -1,62 +0,0 @@
|
|||
From a70d48880e27586efe5f6aa195385207abf3cead 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/22] 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 7fbfd8d..226119f 100644
|
||||
--- a/mkspecs/features/qt_module.prf
|
||||
+++ b/mkspecs/features/qt_module.prf
|
||||
@@ -132,17 +132,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
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
From 505bbe468956de2fdf2f27e8905582fe438d3b35 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/22] 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 | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/mkspecs/features/wayland-scanner.prf b/mkspecs/features/wayland-scanner.prf
|
||||
index 90e1e0f..0750849 100644
|
||||
--- a/mkspecs/features/wayland-scanner.prf
|
||||
+++ b/mkspecs/features/wayland-scanner.prf
|
||||
@@ -10,7 +10,7 @@ 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}
|
||||
@@ -19,7 +19,7 @@ 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}
|
||||
@@ -28,5 +28,5 @@ 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
|
||||
--
|
||||
1.8.3.2
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
From a2439736a0efb80aea1746b0aada551ff63ad7e6 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/22] 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 546bed2..34074ee 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -740,20 +740,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
|
||||
|
|
@ -1,37 +0,0 @@
|
|||
From dd7756dd5a3c3eb677c3bacce257c1c8bbf03098 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/22] 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 39144e7..de48b07 100644
|
||||
--- a/mkspecs/features/configure.prf
|
||||
+++ b/mkspecs/features/configure.prf
|
||||
@@ -54,12 +54,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
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
From 78b716520396b5317a8b91dbca183483bea8b1d2 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/22] 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>
|
||||
---
|
||||
configure | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 34074ee..ac09bbf 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -799,7 +799,7 @@ CFG_NOBUILD_PARTS=""
|
||||
CFG_SKIP_MODULES=""
|
||||
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
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
From f8336efd143109c3478e5548360248f99b645548 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/22] 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>
|
||||
---
|
||||
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
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
From a21c676a69388cd8cdf0bb28184de2bee58def0e 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/22] 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 | 8 --------
|
||||
1 file changed, 8 deletions(-)
|
||||
|
||||
diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf
|
||||
index 479a16a..ca1b0c7 100644
|
||||
--- a/mkspecs/features/qt_example_installs.prf
|
||||
+++ b/mkspecs/features/qt_example_installs.prf
|
||||
@@ -92,12 +92,4 @@ probase = $$relative_path($$_PRO_FILE_PWD_, $$dirname(_QMAKE_CONF_)/examples)
|
||||
allfiles -= doc
|
||||
!isEmpty(allfiles): warning("remaining files in $$_PRO_FILE_PWD_: $$allfiles")
|
||||
}
|
||||
-
|
||||
- # Do not actually build the examples in production builds with -prefix
|
||||
- !equals(TEMPLATE, subdirs):prefix_build:!contains(QT_CONFIG, private_tests) {
|
||||
- TEMPLATE = aux
|
||||
- CONFIG -= have_target qt staticlib dll
|
||||
- SOURCES =
|
||||
- INSTALLS -= target
|
||||
- }
|
||||
}
|
||||
--
|
||||
1.8.3.2
|
||||
|
|
@ -1,72 +0,0 @@
|
|||
From 665841d6c38faecbf7848c0f4bbf3b0537b6a0a1 Mon Sep 17 00:00:00 2001
|
||||
From: Michael Brasser <michael.brasser@live.com>
|
||||
Date: Tue, 26 Mar 2013 09:22:51 -0500
|
||||
Subject: [PATCH 16/22] Allow tslib to be specified at configure time.
|
||||
|
||||
Change-Id: I0ebf0eeea7e6a0b8136fb805f34f04082bc58c5e
|
||||
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
||||
---
|
||||
configure | 20 ++++++++++++++++++++
|
||||
src/plugins/generic/generic.pro | 4 ++++
|
||||
2 files changed, 24 insertions(+)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index ac09bbf..188e941 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -829,6 +829,7 @@ CFG_KMS=auto
|
||||
CFG_LIBUDEV=auto
|
||||
CFG_OBSOLETE_WAYLAND=no
|
||||
CFG_EVDEV=auto
|
||||
+CFG_TSLIB=no
|
||||
CFG_NIS=auto
|
||||
CFG_CUPS=auto
|
||||
CFG_ICONV=auto
|
||||
@@ -1805,6 +1806,13 @@ while [ "$#" -gt 0 ]; do
|
||||
UNKNOWN_OPT=yes
|
||||
fi
|
||||
;;
|
||||
+ tslib)
|
||||
+ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
|
||||
+ CFG_TSLIB="$VAL"
|
||||
+ else
|
||||
+ UNKNOWN_OPT=yes
|
||||
+ fi
|
||||
+ ;;
|
||||
cups)
|
||||
if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
|
||||
CFG_CUPS="$VAL"
|
||||
@@ -4815,6 +4823,18 @@ if [ "$CFG_EVDEV" = "no" ]; then
|
||||
QMakeVar add DEFINES QT_NO_EVDEV
|
||||
fi
|
||||
|
||||
+if [ "$CFG_TSLIB" != "no" ]; then
|
||||
+ if compileTest unix/tslib "tslib"; then
|
||||
+ CFG_TSLIB=yes
|
||||
+ QT_CONFIG="$QT_CONFIG tslib"
|
||||
+ elif [ "$CFG_TSLIB" = "yes" ]; then
|
||||
+ echo "The tslib functionality test failed!"
|
||||
+ exit 1
|
||||
+ else
|
||||
+ CFG_TSLIB=no
|
||||
+ fi
|
||||
+fi
|
||||
+
|
||||
# Check we actually have X11 :-)
|
||||
if compileTest x11/xlib "XLib"; then
|
||||
QT_CONFIG="$QT_CONFIG xlib"
|
||||
diff --git a/src/plugins/generic/generic.pro b/src/plugins/generic/generic.pro
|
||||
index 078db2f..18a8295 100644
|
||||
--- a/src/plugins/generic/generic.pro
|
||||
+++ b/src/plugins/generic/generic.pro
|
||||
@@ -5,3 +5,7 @@ TEMPLATE = subdirs
|
||||
contains(QT_CONFIG, evdev) {
|
||||
SUBDIRS += evdevmouse evdevtouch evdevkeyboard evdevtablet
|
||||
}
|
||||
+
|
||||
+contains(QT_CONFIG, tslib) {
|
||||
+ SUBDIRS += tslib
|
||||
+}
|
||||
--
|
||||
1.8.3.2
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
From 126d2c4beff40bc51a1912a752b23c178eac59b5 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?David=20E=2E=20Narv=C3=A1ez?= <david.narvaez@computer.org>
|
||||
Date: Sat, 23 Feb 2013 23:14:50 -0500
|
||||
Subject: [PATCH 17/22] Rename qAbs Function for timeval
|
||||
|
||||
This decouples it from qAbs which is declared as a constexpr under
|
||||
certain compilation flags and enables for qtbase to be compiled with
|
||||
GCC 4.8
|
||||
|
||||
Change-Id: I78e02256ffc8b460ca74ae5241e77dfac4e09ba9
|
||||
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
||||
|
||||
Upstream-Status: Backported from stable branch
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
---
|
||||
src/corelib/kernel/qtimerinfo_unix.cpp | 5 ++---
|
||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp
|
||||
index 0eee425..7a29247 100644
|
||||
--- a/src/corelib/kernel/qtimerinfo_unix.cpp
|
||||
+++ b/src/corelib/kernel/qtimerinfo_unix.cpp
|
||||
@@ -94,8 +94,7 @@ timeval QTimerInfoList::updateCurrentTime()
|
||||
|
||||
#if ((_POSIX_MONOTONIC_CLOCK-0 <= 0) && !defined(Q_OS_MAC) && !defined(Q_OS_INTEGRITY)) || defined(QT_BOOTSTRAPPED)
|
||||
|
||||
-template <>
|
||||
-timeval qAbs(const timeval &t)
|
||||
+timeval qAbsTimeval(const timeval &t)
|
||||
{
|
||||
timeval tmp = t;
|
||||
if (tmp.tv_sec < 0) {
|
||||
@@ -144,7 +143,7 @@ bool QTimerInfoList::timeChanged(timeval *delta)
|
||||
timeval tickGranularity;
|
||||
tickGranularity.tv_sec = 0;
|
||||
tickGranularity.tv_usec = msPerTick * 1000;
|
||||
- return elapsedTimeTicks < ((qAbs(*delta) - tickGranularity) * 10);
|
||||
+ return elapsedTimeTicks < ((qAbsTimeval(*delta) - tickGranularity) * 10);
|
||||
}
|
||||
|
||||
/*
|
||||
--
|
||||
1.8.3.2
|
||||
|
|
@ -1,152 +0,0 @@
|
|||
From c2c17a3198c85366f34b24abc80b20f27307d751 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/22] QOpenGLPaintDevice sub-area support
|
||||
|
||||
Allows creating QOpenGLPaintDevice targetting sub-area
|
||||
of binded framebuffer.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Change-Id: Ida2f079aa1ac0b87d36b54129e226399dbcdda80
|
||||
---
|
||||
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 0b3d9dc..5f4f1c9 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;
|
||||
|
||||
@@ -158,6 +159,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.
|
||||
*/
|
||||
@@ -226,6 +233,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 66850c7..6f8a849 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);
|
||||
|
||||
diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp
|
||||
index 9fd8a7a..df29159 100644
|
||||
--- a/src/gui/opengl/qopenglpaintengine.cpp
|
||||
+++ b/src/gui/opengl/qopenglpaintengine.cpp
|
||||
@@ -1935,7 +1935,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;
|
||||
@@ -2023,7 +2026,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();
|
||||
@@ -2066,6 +2069,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);
|
||||
}
|
||||
@@ -2074,14 +2078,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 93e1b42..d84e8c7 100644
|
||||
--- a/src/gui/opengl/qopenglpaintengine_p.h
|
||||
+++ b/src/gui/opengl/qopenglpaintengine_p.h
|
||||
@@ -261,6 +261,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 b751629..8822faf 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
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
From edea45b25b50932c8c072679d36e97b3cc3c1326 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/22] 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
|
||||
---
|
||||
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 8822faf..022356a 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
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
From 87380175cdb88ceadeec5773d8bc40ec08c4e3d6 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/22] Use BGRA extension in bindTexture
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Change-Id: I18aecc87c5c7d4483cabe5555da33ca6bb8580f1
|
||||
---
|
||||
src/gui/opengl/qopengltexturecache.cpp | 6 ++----
|
||||
1 file changed, 2 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/gui/opengl/qopengltexturecache.cpp b/src/gui/opengl/qopengltexturecache.cpp
|
||||
index fffc368..11c8b59 100644
|
||||
--- a/src/gui/opengl/qopengltexturecache.cpp
|
||||
+++ b/src/gui/opengl/qopengltexturecache.cpp
|
||||
@@ -171,7 +171,7 @@ static inline void qgl_byteSwapImage(QImage &img)
|
||||
}
|
||||
}
|
||||
}
|
||||
-
|
||||
+#include <QDebug>
|
||||
GLuint QOpenGLTextureCache::bindTexture(QOpenGLContext *context, qint64 key, const QImage &image)
|
||||
{
|
||||
GLuint id;
|
||||
@@ -180,9 +180,7 @@ GLuint QOpenGLTextureCache::bindTexture(QOpenGLContext *context, qint64 key, con
|
||||
|
||||
QImage tx = image.convertToFormat(QImage::Format_ARGB32_Premultiplied);
|
||||
|
||||
- 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
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
From 647c9bb3a33e8cc5093d46b1a08d38f3f2002b74 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 188e941..24dcd3a 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -1848,6 +1848,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
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
From 33a0f6ff196e366eb51dc2fb937636b087f1719f 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 24dcd3a..2f46604 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -1855,6 +1855,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
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
From 113e48ed082315424931407717b72a7a5c011944 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 2f46604..c2cf3b5 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -1862,6 +1862,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
|
||||
|
|
@ -1,84 +0,0 @@
|
|||
From 0e6b7bcb1c02750368722d1770b0098ce9b28327 Mon Sep 17 00:00:00 2001
|
||||
From: Simon Busch <morphis@gravedo.de>
|
||||
Date: Mon, 22 Jul 2013 21:09:41 +0000
|
||||
Subject: [PATCH] Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS to determine path to
|
||||
host binaries
|
||||
|
||||
Upstream-Status: Inappropiate (configuration)
|
||||
|
||||
Signed-off-by: Simon Busch <morphis@gravedo.de>
|
||||
---
|
||||
src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++---
|
||||
src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++--
|
||||
src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +-
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in
|
||||
index 4e0fcda..925a335 100644
|
||||
--- a/src/corelib/Qt5CoreConfigExtras.cmake.in
|
||||
+++ b/src/corelib/Qt5CoreConfigExtras.cmake.in
|
||||
@@ -6,7 +6,7 @@ if (NOT TARGET Qt5::qmake)
|
||||
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
|
||||
IMPORTED_LOCATION \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\"
|
||||
!!ELSE
|
||||
- IMPORTED_LOCATION \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\"
|
||||
+ IMPORTED_LOCATION \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qmake$$CMAKE_BIN_SUFFIX\"
|
||||
!!ENDIF
|
||||
)
|
||||
endif()
|
||||
@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::moc)
|
||||
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
|
||||
IMPORTED_LOCATION \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\"
|
||||
!!ELSE
|
||||
- IMPORTED_LOCATION \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\"
|
||||
+ IMPORTED_LOCATION \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/moc$$CMAKE_BIN_SUFFIX\"
|
||||
!!ENDIF
|
||||
)
|
||||
# For CMake automoc feature
|
||||
@@ -32,7 +32,7 @@ if (NOT TARGET Qt5::rcc)
|
||||
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
|
||||
IMPORTED_LOCATION \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\"
|
||||
!!ELSE
|
||||
- IMPORTED_LOCATION \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\"
|
||||
+ IMPORTED_LOCATION \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/rcc$$CMAKE_BIN_SUFFIX\"
|
||||
!!ENDIF
|
||||
)
|
||||
endif()
|
||||
diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in
|
||||
index 8ecf7ce..af86a88 100644
|
||||
--- a/src/dbus/Qt5DBusConfigExtras.cmake.in
|
||||
+++ b/src/dbus/Qt5DBusConfigExtras.cmake.in
|
||||
@@ -6,7 +6,7 @@ if (NOT TARGET Qt5::qdbuscpp2xml)
|
||||
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
|
||||
IMPORTED_LOCATION \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\"
|
||||
!!ELSE
|
||||
- IMPORTED_LOCATION \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\"
|
||||
+ IMPORTED_LOCATION \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\"
|
||||
!!ENDIF
|
||||
)
|
||||
endif()
|
||||
@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::qdbusxml2cpp)
|
||||
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
|
||||
IMPORTED_LOCATION \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\"
|
||||
!!ELSE
|
||||
- IMPORTED_LOCATION \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\"
|
||||
+ IMPORTED_LOCATION \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\"
|
||||
!!ENDIF
|
||||
)
|
||||
endif()
|
||||
diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
|
||||
index d9abb45..ca17862 100644
|
||||
--- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in
|
||||
+++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
|
||||
@@ -6,7 +6,7 @@ if (NOT TARGET Qt5::uic)
|
||||
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
|
||||
IMPORTED_LOCATION \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\"
|
||||
!!ELSE
|
||||
- IMPORTED_LOCATION \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\"
|
||||
+ IMPORTED_LOCATION \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/uic$$CMAKE_BIN_SUFFIX\"
|
||||
!!ENDIF
|
||||
)
|
||||
endif()
|
||||
--
|
||||
1.8.1.2
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
From af96c6fed931564c95037539f07e9c8e33c69529 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Hartmann <phartmann@blackberry.com>
|
||||
Date: Thu, 25 Jul 2013 12:05:29 -0400
|
||||
Subject: [PATCH] QHttpMultiPart: fix data corruption in readData method
|
||||
|
||||
When readData() is called repeatedly, we need to keep track which
|
||||
part of the multipart message we are currently reading from.
|
||||
Hereby we also need to take the boundary size into account, and not
|
||||
only the size of the multipart; otherwise we would skip a not
|
||||
completely read part. This would then later lead to advancing the
|
||||
read pointer by negative indexes and data loss.
|
||||
|
||||
Upstream-Status: Backport [https://codereview.qt-project.org/#change,61698]
|
||||
Signed-off-by: Jonathan Liu <net147@gmail.com>
|
||||
|
||||
Task-number: QTBUG-32534
|
||||
Change-Id: Ibb6dff16adaf4ea67181d23d1d0c8459e33a0ed0
|
||||
Reviewed-by: Jonathan Liu <net147@gmail.com>
|
||||
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
||||
---
|
||||
src/network/access/qhttpmultipart.cpp | 3 +-
|
||||
.../access/qnetworkreply/tst_qnetworkreply.cpp | 44 ++++++++++++++++++++++
|
||||
2 files changed, 46 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/network/access/qhttpmultipart.cpp b/src/network/access/qhttpmultipart.cpp
|
||||
index 4397ef8..5985ed9 100644
|
||||
--- a/src/network/access/qhttpmultipart.cpp
|
||||
+++ b/src/network/access/qhttpmultipart.cpp
|
||||
@@ -497,7 +497,8 @@ qint64 QHttpMultiPartIODevice::readData(char *data, qint64 maxSize)
|
||||
|
||||
// skip the parts we have already read
|
||||
while (index < multiPart->parts.count() &&
|
||||
- readPointer >= partOffsets.at(index) + multiPart->parts.at(index).d->size())
|
||||
+ readPointer >= partOffsets.at(index) + multiPart->parts.at(index).d->size()
|
||||
+ + multiPart->boundary.count() + 6) // 6 == 2 boundary dashes, \r\n after boundary, \r\n after multipart
|
||||
index++;
|
||||
|
||||
// read the data
|
||||
--
|
||||
1.8.3.4
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r3"
|
||||
|
||||
SRC_URI += " \
|
||||
file://0017-Rename-qAbs-Function-for-timeval.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "a4fec8ed03867c4ee4fe5a46001a11f0"
|
||||
SRC_URI[sha256sum] = "31851ee2f844c100554506a9a446d4b6abb5270bca799c2a683e5f937456a9c8"
|
|
@ -1,13 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r3"
|
||||
|
||||
SRC_URI += " \
|
||||
file://0016-Allow-tslib-to-be-specified-at-configure-time.patch \
|
||||
file://0017-Rename-qAbs-Function-for-timeval.patch \
|
||||
file://0019-Fix-FBO-restoring-in-QOpenGLTextureGlyphCache.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "a4fec8ed03867c4ee4fe5a46001a11f0"
|
||||
SRC_URI[sha256sum] = "31851ee2f844c100554506a9a446d4b6abb5270bca799c2a683e5f937456a9c8"
|
|
@ -1,34 +0,0 @@
|
|||
From e22cb54286083886be5081332de2f64ab0b78b4b 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] 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 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
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
|
||||
|
||||
--
|
||||
1.8.1.4
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
From eb11863cc40048e84cb383ae9e29b5929170a63d Mon Sep 17 00:00:00 2001
|
||||
From: Guenter Schwann <guenter.schwann@canonical.com>
|
||||
Date: Wed, 27 Feb 2013 15:52:03 +0100
|
||||
Subject: [PATCH 2/5] Fix displacement transition bug for horizontal case
|
||||
|
||||
Task-number: QTBUG-29944
|
||||
|
||||
Upstream-Status: Backport https://codereview.qt-project.org/49226
|
||||
Signed-off-by: Florian Haenel <florian.haenel@lge.com>
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
|
||||
Change-Id: I23381f7a1d2c8d3c6df007b5b11c12b0db3bb1e9
|
||||
---
|
||||
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 b73fb8c..1c74288 100644
|
||||
--- a/src/quick/items/qquickitemview.cpp
|
||||
+++ b/src/quick/items/qquickitemview.cpp
|
||||
@@ -2115,7 +2115,7 @@ void QQuickItemViewPrivate::prepareVisibleItemTransitions()
|
||||
return;
|
||||
|
||||
// must call for every visible item to init or discard transitions
|
||||
- QRectF viewBounds(0, position(), q->width(), q->height());
|
||||
+ QRectF viewBounds(q->contentX(), q->contentY(), q->width(), q->height());
|
||||
for (int i=0; i<visibleItems.count(); i++)
|
||||
visibleItems[i]->prepareTransition(transitioner, viewBounds);
|
||||
}
|
||||
--
|
||||
1.8.2.1
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
From 3dfa028b27e171cb2494b22f0346be1390310ea6 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/5] 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 1c74288..b316af9 100644
|
||||
--- a/src/quick/items/qquickitemview.cpp
|
||||
+++ b/src/quick/items/qquickitemview.cpp
|
||||
@@ -1816,7 +1816,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.2.1
|
||||
|
|
@ -1,37 +0,0 @@
|
|||
From adb69cabeacbe14a4439473107000d6e94d8d033 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Florian=20H=C3=A4nel?= <florian.haenel@basyskom.com>
|
||||
Date: Mon, 3 Jun 2013 13:40:09 +0200
|
||||
Subject: [PATCH 4/5] Fix null-pointer access in QQuickVisualDataModelPrivate
|
||||
|
||||
I observed null cachItem->contextData which lead to null-pointer access
|
||||
on cacheItem->contextData->destroy().
|
||||
|
||||
Task-number: QTBUG-31439
|
||||
|
||||
Upstream-Status: Backport https://codereview.qt-project.org/57789
|
||||
|
||||
Signed-of-by: Florian Haenel <florian.haenel@lge.com>
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
|
||||
Change-Id: I91f28a3ee1ac83446ecde1801a1cb7962fb883f3
|
||||
---
|
||||
src/quick/items/qquickvisualdatamodel.cpp | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/quick/items/qquickvisualdatamodel.cpp b/src/quick/items/qquickvisualdatamodel.cpp
|
||||
index d2e50e8..a460e7f 100644
|
||||
--- a/src/quick/items/qquickvisualdatamodel.cpp
|
||||
+++ b/src/quick/items/qquickvisualdatamodel.cpp
|
||||
@@ -817,7 +817,8 @@ void QQuickVisualDataModelPrivate::incubatorStatusChanged(QVDMIncubationTask *in
|
||||
delete cacheItem->object;
|
||||
cacheItem->object = 0;
|
||||
cacheItem->scriptRef -= 1;
|
||||
- cacheItem->contextData->destroy();
|
||||
+ if (cacheItem->contextData)
|
||||
+ cacheItem->contextData->destroy();
|
||||
cacheItem->contextData = 0;
|
||||
if (!cacheItem->isReferenced()) {
|
||||
removeCacheItem(cacheItem);
|
||||
--
|
||||
1.8.2.1
|
||||
|
|
@ -1,88 +0,0 @@
|
|||
From 9d85c3c5823c6f73db245d4de786d911fd96edfd Mon Sep 17 00:00:00 2001
|
||||
From: Florian Haenel <florian.haenel@lge.com>
|
||||
Date: Sat, 8 Jun 2013 00:34:35 +0200
|
||||
Subject: [PATCH 5/5] Avoid swizzling on OpenGL ES when possible
|
||||
|
||||
Add support for APPLE_texture_format_BGRA8888,
|
||||
IMG_texture_format_BGRA8888,
|
||||
EXT_texture_format_BGRA8888 and EXT_bgra. The apple one acts
|
||||
just like the desktop EXT_bgra one, so they need slightly
|
||||
different handling than the ES extensions.
|
||||
|
||||
This change also has the benefit that we no longer have a dedicated
|
||||
ES path.
|
||||
|
||||
Upstream-Status: Backport https://codereview.qt-project.org/46549
|
||||
Signed-off-by: Florian Haenel <florian.haenel@lge.com>
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
|
||||
Change-Id: I5ecb0a02c3a7bd984d6752fa87163726118b93de
|
||||
---
|
||||
src/quick/scenegraph/util/qsgtexture.cpp | 28 ++++++++++++++++++++++------
|
||||
1 file changed, 22 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/src/quick/scenegraph/util/qsgtexture.cpp b/src/quick/scenegraph/util/qsgtexture.cpp
|
||||
index 16cc461..3d574f3 100644
|
||||
--- a/src/quick/scenegraph/util/qsgtexture.cpp
|
||||
+++ b/src/quick/scenegraph/util/qsgtexture.cpp
|
||||
@@ -65,6 +65,10 @@
|
||||
#include <QHash>
|
||||
#endif
|
||||
|
||||
+#ifndef GL_BGRA
|
||||
+#define GL_BGRA 0x80E1
|
||||
+#endif
|
||||
+
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
inline static bool isPowerOfTwo(int x)
|
||||
@@ -523,7 +527,6 @@ QSGPlainTexture::~QSGPlainTexture()
|
||||
glDeleteTextures(1, &m_texture_id);
|
||||
}
|
||||
|
||||
-#ifdef QT_OPENGL_ES
|
||||
void qsg_swizzleBGRAToRGBA(QImage *image)
|
||||
{
|
||||
const int width = image->width();
|
||||
@@ -534,7 +537,6 @@ void qsg_swizzleBGRAToRGBA(QImage *image)
|
||||
p[x] = ((p[x] << 16) & 0xff0000) | ((p[x] >> 16) & 0xff) | (p[x] & 0xff00ff00);
|
||||
}
|
||||
}
|
||||
-#endif
|
||||
|
||||
void QSGPlainTexture::setImage(const QImage &image)
|
||||
{
|
||||
@@ -621,12 +623,26 @@ void QSGPlainTexture::bind()
|
||||
|
||||
updateBindOptions(m_dirty_bind_options);
|
||||
|
||||
+ GLenum externalFormat = GL_RGBA;
|
||||
+ GLenum internalFormat = GL_RGBA;
|
||||
+
|
||||
+ const char *extensions = (const char *) glGetString(GL_EXTENSIONS);
|
||||
+ if (strstr(extensions, "GL_EXT_bgra")) {
|
||||
+ externalFormat = GL_BGRA;
|
||||
#ifdef QT_OPENGL_ES
|
||||
- qsg_swizzleBGRAToRGBA(&tmp);
|
||||
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, tmp.constBits());
|
||||
-#else
|
||||
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, w, h, 0, GL_BGRA, GL_UNSIGNED_BYTE, tmp.constBits());
|
||||
+ internalFormat = GL_BGRA;
|
||||
#endif
|
||||
+ } else if (strstr(extensions, "GL_APPLE_texture_format_BGRA8888")) {
|
||||
+ externalFormat = GL_BGRA;
|
||||
+ } else if (strstr(extensions, "GL_EXT_texture_format_BGRA8888")
|
||||
+ || strstr(extensions, "GL_IMG_texture_format_BGRA8888")) {
|
||||
+ externalFormat = GL_BGRA;
|
||||
+ internalFormat = GL_BGRA;
|
||||
+ } else {
|
||||
+ qsg_swizzleBGRAToRGBA(&tmp);
|
||||
+ }
|
||||
+
|
||||
+ glTexImage2D(GL_TEXTURE_2D, 0, internalFormat, w, h, 0, externalFormat, GL_UNSIGNED_BYTE, tmp.constBits());
|
||||
|
||||
if (m_has_mipmaps) {
|
||||
QOpenGLContext *ctx = QOpenGLContext::currentContext();
|
||||
--
|
||||
1.8.2.1
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI += " \
|
||||
file://0001-qmltestexample-fix-link.patch \
|
||||
file://0002-Fix-displacement-transition-bug-for-horizontal-case.patch \
|
||||
file://0003-Fix-wrong-calculation-of-viewPort-for-transitions.patch \
|
||||
file://0004-Fix-null-pointer-access-in-QQuickVisualDataModelPriv.patch \
|
||||
file://0005-Avoid-swizzling-on-OpenGL-ES-when-possible.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "55ab45a7a17db5b202b225603a35a37c"
|
||||
SRC_URI[sha256sum] = "dcfcc6c0d1913d285dd7b42dd9bc457c304f3e3074a1e0d875fff1e9a8318520"
|
|
@ -1,13 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
# LICENSE files are missing in 5.0.2
|
||||
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780 \
|
||||
file://${COMMON_LICENSE_DIR}/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891 \
|
||||
file://${COMMON_LICENSE_DIR}/GFDL-1.3;md5=1083add59b39991c748ea70a92166959 \
|
||||
"
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "3d4475a4702f7bbe8064f69e17f1e8dd"
|
||||
SRC_URI[sha256sum] = "944399c5795b83b8f6b5e4ccec763ce5192f0e99b5e6d256f2b43a3165ee3016"
|
|
@ -1,7 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "e397a4237f51cfef7a3b38ad29b831d7"
|
||||
SRC_URI[sha256sum] = "93bd13a47002f188a8a83a5c742d396a2008a545fc22d58df442c4c070a463b7"
|
|
@ -1,32 +0,0 @@
|
|||
From 293e982e084661e0caf686737dcdcda9e2e3e083 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/3] 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
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
From fa85676a52fb6e12e6db85ace4b6a2cfc1d5239a 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/3] 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
|
||||
|
|
@ -1,190 +0,0 @@
|
|||
From d8a3566b013ba581e638cf2b960a8488d5fc9d64 Mon Sep 17 00:00:00 2001
|
||||
From: Sergio Martins <sergio.martins@kdab.com>
|
||||
Date: Wed, 20 Feb 2013 22:34:46 +0000
|
||||
Subject: [PATCH 3/3] [V8] Cleanup hardfp ABI detection. This work was
|
||||
triggered by issue 2140.
|
||||
|
||||
Upstream Patch: https://chromiumcodereview.appspot.com/10713009
|
||||
|
||||
Task-Number: QTBUG-28890
|
||||
Change-Id: Id073388fbbffa2ad9b1cea0ab42e1d6e47862a36
|
||||
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
||||
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
||||
---
|
||||
src/3rdparty/v8/src/platform-linux.cc | 70 ++++++++++++++++------------------
|
||||
src/3rdparty/v8/src/platform-qnx.cc | 71 ++++++++++++++++-------------------
|
||||
2 files changed, 65 insertions(+), 76 deletions(-)
|
||||
|
||||
diff --git a/src/3rdparty/v8/src/platform-linux.cc b/src/3rdparty/v8/src/platform-linux.cc
|
||||
index f6db423..18f59dd 100644
|
||||
--- a/src/3rdparty/v8/src/platform-linux.cc
|
||||
+++ b/src/3rdparty/v8/src/platform-linux.cc
|
||||
@@ -161,47 +161,41 @@ bool OS::ArmCpuHasFeature(CpuFeature feature) {
|
||||
}
|
||||
|
||||
|
||||
-// Simple helper function to detect whether the C code is compiled with
|
||||
-// option -mfloat-abi=hard. The register d0 is loaded with 1.0 and the register
|
||||
-// pair r0, r1 is loaded with 0.0. If -mfloat-abi=hard is pased to GCC then
|
||||
-// calling this will return 1.0 and otherwise 0.0.
|
||||
-static void ArmUsingHardFloatHelper() {
|
||||
- asm("mov r0, #0":::"r0");
|
||||
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
|
||||
- // Load 0x3ff00000 into r1 using instructions available in both ARM
|
||||
- // and Thumb mode.
|
||||
- asm("mov r1, #3":::"r1");
|
||||
- asm("mov r2, #255":::"r2");
|
||||
- asm("lsl r1, r1, #8":::"r1");
|
||||
- asm("orr r1, r1, r2":::"r1");
|
||||
- asm("lsl r1, r1, #20":::"r1");
|
||||
- // For vmov d0, r0, r1 use ARM mode.
|
||||
-#ifdef __thumb__
|
||||
- asm volatile(
|
||||
- "@ Enter ARM Mode \n\t"
|
||||
- " adr r3, 1f \n\t"
|
||||
- " bx r3 \n\t"
|
||||
- " .ALIGN 4 \n\t"
|
||||
- " .ARM \n"
|
||||
- "1: vmov d0, r0, r1 \n\t"
|
||||
- "@ Enter THUMB Mode\n\t"
|
||||
- " adr r3, 2f+1 \n\t"
|
||||
- " bx r3 \n\t"
|
||||
- " .THUMB \n"
|
||||
- "2: \n\t":::"r3");
|
||||
+bool OS::ArmUsingHardFloat() {
|
||||
+ // GCC versions 4.6 and above define __ARM_PCS or __ARM_PCS_VFP to specify
|
||||
+ // the Floating Point ABI used (PCS stands for Procedure Call Standard).
|
||||
+ // We use these as well as a couple of other defines to statically determine
|
||||
+ // what FP ABI used.
|
||||
+ // GCC versions 4.4 and below don't support hard-fp.
|
||||
+ // GCC versions 4.5 may support hard-fp without defining __ARM_PCS or
|
||||
+ // __ARM_PCS_VFP.
|
||||
+
|
||||
+#define GCC_VERSION (__GNUC__ * 10000 \
|
||||
+ + __GNUC_MINOR__ * 100 \
|
||||
+ + __GNUC_PATCHLEVEL__)
|
||||
+#if GCC_VERSION >= 40600
|
||||
+#if defined(__ARM_PCS_VFP)
|
||||
+ return true;
|
||||
#else
|
||||
- asm("vmov d0, r0, r1");
|
||||
-#endif // __thumb__
|
||||
-#endif // defined(__VFP_FP__) && !defined(__SOFTFP__)
|
||||
- asm("mov r1, #0":::"r1");
|
||||
-}
|
||||
+ return false;
|
||||
+#endif
|
||||
|
||||
+#elif GCC_VERSION < 40500
|
||||
+ return false;
|
||||
|
||||
-bool OS::ArmUsingHardFloat() {
|
||||
- // Cast helper function from returning void to returning double.
|
||||
- typedef double (*F)();
|
||||
- F f = FUNCTION_CAST<F>(FUNCTION_ADDR(ArmUsingHardFloatHelper));
|
||||
- return f() == 1.0;
|
||||
+#else
|
||||
+#if defined(__ARM_PCS_VFP)
|
||||
+ return true;
|
||||
+#elif defined(__ARM_PCS) || defined(__SOFTFP) || !defined(__VFP_FP__)
|
||||
+ return false;
|
||||
+#else
|
||||
+#error "Your version of GCC does not report the FP ABI compiled for." \
|
||||
+ "Please report it on this issue" \
|
||||
+ "http://code.google.com/p/v8/issues/detail?id=2140"
|
||||
+
|
||||
+#endif
|
||||
+#endif
|
||||
+#undef GCC_VERSION
|
||||
}
|
||||
#endif // def __arm__
|
||||
|
||||
diff --git a/src/3rdparty/v8/src/platform-qnx.cc b/src/3rdparty/v8/src/platform-qnx.cc
|
||||
index bf9f5ba..46d69b8 100644
|
||||
--- a/src/3rdparty/v8/src/platform-qnx.cc
|
||||
+++ b/src/3rdparty/v8/src/platform-qnx.cc
|
||||
@@ -139,48 +139,43 @@ bool OS::ArmCpuHasFeature(CpuFeature feature) {
|
||||
}
|
||||
|
||||
|
||||
-// Simple helper function to detect whether the C code is compiled with
|
||||
-// option -mfloat-abi=hard. The register d0 is loaded with 1.0 and the register
|
||||
-// pair r0, r1 is loaded with 0.0. If -mfloat-abi=hard is pased to GCC then
|
||||
-// calling this will return 1.0 and otherwise 0.0.
|
||||
-static void ArmUsingHardFloatHelper() {
|
||||
- asm("mov r0, #0");
|
||||
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
|
||||
- // Load 0x3ff00000 into r1 using instructions available in both ARM
|
||||
- // and Thumb mode.
|
||||
- asm("mov r1, #3");
|
||||
- asm("mov r2, #255");
|
||||
- asm("lsl r1, r1, #8");
|
||||
- asm("orr r1, r1, r2");
|
||||
- asm("lsl r1, r1, #20");
|
||||
- // For vmov d0, r0, r1 use ARM mode.
|
||||
-#ifdef __thumb__
|
||||
- asm volatile(
|
||||
- "@ Enter ARM Mode \n\t"
|
||||
- " adr r3, 1f \n\t"
|
||||
- " bx r3 \n\t"
|
||||
- " .ALIGN 4 \n\t"
|
||||
- " .ARM \n"
|
||||
- "1: vmov d0, r0, r1 \n\t"
|
||||
- "@ Enter THUMB Mode\n\t"
|
||||
- " adr r3, 2f+1 \n\t"
|
||||
- " bx r3 \n\t"
|
||||
- " .THUMB \n"
|
||||
- "2: \n\t");
|
||||
+bool OS::ArmUsingHardFloat() {
|
||||
+ // GCC versions 4.6 and above define __ARM_PCS or __ARM_PCS_VFP to specify
|
||||
+ // the Floating Point ABI used (PCS stands for Procedure Call Standard).
|
||||
+ // We use these as well as a couple of other defines to statically determine
|
||||
+ // what FP ABI used.
|
||||
+ // GCC versions 4.4 and below don't support hard-fp.
|
||||
+ // GCC versions 4.5 may support hard-fp without defining __ARM_PCS or
|
||||
+ // __ARM_PCS_VFP.
|
||||
+
|
||||
+#define GCC_VERSION (__GNUC__ * 10000 \
|
||||
+ + __GNUC_MINOR__ * 100 \
|
||||
+ + __GNUC_PATCHLEVEL__)
|
||||
+#if GCC_VERSION >= 40600
|
||||
+#if defined(__ARM_PCS_VFP)
|
||||
+ return true;
|
||||
#else
|
||||
- asm("vmov d0, r0, r1");
|
||||
-#endif // __thumb__
|
||||
-#endif // defined(__VFP_FP__) && !defined(__SOFTFP__)
|
||||
- asm("mov r1, #0");
|
||||
-}
|
||||
+ return false;
|
||||
+#endif
|
||||
|
||||
+#elif GCC_VERSION < 40500
|
||||
+ return false;
|
||||
|
||||
-bool OS::ArmUsingHardFloat() {
|
||||
- // Cast helper function from returning void to returning double.
|
||||
- typedef double (*F)();
|
||||
- F f = FUNCTION_CAST<F>(FUNCTION_ADDR(ArmUsingHardFloatHelper));
|
||||
- return f() == 1.0;
|
||||
+#else
|
||||
+#if defined(__ARM_PCS_VFP)
|
||||
+ return true;
|
||||
+#elif defined(__ARM_PCS) || defined(__SOFTFP) || !defined(__VFP_FP__)
|
||||
+ return false;
|
||||
+#else
|
||||
+#error "Your version of GCC does not report the FP ABI compiled for." \
|
||||
+ "Please report it on this issue" \
|
||||
+ "http://code.google.com/p/v8/issues/detail?id=2140"
|
||||
+
|
||||
+#endif
|
||||
+#endif
|
||||
+#undef GCC_VERSION
|
||||
}
|
||||
+
|
||||
#endif // def __arm__
|
||||
|
||||
|
||||
--
|
||||
1.8.3.2
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "610f011757755888153cb2004c04446f"
|
||||
SRC_URI[sha256sum] = "65071ab9ab7d9024b7ba6d128a1c97ac09cf1b37818affb4238e4ba7d6665cc0"
|
|
@ -1,11 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI += " \
|
||||
file://0003-V8-Cleanup-hardfp-ABI-detection.-This-work-was-trigg.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "610f011757755888153cb2004c04446f"
|
||||
SRC_URI[sha256sum] = "65071ab9ab7d9024b7ba6d128a1c97ac09cf1b37818affb4238e4ba7d6665cc0"
|
|
@ -1,13 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
# LICENSE files are missing in 5.0.2
|
||||
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780 \
|
||||
file://${COMMON_LICENSE_DIR}/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891 \
|
||||
file://${COMMON_LICENSE_DIR}/GFDL-1.3;md5=1083add59b39991c748ea70a92166959 \
|
||||
"
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "f0902250974440c9c63569112a67440c"
|
||||
SRC_URI[sha256sum] = "fffc7bd71e6cb2853da3c90d7f9794583e7a83e4eeb6fea039a2efac53688834"
|
|
@ -1,7 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "22cd03e2e2aadbc5e2ce324a3526fa8b"
|
||||
SRC_URI[sha256sum] = "2a2235f4f4afd5bf8c6960efafbe89f8c443f174fb22931d48f566660cfcea9a"
|
|
@ -1,7 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "929db18c2f4f66cb2ba204076f9f0c22"
|
||||
SRC_URI[sha256sum] = "def1b60e5ff5513cbda27200554fb568ef822e0ee790476facfe3bcf3438598f"
|
|
@ -1,13 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
# LICENSE files are missing in 5.0.2
|
||||
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780 \
|
||||
file://${COMMON_LICENSE_DIR}/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891 \
|
||||
file://${COMMON_LICENSE_DIR}/GFDL-1.3;md5=1083add59b39991c748ea70a92166959 \
|
||||
"
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "a000016afd3672540b2488c2f8e8d8b3"
|
||||
SRC_URI[sha256sum] = "5983485ade365a9e809d4614cc76fb106c35d5c514e0312a9013bb25227a6521"
|
|
@ -1,127 +0,0 @@
|
|||
From f5d7b5cd073eb6b5a60658b9622c59a682fd828d Mon Sep 17 00:00:00 2001
|
||||
From: Martin Jansa <Martin.jansa@gmail.com>
|
||||
Date: Wed, 11 Sep 2013 18:30:08 +0200
|
||||
Subject: [PATCH] Allow to build only lrelease + lupdate + lconvert
|
||||
|
||||
This is useful e.g. when cross compiling with OpenEmbedded where qtbase-native
|
||||
is built without GUI support (no-png is set) and we still want to build
|
||||
native lrelease + lupdate + lconvert tools.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Martin Jansa <Martin.jansa@gmail.com>
|
||||
---
|
||||
examples/examples.pro | 4 ++--
|
||||
src/designer/src/src.pro | 14 ++++++++------
|
||||
src/linguist/linguist.pro | 2 +-
|
||||
src/src.pro | 10 ++++++----
|
||||
tests/auto/auto.pro | 20 +++++++++++---------
|
||||
5 files changed, 28 insertions(+), 22 deletions(-)
|
||||
|
||||
diff --git a/examples/examples.pro b/examples/examples.pro
|
||||
index 4955969..8e86419 100644
|
||||
--- a/examples/examples.pro
|
||||
+++ b/examples/examples.pro
|
||||
@@ -1,3 +1,3 @@
|
||||
TEMPLATE = subdirs
|
||||
-qtHaveModule(widgets): SUBDIRS += help designer linguist uitools assistant
|
||||
-
|
||||
+!linguistonly:qtHaveModule(widgets): SUBDIRS += help designer assistant
|
||||
+qtHaveModule(widgets): SUBDIRS += linguist uitools
|
||||
diff --git a/src/designer/src/src.pro b/src/designer/src/src.pro
|
||||
index 64d1c37..6e6912d 100644
|
||||
--- a/src/designer/src/src.pro
|
||||
+++ b/src/designer/src/src.pro
|
||||
@@ -1,10 +1,12 @@
|
||||
TEMPLATE = subdirs
|
||||
CONFIG += ordered
|
||||
|
||||
-SUBDIRS = \
|
||||
- uitools \
|
||||
- lib \
|
||||
- components \
|
||||
- designer
|
||||
+!linguistonly {
|
||||
+ SUBDIRS = \
|
||||
+ lib \
|
||||
+ components \
|
||||
+ designer
|
||||
+}
|
||||
+SUBDIRS += uitools
|
||||
|
||||
-contains(QT_CONFIG, shared): SUBDIRS += plugins
|
||||
+!linguistonly:contains(QT_CONFIG, shared): SUBDIRS += plugins
|
||||
diff --git a/src/linguist/linguist.pro b/src/linguist/linguist.pro
|
||||
index 04b0ab6..8c63bb4 100644
|
||||
--- a/src/linguist/linguist.pro
|
||||
+++ b/src/linguist/linguist.pro
|
||||
@@ -3,7 +3,7 @@ SUBDIRS = \
|
||||
lrelease \
|
||||
lupdate \
|
||||
lconvert
|
||||
-!no-png:qtHaveModule(widgets): SUBDIRS += linguist
|
||||
+!linguistonly:!no-png:qtHaveModule(widgets): SUBDIRS += linguist
|
||||
|
||||
win32:CMAKE_BIN_SUFFIX = ".exe"
|
||||
|
||||
diff --git a/src/src.pro b/src/src.pro
|
||||
index 3799567..7deb785 100644
|
||||
--- a/src/src.pro
|
||||
+++ b/src/src.pro
|
||||
@@ -5,10 +5,12 @@ qtHaveModule(widgets) {
|
||||
no-png {
|
||||
message("Some graphics-related tools are unavailable without PNG support")
|
||||
} else {
|
||||
- SUBDIRS = assistant \
|
||||
+ !linguistonly {
|
||||
+ SUBDIRS = assistant \
|
||||
pixeltool \
|
||||
- qtestlib \
|
||||
- designer
|
||||
+ qtestlib
|
||||
+ }
|
||||
+ SUBDIRS += designer
|
||||
# unix:!mac:!embedded:!qpa:SUBDIRS += qtconfig
|
||||
}
|
||||
}
|
||||
@@ -21,7 +23,7 @@ mac {
|
||||
|
||||
embedded:SUBDIRS += kmap2qmap
|
||||
|
||||
-qtHaveModule(dbus): SUBDIRS += qdbus
|
||||
+!linguistonly:qtHaveModule(dbus): SUBDIRS += qdbus
|
||||
# We don't need these command line utilities on embedded platforms.
|
||||
embedded: SUBDIRS += makeqpf
|
||||
|
||||
diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro
|
||||
index 074aa34..d38e05d 100644
|
||||
--- a/tests/auto/auto.pro
|
||||
+++ b/tests/auto/auto.pro
|
||||
@@ -1,13 +1,15 @@
|
||||
TEMPLATE=subdirs
|
||||
-SUBDIRS=\
|
||||
- linguist \
|
||||
- host.pro \
|
||||
- qhelpcontentmodel \
|
||||
- qhelpenginecore \
|
||||
- qhelpgenerator \
|
||||
- qhelpindexmodel \
|
||||
- qhelpprojectdata \
|
||||
- cmake
|
||||
+!linguistonly {
|
||||
+ SUBDIRS=\
|
||||
+ linguist \
|
||||
+ host.pro \
|
||||
+ qhelpcontentmodel \
|
||||
+ qhelpenginecore \
|
||||
+ qhelpgenerator \
|
||||
+ qhelpindexmodel \
|
||||
+ qhelpprojectdata \
|
||||
+ cmake
|
||||
+}
|
||||
|
||||
# These tests don't make sense for cross-compiled builds
|
||||
cross_compile:SUBDIRS -= host.pro
|
||||
--
|
||||
1.7.10.4
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
SRC_URI[md5sum] = "93ddcfdb87c6a784b0a921d09eafbdad"
|
||||
SRC_URI[sha256sum] = "bb9bcf38dbb429cf884d688793681257876f97a2c0fba08528393a39eec7755b"
|
|
@ -1,46 +0,0 @@
|
|||
From 7f97da120b5b3dde22c9d89a8da8a4f35a9f2a26 Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
Date: Tue, 19 Feb 2013 11:16:05 -0800
|
||||
Subject: [PATCH 1/3] xcbcommon should not be a mandatory dependency
|
||||
|
||||
Not all platforms that use qtwayland depend on xcbcommon to be present
|
||||
for them to be functional
|
||||
|
||||
This change won't be needed when this commit from dev branch is merged
|
||||
to stable:
|
||||
commit 894adf8a447865119be7c6c4d01577d8032f4177
|
||||
Author: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
||||
Date: Mon Apr 8 12:54:58 2013 +0200
|
||||
|
||||
make failure to configure wayland non-fatal for a top-level build of qt
|
||||
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
---
|
||||
qtwayland.pro | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/qtwayland.pro b/qtwayland.pro
|
||||
index 24e104b..66dd38a 100644
|
||||
--- a/qtwayland.pro
|
||||
+++ b/qtwayland.pro
|
||||
@@ -11,7 +11,7 @@ qtCompileTest(xcomposite)
|
||||
load(qt_parts)
|
||||
|
||||
!config_wayland {
|
||||
- error(QtWayland requires Wayland 1.0.3 or higher)
|
||||
+ error("QtWayland requires Wayland 1.0.3 or higher")
|
||||
}
|
||||
|
||||
!config_xkbcommon {
|
||||
@@ -19,7 +19,7 @@ load(qt_parts)
|
||||
}
|
||||
|
||||
!config_wayland_scanner {
|
||||
- error(QtWayland requires wayland-scanner)
|
||||
+ error("QtWayland requires wayland-scanner")
|
||||
}
|
||||
|
||||
!config_wayland_egl {
|
||||
--
|
||||
1.8.2.1
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
From 5b7c89d211a193acfd182eb0519b658629af3193 Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
Date: Fri, 1 Mar 2013 13:00:53 -0800
|
||||
Subject: [PATCH 2/3] Temporarily patching this out as Qt5.0.0 does not have
|
||||
qtHaveModule
|
||||
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
---
|
||||
src/compositor/compositor_api/compositor_api.pri | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/compositor/compositor_api/compositor_api.pri b/src/compositor/compositor_api/compositor_api.pri
|
||||
index f0bbe76..e7905e5 100644
|
||||
--- a/src/compositor/compositor_api/compositor_api.pri
|
||||
+++ b/src/compositor/compositor_api/compositor_api.pri
|
||||
@@ -12,7 +12,7 @@ SOURCES += \
|
||||
|
||||
QT += core-private
|
||||
|
||||
-qtHaveModule(quick) {
|
||||
+#qtHaveModule(quick) {
|
||||
SOURCES += \
|
||||
compositor_api/qwaylandsurfaceitem.cpp \
|
||||
compositor_api/qwaylandsurfacenode.cpp \
|
||||
@@ -27,4 +27,4 @@ qtHaveModule(quick) {
|
||||
|
||||
QT += qml quick
|
||||
QT += quick-private gui-private
|
||||
-}
|
||||
+#}
|
||||
--
|
||||
1.8.2.1
|
||||
|
|
@ -1,71 +0,0 @@
|
|||
From 2d707f8dc9f0658d889aef4f4c5a62595598402c Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
Date: Wed, 6 Mar 2013 10:18:49 -0800
|
||||
Subject: [PATCH 3/3] eglCreateImageKHR requires the context to be NULL
|
||||
|
||||
As per the EGL spec the context passed to that function should
|
||||
be null.
|
||||
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
---
|
||||
.../wayland-egl/waylandeglintegration.cpp | 16 ++--------------
|
||||
1 file changed, 2 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp b/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp
|
||||
index 73877c4..16e77fb 100644
|
||||
--- a/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp
|
||||
+++ b/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp
|
||||
@@ -101,7 +101,6 @@ public:
|
||||
|
||||
PFNGLEGLIMAGETARGETTEXTURE2DOESPROC gl_egl_image_target_texture_2d;
|
||||
|
||||
- QPlatformNativeInterface::NativeResourceForContextFunction get_egl_context;
|
||||
};
|
||||
|
||||
WaylandEglIntegration::WaylandEglIntegration()
|
||||
@@ -121,10 +120,6 @@ void WaylandEglIntegration::initializeHardware(QtWayland::Display *waylandDispla
|
||||
const char *extensionString = eglQueryString(d->egl_display, EGL_EXTENSIONS);
|
||||
if (extensionString && strstr(extensionString, "EGL_WL_bind_wayland_display"))
|
||||
{
|
||||
- d->get_egl_context = nativeInterface->nativeResourceFunctionForContext("get_egl_context");
|
||||
- if (!d->get_egl_context) {
|
||||
- qWarning("Failed to retrieve the get_egl_context function");
|
||||
- }
|
||||
d->egl_bind_wayland_display =
|
||||
reinterpret_cast<PFNEGLBINDWAYLANDDISPLAYWL>(eglGetProcAddress("eglBindWaylandDisplayWL"));
|
||||
d->egl_unbind_wayland_display =
|
||||
@@ -137,7 +132,6 @@ void WaylandEglIntegration::initializeHardware(QtWayland::Display *waylandDispla
|
||||
reinterpret_cast<PFNGLEGLIMAGETARGETTEXTURE2DOESPROC>(eglGetProcAddress("glEGLImageTargetTexture2DOES"));
|
||||
|
||||
if (d->egl_bind_wayland_display
|
||||
- && d->get_egl_context
|
||||
&& d->egl_unbind_wayland_display
|
||||
&& d->egl_create_image
|
||||
&& d->egl_destroy_image
|
||||
@@ -162,10 +156,7 @@ GLuint WaylandEglIntegration::createTextureFromBuffer(wl_buffer *buffer, QOpenGL
|
||||
return 0;
|
||||
}
|
||||
|
||||
- QPlatformNativeInterface *nativeInterface = QGuiApplication::platformNativeInterface();
|
||||
- EGLContext egl_context = d->get_egl_context(context);
|
||||
-
|
||||
- EGLImageKHR image = d->egl_create_image(d->egl_display, egl_context,
|
||||
+ EGLImageKHR image = d->egl_create_image(d->egl_display, NULL,
|
||||
EGL_WAYLAND_BUFFER_WL,
|
||||
buffer, NULL);
|
||||
|
||||
@@ -229,10 +220,7 @@ void *WaylandEglIntegration::lockNativeBuffer(struct wl_buffer *buffer, QOpenGLC
|
||||
{
|
||||
Q_D(const WaylandEglIntegration);
|
||||
|
||||
- QPlatformNativeInterface *nativeInterface = QGuiApplication::platformNativeInterface();
|
||||
- EGLContext egl_context = d->get_egl_context(context);
|
||||
-
|
||||
- EGLImageKHR image = d->egl_create_image(d->egl_display, egl_context,
|
||||
+ EGLImageKHR image = d->egl_create_image(d->egl_display, NULL,
|
||||
EGL_WAYLAND_BUFFER_WL,
|
||||
buffer, NULL);
|
||||
return image;
|
||||
--
|
||||
1.8.2.1
|
||||
|
|
@ -1,33 +1,38 @@
|
|||
From c8417a2b0b66c26eaa0569c19422f87598e29629 Mon Sep 17 00:00:00 2001
|
||||
From 7f97da120b5b3dde22c9d89a8da8a4f35a9f2a26 Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
Date: Tue, 19 Feb 2013 11:16:05 -0800
|
||||
Subject: [PATCH 1/4] xcbcommon should not be a mandatory dependency
|
||||
Subject: [PATCH 1/3] xcbcommon should not be a mandatory dependency
|
||||
|
||||
Not all platforms that use qtwayland depend on xcbcommon to be present
|
||||
for them to be functional
|
||||
|
||||
Change-Id: I899d9314bdf772a9d5b8b7c143636f9f12c8ad1d
|
||||
This change won't be needed when this commit from dev branch is merged
|
||||
to stable:
|
||||
commit 894adf8a447865119be7c6c4d01577d8032f4177
|
||||
Author: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
||||
Date: Mon Apr 8 12:54:58 2013 +0200
|
||||
|
||||
make failure to configure wayland non-fatal for a top-level build of qt
|
||||
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
---
|
||||
qtwayland.pro | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
qtwayland.pro | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/qtwayland.pro b/qtwayland.pro
|
||||
index ee0e5ac..f1a6b6f 100644
|
||||
index 24e104b..66dd38a 100644
|
||||
--- a/qtwayland.pro
|
||||
+++ b/qtwayland.pro
|
||||
@@ -11,15 +11,15 @@ qtCompileTest(xcomposite)
|
||||
@@ -11,7 +11,7 @@ qtCompileTest(xcomposite)
|
||||
load(qt_parts)
|
||||
|
||||
!config_wayland {
|
||||
- error(QtWayland requires Wayland 1.0.0 or higher)
|
||||
+ error("QtWayland requires Wayland 1.0.0 or higher")
|
||||
- error(QtWayland requires Wayland 1.0.3 or higher)
|
||||
+ error("QtWayland requires Wayland 1.0.3 or higher")
|
||||
}
|
||||
|
||||
!config_xkbcommon {
|
||||
- error(QtWayland requires xkbcommon 0.2.0 or higher)
|
||||
+ warning("No xkbcommon 0.2.0 or higher found, disabling support for it")
|
||||
@@ -19,7 +19,7 @@ load(qt_parts)
|
||||
}
|
||||
|
||||
!config_wayland_scanner {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From ae72fc41609c15293b1027ca3f2c4d712e4ae478 Mon Sep 17 00:00:00 2001
|
||||
From 5b7c89d211a193acfd182eb0519b658629af3193 Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
Date: Fri, 1 Mar 2013 13:00:53 -0800
|
||||
Subject: [PATCH 2/4] Temporarily patching this out as Qt5.0.0 does not have
|
||||
Subject: [PATCH 2/3] Temporarily patching this out as Qt5.0.0 does not have
|
||||
qtHaveModule
|
||||
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From ca1f46a6192061e254deca1810d25ba423acb8de Mon Sep 17 00:00:00 2001
|
||||
From 2d707f8dc9f0658d889aef4f4c5a62595598402c Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
Date: Wed, 6 Mar 2013 10:18:49 -0800
|
||||
Subject: [PATCH 3/4] eglCreateImageKHR requires the context to be NULL
|
||||
Subject: [PATCH 3/3] eglCreateImageKHR requires the context to be NULL
|
||||
|
||||
As per the EGL spec the context passed to that function should
|
||||
be null.
|
||||
|
@ -12,7 +12,7 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
|||
1 file changed, 2 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp b/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp
|
||||
index 2a923ce..2be1e4c 100644
|
||||
index 73877c4..16e77fb 100644
|
||||
--- a/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp
|
||||
+++ b/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp
|
||||
@@ -101,7 +101,6 @@ public:
|
||||
|
|
|
@ -1,31 +0,0 @@
|
|||
From 5c70644070803b665f64c2d3212b55a4a3270765 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Sun, 10 Mar 2013 11:29:38 -0700
|
||||
Subject: [PATCH 4/4] EGL: Specify vec2d precision qualifier in fragment shader
|
||||
|
||||
GLSL does not specify a default precision qualifier here, so we have to
|
||||
explicitly define it. Use highp, as it gets redefined to mediump by
|
||||
QGLShaderProgram when not available.
|
||||
|
||||
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
---
|
||||
src/plugins/platforms/qwayland-egl/qwaylandglcontext.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/plugins/platforms/qwayland-egl/qwaylandglcontext.cpp b/src/plugins/platforms/qwayland-egl/qwaylandglcontext.cpp
|
||||
index 4d8017d..a0ac6d9 100644
|
||||
--- a/src/plugins/platforms/qwayland-egl/qwaylandglcontext.cpp
|
||||
+++ b/src/plugins/platforms/qwayland-egl/qwaylandglcontext.cpp
|
||||
@@ -124,7 +124,7 @@ void QWaylandGLContext::swapBuffers(QPlatformSurface *surface)
|
||||
gl_Position = position;\n\
|
||||
outTexCoords = texCoords.xy;\n\
|
||||
}");
|
||||
- m_blitProgram->addShaderFromSourceCode(QOpenGLShader::Fragment, "varying vec2 outTexCoords;\n\
|
||||
+ m_blitProgram->addShaderFromSourceCode(QOpenGLShader::Fragment, "varying highp vec2 outTexCoords;\n\
|
||||
uniform sampler2D texture;\n\
|
||||
void main()\n\
|
||||
{\n\
|
||||
--
|
||||
1.8.2.1
|
||||
|
|
@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://${S}/src/compositor/compositor_api/qwaylandsurfacenod
|
|||
# make it easier to remove by .bbappend (e.g. for building qtwayland with danny which doesn't
|
||||
# have libxkbcommon in oe-core).
|
||||
XKB_DEPENDS = "libxkbcommon xproto"
|
||||
DEPENDS += "qtbase qtdeclarative wayland wayland-native ${XKB_DEPENDS}"
|
||||
DEPENDS += "qtbase qtdeclarative wayland wayland-native qtwayland-native ${XKB_DEPENDS}"
|
||||
|
||||
SRC_URI += " \
|
||||
file://0001-xcbcommon-should-not-be-a-mandatory-dependency.patch \
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
require qt5-git.inc
|
||||
require ${PN}.inc
|
||||
|
||||
FILESEXTRAPATHS =. "${FILE_DIRNAME}/${BPN}-5.1.0+git:"
|
||||
|
||||
DEPENDS += "qtwayland-native"
|
||||
|
||||
# qtwayland_git has -1 and should be default
|
||||
DEFAULT_PREFERRENCE = "-2"
|
||||
|
||||
# qtwayland wasn't released yet, last tag before this SRCREV is 5.0.0-beta1
|
||||
# this PV is only to indicate that this recipe is compatible with qt5 5.1.0
|
||||
# while qtwayland_git stays compatible with 5.0.2
|
||||
PV = "5.1.0+git${SRCPV}"
|
||||
|
||||
# newer revisions depend on newer wayland-1.1 APIs
|
||||
SRCREV = "87dba733acfddecd8562e8e26ce5f994aa499fe3"
|
||||
# SRCREV = "ede872db1cdfdc2810c2dd29edd5fb6e1cdac0f5"
|
|
@ -1,22 +1,10 @@
|
|||
require qt5-git.inc
|
||||
require ${PN}.inc
|
||||
|
||||
# qtwayland wasn't released yet, last tag before this SRCREV is 5.0.0-beta1,
|
||||
# but we'll use 5.0.2+git to indicate this version is compatible with 5.0.2
|
||||
PV = "5.0.2+git${SRCPV}"
|
||||
# qtwayland wasn't released yet, last tag before this SRCREV is 5.0.0-beta1
|
||||
# this PV is only to indicate that this recipe is compatible with qt5 5.1.0
|
||||
PV = "5.1.0+git${SRCPV}"
|
||||
|
||||
# drop when bumping SRCREV
|
||||
PR = "r2"
|
||||
|
||||
SRCREV = "5cb159395eccb1d96fb73a78e499eef30aacb46d"
|
||||
|
||||
SRC_URI += " \
|
||||
file://0004-EGL-Specify-vec2d-precision-qualifier-in-fragment-sh.patch \
|
||||
"
|
||||
|
||||
do_configure_prepend() {
|
||||
# Temporary hack to get qtwayland build for Qt 5.0.2
|
||||
if ! grep -q MODULE_VERSION ${S}/.qmake.conf; then
|
||||
echo "MODULE_VERSION = 0.0.0" >> ${S}/.qmake.conf
|
||||
fi
|
||||
}
|
||||
# newer revisions depend on newer wayland-1.1 APIs
|
||||
SRCREV = "87dba733acfddecd8562e8e26ce5f994aa499fe3"
|
||||
# SRCREV = "ede872db1cdfdc2810c2dd29edd5fb6e1cdac0f5"
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
# was renamed to just qtwebkit-examples in 5.1
|
||||
QT_MODULE = "qtwebkit-examples-and-demos"
|
||||
|
||||
SRC_URI[md5sum] = "9c48df80ba9bb3587b4d6ec35daf840a"
|
||||
SRC_URI[sha256sum] = "10981ae3a6775387badce33542733d63895c5a62b3b33e0973d782ec1b9174e6"
|
|
@ -1,7 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "85aad9f287910c21c8464d7d1ea010a9"
|
||||
SRC_URI[sha256sum] = "6ff4038f8db68be51661d1a6646f510b26f6ebbecbdeefb76cd8361f808768f6"
|
|
@ -1,17 +0,0 @@
|
|||
require qt5-${PV}.inc
|
||||
require ${PN}.inc
|
||||
|
||||
# LICENSE.FDL is missing in 5.0.2, added a bit later:
|
||||
# commit 3bc0756a63d348d3446d9581f45429c417fd9c29
|
||||
# Author: Sergio Ahumada <sergio.ahumada@digia.com>
|
||||
# Date: Thu Apr 18 11:38:32 2013 +0200
|
||||
# Add missing LICENSE.FDL file
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=4193e7f1d47a858f6b7c0f1ee66161de \
|
||||
file://LICENSE.GPL;md5=d32239bcb673463ab874e80d47fae504 \
|
||||
file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \
|
||||
"
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI[md5sum] = "29e6776165e43e9f3a865338121b4e1d"
|
||||
SRC_URI[sha256sum] = "c05ae43fffc911ffda808deecebddd1b31916714cefc9cfd840689fc52ae20a6"
|
Loading…
Reference in New Issue