summaryrefslogtreecommitdiff
path: root/recipes
diff options
context:
space:
mode:
Diffstat (limited to 'recipes')
-rw-r--r--recipes/autoconf/autoconf-native_2.59.bb11
-rw-r--r--recipes/autoconf/autoconf-native_2.61.bb12
-rw-r--r--recipes/autoconf/autoconf-native_2.63.bb12
-rw-r--r--recipes/autoconf/autoconf.inc8
-rw-r--r--recipes/autoconf/autoconf_2.61.bb4
-rw-r--r--recipes/autoconf/autoconf_2.63.bb4
-rw-r--r--recipes/automake/automake-native.inc11
-rw-r--r--recipes/automake/automake-native_1.10.2.bb3
-rw-r--r--recipes/automake/automake-native_1.11.1.bb5
-rw-r--r--recipes/automake/automake-native_1.9.6.bb3
-rw-r--r--recipes/automake/automake.inc6
-rw-r--r--recipes/dri/libdrm_git.bb7
-rw-r--r--recipes/e17/e-wm_svn.bb10
-rw-r--r--recipes/e17/exalt_svn.bb4
-rw-r--r--recipes/ekiga/ekiga/rgb16.patch51
-rw-r--r--recipes/ekiga/ekiga_git.bb24
-rw-r--r--recipes/ekiga/opal_3.8.0.bb25
-rw-r--r--recipes/ekiga/ptlib/rgb16.patch142
-rw-r--r--recipes/ekiga/ptlib_2.6.5.bb12
-rw-r--r--recipes/ekiga/ptlib_2.8.0.bb33
-rw-r--r--recipes/gd/gd_2.0.35+2.0.36rc1.bb (renamed from recipes/gd/gd_2.0.33.bb)7
-rw-r--r--recipes/gnu-config/gnu-config-native_20050701.bb16
-rw-r--r--recipes/gnu-config/gnu-config/uclibc.patch21
-rw-r--r--recipes/gnu-config/gnu-config_20050701.bb13
-rw-r--r--recipes/libyaml/libyaml_0.1.2.bb5
-rw-r--r--recipes/linux/linux-davinci/hawkboard/defconfig140
-rw-r--r--recipes/linux/linux-kirkwood/openrd-client/defconfig34
-rw-r--r--recipes/linux/linux-openmoko-2.6.32/0010-Simplify-the-JBT6k74-driver.patch667
-rw-r--r--recipes/linux/linux-openmoko-2.6.32/0011-Don-t-choke-if-userspace-provides-a-pixel-clock-valu.patch79
-rw-r--r--recipes/linux/linux-openmoko-2.6.32_git.bb4
-rw-r--r--recipes/mesa/mesa-dri_git.bb6
-rw-r--r--recipes/meta/meta-toolchain.bb2
-rw-r--r--recipes/mozilla/firefox-3.6/0001-Remove-Werror-from-build.patch43
-rw-r--r--recipes/mozilla/firefox-3.6/0002-Fix-security-cross-compile-cpu-detection-error.patch42
-rw-r--r--recipes/mozilla/firefox-3.6/010_FPU_IS_ARM_FPA_xslt.diff56
-rw-r--r--recipes/mozilla/firefox-3.6/Bug339782.additional.fix.diff39
-rw-r--r--recipes/mozilla/firefox-3.6/Bug385583.nspr.jmp_buf.eabi.diff33
-rw-r--r--recipes/mozilla/firefox-3.6/Bug405992.atomic.nspr.diff48
-rw-r--r--recipes/mozilla/firefox-3.6/configure-wchart.patch11
-rw-r--r--recipes/mozilla/firefox-3.6/jemalloc-tls.patch28
-rw-r--r--recipes/mozilla/firefox-3.6/linkage-problem.patch14
-rw-r--r--recipes/mozilla/firefox-3.6/mozconfig72
-rw-r--r--recipes/mozilla/firefox-3.6/plugins-dir.patch16
-rw-r--r--recipes/mozilla/firefox-3.6/security-cross.patch64
-rw-r--r--recipes/mozilla/firefox_3.6.bb38
-rw-r--r--recipes/opkg/opkg.inc2
-rw-r--r--recipes/opkg/update-alternatives-merge.inc3
-rw-r--r--recipes/pango/pango.inc3
-rw-r--r--recipes/perl/libdbd-sqlite-perl_1.29.bb27
-rw-r--r--recipes/qt4/qt4-embedded.inc2
-rw-r--r--recipes/qt4/qt4-x11-free-gles/linux.conf1
-rw-r--r--recipes/qt4/qt4-x11-free-gles_4.6.2.bb2
-rw-r--r--recipes/qt4/qt4-x11-free.inc2
-rw-r--r--recipes/qt4/qt4.inc6
-rw-r--r--recipes/shr/initscripts-shr/mountdevsubfs.sh13
-rw-r--r--recipes/shr/initscripts-shr_0.0.1.bb2
-rw-r--r--recipes/tasks/task-nas-server.bb10
-rw-r--r--recipes/tasks/task-shr-minimal.bb6
-rw-r--r--recipes/u-boot/u-boot-git/0006-cmd_itest.c-also-support-environment-variables-as-a.patch39
-rw-r--r--recipes/u-boot/u-boot-git/0007-cmd_setexpr-allow-memory-addresses-and-env-vars-in-e.patch6
-rw-r--r--recipes/u-boot/u-boot_git.bb3
-rw-r--r--recipes/udev/attr_2.4.44.bb4
-rw-r--r--recipes/vorbis-tools/vorbis-tools-1.1.1/remove-deprecated-curl-option.patch12
-rw-r--r--recipes/vorbis-tools/vorbis-tools_1.2.0.bb (renamed from recipes/vorbis-tools/vorbis-tools_1.1.1.bb)6
-rw-r--r--recipes/wireshark/files/fix-configure.patch72
-rw-r--r--recipes/wireshark/files/ieee80215.4.patch20
-rw-r--r--recipes/wireshark/wireshark_1.2.6.bb (renamed from recipes/wireshark/wireshark_1.0.5.bb)10
-rw-r--r--recipes/xinput-calibrator/xinput-calibrator.inc7
-rw-r--r--recipes/xinput-calibrator/xinput-calibrator_0.5.0.bb11
-rw-r--r--recipes/xinput-calibrator/xinput-calibrator_0.6.0.bb14
-rw-r--r--recipes/xinput-calibrator/xinput-calibrator_git.bb20
-rw-r--r--recipes/xorg-xserver/xorg-xserver-common.inc8
72 files changed, 1918 insertions, 278 deletions
diff --git a/recipes/autoconf/autoconf-native_2.59.bb b/recipes/autoconf/autoconf-native_2.59.bb
deleted file mode 100644
index a2b9dfa2d0..0000000000
--- a/recipes/autoconf/autoconf-native_2.59.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require autoconf_${PV}.bb
-
-PR = "${INC_PR}.0"
-
-DEPENDS = "m4-native gnu-config-native"
-RDEPENDS_${PN} = "m4-native gnu-config-native"
-
-S = "${WORKDIR}/autoconf-${PV}"
-FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/autoconf-${PV}"
-
-inherit native
diff --git a/recipes/autoconf/autoconf-native_2.61.bb b/recipes/autoconf/autoconf-native_2.61.bb
deleted file mode 100644
index b7480cdc11..0000000000
--- a/recipes/autoconf/autoconf-native_2.61.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require autoconf_${PV}.bb
-PR = "${INC_PR}.0"
-
-DEPENDS = "m4-native gnu-config-native"
-RDEPENDS_${PN} = "m4-native gnu-config-native"
-
-SRC_URI += "file://fix_path_xtra.patch;patch=1"
-
-S = "${WORKDIR}/autoconf-${PV}"
-FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/autoconf-${PV}"
-
-inherit native
diff --git a/recipes/autoconf/autoconf-native_2.63.bb b/recipes/autoconf/autoconf-native_2.63.bb
deleted file mode 100644
index b7480cdc11..0000000000
--- a/recipes/autoconf/autoconf-native_2.63.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require autoconf_${PV}.bb
-PR = "${INC_PR}.0"
-
-DEPENDS = "m4-native gnu-config-native"
-RDEPENDS_${PN} = "m4-native gnu-config-native"
-
-SRC_URI += "file://fix_path_xtra.patch;patch=1"
-
-S = "${WORKDIR}/autoconf-${PV}"
-FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/autoconf-${PV}"
-
-inherit native
diff --git a/recipes/autoconf/autoconf.inc b/recipes/autoconf/autoconf.inc
index a561bf1e25..17602858cb 100644
--- a/recipes/autoconf/autoconf.inc
+++ b/recipes/autoconf/autoconf.inc
@@ -5,7 +5,10 @@ HOMEPAGE = "http://www.gnu.org/software/autoconf/"
SECTION = "devel"
DEPENDS += "m4-native"
RDEPENDS_${PN} = "m4 perl gnu-config"
-INC_PR = "r8"
+DEPENDS_virtclass-native = "m4-native gnu-config-native"
+RDEPENDS_${PN}_virtclass-native = "m4-native gnu-config-native"
+
+INC_PR = "r9"
SRC_URI = "${GNU_MIRROR}/autoconf/autoconf-${PV}.tar.bz2;name=autoconf \
file://program_prefix.patch;patch=1"
@@ -20,3 +23,6 @@ do_configure_prepend () {
export ac_cv_prog_gnu_m4="${ac_cv_prog_gnu_m4=yes}"
fi
}
+
+PARALLEL_MAKE = ""
+BBCLASSEXTEND = "native"
diff --git a/recipes/autoconf/autoconf_2.61.bb b/recipes/autoconf/autoconf_2.61.bb
index 53733a90f8..e104bad6d2 100644
--- a/recipes/autoconf/autoconf_2.61.bb
+++ b/recipes/autoconf/autoconf_2.61.bb
@@ -2,8 +2,6 @@ require autoconf.inc
PR = "${INC_PR}.1"
-PARALLEL_MAKE = ""
-
SRC_URI += "file://autoreconf-include.patch;patch=1 \
file://autoreconf-exclude.patch;patch=1 \
file://autoreconf-foreign.patch;patch=1 \
@@ -12,3 +10,5 @@ SRC_URI += "file://autoreconf-include.patch;patch=1 \
file://config-site.patch;patch=1 \
file://autoconf-dont-execute-perl.patch;patch=1 \
"
+
+SRC_URI_append_virtclass-native = " file://fix_path_xtra.patch;patch=1"
diff --git a/recipes/autoconf/autoconf_2.63.bb b/recipes/autoconf/autoconf_2.63.bb
index e26c004f64..8c81aff658 100644
--- a/recipes/autoconf/autoconf_2.63.bb
+++ b/recipes/autoconf/autoconf_2.63.bb
@@ -4,10 +4,10 @@ PR = "${INC_PR}.0"
DEFAULT_PREFERENCE = "-1"
-PARALLEL_MAKE = ""
-
SRC_URI += "file://autoreconf-exclude.patch;patch=1 \
file://autoreconf-foreign.patch;patch=1 \
file://autoheader-nonfatal-warnings.patch;patch=1 \
file://autoreconf-gnuconfigize.patch;patch=1 \
file://config-site.patch;patch=1"
+
+SRC_URI_append_virtclass-native = " file://fix_path_xtra.patch;patch=1"
diff --git a/recipes/automake/automake-native.inc b/recipes/automake/automake-native.inc
deleted file mode 100644
index 4e2ac41d81..0000000000
--- a/recipes/automake/automake-native.inc
+++ /dev/null
@@ -1,11 +0,0 @@
-SECTION = "devel"
-require automake_${PV}.bb
-DEPENDS += "autoconf-native"
-RDEPENDS_automake-native += "autoconf-native perl-native-runtime"
-
-inherit native
-
-do_stage () {
- oe_runmake install
- install -d ${datadir}/aclocal
-}
diff --git a/recipes/automake/automake-native_1.10.2.bb b/recipes/automake/automake-native_1.10.2.bb
deleted file mode 100644
index 92c861f49c..0000000000
--- a/recipes/automake/automake-native_1.10.2.bb
+++ /dev/null
@@ -1,3 +0,0 @@
-PV := "${PV}"
-
-require automake-native.inc
diff --git a/recipes/automake/automake-native_1.11.1.bb b/recipes/automake/automake-native_1.11.1.bb
deleted file mode 100644
index a7857c562d..0000000000
--- a/recipes/automake/automake-native_1.11.1.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-PV := "${PV}"
-
-require automake-native.inc
-
-DEFAULT_PREFERENCE = "-1"
diff --git a/recipes/automake/automake-native_1.9.6.bb b/recipes/automake/automake-native_1.9.6.bb
deleted file mode 100644
index 92c861f49c..0000000000
--- a/recipes/automake/automake-native_1.9.6.bb
+++ /dev/null
@@ -1,3 +0,0 @@
-PV := "${PV}"
-
-require automake-native.inc
diff --git a/recipes/automake/automake.inc b/recipes/automake/automake.inc
index 74957cc9e9..662f9f8722 100644
--- a/recipes/automake/automake.inc
+++ b/recipes/automake/automake.inc
@@ -2,6 +2,8 @@ DESCRIPTION = "A tool for automatically generating Makefiles."
LICENSE = "GPL"
HOMEPAGE = "http://www.gnu.org/software/automake/"
SECTION = "devel"
+DEPENDS_virtclass-native = "autoconf-native"
+RDEPENDS_automake-native = "autoconf-native perl-native-runtime"
RDEPENDS_automake += "\
autoconf \
perl \
@@ -27,7 +29,7 @@ RDEPENDS_automake += "\
perl-module-text-parsewords \
perl-module-vars "
SRC_URI = "${GNU_MIRROR}/automake/automake-${PV}.tar.bz2"
-INC_PR = "r2"
+INC_PR = "r3"
AUTOMAKE_API = "${@".".join(bb.data.getVar("PV",d,1).split(".")[0:2])}"
inherit autotools
@@ -47,3 +49,5 @@ do_install_append () {
ln -sf automake-${AUTOMAKE_API} ${D}${bindir}/automake
install -d ${D}${datadir}/aclocal
}
+
+BBCLASSEXTEND = "native"
diff --git a/recipes/dri/libdrm_git.bb b/recipes/dri/libdrm_git.bb
index 305f952d50..641f740dd0 100644
--- a/recipes/dri/libdrm_git.bb
+++ b/recipes/dri/libdrm_git.bb
@@ -1,7 +1,7 @@
SECTION = "x11/base"
LICENSE = "MIT"
SRC_URI = "git://anongit.freedesktop.org/mesa/drm;protocol=git;branch=master"
-SRC_URI_om-gta02 = "git://git.bitwiz.org.uk/libdrm.git;protocol=git;branch=glamo"
+SRC_URI_shr = "git://git.bitwiz.org.uk/libdrm.git;protocol=git;branch=glamo"
PROVIDES = "drm"
DEPENDS = "libpthread-stubs virtual/kernel"
@@ -11,14 +11,15 @@ PV = "2.4.18+gitr${SRCREV}"
PR = "r0"
SRCREV_pn-libdrm ?= "a5c8f55397377994ceeb76ed0ff148ff89eb3a1b"
-SRCREV_pn-libdrm_om-gta02 ?= "b5aec2bd3df736216e86eae28e278172d3ba3362"
+SRCREV_pn-libdrm_shr ?= "b5aec2bd3df736216e86eae28e278172d3ba3362"
DEFAULT_PREFERENCE = "-1"
-DEFAULT_PREFERENCE_om-gta02 = "1"
+DEFAULT_PREFERENCE_shr = "1"
S = "${WORKDIR}/git"
EXTRA_OECONF_append_om-gta02 = " --enable-glamo-experimental-api --disable-radeon --disable-intel"
+EXTRA_OECONF_append_om-gta01 = " --disable-radeon --disable-intel"
inherit autotools pkgconfig
diff --git a/recipes/e17/e-wm_svn.bb b/recipes/e17/e-wm_svn.bb
index 7d68ff9d35..d74fbb546f 100644
--- a/recipes/e17/e-wm_svn.bb
+++ b/recipes/e17/e-wm_svn.bb
@@ -3,7 +3,7 @@ DEPENDS = "eet evas ecore edje efreet edbus"
LICENSE = "MIT BSD"
SRCNAME = "e"
PV = "0.16.999.060+svnr${SRCPV}"
-PR = "r12"
+PR = "r13"
inherit e update-alternatives
@@ -36,14 +36,6 @@ do_configure_prepend() {
autopoint
}
-do_stage() {
- autotools_stage_all
- for I in `find ${STAGING_LIBDIR}/enlightenment -name "*.la" -print`; do rm -f $I; done
- for I in `find ${STAGING_LIBDIR}/enlightenment -name "*.a" -print`; do rm -f $I; done
- for I in `find ${STAGING_LIBDIR_CROSS}/enlightenment -name "*.la" -print`; do rm -f $I; done
- for I in `find ${STAGING_LIBDIR_CROSS}/enlightenment -name "*.a" -print`; do rm -f $I; done
-}
-
do_install_append() {
# customising - should rather make this simple upstream
install -m 755 ${WORKDIR}/enlightenment_start.oe ${D}/${bindir}
diff --git a/recipes/e17/exalt_svn.bb b/recipes/e17/exalt_svn.bb
index d024d758e2..9dc3b03b59 100644
--- a/recipes/e17/exalt_svn.bb
+++ b/recipes/e17/exalt_svn.bb
@@ -25,9 +25,5 @@ do_install_append() {
install -m 0644 org.e.Exalt.service ${D}${datadir}/dbus-1/system-services/
}
-do_stage() {
- autotools_stage_all
-}
-
FILES_${PN} += "${datadir}/dbus-1"
diff --git a/recipes/ekiga/ekiga/rgb16.patch b/recipes/ekiga/ekiga/rgb16.patch
new file mode 100644
index 0000000000..b9c9ab284a
--- /dev/null
+++ b/recipes/ekiga/ekiga/rgb16.patch
@@ -0,0 +1,51 @@
+From: Ying-Chun Liu (PaulLiu) <paulliu@debian.org>
+Subject: Add RGB16 support
+Last-Update: 2010-02-26
+Index: ekiga-3.2.6/lib/gui/xwindow.cpp
+===================================================================
+--- ekiga-3.2.6.orig/lib/gui/xwindow.cpp 2010-02-26 07:53:47.000000000 -0500
++++ ekiga-3.2.6/lib/gui/xwindow.cpp 2010-02-26 07:57:32.000000000 -0500
+@@ -82,6 +82,7 @@
+ {"RGBA", 1, 0, LSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000}, //RGBA *
+ {"BGR32", 1, 4, MSBFirst, 0x0000FF00, 0x00FF0000, 0xFF000000}, //BGRA
+ {"BGRA", 1, 0, LSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF}, //BGRA *
++ {"RGB16", 16, 2, LSBFirst, 0x0000F800, 0x000007E0, 0x0000001F}, //RGB16
+ {NULL, 0, 0, 0, 0, 0, 0}
+ };
+
+@@ -1021,6 +1022,17 @@
+ }
+ }
+ }
++ else if (xwattributes.depth == 16) {
++ _depth = 16;
++ if (!XMatchVisualInfo (_display, DefaultScreen (_display), _depth, TrueColor, &_XVInfo)) {
++ PTRACE(4, "X11\tCould not find visual with colordepth of " << _depth << " bits per pixel");
++ _depth = 24;
++ if (!XMatchVisualInfo (_display, DefaultScreen (_display), _depth, TrueColor, &_XVInfo)) {
++ PTRACE(1, "X11\tCould neither find visual with colordepth of 16 bits per pixel nor with 24 bits per pixel");
++ return false;
++ }
++ }
++ }
+ else {
+ _depth = 24;
+ if (!XMatchVisualInfo (_display, DefaultScreen (_display), _depth, TrueColor, &_XVInfo)) {
+Index: ekiga-3.2.6/lib/pixops/pixops.c
+===================================================================
+--- ekiga-3.2.6.orig/lib/pixops/pixops.c 2010-02-26 07:58:06.000000000 -0500
++++ ekiga-3.2.6/lib/pixops/pixops.c 2010-02-26 07:59:22.000000000 -0500
+@@ -157,6 +157,13 @@
+ INNER_LOOP(4, 4, p32=(guint32*)dest;*p32=*((guint32*)p));
+ }
+ }
++ else if (src_channels == 2)
++ {
++ if (dest_channels == 2)
++ {
++ INNER_LOOP (2, 2, dest[0]=p[0];dest[1]=p[1]);
++ }
++ }
+ }
+ }
+
diff --git a/recipes/ekiga/ekiga_git.bb b/recipes/ekiga/ekiga_git.bb
index c5ec7cd83c..91e73d26ff 100644
--- a/recipes/ekiga/ekiga_git.bb
+++ b/recipes/ekiga/ekiga_git.bb
@@ -4,19 +4,30 @@ LICENSE = "GPLv2"
ARM_INSTRUCTION_SET = "arm"
DEFAULT_PREFERENCE = "1"
-PV = "3.2.6+git"
-PR = "r2+gitr${SRCREV}"
-SRCREV = "4af42b2f4fd8e6b52c2c578bb4a5d5ad9c26e8f2"
+PV = "3.3.1+git"
+PR = "r3+gitr${SRCREV}"
+SRCREV = "c81cabbee7901b6643907d08f9a530308044ec22"
inherit gnome
-SRC_URI = "git://git.gnome.org/ekiga;protocol=git;branch=gnome-2-26"
+SRC_URI = "git://git.gnome.org/ekiga;protocol=git;branch=master \
+ file://rgb16.patch;patch=1 \
+"
+
S = "${WORKDIR}/git"
-DEPENDS += " avahi libnotify eds-dbus libgnome gtkmm libsigc++-2.0 gstreamer gst-plugins-good gst-plugins-base gst-plugins-bad opal ptlib gnome-doc-utils"
+DEPENDS += " boost avahi libnotify eds-dbus libgnome gtkmm libsigc++-2.0 gstreamer gst-plugins-good gst-plugins-base gst-plugins-bad opal ptlib gnome-doc-utils"
RDEPENDS += "gst-plugin-app gst-plugin-video4linux2 opal ptlib"
-EXTRA_OECONF = "--enable-static-libs --disable-ldap --disable-gnome --enable-gstreamer --disable-gdu --disable-scrollkeeper "
+EXTRA_OECONF = " \
+# --enable-static-libs \
+ --disable-ldap \
+ --disable-gnome \
+ --enable-gstreamer \
+ --disable-gdu \
+ --disable-scrollkeeper \
+ --with-boost-signals=boost_signals-mt \
+"
do_configure_prepend() {
touch gnome-doc-utils.make
@@ -27,5 +38,6 @@ do_configure_append() {
find ${S} -name Makefile | xargs sed -i s:'-I/usr/include':'-I${STAGING_INCDIR}':g
}
+FILES_${PN}-dbg += "${libdir}/ekiga/*/plugins/.debug ${libdir}/ekiga/*/.debug"
FILES_${PN} += "${datadir}/dbus-1 ${datadir}/icons"
diff --git a/recipes/ekiga/opal_3.8.0.bb b/recipes/ekiga/opal_3.8.0.bb
new file mode 100644
index 0000000000..371d6aedad
--- /dev/null
+++ b/recipes/ekiga/opal_3.8.0.bb
@@ -0,0 +1,25 @@
+DESCRIPTION = "Open Phone Abstraction Library, implementation of the ITU H.323 teleconferencing protocol, and successor of the openh323 library."
+LICENSE = "MPL"
+
+inherit gnome
+
+DEPENDS += " ffmpeg ptlib virtual/libsdl openldap"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/opalvoip/opal-${PV}.tar.bz2;name=opal \
+ "
+SRC_URI[opal.md5sum] = "6fd24f0250974a234c5a3d239fc95d21"
+SRC_URI[opal.sha256sum] = "80af07c69c7ec0402c1360ab03818ffe7629d1ef80e7dbb8cf66d40e0c95c365"
+
+EXTRA_OECONF = "--enable-localgsm --disable-spandsp "
+ARM_INSTRUCTION_SET = "arm"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+do_configure() {
+ libtoolize --force
+ gnu-configize
+ oe_runconf
+}
+
+FILES_${PN} += "${libdir}/opal-${PV}/*/*.so ${libdir}/opal-${PV}/*/*/*.so"
+FILES_${PN}-dbg += "${libdir}/opal-${PV}/*/.debug ${libdir}/opal-${PV}/*/*/.debug"
diff --git a/recipes/ekiga/ptlib/rgb16.patch b/recipes/ekiga/ptlib/rgb16.patch
new file mode 100644
index 0000000000..f908337e3f
--- /dev/null
+++ b/recipes/ekiga/ptlib/rgb16.patch
@@ -0,0 +1,142 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 10_RGB565.patch.dpatch by Ying-Chun Liu (PaulLiu) <paulliu@debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Add support of bpp 16 mode
+
+@DPATCH@
+diff -urNad ptlib-2.6.5~/src/ptlib/common/vconvert.cxx ptlib-2.6.5/src/ptlib/common/vconvert.cxx
+--- ptlib-2.6.5~/src/ptlib/common/vconvert.cxx 2010-02-26 03:25:23.000000000 -0500
++++ ptlib-2.6.5/src/ptlib/common/vconvert.cxx 2010-02-26 03:54:32.000000000 -0500
+@@ -135,6 +135,11 @@
+ unsigned redOffset,
+ unsigned blueOffset
+ ) const;
++ PBoolean YUV420PtoRGB565(
++ const BYTE * yuv,
++ BYTE * rgb,
++ PINDEX * bytesReturned
++ ) const;
+ PBoolean SwapRedAndBlue(
+ const BYTE * src,
+ BYTE * dst,
+@@ -1657,6 +1662,92 @@
+ return PTrue;
+ }
+
++PBoolean PStandardColourConverter::YUV420PtoRGB565(const BYTE * srcFrameBuffer,
++ BYTE * dstFrameBuffer,
++ PINDEX * bytesReturned) const
++{
++ if (srcFrameBuffer == dstFrameBuffer)
++ return PFalse; // Cannot do in-place conversion
++ static const unsigned rgbIncrement = 2;
++
++ unsigned height = PMIN(srcFrameHeight, dstFrameHeight)&(UINT_MAX-1); // Must be even
++ unsigned width = PMIN(srcFrameWidth, dstFrameWidth)&(UINT_MAX-1);
++
++ unsigned yplanesize = srcFrameWidth*srcFrameHeight;
++ const BYTE *yplane = srcFrameBuffer; // 1 byte Y (luminance) for each pixel
++ const BYTE *uplane = yplane+yplanesize; // 1 byte U for a block of 4 pixels
++ const BYTE *vplane = uplane+(yplanesize/4); // 1 byte V for a block of 4 pixels
++
++ BYTE * dstScanLine = dstFrameBuffer;
++
++ unsigned int srcPixpos[4] = { 0, 1, srcFrameWidth, srcFrameWidth + 1 };
++ unsigned int dstPixpos[4] = { 0, rgbIncrement, dstFrameWidth*rgbIncrement, (dstFrameWidth+1)*rgbIncrement };
++
++ if (verticalFlip) {
++ dstScanLine += (dstFrameHeight - 2) * dstFrameWidth * rgbIncrement;
++ dstPixpos[0] = dstFrameWidth*rgbIncrement;
++ dstPixpos[1] = (dstFrameWidth +1)*rgbIncrement;
++ dstPixpos[2] = 0;
++ dstPixpos[3] = 1*rgbIncrement;
++ }
++
++ for (unsigned y = 0; y < height; y += 2)
++ {
++ BYTE * dstPixelGroup = dstScanLine;
++ for (unsigned x = 0; x < width; x += 2)
++ {
++ // The RGB value without luminance
++ long cb = *uplane-128;
++ long cr = *vplane-128;
++ long rd = FIX(1.40200) * cr + ONE_HALF;
++ long gd = -FIX(0.34414) * cb -FIX(0.71414) * cr + ONE_HALF;
++ long bd = FIX(1.77200) * cb + ONE_HALF;
++
++ // Add luminance to each of the 4 pixels
++
++ for (unsigned p = 0; p < 4; p++)
++ {
++ int yvalue = *(yplane + srcPixpos[p]);
++
++ int l = yvalue << SCALEBITS;
++
++ int r = (l+rd)>>SCALEBITS;
++ int g = (l+gd)>>SCALEBITS;
++ int b = (l+bd)>>SCALEBITS;
++
++ BYTE * rgpPtr = dstPixelGroup + dstPixpos[p];
++ WORD r16,g16,b16;
++ WORD color;
++ WORD *colorptr=NULL;
++
++ r16 = ( (LIMIT(r)) >> 3) & 0x001f;
++ g16 = ( (LIMIT(g)) >> 2) & 0x003f;
++ b16 = ( (LIMIT(b)) >> 3) & 0x001f;
++ color = ((r16 << 11) & (0xf800))
++ | ((g16 << 5 ) & (0x07e0))
++ | ((b16 ) & (0x001f));
++ colorptr = (WORD *)(rgpPtr);
++ *colorptr = color;
++ }
++
++ yplane += 2;
++ dstPixelGroup += rgbIncrement*2;
++
++ uplane++;
++ vplane++;
++ }
++
++ yplane += srcFrameWidth;
++
++ dstScanLine += (verticalFlip?-2:2)*rgbIncrement*dstFrameWidth;
++ }
++
++ if (bytesReturned != NULL)
++ *bytesReturned = dstFrameBytes;
++
++ return PTrue;
++}
++
+ PSTANDARD_COLOUR_CONVERTER(SBGGR8,RGB24)
+ {
+ return SBGGR8toRGB(srcFrameBuffer, dstFrameBuffer, bytesReturned);
+@@ -1687,6 +1778,15 @@
+ return YUV420PtoRGB(srcFrameBuffer, dstFrameBuffer, bytesReturned, 4, 2, 0);
+ }
+
++PSTANDARD_COLOUR_CONVERTER(YUV420P,RGB565)
++{
++ return YUV420PtoRGB565(srcFrameBuffer, dstFrameBuffer, bytesReturned);
++}
++
++PSTANDARD_COLOUR_CONVERTER(YUV420P,RGB16)
++{
++ return YUV420PtoRGB565(srcFrameBuffer, dstFrameBuffer, bytesReturned);
++}
+
+ static void SwapRedAndBlueRow(const BYTE * srcRowPtr,
+ BYTE * dstRowPtr,
+diff -urNad ptlib-2.6.5~/src/ptlib/common/videoio.cxx ptlib-2.6.5/src/ptlib/common/videoio.cxx
+--- ptlib-2.6.5~/src/ptlib/common/videoio.cxx 2010-02-26 03:25:23.000000000 -0500
++++ ptlib-2.6.5/src/ptlib/common/videoio.cxx 2010-02-26 03:52:10.000000000 -0500
+@@ -99,6 +99,7 @@
+ { "YUV411P", 12 },
+ { "RGB565", 16 },
+ { "RGB555", 16 },
++ { "RGB16", 16 },
+ { "YUV410", 10 },
+ { "YUV410P", 10 },
+ { "Grey", 8 },
diff --git a/recipes/ekiga/ptlib_2.6.5.bb b/recipes/ekiga/ptlib_2.6.5.bb
index 5466292361..a81b2ead0a 100644
--- a/recipes/ekiga/ptlib_2.6.5.bb
+++ b/recipes/ekiga/ptlib_2.6.5.bb
@@ -1,11 +1,15 @@
DESCRIPTION = "Portable Tools Libary"
LICENSE = "MPL"
+PR = "r1"
+
inherit gnome
DEPENDS += "libgsm openldap openssl expat virtual/libsdl alsa-lib"
-SRC_URI = "${SOURCEFORGE_MIRROR}/opalvoip/ptlib-${PV}.tar.bz2"
+SRC_URI = "${SOURCEFORGE_MIRROR}/opalvoip/ptlib-${PV}.tar.bz2 \
+ file://rgb16.patch;patch=1 \
+"
do_configure() {
libtoolize --force
@@ -25,10 +29,4 @@ do_install_append() {
FILES_${PN} += "${libdir}/ptlib-${PV}/*/*/*.so"
-do_stage() {
- autotools_stage_all
-}
-
-
-
diff --git a/recipes/ekiga/ptlib_2.8.0.bb b/recipes/ekiga/ptlib_2.8.0.bb
new file mode 100644
index 0000000000..5adedc594d
--- /dev/null
+++ b/recipes/ekiga/ptlib_2.8.0.bb
@@ -0,0 +1,33 @@
+DESCRIPTION = "Portable Tools Libary"
+LICENSE = "MPL"
+
+inherit gnome
+
+DEPENDS += "libgsm openldap openssl expat virtual/libsdl alsa-lib"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/opalvoip/ptlib-${PV}.tar.bz2;name=ptlib \
+"
+SRC_URI[ptlib.md5sum] = "862ffac32bebbde97ca20320c5b478c6"
+SRC_URI[ptlib.sha256sum] = "e5acadb55d1abd69163b8797bedabc592a567360da79f93dad185988338a5bd3"
+
+EXTRA_OECONF = " --enable-exceptions "
+
+do_configure() {
+ libtoolize --force
+ gnu-configize
+ oe_runconf
+}
+
+do_compile_append() {
+ sed -i -e s:${STAGING_DIR_TARGET}::g \
+ -e s:/${TARGET_SYS}::g \
+ ptlib.pc
+}
+
+do_install_append() {
+ chmod +x ${D}${libdir}/*
+}
+
+FILES_${PN} += "${libdir}/ptlib-${PV}/*/*/*.so"
+
+
diff --git a/recipes/gd/gd_2.0.33.bb b/recipes/gd/gd_2.0.35+2.0.36rc1.bb
index 7e47b0883e..efba70e9d5 100644
--- a/recipes/gd/gd_2.0.33.bb
+++ b/recipes/gd/gd_2.0.35+2.0.36rc1.bb
@@ -4,8 +4,11 @@ DESCRIPTION = "gd is a library used to create PNG, JPEG, or WBMP images."
DEPENDS = "libpng jpeg zlib"
PR = "r2"
-SRC_URI = "http://www.boutell.com/gd/http/gd-${PV}.tar.gz"
-S = "${WORKDIR}/gd-${PV}"
+SRC_URI = "http://www.libgd.org/releases/gd-2.0.36RC1.tar.gz;name=src"
+SRC_URI[src.md5sum] = "39ac48e6d5e0012a3bd2248a0102f209"
+SRC_URI[src.sha256sum] = "dd7c1795271221b9237769b96b8cec7fbdc5db7b8954d864ead51fc1296a6ac8"
+
+S = "${WORKDIR}/gd-2.0.36RC1"
inherit autotools binconfig gettext
diff --git a/recipes/gnu-config/gnu-config-native_20050701.bb b/recipes/gnu-config/gnu-config-native_20050701.bb
deleted file mode 100644
index 43df124f7f..0000000000
--- a/recipes/gnu-config/gnu-config-native_20050701.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SECTION = "base"
-require gnu-config_${PV}.bb
-
-inherit native
-
-FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gnu-config"
-
-do_stage () {
- install -d ${STAGING_DATADIR}/gnu-config/
- install -d ${STAGING_BINDIR}/
- cat ${WORKDIR}/gnu-configize.in | \
- sed -e 's,@gnu-configdir@,${STAGING_DATADIR}/gnu-config,' \
- -e 's,@autom4te_perllibdir@,${STAGING_DATADIR}/autoconf,' > ${STAGING_BINDIR}/gnu-configize
- chmod 755 ${STAGING_BINDIR}/gnu-configize
- install -m 0644 config.guess config.sub ${STAGING_DATADIR}/gnu-config/
-}
diff --git a/recipes/gnu-config/gnu-config/uclibc.patch b/recipes/gnu-config/gnu-config/uclibc.patch
deleted file mode 100644
index 20a3b11f2f..0000000000
--- a/recipes/gnu-config/gnu-config/uclibc.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- config.sub.orig 2004-05-14 19:38:36.000000000 -0500
-+++ config.sub 2004-05-14 19:39:17.000000000 -0500
-@@ -118,7 +118,7 @@
- # Here we must recognize all the valid KERNEL-OS combinations.
- maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
- case $maybe_os in
-- nto-qnx* | linux-gnu* | kfreebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
-+ nto-qnx* | linux-gnu* | linux-uclibc* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
-@@ -1135,7 +1135,8 @@
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
-+ | -mingw32* | -linux-gnu* | -linux-uclibc* \
-+ | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
diff --git a/recipes/gnu-config/gnu-config_20050701.bb b/recipes/gnu-config/gnu-config_20050701.bb
index 8ee0a32120..c6a75ac9c0 100644
--- a/recipes/gnu-config/gnu-config_20050701.bb
+++ b/recipes/gnu-config/gnu-config_20050701.bb
@@ -6,7 +6,7 @@ INHIBIT_DEFAULT_DEPS = "1"
FIXEDSRCDATE = "${@bb.data.getVar('FILE', d, 1).split('_')[-1].split('.')[0]}"
PV = "0.1+cvs${FIXEDSRCDATE}"
-PR = "r5"
+PR = "r6"
SRC_URI = "cvs://anonymous@cvs.sv.gnu.org/cvsroot/config;module=config;method=pserver;date=${FIXEDSRCDATE} \
file://config-guess-uclibc.patch;patch=1 \
@@ -23,10 +23,17 @@ do_install () {
${D}${bindir}
cat ${WORKDIR}/gnu-configize.in | \
sed -e 's,@gnu-configdir@,${datadir}/gnu-config,g' \
- -e 's,@autom4te_perllibdir@,${datadir}/autoconf,g' \
- -e 's,/usr/bin/perl,${bindir}/perl,g' > ${D}${bindir}/gnu-configize
+ -e 's,@autom4te_perllibdir@,${datadir}/autoconf,g' > ${D}${bindir}/gnu-configize
+ # In the native case we want the system perl as perl-native can't have built yet
+ if [ "${BUILD_ARCH}" != "${TARGET_ARCH}" ]; then
+ cat ${WORKDIR}/gnu-configize.in | \
+ sed -e 's,/usr/bin/perl,${bindir}/perl,g' > ${D}${bindir}/gnu-configize
+ fi
chmod 755 ${D}${bindir}/gnu-configize
install -m 0644 config.guess config.sub ${D}${datadir}/gnu-config/
}
FILES_${PN} = "${bindir} ${datadir}/gnu-config"
+
+BBCLASSEXTEND = "native"
+NATIVE_INSTALL_WORKS = "1"
diff --git a/recipes/libyaml/libyaml_0.1.2.bb b/recipes/libyaml/libyaml_0.1.2.bb
index 0ab816bd33..43dad92087 100644
--- a/recipes/libyaml/libyaml_0.1.2.bb
+++ b/recipes/libyaml/libyaml_0.1.2.bb
@@ -2,12 +2,9 @@ DESCRIPTION = "LibYAML is a YAML parser and emitter written in C."
HOMEPAGE = "http://pyyaml.org/wiki/LibYAML"
SECTION = "libs/devel"
LICENSE = "MIT"
+PR = "r1"
SRC_URI = "http://pyyaml.org/download/libyaml/yaml-${PV}.tar.gz"
S = "${WORKDIR}/yaml-${PV}"
inherit autotools
-
-do_stage() {
- autotools_stage_all
-}
diff --git a/recipes/linux/linux-davinci/hawkboard/defconfig b/recipes/linux/linux-davinci/hawkboard/defconfig
index 1952db3929..63ce472d0c 100644
--- a/recipes/linux/linux-davinci/hawkboard/defconfig
+++ b/recipes/linux/linux-davinci/hawkboard/defconfig
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.32-rc6
-# Tue Jan 5 14:21:28 2010
+# Mon Mar 1 20:45:34 2010
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -128,7 +128,7 @@ CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_BLOCK=y
CONFIG_LBDAF=y
-# CONFIG_BLK_DEV_BSG is not set
+CONFIG_BLK_DEV_BSG=y
# CONFIG_BLK_DEV_INTEGRITY is not set
#
@@ -422,23 +422,125 @@ CONFIG_NETFILTER_ADVANCED=y
#
# Core Netfilter Configuration
#
-# CONFIG_NETFILTER_NETLINK_QUEUE is not set
-# CONFIG_NETFILTER_NETLINK_LOG is not set
-# CONFIG_NF_CONNTRACK is not set
-# CONFIG_NETFILTER_XTABLES is not set
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_CT_ACCT=y
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CT_PROTO_DCCP=m
+CONFIG_NF_CT_PROTO_GRE=m
+CONFIG_NF_CT_PROTO_SCTP=m
+CONFIG_NF_CT_PROTO_UDPLITE=m
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NETFILTER_TPROXY=m
+CONFIG_NETFILTER_XTABLES=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
# CONFIG_IP_VS is not set
#
# IP: Netfilter Configuration
#
-# CONFIG_NF_DEFRAG_IPV4 is not set
+CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_NF_CONNTRACK_IPV4=m
+CONFIG_NF_CONNTRACK_PROC_COMPAT=y
# CONFIG_IP_NF_QUEUE is not set
-# CONFIG_IP_NF_IPTABLES is not set
-# CONFIG_IP_NF_ARPTABLES is not set
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_ADDRTYPE=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_LOG=m
+CONFIG_IP_NF_TARGET_ULOG=m
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_NEEDED=y
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PROTO_DCCP=m
+CONFIG_NF_NAT_PROTO_GRE=m
+CONFIG_NF_NAT_PROTO_UDPLITE=m
+CONFIG_NF_NAT_PROTO_SCTP=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
#
# IPv6: Netfilter Configuration
#
+# CONFIG_NF_CONNTRACK_IPV6 is not set
# CONFIG_IP6_NF_QUEUE is not set
# CONFIG_IP6_NF_IPTABLES is not set
# CONFIG_IP_DCCP is not set
@@ -460,6 +562,7 @@ CONFIG_NETFILTER_ADVANCED=y
# CONFIG_PHONET is not set
# CONFIG_IEEE802154 is not set
# CONFIG_NET_SCHED is not set
+CONFIG_NET_CLS_ROUTE=y
# CONFIG_DCB is not set
#
@@ -489,8 +592,9 @@ CONFIG_LIB80211_CRYPT_TKIP=m
#
# Generic Driver Options
#
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-# CONFIG_DEVTMPFS is not set
+CONFIG_UEVENT_HELPER_PATH=""
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=m
@@ -660,6 +764,7 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
# CONFIG_SCSI_ISCSI_ATTRS is not set
+# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
@@ -1769,7 +1874,7 @@ CONFIG_JBD=y
CONFIG_FS_MBCACHE=y
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
-# CONFIG_FS_POSIX_ACL is not set
+CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=m
# CONFIG_XFS_QUOTA is not set
# CONFIG_XFS_POSIX_ACL is not set
@@ -1788,6 +1893,7 @@ CONFIG_INOTIFY_USER=y
# CONFIG_AUTOFS_FS is not set
CONFIG_AUTOFS4_FS=m
# CONFIG_FUSE_FS is not set
+CONFIG_GENERIC_ACL=y
#
# Caches
@@ -1818,7 +1924,7 @@ CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
+CONFIG_TMPFS_POSIX_ACL=y
# CONFIG_HUGETLB_PAGE is not set
# CONFIG_CONFIGFS_FS is not set
CONFIG_MISC_FILESYSTEMS=y
@@ -2073,7 +2179,7 @@ CONFIG_CRYPTO_ECB=m
#
# Digest
#
-# CONFIG_CRYPTO_CRC32C is not set
+CONFIG_CRYPTO_CRC32C=m
# CONFIG_CRYPTO_GHASH is not set
# CONFIG_CRYPTO_MD4 is not set
# CONFIG_CRYPTO_MD5 is not set
@@ -2132,13 +2238,17 @@ CONFIG_CRC_T10DIF=m
# CONFIG_CRC_ITU_T is not set
CONFIG_CRC32=y
# CONFIG_CRC7 is not set
-# CONFIG_LIBCRC32C is not set
+CONFIG_LIBCRC32C=m
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_DECOMPRESS_GZIP=y
CONFIG_DECOMPRESS_BZIP2=y
CONFIG_DECOMPRESS_LZMA=y
CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
diff --git a/recipes/linux/linux-kirkwood/openrd-client/defconfig b/recipes/linux/linux-kirkwood/openrd-client/defconfig
index 59ed843d21..661408b962 100644
--- a/recipes/linux/linux-kirkwood/openrd-client/defconfig
+++ b/recipes/linux/linux-kirkwood/openrd-client/defconfig
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.33-rc1
-# Sat Jan 9 15:57:17 2010
+# Sun Feb 28 20:26:16 2010
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -701,8 +701,9 @@ CONFIG_MAC80211_RC_DEFAULT="minstrel"
#
# Generic Driver Options
#
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-# CONFIG_DEVTMPFS is not set
+CONFIG_UEVENT_HELPER_PATH=""
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
@@ -856,7 +857,8 @@ CONFIG_MISC_DEVICES=y
# CONFIG_AD525X_DPOT is not set
# CONFIG_PHANTOM is not set
# CONFIG_SGI_IOC4 is not set
-# CONFIG_TIFM_CORE is not set
+CONFIG_TIFM_CORE=y
+CONFIG_TIFM_7XX1=y
# CONFIG_ICS932S401 is not set
# CONFIG_ENCLOSURE_SERVICES is not set
# CONFIG_HP_ILO is not set
@@ -1234,9 +1236,22 @@ CONFIG_USB_NET_INT51X1=m
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
-# CONFIG_PPP is not set
-# CONFIG_SLIP is not set
-# CONFIG_NET_FC is not set
+CONFIG_PPP=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_MPPE=m
+CONFIG_PPPOE=m
+CONFIG_PPPOL2TP=m
+CONFIG_SLIP=m
+CONFIG_SLIP_COMPRESSED=y
+CONFIG_SLHC=m
+CONFIG_SLIP_SMART=y
+CONFIG_SLIP_MODE_SLIP6=y
+CONFIG_NET_FC=y
CONFIG_NETCONSOLE=m
CONFIG_NETCONSOLE_DYNAMIC=y
CONFIG_NETPOLL=y
@@ -2255,6 +2270,8 @@ CONFIG_SDIO_UART=y
# MMC/SD/SDIO Host Controller Drivers
#
CONFIG_MMC_SDHCI=y
+# CONFIG_MMC_SDHCI_PCI is not set
+# CONFIG_MMC_SDHCI_PLTFM is not set
# CONFIG_MMC_AT91 is not set
# CONFIG_MMC_ATMELMCI is not set
CONFIG_MMC_TIFM_SD=y
@@ -2418,6 +2435,7 @@ CONFIG_AUTOFS_FS=m
CONFIG_AUTOFS4_FS=m
CONFIG_FUSE_FS=m
CONFIG_CUSE=m
+CONFIG_GENERIC_ACL=y
#
# Caches
@@ -2453,7 +2471,7 @@ CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
+CONFIG_TMPFS_POSIX_ACL=y
# CONFIG_HUGETLB_PAGE is not set
CONFIG_CONFIGFS_FS=m
CONFIG_MISC_FILESYSTEMS=y
diff --git a/recipes/linux/linux-openmoko-2.6.32/0010-Simplify-the-JBT6k74-driver.patch b/recipes/linux/linux-openmoko-2.6.32/0010-Simplify-the-JBT6k74-driver.patch
new file mode 100644
index 0000000000..ca0c2af15b
--- /dev/null
+++ b/recipes/linux/linux-openmoko-2.6.32/0010-Simplify-the-JBT6k74-driver.patch
@@ -0,0 +1,667 @@
+From cb84d543b9465a8ea48b504b1dfb745c6682a50e Mon Sep 17 00:00:00 2001
+From: Thomas White <taw@bitwiz.org.uk>
+Date: Sun, 28 Feb 2010 15:20:57 +0100
+Subject: [PATCH 1/2] Simplify the JBT6k74 driver
+
+Simplify the JBT6k74 driver
+
+We don't need all the native sleep states - they just complicate things. Instead, just
+use the LDO "power switch" to send it firmly to sleep and wake it up in a virgin state
+each time.
+
+Signed-off-by: Thomas White <taw@bitwiz.org.uk>
+---
+ drivers/mfd/glamo/glamo-display.c | 116 ++++++++++++------------
+ drivers/mfd/glamo/glamo-display.h | 2 +
+ drivers/mfd/glamo/glamo-drm-private.h | 10 ++
+ drivers/mfd/glamo/glamo-kms-fb.c | 54 ++----------
+ drivers/video/backlight/jbt6k74.c | 160 ++++++++-------------------------
+ include/linux/jbt6k74.h | 1 -
+ 6 files changed, 115 insertions(+), 228 deletions(-)
+
+diff --git a/drivers/mfd/glamo/glamo-display.c b/drivers/mfd/glamo/glamo-display.c
+index 34a665a..a384c8b 100644
+--- a/drivers/mfd/glamo/glamo-display.c
++++ b/drivers/mfd/glamo/glamo-display.c
+@@ -239,14 +239,6 @@ static int glamo_run_lcd_script(struct glamodrm_handle *gdrm,
+ }
+
+
+-extern void jbt6k74_action(int val);
+-
+-/* Power on/off */
+-static void glamo_crtc_dpms(struct drm_crtc *crtc, int mode)
+-{
+-}
+-
+-
+ static bool glamo_crtc_mode_fixup(struct drm_crtc *crtc,
+ struct drm_display_mode *mode,
+ struct drm_display_mode *adjusted_mode)
+@@ -275,6 +267,12 @@ static int glamo_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y,
+ gcrtc = to_glamo_crtc(crtc);
+ gdrm = gcrtc->gdrm; /* Here it is! */
+
++ if ( !gcrtc->pixel_clock_on ) {
++ printk(KERN_WARNING "[glamo-drm] Refusing to set base while "
++ "pixel clock is off.\n");
++ return -EBUSY;
++ }
++
+ gfb = to_glamo_framebuffer(crtc->fb);
+ obj = gfb->obj;
+ gobj = obj->driver_private;
+@@ -306,6 +304,12 @@ static int glamo_crtc_mode_set(struct drm_crtc *crtc,
+ gcrtc = to_glamo_crtc(crtc);
+ gdrm = gcrtc->gdrm; /* Here it is! */
+
++ if ( !gcrtc->pixel_clock_on ) {
++ printk(KERN_WARNING "[glamo-drm] Refusing to set mode while "
++ "pixel clock is off.\n");
++ return -EBUSY;
++ }
++
+ glamo_lcd_cmd_mode(gdrm, 1);
+
+ glamo_engine_reclock(gdrm->glamo_core, GLAMO_ENGINE_LCD, mode->clock);
+@@ -354,10 +358,47 @@ static int glamo_crtc_mode_set(struct drm_crtc *crtc,
+
+ glamo_crtc_mode_set_base(crtc, 0, 0, old_fb);
+
++ gcrtc->current_mode = *mode;
++ gcrtc->current_mode_set = 1;
++ gcrtc->current_fb = old_fb;
++
+ return 0;
+ }
+
+
++extern void jbt6k74_action(int val);
++
++/* This is not the right place to switch power on/off, because the helper
++ * stuff ends up calling this before/after setting the mode. We can't
++ * set modes with the display off (although backlight off would be OK) */
++static void glamo_crtc_dpms(struct drm_crtc *crtc, int mode)
++{
++ /* do nothing */
++}
++
++
++void glamo_lcd_power(struct glamodrm_handle *gdrm, int mode)
++{
++ struct drm_crtc *crtc = gdrm->crtc;
++ struct glamo_crtc *gcrtc = to_glamo_crtc(crtc);
++
++ if ( mode ) {
++ glamo_engine_enable(gdrm->glamo_core, GLAMO_ENGINE_LCD);
++ gcrtc->pixel_clock_on = 1;
++ jbt6k74_action(1);
++ if ( gcrtc->current_mode_set ) {
++ glamo_crtc_mode_set(crtc, &gcrtc->current_mode,
++ &gcrtc->current_mode, 0, 0,
++ gcrtc->current_fb);
++ }
++ } else {
++ jbt6k74_action(0);
++ glamo_engine_suspend(gdrm->glamo_core, GLAMO_ENGINE_LCD);
++ gcrtc->pixel_clock_on = 0;
++ }
++}
++
++
+ static void glamo_crtc_prepare(struct drm_crtc *crtc)
+ {
+ }
+@@ -725,6 +766,8 @@ int glamo_display_init(struct drm_device *dev)
+ + sizeof(struct drm_connector *), GFP_KERNEL);
+ if (glamo_crtc == NULL) return 1;
+ glamo_crtc->gdrm = gdrm;
++ gdrm->crtc = (struct drm_crtc *)glamo_crtc;
++ glamo_crtc->pixel_clock_on = 1;
+ glamo_crtc->blank_mode = DRM_MODE_DPMS_OFF;
+ drm_crtc_init(dev, &glamo_crtc->base, &glamo_crtc_funcs);
+ drm_crtc_helper_add(&glamo_crtc->base, &glamo_crtc_helper_funcs);
+@@ -808,62 +851,23 @@ int glamo_display_init(struct drm_device *dev)
+
+ void glamo_display_suspend(struct glamodrm_handle *gdrm)
+ {
+- gdrm->saved_width = reg_read_lcd(gdrm, GLAMO_REG_LCD_WIDTH);
+- gdrm->saved_height = reg_read_lcd(gdrm, GLAMO_REG_LCD_HEIGHT);
+- gdrm->saved_pitch = reg_read_lcd(gdrm, GLAMO_REG_LCD_PITCH);
+- gdrm->saved_htotal = reg_read_lcd(gdrm, GLAMO_REG_LCD_HORIZ_TOTAL);
+- gdrm->saved_hrtrst = reg_read_lcd(gdrm, GLAMO_REG_LCD_HORIZ_RETR_START);
+- gdrm->saved_hrtren = reg_read_lcd(gdrm, GLAMO_REG_LCD_HORIZ_RETR_END);
+- gdrm->saved_hdspst = reg_read_lcd(gdrm, GLAMO_REG_LCD_HORIZ_DISP_START);
+- gdrm->saved_hdspen = reg_read_lcd(gdrm, GLAMO_REG_LCD_HORIZ_DISP_END);
+- gdrm->saved_vtotal = reg_read_lcd(gdrm, GLAMO_REG_LCD_VERT_TOTAL);
+- gdrm->saved_vrtrst = reg_read_lcd(gdrm, GLAMO_REG_LCD_VERT_RETR_START);
+- gdrm->saved_vrtren = reg_read_lcd(gdrm, GLAMO_REG_LCD_VERT_RETR_END);
+- gdrm->saved_vdspst = reg_read_lcd(gdrm, GLAMO_REG_LCD_VERT_DISP_START);
+- gdrm->saved_vdspen = reg_read_lcd(gdrm, GLAMO_REG_LCD_VERT_DISP_END);
++ /* do nothing */
+ }
+
+
+ void glamo_display_resume(struct glamodrm_handle *gdrm)
+ {
++ struct drm_crtc *crtc = gdrm->crtc;
++ struct glamo_crtc *gcrtc = to_glamo_crtc(crtc);
++
+ glamo_engine_enable(gdrm->glamo_core, GLAMO_ENGINE_LCD);
+ glamo_engine_reset(gdrm->glamo_core, GLAMO_ENGINE_LCD);
+ glamo_run_lcd_script(gdrm, lcd_init_script,
+ ARRAY_SIZE(lcd_init_script));
+
+- /* Restore timings */
+- glamo_lcd_cmd_mode(gdrm, 1);
+- glamo_engine_reclock(gdrm->glamo_core, GLAMO_ENGINE_LCD,
+- gdrm->saved_clock);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_WIDTH, GLAMO_LCD_WIDTH_MASK,
+- gdrm->saved_width);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_HEIGHT, GLAMO_LCD_HEIGHT_MASK,
+- gdrm->saved_height);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_PITCH, GLAMO_LCD_PITCH_MASK,
+- gdrm->saved_pitch);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_HORIZ_TOTAL,
+- GLAMO_LCD_HV_TOTAL_MASK, gdrm->saved_htotal);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_HORIZ_RETR_START,
+- GLAMO_LCD_HV_RETR_START_MASK, gdrm->saved_hrtrst);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_HORIZ_RETR_END,
+- GLAMO_LCD_HV_RETR_END_MASK, gdrm->saved_hrtren);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_HORIZ_DISP_START,
+- GLAMO_LCD_HV_RETR_DISP_START_MASK,
+- gdrm->saved_hdspst);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_HORIZ_DISP_END,
+- GLAMO_LCD_HV_RETR_DISP_END_MASK,
+- gdrm->saved_hdspen);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_VERT_TOTAL,
+- GLAMO_LCD_HV_TOTAL_MASK, gdrm->saved_vtotal);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_VERT_RETR_START,
+- GLAMO_LCD_HV_RETR_START_MASK, gdrm->saved_vrtrst);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_VERT_RETR_END,
+- GLAMO_LCD_HV_RETR_END_MASK, gdrm->saved_vrtren);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_VERT_DISP_START,
+- GLAMO_LCD_HV_RETR_DISP_START_MASK,
+- gdrm->saved_vdspst);
+- reg_set_bit_mask_lcd(gdrm, GLAMO_REG_LCD_VERT_DISP_END,
+- GLAMO_LCD_HV_RETR_DISP_END_MASK,
+- gdrm->saved_vdspen);
+- glamo_lcd_cmd_mode(gdrm, 0);
++ if ( gcrtc->current_mode_set ) {
++ glamo_crtc_mode_set(crtc, &gcrtc->current_mode,
++ &gcrtc->current_mode, 0, 0,
++ gcrtc->current_fb);
++ }
+ }
+diff --git a/drivers/mfd/glamo/glamo-display.h b/drivers/mfd/glamo/glamo-display.h
+index d6f21bc..728bba5 100644
+--- a/drivers/mfd/glamo/glamo-display.h
++++ b/drivers/mfd/glamo/glamo-display.h
+@@ -36,4 +36,6 @@ extern int glamo_framebuffer_create(struct drm_device *dev,
+ extern void glamo_display_suspend(struct glamodrm_handle *gdrm);
+ extern void glamo_display_resume(struct glamodrm_handle *gdrm);
+
++extern void glamo_lcd_power(struct glamodrm_handle *gdrm, int mode);
++
+ #endif /* __GLAMO_DISPLAY_H */
+diff --git a/drivers/mfd/glamo/glamo-drm-private.h b/drivers/mfd/glamo/glamo-drm-private.h
+index 7949a2e..4e24019 100644
+--- a/drivers/mfd/glamo/glamo-drm-private.h
++++ b/drivers/mfd/glamo/glamo-drm-private.h
+@@ -106,6 +106,9 @@ struct glamodrm_handle {
+
+ /* A scratch block */
+ struct drm_mm_node *scratch;
++
++ /* We only have one */
++ struct drm_crtc *crtc;
+ };
+
+
+@@ -118,11 +121,18 @@ struct drm_glamo_gem_object {
+
+
+ struct glamo_crtc {
++
+ struct drm_crtc base;
+ struct glamodrm_handle *gdrm;
+ /* a mode_set for fbdev users on this crtc */
+ struct drm_mode_set mode_set;
+ int blank_mode;
++
++ int pixel_clock_on;
++
++ int current_mode_set;
++ struct drm_display_mode current_mode;
++ struct drm_framebuffer *current_fb;
+ };
+
+
+diff --git a/drivers/mfd/glamo/glamo-kms-fb.c b/drivers/mfd/glamo/glamo-kms-fb.c
+index 61cd605..57680ed 100644
+--- a/drivers/mfd/glamo/glamo-kms-fb.c
++++ b/drivers/mfd/glamo/glamo-kms-fb.c
+@@ -253,64 +253,24 @@ static void glamofb_on(struct fb_info *info)
+ {
+ struct glamofb_par *par = info->par;
+ struct drm_device *dev = par->dev;
+- struct drm_crtc *crtc;
+- struct drm_encoder *encoder;
+- int i;
++ struct glamodrm_handle *gdrm = dev->dev_private;
+
+- /*
+- * For each CRTC in this fb, find all associated encoders
+- * and turn them off, then turn off the CRTC.
+- */
+- list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+- struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private;
++ printk(KERN_CRIT "Turning on display...\n");
+
+- for (i = 0; i < par->crtc_count; i++)
+- if (crtc->base.id == par->crtc_ids[i])
+- break;
+-
+- crtc_funcs->dpms(crtc, DRM_MODE_DPMS_ON);
++ gdrm = dev->dev_private;
+
+- /* Found a CRTC on this fb, now find encoders */
+- list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {
+- if (encoder->crtc == crtc) {
+- struct drm_encoder_helper_funcs *encoder_funcs;
+- encoder_funcs = encoder->helper_private;
+- encoder_funcs->dpms(encoder, DRM_MODE_DPMS_ON);
+- }
+- }
+- }
++ glamo_lcd_power(gdrm, 1);
+ }
+
+ static void glamofb_off(struct fb_info *info, int dpms_mode)
+ {
+ struct glamofb_par *par = info->par;
+ struct drm_device *dev = par->dev;
+- struct drm_crtc *crtc;
+- struct drm_encoder *encoder;
+- int i;
++ struct glamodrm_handle *gdrm = dev->dev_private;
+
+- /*
+- * For each CRTC in this fb, find all associated encoders
+- * and turn them off, then turn off the CRTC.
+- */
+- list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+- struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private;
+-
+- for (i = 0; i < par->crtc_count; i++)
+- if (crtc->base.id == par->crtc_ids[i])
+- break;
++ printk(KERN_CRIT "Turning off display...\n");
+
+- /* Found a CRTC on this fb, now find encoders */
+- list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {
+- if (encoder->crtc == crtc) {
+- struct drm_encoder_helper_funcs *encoder_funcs;
+- encoder_funcs = encoder->helper_private;
+- encoder_funcs->dpms(encoder, dpms_mode);
+- }
+- }
+- if (dpms_mode == DRM_MODE_DPMS_OFF)
+- crtc_funcs->dpms(crtc, dpms_mode);
+- }
++ glamo_lcd_power(gdrm, 0);
+ }
+
+ static int glamofb_blank(int blank, struct fb_info *info)
+diff --git a/drivers/video/backlight/jbt6k74.c b/drivers/video/backlight/jbt6k74.c
+index 95ca4cf..9554cb3 100644
+--- a/drivers/video/backlight/jbt6k74.c
++++ b/drivers/video/backlight/jbt6k74.c
+@@ -107,14 +107,12 @@ enum jbt_resolution {
+ };
+
+ enum jbt_power_mode {
+- JBT_POWER_MODE_DEEP_STANDBY,
+- JBT_POWER_MODE_SLEEP,
++ JBT_POWER_MODE_OFF,
+ JBT_POWER_MODE_NORMAL,
+ };
+
+ static const char *jbt_power_mode_names[] = {
+- [JBT_POWER_MODE_DEEP_STANDBY] = "deep-standby",
+- [JBT_POWER_MODE_SLEEP] = "sleep",
++ [JBT_POWER_MODE_OFF] = "off",
+ [JBT_POWER_MODE_NORMAL] = "normal",
+ };
+
+@@ -260,14 +258,18 @@ static int jbt_init_regs(struct jbt_info *jbt)
+ return ret ? -EIO : 0;
+ }
+
+-static int jbt_standby_to_sleep(struct jbt_info *jbt)
++
++static int jbt_off_to_normal(struct jbt_info *jbt)
+ {
+ int ret;
++
+ struct jbt6k74_platform_data *pdata = jbt->spi->dev.platform_data;
+
+ gpio_set_value_cansleep(pdata->gpio_reset, 1);
+ ret = regulator_bulk_enable(ARRAY_SIZE(jbt->supplies), jbt->supplies);
+
++ mdelay(30);
++
+ /* three times command zero */
+ ret |= jbt_reg_write_nodata(jbt, 0x00);
+ mdelay(1);
+@@ -279,18 +281,11 @@ static int jbt_standby_to_sleep(struct jbt_info *jbt)
+ /* deep standby out */
+ ret |= jbt_reg_write(jbt, JBT_REG_POWER_ON_OFF, 0x11);
+ mdelay(1);
+- ret = jbt_reg_write(jbt, JBT_REG_DISPLAY_MODE, 0x28);
++ ret |= jbt_reg_write(jbt, JBT_REG_DISPLAY_MODE, 0x28);
+
+ /* (re)initialize register set */
+ ret |= jbt_init_regs(jbt);
+
+- return ret ? -EIO : 0;
+-}
+-
+-static int jbt_sleep_to_normal(struct jbt_info *jbt)
+-{
+- int ret;
+-
+ /* Make sure we are 120 ms after SLEEP_OUT */
+ if (time_before(jiffies, jbt->next_sleep))
+ mdelay(jiffies_to_msecs(jbt->next_sleep - jiffies));
+@@ -320,53 +315,34 @@ static int jbt_sleep_to_normal(struct jbt_info *jbt)
+
+ /* Sleep mode off */
+ ret |= jbt_reg_write_nodata(jbt, JBT_REG_SLEEP_OUT);
+- jbt->next_sleep = jiffies + msecs_to_jiffies(120);
+
+- /* Allow the booster and display controller to restart stably */
+- mdelay(5);
+-
+- return ret ? -EIO : 0;
+-}
+-
+-static int jbt_normal_to_sleep(struct jbt_info *jbt)
+-{
+- int ret;
+-
+- /* Make sure we are 120 ms after SLEEP_OUT */
+- while (time_before(jiffies, jbt->next_sleep))
+- cpu_relax();
+-
+- ret = jbt_reg_write_nodata(jbt, JBT_REG_DISPLAY_OFF);
+- ret |= jbt_reg_write16(jbt, JBT_REG_OUTPUT_CONTROL, 0x8000 | 1 << 3);
+- ret |= jbt_reg_write_nodata(jbt, JBT_REG_SLEEP_IN);
+ jbt->next_sleep = jiffies + msecs_to_jiffies(120);
+
+- /* Allow the internal circuits to stop automatically */
++ /* Allow the booster and display controller to restart stably */
+ mdelay(5);
+
+ return ret ? -EIO : 0;
+ }
+
+-static int jbt_sleep_to_standby(struct jbt_info *jbt)
++static int jbt_normal_to_off(struct jbt_info *jbt)
+ {
+ int ret;
+ struct jbt6k74_platform_data *pdata = jbt->spi->dev.platform_data;
+
+- ret = jbt_reg_write(jbt, JBT_REG_POWER_ON_OFF, 0x00);
+-
+- if (!ret)
+- ret = regulator_bulk_disable(ARRAY_SIZE(jbt->supplies), jbt->supplies);
++ /* Pull the plug! */
++ ret = regulator_bulk_disable(ARRAY_SIZE(jbt->supplies),
++ jbt->supplies);
+
+ if (!ret)
+ gpio_set_value_cansleep(pdata->gpio_reset, 0);
+
+- return ret;
++ return ret ? -EIO : 0;
+ }
+
++
+ static int jbt6k74_enter_power_mode(struct jbt_info *jbt,
+ enum jbt_power_mode new_mode)
+ {
+- struct jbt6k74_platform_data *pdata = jbt->spi->dev.platform_data;
+ int ret = -EINVAL;
+
+ dev_dbg(&jbt->spi->dev, "entering (old_state=%s, new_state=%s)\n",
+@@ -375,49 +351,14 @@ static int jbt6k74_enter_power_mode(struct jbt_info *jbt,
+
+ mutex_lock(&jbt->lock);
+
+- if (jbt->suspended) {
+- switch (new_mode) {
+- case JBT_POWER_MODE_DEEP_STANDBY:
+- case JBT_POWER_MODE_SLEEP:
+- case JBT_POWER_MODE_NORMAL:
+- ret = 0;
+- jbt->suspend_mode = new_mode;
+- break;
+- default:
+- break;
+- }
+- } else if (new_mode == JBT_POWER_MODE_NORMAL &&
+- pdata->enable_pixel_clock) {
+- pdata->enable_pixel_clock(&jbt->spi->dev, 1);
+- }
+-
+ switch (jbt->power_mode) {
+- case JBT_POWER_MODE_DEEP_STANDBY:
+- switch (new_mode) {
+- case JBT_POWER_MODE_DEEP_STANDBY:
+- ret = 0;
+- break;
+- case JBT_POWER_MODE_SLEEP:
+- ret = jbt_standby_to_sleep(jbt);
+- break;
+- case JBT_POWER_MODE_NORMAL:
+- /* first transition into sleep */
+- ret = jbt_standby_to_sleep(jbt);
+- /* then transition into normal */
+- ret |= jbt_sleep_to_normal(jbt);
+- break;
+- }
+- break;
+- case JBT_POWER_MODE_SLEEP:
++ case JBT_POWER_MODE_OFF:
+ switch (new_mode) {
+- case JBT_POWER_MODE_SLEEP:
++ case JBT_POWER_MODE_OFF:
+ ret = 0;
+ break;
+- case JBT_POWER_MODE_DEEP_STANDBY:
+- ret = jbt_sleep_to_standby(jbt);
+- break;
+ case JBT_POWER_MODE_NORMAL:
+- ret = jbt_sleep_to_normal(jbt);
++ ret = jbt_off_to_normal(jbt);
+ break;
+ }
+ break;
+@@ -426,25 +367,16 @@ static int jbt6k74_enter_power_mode(struct jbt_info *jbt,
+ case JBT_POWER_MODE_NORMAL:
+ ret = 0;
+ break;
+- case JBT_POWER_MODE_DEEP_STANDBY:
+- /* first transition into sleep */
+- ret = jbt_normal_to_sleep(jbt);
+- /* then transition into deep standby */
+- ret |= jbt_sleep_to_standby(jbt);
+- break;
+- case JBT_POWER_MODE_SLEEP:
+- ret = jbt_normal_to_sleep(jbt);
++ case JBT_POWER_MODE_OFF:
++ ret = jbt_normal_to_off(jbt);
+ break;
+ }
+ }
+
+ if (ret == 0) {
+ jbt->power_mode = new_mode;
+- if (new_mode != JBT_POWER_MODE_NORMAL &&
+- pdata->enable_pixel_clock)
+- pdata->enable_pixel_clock(&jbt->spi->dev, 0);
+ } else {
+- dev_err(&jbt->spi->dev, "Failed enter state '%s': %d\n",
++ dev_err(&jbt->spi->dev, "Failed to enter state '%s': %d\n",
+ jbt_power_mode_names[new_mode], ret);
+ }
+
+@@ -470,8 +402,8 @@ static int jbt6k74_set_resolution(struct jbt_info *jbt,
+ if (jbt->power_mode == JBT_POWER_MODE_NORMAL) {
+
+ /* first transition into sleep */
+- ret = jbt_normal_to_sleep(jbt);
+- ret |= jbt_sleep_to_normal(jbt);
++ ret = jbt_normal_to_off(jbt);
++ ret |= jbt_off_to_normal(jbt);
+
+ if (ret) {
+ jbt->resolution = old_resolution;
+@@ -589,7 +521,7 @@ static ssize_t reset_write(struct device *dev, struct device_attribute *attr,
+
+ mutex_unlock(&jbt->lock);
+
+- jbt->power_mode = JBT_POWER_MODE_DEEP_STANDBY;
++ jbt->power_mode = JBT_POWER_MODE_OFF;
+ jbt6k74_enter_power_mode(jbt, old_power_mode);
+
+ return count;
+@@ -616,27 +548,6 @@ static struct attribute_group jbt_attr_group = {
+ .attrs = jbt_sysfs_entries,
+ };
+
+-/* FIXME: This in an ugly hack to delay display blanking.
+- When the jbt is in sleep mode it displays an all white screen and thus one
+- will a see a short flash.
+- By delaying the blanking we will give the backlight a chance to turn off and
+- thus avoid getting the flash */
+-static void jbt_blank_worker(struct work_struct *work)
+-{
+- struct jbt_info *jbt = container_of(work, struct jbt_info,
+- blank_work.work);
+-
+- switch (jbt->blank_mode) {
+- case FB_BLANK_NORMAL:
+- jbt6k74_enter_power_mode(jbt, JBT_POWER_MODE_SLEEP);
+- break;
+- case FB_BLANK_POWERDOWN:
+- jbt6k74_enter_power_mode(jbt, JBT_POWER_MODE_DEEP_STANDBY);
+- break;
+- default:
+- break;
+- }
+-}
+
+ static int jbt6k74_set_mode(struct lcd_device *ld, struct fb_videomode *m)
+ {
+@@ -649,7 +560,7 @@ static int jbt6k74_set_mode(struct lcd_device *ld, struct fb_videomode *m)
+ ret = jbt6k74_set_resolution(jbt, JBT_RESOLUTION_VGA);
+ } else {
+ dev_err(&jbt->spi->dev, "Unknown resolution.\n");
+- jbt6k74_enter_power_mode(jbt, JBT_POWER_MODE_SLEEP);
++ jbt6k74_enter_power_mode(jbt, JBT_POWER_MODE_OFF);
+ }
+
+ return ret;
+@@ -671,11 +582,11 @@ static int jbt6k74_set_power(struct lcd_device *ld, int power)
+ break;
+ case FB_BLANK_NORMAL:
+ dev_dbg(&jbt->spi->dev, "blank\n");
+- ret = schedule_delayed_work(&jbt->blank_work, HZ);
++ ret = jbt6k74_enter_power_mode(jbt, JBT_POWER_MODE_OFF);
+ break;
+ case FB_BLANK_POWERDOWN:
+ dev_dbg(&jbt->spi->dev, "powerdown\n");
+- ret = schedule_delayed_work(&jbt->blank_work, HZ);
++ ret = jbt6k74_enter_power_mode(jbt, JBT_POWER_MODE_OFF);
+ break;
+ default:
+ break;
+@@ -691,10 +602,10 @@ static int jbt6k74_get_power(struct lcd_device *ld)
+ switch (jbt->power_mode) {
+ case JBT_POWER_MODE_NORMAL:
+ return FB_BLANK_UNBLANK;
+- case JBT_POWER_MODE_SLEEP:
++ case JBT_POWER_MODE_OFF:
+ return FB_BLANK_NORMAL;
+ default:
+- return JBT_POWER_MODE_DEEP_STANDBY;
++ return JBT_POWER_MODE_OFF;
+ }
+ }
+
+@@ -707,7 +618,7 @@ void jbt6k74_action(int val)
+ return;
+ }
+ if ( val == 0 ) {
+- jbt6k74_enter_power_mode(jbt_global, JBT_POWER_MODE_SLEEP);
++ jbt6k74_enter_power_mode(jbt_global, JBT_POWER_MODE_OFF);
+ } else {
+ jbt6k74_enter_power_mode(jbt_global, JBT_POWER_MODE_NORMAL);
+ }
+@@ -756,11 +667,9 @@ static int __devinit jbt_probe(struct spi_device *spi)
+ goto err_free_drvdata;
+ }
+
+- INIT_DELAYED_WORK(&jbt->blank_work, jbt_blank_worker);
+-
+ jbt->resolution = JBT_RESOLUTION_VGA;
+- jbt->power_mode = JBT_POWER_MODE_DEEP_STANDBY;
+ jbt->next_sleep = jiffies + msecs_to_jiffies(120);
++ jbt->power_mode = JBT_POWER_MODE_OFF;
+ mutex_init(&jbt->lock);
+
+ dev_set_drvdata(&spi->dev, jbt);
+@@ -856,9 +765,10 @@ static int jbt_suspend(struct spi_device *spi, pm_message_t state)
+
+ jbt->suspend_mode = jbt->power_mode;
+
+- jbt6k74_enter_power_mode(jbt, JBT_POWER_MODE_DEEP_STANDBY);
+- jbt->suspended = 1;
++ printk(KERN_CRIT "[jbt] powering off for suspend\n");
++ jbt6k74_enter_power_mode(jbt, JBT_POWER_MODE_OFF);
+
++ printk(KERN_CRIT "[jbt] done\n");
+ dev_info(&spi->dev, "suspended\n");
+
+ return 0;
+@@ -869,11 +779,13 @@ int jbt6k74_resume(struct spi_device *spi)
+ struct jbt_info *jbt = dev_get_drvdata(&spi->dev);
+ dev_info(&spi->dev, "starting resume: %d\n", jbt->suspend_mode);
+
++ printk(KERN_CRIT "[jbt] powering on for resume\n");
+ mdelay(20);
+
+ jbt->suspended = 0;
+ jbt6k74_enter_power_mode(jbt, jbt->suspend_mode);
+
++ printk(KERN_CRIT "[jbt] done\n");
+ dev_info(&spi->dev, "resumed: %d\n", jbt->suspend_mode);
+
+ return 0;
+diff --git a/include/linux/jbt6k74.h b/include/linux/jbt6k74.h
+index 75488c4..4cf760c 100644
+--- a/include/linux/jbt6k74.h
++++ b/include/linux/jbt6k74.h
+@@ -13,7 +13,6 @@
+ */
+ struct jbt6k74_platform_data {
+ void (*probe_completed)(struct device *dev);
+- void (*enable_pixel_clock)(struct device *dev, int enable);
+
+ int gpio_reset;
+ };
+--
+1.7.0
+
diff --git a/recipes/linux/linux-openmoko-2.6.32/0011-Don-t-choke-if-userspace-provides-a-pixel-clock-valu.patch b/recipes/linux/linux-openmoko-2.6.32/0011-Don-t-choke-if-userspace-provides-a-pixel-clock-valu.patch
new file mode 100644
index 0000000000..0d47c1263f
--- /dev/null
+++ b/recipes/linux/linux-openmoko-2.6.32/0011-Don-t-choke-if-userspace-provides-a-pixel-clock-valu.patch
@@ -0,0 +1,79 @@
+From 73abadc5bbbc94f4ca67effc5f5c3174c2a3ac48 Mon Sep 17 00:00:00 2001
+From: Thomas White <taw@bitwiz.org.uk>
+Date: Sun, 28 Feb 2010 15:40:13 +0100
+Subject: [PATCH 2/2] Don't choke if userspace provides a pixel clock value
+
+Don't choke if userspace provides a pixel clock value
+
+Signed-off-by: Thomas White <taw@bitwiz.org.uk>
+---
+ drivers/mfd/glamo/glamo-kms-fb.c | 46 ++++++++++++++++++-------------------
+ 1 files changed, 22 insertions(+), 24 deletions(-)
+
+diff --git a/drivers/mfd/glamo/glamo-kms-fb.c b/drivers/mfd/glamo/glamo-kms-fb.c
+index 57680ed..6d4b9ea 100644
+--- a/drivers/mfd/glamo/glamo-kms-fb.c
++++ b/drivers/mfd/glamo/glamo-kms-fb.c
+@@ -177,37 +177,35 @@ static int glamofb_set_par(struct fb_info *info)
+ struct drm_device *dev = par->dev;
+ struct fb_var_screeninfo *var = &info->var;
+ int i;
++ struct drm_crtc *crtc;
++ int ret;
+
+ DRM_DEBUG("%d %d\n", var->xres, var->pixclock);
+
+ if (var->pixclock != -1) {
++ DRM_ERROR("Warning: userspace gave me a pixel clock value (%i)"
++ "- I'm ignoring it.\n", var->pixclock);
++ }
+
+- DRM_ERROR("PIXEL CLOCK SET\n");
+- return -EINVAL;
+- } else {
+- struct drm_crtc *crtc;
+- int ret;
+-
+- list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+- struct glamo_crtc *glamo_crtc = to_glamo_crtc(crtc);
+-
+- for (i = 0; i < par->crtc_count; i++)
+- if (crtc->base.id == par->crtc_ids[i])
+- break;
+-
+- if (i == par->crtc_count)
+- continue;
+-
+- if (crtc->fb == glamo_crtc->mode_set.fb) {
+- mutex_lock(&dev->mode_config.mutex);
+- ret = crtc->funcs->set_config(&glamo_crtc->mode_set);
+- mutex_unlock(&dev->mode_config.mutex);
+- if (ret)
+- return ret;
+- }
++ list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
++ struct glamo_crtc *glamo_crtc = to_glamo_crtc(crtc);
++
++ for (i = 0; i < par->crtc_count; i++)
++ if (crtc->base.id == par->crtc_ids[i])
++ break;
++
++ if (i == par->crtc_count)
++ continue;
++
++ if (crtc->fb == glamo_crtc->mode_set.fb) {
++ mutex_lock(&dev->mode_config.mutex);
++ ret = crtc->funcs->set_config(&glamo_crtc->mode_set);
++ mutex_unlock(&dev->mode_config.mutex);
++ if (ret)
++ return ret;
+ }
+- return 0;
+ }
++ return 0;
+ }
+
+ static int glamofb_pan_display(struct fb_var_screeninfo *var,
+--
+1.7.0
+
diff --git a/recipes/linux/linux-openmoko-2.6.32_git.bb b/recipes/linux/linux-openmoko-2.6.32_git.bb
index 7c685b183f..52988280dd 100644
--- a/recipes/linux/linux-openmoko-2.6.32_git.bb
+++ b/recipes/linux/linux-openmoko-2.6.32_git.bb
@@ -8,7 +8,7 @@ KERNEL_RELEASE="2.6.32.9"
SRCREV = "14be1091928fcce66812a85129768fb253b36420"
OEV = "oe1"
PV = "${KERNEL_RELEASE}-${OEV}+gitr${SRCREV}"
-PR = "r1"
+PR = "r2"
SRC_URI = "\
git://git.openmoko.org/git/kernel.git;protocol=git;branch=om-gta02-2.6.32 \
@@ -26,6 +26,8 @@ SRC_URI = "\
file://0007-glamo-drm-select-DRM_KMS_HELPER-for-crtc-functions.patch;patch=1 \
file://0008-Fix-crash-when-reading-Glamo-registers-via-sysfs.patch;patch=1 \
file://0009-A-couple-of-GEM-refcounting-fixes.patch;patch=1 \
+ file://0010-Simplify-the-JBT6k74-driver.patch;patch=1 \
+ file://0011-Don-t-choke-if-userspace-provides-a-pixel-clock-valu.patch;patch=1 \
"
SRC_URI[stablepatch.md5sum] = "7f615dd3b4a3b19fb86e479996a2deb5"
diff --git a/recipes/mesa/mesa-dri_git.bb b/recipes/mesa/mesa-dri_git.bb
index 1626326235..295938ba01 100644
--- a/recipes/mesa/mesa-dri_git.bb
+++ b/recipes/mesa/mesa-dri_git.bb
@@ -11,13 +11,13 @@ PR_append = "+gitr${SRCREV}"
PE = "1"
DEFAULT_PREFERENCE = "-2"
-DEFAULT_PREFERENCE_om-gta02 = "2"
+DEFAULT_PREFERENCE_shr = "2"
SRCREV_pn-mesa-dri ?= "196214bf2b677a83653d49f79d03752f29df44ec"
-SRCREV_pn-mesa-dri_om-gta02 ?= "1ac166895fef47806c9e9286d2a6356b4db8398d"
+SRCREV_pn-mesa-dri_shr ?= "1ac166895fef47806c9e9286d2a6356b4db8398d"
SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa;protocol=git"
-SRC_URI_om-gta02 = "git://git.bitwiz.org.uk/mesa.git;protocol=git;branch=glamo"
+SRC_URI_shr = "git://git.bitwiz.org.uk/mesa.git;protocol=git;branch=glamo"
S = "${WORKDIR}/git"
PACKAGES =+ " mesa-utils "
diff --git a/recipes/meta/meta-toolchain.bb b/recipes/meta/meta-toolchain.bb
index 066ffe9cbb..688995c5e5 100644
--- a/recipes/meta/meta-toolchain.bb
+++ b/recipes/meta/meta-toolchain.bb
@@ -17,7 +17,7 @@ TOOLCHAIN_TARGET_TASK ?= "task-sdk-bare"
TOOLCHAIN_TARGET_EXCLUDE ?= ""
FEED_ARCH ?= "${TARGET_ARCH}"
SDK_SUFFIX = "toolchain"
-TOOLCHAIN_OUTPUTNAME ?= "${DISTRO}-${DISTRO_VERSION}-${FEED_ARCH}-${TARGET_OS}-${SDK_SUFFIX}"
+TOOLCHAIN_OUTPUTNAME ?= "${DISTRO}-${DISTRO_VERSION}-${SDK_SYS}-${FEED_ARCH}-${TARGET_OS}-${SDK_SUFFIX}"
RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
diff --git a/recipes/mozilla/firefox-3.6/0001-Remove-Werror-from-build.patch b/recipes/mozilla/firefox-3.6/0001-Remove-Werror-from-build.patch
new file mode 100644
index 0000000000..008dabbe8d
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/0001-Remove-Werror-from-build.patch
@@ -0,0 +1,43 @@
+From 48a378ae647cbd6f8466bd0e8dbb04400bb175a8 Mon Sep 17 00:00:00 2001
+From: Eduardo Valentin <eduardo.valentin@openpossa.org>
+Date: Thu, 24 Jul 2008 16:05:09 -0400
+Subject: [PATCH 1/1] Remove -Werror from build
+
+Remove -Werror from build
+
+Signed-off-by: Eduardo Valentin <eduardo.valentin@openpossa.org>
+---
+ configure | 6 +++---
+ 1 files changed, 3 insertions(+), 3 deletions(-)
+
+Index: mozilla-1.9.1/configure
+===================================================================
+--- mozilla-1.9.1.orig/configure
++++ mozilla-1.9.1/configure
+@@ -5525,7 +5525,7 @@ if test "$GNU_CC"; then
+ # Don't allow undefined symbols in libraries
+ DSO_LDOPTS="$DSO_LDOPTS -Wl,-z,defs"
+ fi
+- WARNINGS_AS_ERRORS='-Werror'
++ WARNINGS_AS_ERRORS=''
+ DSO_CFLAGS=''
+ DSO_PIC_CFLAGS='-fPIC'
+ ASFLAGS="$ASFLAGS -fPIC"
+@@ -7104,7 +7104,7 @@ EOF
+ IMPLIB='emximp -o'
+ FILTER='emxexp -o'
+ LDFLAGS='-Zmap'
+- WARNINGS_AS_ERRORS='-Werror'
++ WARNINGS_AS_ERRORS=''
+ MOZ_DEBUG_FLAGS="-g -fno-inline"
+ MOZ_OPTIMIZE_FLAGS="-O2"
+ MOZ_OPTIMIZE_LDFLAGS="-s -Zlinker /EXEPACK:2 -Zlinker /PACKCODE -Zlinker /PACKDATA"
+@@ -7283,7 +7283,7 @@ else
+ fi
+ rm -f conftest*
+ fi
+- WARNINGS_AS_ERRORS='-Werror'
++ WARNINGS_AS_ERRORS=''
+ MOZ_OPTIMIZE_FLAGS="-xO4"
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -h $@ -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -z muldefs -h $@ -o $@'
diff --git a/recipes/mozilla/firefox-3.6/0002-Fix-security-cross-compile-cpu-detection-error.patch b/recipes/mozilla/firefox-3.6/0002-Fix-security-cross-compile-cpu-detection-error.patch
new file mode 100644
index 0000000000..ce8d4d9948
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/0002-Fix-security-cross-compile-cpu-detection-error.patch
@@ -0,0 +1,42 @@
+From 599b26141d493ff19633796ce5e19b00315d3821 Mon Sep 17 00:00:00 2001
+From: Eduardo Valentin <eduardo.valentin@openpossa.org>
+Date: Fri, 25 Jul 2008 11:20:02 -0400
+Subject: [PATCH 1/1] Fix security cross compile cpu detection error
+
+Fix security cross compile cpu detection error.
+Reference to bug 376279.
+
+Signed-off-by: Eduardo Valentin <eduardo.valentin@openpossa.org>
+---
+ security/coreconf/arch.mk | 2 ++
+ security/manager/Makefile.in | 1 +
+ 2 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/security/coreconf/arch.mk b/security/coreconf/arch.mk
+index fba38ff..28da32e 100644
+--- a/security/coreconf/arch.mk
++++ b/security/coreconf/arch.mk
+@@ -66,7 +66,9 @@ OS_ARCH := $(subst /,_,$(shell uname -s))
+ # Attempt to differentiate between sparc and x86 Solaris
+ #
+
++ifndef OE_TEST
+ OS_TEST := $(shell uname -m)
++endif
+ ifeq ($(OS_TEST),i86pc)
+ OS_RELEASE := $(shell uname -r)_$(OS_TEST)
+ else
+diff --git a/security/manager/Makefile.in b/security/manager/Makefile.in
+index 86119f7..86c09ca 100644
+--- a/security/manager/Makefile.in
++++ b/security/manager/Makefile.in
+@@ -240,6 +240,7 @@ DEFAULT_GMAKE_FLAGS += \
+ RC="$(RC) $(RCFLAGS)" \
+ OS_ARCH="$(OS_ARCH)" \
+ CPU_ARCH="$(TARGET_CPU)" \
++ OS_TEST="$(TARGET_CPU)" \
+ $(NULL)
+ SKIP_CHK=1
+ endif
+--
+1.5.4.3
diff --git a/recipes/mozilla/firefox-3.6/010_FPU_IS_ARM_FPA_xslt.diff b/recipes/mozilla/firefox-3.6/010_FPU_IS_ARM_FPA_xslt.diff
new file mode 100644
index 0000000000..854100c4c3
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/010_FPU_IS_ARM_FPA_xslt.diff
@@ -0,0 +1,56 @@
+# Bug 369722 – prdtoa.c jsnum.h txDouble.h not required IEEE_ARM define on Codesourcery EABI gcc3.4.4 compiler
+#
+--- mozilla/content/xslt/public/txDouble.h.orig 2006-07-13 17:21:52.000000000 +0300
++++ mozilla/content/xslt/public/txDouble.h 2007-10-25 15:01:25.000000000 +0300
+@@ -58,46 +58,48 @@ fp_except_t oldmask = fpsetmask(~allmask
+ /**
+ * 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(__VFP_FP__)
++#define FPU_IS_ARM_FPA
++#endif
+ #endif
+
+ #if (__GNUC__ == 2 && __GNUC_MINOR__ > 95) || __GNUC__ > 2
+ /**
+ * This version of the macros is safe for the alias optimizations
+ * that gcc does, but uses gcc-specific extensions.
+ */
+
+ typedef union txdpun {
+ PRFloat64 d;
+ struct {
+-#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM)
++#if defined(IS_LITTLE_ENDIAN) && !defined(FPU_IS_ARM_FPA)
+ PRUint32 lo, hi;
+ #else
+ PRUint32 hi, lo;
+ #endif
+ } s;
+ } txdpun;
+
+ #define TX_DOUBLE_HI32(x) (__extension__ ({ txdpun u; u.d = (x); u.s.hi; }))
+ #define TX_DOUBLE_LO32(x) (__extension__ ({ txdpun u; u.d = (x); u.s.lo; }))
+
+ #else // __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(FPU_IS_ARM_FPA)
+ #define TX_DOUBLE_HI32(x) (((PRUint32 *)&(x))[1])
+ #define TX_DOUBLE_LO32(x) (((PRUint32 *)&(x))[0])
+ #else
+ #define TX_DOUBLE_HI32(x) (((PRUint32 *)&(x))[0])
+ #define TX_DOUBLE_LO32(x) (((PRUint32 *)&(x))[1])
+ #endif
+
+ #endif // __GNUC__
diff --git a/recipes/mozilla/firefox-3.6/Bug339782.additional.fix.diff b/recipes/mozilla/firefox-3.6/Bug339782.additional.fix.diff
new file mode 100644
index 0000000000..0848e730d3
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/Bug339782.additional.fix.diff
@@ -0,0 +1,39 @@
+# XPTC_InvokeByIndex crashes
+# Bug 339782 [ARM] XPTC_InvokeByIndex crashes when cross-compiled under GCC 3.4.x with EABI (CodeSourcery)
+Index: mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp
+===================================================================
+--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp
++++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp
+@@ -51,22 +51,32 @@
+ #ifdef __ARM_EABI__
+ #define DOUBLEWORD_ALIGN(p) ((PRUint32 *)((((PRUint32)(p)) + 7) & 0xfffffff8))
+ #define VAR_STACK_SIZE_64 3
+ #else
+ #define DOUBLEWORD_ALIGN(p) (p)
+ #define VAR_STACK_SIZE_64 2
+ #endif
+
++#ifdef __ARM_EABI__
++#define DOUBLEWORD_ALIGN(p) ((PRUint32 *)((((PRUint32)(p)) + 7) & 0xfffffff8))
++#else
++#define DOUBLEWORD_ALIGN(p) (p)
++#endif
++
+ // Remember that these 'words' are 32bit DWORDS
+
+ static PRUint32
+ invoke_count_words(PRUint32 paramCount, nsXPTCVariant* s)
+ {
+ PRUint32 result = 0;
++
++ /* Note that we give a "worst case" estimate of how much stack _might_ be
++ * needed, rather than the real count - this should be safe */
++
+ for(PRUint32 i = 0; i < paramCount; i++, s++)
+ {
+ if(s->IsPtrData())
+ {
+ result++;
+ continue;
+ }
+ switch(s->type)
diff --git a/recipes/mozilla/firefox-3.6/Bug385583.nspr.jmp_buf.eabi.diff b/recipes/mozilla/firefox-3.6/Bug385583.nspr.jmp_buf.eabi.diff
new file mode 100644
index 0000000000..486440c30e
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/Bug385583.nspr.jmp_buf.eabi.diff
@@ -0,0 +1,33 @@
+diff -up mozilla/nsprpub/pr/include/md/_linux.h.orig mozilla/nsprpub/pr/include/md/_linux.h
+--- mozilla/nsprpub/pr/include/md/_linux.h.orig 2007-11-28 14:16:03.000000000 -0500
++++ mozilla/nsprpub/pr/include/md/_linux.h 2007-11-28 14:12:09.000000000 -0500
+@@ -346,8 +346,8 @@ extern void _MD_CleanupBeforeExit(void);
+ #error "Linux/MIPS pre-glibc2 not supported yet"
+ #endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */
+
+-#elif defined(__arm__)
+-/* ARM/Linux */
++#elif defined(__arm__) && !defined(__ARM_EABI__)
++/* ARM/Linux (old-ABI) */
+ #if defined(__GLIBC__) && __GLIBC__ >= 2
+ #define _MD_GET_SP(_t) (_t)->md.context[0].__jmpbuf[20]
+ #define _MD_SET_FP(_t, val) ((_t)->md.context[0].__jmpbuf[19] = (val))
+@@ -358,6 +358,18 @@ extern void _MD_CleanupBeforeExit(void);
+ #error "ARM/Linux pre-glibc2 not supported yet"
+ #endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */
+
++#elif defined(__arm__) && defined(__ARM_EABI__)
++/* ARM/Linux (EABI) */
++#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/recipes/mozilla/firefox-3.6/Bug405992.atomic.nspr.diff b/recipes/mozilla/firefox-3.6/Bug405992.atomic.nspr.diff
new file mode 100644
index 0000000000..f54f916a6a
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/Bug405992.atomic.nspr.diff
@@ -0,0 +1,48 @@
+# Add atomic operations for ARM.
+diff --git a/nsprpub/pr/include/md/_linux.h b/nsprpub/pr/include/md/_linux.h
+index 5b794c5..cb8d58e 100644
+--- a/nsprpub/pr/include/md/_linux.h
++++ b/nsprpub/pr/include/md/_linux.h
+@@ -194,6 +194,42 @@ extern PRInt32 _PR_x86_64_AtomicSet(PRInt32 *val, PRInt32 newval);
+ })
+ #endif
+
++#if defined(__arm__)
++#define _PR_HAVE_ATOMIC_OPS
++#define _MD_INIT_ATOMIC()
++
++typedef int (__kernel_cmpxchg_t)(int oldval, int newval, volatile int *ptr);
++#define __kernel_cmpxchg (*(__kernel_cmpxchg_t *)0xffff0fc0)
++
++#define _MD_ATOMIC_INCREMENT(ptr) _MD_ATOMIC_ADD(ptr, 1)
++#define _MD_ATOMIC_DECREMENT(ptr) _MD_ATOMIC_ADD(ptr, -1)
++#define _MD_ATOMIC_ADD(ptr, n) \
++ ({ \
++ PRInt32 ov, nv; \
++ volatile PRInt32 *vp = (ptr); \
++ \
++ do { \
++ ov = *vp; \
++ nv = ov + (n); \
++ } \
++ while (__kernel_cmpxchg(ov, nv, vp)); \
++ \
++ nv; \
++ })
++#define _MD_ATOMIC_SET(ptr, nv) \
++ ({ \
++ PRInt32 ov; \
++ volatile PRInt32 *vp = (ptr); \
++ \
++ do { \
++ ov = *vp; \
++ } \
++ while (__kernel_cmpxchg(ov, (nv), vp)); \
++ \
++ ov; \
++ })
++#endif
++
+ #define USE_SETJMP
+ #if defined(__GLIBC__) && __GLIBC__ >= 2
+ #define _PR_POLL_AVAILABLE
diff --git a/recipes/mozilla/firefox-3.6/configure-wchart.patch b/recipes/mozilla/firefox-3.6/configure-wchart.patch
new file mode 100644
index 0000000000..36ee2a0ba4
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/configure-wchart.patch
@@ -0,0 +1,11 @@
+--- a/configure.in 2008-04-15 12:56:35.000000000 +0300
++++ b/configure.in.old 2008-03-20 21:17:09.000000000 +0200
+@@ -2743,7 +2743,7 @@
+
+ AC_CACHE_CHECK(for compiler -fshort-wchar option,
+ ac_cv_have_usable_wchar_option_v2,
+- [AC_TRY_LINK([#include <stddef.h>
++ [AC_TRY_COMPILE([#include <stddef.h>
+ $configure_static_assert_macros],
+ [CONFIGURE_STATIC_ASSERT(sizeof(wchar_t) == 2);
+ CONFIGURE_STATIC_ASSERT((wchar_t)-1 > (wchar_t) 0)],
diff --git a/recipes/mozilla/firefox-3.6/jemalloc-tls.patch b/recipes/mozilla/firefox-3.6/jemalloc-tls.patch
new file mode 100644
index 0000000000..d1d740989e
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/jemalloc-tls.patch
@@ -0,0 +1,28 @@
+--- /tmp/jemalloc.c 2008-06-23 10:57:36.000000000 +0200
++++ mozilla/memory/jemalloc/jemalloc.c 2008-06-23 11:20:13.000000000 +0200
+@@ -386,7 +386,7 @@
+ #else
+ # define NO_TLS
+ #endif
+-#if 0
++
+ #ifdef __i386__
+ # define QUANTUM_2POW_MIN 4
+ # define SIZEOF_PTR_2POW 2
+@@ -420,7 +420,6 @@
+ # define QUANTUM_2POW_MIN 4
+ # define SIZEOF_PTR_2POW 2
+ #endif
+-#endif
+
+ #define SIZEOF_PTR (1U << SIZEOF_PTR_2POW)
+
+@@ -2582,7 +2581,7 @@
+ * knowledge of how _pthread_self() calculates values, we can't
+ * easily do much better than this.
+ */
+- ind = (unsigned long) _pthread_self() % narenas;
++ ind = 255255 % narenas;
+
+ /*
+ * Optimistially assume that arenas[ind] has been initialized.
diff --git a/recipes/mozilla/firefox-3.6/linkage-problem.patch b/recipes/mozilla/firefox-3.6/linkage-problem.patch
new file mode 100644
index 0000000000..28bffd1e22
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/linkage-problem.patch
@@ -0,0 +1,14 @@
+--- mozilla/layout/build/Makefile.in~ 2007-11-24 00:38:14.000000000 -0200
++++ mozilla/layout/build/Makefile.in 2007-11-24 00:38:14.000000000 -0200
+@@ -229,6 +229,11 @@
+ $(NULL)
+ endif
+
++ifdef MOZ_ENABLE_XFT
++EXTRA_DSO_LDOPTS += $(MOZ_XFT_LIBS) \
++ $(NULL)
++endif
++
+ ifneq (,$(MOZ_ENABLE_CANVAS)$(MOZ_SVG_RENDERER_CAIRO))
+ EXTRA_DSO_LDOPTS += $(MOZ_CAIRO_LIBS) \
+ $(NULL)
diff --git a/recipes/mozilla/firefox-3.6/mozconfig b/recipes/mozilla/firefox-3.6/mozconfig
new file mode 100644
index 0000000000..b561f067b8
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/mozconfig
@@ -0,0 +1,72 @@
+. $topsrcdir/browser/config/mozconfig
+
+# use GTK+-2 widget set with XFT font rendering
+#ac_add_options --enable-default-toolkit=gtk2
+ac_add_options --enable-xft
+ac_add_options --disable-freetype2
+
+# enable minimal profile support
+ac_add_options --disable-profilesharing
+ac_add_options --disable-profilelocking
+ac_add_options --enable-single-profile
+
+ac_add_options --with-system-zlib
+ac_add_options --with-system-jpeg
+ac_add_options --with-system-bz2
+#ac_add_options --with-system-png
+
+ac_add_options --disable-accessibility
+ac_add_options --disable-composer
+#ac_add_options --enable-plaintext-editor-only
+ac_add_options --disable-mailnews
+ac_add_options --disable-ldap
+#ac_add_options --disable-postscript
+ac_add_options --disable-mathml
+ac_add_options --disable-jsd
+ac_add_options --disable-installer
+ac_add_options --disable-xprint
+ac_add_options --enable-necko-disk-cache
+ac_add_options --disable-updater
+
+# configure necko to allocate smaller network buffers
+ac_add_options --enable-necko-small-buffers
+
+# disable debug logging and tests
+#ac_add_options --disable-dtd-debug
+ac_add_options --disable-logging
+ac_add_options --disable-gtktest
+ac_add_options --disable-tests
+ac_add_options --disable-printing
+ac_add_options --disable-gnomevfs
+ac_add_options --disable-gnomeui
+ac_add_options --enable-debugger-info-modules
+
+# build crypto module (PSM + NSS)
+ac_add_options --enable-crypto
+
+# build minimal set of protocol handlers
+ac_add_options --enable-necko-protocols=http,file,res,ftp,about,viewsource
+
+# build minimal set of image decoders
+#ac_add_options --enable-image-decoders=png,gif,jpeg
+
+#ac_add_options --enable-reorder
+#ac_add_options --enable-elf-dynstr-gc
+
+# enable static build
+#ac_add_options --disable-shared
+#ac_add_options --enable-static
+ac_add_options --enable-optimize=-O2
+
+# Use cairo from system
+ac_add_options --enable-system-cairo
+
+# Disable jemalloc
+ac_add_options --disable-jemalloc
+
+# enable libxul
+ac_add_options --enable-libxul
+
+# Disable striping
+ac_add_options --disable-strip
+ac_add_options --disable-install-strip
diff --git a/recipes/mozilla/firefox-3.6/plugins-dir.patch b/recipes/mozilla/firefox-3.6/plugins-dir.patch
new file mode 100644
index 0000000000..2c8b8e9bd1
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/plugins-dir.patch
@@ -0,0 +1,16 @@
+Index: mozilla-1.9.1/build/unix/mozilla.in
+===================================================================
+--- mozilla-1.9.1.orig/build/unix/mozilla.in
++++ mozilla-1.9.1/build/unix/mozilla.in
+@@ -52,6 +52,11 @@
+
+ moz_libdir=%MOZAPPDIR%
+
++if test -d /usr/lib/mozilla/plugins; then
++ MOZ_PLUGIN_PATH="${MOZ_PLUGIN_PATH:+"$MOZ_PLUGIN_PATH:"}/usr/lib/mozilla/plugins"
++ export MOZ_PLUGIN_PATH
++fi
++
+ # Use run-mozilla.sh in the current dir if it exists
+ # If not, then start resolving symlinks until we find run-mozilla.sh
+ found=0
diff --git a/recipes/mozilla/firefox-3.6/security-cross.patch b/recipes/mozilla/firefox-3.6/security-cross.patch
new file mode 100644
index 0000000000..b6c32fe52f
--- /dev/null
+++ b/recipes/mozilla/firefox-3.6/security-cross.patch
@@ -0,0 +1,64 @@
+--- /tmp/Linux.mk 2009-11-02 10:26:16.000000000 +0100
++++ mozilla-1.9.1/security/coreconf/Linux.mk 2009-11-02 10:27:04.000000000 +0100
+@@ -52,59 +52,8 @@
+
+ DEFAULT_COMPILER = gcc
+
+-ifeq ($(OS_TEST),ppc64)
+- OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+- CPU_ARCH = ppc
+-ifeq ($(USE_64),1)
+- ARCHFLAG = -m64
+-endif
+-else
+-ifeq ($(OS_TEST),alpha)
+- OS_REL_CFLAGS = -D_ALPHA_ -DLINUX1_2 -D_XOPEN_SOURCE
+- CPU_ARCH = alpha
+-else
+-ifeq ($(OS_TEST),x86_64)
+-ifeq ($(USE_64),1)
+- OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+- CPU_ARCH = x86_64
+-else
+- OS_REL_CFLAGS = -DLINUX1_2 -Di386 -D_XOPEN_SOURCE
+- CPU_ARCH = x86
+- ARCHFLAG = -m32
+-endif
+-else
+-ifeq ($(OS_TEST),sparc64)
+- OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+- CPU_ARCH = sparc
+-else
+-ifeq (,$(filter-out arm% sa110,$(OS_TEST)))
+- OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+- CPU_ARCH = arm
+-else
+-ifeq (,$(filter-out parisc%,$(OS_TEST)))
+- OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+- CPU_ARCH = hppa
+-else
+-ifeq (,$(filter-out i%86,$(OS_TEST)))
+- OS_REL_CFLAGS = -DLINUX1_2 -Di386 -D_XOPEN_SOURCE
+- CPU_ARCH = x86
+-else
+-ifeq ($(OS_TEST),sh4a)
+- OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+- CPU_ARCH = sh4
+-else
+-# $(OS_TEST) == m68k, ppc, ia64, sparc, s390, s390x, mips, sh3, sh4
+- OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+- CPU_ARCH = $(OS_TEST)
+-endif
+-endif
+-endif
+-endif
+-endif
+-endif
+-endif
+-endif
+-
++OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
++CPU_ARCH =
+
+ LIBC_TAG = _glibc
+
diff --git a/recipes/mozilla/firefox_3.6.bb b/recipes/mozilla/firefox_3.6.bb
new file mode 100644
index 0000000000..82e92be128
--- /dev/null
+++ b/recipes/mozilla/firefox_3.6.bb
@@ -0,0 +1,38 @@
+DEPENDS += "cairo sqlite3"
+
+PR = "r1"
+
+SRC_URI = "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${PV}/source/firefox-${PV}.source.tar.bz2;name=archive \
+ file://jsautocfg.h \
+ file://security-cross.patch;patch=1 \
+ file://Bug339782.additional.fix.diff;patch=1 \
+ file://Bug385583.nspr.jmp_buf.eabi.diff;patch=1 \
+ file://Bug405992.atomic.nspr.diff;patch=1 \
+ file://jemalloc-tls.patch;patch=1 \
+ file://0001-Remove-Werror-from-build.patch;patch=1 \
+ file://0002-Fix-security-cross-compile-cpu-detection-error.patch;patch=1 \
+ file://plugins-dir.patch;patch=1 \
+ file://firefox-plugin.pc \
+ file://firefox-xpcom.pc \
+ file://nspr.pc \
+"
+
+SRC_URI[archive.md5sum] = "458051557ff49e6a352c1d56eee5782a"
+SRC_URI[archive.sha256sum] = "8d4f12fff7bc361d83e6b486f9ec4264c60114ed86c805e1221b3d30efec0a4b"
+
+S = "${WORKDIR}/mozilla-1.9.2"
+
+inherit mozilla
+require firefox.inc
+
+EXTRA_OECONF += " --enable-official-branding --disable-crashreporter"
+
+
+export HOST_LIBIDL_CONFIG = "${STAGING_BINDIR_NATIVE}/libIDL-config-2"
+FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2"
+
+do_compile_prepend() {
+ cp ${WORKDIR}/jsautocfg.h ${S}/js/src/
+ sed -i "s|CPU_ARCH =|CPU_ARCH = ${TARGET_ARCH}|" security/coreconf/Linux.mk
+}
+
diff --git a/recipes/opkg/opkg.inc b/recipes/opkg/opkg.inc
index 20f415e3de..b317de4cc3 100644
--- a/recipes/opkg/opkg.inc
+++ b/recipes/opkg/opkg.inc
@@ -4,7 +4,7 @@ SECTION = "base"
LICENSE = "GPL"
DEPENDS = "curl gpgme"
PV = "0.1.6+svnr${SRCPV}"
-INC_PR = "r19"
+INC_PR = "r20"
FILESPATHPKG =. "opkg:"
diff --git a/recipes/opkg/update-alternatives-merge.inc b/recipes/opkg/update-alternatives-merge.inc
index a07275d038..f129fdbe84 100644
--- a/recipes/opkg/update-alternatives-merge.inc
+++ b/recipes/opkg/update-alternatives-merge.inc
@@ -4,7 +4,8 @@
pkg_postinst_${PN}_append () {
alternatives_dir_old="${prefix}/lib/ipkg/alternatives"
alternatives_dir_new="${prefix}/lib/opkg/alternatives"
- if [ -e "${alternatives_dir_old}" ] ; then
+ # if ${prefix}/lib/ipkg is already link (probably to ${prefix}/lib/opkg), then nothing needs to be merged and definitely we don't want "rm -rf ${alternatives_dir_old}" to happen
+ if [ ! -h ${prefix}/lib/ipkg -a -e "${alternatives_dir_old}" ] ; then
if [ ! -e "${alternatives_dir_new}" ] ; then
mkdir -p "${alternatives_dir_new}";
fi
diff --git a/recipes/pango/pango.inc b/recipes/pango/pango.inc
index 5189d950c1..545f0c0fa8 100644
--- a/recipes/pango/pango.inc
+++ b/recipes/pango/pango.inc
@@ -10,6 +10,9 @@ SECTION = "x11/libs"
DEPENDS = "glib-2.0 fontconfig freetype zlib virtual/libiconv virtual/libx11 libxft gtk-doc cairo"
+DEPENDS_virtclass-native = "glib-2.0-native cairo-native"
+BBCLASSEXTEND = "native"
+
PACKAGES_DYNAMIC = "pango-module-*"
RRECOMMENDS_${PN} = "pango-module-basic-x pango-module-basic-fc"
diff --git a/recipes/perl/libdbd-sqlite-perl_1.29.bb b/recipes/perl/libdbd-sqlite-perl_1.29.bb
new file mode 100644
index 0000000000..1f0c5d2f92
--- /dev/null
+++ b/recipes/perl/libdbd-sqlite-perl_1.29.bb
@@ -0,0 +1,27 @@
+DESCRIPTION = "PERL database interface driver for the SQLite database."
+SECTION = "libs"
+LICENSE = "Artistic GPL"
+DEPENDS_${PN} += "libdbi-perl-native"
+RDEPENDS_${PN} += "libdbi-perl \
+ perl-module-file-spec \
+ perl-module-file-path \
+ perl-module-scalar-util \
+ perl-module-list-util \
+ perl-module-test \
+ perl-module-test-more \
+ perl-module-test-harness \
+ perl-module-file-basename \
+ perl-module-storable \
+ perl-module-extutils-makemaker \
+ perl-module-locale \
+ perl-module-tie-hash \
+"
+PR = "r0"
+
+SRC_URI = "http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/DBD-SQLite-${PV}.tar.gz;name=dbdsqlite"
+SRC_URI[dbdsqlite.md5sum] = "2a47cea6ecff62508775d90151a8030f"
+SRC_URI[dbdsqlite.sha256sum] = "51d0d529e453ada1ce85772deb5cc4c86a2ebe9da2dd2fb0b40b77b555720867"
+
+S = "${WORKDIR}/DBD-SQLite-${PV}"
+
+inherit cpan
diff --git a/recipes/qt4/qt4-embedded.inc b/recipes/qt4/qt4-embedded.inc
index e8184e772d..39a5e98ca5 100644
--- a/recipes/qt4/qt4-embedded.inc
+++ b/recipes/qt4/qt4-embedded.inc
@@ -4,7 +4,7 @@ LICENSE = "GPL QPL"
PRIORITY = "optional"
HOMEPAGE = "http://www.trolltech.com"
DEPENDS += "directfb tslib"
-INC_PR = "r15"
+INC_PR = "r17"
QT_BASE_NAME ?= "qt4-embedded"
QT_BASE_LIB ?= "libqt-embedded"
diff --git a/recipes/qt4/qt4-x11-free-gles/linux.conf b/recipes/qt4/qt4-x11-free-gles/linux.conf
index b5741574b8..b825e5dc16 100644
--- a/recipes/qt4/qt4-x11-free-gles/linux.conf
+++ b/recipes/qt4/qt4-x11-free-gles/linux.conf
@@ -25,7 +25,6 @@ QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM)
QMAKE_LIBS_NIS = -lnsl
QMAKE_LIBS_EGL = -lEGL -lIMGegl -lsrv_um
QMAKE_LIBS_OPENGL_QT = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um
-QMAKE_LIBS_OPENVG = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um -lOpenVG -lOpenVGU
QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um
QMAKE_LIBS_THREAD = -lpthread
diff --git a/recipes/qt4/qt4-x11-free-gles_4.6.2.bb b/recipes/qt4/qt4-x11-free-gles_4.6.2.bb
index 8f2adf4b87..669cbf651e 100644
--- a/recipes/qt4/qt4-x11-free-gles_4.6.2.bb
+++ b/recipes/qt4/qt4-x11-free-gles_4.6.2.bb
@@ -1,5 +1,5 @@
require qt4-x11-free.inc
-PR = "${INC_PR}.4"
+PR = "${INC_PR}.5"
QT_GLFLAGS = "-opengl es2 -no-openvg"
diff --git a/recipes/qt4/qt4-x11-free.inc b/recipes/qt4/qt4-x11-free.inc
index dffe3a0d17..fd33a21787 100644
--- a/recipes/qt4/qt4-x11-free.inc
+++ b/recipes/qt4/qt4-x11-free.inc
@@ -5,7 +5,7 @@ HOMEPAGE = "http://www.trolltech.com"
LICENSE = "GPL QPL"
DEPENDS += "virtual/libx11 fontconfig xft libxext libxrender libxrandr libxcursor"
-INC_PR = "r14"
+INC_PR = "r16"
SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-${PV}.tar.gz \
file://0001-cross-compile.patch;patch=1 \
diff --git a/recipes/qt4/qt4.inc b/recipes/qt4/qt4.inc
index c98a0557e5..b6d575d67a 100644
--- a/recipes/qt4/qt4.inc
+++ b/recipes/qt4/qt4.inc
@@ -243,9 +243,13 @@ do_install() {
# fix pkgconfig, libtool and prl files
sed -i -e s#-L${S}/lib##g \
-e s#-L${STAGING_LIBDIR}##g \
+ -e 's#STAGING_LIBDIR}#libdir}'#g \
-e s#-L${libdir}##g \
-e s#'$(OE_QMAKE_LIBS_X11)'#"${OE_QMAKE_LIBS_X11}"#g \
- -e s#"-Wl,-rpath-link,${S}/lib"##g \
+ -e s#" -Wl,-rpath-link,${S}/lib"##g \
+ -e s#" -Wl,-rpath-link,${libdir}"##g \
+ -e 's#I/usr/include#Iincludedir}#g' \
+ -e 's#Iin#I${in#g' \
${D}${libdir}/*.la ${D}${libdir}/*.prl ${D}${libdir}/pkgconfig/*.pc
# fix pkgconfig files
diff --git a/recipes/shr/initscripts-shr/mountdevsubfs.sh b/recipes/shr/initscripts-shr/mountdevsubfs.sh
index c6cfb05af2..4308dab44e 100644
--- a/recipes/shr/initscripts-shr/mountdevsubfs.sh
+++ b/recipes/shr/initscripts-shr/mountdevsubfs.sh
@@ -4,11 +4,12 @@
test -c /dev/ptmx || mknod -m 666 /dev/ptmx c 5 2
-if [ -d /dev/pts ]; then
- mount -n -t devpts devpts /dev/pts -ogid=${TTYGRP},mode=${TTYMODE}
+if [ ! -d /dev/pts ]; then
+ mkdir /dev/pts
fi
-
-
-if [ -d /dev/shm ]; then
- mount -n -t tmpfs shmfs /dev/shm -omode=0777
+if [ ! -d /dev/shm ]; then
+ mkdir /dev/shm
fi
+
+mount -n -t devpts devpts /dev/pts -ogid=${TTYGRP},mode=${TTYMODE}
+mount -n -t tmpfs shmfs /dev/shm -omode=0777
diff --git a/recipes/shr/initscripts-shr_0.0.1.bb b/recipes/shr/initscripts-shr_0.0.1.bb
index 89df6ce375..ac7d83f96b 100644
--- a/recipes/shr/initscripts-shr_0.0.1.bb
+++ b/recipes/shr/initscripts-shr_0.0.1.bb
@@ -5,7 +5,7 @@ DEPENDS = ""
RDEPENDS = ""
LICENSE = "GPL"
PV = "0.0.1"
-PR = "r14"
+PR = "r15"
RPROVIDES_${PN} = "initscripts"
RCONFLICTS_${PN} = "initscripts"
diff --git a/recipes/tasks/task-nas-server.bb b/recipes/tasks/task-nas-server.bb
index 6924ff5388..f190a86587 100644
--- a/recipes/tasks/task-nas-server.bb
+++ b/recipes/tasks/task-nas-server.bb
@@ -1,7 +1,7 @@
DESCRIPTION = "Tasks for a Network Attached Storage server"
LICENSE = "MIT"
PROVIDES = "task-nas-server-everything"
-PR = "r1"
+PR = "r2"
inherit task
@@ -15,7 +15,6 @@ NAS_SERVER_PACKAGES = "\
task-nas-server-samba \
task-nas-server-dnsmasq \
task-nas-server-iptables \
- task-nas-server-openmoko \
task-nas-server-tzdata \
task-nas-server-nfs \
task-nas-server-vfat \
@@ -56,13 +55,6 @@ RRECOMMENDS_task-nas-server-iptables = "\
kernel-module-ipt-masquerade \
"
-DESCRIPTION_task-nas-server-openmoko = "NAS-Server: Openmoko Support"
-RDEPENDS_task-nas-server-openmoko = "\
- dfu-util \
-"
-RRECOMMENDS_task-nas-server-openmoko = "\
-"
-
DESCRIPTION_task-nas-server-tzdata = "NAS-Server: Timezone Support"
RDEPENDS_task-nas-server-tzdata = "\
tzdata \
diff --git a/recipes/tasks/task-shr-minimal.bb b/recipes/tasks/task-shr-minimal.bb
index b73c6affb9..c82e6d0aea 100644
--- a/recipes/tasks/task-shr-minimal.bb
+++ b/recipes/tasks/task-shr-minimal.bb
@@ -1,10 +1,12 @@
DESCRIPTION = "SHR Lite Image Feed"
-PR = "r24"
+PR = "r26"
PV = "2.0"
LICENSE = "GPL"
inherit task
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
def get_rdepends(bb, d):
enabled = bb.data.getVar("ENABLE_BINARY_LOCALE_GENERATION", d, 1)
@@ -116,10 +118,12 @@ RDEPENDS_${PN}-x = "\
"
RDEPENDS_${PN}-apps = "\
+ fso-abyss \
task-fso2-compliance \
phoneui-apps-messages \
phoneui-apps-contacts \
phoneui-apps-dialer \
+ phoneui-apps-quick-settings \
phonefsod \
phoneuid \
libphone-ui \
diff --git a/recipes/u-boot/u-boot-git/0006-cmd_itest.c-also-support-environment-variables-as-a.patch b/recipes/u-boot/u-boot-git/0006-cmd_itest.c-also-support-environment-variables-as-a.patch
deleted file mode 100644
index fc77736f8a..0000000000
--- a/recipes/u-boot/u-boot-git/0006-cmd_itest.c-also-support-environment-variables-as-a.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 11e8b9d3df819406049b36bed2f3fcf43ddd7f12 Mon Sep 17 00:00:00 2001
-From: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
-Date: Wed, 24 Feb 2010 15:33:29 +0100
-Subject: [PATCH] cmd_itest.c: also support environment variables as arguments
-
-Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
----
- common/cmd_itest.c | 8 ++++++++
- 1 files changed, 8 insertions(+), 0 deletions(-)
-
-diff --git a/common/cmd_itest.c b/common/cmd_itest.c
-index 58c5e7b..78a4082 100644
---- a/common/cmd_itest.c
-+++ b/common/cmd_itest.c
-@@ -69,6 +69,10 @@ static long evalexp(char *s, int w)
- long l = 0;
- long *p;
-
-+ /* if the parameter starts with a $ replace it with the environment value */
-+ if (s[0] == '$') {
-+ s = getenv(&s[1]);
-+ }
- /* if the parameter starts with a * then assume is a pointer to the value we want */
- if (s[0] == '*') {
- p = (long *)simple_strtoul(&s[1], NULL, 16);
-@@ -86,6 +90,10 @@ static long evalexp(char *s, int w)
-
- static char * evalstr(char *s)
- {
-+ /* if the parameter starts with a $ replace it with the environment value */
-+ if (s[0] == '$') {
-+ s = getenv(&s[1]);
-+ }
- /* if the parameter starts with a * then assume a string pointer else its a literal */
- if (s[0] == '*') {
- return (char *)simple_strtoul(&s[1], NULL, 16);
---
-1.5.4.3
-
diff --git a/recipes/u-boot/u-boot-git/0007-cmd_setexpr-allow-memory-addresses-and-env-vars-in-e.patch b/recipes/u-boot/u-boot-git/0007-cmd_setexpr-allow-memory-addresses-and-env-vars-in-e.patch
index 10fc4735a2..13408657b4 100644
--- a/recipes/u-boot/u-boot-git/0007-cmd_setexpr-allow-memory-addresses-and-env-vars-in-e.patch
+++ b/recipes/u-boot/u-boot-git/0007-cmd_setexpr-allow-memory-addresses-and-env-vars-in-e.patch
@@ -32,7 +32,7 @@ diff --git a/common/cmd_setexpr.c b/common/cmd_setexpr.c
index f8b5d4d..a7c6f53 100644
--- a/common/cmd_setexpr.c
+++ b/common/cmd_setexpr.c
-@@ -28,10 +28,32 @@
+@@ -28,10 +28,28 @@
#include <config.h>
#include <command.h>
@@ -40,10 +40,6 @@ index f8b5d4d..a7c6f53 100644
+{
+ ulong *p;
+
-+ /* if the parameter starts with a $ replace it with the environment value */
-+ if (s[0] == '$') {
-+ s = getenv(&s[1]);
-+ }
+ /* if the parameter starts with a * then assume is a pointer to the value we want */
+ if (s[0] == '*') {
+ p = (ulong *)simple_strtoul(&s[1], NULL, 16);
diff --git a/recipes/u-boot/u-boot_git.bb b/recipes/u-boot/u-boot_git.bb
index 3c65a1e297..b63edbdf67 100644
--- a/recipes/u-boot/u-boot_git.bb
+++ b/recipes/u-boot/u-boot_git.bb
@@ -1,5 +1,5 @@
require u-boot.inc
-PR ="r41"
+PR ="r42"
FILESPATHPKG =. "u-boot-git:"
@@ -43,7 +43,6 @@ SRC_URI_calamari = " \
file://0003-cmd_i2c.c-reworked-subcommand-handling.patch;patch=1 \
file://0004-cmd_i2c.c-sorted-commands-alphabetically.patch;patch=1 \
file://0005-cmd_i2c.c-added-i2c-read-to-memory-function.patch;patch=1 \
- file://0006-cmd_itest.c-also-support-environment-variables-as-a.patch;patch=1 \
file://0007-cmd_setexpr-allow-memory-addresses-and-env-vars-in-e.patch;patch=1 \
"
diff --git a/recipes/udev/attr_2.4.44.bb b/recipes/udev/attr_2.4.44.bb
index 7cb92179e7..a20568d5c1 100644
--- a/recipes/udev/attr_2.4.44.bb
+++ b/recipes/udev/attr_2.4.44.bb
@@ -1,7 +1,7 @@
DESCRIPTION = "Commands for Manipulating Filesystem Extended Attributes"
LICENSE = "GPLv2"
-PR = "r1"
+PR = "r2"
SRC_URI = "http://mirror.its.uidaho.edu/pub/savannah/attr/attr-${PV}.src.tar.gz"
@@ -9,6 +9,8 @@ inherit gettext autotools lib_package
EXTRA_OECONF = " --enable-gettext=yes ac_cv_path_XGETTEXT=${STAGING_BINDIR_NATIVE}/xgettext"
+LDFLAGS_append_libc-uclibc += " -lintl"
+
do_configure_append() {
# gettext hack
echo "#define _(str) str" >> ${S}/include/config.h
diff --git a/recipes/vorbis-tools/vorbis-tools-1.1.1/remove-deprecated-curl-option.patch b/recipes/vorbis-tools/vorbis-tools-1.1.1/remove-deprecated-curl-option.patch
deleted file mode 100644
index 5c52ef1b0d..0000000000
--- a/recipes/vorbis-tools/vorbis-tools-1.1.1/remove-deprecated-curl-option.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -urN vorbis-tools-1.1.1.orig/ogg123/http_transport.c vorbis-tools-1.1.1/ogg123/http_transport.c
---- vorbis-tools-1.1.1.orig/ogg123/http_transport.c 2005-06-13 15:11:44.000000000 +0200
-+++ vorbis-tools-1.1.1/ogg123/http_transport.c 2007-12-19 10:40:19.000000000 +0100
-@@ -116,7 +116,7 @@
- if (inputOpts.ProxyTunnel)
- curl_easy_setopt (handle, CURLOPT_HTTPPROXYTUNNEL, inputOpts.ProxyTunnel);
- */
-- curl_easy_setopt(handle, CURLOPT_MUTE, 1);
-+ /* curl_easy_setopt(handle, CURLOPT_MUTE, 1); */
- curl_easy_setopt(handle, CURLOPT_ERRORBUFFER, private->error);
- curl_easy_setopt(handle, CURLOPT_PROGRESSFUNCTION, progress_callback);
- curl_easy_setopt(handle, CURLOPT_PROGRESSDATA, private);
diff --git a/recipes/vorbis-tools/vorbis-tools_1.1.1.bb b/recipes/vorbis-tools/vorbis-tools_1.2.0.bb
index 01fc248dd1..7a231f8a4c 100644
--- a/recipes/vorbis-tools/vorbis-tools_1.1.1.bb
+++ b/recipes/vorbis-tools/vorbis-tools_1.2.0.bb
@@ -5,8 +5,10 @@ LICENSE = "GPL"
DEPENDS = "libogg libvorbis libao curl"
SECTION = "console/multimedia"
-SRC_URI = "http://downloads.xiph.org/releases/vorbis/vorbis-tools-${PV}.tar.gz \
- file://remove-deprecated-curl-option.patch;patch=1"
+SRC_URI = "http://downloads.xiph.org/releases/vorbis/vorbis-tools-${PV}.tar.gz;name=src"
+
+SRC_URI[src.md5sum] = "df976d24e51ef3d87cd462edf747bf9a"
+SRC_URI[src.sha256sum] = "dbe753ce0ae0797f25117720bb2ba0d848388d3f47af8db31ebc35552c3de07b"
inherit autotools
diff --git a/recipes/wireshark/files/fix-configure.patch b/recipes/wireshark/files/fix-configure.patch
new file mode 100644
index 0000000000..860edcc832
--- /dev/null
+++ b/recipes/wireshark/files/fix-configure.patch
@@ -0,0 +1,72 @@
+* Make sure to not include -I/usr/include and such
+* Claim that our inet_pton is working...
+
+Index: wireshark-1.2.6/acinclude.m4
+===================================================================
+--- wireshark-1.2.6.orig/acinclude.m4 2010-01-27 17:12:51.000000000 +0100
++++ wireshark-1.2.6/acinclude.m4 2010-02-28 23:46:12.000000000 +0100
+@@ -343,9 +343,9 @@
+ #
+ AC_MSG_CHECKING(for extraneous pcap header directories)
+ found_pcap_dir=""
+- pcap_dir_list="/usr/include/pcap $prefix/include/pcap $prefix/include"
++ pcap_dir_list="$prefix/include/pcap $prefix/include"
+ if test "x$ac_cv_enable_usr_local" = "xyes" ; then
+- pcap_dir_list="$pcap_dir_list /usr/local/include/pcap"
++ pcap_dir_list="$pcap_dir_list"
+ fi
+ for pcap_dir in $pcap_dir_list
+ do
+Index: wireshark-1.2.6/configure.in
+===================================================================
+--- wireshark-1.2.6.orig/configure.in 2010-01-27 17:12:50.000000000 +0100
++++ wireshark-1.2.6/configure.in 2010-03-01 00:28:21.000000000 +0100
+@@ -451,22 +451,22 @@
+ #
+ if test "x$prefix" != "x" ; then
+ AC_MSG_CHECKING(whether to use $prefix for headers and libraries)
+- if test -d $prefix/include ; then
+- AC_MSG_RESULT(yes)
+- #
+- # Arrange that we search for header files in "$prefix/include", as
+- # various packages we use may have been installed under "$prefix/include".
+- #
+- CFLAGS="$CFLAGS -I$prefix/include"
+- CPPFLAGS="$CPPFLAGS -I$prefix/include"
+-
+- #
+- # Arrange that we search for libraries in "$prefix/lib".
+- #
+- AC_WIRESHARK_ADD_DASH_L(LDFLAGS, $prefix/lib)
+- else
++ #if test -d $prefix/include ; then
++ # AC_MSG_RESULT(yes)
++ # #
++ # # Arrange that we search for header files in "$prefix/include", as
++ # # various packages we use may have been installed under "$prefix/include".
++ # #
++ # CFLAGS="$CFLAGS -I$prefix/include"
++ # CPPFLAGS="$CPPFLAGS -I$prefix/include"
++ #
++ # #
++ # # Arrange that we search for libraries in "$prefix/lib".
++ # #
++ # AC_WIRESHARK_ADD_DASH_L(LDFLAGS, $prefix/lib)
++ #else
+ AC_MSG_RESULT(no)
+- fi
++ #fi
+ fi
+
+ dnl Look in /usr/local for header files and libraries ?
+@@ -1469,8 +1469,8 @@
+ #endif
+ }], [AC_MSG_RESULT(ok);
+ have_inet_pton=yes], [AC_MSG_RESULT(broken);
+-have_inet_pton=no], [AC_MSG_RESULT(cross compiling, assume it is broken);
+-have_inet_pton=no])],
++have_inet_pton=no], [AC_MSG_RESULT(cross compiling, assume it is broken... no here);
++have_inet_pton=yes])],
+ have_inet_pton=no)
+ if test "$have_inet_pton" = no; then
+ INET_PTON_C="inet_pton.c"
diff --git a/recipes/wireshark/files/ieee80215.4.patch b/recipes/wireshark/files/ieee80215.4.patch
index 8bcdd93d97..d17b60640f 100644
--- a/recipes/wireshark/files/ieee80215.4.patch
+++ b/recipes/wireshark/files/ieee80215.4.patch
@@ -1,9 +1,13 @@
---- wireshark-1.0.5.orig/epan/dissectors/packet-ieee802154.c
-+++ wireshark-1.0.5/epan/dissectors/packet-ieee802154.c
-@@ -1696,7 +1696,7 @@
- dissector_handle_t ieee802154_handle;
+Index: wireshark-1.2.6/epan/dissectors/packet-ieee802154.c
+===================================================================
+--- wireshark-1.2.6.orig/epan/dissectors/packet-ieee802154.c 2010-01-27 17:12:34.000000000 +0100
++++ wireshark-1.2.6/epan/dissectors/packet-ieee802154.c 2010-02-28 22:25:50.000000000 +0100
+@@ -1821,7 +1821,7 @@
+
+ if (!prefs_initialized){
+ /* Get the dissector handles. */
+- ieee802154_handle = find_dissector("wpan");
++ ieee802154_handle = find_dissector("wpan_nofcs");
+ ieee802154_nonask_phy_handle = find_dissector("wpan-nonask-phy");
+ data_handle = find_dissector("data");
- /* Get the dissector handles. */
-- ieee802154_handle = find_dissector("wpan");
-+ ieee802154_handle = find_dissector("wpan_nofcs");
- data_handle = find_dissector("data");
diff --git a/recipes/wireshark/wireshark_1.0.5.bb b/recipes/wireshark/wireshark_1.2.6.bb
index aa8e66c2f4..1af48e8577 100644
--- a/recipes/wireshark/wireshark_1.0.5.bb
+++ b/recipes/wireshark/wireshark_1.2.6.bb
@@ -3,13 +3,16 @@ HOMEPAGE = "http://www.wireshark.org"
SECTION = "network"
LICENSE = "GPL"
DEPENDS = "perl-native gnutls libpcap pcre expat glib-2.0 libsmi gtk+"
-EXTRA_OECONF = "--disable-usrlocal --with-pcap=${STAGING_DIR_HOST}${layout_prefix} \
+EXTRA_OECONF = "--enable-usr-local=no --with-pcap=${STAGING_DIR_HOST}${layout_prefix} \
--with-libsmi=${STAGING_DIR_HOST}${layout_prefix} --enable-tshark --enable-wireshark"
PR = "r5"
-SRC_URI = "${SOURCEFORGE_MIRROR}/wireshark/wireshark-${PV}.tar.bz2 \
- file://ieee80215.4.patch;patch=1"
+SRC_URI = "${SOURCEFORGE_MIRROR}/wireshark/wireshark-${PV}.tar.bz2;name=src \
+ file://ieee80215.4.patch;patch=1 \
+ file://fix-configure.patch;patch=1 "
+SRC_URI[src.md5sum] = "f3e0917ed393366bbf96c53b58cb0931"
+SRC_URI[src.sha256sum]= "72c8178dd0614d963173d667d5ecb39bc7102453ea09da7ef3302daee7733f3c"
ARM_INSTRUCTION_SET = "arm"
@@ -63,7 +66,6 @@ do_compile_prepend() {
-e 's@-I/usr/local/include @@g' \
-e "s@-I${includedir} @@g" -i '{}' ';'
- ${BUILD_CC} ${BUILD_CFLAGS} -o rdps rdps.c
oe_runmake -C tools/lemon CC="${BUILD_CC} ${BUILD_CFLAGS}" \
CC_FOR_BUILD="${BUILD_CC} ${BUILD_CFLAGS}" LDFLAGS="${BUILD_LDFLAGS}"
}
diff --git a/recipes/xinput-calibrator/xinput-calibrator.inc b/recipes/xinput-calibrator/xinput-calibrator.inc
new file mode 100644
index 0000000000..fad07869c7
--- /dev/null
+++ b/recipes/xinput-calibrator/xinput-calibrator.inc
@@ -0,0 +1,7 @@
+DESCRIPTION = "A generic touchscreen calibration program for X.Org"
+HOMEPAGE = "http://www.freedesktop.org/wiki/Software/xinput_calibrator"
+LICENSE = "MIT/X11"
+DEPENDS = "virtual/libx11 libxi"
+RDEPENDS_${PN} = "xinput"
+
+inherit autotools
diff --git a/recipes/xinput-calibrator/xinput-calibrator_0.5.0.bb b/recipes/xinput-calibrator/xinput-calibrator_0.5.0.bb
index 9d549b3af8..71d7931816 100644
--- a/recipes/xinput-calibrator/xinput-calibrator_0.5.0.bb
+++ b/recipes/xinput-calibrator/xinput-calibrator_0.5.0.bb
@@ -1,11 +1,4 @@
-DESCRIPTION = "A generic touchscreen calibration program for X.Org"
-HOMEPAGE = "http://github.com/tias/xinput_calibrator"
-
-LICENSE = "MIT/X11"
-
-DEPENDS = "virtual/libx11 libxi"
-
-RDEPENDS_${PN} = "xinput"
+require xinput-calibrator.inc
PR = "r6"
@@ -17,8 +10,6 @@ SRC_URI = "git://github.com/tias/xinput_calibrator.git;protocol=git \
SRCREV = "1c715824334c5d33085dba02f195c9720c2883b5"
S = "${WORKDIR}/git/"
-inherit autotools
-
do_install() {
install -d ${D}${bindir}
install -m 0755 src/xinput_calibrator_x11 ${D}${bindir}/xinput_calibrator
diff --git a/recipes/xinput-calibrator/xinput-calibrator_0.6.0.bb b/recipes/xinput-calibrator/xinput-calibrator_0.6.0.bb
new file mode 100644
index 0000000000..517f919549
--- /dev/null
+++ b/recipes/xinput-calibrator/xinput-calibrator_0.6.0.bb
@@ -0,0 +1,14 @@
+require xinput-calibrator.inc
+
+SRC_URI = "git://github.com/tias/xinput_calibrator.git;protocol=git"
+
+SRCREV = "d6e01d780001948f55006698e8e9e48c12894810"
+S = "${WORKDIR}/git/"
+
+do_install_append() {
+ install -d ${D}${bindir}
+ install -m 0755 scripts/xinput_calibrator_pointercal.sh ${D}${bindir}/xinput_calibrator_once.sh
+ ln -s ${bindir}/xinput_calibrator_x11 ${D}${bindir}/xinput_calibrator
+ install -d ${D}${datadir}/applications/
+ install -m 0755 scripts/xinput_calibrator.desktop ${D}${datadir}/applications/xinput-calibrator.desktop
+}
diff --git a/recipes/xinput-calibrator/xinput-calibrator_git.bb b/recipes/xinput-calibrator/xinput-calibrator_git.bb
new file mode 100644
index 0000000000..8d3d4c4a4a
--- /dev/null
+++ b/recipes/xinput-calibrator/xinput-calibrator_git.bb
@@ -0,0 +1,20 @@
+require xinput-calibrator.inc
+
+PV = "0.6.0+gitr${SRCREV}"
+
+SRC_URI = "git://github.com/tias/xinput_calibrator.git;protocol=git;branch=misclick"
+
+SRCREV = "496d4401731c6e5ed550e446cc2fc4b12d999ad8"
+S = "${WORKDIR}/git/"
+
+do_install_append() {
+ install -d ${D}${bindir}
+ install -m 0755 scripts/xinput_calibrator_pointercal.sh ${D}${bindir}/xinput_calibrator_once.sh
+ ln -s ${bindir}/xinput_calibrator_x11 ${D}${bindir}/xinput_calibrator
+ install -d ${D}${datadir}/applications/
+ install -m 0755 scripts/xinput_calibrator.desktop ${D}${datadir}/applications/xinput-calibrator.desktop
+}
+
+# remove this after misclick branch is well-tested and merged to master
+DEFAULT_PREFERENCE = "-1"
+DEFAULT_PREFERENCE_shr = "1"
diff --git a/recipes/xorg-xserver/xorg-xserver-common.inc b/recipes/xorg-xserver/xorg-xserver-common.inc
index af96c50415..a72812c22f 100644
--- a/recipes/xorg-xserver/xorg-xserver-common.inc
+++ b/recipes/xorg-xserver/xorg-xserver-common.inc
@@ -6,13 +6,13 @@ INC_PR = "r14"
PROVIDES = "virtual/xserver"
-# Config manager for xserver, options are: hal, libudev, empty (for configuration in xorg.conf)
+# Config manager for xserver, options are: hal, udev, empty (for configuration in xorg.conf)
DISTRO_XORG_CONFIG_MANAGER ?= "hal"
DISTRO_XORG_CONFIG_MANAGER_shr ?= ""
# default none, enabled by DISTRO_XORG_CONFIG_MANAGER setting
CONFIG_MANAGER_OPTION += "${@['--disable-config-hal','--enable-config-hal',''][bb.data.getVar('DISTRO_XORG_CONFIG_MANAGER',d) in ['hal']]}"
-CONFIG_MANAGER_OPTION += "${@['--disable-config-udev','--enable-config-udev',''][bb.data.getVar('DISTRO_XORG_CONFIG_MANAGER',d) in ['libudev']]}"
+CONFIG_MANAGER_OPTION += "${@['--disable-config-udev','--enable-config-udev',''][bb.data.getVar('DISTRO_XORG_CONFIG_MANAGER',d) in ['udev']]}"
DEPENDS = "fontconfig freetype flex-native lbxutil kbproto \
xf86driproto drm glproto randrproto renderproto fixesproto damageproto \
@@ -22,9 +22,7 @@ xf86dgaproto videoproto compositeproto trapproto recordproto dmxproto \
resourceproto xineramaproto xtrans evieext libxkbfile libxfont libxau \
libfontenc libxdmcp libxxf86vm libxaw libxmu libxt libxpm libxext libx11 \
libxkbui libxxf86misc libxi libdmx libxtst libxres virtual/libgl libxcalibrate \
-libxv"
-
-RDEPENDS = "${DISTRO_XORG_CONFIG_MANAGER}"
+libxv ${DISTRO_XORG_CONFIG_MANAGER}"
RRECOMMENDS_${PN} = "libpciaccess"