summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Krelin <hacker@klever.net>2007-06-03 17:20:10 +0000
committerMichael Krelin <hacker@klever.net>2007-06-03 17:20:10 +0000
commit09dabd90c1b97c0374e0134a2605a154bc122cf9 (patch)
tree855a8f1d6ff41dfa153556241cbb6c82b111b287
parente891c6323c81bccb49a0298949803a484ac8480f (diff)
qt4-x11: first attempt on 4.3
-rw-r--r--packages/qt/qt4-x11-free-4.3.0/.mtn2git_empty0
-rw-r--r--packages/qt/qt4-x11-free-4.3.0/0001-cross-compile.patch174
-rw-r--r--packages/qt/qt4-x11-free-4.3.0/0002-fix-resinit-declaration.patch25
-rw-r--r--packages/qt/qt4-x11-free-4.3.0/0003-no-tools.patch25
-rw-r--r--packages/qt/qt4-x11-free-4.3.0/0004-no-qmake.patch25
-rw-r--r--packages/qt/qt4-x11-free-4.3.0/0005-fix-mkspecs.patch123
-rw-r--r--packages/qt/qt4-x11-free_4.3.0.bb168
7 files changed, 540 insertions, 0 deletions
diff --git a/packages/qt/qt4-x11-free-4.3.0/.mtn2git_empty b/packages/qt/qt4-x11-free-4.3.0/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/qt/qt4-x11-free-4.3.0/.mtn2git_empty
diff --git a/packages/qt/qt4-x11-free-4.3.0/0001-cross-compile.patch b/packages/qt/qt4-x11-free-4.3.0/0001-cross-compile.patch
new file mode 100644
index 0000000000..42f7b5575c
--- /dev/null
+++ b/packages/qt/qt4-x11-free-4.3.0/0001-cross-compile.patch
@@ -0,0 +1,174 @@
+From 64210fec17ab819f21769e3e82bb26e9f2ccfdb4 Mon Sep 17 00:00:00 2001
+From: Michael Krelin <hacker@klever.net>
+Date: Sun, 3 Jun 2007 18:30:37 +0200
+Subject: [PATCH] cross compile
+
+---
+ configure | 137 ++----------------------------------------------------------
+ 1 files changed, 5 insertions(+), 132 deletions(-)
+
+diff --git a/configure b/configure
+index 6b3ccd2..b3c2a52 100755
+--- a/configure
++++ b/configure
+@@ -733,7 +733,7 @@ while [ "$#" -gt 0 ]; do
+ UNKNOWN_ARG=yes
+ fi
+ ;;
+- -prefix|-docdir|-headerdir|-plugindir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-mysql_config)
++ -prefix|-docdir|-headerdir|-plugindir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-mysql_config|-crossarch)
+ VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
+ shift
+ VAL="$1"
+@@ -1109,6 +1109,9 @@ while [ "$#" -gt 0 ]; do
+ xplatform)
+ XPLATFORM="$VAL"
+ ;;
++ crossarch)
++ CROSSARCH="$VAL"
++ ;;
+ debug-and-release)
+ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
+ CFG_DEBUG_RELEASE="$VAL"
+@@ -2092,137 +2095,7 @@ if [ "$OPT_VERBOSE" = "yes" ]; then
+ echo "Determining system architecture... ($UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_MACHINE)"
+ fi
+
+-if [ "$PLATFORM" != "$XPLATFORM" -a "$CFG_EMBEDDED" != "no" ]; then
+- case "$CFG_EMBEDDED" in
+- x86)
+- ARCH=i386
+- ;;
+- x86_64)
+- ARCH=x86_64
+- ;;
+- ipaq|sharp)
+- ARCH=arm
+- ;;
+- *)
+- ARCH="$CFG_EMBEDDED"
+- ;;
+- esac
+-else
+- case "$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_MACHINE" in
+- IRIX*:*:*)
+- ARCH=`uname -p`
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " SGI ($ARCH)"
+- fi
+- ;;
+- SunOS:5*:*)
+- case "$UNAME_MACHINE" in
+- sun4u*|sun4v*)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " Sun SPARC (sparc)"
+- fi
+- ARCH=sparc
+- ;;
+- i86pc)
+- case "$PLATFORM" in
+- *-64)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 64-bit AMD 80x86 (x86_64)"
+- fi
+- ARCH=x86_64
+- ;;
+- *)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 32-bit Intel 80x86 (i386)"
+- fi
+- ARCH=i386
+- ;;
+- esac
+- esac
+- ;;
+- Darwin:*:*)
+- case "$UNAME_MACHINE" in
+- Power?Macintosh)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 32-bit Apple PowerPC (powerpc)"
+- fi
+- ;;
+- x86)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 32-bit Intel 80x86 (i386)"
+- fi
+- ;;
+- esac
+- ARCH=macosx
+- ;;
+- AIX:*:00????????00)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 64-bit IBM PowerPC (powerpc)"
+- fi
+- ARCH=powerpc
+- ;;
+- HP-UX:*:9000*)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " HP PA-RISC (parisc)"
+- fi
+- ARCH=parisc
+- ;;
+- *:*:i?86)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 32-bit Intel 80x86 (i386)"
+- fi
+- ARCH=i386
+- ;;
+- *:*:x86_64|*:*:amd64)
+- if [ "$PLATFORM" = "linux-g++-32" ]; then
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 32 bit on 64-bit AMD 80x86 (i386)"
+- fi
+- ARCH=i386
+- else
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 64-bit AMD 80x86 (x86_64)"
+- fi
+- ARCH=x86_64
+- fi
+- ;;
+- *:*:ppc)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 32-bit PowerPC (powerpc)"
+- fi
+- ARCH=powerpc
+- ;;
+- *:*:ppc64)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " 64-bit PowerPC (powerpc)"
+- fi
+- ARCH=powerpc
+- ;;
+- *:*:s390*)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " IBM S/390 (s390)"
+- fi
+- ARCH=s390
+- ;;
+- *:*:*)
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " Trying '$UNAME_MACHINE'..."
+- fi
+- ARCH="$UNAME_MACHINE"
+- ;;
+- esac
+-fi
+-
+-if [ -d "$relpath/src/corelib/arch/$ARCH" ]; then
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " '$ARCH' is supported"
+- fi
+-else
+- if [ "$OPT_VERBOSE" = "yes" ]; then
+- echo " '$ARCH' is unsupported, using 'generic'"
+- fi
+- ARCH=generic
+-fi
++ARCH="$CROSSARCH"
+
+ if [ "$OPT_VERBOSE" = "yes" ]; then
+ echo "System architecture: '$ARCH'"
+--
+1.5.0.7
+
diff --git a/packages/qt/qt4-x11-free-4.3.0/0002-fix-resinit-declaration.patch b/packages/qt/qt4-x11-free-4.3.0/0002-fix-resinit-declaration.patch
new file mode 100644
index 0000000000..e479a64a2b
--- /dev/null
+++ b/packages/qt/qt4-x11-free-4.3.0/0002-fix-resinit-declaration.patch
@@ -0,0 +1,25 @@
+From acfeb18aa94bad6b2066e91cd15570889baaa252 Mon Sep 17 00:00:00 2001
+From: Michael Krelin <hacker@klever.net>
+Date: Sat, 2 Jun 2007 16:04:01 +0200
+Subject: [PATCH] fix resinit declaration
+
+---
+ src/qt3support/network/q3dns.cpp | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/src/qt3support/network/q3dns.cpp b/src/qt3support/network/q3dns.cpp
+index 9bc7b16..bfc333e 100644
+--- a/src/qt3support/network/q3dns.cpp
++++ b/src/qt3support/network/q3dns.cpp
+@@ -30,7 +30,7 @@
+ # include <netinet/in.h>
+ # include <arpa/nameser.h>
+ # include <resolv.h>
+-extern "C" int res_init();
++extern "C" int res_init() throw();
+ #endif
+
+ // POSIX Large File Support redefines open -> open64
+--
+1.5.0.7
+
diff --git a/packages/qt/qt4-x11-free-4.3.0/0003-no-tools.patch b/packages/qt/qt4-x11-free-4.3.0/0003-no-tools.patch
new file mode 100644
index 0000000000..5412c90377
--- /dev/null
+++ b/packages/qt/qt4-x11-free-4.3.0/0003-no-tools.patch
@@ -0,0 +1,25 @@
+From 03cbda241413e4ae727b2a92ff452162aa7ad440 Mon Sep 17 00:00:00 2001
+From: Michael Krelin <hacker@klever.net>
+Date: Sat, 2 Jun 2007 16:06:01 +0200
+Subject: [PATCH] no tools
+
+---
+ src/src.pro | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/src/src.pro b/src/src.pro
+index 6e08180..957d3dc 100644
+--- a/src/src.pro
++++ b/src/src.pro
+@@ -3,7 +3,7 @@ TEMPLATE = subdirs
+ # this order is important
+ unset(SRC_SUBDIRS)
+ win32:SRC_SUBDIRS += src_winmain
+-SRC_SUBDIRS += src_tools_moc src_tools_rcc src_tools_uic src_corelib src_xml src_gui src_sql src_network src_svg src_script
++SRC_SUBDIRS += src_corelib src_xml src_gui src_sql src_network src_svg src_script
+ contains(QT_CONFIG, opengl): SRC_SUBDIRS += src_opengl
+ contains(QT_CONFIG, qt3support): SRC_SUBDIRS += src_qt3support
+ !cross_compile {
+--
+1.5.0.7
+
diff --git a/packages/qt/qt4-x11-free-4.3.0/0004-no-qmake.patch b/packages/qt/qt4-x11-free-4.3.0/0004-no-qmake.patch
new file mode 100644
index 0000000000..359f6df9d5
--- /dev/null
+++ b/packages/qt/qt4-x11-free-4.3.0/0004-no-qmake.patch
@@ -0,0 +1,25 @@
+From f5a73ce944240de9013cc23288c115e8213add5e Mon Sep 17 00:00:00 2001
+From: Michael Krelin <hacker@klever.net>
+Date: Sat, 2 Jun 2007 16:06:59 +0200
+Subject: [PATCH] no qmake
+
+---
+ configure | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/configure b/configure
+index b3c2a52..1901e57 100755
+--- a/configure
++++ b/configure
+@@ -3271,7 +3271,7 @@ END {
+ }
+
+ # build qmake
+-if true; then ###[ '!' -f "$outpath/bin/qmake" ];
++if false; then ###[ '!' -f "$outpath/bin/qmake" ];
+ echo "Creating qmake. Please wait..."
+
+ OLD_QCONFIG_H=
+--
+1.5.0.7
+
diff --git a/packages/qt/qt4-x11-free-4.3.0/0005-fix-mkspecs.patch b/packages/qt/qt4-x11-free-4.3.0/0005-fix-mkspecs.patch
new file mode 100644
index 0000000000..93692699dc
--- /dev/null
+++ b/packages/qt/qt4-x11-free-4.3.0/0005-fix-mkspecs.patch
@@ -0,0 +1,123 @@
+From aa0377910cfd8d0fce6bdc9355994a4e267b1696 Mon Sep 17 00:00:00 2001
+From: Michael Krelin <hacker@klever.net>
+Date: Sat, 2 Jun 2007 16:39:58 +0200
+Subject: [PATCH] fix mkspecs
+
+---
+ mkspecs/common/g++.conf | 18 +++++++++---------
+ mkspecs/common/linux.conf | 26 +++++++++++++-------------
+ 2 files changed, 22 insertions(+), 22 deletions(-)
+
+diff --git a/mkspecs/common/g++.conf b/mkspecs/common/g++.conf
+index f5a5c8e..4007c7e 100644
+--- a/mkspecs/common/g++.conf
++++ b/mkspecs/common/g++.conf
+@@ -2,12 +2,12 @@
+ # qmake configuration for common gcc
+ #
+
+-QMAKE_CC = gcc
+-QMAKE_CFLAGS += -pipe
++QMAKE_CC = $(OE_QMAKE_CC)
++QMAKE_CFLAGS += -pipe $(OE_QMAKE_CFLAGS)
+ QMAKE_CFLAGS_DEPS += -M
+ QMAKE_CFLAGS_WARN_ON += -Wall -W
+ QMAKE_CFLAGS_WARN_OFF += -w
+-QMAKE_CFLAGS_RELEASE += -O2
++QMAKE_CFLAGS_RELEASE += -O2
+ QMAKE_CFLAGS_DEBUG += -g
+ QMAKE_CFLAGS_SHLIB += -fPIC
+ QMAKE_CFLAGS_STATIC_LIB += -fPIC
+@@ -16,8 +16,8 @@ QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
+ QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+ QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
+
+-QMAKE_CXX = g++
+-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
++QMAKE_CXX = $(OE_QMAKE_CXX)
++QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS)
+ QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
+ QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
+ QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
+@@ -30,9 +30,9 @@ QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
+ QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+ QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+
+-QMAKE_LINK = g++
+-QMAKE_LINK_SHLIB = g++
+-QMAKE_LFLAGS +=
++QMAKE_LINK = $(OE_QMAKE_LINK)
++QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK)
++QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS)
+ QMAKE_LFLAGS_RELEASE +=
+ QMAKE_LFLAGS_DEBUG +=
+ QMAKE_LFLAGS_APP +=
+@@ -40,7 +40,7 @@ QMAKE_LFLAGS_SHLIB += -shared
+ QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
+ QMAKE_LFLAGS_SONAME += -Wl,-soname,
+ QMAKE_LFLAGS_THREAD +=
+-QMAKE_RPATH = -Wl,-rpath,
++QMAKE_RPATH = -Wl,-rpath-link,
+
+ QMAKE_PCH_OUTPUT_EXT = .gch
+
+diff --git a/mkspecs/common/linux.conf b/mkspecs/common/linux.conf
+index 3796a87..52acf16 100644
+--- a/mkspecs/common/linux.conf
++++ b/mkspecs/common/linux.conf
+@@ -7,26 +7,26 @@ QMAKE_CXXFLAGS_THREAD += $$QMAKE_CFLAGS_THREAD
+
+ QMAKE_INCDIR =
+ QMAKE_LIBDIR =
+-QMAKE_INCDIR_X11 = /usr/X11R6/include
+-QMAKE_LIBDIR_X11 = /usr/X11R6/lib
+-QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
+-QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
+-QMAKE_INCDIR_OPENGL = /usr/X11R6/include
+-QMAKE_LIBDIR_OPENGL = /usr/X11R6/lib
++QMAKE_INCDIR_X11 =
++QMAKE_LIBDIR_X11 =
++QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT)
++QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT)
++QMAKE_INCDIR_OPENGL =
++QMAKE_LIBDIR_OPENGL =
+
+ QMAKE_LIBS =
+ QMAKE_LIBS_DYNLOAD = -ldl
+-QMAKE_LIBS_X11 = -lXext -lX11 -lm
+-QMAKE_LIBS_X11SM = -lSM -lICE
++QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11)
++QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM)
+ QMAKE_LIBS_NIS = -lnsl
+ QMAKE_LIBS_OPENGL = -lGLU -lGL
+ QMAKE_LIBS_OPENGL_QT = -lGL
+ QMAKE_LIBS_THREAD = -lpthread
+
+-QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
+-QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
++QMAKE_MOC = $(OE_QMAKE_MOC)
++QMAKE_UIC = $(OE_QMAKE_UIC)
+
+-QMAKE_AR = ar cqs
++QMAKE_AR = $(OE_QMAKE_AR) cqs
+ QMAKE_RANLIB =
+
+ QMAKE_TAR = tar -cf
+@@ -38,11 +38,11 @@ QMAKE_COPY_DIR = $(COPY) -r
+ QMAKE_MOVE = mv -f
+ QMAKE_DEL_FILE = rm -f
+ QMAKE_DEL_DIR = rmdir
+-QMAKE_STRIP = strip
++QMAKE_STRIP = $(OE_QMAKE_STRIP)
+ QMAKE_STRIPFLAGS_LIB += --strip-unneeded
+ QMAKE_CHK_DIR_EXISTS = test -d
+ QMAKE_MKDIR = mkdir -p
+ QMAKE_INSTALL_FILE = install -m 644 -p
+ QMAKE_INSTALL_PROGRAM = install -m 755 -p
+
+-include(unix.conf)
+\ No newline at end of file
++include(unix.conf)
+--
+1.5.0.7
+
diff --git a/packages/qt/qt4-x11-free_4.3.0.bb b/packages/qt/qt4-x11-free_4.3.0.bb
new file mode 100644
index 0000000000..ee4f8e4d05
--- /dev/null
+++ b/packages/qt/qt4-x11-free_4.3.0.bb
@@ -0,0 +1,168 @@
+SECTION = "x11/libs"
+PRIORITY = "optional"
+HOMEPAGE = "http://www.trolltech.com"
+LICENSE = "GPL QPL"
+DEPENDS = "uicmoc4-native qmake2-native freetype jpeg virtual/libx11 xft libxext libxrender libxrandr libxcursor dbus"
+PROVIDES = "qt4x11"
+
+SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-${PV}.tar.gz \
+ file://0001-cross-compile.patch;patch=1 \
+ file://0002-fix-resinit-declaration.patch;patch=1 \
+ file://0003-no-tools.patch;patch=1 \
+ file://0004-no-qmake.patch;patch=1 \
+ file://0005-fix-mkspecs.patch;patch=1"
+S = "${WORKDIR}/qt-x11-opensource-src-${PV}"
+
+PARALLEL_MAKE = ""
+
+inherit qmake-base qt4x11 pkgconfig
+
+export QTDIR = "${S}"
+STAGING_QT_DIR = "${STAGING_DIR}/${TARGET_SYS}/qt4"
+EXTRA_OEMAKE = "-e"
+
+def qt_arch(d):
+ import bb, re
+ arch = bb.data.getVar('TARGET_ARCH', d, 1)
+ if re.match("^i.86$", arch):
+ arch = "x86"
+ elif re.match("^arm.*", arch):
+ arch = "arm"
+ elif arch == "x86_64":
+ arch = "x86"
+ elif arch == "mipsel":
+ arch = "mips"
+ return arch
+
+QT_ARCH := "${@qt_arch(d)}"
+
+# FIXME:
+# * add missing options
+QT_CONFIG_FLAGS = "-release -shared -qt-zlib -system-libjpeg -no-nas-sound -no-sm -no-libmng -qt-libpng -no-gif -no-xinerama \
+ -no-tablet -no-xkb -no-nis -no-cups -no-opengl \
+ -no-sse -no-sse2 -no-mmx -no-3dnow \
+ -no-sql-ibase -no-sql-mysql -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 \
+ -qdbus \
+ -verbose -stl -no-accessibility"
+
+EXTRA_ENV = 'QMAKE="${STAGING_BINDIR_NATIVE}/qmake2 -after DEFINES+=QT_NO_XIM INCPATH+=${STAGING_INCDIR} \
+ INCPATH+=${STAGING_INCDIR}/freetype2 LIBS+=-L${STAGING_LIBDIR}" \
+ QMAKESPEC="${QMAKESPEC}" LINK="${CXX} -Wl,-rpath-link,${STAGING_LIBDIR}" \
+ AR="${TARGET_PREFIX}ar cqs" \
+ MOC="${STAGING_BINDIR_NATIVE}/moc4" UIC="${STAGING_BINDIR_NATIVE}/uic4" MAKE="make -e"'
+
+do_configure() {
+ echo "DEFINES -= QT_NO_CAST_TO_ASCII" >>src/qbase.pri
+ echo "DEFINES += QT_NO_XIM" >>src/qbase.pri
+ unset QMAKESPEC
+ ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake
+ ln -sf ./linux-g++ mkspecs/linux-gnueabi-g++
+ #export QMAKESPEC="linux-oe-g++"
+ #rm -rf ./mkspecs
+ #ln -sf ${QMAKE_MKSPEC_PATH} ./mkspecs
+ echo yes | ./configure -prefix / -platform ${TARGET_OS}-g++ -crossarch ${QT_ARCH} ${QT_CONFIG_FLAGS} -fast \
+ -L${STAGING_LIBDIR} -I${STAGING_INCDIR} -I${STAGING_INCDIR}/freetype2 -I${STAGING_INCDIR}/mysql
+}
+
+# FIXME: Might want to compile the cross tools for the -dev packages as well...
+do_compile() {
+ unset CFLAGS CXXFLAGS
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/rcc4 ${S}/bin/rcc
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/moc4 ${S}/bin/moc
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/uic4 ${S}/bin/uic
+
+ oe_runmake ${EXTRA_ENV}
+
+ # FIXME: this is not the way to go, I think.
+ for pc in ${S}/lib/*.pc ; do
+ sed -i \
+ -e 's,-L${S}/lib,,g' \
+ -e 's,^moc_location=.*,^moc_location=${TARGING_BINDIR}/moc4,g' \
+ -e 's,^uic_location=.*,^moc_location=${TARGING_BINDIR}/uic4,g' \
+ $pc
+ done
+}
+
+PARTS = "3Support AssistantClient Core DBus Designer DesignerComponents Gui Network Script Sql Svg Test Xml"
+
+do_stage() {
+ oe_runmake install INSTALL_ROOT=/
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/rcc4 ${STAGING_QT_DIR}/bin/rcc
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/moc4 ${STAGING_QT_DIR}/bin/moc
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/uic4 ${STAGING_QT_DIR}/bin/uic
+}
+
+# FIXME: Might want to call oe_runmake install INSTALL_ROOT=${D}/${prefix} as well...
+# FIXME: Might want to install everything into ${libdir}/qt4/* to match the usual packing...
+do_install() {
+ install -d ${D}${libdir}
+ install -d ${D}${bindir}
+ install -d ${D}${includedir}
+ for part in ${PARTS}
+ do
+ oe_libinstall -so -C lib libQt$part ${D}${libdir}
+ done
+ oe_libinstall -a -C lib libQtUiTools ${STAGING_QT_DIR}
+ cp -pPR include/* ${D}${includedir}
+ cp -pPR plugins ${D}${libdir}
+ cp -pPR bin/* ${D}${bindir}
+
+ install -d ${D}${bindir}/qt4-examples
+ for binary in `find examples -perm 0755 -type f`
+ do
+ install -m 0755 $binary ${D}${bindir}/qt4-examples/
+ done
+ install -d ${D}${bindir}/qt4-demos
+ for binary in `find demos -perm 0755 -type f`
+ do
+ install -m 0755 $binary ${D}${bindir}/qt4-demos/
+ done
+}
+
+QTPACKAGES = "libqtcore4 libqtgui4 libqtnetwork4 libqtsql4 libqtsvg4 libqttest4 libqtxml4 \
+ libqtdesigner4 libqtdesignercomponents4 libqt3support4 \
+ libqtassistantclient4 libqtscript4 libqtdbus4 \
+ qt4-assistant qt4-common qt4-designer qt4-demos qt4-examples qt4-linguist \
+ qt4-pixeltool qt4-dbus \
+ qt4-plugins-accessible qt4-plugins-codecs qt4-plugins-designer qt4-plugins-imageformats qt4-plugins-sqldrivers \
+ qt4-plugins-inputmethods qt4-plugins-iconengines"
+PACKAGES += "${QTPACKAGES}"
+
+ALLOW_EMPTY = "1"
+FILES_${PN} = ""
+RDEPENDS_${PN} = "${QTPACKAGES}"
+
+FILES_libqtcore4 = "${libdir}/libQtCore.so.*"
+FILES_libqtgui4 = "${libdir}/libQtGui.so.*"
+FILES_libqtnetwork4 = "${libdir}/libQtNetwork.so.*"
+FILES_libqtsql4 = "${libdir}/libQtSql.so.*"
+FILES_libqtsvg4 = "${libdir}/libQtSvg.so.*"
+FILES_libqttest4 = "${libdir}/libQtTest.so.*"
+FILES_libqtxml4 = "${libdir}/libQtXml.so.*"
+FILES_libqtdesigner4 = "${libdir}/libQtDesigner.so.*"
+FILES_libqtdesignercomponents4 = "${libdir}/libQtDesignerComponents.so.*"
+FILES_libqt3support4 = "${libdir}/libQt3Support.so.*"
+FILES_libqtassistantclient4 = "${libdir}/libQtAssistantClient.so.*"
+FILES_libqtscript4 = "${libdir}/libQtScript.so.*"
+FILES_libqtdbus4 = "${libdir}/libQtDBus.so.*"
+
+FILES_qt4-plugins-accessible = "${libdir}/plugins/accessible/*.so"
+FILES_qt4-plugins-codecs = "${libdir}/plugins/codecs/*.so"
+FILES_qt4-plugins-designer = "${libdir}/plugins/designer/*.so"
+FILES_qt4-plugins-imageformats = "${libdir}/plugins/imageformats/*.so"
+FILES_qt4-plugins-sqldrivers = "${libdir}/plugins/sqldrivers/*.so"
+FILES_qt4-plugins-inputmethods = "${libdir}/plugins/inputmethods/*.so"
+FILES_qt4-plugins-iconengines = "${libdir}/plugins/iconengines/*.so"
+
+FILES_qt4-assistant = "${bindir}/*assistant*"
+FILES_qt4-designer = "${bindir}/*designer*"
+FILES_qt4-linguist = "${bindir}/*linguist* ${bindir}/lrelease ${bindir}/lupdate ${bindir}/qm2ts"
+FILES_qt4-pixeltool = "${bindir}/pixeltool"
+FILES_qt4-dbus = "${bindir}/qdbus ${bindir}/qdbusxml2cpp ${bindir}/qdbuscpp2xml ${bindir}/qdbusviewer"
+
+FILES_qt4-common = "${bindir}/qtconfig"
+FILES_qt4-examples = "${bindir}/qt4-examples/*"
+FILES_qt4-demos = "${bindir}/qtdemo ${bindir}/qt4-demos/*"
+
+FILES_${PN}-dev += "${bindir}/rcc ${bindir}/uic* ${bindir}/moc ${bindir}/qmake ${bindir}/syncqt \
+ ${bindir}/qt3to4 ${bindir}/findtr"