summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Kunze <thommycheck@gmx.de>2008-08-15 23:26:52 +0000
committerThomas Kunze <thommycheck@gmx.de>2008-08-15 23:26:52 +0000
commitd7227f99b10c4dae4bb5a9ac778d6e8ed95cb9c5 (patch)
tree2cb6cedd52d0c05da488a64633f9523b99f5a790
parentc0c8fce62731669a30d7e54256a2717bc4a071ca (diff)
parenta0f8f7ba45003db8d68b7844e535d3ae6020d7ce (diff)
merge of 'a54a6607517e20ec074b70c4070cfa9d989624e1'
and 'df64369ee8c68fc382142171ee6ae2a6494e7e74'
-rw-r--r--MAINTAINERS3
-rw-r--r--conf/checksums.ini2
-rw-r--r--conf/distro/include/preferred-om-2008-versions.inc6
-rw-r--r--conf/distro/include/sane-srcrevs.inc9
-rw-r--r--conf/machine/om-gta01.conf4
-rw-r--r--conf/machine/om-gta02.conf5
-rw-r--r--packages/atd/atd_0.80.bb14
-rw-r--r--packages/busybox/busybox.inc2
-rw-r--r--packages/busybox/busybox_1.9.2.bb2
-rw-r--r--packages/classpath/classpath.inc8
-rw-r--r--packages/dhcp/dhcp_3.0.1.bb5
-rw-r--r--packages/dhcp/dhcp_3.0.2.bb5
-rw-r--r--packages/gpsbabel/gpsbabel_1.3.5.bb (renamed from packages/gpsbabel/gpsbabel_1.3.3.bb)2
-rw-r--r--packages/gtk-webcore/midori_0.0.19.bb5
-rw-r--r--packages/guile/files/configure-lossage.patch28
-rw-r--r--packages/guile/files/gcc4.patch16
-rw-r--r--packages/guile/guile_1.6.4.bb132
-rw-r--r--packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch275
-rw-r--r--packages/linux/linux-omap2_git.bb3
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-akita2
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-bootcdx862
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-c7x02
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-hx20002
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-poodle2
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-qemuarm2
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-qemux862
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-spitz2
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-zylonite2
-rw-r--r--packages/lzma/lzma-native_4.17.bb5
-rw-r--r--packages/nandlogical/nandlogical-static_1.0.0.bb5
-rw-r--r--packages/nandlogical/nandlogical_1.0.0.bb6
-rw-r--r--packages/openmoko2/openmoko-appmanager2_svn.bb5
-rw-r--r--packages/phoneme/.mtn2git_empty0
-rw-r--r--packages/phoneme/files/.mtn2git_empty0
-rw-r--r--packages/phoneme/files/phoneme-makefile-fix.patch144
-rw-r--r--packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb26
-rw-r--r--packages/phoneme/phoneme-advanced.inc160
-rw-r--r--packages/portaudio/portaudio-v19_20071207.bb27
-rw-r--r--packages/portaudio/portaudio-v19_svn.bb29
-rw-r--r--packages/portaudio/portaudio_0.0.19.bb87
-rw-r--r--packages/povray/povray-3.6.1+3.7.0-beta25b/.mtn2git_empty0
-rw-r--r--packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch42
-rw-r--r--packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff70
-rw-r--r--packages/povray/povray_3.6.1+3.7.0-beta25b.bb42
-rw-r--r--packages/python/python-ptrace_0.3.2.bb10
-rw-r--r--packages/rdesktop/rdesktop_1.6.0.bb13
-rw-r--r--packages/tangogps/files/0004-Update-fix-timestamp-from-gypsy.patch18
-rw-r--r--packages/tangogps/tangogps-fso_0.9.2.bb3
-rw-r--r--packages/tasks/task-python-everything.bb3
-rw-r--r--packages/xorg-lib/pixman/.mtn2git_empty0
-rw-r--r--packages/xorg-lib/pixman/pixman-arm.patch310
-rw-r--r--packages/xorg-lib/pixman_0.11.8.bb18
52 files changed, 1237 insertions, 330 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 498a7780f4..65f6a10095 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -54,7 +54,8 @@ Website: http://fl0rian.wordpress.com, http://www.kernelconcepts.de/~fuchs/
Machines: nokia770, netvista, htcuniversal, netbook-pro, htctornado, bd-neon
Distros:
Interests: GPEPhone, OpenSync, GPE, Matchbox, *dbus*, X, sqlite, Palm TX,
-interests: phone devices
+interests: phone devices, evaluation hardware and PDAs
+Recipes: atd
Recipes: gpe-*, libgpe*, libeventdb, libtododb, libcontactsdb, xserver-common
Recipes: gomunicator, mbmerlin, prismstumbler, gkdial, fbreader, networkmanager
Recipes: minimix, minilite, miniclipboard, gpephone*
diff --git a/conf/checksums.ini b/conf/checksums.ini
index df007df044..648da96cb6 100644
--- a/conf/checksums.ini
+++ b/conf/checksums.ini
@@ -9502,7 +9502,7 @@ sha256=2ac2154e3f66b5b32ca25d47e3977db115ac6dc52ddb7442ce16e65a4ac1afee
md5=c703192481d94dfa3f4e24eed22c8182
sha256=daa670b686f959ab15e457425e57c50f0b973ee4d24d6a4171c33f467961ad1d
-[http://www.7-zip.org/dl/lzma417.tar.bz2]
+[http://downloads.sourceforge.net/sevenzip/lzma417.tar.bz2]
md5=b1ab85e4dc1eb1323d77fef47a2cb71c
sha256=84124d4501798ecb284fceb28931db023850535e1b1146c884add7b3b0331cbc
diff --git a/conf/distro/include/preferred-om-2008-versions.inc b/conf/distro/include/preferred-om-2008-versions.inc
index 211cad8956..ed9127d760 100644
--- a/conf/distro/include/preferred-om-2008-versions.inc
+++ b/conf/distro/include/preferred-om-2008-versions.inc
@@ -222,8 +222,8 @@ PREFERRED_VERSION_dbh ?= "1.0-18"
PREFERRED_VERSION_db-native ?= "4.3.29"
PREFERRED_VERSION_dbus ?= "1.2.1"
PREFERRED_VERSION_dbus-native ?= "1.2.1"
-PREFERRED_VERSION_dbus-glib ?= "0.74"
-PREFERRED_VERSION_dbus-glib-native ?= "0.74"
+PREFERRED_VERSION_dbus-glib ?= "0.76"
+PREFERRED_VERSION_dbus-glib-native ?= "0.76"
PREFERRED_VERSION_dbus-native ?= "1.0.3"
PREFERRED_VERSION_dbus-python ?= "0.71"
PREFERRED_VERSION_dcetest ?= "1.2"
@@ -1933,6 +1933,8 @@ PREFERRED_VERSION_util-macros ?= "1.1.5"
PREFERRED_VERSION_util-macros-native ?= "1.1.5"
PREFERRED_VERSION_uucp ?= "1.07"
PREFERRED_VERSION_v4l2apps ?= "20020317"
+PREFERRED_VERSION_vala ?= "0.1.5"
+PREFERRED_VERSION_vala-native ?= "0.1.5"
PREFERRED_VERSION_vde ?= "2.0.2"
PREFERRED_VERSION_vectoroids ?= "1.1.0"
PREFERRED_VERSION_videoplayer ?= "0.1"
diff --git a/conf/distro/include/sane-srcrevs.inc b/conf/distro/include/sane-srcrevs.inc
index 3b86c2a539..eed6e42df5 100644
--- a/conf/distro/include/sane-srcrevs.inc
+++ b/conf/distro/include/sane-srcrevs.inc
@@ -49,7 +49,7 @@ SRCREV_pn-gypsy ?= "134"
SRCREV_pn-hildon-1 ?= "14429"
SRCREV_pn-illume ?= "170"
SRCREV_pn-illume-theme-asu ?= "170"
-SRCREV_pn-illume-theme-freesmartphone ?= "5cdedae0e45911ef10f6966587e7f3e842b5d2bd"
+SRCREV_pn-illume-theme-freesmartphone ?= "0f27c0b52b8dad255349e6c72d590fa787be8c3b"
SRCREV_pn-kismet ?= "2285"
SRCREV_pn-kismet-newcore ?= "2285"
SRCREV_pn-libcalenabler2 ?= "1410"
@@ -71,7 +71,7 @@ SRCREV_pn-lightmediascanner ?= "68"
SRCREV_pn-linux-bfin ?= "3758"
SRCREV_pn-linux-hackndev-2.6 ?= "1308"
SRCREV_pn-linux-ixp4xx ?= "1066"
-SRCREV_pn-linux-openmoko ?= "241f69c55ee8f5dd067ebd2d51aa9fdedb212759"
+SRCREV_pn-linux-openmoko ?= "88bf43840b9df0eb0a077a1394eb564be80a412e"
SRCREV_pn-linux-openmoko-devel ?= "7a1370a816b9348dd8f36a667905dd3533cefc9b"
SRCREV_pn-llvm-gcc4 ?= "374"
SRCREV_pn-llvm-gcc4-cross ?= "374"
@@ -146,13 +146,10 @@ SRCREV_pn-opkg-utils ?= "4534"
SRCREV_pn-opkg-utils-native ?= "4534"
SRCREV_pn-oprofileui ?= "173"
SRCREV_pn-packagekit ?= "813fa8cfb139246cf180d52895b52b28616ae2f5"
+SRCREV_pn-portaudio-v19 ?= "1387"
SRCREV_pn-psplash ?= "249"
SRCREV_pn-pty-forward-native ?= "4214"
SRCREV_pn-python-etk ?= "8b51535150cbc88467e3d8b578e54df27eac643"
-SRCREV_pn-python-odeviced ?= "fcf6f975b18d478ce618284c0dcc2f28f5c43cc1"
-SRCREV_pn-python-oeventd ?= "9053e5be847d694681c3664664ed669543a0a777"
-SRCREV_pn-python-ophoned ?= "82c318b8592588bc7ce8bccdfc090e59cfc9b98c"
-SRCREV_pn-python-ousaged ?= "836c091405eea3e29efdba3e1351befd1c96267b"
SRCREV_pn-pygsm ?= "976477f6b403f422b4ea730f71ebf409f6671141"
SRCREV_pn-pylgrim ?= "20"
SRCREV_pn-pyneod ?= "41de4d538b50b27ab2a2f5aae1a180b880a05b6a"
diff --git a/conf/machine/om-gta01.conf b/conf/machine/om-gta01.conf
index 46bd42f2a2..57d81c2ade 100644
--- a/conf/machine/om-gta01.conf
+++ b/conf/machine/om-gta01.conf
@@ -1,7 +1,7 @@
#-----------------------------------------------------------------------------
#@TYPE: Machine
-#@NAME: FIC GTA01 (Neo1973)
-#@DESCRIPTION: Machine configuration for the FIC Neo1973/1 GSM phone
+#@NAME: FIC GTA01 (Neo 1973)
+#@DESCRIPTION: Machine configuration for the FIC Neo 1973 GSM phone
#-----------------------------------------------------------------------------
TARGET_ARCH = "arm"
diff --git a/conf/machine/om-gta02.conf b/conf/machine/om-gta02.conf
index 45dc0518a4..88aa3881c7 100644
--- a/conf/machine/om-gta02.conf
+++ b/conf/machine/om-gta02.conf
@@ -1,7 +1,7 @@
#-----------------------------------------------------------------------------
#@TYPE: Machine
-#@NAME: FIC GTA02 (Neo1973)
-#@DESCRIPTION: Machine configuration for the FIC Neo1973/2 GSM phone
+#@NAME: Openmoko GTA02 (NeoFreerunner)
+#@DESCRIPTION: Machine configuration for the Openmoko NeoFreerunner GSM phone
#-----------------------------------------------------------------------------
TARGET_ARCH = "arm"
@@ -29,6 +29,7 @@ MACHINE_EXTRA_RRECOMMENDS = "\
kernel-module-snd-soc-neo1973-gta02-wm8753 \
"
+# no need to bypass this as in om-gta01, since this model is not using a multiplexed ttySAC0
SERIAL_CONSOLE = "115200 ttySAC2"
# used by some images
diff --git a/packages/atd/atd_0.80.bb b/packages/atd/atd_0.80.bb
new file mode 100644
index 0000000000..f3adbd7cb3
--- /dev/null
+++ b/packages/atd/atd_0.80.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Lightweight At Daemon"
+SECTION = "base"
+LICENSE = "GPLV2"
+RCONFLICTS = "at"
+RREPLACES = "at"
+
+PR = "r0"
+
+SRC_URI = "http://projects.linuxtogo.org/frs/download.php/222/${P}.tar.gz"
+
+inherit autotools update-rc.d
+
+INITSCRIPT_NAME = "atd"
+INITSCRIPT_PARAMS = "defaults 97"
diff --git a/packages/busybox/busybox.inc b/packages/busybox/busybox.inc
index 04decf61b2..cc196ad767 100644
--- a/packages/busybox/busybox.inc
+++ b/packages/busybox/busybox.inc
@@ -35,7 +35,7 @@ PACKAGES =+ "${PN}-httpd ${PN}-udhcpd"
# We need this RRECOMMENDS because libc dlopens libgcc
# and shlib mechanism can not detect it because its not
# listed in the NEEDED field.
-RDEPENDS += "libgcc"
+RRECOMMENDS += "libgcc"
FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
FILES_${PN}-udhcpd = "${sysconfdir}/init.d/busybox-udhcpd"
diff --git a/packages/busybox/busybox_1.9.2.bb b/packages/busybox/busybox_1.9.2.bb
index c9440e7b4f..37cd2a86be 100644
--- a/packages/busybox/busybox_1.9.2.bb
+++ b/packages/busybox/busybox_1.9.2.bb
@@ -1,5 +1,5 @@
require busybox.inc
-PR = "r1"
+PR = "r2"
SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.gz \
file://udhcpscript.patch;patch=1 \
diff --git a/packages/classpath/classpath.inc b/packages/classpath/classpath.inc
index cfb9f1c089..cee09857e4 100644
--- a/packages/classpath/classpath.inc
+++ b/packages/classpath/classpath.inc
@@ -30,6 +30,14 @@ EXTRA_OECONF = "\
inherit autotools
+# hack to get config.rpath in, it comes from gettext
+do_configure_prepend () {
+
+ ${@['','cp ${STAGING_DATADIR_NATIVE}/automake-1.10/config.rpath ${S}'][bb.data.getVar('PREFERRED_VERSION_automake-native',d,1) == '1.10']}
+
+}
+
+
do_stage() {
install -d ${STAGING_INCDIR}/classpath
install -m 0644 include/jni* ${STAGING_INCDIR}/classpath
diff --git a/packages/dhcp/dhcp_3.0.1.bb b/packages/dhcp/dhcp_3.0.1.bb
index 650de1391d..7d55dc3a03 100644
--- a/packages/dhcp/dhcp_3.0.1.bb
+++ b/packages/dhcp/dhcp_3.0.1.bb
@@ -2,7 +2,7 @@ SECTION = "console/network"
DESCRIPTION = "Internet Software Consortium DHCP package"
HOMEPAGE = "http://www.isc.org/"
LICENSE = "BSD"
-PR = "r2"
+PR = "r3"
SRC_URI = "ftp://ftp.isc.org/isc/dhcp/dhcp-3.0-history/dhcp-${PV}.tar.gz \
file://noattrmode.patch;patch=1 \
file://fixincludes.patch;patch=1 \
@@ -33,12 +33,13 @@ do_install() {
install -m 0644 ${WORKDIR}/default-server ${D}${sysconfdir}/default/dhcp-server
install -m 0644 ${WORKDIR}/dhclient.conf ${D}${sysconfdir}/dhcp/dhclient.conf
install -m 0644 ${WORKDIR}/dhcpd.conf ${D}${sysconfdir}/dhcp/dhcpd.conf
+ install -d ${D}/var/lib/dhcp
}
PACKAGES = "${PN}-dbg dhcp-server dhcp-client dhcp-relay dhcp-omshell dhcp-dev dhcp-doc"
FILES_dhcp-server = "${sbindir}/dhcpd /etc/init.d/dhcp-server /etc/default/dhcp-server /etc/dhcp/dhcpd.conf"
FILES_dhcp-relay = "${sbindir}/dhcrelay /etc/init.d/dhcp-relay /etc/default/dhcp-relay"
-FILES_dhcp-client = "/sbin/ /etc/dhcp/dhclient.conf"
+FILES_dhcp-client = "/sbin/ /etc/dhcp/dhclient.conf /var/lib/dhcp"
FILES_dhcp-omshell = "${bindir}/omshell"
CONFFILES_dhcp-server_nylon = "/etc/dhcp/dhcpd.conf"
diff --git a/packages/dhcp/dhcp_3.0.2.bb b/packages/dhcp/dhcp_3.0.2.bb
index 851ae5ca95..6b0f9de1bf 100644
--- a/packages/dhcp/dhcp_3.0.2.bb
+++ b/packages/dhcp/dhcp_3.0.2.bb
@@ -2,7 +2,7 @@ SECTION = "console/network"
DESCRIPTION = "Internet Software Consortium DHCP package"
HOMEPAGE = "http://www.isc.org/"
LICENSE = "BSD"
-PR = "r5"
+PR = "r6"
SRC_URI = "ftp://ftp.isc.org/isc/dhcp/dhcp-3.0-history/dhcp-${PV}.tar.gz \
file://noattrmode.patch;patch=1 \
file://fixincludes.patch;patch=1 \
@@ -34,6 +34,7 @@ do_install() {
install -m 0644 ${WORKDIR}/default-server ${D}${sysconfdir}/default/dhcp-server
install -m 0644 ${WORKDIR}/dhclient.conf ${D}${sysconfdir}/dhcp/dhclient.conf
install -m 0644 ${WORKDIR}/dhcpd.conf ${D}${sysconfdir}/dhcp/dhcpd.conf
+ install -d ${D}/var/lib/dhcp
}
PACKAGES += "dhcp-server dhcp-client dhcp-relay dhcp-omshell"
@@ -41,7 +42,7 @@ FILES_${PN} = ""
FILES_dhcp-server = "${sbindir}/dhcpd ${sysconfdir}/init.d/dhcp-server ${sysconfdir}/default/dhcp-server ${sysconfdir}/dhcp/dhcpd.conf"
FILES_dhcp-relay = "${sbindir}/dhcrelay ${sysconfdir}/init.d/dhcp-relay ${sysconfdir}/default/dhcp-relay"
-FILES_dhcp-client = "${base_sbindir}/dhclient ${base_sbindir}/dhclient-script ${sysconfdir}/dhcp/dhclient.conf"
+FILES_dhcp-client = "${base_sbindir}/dhclient ${base_sbindir}/dhclient-script ${sysconfdir}/dhcp/dhclient.conf /var/lib/dhcp"
RDEPENDS_dhcp-client = "bash"
FILES_dhcp-omshell = "${bindir}/omshell"
diff --git a/packages/gpsbabel/gpsbabel_1.3.3.bb b/packages/gpsbabel/gpsbabel_1.3.5.bb
index b5ff6a8510..c46b9df81d 100644
--- a/packages/gpsbabel/gpsbabel_1.3.3.bb
+++ b/packages/gpsbabel/gpsbabel_1.3.5.bb
@@ -6,7 +6,7 @@ LICENSE = "GPL"
PR = "r1"
-SRC_URI = "${SOURCEFORGE_MIRROR}/gpsbabel/gpsbabel-${PV}.tar.gz"
+SRC_URI = "http://www.gpsbabel.org/plan9.php?dl=gpsbabel-${PV}.tar.gz"
inherit autotools pkgconfig
diff --git a/packages/gtk-webcore/midori_0.0.19.bb b/packages/gtk-webcore/midori_0.0.19.bb
new file mode 100644
index 0000000000..ec81d7fd23
--- /dev/null
+++ b/packages/gtk-webcore/midori_0.0.19.bb
@@ -0,0 +1,5 @@
+require midori.inc
+
+SRC_URI = "http://software.twotoasts.de/media/midori/midori-${PV}.tar.bz2"
+
+
diff --git a/packages/guile/files/configure-lossage.patch b/packages/guile/files/configure-lossage.patch
deleted file mode 100644
index da1d0de6e7..0000000000
--- a/packages/guile/files/configure-lossage.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- guile-1.6.4/configure.in~configure-lossage
-+++ guile-1.6.4/configure.in
-@@ -462,7 +462,9 @@
- # explicitly to LIBOBJS to make sure that it is translated to
- # `alloca.lo' for libtool later on. This can and should be done more cleanly.
- AC_FUNC_ALLOCA
--if test "$ALLOCA" = "alloca.o"; then AC_LIBOBJ([alloca]); fi
-+if test "$ALLOCA" = "alloca.o"; then
-+ AC_LIBOBJ([alloca])
-+fi
-
- AC_CHECK_MEMBERS([struct stat.st_rdev])
- AC_CHECK_MEMBERS([struct stat.st_blksize])
---- guile-1.6.4/guile-readline/configure.in~configure-lossage
-+++ guile-1.6.4/guile-readline/configure.in
-@@ -2,6 +2,7 @@
-
- AC_INIT
- AC_CONFIG_SRCDIR([readline.c])
-+AC_CONFIG_AUX_DIR([..])
- . $srcdir/../GUILE-VERSION
- PACKAGE=guile-readline
- AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
diff --git a/packages/guile/files/gcc4.patch b/packages/guile/files/gcc4.patch
deleted file mode 100644
index 2168683ad5..0000000000
--- a/packages/guile/files/gcc4.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-
-#
-# Signed off by Michael 'Mickey' Lauer <mickey@Vanille.de>
-#
-
---- guile-1.6.4/libguile/guile.c~gcc4
-+++ guile-1.6.4/libguile/guile.c
-@@ -88,7 +88,7 @@
- {
- #ifdef DYNAMIC_LINKING
- /* libtool automagically inserts this variable into your executable... */
-- extern const scm_lt_dlsymlist lt_preloaded_symbols[];
-+ extern const scm_lt_dlsymlist *lt_preloaded_symbols;
- scm_lt_dlpreload_default (lt_preloaded_symbols);
- #endif
- scm_boot_guile (argc, argv, inner_main, 0);
diff --git a/packages/guile/guile_1.6.4.bb b/packages/guile/guile_1.6.4.bb
deleted file mode 100644
index 092a44c27d..0000000000
--- a/packages/guile/guile_1.6.4.bb
+++ /dev/null
@@ -1,132 +0,0 @@
-DESCRIPTION = "Guile is an interpreter for the Scheme programming language, \
-packaged as a library which can be incorporated into your programs."
-HOMEPAGE = "http://www.gnu.org/software/guile/guile.html"
-SECTION = "devel/scheme"
-DEPENDS = "guile-native"
-LICENSE = "GPL"
-PR = "r1"
-
-SRC_URI = "http://ftp.gnu.org/pub/gnu/guile/guile-${PV}.tar.gz \
- file://configure-lossage.patch;patch=1 \
- file://gcc4.patch;patch=1"
-
-inherit autotools
-
-acpaths = "-I ${S}/guile-config"
-
-do_compile() {
- (cd libguile; oe_runmake CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" LDFLAGS="${BUILD_LDFLAGS}" guile_filter_doc_snarfage)
- oe_runmake preinstguile="`which guile`"
-}
-
-LIBGUILE_HEADERS = "\
-__scm.h \
-alist.h \
-arbiters.h \
-async.h \
-backtrace.h \
-boolean.h \
-chars.h \
-continuations.h \
-coop-defs.h \
-debug-malloc.h \
-debug.h \
-deprecation.h \
-dynl.h \
-dynwind.h \
-environments.h \
-eq.h \
-error.h \
-eval.h \
-evalext.h \
-extensions.h \
-feature.h \
-filesys.h \
-fluids.h \
-fports.h \
-gc.h \
-gdb_interface.h \
-gdbint.h \
-goops.h \
-gsubr.h \
-guardians.h \
-hash.h \
-hashtab.h \
-hooks.h \
-init.h \
-ioext.h \
-iselect.h \
-keywords.h \
-lang.h \
-list.h \
-load.h \
-macros.h \
-mallocs.h \
-modules.h \
-net_db.h \
-numbers.h \
-objects.h \
-objprop.h \
-options.h \
-pairs.h \
-ports.h \
-posix.h \
-print.h \
-procprop.h \
-procs.h \
-properties.h \
-ramap.h \
-random.h \
-rdelim.h \
-read.h \
-regex-posix.h \
-root.h \
-rw.h \
-scmconfig.h \
-scmsigs.h \
-script.h \
-simpos.h \
-smob.h \
-snarf.h \
-socket.h \
-sort.h \
-srcprop.h \
-stackchk.h \
-stacks.h \
-stime.h \
-strings.h \
-strop.h \
-strorder.h \
-strports.h \
-struct.h \
-symbols.h \
-tags.h \
-threads.h \
-throw.h \
-unif.h \
-validate.h \
-values.h \
-variable.h \
-vectors.h \
-version.h \
-vports.h \
-weaks.h \
-"
-
-do_stage() {
- install -d ${STAGING_INCDIR}/libguile
- for i in ${LIBGUILE_HEADERS}; do
- install -m 0644 libguile/$i ${STAGING_INCDIR}/libguile/$i
- done
- install -m 0644 libguile.h ${STAGING_INCDIR}/libguile.h
- install -d ${STAGING_INCDIR}/guile
- install -m 0644 libguile/gh.h ${STAGING_INCDIR}/guile/
- install -d ${STAGING_INCDIR}/guile/srfi
- install -d ${STAGING_INCDIR}/guile-readline
- install -m 0644 guile-readline/readline.h ${STAGING_INCDIR}/guile-readline/
- install -d ${STAGING_DATADIR}/aclocal
- install -m 0644 guile-config/guile.m4 ${STAGING_DATADIR}/aclocal
- oe_libinstall -C libguile -so -a libguile ${STAGING_LIBDIR}
- oe_libinstall -C guile-readline -so -a libguilereadline-v-12 ${STAGING_LIBDIR}
- oe_libinstall -C libguile-ltdl -so -a libguile-ltdl ${STAGING_LIBDIR}
-}
diff --git a/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch b/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch
new file mode 100644
index 0000000000..968cc6cf73
--- /dev/null
+++ b/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch
@@ -0,0 +1,275 @@
+From: Gadiyar, Anand <gadiyar@ti.com>
+Date: Wed, 13 Aug 2008 07:05:29 +0000 (+0530)
+Subject: MUSB: Workaround for simultaneous TX and RX usage
+X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=2e6aa4efb0e14c51ff0427927b1b38136911fa93
+
+MUSB: Workaround for simultaneous TX and RX usage
+
+MUSB: Workaround for simultaneous TX and RX usage
+
+MUSB RTL V1.4 has a hardware issue which results in a DMA controller
+hang when TX and RX DMA channels are simultaneously enabled. This
+affects at least OMAP2430 and OMAP34XX.
+
+Since RX transfers are in Mode 0 and anyway result in one DMA interrupt
+per packet, we can use System DMA to unload the RX fifos. MUSB DMA can
+be used for all TX channels as before.
+
+Tested with full-duplex TX and RX transfers using g_ether. Runs for 24
+hours without a hang. Without this patch, the hang occurs within minutes.
+
+This issue was first reported by Jon Hunter on [1]
+
+[1] http://marc.info/?l=linux-omap&m=119634480534453&w=2
+
+Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
+---
+
+diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig
+index a485a86..8583e54 100644
+--- a/drivers/usb/musb/Kconfig
++++ b/drivers/usb/musb/Kconfig
+@@ -150,6 +150,14 @@ config USB_INVENTRA_DMA
+ help
+ Enable DMA transfers using Mentor's engine.
+
++config MUSB_USE_SYSTEM_DMA_RX
++ bool 'Use System DMA for RX endpoints'
++ depends on USB_MUSB_HDRC && USB_INVENTRA_DMA
++ help
++ MUSB RTL version 1.4 has a hardware issue when TX and RX DMA
++ channels are simultaneously enabled. To work around this issue,
++ you can choose to use System DMA for RX channels.
++
+ config USB_TI_CPPI_DMA
+ bool
+ depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY
+diff --git a/drivers/usb/musb/musbhsdma.c b/drivers/usb/musb/musbhsdma.c
+index 32bb1e2..d1c1ea0 100644
+--- a/drivers/usb/musb/musbhsdma.c
++++ b/drivers/usb/musb/musbhsdma.c
+@@ -34,6 +34,7 @@
+ #include <linux/interrupt.h>
+ #include <linux/platform_device.h>
+ #include "musb_core.h"
++#include <asm/arch/dma.h>
+
+ #if defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP3430)
+ #include "omap2430.h"
+@@ -64,6 +65,9 @@
+
+ #define MUSB_HSDMA_CHANNELS 8
+
++#define MUSB_FIFO_ADDRESS(epnum) \
++ ((unsigned long) (OMAP_HSOTG_BASE + MUSB_FIFO_OFFSET(epnum)))
++
+ struct musb_dma_controller;
+
+ struct musb_dma_channel {
+@@ -75,6 +79,8 @@ struct musb_dma_channel {
+ u8 bIndex;
+ u8 epnum;
+ u8 transmit;
++
++ int sysdma_channel;
+ };
+
+ struct musb_dma_controller {
+@@ -93,6 +99,42 @@ static int dma_controller_start(struct dma_controller *c)
+ return 0;
+ }
+
++#ifdef CONFIG_MUSB_USE_SYSTEM_DMA_RX
++static void musb_sysdma_completion(int lch, u16 ch_status, void *data)
++{
++ u32 dwAddress;
++ unsigned long flags;
++
++ struct dma_channel *pChannel;
++
++ struct musb_dma_channel *pImplChannel =
++ (struct musb_dma_channel *) data;
++ struct musb_dma_controller *controller = pImplChannel->controller;
++ struct musb *musb = controller->pDmaPrivate;
++ pChannel = &pImplChannel->Channel;
++
++ DBG(2, "lch = 0x%d, ch_status = 0x%x\n", lch, ch_status);
++ spin_lock_irqsave(&musb->lock, flags);
++
++ dwAddress = (u32) omap_get_dma_dst_pos(pImplChannel->sysdma_channel);
++ pChannel->actual_len = dwAddress - pImplChannel->dwStartAddress;
++
++ DBG(2, "ch %p, 0x%x -> 0x%x (%d / %d) %s\n",
++ pChannel, pImplChannel->dwStartAddress, dwAddress,
++ pChannel->actual_len, pImplChannel->len,
++ (pChannel->actual_len < pImplChannel->len) ?
++ "=> reconfig 0": "=> complete");
++
++ pChannel->status = MUSB_DMA_STATUS_FREE;
++ musb_dma_completion(musb, pImplChannel->epnum, pImplChannel->transmit);
++
++ spin_unlock_irqrestore(&musb->lock, flags);
++ return;
++}
++#else
++#define musb_sysdma_completion NULL
++#endif
++
+ static void dma_channel_release(struct dma_channel *pChannel);
+
+ static int dma_controller_stop(struct dma_controller *c)
+@@ -144,6 +186,29 @@ static struct dma_channel *dma_channel_allocate(struct dma_controller *c,
+ /* Tx => mode 1; Rx => mode 0 */
+ pChannel->desired_mode = transmit;
+ pChannel->actual_len = 0;
++ pImplChannel->sysdma_channel = -1;
++
++#ifdef CONFIG_MUSB_USE_SYSTEM_DMA_RX
++ if (!transmit) {
++ int ret;
++ ret = omap_request_dma(OMAP24XX_DMA_NO_DEVICE,
++ "MUSB SysDMA", musb_sysdma_completion,
++ (void *) pImplChannel,
++ &(pImplChannel->sysdma_channel));
++
++ if (ret) {
++ printk(KERN_ERR "request_dma failed:"
++ " %d\n", ret);
++ controller->bmUsedChannels &=
++ ~(1 << bBit);
++ pChannel->status =
++ MUSB_DMA_STATUS_UNKNOWN;
++ pImplChannel->sysdma_channel = -1;
++ pChannel = NULL;
++ }
++ }
++#endif
++
+ break;
+ }
+ }
+@@ -163,6 +228,12 @@ static void dma_channel_release(struct dma_channel *pChannel)
+ ~(1 << pImplChannel->bIndex);
+
+ pChannel->status = MUSB_DMA_STATUS_UNKNOWN;
++
++ if (pImplChannel->sysdma_channel != -1) {
++ omap_stop_dma(pImplChannel->sysdma_channel);
++ omap_free_dma(pImplChannel->sysdma_channel);
++ pImplChannel->sysdma_channel = -1;
++ }
+ }
+
+ static void configure_channel(struct dma_channel *pChannel,
+@@ -179,41 +250,69 @@ static void configure_channel(struct dma_channel *pChannel,
+ DBG(4, "%p, pkt_sz %d, addr 0x%x, len %d, mode %d\n",
+ pChannel, packet_sz, dma_addr, len, mode);
+
+- if (mode) {
+- csr |= 1 << MUSB_HSDMA_MODE1_SHIFT;
+- BUG_ON(len < packet_sz);
++ if (pImplChannel->sysdma_channel != -1) {
++ /* System DMA */
++ /* RX: set src = FIFO */
++
++ omap_set_dma_transfer_params(pImplChannel->sysdma_channel,
++ OMAP_DMA_DATA_TYPE_S8,
++ len, 1, /* One frame */
++ OMAP_DMA_SYNC_ELEMENT,
++ OMAP24XX_DMA_NO_DEVICE,
++ 0); /* Src Sync */
++
++ omap_set_dma_src_params(pImplChannel->sysdma_channel, 0,
++ OMAP_DMA_AMODE_CONSTANT,
++ MUSB_FIFO_ADDRESS(pImplChannel->epnum),
++ 0, 0);
+
+- if (packet_sz >= 64) {
+- csr |= MUSB_HSDMA_BURSTMODE_INCR16
++ omap_set_dma_dest_params(pImplChannel->sysdma_channel, 0,
++ OMAP_DMA_AMODE_POST_INC, dma_addr,
++ 0, 0);
++
++ omap_set_dma_dest_data_pack(pImplChannel->sysdma_channel, 1);
++ omap_set_dma_dest_burst_mode(pImplChannel->sysdma_channel,
++ OMAP_DMA_DATA_BURST_16);
++
++ omap_start_dma(pImplChannel->sysdma_channel);
++
++ } else { /* Mentor DMA */
++ if (mode) {
++ csr |= 1 << MUSB_HSDMA_MODE1_SHIFT;
++ BUG_ON(len < packet_sz);
++
++ if (packet_sz >= 64) {
++ csr |= MUSB_HSDMA_BURSTMODE_INCR16
+ << MUSB_HSDMA_BURSTMODE_SHIFT;
+- } else if (packet_sz >= 32) {
+- csr |= MUSB_HSDMA_BURSTMODE_INCR8
++ } else if (packet_sz >= 32) {
++ csr |= MUSB_HSDMA_BURSTMODE_INCR8
+ << MUSB_HSDMA_BURSTMODE_SHIFT;
+- } else if (packet_sz >= 16) {
+- csr |= MUSB_HSDMA_BURSTMODE_INCR4
++ } else if (packet_sz >= 16) {
++ csr |= MUSB_HSDMA_BURSTMODE_INCR4
+ << MUSB_HSDMA_BURSTMODE_SHIFT;
++ }
+ }
+- }
+
+- csr |= (pImplChannel->epnum << MUSB_HSDMA_ENDPOINT_SHIFT)
+- | (1 << MUSB_HSDMA_ENABLE_SHIFT)
+- | (1 << MUSB_HSDMA_IRQENABLE_SHIFT)
+- | (pImplChannel->transmit
+- ? (1 << MUSB_HSDMA_TRANSMIT_SHIFT)
+- : 0);
+-
+- /* address/count */
+- musb_writel(mbase,
+- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_ADDRESS),
+- dma_addr);
+- musb_writel(mbase,
+- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_COUNT),
+- len);
+-
+- /* control (this should start things) */
+- musb_writew(mbase,
+- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_CONTROL),
+- csr);
++ csr |= (pImplChannel->epnum << MUSB_HSDMA_ENDPOINT_SHIFT)
++ | (1 << MUSB_HSDMA_ENABLE_SHIFT)
++ | (1 << MUSB_HSDMA_IRQENABLE_SHIFT)
++ | (pImplChannel->transmit
++ ? (1 << MUSB_HSDMA_TRANSMIT_SHIFT)
++ : 0);
++
++ /* address/count */
++ musb_writel(mbase,
++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_ADDRESS),
++ dma_addr);
++ musb_writel(mbase,
++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_COUNT),
++ len);
++
++ /* control (this should start things) */
++ musb_writew(mbase,
++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_CONTROL),
++ csr);
++ } /* Mentor DMA */
+ }
+
+ static int dma_channel_program(struct dma_channel *pChannel,
+@@ -265,6 +364,12 @@ static int dma_channel_abort(struct dma_channel *pChannel)
+ MUSB_EP_OFFSET(pImplChannel->epnum, MUSB_TXCSR),
+ csr);
+ } else {
++ if (pImplChannel->sysdma_channel != -1) {
++ omap_stop_dma(pImplChannel->sysdma_channel);
++ omap_free_dma(pImplChannel->sysdma_channel);
++ pImplChannel->sysdma_channel = -1;
++ }
++
+ csr = musb_readw(mbase,
+ MUSB_EP_OFFSET(pImplChannel->epnum, MUSB_RXCSR));
+ csr &= ~(MUSB_RXCSR_AUTOCLEAR |
diff --git a/packages/linux/linux-omap2_git.bb b/packages/linux/linux-omap2_git.bb
index 8682c33404..f032f076e8 100644
--- a/packages/linux/linux-omap2_git.bb
+++ b/packages/linux/linux-omap2_git.bb
@@ -6,7 +6,7 @@ SRCREV = "d6daf8d8cc5ccf90247def5551ee9c3e8555e848"
PV = "2.6.26"
#PV = "2.6.26+2.6.27-rc1+${PR}+git${SRCREV}"
-PR = "r60"
+PR = "r61"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git;protocol=git \
file://defconfig"
@@ -52,6 +52,7 @@ SRC_URI_append_beagleboard = " file://no-harry-potter.diff;patch=1 \
file://02-postrate-notifier.eml;patch=1 \
file://01-omap3-cpufreq.eml;patch=1 \
file://01-beagle-cpufreq.diff;patch=1 \
+ file://musb-dmafix.patch;patch=1 \
"
SRC_URI_append_omap3evm = " file://no-harry-potter.diff;patch=1 \
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-akita b/packages/linux/linux-rp-2.6.26/defconfig-akita
index e630a9abff..27f5dcb781 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-akita
+++ b/packages/linux/linux-rp-2.6.26/defconfig-akita
@@ -1255,7 +1255,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86 b/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86
index 35e9b5cd22..397468a366 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86
+++ b/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86
@@ -1612,7 +1612,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-c7x0 b/packages/linux/linux-rp-2.6.26/defconfig-c7x0
index 6c188e7b57..4c3cbf499c 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-c7x0
+++ b/packages/linux/linux-rp-2.6.26/defconfig-c7x0
@@ -1260,7 +1260,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-hx2000 b/packages/linux/linux-rp-2.6.26/defconfig-hx2000
index 0f2557c0f7..d023ffecac 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-hx2000
+++ b/packages/linux/linux-rp-2.6.26/defconfig-hx2000
@@ -1249,7 +1249,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-poodle b/packages/linux/linux-rp-2.6.26/defconfig-poodle
index 7d41252b15..4d7acb382f 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-poodle
+++ b/packages/linux/linux-rp-2.6.26/defconfig-poodle
@@ -1270,7 +1270,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-qemuarm b/packages/linux/linux-rp-2.6.26/defconfig-qemuarm
index e636b6c671..ae7ef52d31 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-qemuarm
+++ b/packages/linux/linux-rp-2.6.26/defconfig-qemuarm
@@ -1155,7 +1155,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-qemux86 b/packages/linux/linux-rp-2.6.26/defconfig-qemux86
index 42f6740201..975dbdd85b 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-qemux86
+++ b/packages/linux/linux-rp-2.6.26/defconfig-qemux86
@@ -1611,7 +1611,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-spitz b/packages/linux/linux-rp-2.6.26/defconfig-spitz
index 9c8f0ae8a1..5b5db16979 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-spitz
+++ b/packages/linux/linux-rp-2.6.26/defconfig-spitz
@@ -1318,7 +1318,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-zylonite b/packages/linux/linux-rp-2.6.26/defconfig-zylonite
index cc2fc482ae..bdf6a3be8a 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-zylonite
+++ b/packages/linux/linux-rp-2.6.26/defconfig-zylonite
@@ -1257,7 +1257,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/lzma/lzma-native_4.17.bb b/packages/lzma/lzma-native_4.17.bb
index 1ccf005182..24664b32e4 100644
--- a/packages/lzma/lzma-native_4.17.bb
+++ b/packages/lzma/lzma-native_4.17.bb
@@ -2,9 +2,10 @@ DESCRIPTION = "LZMA is a general compression method. LZMA provides high compress
HOMEPAGE = "http://www.7-zip.org/"
LICENSE = "LGPL"
DEPENDS = "zlib-native"
-PR = "r2"
+PR = "r3"
-SRC_URI = "http://www.7-zip.org/dl/lzma417.tar.bz2 \
+PVNODOT = "${@bb.data.getVar('PV',d,1).split('.')[0]}${@bb.data.getVar('PV',d,1).split('.')[1]}"
+SRC_URI = "${SOURCEFORGE_MIRROR}/sevenzip/lzma${PVNODOT}.tar.bz2 \
file://lzma-406-zlib-stream.patch;patch=1;pnum=2"
S = "${WORKDIR}/SRC"
diff --git a/packages/nandlogical/nandlogical-static_1.0.0.bb b/packages/nandlogical/nandlogical-static_1.0.0.bb
new file mode 100644
index 0000000000..e2eaf4e1f5
--- /dev/null
+++ b/packages/nandlogical/nandlogical-static_1.0.0.bb
@@ -0,0 +1,5 @@
+require nandlogical_${PV}.bb
+
+do_compile () {
+ ${CC} -o nandlogical ${WORKDIR}/nandlogical.c -static
+}
diff --git a/packages/nandlogical/nandlogical_1.0.0.bb b/packages/nandlogical/nandlogical_1.0.0.bb
index 7d8fc04b4e..ba851bf513 100644
--- a/packages/nandlogical/nandlogical_1.0.0.bb
+++ b/packages/nandlogical/nandlogical_1.0.0.bb
@@ -1,15 +1,15 @@
DESCRIPTION = "Nandlogical for Sharp mtd1"
LICENSE = "GPL"
DEPENDS = "mtd-utils"
-COMPATIBLE_MACHINE = "(c7x0)"
-PR = "r0"
+COMPATIBLE_MACHINE = "(poodle|c7x0|akita|spitz|tosa)"
+PR = "r1"
SRC_URI = "file://nandlogical.c"
S = "${WORKDIR}/${P}"
do_compile () {
- ${CC} -o nandlogical ${WORKDIR}/nandlogical.c -static
+ ${CC} -o nandlogical ${WORKDIR}/nandlogical.c
}
do_install () {
diff --git a/packages/openmoko2/openmoko-appmanager2_svn.bb b/packages/openmoko2/openmoko-appmanager2_svn.bb
index c299564205..fe5e227d8f 100644
--- a/packages/openmoko2/openmoko-appmanager2_svn.bb
+++ b/packages/openmoko2/openmoko-appmanager2_svn.bb
@@ -1,10 +1,9 @@
DESCRIPTION = "The Openmoko Application Manager"
SECTION = "openmoko/applications"
-DEPENDS = "libmokoui2 libmokojournal2 startup-notification dbus-glib libice libsm ipkg"
+DEPENDS = "libmokoui2 libmokojournal2 startup-notification dbus-glib libice libsm opkg"
PV = "0.1.0+svnr${SRCREV}"
-PR = "r1"
+PR = "r2"
inherit openmoko2
FILES_${PN} += "/usr/share/openmoko-appmanager"
-
diff --git a/packages/phoneme/.mtn2git_empty b/packages/phoneme/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/phoneme/.mtn2git_empty
diff --git a/packages/phoneme/files/.mtn2git_empty b/packages/phoneme/files/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/phoneme/files/.mtn2git_empty
diff --git a/packages/phoneme/files/phoneme-makefile-fix.patch b/packages/phoneme/files/phoneme-makefile-fix.patch
new file mode 100644
index 0000000000..9dc80428f1
--- /dev/null
+++ b/packages/phoneme/files/phoneme-makefile-fix.patch
@@ -0,0 +1,144 @@
+Index: cdc/build/share/rules_zoneinfo.mk
+===================================================================
+--- cdc/build/share/rules_zoneinfo.mk.orig
++++ cdc/build/share/rules_zoneinfo.mk
+@@ -45,7 +45,7 @@ $(ZONEINFO_CLASSES_DIR):
+ .compile.classlist:
+ $(AT)if [ -s $(ZONEINFO_CLASSES_DIR)/.classes.list ] ; then \
+ echo "Compiling zic classes... "; \
+- $(JAVAC_CMD) \
++ $(JAVAC_CMD) -sourcepath $(CVM_SHAREROOT)/classes \
+ -d $(ZONEINFO_CLASSES_DIR) \
+ @$(ZONEINFO_CLASSES_DIR)/.classes.list ; \
+ fi
+Index: cdc/build/share/jcc.mk
+===================================================================
+--- cdc/build/share/jcc.mk.orig
++++ cdc/build/share/jcc.mk
+@@ -93,7 +93,7 @@ $(CVM_GENOPCODE_DEPEND) :: $(CVM_JCC_SRC
+ $(CVM_JCC_SRCPATH)/JCCMessage.properties
+ @echo "... $@"
+ $(AT)CLASSPATH=$(CVM_JCC_SRCPATH); export CLASSPATH; \
+- $(CVM_JAVAC) $(JAVAC_OPTIONS) -d $(CVM_JCC_CLASSPATH) \
++ $(CVM_JAVAC) $(JAVAC_OPTIONS) -sourcepath $(CVM_JCC_SRCPATH) -d $(CVM_JCC_CLASSPATH) \
+ $(subst /,$(CVM_FILESEP),$(CVM_JCC_SRCPATH)/GenOpcodes.java)
+ $(AT)rm -f $(CVM_JCC_CLASSPATH)/JCCMessage.properties; \
+ cp $(CVM_JCC_SRCPATH)/JCCMessage.properties $(CVM_JCC_CLASSPATH)/JCCMessage.properties
+@@ -253,7 +253,7 @@ $(CVM_JCC_DEPEND) :: $(CVM_JCC_SRCPATH)/
+ $(CVM_JCC_SRCPATH)/JCCMessage.properties
+ @echo "... $@"
+ @CLASSPATH=$(CVM_JCC_CLASSPATH)$(PS)$(CVM_JCC_SRCPATH)$(PS)$(CVM_DERIVEDROOT)/javavm/runtime; export CLASSPATH; \
+- $(CVM_JAVAC) $(JAVAC_OPTIONS) -d $(CVM_JCC_CLASSPATH) \
++ $(CVM_JAVAC) $(JAVAC_OPTIONS) -classpath $(CVM_JCC_CLASSPATH)$(PS)$(CVM_JCC_SRCPATH)$(PS)$(CVM_DERIVEDROOT)/javavm/runtime -d $(CVM_JCC_CLASSPATH) \
+ $(CVM_JCC_CLASSES)
+ @rm -f $(CVM_JCC_CLASSPATH)/JCCMessage.properties; \
+ cp $(CVM_JCC_SRCPATH)/JCCMessage.properties $(CVM_JCC_CLASSPATH)/JCCMessage.properties
+Index: cdc/build/share/defs.mk
+===================================================================
+--- cdc/build/share/defs.mk.orig
++++ cdc/build/share/defs.mk
+@@ -1187,7 +1187,7 @@ BUNDLE_PRODUCT_NAME = $(subst $(TM),$(e
+ BUNDLE_VERSION = $(subst -,_,$(J2ME_BUILD_VERSION_STRING))
+ BUNDLE_TARGET = $(subst -,_,$(CVM_TARGET))
+
+-BINARY_BUNDLE_NAME = \
++BINARY_BUNDLE_NAME ?= \
+ $(BUNDLE_PRODUCT_NAME)-$(BUNDLE_VERSION)-$(BUNDLE_TARGET)-bin
+ BINARY_BUNDLE_DIRNAME = $(BINARY_BUNDLE_NAME)
+
+@@ -2153,11 +2153,11 @@ endif
+
+ # Note, ALL_INCLUDE_FLAGS flags is setup in rules.mk so
+ # abs2rel only needs to be called on it once.
+-CPPFLAGS += $(CVM_DEFINES) $(ALL_INCLUDE_FLAGS)
+-CFLAGS_SPEED = $(CFLAGS) $(CCFLAGS_SPEED) $(CPPFLAGS)
+-CFLAGS_SPACE = $(CFLAGS) $(CCFLAGS_SPACE) $(CPPFLAGS)
+-CFLAGS_LOOP = $(CFLAGS) $(CCFLAGS_LOOP) $(CPPFLAGS)
+-CFLAGS_FDLIB = $(CFLAGS) $(CCFLAGS_FDLIB) $(CPPFLAGS)
++CVM_CPPFLAGS += $(CVM_DEFINES) $(ALL_INCLUDE_FLAGS)
++CFLAGS_SPEED = $(CFLAGS) $(CCFLAGS_SPEED) $(CVM_CPPFLAGS)
++CFLAGS_SPACE = $(CFLAGS) $(CCFLAGS_SPACE) $(CVM_CPPFLAGS)
++CFLAGS_LOOP = $(CFLAGS) $(CCFLAGS_LOOP) $(CVM_CPPFLAGS)
++CFLAGS_FDLIB = $(CFLAGS) $(CCFLAGS_FDLIB) $(CVM_CPPFLAGS)
+ CFLAGS_JCS =
+
+ LINKFLAGS += -g -Wl,-export-dynamic $(LINK_ARCH_FLAGS)
+@@ -2165,13 +2165,13 @@ LINKLIBS += -lpthread -ldl $(LINK_A
+ LINKLIBS_JCS +=
+
+ SO_CCFLAGS = $(CCFLAGS_SPEED)
+-SO_CFLAGS = $(CFLAGS) $(SO_CCFLAGS) $(CPPFLAGS)
++SO_CFLAGS = $(CFLAGS) $(SO_CCFLAGS) $(CVM_CPPFLAGS)
+ SO_LINKFLAGS = $(LINKFLAGS) -shared
+
+ #
+ # commands for running the tools
+ #
+-ASM_CMD = $(AT)$(TARGET_AS) $(ASM_FLAGS) -D_ASM $(CPPFLAGS) \
++ASM_CMD = $(AT)$(TARGET_AS) $(ASM_FLAGS) -D_ASM $(CVM_CPPFLAGS) \
+ -o $@ $(call abs2rel,$<)
+
+ # compileCCC(flags, objfile, srcfiles)
+Index: cdc/build/share/rules.mk
+===================================================================
+--- cdc/build/share/rules.mk.orig
++++ cdc/build/share/rules.mk
+@@ -521,7 +521,7 @@ endif
+ # As a performance improvement, evaluate some flags in case
+ # they contain shell commands.
+ # FIXME: Disabled because this causes GCI build failures
+-#$(J2ME_CLASSLIB):: CPPFLAGS := $(CPPFLAGS)
++#$(J2ME_CLASSLIB):: CVM_CPPFLAGS := $(CVM_CPPFLAGS)
+
+ $(J2ME_CLASSLIB):: initbuild
+ $(J2ME_CLASSLIB):: btclasses $(CVM_BUILDTIME_CLASSESZIP)
+@@ -708,14 +708,14 @@ $(CVM_OBJDIR)/executejava.o: $(CVM_DERIV
+ # command to use to generate dependency makefiles if requested
+ ifeq ($(GENERATEMAKEFILES), true)
+ GENERATEMAKEFILES_CMD = \
+- @$(TARGET_CC) $(CCDEPEND) $(CC_ARCH_FLAGS) $(CPPFLAGS) $< \
++ @$(TARGET_CC) $(CCDEPEND) $(CC_ARCH_FLAGS) $(CVM_CPPFLAGS) $< \
+ 2> /dev/null | sed 's!$*\.o!$(dir $@)&!g' > $(@:.o=.d)
+ endif
+
+ # command to use to generate stack map analysis files if requested
+ ifeq ($(CVM_CSTACKANALYSIS), true)
+ CSTACKANALYSIS_CMD = \
+- $(AT)$(TARGET_CC) -S $(CCFLAGS) $(CPPFLAGS) -o $(@:.o=.asm) $<
++ $(AT)$(TARGET_CC) -S $(CCFLAGS) $(CVM_CPPFLAGS) -o $(@:.o=.asm) $<
+ endif
+
+ #
+@@ -751,7 +753,7 @@ $(CVM_OBJDIR)/%.o: %.S
+ @echo "as $<"
+ $(ASM_CMD)
+ ifeq ($(GENERATEMAKEFILES), true)
+- @$(TARGET_CC) $(ASM_ARCH_FLAGS) $(CCDEPEND) $(CPPFLAGS) $< \
++ @$(TARGET_CC) $(ASM_ARCH_FLAGS) $(CCDEPEND) $(CVM_CPPFLAGS) $< \
+ 2> /dev/null | sed 's!$*\.o!$(dir $@)&!g' > $(@:.o=.d)
+ endif
+ ifeq ($(CVM_CSTACKANALYSIS), true)
+@@ -772,7 +774,7 @@ $(CVM_FDLIB_FILES): $(CVM_OBJDIR)/%.o: $
+ @echo "cc $<"
+ $(CC_CMD_FDLIB)
+ ifeq ($(GENERATEMAKEFILES), true)
+- @$(TARGET_CC) $(CC_ARCH_FLAGS) $(CCDEPEND) $(CPPFLAGS) $< \
++ @$(TARGET_CC) $(CC_ARCH_FLAGS) $(CCDEPEND) $(CVM_CPPFLAGS) $< \
+ 2> /dev/null | sed 's!$*\.o!$(dir $@)&!g' > $(@:.o=.d)
+ endif
+
+Index: cdc/src/linux-arm/javavm/runtime/segvhandler_arch.c
+===================================================================
+--- cdc/src/linux-arm/javavm/runtime/segvhandler_arch.c.orig
++++ cdc/src/linux-arm/javavm/runtime/segvhandler_arch.c
+@@ -41,8 +41,8 @@
+ #include <dlfcn.h>
+ #include <stddef.h>
+ /* avoid conflicting ucontext definitions */
+-#define ucontext asm_ucontext
+-#include <asm/ucontext.h>
++/*#define ucontext asm_ucontext*/
++#include <ucontext.h>
+ #include <unistd.h>
+
+ #define MAXSIGNUM 32
diff --git a/packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb b/packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb
new file mode 100644
index 0000000000..59dbfb7a3b
--- /dev/null
+++ b/packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb
@@ -0,0 +1,26 @@
+require phoneme-advanced.inc
+
+BUILDREV = "b73"
+SRCREV = "11560"
+
+SRC_URI += "file://phoneme-makefile-fix.patch;patch=1;pnum=0"
+
+FILES_${PN} += "\
+ ${COMMON_DIR}/bin/cvm \
+ ${COMMON_DIR}/lib/btclasses.zip \
+ ${COMMON_DIR}/lib/content-types.properties \
+ ${COMMON_DIR}/lib/foundation.jar \
+ ${COMMON_DIR}/lib/security/java.security \
+ ${COMMON_DIR}/lib/security/java.policy \
+ ${COMMON_DIR}/lib/zi/Asia/Novosibirsk \
+ ${COMMON_DIR}/lib/zi/Asia/Calcutta \
+ ${COMMON_DIR}/lib/zi/ZoneInfoMappings \
+ ${COMMON_DIR}/lib/zi/GMT \
+ ${COMMON_DIR}/lib/zi/America/Los_Angeles \
+ ${COMMON_DIR}/democlasses.jar \
+ ${COMMON_DIR}/testclasses.zip \
+ ${COMMON_DIR}/legal/license.txt \
+ ${COMMON_DIR}/legal/thirdpartylicensereadme.txt \
+ ${COMMON_DIR}/legal/copyright.txt \
+"
+
diff --git a/packages/phoneme/phoneme-advanced.inc b/packages/phoneme/phoneme-advanced.inc
new file mode 100644
index 0000000000..aad82cfe42
--- /dev/null
+++ b/packages/phoneme/phoneme-advanced.inc
@@ -0,0 +1,160 @@
+DESCRIPTION = "A free CDC JavaVM and class library from Sun Microsystems."
+LICENSE = "GPLv2"
+HOMEPAGE = "https://phoneme.dev.java.net"
+AUTHOR = "Sun Microsystems, Inc."
+
+DEPENDS = "classpath-native virtual/javac-native linux-libc-headers"
+
+inherit java update-alternatives
+
+# The PhoneME Advanced build system is documented here: http://java.sun.com/javame/reference/docs/cdc_build_system.pdf
+# NOTE: We need to provide an empty password. pswd='' seems not to be the correct way.
+SRC_URI = "\
+ svn://phoneme.dev.java.net/svn/phoneme/builds/phoneme_advanced-mr2-dev-${BUILDREV};module=cdc;proto=https;localdir=cdc;user=guest;pswd='' \
+ svn://phoneme.dev.java.net/svn/phoneme/builds/phoneme_advanced-mr2-dev-${BUILDREV};module=tools;proto=https;localdir=tools;user=guest;pswd='' \
+ svn://phoneme.dev.java.net/svn/phoneme;module=legal;localdir=legal;proto=https;user=guest;pswd='' \
+ "
+
+PROVIDES = "virtual/java-cdc java-cdc-runtime"
+PRIORITY = "optional"
+SECTION = "interpreters"
+
+# PhoneME builds currently cannot be parallel
+PARALLEL_MAKE = ""
+
+S = "${WORKDIR}"
+
+BUILDREV = ${@bb.fatal('BUILDREV is not defined in this phoneme-advanced recipe!')}
+SRCREV = ${@bb.fatal('SRCREV is not defined in this phoneme-advanced recipe!')}
+
+COMMON_DIR = "${libdir_jvm}/${PN}"
+
+do_compile() {
+ set_arch
+ oe_runmake -C cdc/build/linux-$ARCH-generic bin
+}
+
+do_install() {
+ install -d ${D}/${libdir_jvm}
+
+ unzip cdc/install/${PN}.zip -d ${D}/${libdir_jvm}
+
+ # Additional link named cvm
+ install -d ${D}/${bindir}
+ ln -sf ${libdir_jvm}/${PN}/bin/cvm ${D}${bindir}/cvm
+}
+
+do_configure() {
+ set_arch
+ test ! -d cdc/build/linux-$ARCH-generic && mkdir -p cdc/build/linux-$ARCH-generic
+ cd cdc/build/linux-$ARCH-generic
+
+ echo "Configuring PhoneME Advanced build"
+ # At the moment we do not support anything else than the foundation
+ #profiles.
+ pmo_start J2ME_CLASSLIB foundation
+
+ # Dispatch to arch-specific functions.
+ oe_phoneme_config$ARCH
+
+ oe_phoneme_configbase
+
+ pmo "# Misc locations and file names."
+ pmo BINARY_BUNDLE_NAME ${PN}
+ pmo BINARY_BUNDLE_APPEND_REVISION false
+ pmo JAVAME_LEGAL_DIR ${WORKDIR}/legal
+
+ pmo "# Java toolchain binaries"
+ pmo JDK_HOME $JAVA_HOME
+ pmo CVM_TARGET_TOOLS_PREFIX ${CROSS_DIR}/bin/
+ pmo CVM_JAVA java
+ pmo CVM_JAVAC javac
+ pmo CVM_JAVADOC true
+ pmo CVM_JAVAH gjavah
+ pmo CVM_JAR gjar
+ pmo CVM_INCLUDE_DIR ${STAGING_INCDIR}/classpath
+
+ pmo JAVAC_OPTIONS -nowarn
+
+ pmo "# Host C/C++ toolchain binaries"
+ pmo HOST_CC "${BUILD_CC}"
+ pmo HOST_CC_PATH "${BUILD_CC}"
+ pmo HOST_CCC "${BUILD_CXX}"
+ pmo HOST_PATH "${BUILD_CXX}"
+ pmo HOST_LD "${BUILD_LD}"
+ pmo HOST_RANLIB "${BUILD_RANLIB}"
+
+ pmo "# C/C++ toolchain binaries"
+ pmo TARGET_CC "${CC}"
+ pmo TARGET_CC_PATH "${CC}"
+ pmo CCFLAGS "${CFLAGS}"
+ pmo TARGET_CCC "${CXX}"
+ pmo TARGET_PATH "${CXX}"
+ pmo CCCFLAGS "${CXXFLAGS}"
+ pmo TARGET_AR "${AR}"
+ pmo TARGET_LD "${CC}"
+ pmo TARGET_RANLIB "${RANLIB}"
+
+ pmo USE_GCC2 false
+
+ pmo "include ../share/top.mk"
+}
+
+pmo_start() {
+ echo "$1 = $2" > GNUmakefile
+ echo "$1 = $2"
+}
+
+pmo() {
+ if [ "$2" ]
+ then
+ echo "$1 = $2" >> GNUmakefile
+ echo "$1 = $2"
+ else
+ echo "$1" >> GNUmakefile
+ echo "$1"
+ fi
+}
+
+set_arch() {
+ case ${TARGET_ARCH} in
+ arm*) ARCH=arm ;;
+ i*86*) ARCH=x86 ;;
+ mips*) ARCH=mips ;;
+ powerpc*) ARCH=powerpc ;;
+ sparc*) ARCH=sparc ;;
+ x86_64*) ARCH=x86 ;;
+ *) die "Sorry, your target architecture is not supported!" ;;
+ esac
+}
+
+# Default non-arch specific configuration
+oe_phoneme_configbase() {
+ pmo CVM_DEBUG false
+ pmo CVM_JIT true
+}
+
+# Default arch specific configurations
+oe_phoneme_configarm() {
+ tf=true
+ if [ Xoabi = X${ARM_ABI} ]
+ then
+ tf=false
+ fi
+
+ pmo USE_AAPCS $tf
+}
+
+oe_phoneme_configx86() {
+ # Taken from linux-x86-generic/GNUmakefile
+ pmo CVM_JIT_REGISTER_LOCALS false
+}
+
+ALTERNATIVE_NAME = "java-cdc"
+ALTERNATIVE_LINK = "${bindir}/${ALTERNATIVE_NAME}"
+ALTERNATIVE_PATH = "${libdir}/jvm/${PN}/bin/cvm"
+ALTERNATIVE_PRIORITY = "10"
+
+FILES_${PN} = "${bindir}"
+FILES_${PN}-dbg += "${COMMON_DIR}/bin/.debug/cvm"
+
diff --git a/packages/portaudio/portaudio-v19_20071207.bb b/packages/portaudio/portaudio-v19_20071207.bb
deleted file mode 100644
index f8de2d741d..0000000000
--- a/packages/portaudio/portaudio-v19_20071207.bb
+++ /dev/null
@@ -1,27 +0,0 @@
-#! /bin/sh
-#
-# Copyright Matthias Hentges <devel@hentges.net> (c) 2008
-# License: MIT (see http://www.opensource.org/licenses/mit-license.php
-# for a copy of the license)
-#
-# Filename: portaudio-v19_20071207.bb
-# Date: 20080104 (YMD)
-
-DESCRIPTION = "portaudio is a portable cross-platform Audio API"
-SECTION = "base"
-LICENSE = "GPL"
-
-PR = "r0"
-
-######################################################################################
-
-SRC_URI = "http://www.portaudio.com/archives/pa_stable_v19_${PV}.tar.gz"
-
-S = "${WORKDIR}/portaudio"
-
-inherit autotools
-
-do_stage() {
- install -m 0644 ${S}/include/portaudio.h ${STAGING_INCDIR}/
- oe_libinstall -C lib -so libportaudio ${STAGING_LIBDIR}/
-}
diff --git a/packages/portaudio/portaudio-v19_svn.bb b/packages/portaudio/portaudio-v19_svn.bb
new file mode 100644
index 0000000000..8fe48f8efe
--- /dev/null
+++ b/packages/portaudio/portaudio-v19_svn.bb
@@ -0,0 +1,29 @@
+DESCRIPTION = "A portable audio library"
+SECTION = "libs/multimedia"
+PRIORITY = "optional"
+LICENSE = "GPL"
+PV = "v19+svnr${SRCREV}"
+PR = "r0"
+
+SRC_URI = "svn://www.portaudio.com/repos/portaudio;module=trunk;proto=https"
+S = "${WORKDIR}/trunk"
+
+inherit autotools
+
+TESTS = " pa_devs patest1 patest_hang patest_many patest_prime patest_sine patest_stop patest_write_sine \
+pa_fuzz patest_buffer patest_in_overflow patest_maxsines patest_read_record patest_sine8 patest_sync \
+pa_minlat patest_callbackstop patest_latency patest_multi_sine patest_record patest_sine_formats patest_toomanysines \
+paqa_devs patest_clip patest_leftright patest_out_underflow patest_ringmix patest_sine_time patest_underflow \
+paqa_errs patest_dither patest_longsine patest_pink patest_saw patest_start_stop patest_wire"
+
+# DEFINES = PA_USE_OSS=1 HAVE_LIBPTHREAD=1
+# DEFINES += PA_LITTLE_ENDIAN
+
+# INCLUDEPATH = ../pa_common
+
+do_stage() {
+ autotools_stage_all
+}
+
+PACKAGES += "portaudio-examples"
+FILES_portaudio-examples = "${bindir}"
diff --git a/packages/portaudio/portaudio_0.0.19.bb b/packages/portaudio/portaudio_0.0.19.bb
deleted file mode 100644
index 748519f5b1..0000000000
--- a/packages/portaudio/portaudio_0.0.19.bb
+++ /dev/null
@@ -1,87 +0,0 @@
-DESCRIPTION = "A portable audio library"
-SECTION = "libs"
-PRIORITY = "optional"
-LICENSE = "GPL"
-PV = "1:0.0.19+cvs${SRCDATE}"
-PR = "r1"
-
-SRC_URI = "http://www.portaudio.com/archives/pa_snapshot_v19.tar.gz"
-S = "${WORKDIR}/portaudio"
-
-inherit qmake
-
-TESTS = " pa_devs patest1 patest_hang patest_many patest_prime patest_sine patest_stop patest_write_sine \
-pa_fuzz patest_buffer patest_in_overflow patest_maxsines patest_read_record patest_sine8 patest_sync \
-pa_minlat patest_callbackstop patest_latency patest_multi_sine patest_record patest_sine_formats patest_toomanysines \
-paqa_devs patest_clip patest_leftright patest_out_underflow patest_ringmix patest_sine_time patest_underflow \
-paqa_errs patest_dither patest_longsine patest_pink patest_saw patest_start_stop patest_wire"
-
-do_configure_prepend() {
- echo "TEMPLATE = subdirs" >portaudio.pro
- echo "SUBDIRS = lib tests" >>portaudio.pro
-
- mkdir -p lib
- cat <<EOF >lib/lib.pro
-TEMPLATE = lib
-CONFIG = console debug warn_on
-TARGET = portaudio
-VERSION = 0.0.19
-DESTDIR = .
-DEFINES = PA_USE_OSS=1 HAVE_LIBPTHREAD=1
-DEFINES += PA_LITTLE_ENDIAN
-
-INCLUDEPATH = ../pa_common
-
-SOURCES = \
- ../pa_common/pa_allocation.c \
- ../pa_common/pa_converters.c \
- ../pa_common/pa_cpuload.c \
- ../pa_common/pa_dither.c \
- ../pa_common/pa_front.c \
- ../pa_common/pa_process.c \
- ../pa_common/pa_skeleton.c \
- ../pa_common/pa_stream.c \
- ../pa_common/pa_trace.c \
-\
- ../pa_unix_oss/pa_unix_oss.c \
- ../pa_unix/pa_unix_hostapis.c \
- ../pa_unix/pa_unix_util.c
-EOF
-
- mkdir -p tests
- echo "TEMPLATE = subdirs" >tests/tests.pro
- echo "SUBDIRS = \\" >>tests/tests.pro
-
- for test in ${TESTS}
- do
- mkdir -p tests/$test
- cat <<EOF >tests/$test/$test.pro
-TEMPLATE = app
-CONFIG = console debug warn_on thread
-DESTDIR = ../../bin
-INCLUDEPATH = ../../pa_common/
-LIBS = -L../../lib -lportaudio -lm
-SOURCES = ../../pa_tests/$test.c
-EOF
- echo "$test \\" >>tests/tests.pro
- done
- echo >>tests/tests.pro
-}
-
-do_stage() {
- oe_libinstall -so -C lib libportaudio ${STAGING_LIBDIR}
- install -m 0644 pa_common/portaudio.h ${STAGING_INCDIR}/portaudio.h
-}
-
-do_install() {
- install -d ${D}${libdir}
- install -d ${D}${bindir}
- install -d ${D}${includedir}
- oe_libinstall -so -C lib libportaudio ${D}${libdir}
- install -m 0644 pa_common/portaudio.h ${D}${includedir}
- install -m 0755 bin/* ${D}${bindir}/
-}
-
-PACKAGES = "${PN}-dbg libportaudio0 portaudio-dev portaudio-examples"
-FILES_libportaudio0 = "${libdir}"
-FILES_portaudio-examples = "${bindir}"
diff --git a/packages/povray/povray-3.6.1+3.7.0-beta25b/.mtn2git_empty b/packages/povray/povray-3.6.1+3.7.0-beta25b/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/povray/povray-3.6.1+3.7.0-beta25b/.mtn2git_empty
diff --git a/packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch b/packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch
new file mode 100644
index 0000000000..e0803bafac
--- /dev/null
+++ b/packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch
@@ -0,0 +1,42 @@
+--- /tmp/configure.ac 2008-08-14 01:13:37.000000000 +0200
++++ povray-3.7.0.beta.25b/configure.ac 2008-08-14 01:17:56.253198000 +0200
+@@ -357,8 +357,6 @@
+ AC_MSG_RESULT([yes])
+ AX_CHECK_LIB([z], [$required_libz_version], [z], [zlibVersion], [zlib.h], [zlibVersion()], [$with_zlib])
+ if test x"$ax_check_lib" != x"ok"; then
+- AC_MSG_ERROR([cannot find a suitable ZLIB library])
+- else
+ pov_libz=ok
+ fi
+ fi
+@@ -373,8 +371,6 @@
+ AC_MSG_RESULT([yes])
+ AX_CHECK_LIB([png], [$required_libpng_version], [png12 png], [png_get_libpng_ver], [png.h], [png_get_libpng_ver(NULL)], [$with_libpng])
+ if test x"$ax_check_lib" != x"ok"; then
+- AC_MSG_ERROR([cannot find a suitable PNG library])
+- else
+ pov_libpng=ok
+ fi
+ fi
+@@ -390,11 +386,9 @@
+ AC_MSG_RESULT([yes])
+ AX_CHECK_LIBJPEG([$required_libjpeg_version], [$with_libjpeg])
+ if test x"$ax_check_libjpeg" != x"ok"; then
+- AC_MSG_ERROR([cannot find a suitable JPEG library])
+- else
+ # create jversion.h in builddir
+ test -d "./source" || mkdir ./source
+- echo "#define JVERSION \"${ax_check_libjpeg_version}\"" > ./source/jversion.h
++ echo "#define JVERSION \"62\"" > ./source/jversion.h
+ pov_libjpeg=ok
+ fi
+ fi
+@@ -409,8 +403,6 @@
+ AC_MSG_RESULT([yes])
+ AX_CHECK_LIBTIFF([$required_libtiff_version], [$with_libtiff])
+ if test x"$ax_check_libtiff" != x"ok"; then
+- AC_MSG_ERROR([cannot find a suitable TIFF library])
+- else
+ pov_libtiff=ok
+ fi
+ fi
diff --git a/packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff b/packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff
new file mode 100644
index 0000000000..696dfb471f
--- /dev/null
+++ b/packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff
@@ -0,0 +1,70 @@
+--- /tmp/processoptions.cpp 2008-08-14 01:47:37.000000000 +0200
++++ povray-3.7.0.beta.25b/source/base/processoptions.cpp 2008-08-14 01:48:23.853198000 +0200
+@@ -90,6 +90,7 @@
+ *
+ *********************************************************************************/
+
++#include <cstring>
+ #include <cstdarg>
+ #include <cctype>
+
+--- /tmp/fileinputoutput.cpp 2008-08-14 01:49:16.000000000 +0200
++++ povray-3.7.0.beta.25b/source/base/fileinputoutput.cpp 2008-08-14 01:49:33.043198000 +0200
+@@ -90,6 +90,7 @@
+ *
+ *********************************************************************************/
+
++#include <cstring>
+ #include <cstdlib>
+ #include <cstdarg>
+
+--- /tmp/textstreambuffer.cpp 2008-08-14 01:52:07.000000000 +0200
++++ povray-3.7.0.beta.25b/source/base/textstreambuffer.cpp 2008-08-14 01:52:21.693198000 +0200
+@@ -90,6 +90,7 @@
+ *
+ *********************************************************************************/
+
++#include <cstring>
+ #include <algorithm>
+
+ #include "configbase.h"
+--- /tmp/fileinputoutput.h 2008-08-14 01:53:49.000000000 +0200
++++ povray-3.7.0.beta.25b/source/base/fileinputoutput.h 2008-08-14 01:54:07.213198000 +0200
+@@ -96,6 +96,7 @@
+ #include "base/types.h"
+ #include "base/path.h"
+
++#include <cstring>
+ #include <string>
+
+ namespace pov_base
+--- /tmp/configbase.h 2008-08-14 01:57:58.000000000 +0200
++++ povray-3.7.0.beta.25b/source/base/configbase.h 2008-08-14 01:58:12.373198000 +0200
+@@ -95,6 +95,7 @@
+ #ifndef CONFIGBASE_H
+ #define CONFIGBASE_H
+
++#include <climits>
+ #include "syspovconfigbase.h"
+
+ #ifndef DBL
+--- /tmp/unixoptions.cpp 2008-08-14 02:02:52.000000000 +0200
++++ povray-3.7.0.beta.25b/vfe/unix/unixoptions.cpp 2008-08-14 10:22:09.073198000 +0200
+@@ -454,13 +454,16 @@
+ char *errormsg =
+ "Cannot determine the current working directory.\n"
+ "Check that the PWD environment variable does exist and is valid.\n";
++ int no_error_call = 1;
+ if(no_error_call)
+ {
+ fprintf(stderr, "%s: %s\n", PACKAGE, errormsg);
+ exit(EXIT_FAILURE);
+ }
++#ifdef USE_ERROR
+ else
+- Error("%s", errormsg);
++ std::Error("%s", errormsg);
++#endif
+ }
+ #endif
+
diff --git a/packages/povray/povray_3.6.1+3.7.0-beta25b.bb b/packages/povray/povray_3.6.1+3.7.0-beta25b.bb
new file mode 100644
index 0000000000..eee01e13ed
--- /dev/null
+++ b/packages/povray/povray_3.6.1+3.7.0-beta25b.bb
@@ -0,0 +1,42 @@
+DESCRIPTION = "The Persistence of Vision Raytracer is a high-quality, totally free tool for creating stunning three-dimensional graphics. "
+HOMEPAGE = "http://www.povray.org"
+SECTION = "console/graphics"
+LICENSE = "povray"
+DEPENDS = "virtual/libx11 boost zlib jpeg libpng tiff"
+
+PR = "r1"
+
+#We apply a patch that subverts the checks for jpeg, zlib, png and tiff because we know OE has the required versions, but it is still a hack.
+SRC_URI = "http://www.povray.org/redirect/www.povray.org/beta/source/povray-src-3.7.0.beta.25b.tar.bz2 \
+ file://configure-cross-hack.patch;patch=1 \
+ file://gcc43.diff;patch=1 \
+ "
+
+S = "${WORKDIR}/povray-3.7.0.beta.25b"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = " --with-boost-thread=boost_thread-mt \
+ COMPILED_BY=${MAINTAINER} "
+
+FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations -frename-registers -fomit-frame-pointer -O3 -ftree-vectorize -ffast-math -fno-math-errno "
+
+PACKAGES += "${PN}-scenes ${PN}-ini ${PN}-icons ${PN}-scripts ${PN}-includes"
+
+PACKAGE_ARCH_${PN}-doc = "all"
+
+PACKAGE_ARCH_${PN}-scenes = "all"
+FILES_${PN}-scenes = "${datadir}/povray-3.7/scenes"
+
+PACKAGE_ARCH_${PN}-ini = "all"
+FILES_${PN}-ini = "${datadir}/povray-3.7/ini"
+
+PACKAGE_ARCH_${PN}-icons = "all"
+FILES_${PN}-icons = "${datadir}/povray-3.7/icons"
+
+PACKAGE_ARCH_${PN}-scripts = "all"
+FILES_${PN}-scripts = "${datadir}/povray-3.7/scripts"
+
+PACKAGE_ARCH_${PN}-includes = "all"
+FILES_${PN}-includes = "${datadir}/povray-3.7/include"
+
diff --git a/packages/python/python-ptrace_0.3.2.bb b/packages/python/python-ptrace_0.3.2.bb
new file mode 100644
index 0000000000..a039476c39
--- /dev/null
+++ b/packages/python/python-ptrace_0.3.2.bb
@@ -0,0 +1,10 @@
+DESCRIPTION = "python-ptrace is a debugger using ptrace."
+HOMEPAGE = "http://fusil.hachoir.org/trac/wiki/python-ptrace"
+SECTION = "devel/python"
+LICENSE = "GPLv2"
+PR = "ml0"
+
+SRC_URI = "http://pypi.python.org/packages/source/p/ptrace/ptrace-${PV}.tar.gz"
+S = "${WORKDIR}/ptrace-${PV}"
+
+inherit distutils
diff --git a/packages/rdesktop/rdesktop_1.6.0.bb b/packages/rdesktop/rdesktop_1.6.0.bb
new file mode 100644
index 0000000000..b5337f9e83
--- /dev/null
+++ b/packages/rdesktop/rdesktop_1.6.0.bb
@@ -0,0 +1,13 @@
+DESCRIPTION = "Rdesktop rdp client for X"
+DEPENDS = "virtual/libx11 openssl"
+HOMEPAGE = "http://www.rdesktop.org"
+SECTION = "x11/network"
+LICENSE = "GPL"
+PV = "1.6.0"
+PR = "r0"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/rdesktop/rdesktop-${PV}.tar.gz"
+
+inherit autotools
+
+EXTRA_OECONF = "--with-openssl=${STAGING_EXECPREFIXDIR} "
diff --git a/packages/tangogps/files/0004-Update-fix-timestamp-from-gypsy.patch b/packages/tangogps/files/0004-Update-fix-timestamp-from-gypsy.patch
new file mode 100644
index 0000000000..d427108cc7
--- /dev/null
+++ b/packages/tangogps/files/0004-Update-fix-timestamp-from-gypsy.patch
@@ -0,0 +1,18 @@
+--- tangogps-0.9.2/src/gps_functions.c~ 2008-08-15 05:54:26.000000000 +0930
++++ tangogps-0.9.2/src/gps_functions.c 2008-08-15 23:29:19.000000000 +0930
+@@ -649,6 +649,7 @@
+ int timestamp, double latitude, double longitude, double altitude, void *user_data)
+ {
+ if (gpsdata->valid) {
++ gpsdata->fix.time = timestamp;
+ gpsdata->fix.latitude = latitude;
+ gpsdata->fix.longitude = longitude;
+ gpsdata->fix.altitude = altitude;
+@@ -664,6 +665,7 @@
+ static void on_course_changed(GypsyCourse *course, GypsyCourseFields fields_set,
+ int timestamp, double speed, double direction, double climb, void *user_data)
+ {
++ gpsdata->fix.time = timestamp;
+ gpsdata->fix.speed = speed/3.6;
+ gpsdata->fix.track = direction;
+ }
diff --git a/packages/tangogps/tangogps-fso_0.9.2.bb b/packages/tangogps/tangogps-fso_0.9.2.bb
index c3f202724f..22b65e7f4a 100644
--- a/packages/tangogps/tangogps-fso_0.9.2.bb
+++ b/packages/tangogps/tangogps-fso_0.9.2.bb
@@ -1,8 +1,11 @@
require tangogps.inc
+PR = "r1"
+
RDEPENDS = "frameworkd"
SRC_URI += "\
file://0002-Get-GPS-data-via-the-gypsy-interface.patch;patch=1 \
file://0003-Try-to-request-the-GPS-resource-from-ousaged.patch;patch=1 \
+ file://0004-Update-fix-timestamp-from-gypsy.patch;patch=1 \
"
diff --git a/packages/tasks/task-python-everything.bb b/packages/tasks/task-python-everything.bb
index f6aec948bd..08915c033f 100644
--- a/packages/tasks/task-python-everything.bb
+++ b/packages/tasks/task-python-everything.bb
@@ -1,7 +1,7 @@
DESCRIPTION= "Everything Python"
HOMEPAGE = "http://www.vanille.de/projects/python.spy"
LICENSE = "MIT"
-PR = "ml32"
+PR = "ml33"
RDEPENDS = "\
python-ao \
@@ -39,6 +39,7 @@ RDEPENDS = "\
python-ogg \
python-opendir \
python-pexpect \
+ python-ptrace \
python-pyalsa \
python-pyalsaaudio \
python-pybluez \
diff --git a/packages/xorg-lib/pixman/.mtn2git_empty b/packages/xorg-lib/pixman/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/xorg-lib/pixman/.mtn2git_empty
diff --git a/packages/xorg-lib/pixman/pixman-arm.patch b/packages/xorg-lib/pixman/pixman-arm.patch
new file mode 100644
index 0000000000..224b612548
--- /dev/null
+++ b/packages/xorg-lib/pixman/pixman-arm.patch
@@ -0,0 +1,310 @@
+commit 23a7d5dea599efec1f459bac64cf9edc4bd5ae11
+Author: Ilpo Ruotsalainen <ilpo.ruotsalainen@movial.fi>
+Date: Thu Nov 29 12:29:59 2007 +0000
+
+ Implement ARM optimized version of fill routines.
+
+diff --git a/configure.ac b/configure.ac
+index 22a91ef..3ac2a40 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -148,6 +148,32 @@ fi
+ AM_CONDITIONAL(USE_SSE, test $have_sse_intrinsics = yes)
+
+ dnl ========================================================
++
++dnl Test for architechture specific optimizations for this platform
++
++AC_MSG_CHECKING(for architechture specific optimizations)
++
++use_arch_opts=no
++
++case "$host_cpu" in
++arm)
++ if test "$GCC" = "yes" ; then
++ use_arch_opts=yes
++ ARCH_OPT_SOURCES='pixman-arch-arm.lo'
++ fi
++ ;;
++esac
++
++AC_MSG_RESULT($use_arch_opts)
++
++if test $use_arch_opts = yes ; then
++ AC_DEFINE(USE_ARCH_OPTS, 1, [use architechture specific optimizations])
++fi
++
++AC_SUBST([ARCH_OPT_SOURCES])
++AM_CONDITIONAL(USE_ARCH_OPTS, test $use_arch_opts = yes)
++
++dnl ========================================================
+ AC_SUBST(MMX_CFLAGS)
+
+ PKG_CHECK_MODULES(GTK, [gtk+-2.0], [HAVE_GTK=yes], [HAVE_GTK=no])
+diff --git a/pixman/Makefile.am b/pixman/Makefile.am
+index 66283a2..dab6363 100644
+--- a/pixman/Makefile.am
++++ b/pixman/Makefile.am
+@@ -20,6 +20,11 @@ libpixman_1_la_SOURCES = \
+ libpixmanincludedir = $(includedir)/pixman-1/
+ libpixmaninclude_HEADERS = pixman.h
+
++if USE_ARCH_OPTS
++libpixman_1_la_LIBADD += $(ARCH_OPT_SOURCES)
++libpixman_1_la_DEPENDENCIES = $(ARCH_OPT_SOURCES)
++endif
++
+ # mmx code
+ if USE_MMX
+ noinst_LTLIBRARIES = libpixman-mmx.la
+diff --git a/pixman/pixman-arch-arm.c b/pixman/pixman-arch-arm.c
+new file mode 100644
+index 0000000..655092c
+--- /dev/null
++++ b/pixman/pixman-arch-arm.c
+@@ -0,0 +1,205 @@
++/*
++ * Copyright © 2007 Movial Creative Technologies Inc
++ *
++ * Permission to use, copy, modify, distribute, and sell this software and its
++ * documentation for any purpose is hereby granted without fee, provided that
++ * the above copyright notice appear in all copies and that both that
++ * copyright notice and this permission notice appear in supporting
++ * documentation.
++ *
++ * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
++ * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
++ * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
++ * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
++ * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
++ * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
++ * SOFTWARE.
++ *
++ * Author: Ilpo Ruotsalainen <ilpo.ruotsalainen@movial.fi>
++ */
++
++#ifdef HAVE_CONFIG_H
++#include <config.h>
++#endif
++
++#include "pixman.h"
++#include "pixman-private.h"
++
++static void
++pixman_fill8 (uint32_t *bits,
++ int stride,
++ int x,
++ int y,
++ int width,
++ int height,
++ uint32_t xor)
++{
++ int byte_stride = stride * sizeof (uint32_t);
++ uint8_t *dst = (uint8_t *) bits;
++ uint8_t v = xor & 0xff;
++
++ xor = v | (v << 8);
++ xor |= xor << 16;
++
++ dst = dst + y * byte_stride + x;
++
++ while (height--)
++ {
++ uint32_t dummy1, dummy2;
++
++ asm volatile(
++ /* Check if the fill width is very small */
++ " cmp %0, #8\n"
++ " bcc 2f\n"
++ /* Output single pixels until aligned to word boundary */
++ "1: tst %1, #3\n"
++ " strneb %4, [%1], #1\n"
++ " subne %0, %0, #1\n"
++ " bne 1b\n"
++ /* Output up to 16 pixels per iteration */
++ "1: subs %0, %0, #8\n"
++ " strcs %4, [%1], #4\n"
++ " strcs %4, [%1], #4\n"
++ " subcss %0, %0, #8\n"
++ " strcs %4, [%1], #4\n"
++ " strcs %4, [%1], #4\n"
++ " bcs 1b\n"
++ /* Finish up any remaining pixels */
++ " and %0, %0, #7\n"
++ "2: subs %0, %0, #1\n"
++ " strcsb %4, [%1], #1\n"
++ " subcss %0, %0, #1\n"
++ " strcsb %4, [%1], #1\n"
++ " bcs 2b\n"
++ : "=r" (dummy1), "=r" (dummy2)
++ : "0" (width), "1" (dst), "r" (xor)
++ : "cc", "memory"
++ );
++
++ dst += byte_stride;
++ }
++}
++
++static void
++pixman_fill16 (uint32_t *bits,
++ int stride,
++ int x,
++ int y,
++ int width,
++ int height,
++ uint32_t xor)
++{
++ int short_stride = (stride * sizeof (uint32_t)) / sizeof (uint16_t);
++ uint16_t *dst = (uint16_t *)bits;
++ uint16_t v = xor & 0xffff;
++
++ xor = v | v << 16;
++
++ dst = dst + y * short_stride + x;
++
++ while (height--)
++ {
++ uint32_t dummy1, dummy2;
++
++ asm volatile(
++ /* Check if the fill width is very small */
++ " cmp %0, #4\n"
++ " bcc 2f\n"
++ /* Output single pixels until aligned to word boundary */
++ "1: tst %1, #2\n"
++ " strneh %4, [%1], #2\n"
++ " subne %0, %0, #1\n"
++ " bne 1b\n"
++ /* Output up to 8 pixels per iteration */
++ "1: subs %0, %0, #4\n"
++ " strcs %4, [%1], #4\n"
++ " strcs %4, [%1], #4\n"
++ " subcss %0, %0, #4\n"
++ " strcs %4, [%1], #4\n"
++ " strcs %4, [%1], #4\n"
++ " bcs 1b\n"
++ /* Finish up any remaining pixels */
++ " and %0, %0, #3\n"
++ "2: subs %0, %0, #1\n"
++ " strcsh %4, [%1], #2\n"
++ " bcs 2b\n"
++ : "=r" (dummy1), "=r" (dummy2)
++ : "0" (width), "1" (dst), "r" (xor)
++ : "cc", "memory"
++ );
++
++ dst += short_stride;
++ }
++}
++
++static void
++pixman_fill32 (uint32_t *bits,
++ int stride,
++ int x,
++ int y,
++ int width,
++ int height,
++ uint32_t xor)
++{
++ bits = bits + y * stride + x;
++
++ while (height--)
++ {
++ uint32_t dummy1, dummy2;
++
++ asm volatile(
++ /* Check if the fill width is very small */
++ " cmp %0, #2\n"
++ " bcc 2f\n"
++ /* Output up to 4 pixels per iteration */
++ "1: subs %0, %0, #2\n"
++ " strcs %4, [%1], #4\n"
++ " strcs %4, [%1], #4\n"
++ " subcss %0, %0, #2\n"
++ " strcs %4, [%1], #4\n"
++ " strcs %4, [%1], #4\n"
++ " bcs 1b\n"
++ /* Output last pixel if necessary */
++ "2: tst %0, #1\n"
++ " strne %4, [%1], #4\n"
++ : "=r" (dummy1), "=r" (dummy2)
++ : "0" (width), "1" (bits), "r" (xor)
++ : "cc", "memory"
++ );
++
++ bits += stride;
++ }
++}
++
++pixman_bool_t
++pixman_fill (uint32_t *bits,
++ int stride,
++ int bpp,
++ int x,
++ int y,
++ int width,
++ int height,
++ uint32_t xor)
++{
++ switch (bpp)
++ {
++ case 8:
++ pixman_fill8 (bits, stride, x, y, width, height, xor);
++ break;
++
++ case 16:
++ pixman_fill16 (bits, stride, x, y, width, height, xor);
++ break;
++
++ case 32:
++ pixman_fill32 (bits, stride, x, y, width, height, xor);
++ break;
++
++ default:
++ return FALSE;
++ break;
++ }
++
++ return TRUE;
++}
+diff --git a/pixman/pixman-arch.h b/pixman/pixman-arch.h
+new file mode 100644
+index 0000000..1eee9d3
+--- /dev/null
++++ b/pixman/pixman-arch.h
+@@ -0,0 +1,7 @@
++#ifdef USE_ARCH_OPTS
++
++#ifdef __arm__
++#define USE_ARCH_FILL
++#endif
++
++#endif
+--- /tmp/pixman-utils.c 2008-08-14 12:38:44.000000000 +0200
++++ pixman-0.11.8/pixman/pixman-utils.c 2008-08-14 12:40:03.503198000 +0200
+@@ -28,6 +28,7 @@
+ #include <stdlib.h>
+
+ #include "pixman-private.h"
++#include "pixman-arch.h"
+ #include "pixman-mmx.h"
+
+ PIXMAN_EXPORT pixman_bool_t
+@@ -84,6 +85,7 @@
+ return FALSE;
+ }
+
++#ifndef USE_ARCH_FILL
+ static void
+ pixman_fill8 (uint32_t *bits,
+ int stride,
+@@ -197,7 +199,7 @@
+
+ return TRUE;
+ }
+-
++#endif
+
+ /*
+ * Compute the smallest value no less than y which is on a
diff --git a/packages/xorg-lib/pixman_0.11.8.bb b/packages/xorg-lib/pixman_0.11.8.bb
new file mode 100644
index 0000000000..8e4bd8cff3
--- /dev/null
+++ b/packages/xorg-lib/pixman_0.11.8.bb
@@ -0,0 +1,18 @@
+SECTION = "libs"
+PRIORITY = "optional"
+DESCRIPTION = "Low-level pixel manipulation library."
+LICENSE = "X11"
+
+DEFAULT_PREFERENCE = "-1"
+
+SRC_URI = "http://cairographics.org/releases/pixman-${PV}.tar.gz \
+ file://pixman-arm.patch;patch=1 \
+ "
+
+inherit autotools
+
+AUTOTOOLS_STAGE_PKGCONFIG = "1"
+do_stage () {
+ autotools_stage_all
+}
+