aboutsummaryrefslogtreecommitdiffstats
path: root/packages/qmake
diff options
context:
space:
mode:
authorHolger Freyther <zecke@selfish.org>2007-12-25 00:27:53 +0000
committerHolger Freyther <zecke@selfish.org>2007-12-25 00:27:53 +0000
commit7c023dc83c4fa8193fdd8513f5ce9b8c0ae68d96 (patch)
tree75614ca2c329eb2b1f1f3d35415bd174622eb62e /packages/qmake
parent79e6dae1cb3b5367da8d375fa1cf2f8480b64e6e (diff)
downloadopenembedded-7c023dc83c4fa8193fdd8513f5ce9b8c0ae68d96.tar.gz
packages/qmake/qmake2-native.inc: Install the specs only once, add a patch to change the prefixes at runtime
qmake has built-in paths. When building qmake2-native we have a pretty boring path which is certainly wrong for qt/x11 and qt/embedded. So we need a way to change this path at runtime. We just need to point qmake to a qt.conf and everything will be fine!
Diffstat (limited to 'packages/qmake')
-rw-r--r--packages/qmake/qmake2-native.inc7
-rw-r--r--packages/qmake/qmake2-native/qt-config.patch27
2 files changed, 30 insertions, 4 deletions
diff --git a/packages/qmake/qmake2-native.inc b/packages/qmake/qmake2-native.inc
index eb4744ca58..058bf176f9 100644
--- a/packages/qmake/qmake2-native.inc
+++ b/packages/qmake/qmake2-native.inc
@@ -10,6 +10,7 @@ QTVER = "qtopia-core-opensource-src-${QTVERSION}"
FILESDIR += "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/qmake2-native"
SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTVER}.tar.gz \
file://0001-fix-mkspecs.patch;patch=1 \
+ file://qt-config.patch;patch=1 \
file://use-lflags-last.patch;patch=1 \
file://linux-oe-qmake.conf"
S = "${WORKDIR}/${QTVER}"
@@ -57,10 +58,8 @@ do_compile() {
do_stage() {
install -m 0755 bin/qmake ${STAGING_BINDIR}/qmake2
install -m 0755 bin/qmake ${STAGING_BINDIR}/qmake-qt4
- install -d ${STAGING_DIR}/${CROSS_SYS}/qt4/
- cp -PfR mkspecs ${STAGING_DIR}/${CROSS_SYS}/qt4/
- install -d ${STAGING_DIR}/${HOST_SYS}/qt4/
- cp -PfR mkspecs ${STAGING_DIR}/${HOST_SYS}/qt4/
+ install -d ${CROSS_DATADIR}/qt4
+ cp -PfR mkspecs ${CROSS_DATADIR}/qt4/
}
do_install() {
diff --git a/packages/qmake/qmake2-native/qt-config.patch b/packages/qmake/qmake2-native/qt-config.patch
new file mode 100644
index 0000000000..b2d86de2c5
--- /dev/null
+++ b/packages/qmake/qmake2-native/qt-config.patch
@@ -0,0 +1,27 @@
+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
+
+Index: qtopia-core-opensource-src-4.3.3/src/corelib/global/qlibraryinfo.cpp
+===================================================================
+--- qtopia-core-opensource-src-4.3.3.orig/src/corelib/global/qlibraryinfo.cpp 2007-12-25 00:55:32.000000000 +0100
++++ qtopia-core-opensource-src-4.3.3/src/corelib/global/qlibraryinfo.cpp 2007-12-25 01:20:18.000000000 +0100
+@@ -42,6 +42,7 @@
+ #include "qpointer.h"
+ #ifdef QT_BUILD_QMAKE
+ extern QString qmake_libraryInfoFile();
++#include <stdlib.h>
+ #else
+ # include "qcoreapplication.h"
+ #endif
+@@ -107,6 +108,10 @@
+ #ifdef QT_BUILD_QMAKE
+ if(!QFile::exists(qtconfig))
+ qtconfig = qmake_libraryInfoFile();
++ if (!QFile::exists(qtconfig)) {
++ QByteArray config = getenv("QT_CONF_PATH");
++ qtconfig = config;
++ }
+ #else
+ if (!QFile::exists(qtconfig) && QCoreApplication::instance()) {
+ #ifdef Q_OS_MAC