summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2008-12-01 20:55:25 +0000
committerRichard Purdie <rpurdie@linux.intel.com>2008-12-01 20:55:25 +0000
commitd7aaf31869621480977d0a8f2faee199b83fd699 (patch)
tree116941f8a6f5a7bb81ffc610a5c6218ed8764219
parent14ecbd658ead9daa8785bc4fe911ed6a8718c0b9 (diff)
downloadpoky-d7aaf31869621480977d0a8f2faee199b83fd699.tar.gz
meta-moblin: Add basic qt support (from OE)
-rw-r--r--meta-moblin/classes/qt3e.bbclass11
-rw-r--r--meta-moblin/classes/qt3x11.bbclass15
-rw-r--r--meta-moblin/classes/qt4x11.bbclass3
-rw-r--r--meta-moblin/classes/qtopia4core.bbclass13
-rw-r--r--meta-moblin/packages/qmake/files/linux-oe-qmake.conf82
-rw-r--r--meta-moblin/packages/qmake/qmake-native_1.07a.bb46
-rw-r--r--meta-moblin/packages/qmake/qmake2-cross-2.10a/0001-fix-mkspecs.patch123
-rw-r--r--meta-moblin/packages/qmake/qmake2-cross-2.10a/linux-oe-qmake.conf1
-rw-r--r--meta-moblin/packages/qmake/qmake2-cross-2.10a/use-lflags-last.patch22
-rw-r--r--meta-moblin/packages/qmake/qmake2-cross_2.10a.bb69
-rw-r--r--meta-moblin/packages/uicmoc/uicmoc3-native-3.3.5/64bit-cleanup.patch160
-rw-r--r--meta-moblin/packages/uicmoc/uicmoc3-native-3.3.5/no-examples.patch16
-rw-r--r--meta-moblin/packages/uicmoc/uicmoc3-native_3.3.5.bb51
-rw-r--r--meta-moblin/packages/uicmoc/uicmoc4-native.inc62
-rw-r--r--meta-moblin/packages/uicmoc/uicmoc4-native_4.3.2.bb1
15 files changed, 675 insertions, 0 deletions
diff --git a/meta-moblin/classes/qt3e.bbclass b/meta-moblin/classes/qt3e.bbclass
new file mode 100644
index 0000000000..35958b34ab
--- /dev/null
+++ b/meta-moblin/classes/qt3e.bbclass
@@ -0,0 +1,11 @@
1#
2# override variables set by qmake_base to compile Qt/X11 apps
3#
4export QTDIR="${STAGING_DIR_HOST}/qte3"
5export QTEDIR="${STAGING_DIR_HOST}/qte3"
6export OE_QMAKE_UIC="${STAGING_BINDIR_NATIVE}/uic3"
7export OE_QMAKE_MOC="${STAGING_BINDIR_NATIVE}/moc3"
8export OE_QMAKE_CXXFLAGS="${CXXFLAGS} "
9export OE_QMAKE_INCDIR_QT="${QTEDIR}/include"
10export OE_QMAKE_LIBDIR_QT="${QTEDIR}/lib"
11export OE_QMAKE_LIBS_QT="qte"
diff --git a/meta-moblin/classes/qt3x11.bbclass b/meta-moblin/classes/qt3x11.bbclass
new file mode 100644
index 0000000000..5408b7f342
--- /dev/null
+++ b/meta-moblin/classes/qt3x11.bbclass
@@ -0,0 +1,15 @@
1DEPENDS_prepend = "${@["qt3x11 ", ""][(bb.data.getVar('PN', d, 1) == 'qt-x11-free')]}"
2EXTRA_QMAKEVARS_POST += "CONFIG+=thread"
3#
4# override variables set by qmake_base to compile Qt/X11 apps
5#
6export QTDIR = "${STAGING_DIR_HOST}/qt3"
7export OE_QMAKE_UIC = "${STAGING_BINDIR_NATIVE}/uic3"
8export OE_QMAKE_MOC = "${STAGING_BINDIR_NATIVE}/moc3"
9export OE_QMAKE_CXXFLAGS = "${CXXFLAGS} -DQT_NO_XIM"
10export OE_QMAKE_INCDIR_QT = "${QTDIR}/include"
11export OE_QMAKE_LIBDIR_QT = "${QTDIR}/lib"
12export OE_QMAKE_LIBS_QT = "qt"
13export OE_QMAKE_LIBS_X11 = "-lXext -lX11 -lm"
14export OE_QMAKE_LIBS_OPENGL = "-lGLU -lGL -lXmu"
15export OE_QMAKE_LIBS_OPENGL_QT = "-lGL -lXmu"
diff --git a/meta-moblin/classes/qt4x11.bbclass b/meta-moblin/classes/qt4x11.bbclass
new file mode 100644
index 0000000000..76a45c33cb
--- /dev/null
+++ b/meta-moblin/classes/qt4x11.bbclass
@@ -0,0 +1,3 @@
1DEPENDS_prepend = "${@["qt4x11 ", ""][(bb.data.getVar('PN', d, 1) == 'qt4-x11-free')]}"
2
3inherit qmake2
diff --git a/meta-moblin/classes/qtopia4core.bbclass b/meta-moblin/classes/qtopia4core.bbclass
new file mode 100644
index 0000000000..b5f10fa486
--- /dev/null
+++ b/meta-moblin/classes/qtopia4core.bbclass
@@ -0,0 +1,13 @@
1DEPENDS_prepend = "${@["qtopia-core ", ""][(bb.data.getVar('PN', d, 1) == 'qtopia-core')]}"
2inherit qmake2
3
4QT_DIR_NAME = "qtopia"
5#
6# override variables set by qmake-base to compile QtopiaCore apps
7#
8export OE_QMAKE_INCDIR_QT = "${STAGING_INCDIR}/qtopia"
9export OE_QMAKE_LIBDIR_QT = "${STAGING_LIBDIR}"
10export OE_QMAKE_LIBS_QT = "qt"
11export OE_QMAKE_LIBS_X11 = ""
12export OE_QMAKE_EXTRA_MODULES = "network"
13EXTRA_QMAKEVARS_PRE += " QT_LIBINFIX=E "
diff --git a/meta-moblin/packages/qmake/files/linux-oe-qmake.conf b/meta-moblin/packages/qmake/files/linux-oe-qmake.conf
new file mode 100644
index 0000000000..205b693fda
--- /dev/null
+++ b/meta-moblin/packages/qmake/files/linux-oe-qmake.conf
@@ -0,0 +1,82 @@
1#
2# qmake configuration for linux-oe-g++ / OpenEmbedded Build System / http://openembedded.org
3#
4
5MAKEFILE_GENERATOR = UNIX
6TEMPLATE = app
7CONFIG += qt warn_on release
8
9QMAKE_CC = $(OE_QMAKE_CC)
10QMAKE_LEX = flex
11QMAKE_LEXFLAGS =
12QMAKE_YACC = yacc
13QMAKE_YACCFLAGS = -d
14QMAKE_CFLAGS = -pipe $(OE_QMAKE_CFLAGS) $(CFLAGS_EXTRA)
15QMAKE_CFLAGS_WARN_ON = -Wall -W
16QMAKE_CFLAGS_WARN_OFF =
17QMAKE_CFLAGS_RELEASE = $(if $(CFLAGS_RELEASE),$(CFLAGS_RELEASE), -O2)
18QMAKE_CFLAGS_DEBUG = -g
19QMAKE_CFLAGS_SHLIB = -fPIC
20QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
21QMAKE_CFLAGS_THREAD = -D_REENTRANT
22
23QMAKE_CXX = $(OE_QMAKE_CXX)
24QMAKE_CXXFLAGS = $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS) $(CXXFLAGS_EXTRA)
25QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
26QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
27QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
28QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
29QMAKE_CXXFLAGS_SHLIB = $$QMAKE_CFLAGS_SHLIB
30QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
31QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
32
33QMAKE_INCDIR =
34QMAKE_LIBDIR =
35QMAKE_INCDIR_X11 =
36QMAKE_LIBDIR_X11 =
37QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT)
38QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT)
39QMAKE_INCDIR_OPENGL =
40QMAKE_LIBDIR_OPENGL =
41
42QMAKE_LINK = $(OE_QMAKE_LINK)
43QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK)
44QMAKE_LFLAGS = $(OE_QMAKE_LDFLAGS) $(LFLAGS_EXTRA)
45QMAKE_LFLAGS_RELEASE =
46QMAKE_LFLAGS_DEBUG =
47QMAKE_LFLAGS_SHLIB = -shared
48QMAKE_LFLAGS_PLUGIN = $$QMAKE_LFLAGS_SHLIB
49QMAKE_LFLAGS_SONAME = -Wl,-soname,
50QMAKE_LFLAGS_THREAD =
51QMAKE_RPATH = -Wl,-rpath-link,
52
53QMAKE_LIBS = $(LIBS_EXTRA)
54QMAKE_LIBS_DYNLOAD = -ldl
55QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11)
56QMAKE_LIBS_X11SM =
57QMAKE_LIBS_QT = -l$(OE_QMAKE_LIBS_QT)
58QMAKE_LIBS_QT_THREAD = -l$(OE_QMAKE_LIBS_QT)-mt
59QMAKE_LIBS_OPENGL = $(OE_QMAKE_LIBS_OPENGL)
60QMAKE_LIBS_OPENGL_QT = $(OE_QMAKE_LIBS_OPENGL_QT)
61QMAKE_LIBS_THREAD = -lpthread
62
63QMAKE_MOC = $(OE_QMAKE_MOC)
64QMAKE_UIC = $(OE_QMAKE_UIC)
65
66QMAKE_AR = $(OE_QMAKE_AR) cqs
67QMAKE_RANLIB =
68
69QMAKE_TAR = tar -cf
70QMAKE_GZIP = gzip -9f
71
72QMAKE_COPY = cp -f
73QMAKE_COPY_FILE = $(COPY)
74QMAKE_COPY_DIR = $(COPY) -r
75QMAKE_MOVE = mv -f
76QMAKE_DEL_FILE = rm -f
77QMAKE_DEL_DIR = rmdir
78QMAKE_STRIP = $(OE_QMAKE_STRIP)
79QMAKE_STRIPFLAGS_LIB += --strip-unneeded
80QMAKE_CHK_DIR_EXISTS = test -d
81QMAKE_MKDIR = mkdir -p
82
diff --git a/meta-moblin/packages/qmake/qmake-native_1.07a.bb b/meta-moblin/packages/qmake/qmake-native_1.07a.bb
new file mode 100644
index 0000000000..29f736dea1
--- /dev/null
+++ b/meta-moblin/packages/qmake/qmake-native_1.07a.bb
@@ -0,0 +1,46 @@
1DESCRIPTION = "TrollTech Makefile Generator"
2PRIORITY = "optional"
3HOMEPAGE = "http://www.trolltech.com"
4SECTION = "devel"
5LICENSE = "GPL QPL"
6PR = "r4"
7
8QTEVER = "qt-embedded-free-3.3.5"
9
10SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTEVER}.tar.bz2 \
11 file://linux-oe-qmake.conf"
12S = "${WORKDIR}/${QTEVER}"
13
14inherit autotools native
15
16export QTDIR = "${S}"
17EXTRA_OEMAKE = "-e"
18
19do_configure() {
20 # Install the OE build templates
21 for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++
22 do
23 install -d ${S}/mkspecs/$template
24 install -m 0644 ${WORKDIR}/linux-oe-qmake.conf ${S}/mkspecs/$template/qmake.conf
25 ln -sf ../linux-g++/qplatformdefs.h ${S}/mkspecs/$template/qplatformdefs.h
26 done
27 QMAKESPEC=
28 PLATFORM=${HOST_OS}-oe-g++
29 export PLATFORM
30 oenote ./configure ${EXTRA_OECONF}
31 echo yes | ./configure ${EXTRA_OECONF} || die "Configuring qt failed"
32}
33
34do_compile() {
35 :
36}
37
38do_stage() {
39 install -m 0755 bin/qmake ${STAGING_BINDIR}
40 install -d ${QMAKE_MKSPEC_PATH}
41 cp -fPR mkspecs/* ${QMAKE_MKSPEC_PATH}
42}
43
44do_install() {
45 :
46}
diff --git a/meta-moblin/packages/qmake/qmake2-cross-2.10a/0001-fix-mkspecs.patch b/meta-moblin/packages/qmake/qmake2-cross-2.10a/0001-fix-mkspecs.patch
new file mode 100644
index 0000000000..abebfdfa27
--- /dev/null
+++ b/meta-moblin/packages/qmake/qmake2-cross-2.10a/0001-fix-mkspecs.patch
@@ -0,0 +1,123 @@
1From 594157753a24d0575aaf948dc0e9500f6bdb2178 Mon Sep 17 00:00:00 2001
2From: Michael Krelin <hacker@klever.net>
3Date: Sat, 2 Jun 2007 16:39:58 +0200
4Subject: [PATCH] fix mkspecs
5
6---
7 mkspecs/common/g++.conf | 18 +++++++++---------
8 mkspecs/common/linux.conf | 26 +++++++++++++-------------
9 2 files changed, 22 insertions(+), 22 deletions(-)
10
11diff --git a/mkspecs/common/g++.conf b/mkspecs/common/g++.conf
12index f5a5c8e..4007c7e 100644
13--- a/mkspecs/common/g++.conf
14+++ b/mkspecs/common/g++.conf
15@@ -2,12 +2,12 @@
16 # qmake configuration for common gcc
17 #
18
19-QMAKE_CC = gcc
20-QMAKE_CFLAGS += -pipe
21+QMAKE_CC = $(OE_QMAKE_CC)
22+QMAKE_CFLAGS += -pipe $(OE_QMAKE_CFLAGS)
23 QMAKE_CFLAGS_DEPS += -M
24 QMAKE_CFLAGS_WARN_ON += -Wall -W
25 QMAKE_CFLAGS_WARN_OFF += -w
26-QMAKE_CFLAGS_RELEASE += -O2
27+QMAKE_CFLAGS_RELEASE += -O2
28 QMAKE_CFLAGS_DEBUG += -g
29 QMAKE_CFLAGS_SHLIB += -fPIC
30 QMAKE_CFLAGS_STATIC_LIB += -fPIC
31@@ -16,8 +16,8 @@ QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
32 QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
33 QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
34
35-QMAKE_CXX = g++
36-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
37+QMAKE_CXX = $(OE_QMAKE_CXX)
38+QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS)
39 QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
40 QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
41 QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
42@@ -30,9 +30,9 @@ QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
43 QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
44 QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
45
46-QMAKE_LINK = g++
47-QMAKE_LINK_SHLIB = g++
48-QMAKE_LFLAGS +=
49+QMAKE_LINK = $(OE_QMAKE_LINK)
50+QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK)
51+QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS)
52 QMAKE_LFLAGS_RELEASE +=
53 QMAKE_LFLAGS_DEBUG +=
54 QMAKE_LFLAGS_APP +=
55@@ -40,7 +40,7 @@ QMAKE_LFLAGS_SHLIB += -shared
56 QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
57 QMAKE_LFLAGS_SONAME += -Wl,-soname,
58 QMAKE_LFLAGS_THREAD +=
59-QMAKE_RPATH = -Wl,-rpath,
60+QMAKE_RPATH = -Wl,-rpath-link,
61
62 QMAKE_PCH_OUTPUT_EXT = .gch
63
64diff --git a/mkspecs/common/linux.conf b/mkspecs/common/linux.conf
65index 3796a87..52acf16 100644
66--- a/mkspecs/common/linux.conf
67+++ b/mkspecs/common/linux.conf
68@@ -7,26 +7,26 @@ QMAKE_CXXFLAGS_THREAD += $$QMAKE_CFLAGS_THREAD
69
70 QMAKE_INCDIR =
71 QMAKE_LIBDIR =
72-QMAKE_INCDIR_X11 = /usr/X11R6/include
73-QMAKE_LIBDIR_X11 = /usr/X11R6/lib
74-QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
75-QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
76-QMAKE_INCDIR_OPENGL = /usr/X11R6/include
77-QMAKE_LIBDIR_OPENGL = /usr/X11R6/lib
78+QMAKE_INCDIR_X11 =
79+QMAKE_LIBDIR_X11 =
80+QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT)
81+QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT)
82+QMAKE_INCDIR_OPENGL =
83+QMAKE_LIBDIR_OPENGL =
84
85 QMAKE_LIBS =
86 QMAKE_LIBS_DYNLOAD = -ldl
87-QMAKE_LIBS_X11 = -lXext -lX11 -lm
88-QMAKE_LIBS_X11SM = -lSM -lICE
89+QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11)
90+QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM)
91 QMAKE_LIBS_NIS = -lnsl
92 QMAKE_LIBS_OPENGL = -lGLU -lGL
93 QMAKE_LIBS_OPENGL_QT = -lGL
94 QMAKE_LIBS_THREAD = -lpthread
95
96-QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
97-QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
98+QMAKE_MOC = $(OE_QMAKE_MOC)
99+QMAKE_UIC = $(OE_QMAKE_UIC)
100
101-QMAKE_AR = ar cqs
102+QMAKE_AR = $(OE_QMAKE_AR) cqs
103 QMAKE_RANLIB =
104
105 QMAKE_TAR = tar -cf
106@@ -38,11 +38,11 @@ QMAKE_COPY_DIR = $(COPY) -r
107 QMAKE_MOVE = mv -f
108 QMAKE_DEL_FILE = rm -f
109 QMAKE_DEL_DIR = rmdir
110-QMAKE_STRIP = strip
111+QMAKE_STRIP = $(OE_QMAKE_STRIP)
112 QMAKE_STRIPFLAGS_LIB += --strip-unneeded
113 QMAKE_CHK_DIR_EXISTS = test -d
114 QMAKE_MKDIR = mkdir -p
115 QMAKE_INSTALL_FILE = install -m 644 -p
116 QMAKE_INSTALL_PROGRAM = install -m 755 -p
117
118-include(unix.conf)
119\ No newline at end of file
120+include(unix.conf)
121--
1221.5.1.6
123
diff --git a/meta-moblin/packages/qmake/qmake2-cross-2.10a/linux-oe-qmake.conf b/meta-moblin/packages/qmake/qmake2-cross-2.10a/linux-oe-qmake.conf
new file mode 100644
index 0000000000..f58481a693
--- /dev/null
+++ b/meta-moblin/packages/qmake/qmake2-cross-2.10a/linux-oe-qmake.conf
@@ -0,0 +1 @@
include(../linux-g++/qmake.conf)
diff --git a/meta-moblin/packages/qmake/qmake2-cross-2.10a/use-lflags-last.patch b/meta-moblin/packages/qmake/qmake2-cross-2.10a/use-lflags-last.patch
new file mode 100644
index 0000000000..4197dbbf64
--- /dev/null
+++ b/meta-moblin/packages/qmake/qmake2-cross-2.10a/use-lflags-last.patch
@@ -0,0 +1,22 @@
1Index: qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp
2===================================================================
3--- qtopia-core-opensource-src-4.3.1.orig/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:45:26.000000000 +0200
4+++ qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:57:09.000000000 +0200
5@@ -416,7 +416,7 @@
6 t << "\n\t" << mkdir_p_asstring(destdir) << "\n\t";
7 if(!project->isEmpty("QMAKE_PRE_LINK"))
8 t << var("QMAKE_PRE_LINK") << "\n\t";
9- t << "$(LINK) $(LFLAGS) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS)";
10+ t << "$(LINK) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS) $(LFLAGS)";
11 if(!project->isEmpty("QMAKE_POST_LINK"))
12 t << "\n\t" << var("QMAKE_POST_LINK");
13 t << endl << endl;
14@@ -430,7 +430,7 @@
15 t << mkdir_p_asstring(destdir) << "\n\t";
16 if(!project->isEmpty("QMAKE_PRE_LINK"))
17 t << var("QMAKE_PRE_LINK") << "\n\t";
18- t << "$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)";
19+ t << "$(LINK) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS) $(LFLAGS)";
20 if(!project->isEmpty("QMAKE_POST_LINK"))
21 t << "\n\t" << var("QMAKE_POST_LINK");
22 t << endl << endl;
diff --git a/meta-moblin/packages/qmake/qmake2-cross_2.10a.bb b/meta-moblin/packages/qmake/qmake2-cross_2.10a.bb
new file mode 100644
index 0000000000..c4f5867669
--- /dev/null
+++ b/meta-moblin/packages/qmake/qmake2-cross_2.10a.bb
@@ -0,0 +1,69 @@
1DESCRIPTION = "TrollTech Makefile Generator"
2PRIORITY = "optional"
3HOMEPAGE = "http://www.trolltech.com"
4SECTION = "devel"
5LICENSE = "GPL"
6PR = "r2"
7
8QTVER = "qtopia-core-opensource-src-4.3.2"
9
10SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTVER}.tar.gz \
11 file://0001-fix-mkspecs.patch;patch=1 \
12 file://use-lflags-last.patch;patch=1 \
13 file://linux-oe-qmake.conf"
14S = "${WORKDIR}/${QTVER}"
15
16# we need the real target system here
17CROSS_SYS := "${TARGET_SYS}"
18CROSS_BINDIR := "${STAGING_BINDIR_CROSS}"
19inherit autotools cross
20
21export QTDIR = "${S}"
22EXTRA_OEMAKE = "-e"
23
24do_configure() {
25 # Install the OE build templates
26 for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++
27 do
28 install -d ${S}/mkspecs/$template
29 install -m 0644 ${WORKDIR}/linux-oe-qmake.conf ${S}/mkspecs/$template/qmake.conf
30 ln -sf ../linux-g++/qplatformdefs.h ${S}/mkspecs/$template/qplatformdefs.h
31 done
32
33 QMAKESPEC=
34 PLATFORM=${HOST_OS}-oe-g++
35 export PLATFORM
36 # yes, TARGET_SYS is correct, because this is a 'cross'-qmake-native :) :M:
37 export OE_QMAKE_CC="${CC}"
38 export OE_QMAKE_CFLAGS="${CFLAGS}"
39 export OE_QMAKE_CXX="${CXX}"
40 export OE_QMAKE_CXXFLAGS="-fno-exceptions -fno-rtti ${CXXFLAGS}"
41 export OE_QMAKE_LDFLAGS="${LDFLAGS}"
42 export OE_QMAKE_LINK="${CCLD}"
43 export OE_QMAKE_AR="${AR}"
44 export OE_QMAKE_STRIP="${STRIP}"
45 export OE_QMAKE_UIC="${STAGING_BINDIR_NATIVE}/uic4"
46 export OE_QMAKE_MOC="${STAGING_BINDIR_NATIVE}/moc4"
47 export OE_QMAKE_RCC="${STAGING_BINDIR_NATIVE}/rcc4"
48 export OE_QMAKE_QMAKE="${CROSS_BINDIR}/qmake2"
49 export OE_QMAKE_RPATH="-Wl,-rpath-link,"
50 echo yes | ./configure -prefix ${STAGING_DIR}/${CROSS_SYS}/qt4 ${EXTRA_OECONF} || die "Configuring qt failed"
51}
52
53do_compile() {
54 :
55}
56
57do_stage() {
58 install -d ${CROSS_BINDIR}/
59 install -m 0755 bin/qmake ${CROSS_BINDIR}/qmake2
60 install -m 0755 bin/qmake ${CROSS_BINDIR}/qmake-qt4
61 install -d ${STAGING_DIR}/${CROSS_SYS}/qt4/
62 cp -PfR mkspecs ${STAGING_DIR}/${CROSS_SYS}/qt4/
63 install -d ${STAGING_DIR}/${HOST_SYS}/qt4/
64 cp -PfR mkspecs ${STAGING_DIR}/${HOST_SYS}/qt4/
65}
66
67do_install() {
68 :
69}
diff --git a/meta-moblin/packages/uicmoc/uicmoc3-native-3.3.5/64bit-cleanup.patch b/meta-moblin/packages/uicmoc/uicmoc3-native-3.3.5/64bit-cleanup.patch
new file mode 100644
index 0000000000..0e5d3ff153
--- /dev/null
+++ b/meta-moblin/packages/uicmoc/uicmoc3-native-3.3.5/64bit-cleanup.patch
@@ -0,0 +1,160 @@
1
2#
3# Patch managed by http://www.holgerschurig.de/patcher.html
4#
5
6--- qt-embedded-free-3.3.5/src/embedded/qgfxlinuxfb_qws.cpp~64bit-cleanup.patch
7+++ qt-embedded-free-3.3.5/src/embedded/qgfxlinuxfb_qws.cpp
8@@ -40,6 +40,7 @@
9
10 #include <unistd.h>
11 #include <stdlib.h>
12+#include <stdint.h>
13 #include <sys/ioctl.h>
14 #include <sys/types.h>
15 #include <sys/stat.h>
16@@ -176,7 +177,7 @@
17 MAP_SHARED, fd, 0);
18 data += dataoffset;
19
20- if ((int)data == -1) {
21+ if ((intptr_t)data == -1) {
22 perror("mapping /dev/fb0");
23 qWarning("Error: failed to map framebuffer device to memory.");
24 return FALSE;
25@@ -737,7 +738,7 @@
26 psize += 8; // for alignment
27 psize &= ~0x7; // align
28
29- unsigned int pos=(unsigned int)data;
30+ uintptr_t pos=(uintptr_t)data;
31 pos += psize;
32 entryp = ((int *)pos);
33 lowest = ((unsigned int *)pos)+1;
34--- qt-embedded-free-3.3.5/src/kernel/qsharedmemory_p.cpp~64bit-cleanup.patch
35+++ qt-embedded-free-3.3.5/src/kernel/qsharedmemory_p.cpp
36@@ -31,6 +31,7 @@
37 **********************************************************************/
38
39 #include "qsharedmemory_p.h"
40+#include <stdint.h>
41
42 #if !defined(QT_QWS_NO_SHM)
43
44@@ -132,7 +133,7 @@
45 shmId = shmget (key, shmSize, 0);
46
47 shmBase = shmat (shmId, 0, 0);
48- if ((int) shmBase == -1 || shmBase == 0)
49+ if ((intptr_t) shmBase == -1 || shmBase == 0)
50 return FALSE;
51 else
52 return TRUE;
53--- qt-embedded-free-3.3.5/src/kernel/qapplication_qws.cpp~64bit-cleanup.patch
54+++ qt-embedded-free-3.3.5/src/kernel/qapplication_qws.cpp
55@@ -107,6 +107,7 @@
56 #include <locale.h>
57 #include <errno.h>
58 #include <sys/time.h>
59+#include <stdint.h>
60
61 #if defined(Q_OS_QNX)
62 #include <sys/select.h>
63@@ -1879,7 +1880,7 @@
64 w = widgetAt(*qt_last_x, *qt_last_y, FALSE);
65 if ( !w )
66 w = desktop();
67- QPaintDevice::qwsDisplay()->selectCursor(w, (int)app_cursor->handle());
68+ QPaintDevice::qwsDisplay()->selectCursor(w, (intptr_t)app_cursor->handle());
69 }
70
71 void QApplication::restoreOverrideCursor()
72@@ -1898,11 +1899,11 @@
73 cursorStack = 0;
74 qws_overrideCursor = FALSE;
75 if ( w->testWState(WState_OwnCursor) )
76- QPaintDevice::qwsDisplay()->selectCursor(w, (int)w->cursor().handle());
77+ QPaintDevice::qwsDisplay()->selectCursor(w, (intptr_t)w->cursor().handle());
78 else
79 QPaintDevice::qwsDisplay()->selectCursor(w, ArrowCursor);
80 } else {
81- QPaintDevice::qwsDisplay()->selectCursor(w, (int)app_cursor->handle());
82+ QPaintDevice::qwsDisplay()->selectCursor(w, (intptr_t)app_cursor->handle());
83 }
84 }
85 #endif// QT_NO_CURSOR
86@@ -2130,7 +2131,7 @@
87 }
88 if ( !qws_overrideCursor ) {
89 if (curs)
90- QPaintDevice::qwsDisplay()->selectCursor(widget, (int)curs->handle());
91+ QPaintDevice::qwsDisplay()->selectCursor(widget, (intptr_t)curs->handle());
92 else
93 QPaintDevice::qwsDisplay()->selectCursor(widget, ArrowCursor);
94 }
95--- qt-embedded-free-3.3.5/src/kernel/qfont_qws.cpp~64bit-cleanup.patch
96+++ qt-embedded-free-3.3.5/src/kernel/qfont_qws.cpp
97@@ -49,6 +49,7 @@
98 #include "qgfx_qws.h"
99 #include "qtextengine_p.h"
100 #include "qfontengine_p.h"
101+#include <stdint.h>
102
103 QFont::Script QFontPrivate::defaultScript = QFont::UnknownScript;
104
105@@ -133,7 +134,7 @@
106 req.pointSize = req.pixelSize*10;
107
108 if ( ! engineData ) {
109- QFontCache::Key key( req, QFont::NoScript, (int)paintdevice );
110+ QFontCache::Key key( req, QFont::NoScript, (intptr_t)paintdevice );
111
112 // look for the requested font in the engine data cache
113 engineData = QFontCache::instance->findEngineData( key );
114--- qt-embedded-free-3.3.5/src/kernel/qwsregionmanager_qws.cpp~64bit-cleanup.patch
115+++ qt-embedded-free-3.3.5/src/kernel/qwsregionmanager_qws.cpp
116@@ -32,6 +32,7 @@
117 #include "qwsdisplay_qws.h"
118 #include "qwsregionmanager_qws.h"
119 #include <stdlib.h>
120+#include <stdint.h>
121
122 #ifndef QT_NO_QWS_MULTIPROCESS
123 #include <sys/types.h>
124@@ -288,7 +289,7 @@
125 data = (unsigned char *)shmat( shmId, 0, 0 );
126 }
127
128- return ( shmId != -1 && (int)data != -1 );
129+ return ( shmId != -1 && (intptr_t)data != -1 );
130 #else
131 int dataSize = sizeof(QWSRegionHeader) // header
132 + sizeof(QWSRegionIndex) * QT_MAX_REGIONS // + index
133--- qt-embedded-free-3.3.5/src/kernel/qwidget_qws.cpp~64bit-cleanup.patch
134+++ qt-embedded-free-3.3.5/src/kernel/qwidget_qws.cpp
135@@ -53,6 +53,7 @@
136 #include "qwsmanager_qws.h"
137 #include "qwsregionmanager_qws.h"
138 #include "qinputcontext_p.h"
139+#include <stdint.h>
140
141 void qt_insert_sip( QWidget*, int, int ); // defined in qapplication_x11.cpp
142 int qt_sip_count( QWidget* ); // --- "" ---
143@@ -631,7 +632,7 @@
144 qt_mouseGrb->releaseMouse();
145
146 qwsDisplay()->grabMouse(this,TRUE);
147- qwsDisplay()->selectCursor(this, (unsigned int)cursor.handle());
148+ qwsDisplay()->selectCursor(this, (uintptr_t)cursor.handle());
149 qt_mouseGrb = this;
150 qt_pressGrab = 0;
151 }
152@@ -1845,7 +1846,7 @@
153 QSize s( qt_screen->width(), qt_screen->height() );
154 QPoint pos = qt_screen->mapToDevice(QPoint(*qt_last_x, *qt_last_y), s);
155 if ( r.contains(pos) )
156- qwsDisplay()->selectCursor((QWidget*)this, (unsigned int)cursor().handle());
157+ qwsDisplay()->selectCursor((QWidget*)this, (uintptr_t)cursor().handle());
158 }
159 }
160 #endif
diff --git a/meta-moblin/packages/uicmoc/uicmoc3-native-3.3.5/no-examples.patch b/meta-moblin/packages/uicmoc/uicmoc3-native-3.3.5/no-examples.patch
new file mode 100644
index 0000000000..b0ee6374ef
--- /dev/null
+++ b/meta-moblin/packages/uicmoc/uicmoc3-native-3.3.5/no-examples.patch
@@ -0,0 +1,16 @@
1
2#
3# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
4#
5
6--- qt-embedded-free-3.3.2/Makefile~no-examples 2003-08-11 16:37:25.000000000 +0200
7+++ qt-embedded-free-3.3.2/Makefile 2004-05-11 15:53:53.000000000 +0200
8@@ -11,7 +11,7 @@
9 install: FORCE
10 @$(MAKE) qt.install
11
12-all: symlinks src-qmake src-moc sub-src sub-tools sub-tutorial sub-examples
13+all: symlinks src-qmake src-moc sub-src sub-tools
14 @echo
15 @echo "The Qt library is now built in ./lib"
16 @echo "The Qt examples are built in the directories in ./examples"
diff --git a/meta-moblin/packages/uicmoc/uicmoc3-native_3.3.5.bb b/meta-moblin/packages/uicmoc/uicmoc3-native_3.3.5.bb
new file mode 100644
index 0000000000..11b0c506dc
--- /dev/null
+++ b/meta-moblin/packages/uicmoc/uicmoc3-native_3.3.5.bb
@@ -0,0 +1,51 @@
1DESCRIPTION = "User Interface Generator and Meta Object Compiler (moc) for Qt(E) 3.x"
2HOMEPAGE = "http://www.trolltech.com"
3SECTION = "devel"
4PRIORITY = "optional"
5LICENSE = "GPL QPL"
6DEPENDS = "qmake-native"
7PR = "r3"
8
9SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-embedded-free-${PV}.tar.bz2 \
10 file://no-examples.patch;patch=1 \
11 file://64bit-cleanup.patch;patch=1"
12S = "${WORKDIR}/qt-embedded-free-${PV}"
13
14inherit native qmake_base qt3e
15
16export QTDIR = "${S}"
17export OE_QMAKE_LINK="${CXX}"
18CXXFLAGS += " -DQWS"
19
20QT_CONFIG_FLAGS = "-release -static -depths 8,16 -qt-zlib -no-nas-sound \
21 -no-sm -no-libjpeg -no-libmng -no-gif -no-xshape -no-xinerama \
22 -no-xcursor -no-xrandr -no-xrender -no-xft -no-tablet \
23 -no-xkb -no-dlopen-opengl -no-freetype -no-thread \
24 -no-nis -no-cups -prefix ${prefix} \
25 -xplatform ${OE_QMAKE_PLATFORM} \
26 -platform ${OE_QMAKE_PLATFORM}"
27
28do_configure() {
29 oe_qmake_mkspecs
30 echo "yes" | ./configure ${QT_CONFIG_FLAGS}
31}
32
33do_compile() {
34 oe_runmake symlinks || die "Can't symlink include files"
35 oe_runmake src-moc || die "Building moc failed"
36 oe_runmake sub-tools || die "Building tools failed"
37}
38
39do_stage() {
40 install -d ${OE_QMAKE_INCDIR_QT}
41 install -d ${OE_QMAKE_LIBDIR_QT}
42
43 install -m 0755 bin/moc ${OE_QMAKE_MOC}
44 install -m 0755 bin/uic ${OE_QMAKE_UIC}
45 install -m 0655 lib/*.a ${OE_QMAKE_LIBDIR_QT}
46
47 for f in include/*.h
48 do
49 install -m 0644 $f ${OE_QMAKE_INCDIR_QT}/
50 done
51}
diff --git a/meta-moblin/packages/uicmoc/uicmoc4-native.inc b/meta-moblin/packages/uicmoc/uicmoc4-native.inc
new file mode 100644
index 0000000000..8c4787866e
--- /dev/null
+++ b/meta-moblin/packages/uicmoc/uicmoc4-native.inc
@@ -0,0 +1,62 @@
1DESCRIPTION = "User-Interface-, Meta-Object-, and Resource Compiler for Qt/[X11|Mac|Embedded] version 4.x"
2DEPENDS = "zlib-native"
3SECTION = "libs"
4HOMEPAGE = "http://www.trolltech.com"
5PRIORITY = "optional"
6LICENSE = "GPL"
7PR = "r1"
8
9SRC_URI = "ftp://ftp.trolltech.com/qt/source/qtopia-core-opensource-src-${PV}.tar.gz"
10S = "${WORKDIR}/qtopia-core-opensource-src-${PV}"
11
12inherit native
13
14EXTRA_OECONF = "-prefix ${STAGING_DIR_NATIVE}/qt4 \
15 -qt-libjpeg -qt-gif -system-zlib \
16 -no-nis -no-cups -no-exceptions \
17 -no-accessibility -no-libjpeg \
18 -no-nas-sound -no-sm \
19 -no-xshape -no-xinerama \
20 -no-xcursor -no-xrandr \
21 -no-xrender -no-fontconfig \
22 -no-tablet -no-xkb \
23 -no-libpng \
24 -verbose -release -fast -static \
25 -L ${STAGING_LIBDIR_NATIVE} \
26 -qt3support "
27# yank default -e
28EXTRA_OEMAKE = " "
29
30do_configure() {
31 sed -i 's:^QT += xml qt3support$:QT += xml qt3support network:' "${S}"/src/tools/uic3/uic3.pro
32 echo yes | ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}"
33}
34
35TOBUILD = "\
36 src/tools/moc \
37 src/corelib \
38 src/sql \
39 src/qt3support \
40 src/xml \
41 src/tools/uic \
42 src/tools/rcc \
43 src/network \
44 src/gui \
45 src/tools/uic3 \
46"
47
48do_compile() {
49 unset CC CXX CFLAGS LFLAGS CXXFLAGS CPPFLAGS
50 for i in ${TOBUILD}; do
51 cd ${S}/$i && oe_runmake CC="${CC}" CXX="${CXX}"
52 done
53}
54
55do_stage() {
56 install -m 0755 bin/moc ${STAGING_BINDIR}/moc4
57 install -m 0755 bin/uic ${STAGING_BINDIR}/uic4
58 install -m 0755 bin/uic3 ${STAGING_BINDIR}/uic34
59 install -m 0755 bin/rcc ${STAGING_BINDIR}/rcc4
60 install -d ${STAGING_DIR_NATIVE}/qt4/
61 install -m 0644 tools/porting/src/q3porting.xml ${STAGING_DIR_NATIVE}/qt4/
62}
diff --git a/meta-moblin/packages/uicmoc/uicmoc4-native_4.3.2.bb b/meta-moblin/packages/uicmoc/uicmoc4-native_4.3.2.bb
new file mode 100644
index 0000000000..1950f63068
--- /dev/null
+++ b/meta-moblin/packages/uicmoc/uicmoc4-native_4.3.2.bb
@@ -0,0 +1 @@
require uicmoc4-native.inc