summaryrefslogtreecommitdiff
path: root/meta-extras
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-09-01 19:09:11 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-09-01 19:09:57 +0100
commitd62ee7eaf2ba025c3f64b2d4e10dc7cec4637612 (patch)
treef36fe3008f36ff75cbdd31b630f8f13f1f205ebb /meta-extras
parentcaab7fc509bf27706ff3248689f6afd04225cfda (diff)
downloadopenembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.gz
openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.bz2
openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.zip
packages: Separate out most of the remaining packages into recipes
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta-extras')
-rw-r--r--meta-extras/packages/clutter/clutter-helix.inc15
-rw-r--r--meta-extras/packages/clutter/clutter-helix_git.bb8
-rw-r--r--meta-extras/packages/librds/librds_0.0.1.bb11
-rw-r--r--meta-extras/packages/mozilla/files/eabi-fix.patch66
-rw-r--r--meta-extras/packages/mozilla/files/eabi-fix2.patch56
-rw-r--r--meta-extras/packages/mozilla/files/eabi-fix3.patch15
-rw-r--r--meta-extras/packages/mozilla/files/minimo.desktop9
-rw-r--r--meta-extras/packages/mozilla/files/minimo.pngbin0 -> 4323 bytes
-rw-r--r--meta-extras/packages/mozilla/minimo/bug-322806.diff13
-rw-r--r--meta-extras/packages/mozilla/minimo/minimo4
-rw-r--r--meta-extras/packages/mozilla/minimo/minimo.patch356
-rw-r--r--meta-extras/packages/mozilla/minimo/minimo.pngbin0 -> 4323 bytes
-rw-r--r--meta-extras/packages/mozilla/minimo/mozconfig36
-rw-r--r--meta-extras/packages/mozilla/minimo_cvs.bb153
-rw-r--r--meta-extras/packages/networkmanager/files/70NetworkManagerApplet.shbg4
-rw-r--r--meta-extras/packages/networkmanager/files/99_networkmanager1
-rw-r--r--meta-extras/packages/networkmanager/files/NetworkManager43
-rw-r--r--meta-extras/packages/networkmanager/files/allow-disabling.patch45
-rw-r--r--meta-extras/packages/networkmanager/files/applet-no-animation.patch234
-rw-r--r--meta-extras/packages/networkmanager/files/applet-no-gnome.diff59
-rw-r--r--meta-extras/packages/networkmanager/files/libnlfix.patch29
-rw-r--r--meta-extras/packages/networkmanager/files/makefile-fix.patch17
-rw-r--r--meta-extras/packages/networkmanager/files/nmutil-fix.patch12
-rw-r--r--meta-extras/packages/networkmanager/files/no-restarts.diff21
-rw-r--r--meta-extras/packages/networkmanager/files/no_vpn.patch13
-rw-r--r--meta-extras/packages/networkmanager/networkmanager-applet_svn.bb33
-rw-r--r--meta-extras/packages/networkmanager/networkmanager_svn.bb51
-rw-r--r--meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch120
-rw-r--r--meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf1
-rw-r--r--meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch22
-rw-r--r--meta-extras/packages/qmake/qmake2-cross_2.10a.bb74
-rw-r--r--meta-extras/packages/smart/smart_1.1.bb29
-rw-r--r--meta-extras/packages/uicmoc/uicmoc4-native.inc67
-rw-r--r--meta-extras/packages/uicmoc/uicmoc4-native_4.3.2.bb1
34 files changed, 1618 insertions, 0 deletions
diff --git a/meta-extras/packages/clutter/clutter-helix.inc b/meta-extras/packages/clutter/clutter-helix.inc
new file mode 100644
index 0000000000..6bbbb244d7
--- /dev/null
+++ b/meta-extras/packages/clutter/clutter-helix.inc
@@ -0,0 +1,15 @@
+DESCRIPTION = "Clutter Helix"
+HOMEPAGE = "http://www.clutter-project.org/"
+LICENSE = "LGPL"
+
+DEPENDS = "helix-libs"
+
+FILESPATH = "${FILE_DIRNAME}/clutter-helix"
+
+COMPATIBLE_HOST = '(x86_64|i.86.*)-linux'
+
+PACKAGES =+ "${PN}-examples"
+FILES_${PN}-examples = "${bindir}/video-player ${bindir}/audio-player"
+
+inherit autotools pkgconfig gtk-doc
+
diff --git a/meta-extras/packages/clutter/clutter-helix_git.bb b/meta-extras/packages/clutter/clutter-helix_git.bb
new file mode 100644
index 0000000000..1c272306bf
--- /dev/null
+++ b/meta-extras/packages/clutter/clutter-helix_git.bb
@@ -0,0 +1,8 @@
+require clutter-helix.inc
+
+PV = "0.8.0+git${SRCPV}"
+PR = "r0"
+
+SRC_URI = "git://git.clutter-project.org/clutter-helix.git;protocol=git"
+
+S = "${WORKDIR}/git"
diff --git a/meta-extras/packages/librds/librds_0.0.1.bb b/meta-extras/packages/librds/librds_0.0.1.bb
new file mode 100644
index 0000000000..3c99ec1ba0
--- /dev/null
+++ b/meta-extras/packages/librds/librds_0.0.1.bb
@@ -0,0 +1,11 @@
+DESCRIPTION = "A software library for accessing RDS data"
+HOMEPAGE = "http://rdsd.berlios.de/"
+SECTION = "libs"
+PROVIDES = "librds"
+LICENSE = "GPLv2"
+
+PR = "r1"
+
+SRC_URI = "http://download.berlios.de/rdsd/librds-${PV}.tar.gz"
+
+inherit autotools pkgconfig
diff --git a/meta-extras/packages/mozilla/files/eabi-fix.patch b/meta-extras/packages/mozilla/files/eabi-fix.patch
new file mode 100644
index 0000000000..fd3bb88683
--- /dev/null
+++ b/meta-extras/packages/mozilla/files/eabi-fix.patch
@@ -0,0 +1,66 @@
+http://lists.debian.org/debian-arm/2007/05/msg00039.html
+
+From: Lennert Buytenhek <buytenh@wantstofly.org>
+
+Hi,
+
+The reason that building nss (i.e., firefox) would segfault on ARM EABI
+systems is an assumption about the layout of the jmp_buf structure in
+the nspr library (which nss depends on) that does hold on old-ABI but
+no longer holds on EABI. The attached patch fixes this assumption,
+and fixes the shlibsign segfault during the building of nss (it also
+fixes a floating point byte order assumption.)
+
+Looks sane?
+
+It's of course a stupid idea to depend on a particular layout of the
+jmp_buf structure in application programs, but oh well. People write
+ugly buggy code, film at 11.
+
+
+--- mozilla/nsprpub/pr/src/misc/prdtoa.c.orig 2007-05-06 02:39:00.000000000 +0200
++++ mozilla/nsprpub/pr/src/misc/prdtoa.c 2007-05-06 02:39:22.000000000 +0200
+@@ -59,8 +59,8 @@
+ /* FIXME: deal with freelist and p5s. */
+ }
+
+-#if defined(__arm) || defined(__arm__) || defined(__arm26__) \
+- || defined(__arm32__)
++#if (defined(__arm) || defined(__arm__) || defined(__arm26__) \
++ || defined(__arm32__)) && !defined(__ARM_EABI__) && !defined(__ARMEB__)
+ #define IEEE_ARM
+ #elif defined(IS_LITTLE_ENDIAN)
+ #define IEEE_8087
+--- mozilla/nsprpub/pr/include/md/_linux.h.orig 2007-05-06 02:39:45.000000000 +0200
++++ mozilla/nsprpub/pr/include/md/_linux.h 2007-05-06 02:40:57.000000000 +0200
+@@ -346,7 +346,7 @@
+ #error "Linux/MIPS pre-glibc2 not supported yet"
+ #endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */
+
+-#elif defined(__arm__)
++#elif defined(__arm__) && !defined(__ARM_EABI__)
+ /* ARM/Linux */
+ #if defined(__GLIBC__) && __GLIBC__ >= 2
+ #define _MD_GET_SP(_t) (_t)->md.context[0].__jmpbuf[20]
+@@ -358,6 +358,18 @@
+ #error "ARM/Linux pre-glibc2 not supported yet"
+ #endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */
+
++#elif defined(__arm__) && defined(__ARM_EABI__)
++/* ARM/Linux */
++#if defined(__GLIBC__) && __GLIBC__ >= 2
++#define _MD_GET_SP(_t) (_t)->md.context[0].__jmpbuf[8]
++#define _MD_SET_FP(_t, val) ((_t)->md.context[0].__jmpbuf[7] = (val))
++#define _MD_GET_SP_PTR(_t) &(_MD_GET_SP(_t))
++#define _MD_GET_FP_PTR(_t) (&(_t)->md.context[0].__jmpbuf[7])
++#define _MD_SP_TYPE __ptr_t
++#else
++#error "ARM/Linux pre-glibc2 not supported yet"
++#endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */
++
+ #else
+
+ #error "Unknown CPU architecture"
+
+
+
diff --git a/meta-extras/packages/mozilla/files/eabi-fix2.patch b/meta-extras/packages/mozilla/files/eabi-fix2.patch
new file mode 100644
index 0000000000..5f64e7f796
--- /dev/null
+++ b/meta-extras/packages/mozilla/files/eabi-fix2.patch
@@ -0,0 +1,56 @@
+https://bugzilla.mozilla.org/show_bug.cgi?id=369722
+
+Index: js/src/jsnum.h
+===================================================================
+RCS file: /cvsroot/mozilla/js/src/jsnum.h,v
+retrieving revision 3.27
+diff -p -u -8 -r3.27 jsnum.h
+--- mozilla/js/src/jsnum.h 21 Dec 2006 01:00:32 -0000 3.27
++++ mozilla/js/src/jsnum.h 8 Feb 2007 12:13:01 -0000
+@@ -52,23 +52,24 @@ JS_BEGIN_EXTERN_C
+
+ /*
+ * Stefan Hanske <sh990154@mail.uni-greifswald.de> reports:
+ * ARM is a little endian architecture but 64 bit double words are stored
+ * differently: the 32 bit words are in little endian byte order, the two words
+ * are stored in big endian`s way.
+ */
+
+-#if defined(__arm) || defined(__arm32__) || defined(__arm26__) || defined(__arm__)
+-#define CPU_IS_ARM
++#if !defined(__ARM_EABI__) && \
++ (defined(__arm) || defined(__arm32__) || defined(__arm26__) || defined(__arm__))
++#define IEEE_ARM
+ #endif
+
+ typedef union jsdpun {
+ struct {
+-#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM)
++#if defined(IS_LITTLE_ENDIAN) && !defined(IEEE_ARM)
+ uint32 lo, hi;
+ #else
+ uint32 hi, lo;
+ #endif
+ } s;
+ jsdouble d;
+ } jsdpun;
+
+@@ -87,17 +88,17 @@ typedef union jsdpun {
+
+ #else /* not or old GNUC */
+
+ /*
+ * We don't know of any non-gcc compilers that perform alias optimization,
+ * so this code should work.
+ */
+
+-#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM)
++#if defined(IS_LITTLE_ENDIAN) && !defined(IEEE_ARM)
+ #define JSDOUBLE_HI32(x) (((uint32 *)&(x))[1])
+ #define JSDOUBLE_LO32(x) (((uint32 *)&(x))[0])
+ #else
+ #define JSDOUBLE_HI32(x) (((uint32 *)&(x))[0])
+ #define JSDOUBLE_LO32(x) (((uint32 *)&(x))[1])
+ #endif
+
+ #define JSDOUBLE_SET_HI32(x, y) (JSDOUBLE_HI32(x)=(y))
diff --git a/meta-extras/packages/mozilla/files/eabi-fix3.patch b/meta-extras/packages/mozilla/files/eabi-fix3.patch
new file mode 100644
index 0000000000..8bf8c2f4da
--- /dev/null
+++ b/meta-extras/packages/mozilla/files/eabi-fix3.patch
@@ -0,0 +1,15 @@
+From: Marcin Juszkiewicz <openembedded@hrw.one.pl>
+
+Index: mozilla/extensions/transformiix/source/base/Double.cpp
+===================================================================
+--- mozilla.orig/extensions/transformiix/source/base/Double.cpp 2007-05-09 11:21:34.000000000 +0200
++++ mozilla/extensions/transformiix/source/base/Double.cpp 2007-05-09 11:23:59.000000000 +0200
+@@ -71,7 +71,7 @@
+ * are stored in big endian`s way.
+ */
+
+-#if defined(__arm) || defined(__arm32__) || defined(_arm26__) || defined(__arm__)
++#if !defined(__ARM_EABI__) && defined(__arm) || defined(__arm32__) || defined(_arm26__) || defined(__arm__)
+ #define CPU_IS_ARM
+ #endif
+
diff --git a/meta-extras/packages/mozilla/files/minimo.desktop b/meta-extras/packages/mozilla/files/minimo.desktop
new file mode 100644
index 0000000000..5ef0f2075a
--- /dev/null
+++ b/meta-extras/packages/mozilla/files/minimo.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Minimo
+Comment=Minimo web browser
+Exec=minimo http://www.mozilla.org/projects/minimo/home.html
+Terminal=0
+Type=Application
+Icon=minimo.png
+Categories=Application;Network;
+StartupNotify=True
diff --git a/meta-extras/packages/mozilla/files/minimo.png b/meta-extras/packages/mozilla/files/minimo.png
new file mode 100644
index 0000000000..f8b2e2192b
--- /dev/null
+++ b/meta-extras/packages/mozilla/files/minimo.png
Binary files differ
diff --git a/meta-extras/packages/mozilla/minimo/bug-322806.diff b/meta-extras/packages/mozilla/minimo/bug-322806.diff
new file mode 100644
index 0000000000..e001e3fc67
--- /dev/null
+++ b/meta-extras/packages/mozilla/minimo/bug-322806.diff
@@ -0,0 +1,13 @@
+See https://bugzilla.mozilla.org/show_bug.cgi?id=322806 and http://bugs.openembedded.org/show_bug.cgi?id=1600
+
+--- /tmp/xptcinvoke_arm.cpp 2006-12-10 20:02:57.000000000 +0100
++++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp 2006-12-10 20:03:54.592227000 +0100
+@@ -212,7 +212,7 @@
+ "add sp, sp, r4 \n\t" /* restore stack pointer */
+ "mov %0, r0 \n\t" /* the result... */
+ : "=r" (result)
+- : "r" (&my_params)
++ : "r" (&my_params), "m" (my_params)
+ : "r0", "r1", "r2", "r3", "r4", "ip", "lr", "sp"
+ );
+
diff --git a/meta-extras/packages/mozilla/minimo/minimo b/meta-extras/packages/mozilla/minimo/minimo
new file mode 100644
index 0000000000..d130173adf
--- /dev/null
+++ b/meta-extras/packages/mozilla/minimo/minimo
@@ -0,0 +1,4 @@
+#!/bin/sh
+export MOZILLA_FIVE_HOME=/usr/lib/mozilla-minimo
+export LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME}
+exec ${MOZILLA_FIVE_HOME}/minimo "$@"
diff --git a/meta-extras/packages/mozilla/minimo/minimo.patch b/meta-extras/packages/mozilla/minimo/minimo.patch
new file mode 100644
index 0000000000..8894ee7f45
--- /dev/null
+++ b/meta-extras/packages/mozilla/minimo/minimo.patch
@@ -0,0 +1,356 @@
+Index: mozilla/content/html/content/src/nsFormSubmission.cpp
+===================================================================
+--- mozilla.orig/content/html/content/src/nsFormSubmission.cpp 2005-07-13 18:55:59.000000000 +0200
++++ mozilla/content/html/content/src/nsFormSubmission.cpp 2007-05-10 12:11:20.000000000 +0200
+@@ -1315,11 +1315,6 @@
+ nsresult rv = NS_OK;
+
+ nsCAutoString charset(aCharset);
+- // canonical name is passed so that we just have to check against
+- // *our* canonical names listed in charsetaliases.properties
+- if (charset.EqualsLiteral("ISO-8859-1")) {
+- charset.AssignLiteral("windows-1252");
+- }
+
+ // use UTF-8 for UTF-16* and UTF-32* (per WHATWG and existing practice of
+ // MS IE/Opera).
+Index: mozilla/embedding/base/Makefile.in
+===================================================================
+--- mozilla.orig/embedding/base/Makefile.in 2006-02-14 06:28:31.000000000 +0100
++++ mozilla/embedding/base/Makefile.in 2007-05-10 12:11:20.000000000 +0200
+@@ -43,6 +43,7 @@
+
+ MODULE = embed_base
+ LIBRARY_NAME = embed_base_s
++EXPORT_LIBRARY = 1
+ XPIDL_MODULE = embed_base
+
+ include $(DEPTH)/config/autoconf.mk
+Index: mozilla/js/src/Makefile.in
+===================================================================
+--- mozilla.orig/js/src/Makefile.in 2006-07-28 00:56:20.000000000 +0200
++++ mozilla/js/src/Makefile.in 2007-05-10 12:11:21.000000000 +0200
+@@ -46,6 +46,7 @@
+
+ MODULE = js
+ LIBRARY_NAME = mozjs
++EXPORT_LIBRARY = 1
+ LIB_IS_C_ONLY = 1
+ GRE_MODULE = 1
+
+Index: mozilla/minimo/Makefile.in
+===================================================================
+--- mozilla.orig/minimo/Makefile.in 2006-07-24 21:40:53.000000000 +0200
++++ mozilla/minimo/Makefile.in 2007-05-10 12:13:46.000000000 +0200
+@@ -41,6 +41,6 @@
+
+ include $(DEPTH)/config/autoconf.mk
+
+-DIRS = config components chrome locales customization base extensions
++DIRS = config chrome locales customization base extensions
+
+ include $(topsrcdir)/config/rules.mk
+Index: mozilla/minimo/base/Makefile.in
+===================================================================
+--- mozilla.orig/minimo/base/Makefile.in 2006-08-09 17:42:26.000000000 +0200
++++ mozilla/minimo/base/Makefile.in 2007-05-10 12:11:21.000000000 +0200
+@@ -96,7 +96,6 @@
+
+ # this should move into the toolkit!
+ LOCAL_INCLUDES = -I$(srcdir) -I$(topsrcdir)/xpfe/browser/src/
+-CPPSRCS += nsBrowserStatusFilter.cpp nsBrowserInstance.cpp
+
+ ifdef WINCE
+ RCINCLUDE = wince/SplashScreen.rc
+@@ -143,10 +142,6 @@
+ endif
+
+
+-FINAL_LINK_COMPS=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-comps
+-FINAL_LINK_COMP_NAMES=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-names
+-FINAL_LINK_LIBS=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-libs
+-
+ include $(topsrcdir)/config/static-config.mk
+
+ EXTRA_DEPS += $(STATIC_EXTRA_DEPS)
+@@ -180,14 +175,11 @@
+ # (same as in mozilla/js/src/Makefile.in)
+ ifdef WINCE
+ LDFLAGS += -OPT:NOICF
++else
++# Hack to work around libxpcom_core.a / libunicharutil_s.a link order problem.
++LDFLAGS += -u NS_StringGetData_P -u NS_StringGetMutableData_P
+ endif
+
+-export::
+- $(NSINSTALL) $(topsrcdir)/xpfe/browser/src/nsBrowserStatusFilter.cpp .
+- $(NSINSTALL) $(topsrcdir)/xpfe/browser/src/nsBrowserInstance.cpp .
+-
+-
+-GARBAGE += nsBrowserStatusFilter.cpp nsBrowserInstance.cpp
+
+ ifdef WINCE
+ package::
+Index: mozilla/minimo/base/Minimo.cpp
+===================================================================
+--- mozilla.orig/minimo/base/Minimo.cpp 2006-10-27 22:30:36.000000000 +0200
++++ mozilla/minimo/base/Minimo.cpp 2007-05-10 12:13:21.000000000 +0200
+@@ -813,6 +813,8 @@
+ #ifdef MOZ_WIDGET_GTK2
+ gtk_set_locale();
+ gtk_init(&argc, &argv);
++ gtk_widget_set_default_visual(gdk_rgb_get_visual());
++ gtk_widget_set_default_colormap(gdk_rgb_get_cmap());
+ #endif
+
+ #ifdef HACKY_PRE_LOAD_LIBRARY
+Index: mozilla/minimo/base/SplashScreen.cpp
+===================================================================
+--- mozilla.orig/minimo/base/SplashScreen.cpp 2006-08-21 21:00:24.000000000 +0200
++++ mozilla/minimo/base/SplashScreen.cpp 2007-05-10 12:11:22.000000000 +0200
+@@ -202,9 +202,24 @@
+ void KillSplashScreen() {}
+ void GetScreenSize(unsigned long* x, unsigned long* y)
+ {
++#ifdef MOZ_WIDGET_GTK2
++ GdkDisplay* display = gdk_display_get_default();
++ if (display != NULL)
++ {
++ GdkScreen *screen;
++ screen = gdk_display_get_default_screen(display);
++ *x = gdk_screen_get_width(screen);
++ *y = gdk_screen_get_height(screen);
++ }
++ else
++ {
++#endif
+ // we need to figure this out.
+ *x = 240;
+ *y = 320;
++#ifdef MOZ_WIDGET_GTK2
++ }
++#endif
+ }
+
+
+Index: mozilla/minimo/config/linux_package.sh
+===================================================================
+--- mozilla.orig/minimo/config/linux_package.sh 2006-06-30 18:35:19.000000000 +0200
++++ mozilla/minimo/config/linux_package.sh 2007-05-10 12:11:22.000000000 +0200
+@@ -29,9 +29,7 @@
+ cp -pRL bin/libnssckbi.so minimo
+ cp -pRL bin/libsmime3.so minimo
+ cp -pRL bin/libsoftokn3.so minimo
+-cp -pRL bin/libsoftokn3.chk minimo
+ cp -pRL bin/libfreebl3.so minimo
+-cp -pRL bin/libfreebl3.chk minimo
+ cp -pRL bin/libssl3.so minimo
+
+ mkdir -p minimo/chrome
+@@ -62,8 +60,6 @@
+ cp -pRL bin/components/nsHelperAppDlg.js minimo/components
+ cp -pRL bin/components/nsProgressDialog.js minimo/components
+
+-cp -pRL bin/extensions/spatial-navigation@extensions.mozilla.org/components/* minimo/components
+-
+ mkdir -p minimo/greprefs
+ cp -pRL bin/greprefs/* minimo/greprefs
+
+@@ -80,7 +76,7 @@
+
+ echo Linking XPT files.
+
+-bin/xpt_link minimo/components/all.xpt bin/components/*.xpt
++host/bin/host_xpt_link minimo/components/all.xpt bin/components/*.xpt
+
+ echo Chewing on chrome
+
+Index: mozilla/profile/dirserviceprovider/src/Makefile.in
+===================================================================
+--- mozilla.orig/profile/dirserviceprovider/src/Makefile.in 2005-04-06 05:35:21.000000000 +0200
++++ mozilla/profile/dirserviceprovider/src/Makefile.in 2007-05-10 12:11:23.000000000 +0200
+@@ -44,6 +44,7 @@
+
+ MODULE = profdirserviceprovider
+ LIBRARY_NAME = profdirserviceprovider_s
++EXPORT_LIBRARY = 1
+ MOZILLA_INTERNAL_API = 1
+
+ REQUIRES = xpcom \
+Index: mozilla/security/coreconf/Linux.mk
+===================================================================
+--- mozilla.orig/security/coreconf/Linux.mk 2006-02-03 23:26:36.000000000 +0100
++++ mozilla/security/coreconf/Linux.mk 2007-05-10 12:11:23.000000000 +0200
+@@ -117,6 +117,10 @@
+ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+ CPU_ARCH = mips
+ else
++ifeq ($(OS_TEST),arm)
++ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
++ CPU_ARCH = arm
++else
+ OS_REL_CFLAGS = -DLINUX1_2 -Di386 -D_XOPEN_SOURCE
+ CPU_ARCH = x86
+ endif
+@@ -133,6 +137,7 @@
+ endif
+ endif
+ endif
++endif
+
+
+ LIBC_TAG = _glibc
+Index: mozilla/security/coreconf/arch.mk
+===================================================================
+--- mozilla.orig/security/coreconf/arch.mk 2006-02-03 23:26:36.000000000 +0100
++++ mozilla/security/coreconf/arch.mk 2007-05-10 12:11:24.000000000 +0200
+@@ -60,18 +60,14 @@
+ 64BIT_TAG=
+ endif
+
+-OS_ARCH := $(subst /,_,$(shell uname -s))
++OS_ARCH := Linux
+
+ #
+ # Attempt to differentiate between sparc and x86 Solaris
+ #
+
+-OS_TEST := $(shell uname -m)
+-ifeq ($(OS_TEST),i86pc)
+- OS_RELEASE := $(shell uname -r)_$(OS_TEST)
+-else
+- OS_RELEASE := $(shell uname -r)
+-endif
++OS_TEST := arm
++OS_RELEASE := 2.6
+
+ #
+ # Force the IRIX64 machines to use IRIX.
+Index: mozilla/toolkit/components/build/Makefile.in
+===================================================================
+--- mozilla.orig/toolkit/components/build/Makefile.in 2006-07-13 22:08:29.000000000 +0200
++++ mozilla/toolkit/components/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200
+@@ -112,7 +112,6 @@
+ $(NULL)
+
+ SHARED_LIBRARY_LIBS = \
+- ../startup/src/$(LIB_PREFIX)appstartup_s.$(LIB_SUFFIX) \
+ $(NULL)
+
+ ifdef MOZ_XPINSTALL
+Index: mozilla/toolkit/components/startup/src/Makefile.in
+===================================================================
+--- mozilla.orig/toolkit/components/startup/src/Makefile.in 2005-07-27 22:42:44.000000000 +0200
++++ mozilla/toolkit/components/startup/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200
+@@ -43,6 +43,7 @@
+
+ MODULE = toolkitcomps
+ LIBRARY_NAME = appstartup_s
++EXPORT_LIBRARY = 1
+ FORCE_STATIC_LIB = 1
+ LIBXUL_LIBRARY = 1
+
+Index: mozilla/toolkit/xre/Makefile.in
+===================================================================
+--- mozilla.orig/toolkit/xre/Makefile.in 2007-02-06 08:13:20.000000000 +0100
++++ mozilla/toolkit/xre/Makefile.in 2007-05-10 12:11:27.000000000 +0200
+@@ -45,7 +45,6 @@
+
+ MODULE = xulapp
+ LIBRARY_NAME = xulapp_s
+-EXPORT_LIBRARY = 1
+ LIBXUL_LIBRARY = 1
+
+ REQUIRES = \
+@@ -180,14 +179,6 @@
+
+ include $(topsrcdir)/config/rules.mk
+
+-ifdef BUILD_STATIC_LIBS
+-export::
+- @$(PERL) -I$(MOZILLA_DIR)/config $(MOZILLA_DIR)/config/build-list.pl $(FINAL_LINK_COMP_NAMES) Apprunner
+-# embedding/browser/gtk/src/Makefile.in sucks! we need to add an empty line to
+-# FINAL_LINK_COMPS to keep the two lists in sync :-(
+- @$(PERL) -I$(MOZILLA_DIR)/config $(MOZILLA_DIR)/config/build-list.pl $(FINAL_LINK_COMPS) ""
+-endif
+-
+ LOCAL_INCLUDES += \
+ -I$(srcdir) \
+ -I$(topsrcdir)/xpfe/bootstrap \
+Index: mozilla/xpcom/build/Makefile.in
+===================================================================
+--- mozilla.orig/xpcom/build/Makefile.in 2006-01-29 17:51:02.000000000 +0100
++++ mozilla/xpcom/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200
+@@ -61,7 +61,7 @@
+ endif
+
+ # Do not set EXPORT_LIBRARY as we do not want xpcom in the static libs list
+-#EXPORT_LIBRARY = 1
++EXPORT_LIBRARY = 1
+ GRE_MODULE = 1
+ MOZILLA_INTERNAL_API = 1
+
+Index: mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp
+===================================================================
+--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2004-04-18 16:18:18.000000000 +0200
++++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2007-05-10 12:11:27.000000000 +0200
+@@ -45,9 +45,9 @@
+ #endif
+
+ /* Specify explicitly a symbol for this function, don't try to guess the c++ mangled symbol. */
+-static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch");
++nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch");
+
+-static nsresult
++nsresult
+ PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args)
+ {
+ #define PARAM_BUFFER_COUNT 16
+Index: mozilla/xpfe/browser/src/Makefile.in
+===================================================================
+--- mozilla.orig/xpfe/browser/src/Makefile.in 2005-03-18 22:23:45.000000000 +0100
++++ mozilla/xpfe/browser/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200
+@@ -44,6 +44,7 @@
+
+ MODULE = browser
+ LIBRARY_NAME = mozbrwsr_s
++EXPORT_LIBRARY = 1
+ FORCE_STATIC_LIB = 1
+ LIBXUL_LIBRARY = 1
+ MODULE_NAME = nsBrowserModule
+Index: mozilla/xpfe/components/build/Makefile.in
+===================================================================
+--- mozilla.orig/xpfe/components/build/Makefile.in 2005-09-27 02:15:25.000000000 +0200
++++ mozilla/xpfe/components/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200
+@@ -44,7 +44,6 @@
+
+ MODULE = appcomps
+ LIBRARY_NAME = appcomps
+-EXPORT_LIBRARY = 1
+ IS_COMPONENT = 1
+ MODULE_NAME = application
+ LIBXUL_LIBRARY = 1
+Index: mozilla/xpfe/components/filepicker/src/Makefile.in
+===================================================================
+--- mozilla.orig/xpfe/components/filepicker/src/Makefile.in 2006-05-22 18:29:32.000000000 +0200
++++ mozilla/xpfe/components/filepicker/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200
+@@ -47,7 +47,6 @@
+ MODULE = filepicker
+ LIBRARY_NAME = fileview
+ SHORT_LIBNAME = fileview
+-EXPORT_LIBRARY = 1
+ IS_COMPONENT = 1
+ MODULE_NAME = nsFileViewModule
+ MOZILLA_INTERNAL_API = 1
+Index: mozilla/xpfe/components/find/src/Makefile.in
+===================================================================
+--- mozilla.orig/xpfe/components/find/src/Makefile.in 2005-03-18 22:23:46.000000000 +0100
++++ mozilla/xpfe/components/find/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200
+@@ -45,7 +45,6 @@
+ MODULE = appcomps
+ XPIDL_MODULE = mozfind
+ LIBRARY_NAME = mozfind
+-EXPORT_LIBRARY = 1
+ IS_COMPONENT = 1
+ MODULE_NAME = nsFindComponent
+ LIBXUL_LIBRARY = 1
diff --git a/meta-extras/packages/mozilla/minimo/minimo.png b/meta-extras/packages/mozilla/minimo/minimo.png
new file mode 100644
index 0000000000..f8b2e2192b
--- /dev/null
+++ b/meta-extras/packages/mozilla/minimo/minimo.png
Binary files differ
diff --git a/meta-extras/packages/mozilla/minimo/mozconfig b/meta-extras/packages/mozilla/minimo/mozconfig
new file mode 100644
index 0000000000..393981e9fa
--- /dev/null
+++ b/meta-extras/packages/mozilla/minimo/mozconfig
@@ -0,0 +1,36 @@
+# mozilla/configure: Features and packages:
+
+ac_add_options --enable-application=minimo
+ac_add_options --enable-default-toolkit=gtk2
+ac_add_options --disable-freetype2
+ac_add_options --enable-xft
+ac_add_options --disable-postscript
+ac_add_options --disable-xprint
+ac_add_options --disable-gnomevfs
+ac_add_options --disable-gnomeui
+ac_add_options --disable-jsd
+ac_add_options --disable-plugins
+ac_add_options --disable-view-source
+ac_add_options --disable-accessibility
+ac_add_options --disable-xpinstall
+ac_add_options --enable-single-profile
+ac_add_options --disable-jsloader
+ac_add_options --disable-printing
+ac_add_options --enable-native-uconv
+ac_add_options --enable-plaintext-editor-only
+ac_add_options --disable-xpcom-obsolete
+ac_add_options --disable-pref-extensions
+ac_add_options --disable-extensions
+ac_add_options --enable-image-decoders=png,gif,jpeg
+ac_add_options --disable-mathml
+ac_add_options --disable-installer
+ac_add_options --disable-updater
+ac_add_options --disable-tests
+ac_add_options --enable-optimize=-Os
+ac_add_options --disable-logging
+ac_add_options --enable-strip
+ac_add_options --enable-elf-dynstr-gc
+ac_add_options --disable-shared
+ac_add_options --enable-static
+ac_add_options --disable-profilesharing
+ac_add_options --disable-profilelocking
diff --git a/meta-extras/packages/mozilla/minimo_cvs.bb b/meta-extras/packages/mozilla/minimo_cvs.bb
new file mode 100644
index 0000000000..5eec96d143
--- /dev/null
+++ b/meta-extras/packages/mozilla/minimo_cvs.bb
@@ -0,0 +1,153 @@
+DESCRIPTION = "A minimal version of the Mozilla web browser for mobile devices"
+SECTION = "x11/network"
+LICENSE = "MPL/GPL/LGPL"
+HOMEPAGE = "http://www.mozilla.org/projects/minimo/"
+PRIORITY = "optional"
+
+DEPENDS = "libxrender xt xft fontconfig freetype libidl dbus-glib pango atk gtk+ libidl-native"
+
+CVSSVR = "cvs-mirror.mozilla.org"
+BRTAG = "MOZILLA_1_8_BRANCH"
+MOZDATE = "20070510"
+
+PV = "0.02+cvs${MOZDATE}"
+PR = "r3"
+
+SRC_URI = "cvs://anonymous@${CVSSVR}/cvsroot;module=mozilla;tag=${BRTAG};date=${MOZDATE} \
+ file://minimo.patch;patch=1 \
+ file://bug-322806.diff;patch=1 \
+ file://mozconfig \
+ file://minimo \
+ file://eabi-fix.patch;patch=1 \
+ file://eabi-fix2.patch;patch=1 \
+ file://eabi-fix3.patch;patch=1 \
+ file://minimo.desktop \
+ file://minimo.png"
+
+inherit autotools
+
+S = "${WORKDIR}/mozilla"
+
+export MOZCONFIG = "${WORKDIR}/mozconfig"
+
+export CROSS_COMPILE="1"
+export ac_cv_prog_HOST_CC="${BUILD_CC}"
+export ac_cv_prog_HOST_CFLAGS="${BUILD_CFLAGS}"
+export ac_cv_prog_HOST_CXX="${BUILD_CXX}"
+export ac_cv_prog_HOST_CXXFLAGS="${BUILD_CXXFLAGS}"
+export HOST_LIBIDL_CONFIG = "${STAGING_BINDIR_NATIVE}/libIDL-config-2"
+
+mozdir="${libdir}/mozilla-minimo"
+
+EXTRA_OECONF += "--build=${BUILD_SYS} --host=${BUILD_SYS} --target=${TARGET_SYS} "
+
+do_configure() {
+ cd ${S}
+ oe_runmake -f client.mk CONFIGURE_ARGS="${EXTRA_OECONF}" configure
+ sed -i s:${TARGET_PREFIX}strip:echo:g config/autoconf.mk
+}
+
+do_compile() {
+ cd ${S}
+ oe_runmake -f client.mk build
+}
+
+do_install() {
+ cd ${WORKDIR}
+
+ install -d ${D}${bindir}
+ install -m 0755 minimo ${D}${bindir}
+
+ install -d ${D}${datadir}/applications
+ install -m 0644 minimo.desktop ${D}${datadir}/applications
+
+ install -d ${D}/${datadir}/pixmaps
+ install -m 0644 minimo.png ${D}${datadir}/pixmaps
+
+ cd ${S}
+
+ ./minimo/config/linux_package.sh ${S} ${S}/minimo/config
+
+ cd dist/minimo
+
+ install -d ${D}${mozdir}
+ install -m 0755 minimo ${D}${mozdir}
+ install -m 0755 libfreebl3.so ${D}${mozdir}
+ install -m 0755 libnspr4.so ${D}${mozdir}
+ install -m 0755 libnss3.so ${D}${mozdir}
+ install -m 0755 libnssckbi.so ${D}${mozdir}
+ install -m 0755 libplc4.so ${D}${mozdir}
+ install -m 0755 libplds4.so ${D}${mozdir}
+ install -m 0755 libsmime3.so ${D}${mozdir}
+ install -m 0755 libsoftokn3.so ${D}${mozdir}
+ install -m 0755 libssl3.so ${D}${mozdir}
+
+ install -d ${D}${mozdir}/chrome
+ install -m 0644 chrome/classic.jar ${D}${mozdir}/chrome
+ install -m 0644 chrome/classic.manifest ${D}${mozdir}/chrome
+ install -m 0644 chrome/en-US.jar ${D}${mozdir}/chrome
+ install -m 0644 chrome/en-US.manifest ${D}${mozdir}/chrome
+ install -m 0644 chrome/minimo-skin-vga.jar ${D}${mozdir}/chrome
+ install -m 0644 chrome/minimo-skin-vga.manifest ${D}${mozdir}/chrome
+ install -m 0644 chrome/minimo-skin.jar ${D}${mozdir}/chrome
+ install -m 0644 chrome/minimo-skin.manifest ${D}${mozdir}/chrome
+ install -m 0644 chrome/minimo.jar ${D}${mozdir}/chrome
+ install -m 0644 chrome/minimo.manifest ${D}${mozdir}/chrome
+ install -m 0644 chrome/pippki.jar ${D}${mozdir}/chrome
+ install -m 0644 chrome/pippki.manifest ${D}${mozdir}/chrome
+ install -m 0644 chrome/toolkit.jar ${D}${mozdir}/chrome
+ install -m 0644 chrome/toolkit.manifest ${D}${mozdir}/chrome
+
+ install -d ${D}${mozdir}/components
+ install -m 0644 components/all.xpt ${D}${mozdir}/components
+ install -m 0644 components/nsHelperAppDlg.js ${D}${mozdir}/components
+ install -m 0644 components/nsProgressDialog.js ${D}${mozdir}/components
+
+ install -d ${D}${mozdir}/greprefs
+ install -m 0644 greprefs/all.js ${D}${mozdir}/greprefs
+ install -m 0644 greprefs/security-prefs.js ${D}${mozdir}/greprefs
+
+ install -d ${D}${mozdir}/res
+ install -m 0644 res/forms.css ${D}${mozdir}/res
+ install -m 0644 res/html.css ${D}${mozdir}/res
+ install -m 0644 res/quirk.css ${D}${mozdir}/res
+ install -m 0644 res/ua.css ${D}${mozdir}/res
+ install -m 0644 res/arrow.gif ${D}${mozdir}/res
+ install -m 0644 res/arrowd.gif ${D}${mozdir}/res
+ install -m 0644 res/broken-image.gif ${D}${mozdir}/res
+ install -m 0644 res/loading-image.gif ${D}${mozdir}/res
+ install -m 0644 res/charsetData.properties ${D}${mozdir}/res
+ install -m 0644 res/charsetalias.properties ${D}${mozdir}/res
+ install -m 0644 res/langGroups.properties ${D}${mozdir}/res
+ install -m 0644 res/language.properties ${D}${mozdir}/res
+ install -m 0644 res/unixcharset.properties ${D}${mozdir}/res
+
+ install -d ${D}${mozdir}/res/dtd
+ install -m 0644 res/dtd/xhtml11.dtd ${D}${mozdir}/res/dtd
+
+ install -d ${D}${mozdir}/res/entityTables
+ install -m 0644 res/entityTables/html40Latin1.properties ${D}${mozdir}/res/entityTables
+ install -m 0644 res/entityTables/html40Special.properties ${D}${mozdir}/res/entityTables
+ install -m 0644 res/entityTables/html40Symbols.properties ${D}${mozdir}/res/entityTables
+ install -m 0644 res/entityTables/htmlEntityVersions.properties ${D}${mozdir}/res/entityTables
+ install -m 0644 res/entityTables/transliterate.properties ${D}${mozdir}/res/entityTables
+
+ install -d ${D}${mozdir}/res/fonts
+ install -m 0644 res/fonts/fontEncoding.properties ${D}${mozdir}/res/fonts
+ install -m 0644 res/fonts/pangoFontEncoding.properties ${D}${mozdir}/res/fonts
+
+ install -d ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-audio.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-binary.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-find.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-image.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-menu.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-movie.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-sound.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-telnet.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-text.gif ${D}${mozdir}/res/html
+ install -m 0644 res/html/gopher-unknown.gif ${D}${mozdir}/res/html
+}
+
+FILES_${PN}-dbg += "${libdir}/mozilla-minimo/.debug*"
+FILES_${PN} += "${mozdir}"
diff --git a/meta-extras/packages/networkmanager/files/70NetworkManagerApplet.shbg b/meta-extras/packages/networkmanager/files/70NetworkManagerApplet.shbg
new file mode 100644
index 0000000000..8858b3e7c2
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/70NetworkManagerApplet.shbg
@@ -0,0 +1,4 @@
+#!/bin/sh
+# Wait for the desktop to say its finished loading
+dbus-wait org.matchbox_project.desktop Loaded
+exec /usr/bin/nm-applet
diff --git a/meta-extras/packages/networkmanager/files/99_networkmanager b/meta-extras/packages/networkmanager/files/99_networkmanager
new file mode 100644
index 0000000000..20cbcc1bca
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/99_networkmanager
@@ -0,0 +1 @@
+d root root 0700 /var/run/NetworkManager none
diff --git a/meta-extras/packages/networkmanager/files/NetworkManager b/meta-extras/packages/networkmanager/files/NetworkManager
new file mode 100644
index 0000000000..4522e0107b
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/NetworkManager
@@ -0,0 +1,43 @@
+#!/bin/sh
+#
+### BEGIN INIT INFO
+# Provides: NetworkManager
+# Required-Start: $remote_fs dbus hal
+# Required-Stop: $remote_fs dbus hal
+# Should-Start: $syslog
+# Should-Stop: $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: network connection manager
+# Description: Daemon for automatically switching network
+# connections to the best available connection.
+### END INIT INFO
+
+. /etc/profile
+
+case $1 in
+ 'start')
+ echo -n "Starting NetworkManager daemon: NetworkManager"
+ /usr/sbin/NetworkManager
+ /usr/sbin/NetworkManagerDispatcher
+ /usr/sbin/wpa_supplicant -u &
+ echo "."
+ ;;
+
+ 'stop')
+ echo -n "Stopping NetworkManager daemon: NetworkManager"
+ kill `ps |grep /usr/sbin/NetworkManagerDispatcher | grep -v grep | cut "-d " -f2`
+ kill `ps |grep /usr/sbin/NetworkManager | grep -v grep | cut "-d " -f2`
+ kill `ps |grep /usr/sbin/wpa_supplicant | grep -v grep | cut "-d " -f2`
+ echo "."
+ ;;
+
+ 'restart')
+ $0 stop
+ $0 start
+ ;;
+
+ *)
+ echo "Usage: $0 { start | stop | restart }"
+ ;;
+esac
diff --git a/meta-extras/packages/networkmanager/files/allow-disabling.patch b/meta-extras/packages/networkmanager/files/allow-disabling.patch
new file mode 100644
index 0000000000..10730e9fe5
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/allow-disabling.patch
@@ -0,0 +1,45 @@
+Allow interfaces to be ignored by networkmanager by creation of a
+/etc/network/nm-disabled-INTERFACENAME file.
+
+RP - 16/7/2008
+
+Index: trunk/src/backends/NetworkManagerDebian.c
+===================================================================
+--- trunk.orig/src/backends/NetworkManagerDebian.c 2008-07-15 19:23:11.000000000 +0100
++++ trunk/src/backends/NetworkManagerDebian.c 2008-07-15 19:37:05.000000000 +0100
+@@ -29,6 +29,7 @@
+
+ #include <stdio.h>
+ #include <sys/types.h>
++#include <sys/stat.h>
+ #include <signal.h>
+ #include <arpa/inet.h>
+ #include "NetworkManagerGeneric.h"
+@@ -374,12 +375,25 @@
+ /*
+ * nm_system_device_get_disabled
+ *
+- * Return whether the distro-specific system config tells us to use
+- * dhcp for this device.
++ * Return whether the distro-specific system config tells us to interact
++ * with this device.
+ *
+ */
+ gboolean nm_system_device_get_disabled (NMDevice *dev)
+ {
++ struct stat statbuf;
++ gchar *filepath;
++
++ g_return_val_if_fail (dev != NULL, FALSE);
++
++ filepath = g_strdup_printf (SYSCONFDIR"/network/nm-disabled-%s", nm_device_get_iface (dev));
++
++ if (stat(filepath, &statbuf) == 0) {
++ g_free(filepath);
++ return TRUE;
++ }
++
++ g_free(filepath);
+ return FALSE;
+ }
+
diff --git a/meta-extras/packages/networkmanager/files/applet-no-animation.patch b/meta-extras/packages/networkmanager/files/applet-no-animation.patch
new file mode 100644
index 0000000000..d437fd0fc9
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/applet-no-animation.patch
@@ -0,0 +1,234 @@
+Index: trunk/src/applet.c
+===================================================================
+--- trunk.orig/src/applet.c 2008-02-06 20:30:04.000000000 +0000
++++ trunk/src/applet.c 2008-02-06 20:46:59.000000000 +0000
+@@ -111,8 +111,6 @@
+
+ static void nma_init (NMApplet *applet)
+ {
+- applet->animation_id = 0;
+- applet->animation_step = 0;
+ applet->passphrase_dialog = NULL;
+ applet->icon_theme = NULL;
+ #ifdef ENABLE_NOTIFY
+@@ -1006,20 +1004,6 @@
+ }
+ }
+
+-static gboolean
+-vpn_animation_timeout (gpointer data)
+-{
+- NMApplet *applet = NM_APPLET (data);
+-
+- foo_set_icon (applet, applet->vpn_connecting_icons[applet->animation_step], ICON_LAYER_VPN);
+-
+- applet->animation_step++;
+- if (applet->animation_step >= NUM_VPN_CONNECTING_FRAMES)
+- applet->animation_step = 0;
+-
+- return TRUE;
+-}
+-
+ static void
+ vpn_connection_state_changed (NMVPNConnection *connection,
+ NMVPNConnectionState state,
+@@ -1030,10 +1014,6 @@
+
+ switch (state) {
+ case NM_VPN_CONNECTION_STATE_ACTIVATED:
+- if (applet->animation_id) {
+- g_source_remove (applet->animation_id);
+- applet->animation_id = 0;
+- }
+ foo_set_icon (applet, applet->vpn_lock_icon, ICON_LAYER_VPN);
+ // vpn_connection_info_set_last_attempt_success (info, TRUE);
+ break;
+@@ -1041,10 +1021,7 @@
+ case NM_VPN_CONNECTION_STATE_NEED_AUTH:
+ case NM_VPN_CONNECTION_STATE_CONNECT:
+ case NM_VPN_CONNECTION_STATE_IP_CONFIG_GET:
+- if (applet->animation_id == 0) {
+- applet->animation_step = 0;
+- applet->animation_id = g_timeout_add (100, vpn_animation_timeout, applet);
+- }
++ foo_set_icon (applet, applet->network_connecting_icon, ICON_LAYER_VPN);
+ break;
+ case NM_VPN_CONNECTION_STATE_FAILED:
+ // vpn_connection_info_set_last_attempt_success (info, FALSE);
+@@ -1053,10 +1030,6 @@
+ g_hash_table_remove (applet->vpn_connections, nm_vpn_connection_get_name (connection));
+ /* Fall through */
+ default:
+- if (applet->animation_id) {
+- g_source_remove (applet->animation_id);
+- applet->animation_id = 0;
+- }
+ foo_set_icon (applet, NULL, ICON_LAYER_VPN);
+ break;
+ }
+@@ -2295,45 +2268,6 @@
+ } FooAnimationTimeoutInfo;
+
+ static void
+-foo_animation_timeout_info_destroy (gpointer data)
+-{
+- g_slice_free (FooAnimationTimeoutInfo, data);
+-}
+-
+-static gboolean
+-foo_animation_timeout (gpointer data)
+-{
+- FooAnimationTimeoutInfo *info = (FooAnimationTimeoutInfo *) data;
+- NMApplet *applet = info->applet;
+- int stage = -1;
+-
+- switch (info->state) {
+- case NM_DEVICE_STATE_PREPARE:
+- stage = 0;
+- break;
+- case NM_DEVICE_STATE_CONFIG:
+- stage = 1;
+- break;
+- case NM_DEVICE_STATE_IP_CONFIG:
+- stage = 2;
+- break;
+- default:
+- break;
+- }
+-
+- if (stage >= 0)
+- foo_set_icon (applet,
+- applet->network_connecting_icons[stage][applet->animation_step],
+- ICON_LAYER_LINK);
+-
+- applet->animation_step++;
+- if (applet->animation_step >= NUM_CONNECTING_FRAMES)
+- applet->animation_step = 0;
+-
+- return TRUE;
+-}
+-
+-static void
+ foo_common_state_change (NMDevice *device, NMDeviceState state, NMApplet *applet)
+ {
+ FooAnimationTimeoutInfo *info;
+@@ -2345,11 +2279,7 @@
+ info = g_slice_new (FooAnimationTimeoutInfo);
+ info->applet = applet;
+ info->state = state;
+- applet->animation_step = 0;
+- applet->animation_id = g_timeout_add_full (G_PRIORITY_DEFAULT_IDLE,
+- 100, foo_animation_timeout,
+- info,
+- foo_animation_timeout_info_destroy);
++ foo_set_icon (applet, applet->network_connecting_icon, ICON_LAYER_LINK);
+ break;
+ case NM_DEVICE_STATE_ACTIVATED:
+ break;
+@@ -2602,12 +2532,6 @@
+ NMApplet *applet = NM_APPLET (user_data);
+ gboolean handled = FALSE;
+
+- applet->animation_step = 0;
+- if (applet->animation_id) {
+- g_source_remove (applet->animation_id);
+- applet->animation_id = 0;
+- }
+-
+ clear_active_connections (applet);
+ applet->active_connections = nm_client_get_active_connections (applet->nm_client);
+
+@@ -3166,17 +3090,8 @@
+ if (applet->wireless_100_icon)
+ g_object_unref (applet->wireless_100_icon);
+
+- for (i = 0; i < NUM_CONNECTING_STAGES; i++) {
+- int j;
+-
+- for (j = 0; j < NUM_CONNECTING_FRAMES; j++)
+- if (applet->network_connecting_icons[i][j])
+- g_object_unref (applet->network_connecting_icons[i][j]);
+- }
+-
+- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++)
+- if (applet->vpn_connecting_icons[i])
+- g_object_unref (applet->vpn_connecting_icons[i]);
++ if (applet->network_connecting_icon)
++ g_object_unref (applet->network_connecting_icon);
+
+ nma_icons_zero (applet);
+ }
+@@ -3196,16 +3111,7 @@
+ applet->wireless_75_icon = NULL;
+ applet->wireless_100_icon = NULL;
+
+- for (i = 0; i < NUM_CONNECTING_STAGES; i++)
+- {
+- int j;
+-
+- for (j = 0; j < NUM_CONNECTING_FRAMES; j++)
+- applet->network_connecting_icons[i][j] = NULL;
+- }
+-
+- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++)
+- applet->vpn_connecting_icons[i] = NULL;
++ applet->network_connecting_icon = NULL;
+
+ applet->icons_loaded = FALSE;
+ }
+@@ -3257,28 +3163,7 @@
+ ICON_LOAD(applet->wireless_75_icon, "nm-signal-75");
+ ICON_LOAD(applet->wireless_100_icon, "nm-signal-100");
+
+- for (i = 0; i < NUM_CONNECTING_STAGES; i++)
+- {
+- int j;
+-
+- for (j = 0; j < NUM_CONNECTING_FRAMES; j++)
+- {
+- char *name;
+-
+- name = g_strdup_printf ("nm-stage%02d-connecting%02d", i+1, j+1);
+- ICON_LOAD(applet->network_connecting_icons[i][j], name);
+- g_free (name);
+- }
+- }
+-
+- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++)
+- {
+- char *name;
+-
+- name = g_strdup_printf ("nm-vpn-connecting%02d", i+1);
+- ICON_LOAD(applet->vpn_connecting_icons[i], name);
+- g_free (name);
+- }
++ ICON_LOAD(applet->network_connecting_icon, "nm-connecting");
+
+ success = TRUE;
+
+Index: trunk/src/applet.h
+===================================================================
+--- trunk.orig/src/applet.h 2008-02-06 20:30:06.000000000 +0000
++++ trunk/src/applet.h 2008-02-06 20:46:05.000000000 +0000
+@@ -111,20 +111,12 @@
+ GdkPixbuf * wireless_50_icon;
+ GdkPixbuf * wireless_75_icon;
+ GdkPixbuf * wireless_100_icon;
+-#define NUM_CONNECTING_STAGES 3
+-#define NUM_CONNECTING_FRAMES 11
+- GdkPixbuf * network_connecting_icons[NUM_CONNECTING_STAGES][NUM_CONNECTING_FRAMES];
+-#define NUM_VPN_CONNECTING_FRAMES 14
+- GdkPixbuf * vpn_connecting_icons[NUM_VPN_CONNECTING_FRAMES];
++ GdkPixbuf * network_connecting_icon;
+ GdkPixbuf * vpn_lock_icon;
+
+ /* Active status icon pixbufs */
+ GdkPixbuf * icon_layers[ICON_LAYER_MAX + 1];
+
+- /* Animation stuff */
+- int animation_step;
+- guint animation_id;
+-
+ /* Direct UI elements */
+ #ifdef HAVE_STATUS_ICON
+ GtkStatusIcon * status_icon;
diff --git a/meta-extras/packages/networkmanager/files/applet-no-gnome.diff b/meta-extras/packages/networkmanager/files/applet-no-gnome.diff
new file mode 100644
index 0000000000..e098e8c9ed
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/applet-no-gnome.diff
@@ -0,0 +1,59 @@
+---
+ configure.ac | 3 +--
+ src/main.c | 8 ++++++++
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+Index: src/main.c
+===================================================================
+--- src/main.c.orig 2007-09-26 10:39:16.000000000 +0100
++++ src/main.c 2007-09-26 10:39:37.000000000 +0100
+@@ -27,7 +27,9 @@
+
+ #include <string.h>
+ #include <gtk/gtk.h>
++#if 0
+ #include <libgnomeui/libgnomeui.h>
++#endif
+ #include <glib/gi18n-lib.h>
+
+ #include "applet.h"
+@@ -36,11 +38,15 @@
+ int main (int argc, char *argv[])
+ {
+ NMApplet * applet;
++#if 0
+ GnomeProgram * program;
+
+ program = gnome_program_init ("nm-applet", VERSION, LIBGNOMEUI_MODULE,
+ argc, argv,
+ GNOME_PARAM_NONE, GNOME_PARAM_NONE);
++#else
++ gtk_init (&argc, &argv);
++#endif
+
+ bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR);
+ bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
+@@ -53,7 +59,9 @@ int main (int argc, char *argv[])
+ gtk_main ();
+
+ g_object_unref (applet);
++#if 0
+ g_object_unref (program);
++#endif
+
+ exit (0);
+ }
+Index: configure.ac
+===================================================================
+--- configure.ac.orig 2007-09-26 10:39:30.000000000 +0100
++++ configure.ac 2007-09-26 10:39:37.000000000 +0100
+@@ -65,8 +65,7 @@ PKG_CHECK_MODULES(NMA,
+ gtk+-2.0 >= 2.6
+ libglade-2.0
+ gconf-2.0
+- gnome-keyring-1
+- libgnomeui-2.0])
++ gnome-keyring-1])
+
+ ##### Find out the version of DBUS we're using
+ dbus_version=`pkg-config --modversion dbus-1`
diff --git a/meta-extras/packages/networkmanager/files/libnlfix.patch b/meta-extras/packages/networkmanager/files/libnlfix.patch
new file mode 100644
index 0000000000..69f4922ea0
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/libnlfix.patch
@@ -0,0 +1,29 @@
+Index: trunk/src/nm-netlink.c
+===================================================================
+--- trunk.orig/src/nm-netlink.c 2007-09-25 22:37:50.000000000 +0100
++++ trunk/src/nm-netlink.c 2009-05-16 12:44:26.000000000 +0100
+@@ -52,16 +52,20 @@
+ struct nl_handle *
+ nm_netlink_get_default_handle (void)
+ {
++ struct nl_cb *cb;
++
+ if (def_nl_handle)
+ return def_nl_handle;
+
+- def_nl_handle = nl_handle_alloc_nondefault (NL_CB_VERBOSE);
+- g_assert (def_nl_handle);
++ cb = nl_cb_alloc(NL_CB_VERBOSE);
++ def_nl_handle = nl_handle_alloc_cb (cb);
++ if (!def_nl_handle) {
++ nm_warning ("couldn't allocate netlink handle.");
++ return NULL;
++ }
+
+- nl_handle_set_pid (def_nl_handle, (pthread_self () << 16 | getpid ()));
+ if (nl_connect (def_nl_handle, NETLINK_ROUTE) < 0) {
+ nm_error ("couldn't connect to netlink: %s", nl_geterror ());
+- nl_handle_destroy (def_nl_handle);
+ return NULL;
+ }
+
diff --git a/meta-extras/packages/networkmanager/files/makefile-fix.patch b/meta-extras/packages/networkmanager/files/makefile-fix.patch
new file mode 100644
index 0000000000..5fbbf3a74a
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/makefile-fix.patch
@@ -0,0 +1,17 @@
+This line causes libtool to try and create a program which fails since there is no
+main(). This is hidden with libtool 1.5.10 but appears with 2.2.2.
+
+RP - 14/4/08
+
+Index: trunk/src/ppp-manager/Makefile.am
+===================================================================
+--- trunk.orig/src/ppp-manager/Makefile.am 2008-04-14 23:00:54.000000000 +0100
++++ trunk/src/ppp-manager/Makefile.am 2008-04-14 23:01:24.000000000 +0100
+@@ -25,7 +25,6 @@
+ $(top_builddir)/src/marshallers/libmarshallers.la
+
+ nm_pppd_plugindir = $(libdir)
+-nm_pppd_plugin_PROGRAMS = nm-pppd-plugin.so
+
+ nm_pppd_plugin_so_SOURCES = \
+ nm-pppd-plugin.c \
diff --git a/meta-extras/packages/networkmanager/files/nmutil-fix.patch b/meta-extras/packages/networkmanager/files/nmutil-fix.patch
new file mode 100644
index 0000000000..d8495bac40
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/nmutil-fix.patch
@@ -0,0 +1,12 @@
+Index: trunk/configure.ac
+===================================================================
+--- trunk.orig/configure.ac 2009-01-08 10:49:26.000000000 -0600
++++ trunk/configure.ac 2009-01-08 12:00:34.000000000 -0600
+@@ -62,6 +62,7 @@
+ glib-2.0 >= 2.10
+ NetworkManager >= 0.7.0
+ libnm_glib
++ libnm-util
+ gtk+-2.0 >= 2.6
+ libglade-2.0
+ gconf-2.0
diff --git a/meta-extras/packages/networkmanager/files/no-restarts.diff b/meta-extras/packages/networkmanager/files/no-restarts.diff
new file mode 100644
index 0000000000..20bdf82aab
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/no-restarts.diff
@@ -0,0 +1,21 @@
+Index: src/backends/NetworkManagerDebian.c
+===================================================================
+--- src/backends/NetworkManagerDebian.c (revision 2881)
++++ src/backends/NetworkManagerDebian.c (working copy)
+@@ -204,8 +204,6 @@
+ */
+ void nm_system_update_dns (void)
+ {
+- nm_spawn_process ("/usr/sbin/invoke-rc.d nscd restart");
+-
+ }
+
+
+@@ -218,7 +216,6 @@
+ */
+ void nm_system_restart_mdns_responder (void)
+ {
+- nm_spawn_process ("/usr/bin/killall -q -USR1 mDNSResponder");
+ }
+
+
diff --git a/meta-extras/packages/networkmanager/files/no_vpn.patch b/meta-extras/packages/networkmanager/files/no_vpn.patch
new file mode 100644
index 0000000000..49423e879f
--- /dev/null
+++ b/meta-extras/packages/networkmanager/files/no_vpn.patch
@@ -0,0 +1,13 @@
+Index: trunk/src/applet.c
+===================================================================
+--- trunk.orig/src/applet.c 2008-02-29 17:47:39.000000000 +0000
++++ trunk/src/applet.c 2008-02-29 17:48:38.000000000 +0000
+@@ -1783,7 +1783,7 @@
+ }
+
+ nma_menu_add_devices (menu, applet);
+- nma_menu_add_vpn_submenu (menu, applet);
++ //nma_menu_add_vpn_submenu (menu, applet);
+
+ gtk_widget_show_all (applet->menu);
+
diff --git a/meta-extras/packages/networkmanager/networkmanager-applet_svn.bb b/meta-extras/packages/networkmanager/networkmanager-applet_svn.bb
new file mode 100644
index 0000000000..1f0987011f
--- /dev/null
+++ b/meta-extras/packages/networkmanager/networkmanager-applet_svn.bb
@@ -0,0 +1,33 @@
+DESCRIPTION = "GTK+ applet for NetworkManager"
+HOMEPAGE = "http://projects.gnome.org/NetworkManager/"
+BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=NetworkManager&content="
+LICENSE = "GPLv2+ & LGPLv2.1+"
+DEPENDS = "networkmanager dbus-glib libglade gconf gnome-keyring"
+#TODO DEPENDS libnotify
+RDEPENDS = "networkmanager dbus-wait"
+PR = "r7"
+
+inherit gnome gtk-icon-cache
+
+SRC_URI = "svn://svn.gnome.org/svn/network-manager-applet/;module=trunk;proto=http \
+ file://applet-no-gnome.diff;patch=1;pnum=0 \
+ file://applet-no-animation.patch;patch=1 \
+ file://no_vpn.patch;patch=1 \
+ file://nmutil-fix.patch;patch=1 \
+ file://70NetworkManagerApplet.shbg"
+
+PV = "0.0+svnr${SRCREV}"
+
+S = "${WORKDIR}/trunk"
+
+FILES_${PN} += "${datadir}/nm-applet/ \
+ ${datadir}/gnome-vpn-properties/ \
+ ${datadir}/gnome/autostart/"
+
+do_install_append () {
+ install -d ${D}${sysconfdir}/X11/Xsession.d/
+ install -m 755 ${WORKDIR}/70NetworkManagerApplet.shbg ${D}${sysconfdir}/X11/Xsession.d/
+}
+
+#TODO: remove if libnotify in DEPENDS
+EXTRA_OECONF += "--without-libnotify"
diff --git a/meta-extras/packages/networkmanager/networkmanager_svn.bb b/meta-extras/packages/networkmanager/networkmanager_svn.bb
new file mode 100644
index 0000000000..40f04e497c
--- /dev/null
+++ b/meta-extras/packages/networkmanager/networkmanager_svn.bb
@@ -0,0 +1,51 @@
+DESCRIPTION = "NetworkManager"
+HOMEPAGE = "http://projects.gnome.org/NetworkManager/"
+BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=NetworkManager&content="
+SECTION = "net/misc"
+LICENSE = "GPLv2+ & LGPLv2+"
+PRIORITY = "optional"
+DEPENDS = "libnl dbus dbus-glib hal gconf-dbus wireless-tools ppp gnome-common polkit"
+RDEPENDS = "hal wpa-supplicant iproute2 dhcp-client"
+
+PV = "0.7+svnr${SRCREV}"
+PR = "r10"
+
+SRC_URI="svn://svn.gnome.org/svn/NetworkManager/;module=trunk;proto=http \
+ file://no-restarts.diff;patch=1;pnum=0 \
+ file://libnlfix.patch;patch=1 \
+ file://makefile-fix.patch;patch=1 \
+ file://allow-disabling.patch;patch=1 \
+ file://NetworkManager \
+ file://99_networkmanager"
+
+EXTRA_OECONF = "--with-distro=debian \
+ --with-ip=/sbin/ip"
+# TODO: will /bin/ip from busybox do?
+
+S = "${WORKDIR}/trunk"
+
+inherit autotools pkgconfig update-rc.d
+
+INITSCRIPT_NAME = "NetworkManager"
+INITSCRIPT_PARAMS = "defaults 22"
+
+do_install_append () {
+ install -d ${D}/etc/default/volatiles
+ install -m 0644 ${WORKDIR}/99_networkmanager ${D}/etc/default/volatiles
+ # This overwrites the provided init script
+ install -m 0755 ${WORKDIR}/NetworkManager ${D}/etc/init.d/
+ rmdir ${D}/var/run/NetworkManager
+ rmdir ${D}/var/run
+}
+
+PACKAGES =+ "libnmutil libnmglib"
+
+FILES_libnmutil += "${libdir}/libnm-util.so.*"
+
+FILES_libnmglib += "${libdir}/libnm_glib.so.*"
+
+FILES_${PN}-dev = "${includedir}/* \
+ ${libdir}/*.so \
+ ${libdir}/*.a \
+ ${libdir}/pkgconfig/*.pc \
+ ${datadir}/NetworkManager/gdb-cmd"
diff --git a/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch b/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch
new file mode 100644
index 0000000000..4ebc3dea8d
--- /dev/null
+++ b/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch
@@ -0,0 +1,120 @@
+From 594157753a24d0575aaf948dc0e9500f6bdb2178 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(-)
+
+Index: qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/g++.conf
+===================================================================
+--- qt-embedded-linux-opensource-src-4.5.3.orig/mkspecs/common/g++.conf
++++ qt-embedded-linux-opensource-src-4.5.3/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=
+ 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,11 +30,11 @@ QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAG
+ 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_LINK_C = gcc
+-QMAKE_LINK_C_SHLIB = gcc
+-QMAKE_LFLAGS +=
++QMAKE_LINK = $(OE_QMAKE_LINK)
++QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK)
++QMAKE_LINK_C = $(OE_QMAKE_CC)
++QMAKE_LINK_C_SHLIB = $(OE_QMAKE_CC)
++QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS)
+ QMAKE_LFLAGS_RELEASE += -Wl,-O1
+ QMAKE_LFLAGS_DEBUG +=
+ QMAKE_LFLAGS_APP +=
+@@ -43,7 +43,7 @@ QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SH
+ QMAKE_LFLAGS_SONAME += -Wl,-soname,
+ QMAKE_LFLAGS_THREAD +=
+ QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
+-QMAKE_RPATH = -Wl,-rpath,
++QMAKE_RPATH = -Wl,-rpath-link,
+
+ QMAKE_PCH_OUTPUT_EXT = .gch
+
+Index: qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/linux.conf
+===================================================================
+--- qt-embedded-linux-opensource-src-4.5.3.orig/mkspecs/common/linux.conf
++++ qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/linux.conf
+@@ -7,27 +7,27 @@ QMAKE_CXXFLAGS_THREAD += $$QMAKE_CFLAGS_
+
+ 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_OBJCOPY = objcopy
++QMAKE_AR = $(OE_QMAKE_AR) cqs
++QMAKE_OBJCOPY = $(OE_QMAKE_OBJCOPY)
+ QMAKE_RANLIB =
+
+ QMAKE_TAR = tar -cf
+@@ -39,7 +39,7 @@ 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
diff --git a/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf b/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf
new file mode 100644
index 0000000000..f58481a693
--- /dev/null
+++ b/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf
@@ -0,0 +1 @@
+include(../linux-g++/qmake.conf)
diff --git a/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch b/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch
new file mode 100644
index 0000000000..4197dbbf64
--- /dev/null
+++ b/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch
@@ -0,0 +1,22 @@
+Index: qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp
+===================================================================
+--- qtopia-core-opensource-src-4.3.1.orig/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:45:26.000000000 +0200
++++ qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:57:09.000000000 +0200
+@@ -416,7 +416,7 @@
+ t << "\n\t" << mkdir_p_asstring(destdir) << "\n\t";
+ if(!project->isEmpty("QMAKE_PRE_LINK"))
+ t << var("QMAKE_PRE_LINK") << "\n\t";
+- t << "$(LINK) $(LFLAGS) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS)";
++ t << "$(LINK) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS) $(LFLAGS)";
+ if(!project->isEmpty("QMAKE_POST_LINK"))
+ t << "\n\t" << var("QMAKE_POST_LINK");
+ t << endl << endl;
+@@ -430,7 +430,7 @@
+ t << mkdir_p_asstring(destdir) << "\n\t";
+ if(!project->isEmpty("QMAKE_PRE_LINK"))
+ t << var("QMAKE_PRE_LINK") << "\n\t";
+- t << "$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)";
++ t << "$(LINK) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS) $(LFLAGS)";
+ if(!project->isEmpty("QMAKE_POST_LINK"))
+ t << "\n\t" << var("QMAKE_POST_LINK");
+ t << endl << endl;
diff --git a/meta-extras/packages/qmake/qmake2-cross_2.10a.bb b/meta-extras/packages/qmake/qmake2-cross_2.10a.bb
new file mode 100644
index 0000000000..60f738b9ce
--- /dev/null
+++ b/meta-extras/packages/qmake/qmake2-cross_2.10a.bb
@@ -0,0 +1,74 @@
+DESCRIPTION = "TrollTech Makefile Generator"
+PRIORITY = "optional"
+HOMEPAGE = "http://www.trolltech.com"
+SECTION = "devel"
+LICENSE = "GPL"
+PR = "r2"
+
+QTVER = "qt-embedded-linux-opensource-src-4.5.3"
+
+SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTVER}.tar.gz \
+ file://0001-fix-mkspecs.patch;patch=1 \
+ file://use-lflags-last.patch;patch=1 \
+ file://linux-oe-qmake.conf"
+S = "${WORKDIR}/${QTVER}"
+
+# we need the real target system here
+CROSS_SYS := "${TARGET_SYS}"
+CROSS_BINDIR := "${STAGING_BINDIR_CROSS}"
+inherit autotools cross
+
+export QTDIR = "${S}"
+EXTRA_OEMAKE = "-e"
+EXTRA_OECONF = "-opensource"
+
+do_configure() {
+ # Install the OE build templates
+ for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++
+ do
+ install -d ${S}/mkspecs/$template
+ install -m 0644 ${WORKDIR}/linux-oe-qmake.conf ${S}/mkspecs/$template/qmake.conf
+ ln -sf ../linux-g++/qplatformdefs.h ${S}/mkspecs/$template/qplatformdefs.h
+ done
+
+ QMAKESPEC=
+ PLATFORM=${HOST_OS}-oe-g++
+ export PLATFORM
+ # yes, TARGET_SYS is correct, because this is a 'cross'-qmake-native :) :M:
+ export OE_QMAKE_CC="${CC}"
+ export OE_QMAKE_CFLAGS="${CFLAGS}"
+ export OE_QMAKE_CXX="${CXX}"
+ export OE_QMAKE_CXXFLAGS="-fno-exceptions -fno-rtti ${CXXFLAGS}"
+ export OE_QMAKE_LDFLAGS="${LDFLAGS}"
+ export OE_QMAKE_LINK="${CCLD}"
+ export OE_QMAKE_AR="${AR}"
+ export OE_QMAKE_OBJCOPY="${OBJCOPY}"
+ export OE_QMAKE_STRIP="${STRIP}"
+ export OE_QMAKE_UIC="${STAGING_BINDIR_NATIVE}/uic"
+ export OE_QMAKE_MOC="${STAGING_BINDIR_NATIVE}/moc"
+ export OE_QMAKE_RCC="non-existant"
+ export OE_QMAKE_QMAKE="${STAGING_BINDIR_NATIVE}/qmake"
+ export OE_QMAKE_RPATH="-Wl,-rpath-link,"
+ echo yes | ./configure -prefix ${STAGING_DIR}/${CROSS_SYS}/qt4 ${EXTRA_OECONF} || die "Configuring qt failed"
+}
+
+do_compile() {
+ :
+}
+
+do_install() {
+ install -d ${D}${CROSS_BINDIR}/
+ install -m 0755 bin/qmake ${D}${CROSS_BINDIR}/qmake2
+ install -m 0755 bin/qmake ${D}${CROSS_BINDIR}/qmake-qt4
+ install -d ${D}${STAGING_DIR}/${CROSS_SYS}/qt4/
+ cp -PfR mkspecs ${D}${STAGING_DIR}/${CROSS_SYS}/qt4/
+ install -d ${D}${STAGING_DIR}/${HOST_SYS}/qt4/
+ cp -PfR mkspecs ${D}${STAGING_DIR}/${HOST_SYS}/qt4/
+}
+
+sysroot_stage_all_append() {
+ sysroot_stage_dir ${D}/${STAGING_DIR_NATIVE}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}/qt4
+ sysroot_stage_dir ${D}/${STAGING_DIR_TARGET}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_TARGET}/qt4
+}
+
+
diff --git a/meta-extras/packages/smart/smart_1.1.bb b/meta-extras/packages/smart/smart_1.1.bb
new file mode 100644
index 0000000000..8f89eb3e00
--- /dev/null
+++ b/meta-extras/packages/smart/smart_1.1.bb
@@ -0,0 +1,29 @@
+DESCRIPTION = "Next generation package handling tool."
+HOMEPAGE = "http://labix.org/smart/"
+LICENSE = "GPL v2+"
+DEPENDS = "zlib python desktop-file-utils-native python-pygtk rpm"
+
+SRC_URI = "http://labix.org/download/smart/smart-1.1.tar.bz2"
+
+S = "${WORKDIR}/smart-${PV}"
+
+inherit distutils
+
+FILES_${PN} += "/usr/share/lib/${PYTHON_DIR}/site-packages/smart/interfaces/images/*.png \
+ /usr/share/lib/${PYTHON_DIR/site-packages/smart/backends/"
+
+FILES_${PN}-doc += "/usr/share/share/man/man8/smart.8"
+
+FILES_${PN}-locale += "/usr/share/share/locale/es_ES/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/it/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/de/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/ru/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/sv/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/fr/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/hu/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/zh_TW/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/pt_BR/LC_MESSAGES/smart.mo \
+ /usr/share/share/locale/zh_CN/LC_MESSAGES/smart.mo"
+
+FILES_${PN}-dbg += "/usr/lib/${PYTHON_DIR}/site-packages/smart/backends/rpm/.debug \
+ /usr/lib/${PYTHON_DIR}/site-packages/smart/backends/deb/.debug \" \ No newline at end of file
diff --git a/meta-extras/packages/uicmoc/uicmoc4-native.inc b/meta-extras/packages/uicmoc/uicmoc4-native.inc
new file mode 100644
index 0000000000..b6933628d9
--- /dev/null
+++ b/meta-extras/packages/uicmoc/uicmoc4-native.inc
@@ -0,0 +1,67 @@
+DESCRIPTION = "User-Interface-, Meta-Object-, and Resource Compiler for Qt/[X11|Mac|Embedded] version 4.x"
+DEPENDS = "zlib-native"
+SECTION = "libs"
+HOMEPAGE = "http://www.trolltech.com"
+PRIORITY = "optional"
+LICENSE = "GPL"
+PR = "r1"
+
+SRC_URI = "ftp://ftp.trolltech.com/qt/source/qtopia-core-opensource-src-${PV}.tar.gz"
+S = "${WORKDIR}/qtopia-core-opensource-src-${PV}"
+
+inherit native
+
+EXTRA_OECONF = "-prefix ${STAGING_DIR_NATIVE}/qt4 \
+ -qt-libjpeg -qt-gif -system-zlib \
+ -no-nis -no-cups -no-exceptions \
+ -no-accessibility -no-libjpeg \
+ -no-nas-sound -no-sm \
+ -no-xshape -no-xinerama \
+ -no-xcursor -no-xrandr \
+ -no-xrender -no-fontconfig \
+ -no-tablet -no-xkb \
+ -no-libpng \
+ -verbose -release -fast -static \
+ -L ${STAGING_LIBDIR_NATIVE} \
+ -qt3support "
+# yank default -e
+EXTRA_OEMAKE = " "
+
+do_configure() {
+ sed -i 's:^QT += xml qt3support$:QT += xml qt3support network:' "${S}"/src/tools/uic3/uic3.pro
+ echo yes | ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}"
+}
+
+TOBUILD = "\
+ src/tools/moc \
+ src/corelib \
+ src/sql \
+ src/qt3support \
+ src/xml \
+ src/tools/uic \
+ src/tools/rcc \
+ src/network \
+ src/gui \
+ src/tools/uic3 \
+"
+
+do_compile() {
+ unset CC CXX CFLAGS LFLAGS CXXFLAGS CPPFLAGS
+ for i in ${TOBUILD}; do
+ cd ${S}/$i && oe_runmake CC="${CC}" CXX="${CXX}"
+ done
+}
+
+do_install() {
+ install -d ${D}${bindir}/
+ install -m 0755 bin/moc ${D}${bindir}//moc4
+ install -m 0755 bin/uic ${D}${bindir}/uic4
+ install -m 0755 bin/uic3 ${D}${bindir}/uic34
+ install -m 0755 bin/rcc $${D}${bindir}/rcc4
+ install -d ${D}/qt4/
+ install -m 0644 tools/porting/src/q3porting.xml ${D}/qt4/
+}
+
+sysroot_stage_all_append() {
+ sysroot_stage_dir ${D}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_TARGET}/qt4
+}
diff --git a/meta-extras/packages/uicmoc/uicmoc4-native_4.3.2.bb b/meta-extras/packages/uicmoc/uicmoc4-native_4.3.2.bb
new file mode 100644
index 0000000000..1950f63068
--- /dev/null
+++ b/meta-extras/packages/uicmoc/uicmoc4-native_4.3.2.bb
@@ -0,0 +1 @@
+require uicmoc4-native.inc