summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Lauer <mickey@vanille-media.de>2006-11-11 18:22:30 +0000
committerMichael Lauer <mickey@vanille-media.de>2006-11-11 18:22:30 +0000
commit4eb54f079356de0e82ff98cfc68a3ab254b38351 (patch)
tree3e8fe453dc0f031e93b1d71860ffb1c02448e267
parentd6ed5ee9f9682d7de5012fac6528f46675cfb43c (diff)
parent01b752a6cdf62a513886bd89bf649980f8ab1862 (diff)
merge of a83b40dbdf522cf477298e73d789074887799468
and e2fde1c5cf87c2b0a9be2dfac2a1a1937db68382
-rw-r--r--classes/insane.bbclass6
-rw-r--r--conf/distro/angstrom-2007.1.conf8
-rw-r--r--conf/distro/include/angstrom.inc7
-rw-r--r--conf/machine/h5xxx.conf2
-rw-r--r--conf/machine/hx2000.conf2
-rw-r--r--conf/machine/ixp4xx.conf4
-rw-r--r--conf/machine/mx31ads.conf4
-rw-r--r--conf/machine/palmld.conf23
-rw-r--r--packages/abiword/abiword-embedded_2.4.6.bb12
-rw-r--r--packages/abiword/abiword-plugins_2.4.6.bb27
-rw-r--r--packages/abiword/abiword.inc43
-rw-r--r--packages/abiword/abiword_2.4.6.bb4
-rw-r--r--packages/altboot/altboot_1.1.0-wip.bb4
-rw-r--r--packages/altboot/files/altboot.rc/playbeep.sh2
-rw-r--r--packages/angstrom/angstrom-version.bb2
-rw-r--r--packages/boost-asio/boost-asio_0.3.7.bb2
-rw-r--r--packages/boost/boost_1.33.0.bb3
-rw-r--r--packages/busybox/slingbox-1.2.2/defconfig256
-rw-r--r--packages/busybox/slingbox-1.2.2/halt.patch40
-rw-r--r--packages/busybox/slingbox-1.2.2/wget-long-options.patch20
-rw-r--r--packages/busybox/slingbox_1.2.2.bb4
-rw-r--r--packages/cairo/cairo-1.2.4/.mtn2git_empty0
-rw-r--r--packages/cairo/cairo-1.2.4/0001-Add-autoconf-macro-AX_C_FLOAT_WORDS_BIGENDIAN.diff103
-rw-r--r--packages/cairo/cairo-1.2.4/0002-Change-_cairo_fixed_from_double-to-use-the-magic-number-technique.diff79
-rw-r--r--packages/cairo/cairo-1.2.4/0003-Add-new-perf-test-pattern_create_radial.diff164
-rw-r--r--packages/cairo/cairo_1.2.4.bb7
-rw-r--r--packages/clamav/clamav_0.88.6.bb (renamed from packages/clamav/clamav_0.88.4.bb)2
-rw-r--r--packages/dbus/dbus-0.94/dbus-1.init86
-rw-r--r--packages/dbus/dbus-0.95/.mtn2git_empty0
-rw-r--r--packages/dbus/dbus-0.95/cross.patch10
-rw-r--r--packages/dbus/dbus-0.95/dbus-1.init88
-rw-r--r--packages/dbus/dbus-0.95/fix-install-daemon.patch13
-rw-r--r--packages/dbus/dbus-1.0.0/.mtn2git_empty0
-rw-r--r--packages/dbus/dbus-1.0.0/cross.patch10
-rw-r--r--packages/dbus/dbus-1.0.0/dbus-1.init88
-rw-r--r--packages/dbus/dbus-1.0.0/fix-install-daemon.patch13
-rw-r--r--packages/dbus/dbus_0.94.bb2
-rw-r--r--packages/dbus/dbus_0.95.bb63
-rw-r--r--packages/dbus/dbus_1.0.0.bb63
-rw-r--r--packages/eds/eds-dbus_svn.bb23
-rw-r--r--packages/file/file-native_4.18.bb8
-rw-r--r--packages/file/file_4.18.bb22
-rw-r--r--packages/file/files/dump81
-rw-r--r--packages/file/files/filesystems812
-rw-r--r--packages/gcc/gcc-fpu.inc6
-rw-r--r--packages/gcc/gcc3-build.inc5
-rw-r--r--packages/gcc/gcc_3.3.3.bb5
-rw-r--r--packages/gcc/gcc_3.3.4.bb5
-rw-r--r--packages/gcc/gcc_4.1.1.bb3
-rw-r--r--packages/geoclue/.mtn2git_empty0
-rw-r--r--packages/geoclue/geoclue_svn.bb29
-rw-r--r--packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch94
-rw-r--r--packages/glibc/glibc_2.2.5.bb5
-rw-r--r--packages/glibc/glibc_2.3.2.bb5
-rw-r--r--packages/glibc/glibc_2.3.3+cvs20041128.bb5
-rw-r--r--packages/glibc/glibc_2.3.3.bb5
-rw-r--r--packages/glibc/glibc_2.3.5+cvs20050627.bb5
-rw-r--r--packages/glibc/glibc_2.4.bb8
-rw-r--r--packages/glibc/glibc_2.5.bb5
-rw-r--r--packages/glibc/glibc_cvs.bb5
-rw-r--r--packages/gmp/gmp-4.2.1/.mtn2git_empty0
-rw-r--r--packages/gmp/gmp-4.2.1/amd64.patch14
-rw-r--r--packages/gmp/gmp-4.2.1/configure.patch195
-rw-r--r--packages/gmp/gmp-4.2.1/sh4-asmfix.patch26
-rw-r--r--packages/gmp/gmp-native.inc23
-rw-r--r--packages/gmp/gmp-native_4.1.2.bb25
-rw-r--r--packages/gmp/gmp-native_4.2.1.bb2
-rw-r--r--packages/gmp/gmp.inc16
-rw-r--r--packages/gmp/gmp_4.1.2.bb19
-rw-r--r--packages/gmp/gmp_4.1.4.bb18
-rw-r--r--packages/gmp/gmp_4.2.1.bb3
-rw-r--r--packages/gnome/libgnome_2.16.0.bb14
-rw-r--r--packages/gnome/libgnomeui_2.16.0.bb22
-rw-r--r--packages/hal/files/.mtn2git_empty0
-rw-r--r--packages/hal/files/dbus-fix-api.patch26
-rw-r--r--packages/hal/hal_0.5.7.bb3
-rw-r--r--packages/images/nylon-image-base.bb2
-rw-r--r--packages/images/unslung-image.bb42
-rw-r--r--packages/initscripts/initscripts-1.0/angstrom/.mtn2git_empty0
-rwxr-xr-xpackages/initscripts/initscripts-1.0/angstrom/checkroot.sh201
-rwxr-xr-xpackages/initscripts/initscripts-1.0/checkroot.sh46
-rw-r--r--packages/initscripts/initscripts_1.0.bb2
-rw-r--r--packages/libiconv/libiconv_1.9.2.bb4
-rw-r--r--packages/libnet/libnet-1.1.2.1/configure.patch3075
-rw-r--r--packages/libnet/libnet-1.1.2.1/fix-endianess-test.patch90
-rw-r--r--packages/libnet/libnet_1.1.2.1.bb41
-rw-r--r--packages/libpcre/libpcre_4.4.bb2
-rw-r--r--packages/libw100/.mtn2git_empty0
-rw-r--r--packages/libw100/libw100_svn.bb14
-rw-r--r--packages/linux/linux-handhelds-2.6_2.6.17-hh3.bb11
-rw-r--r--packages/linux/linux-handhelds-2.6_cvs.bb4
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/sharpsl-pm-postresume-r1.patch30
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/tmio-nand-r7.patch593
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/tmio-ohci-r6.patch929
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/tmio-tc6393-r8.patch800
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/tosa-keyboard-r18.patch515
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/tosa-lcdnoise-r1.patch157
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/tosa-tmio-lcd-r10.patch472
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/wm9712-reset-loop-r2.patch44
-rw-r--r--packages/linux/linux-openzaurus-2.6.18+git/wm9712-suspend-cold-res-r2.patch16
-rw-r--r--packages/linux/linux-openzaurus_2.6.18+git.bb16
-rw-r--r--packages/linux/unslung-kernel/defconfig33
-rw-r--r--packages/linux/unslung-kernel_2.4.22.l2.3r63.bb2
-rw-r--r--packages/matchbox-applet-inputmanager/files/.mtn2git_empty0
-rw-r--r--packages/matchbox-applet-inputmanager/files/mbinputmgr-libgtkinput.patch350
-rw-r--r--packages/matchbox-applet-inputmanager/files/update-to-svn.diff33
-rw-r--r--packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb9
-rw-r--r--packages/mplayer/mplayer_1.0pre8.bb25
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs/NOTES7
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs/rc.1-diversion.patch2
-rwxr-xr-xpackages/nslu2-binary-only/unslung-rootfs/rc.bootdisk41
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs/rc.lan-shell.patch7
-rwxr-xr-xpackages/nslu2-binary-only/unslung-rootfs/unsling112
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb21
-rw-r--r--packages/omniorb/omniorb_4.0.7.bb1
-rw-r--r--packages/openswan/openswan-2.2.0/installflags.patch17
-rw-r--r--packages/openswan/openswan_2.2.0.bb1
-rw-r--r--packages/opensync/libopensync_0.20.bb18
-rw-r--r--packages/ossie/ossie-c-wavloader_svn.bb14
-rw-r--r--packages/ossie/ossie-soundout-device_svn.bb19
-rw-r--r--packages/qemu/files/mouse_fix-r0.patch25
-rw-r--r--packages/qemu/files/nodocs_cvs.patch44
-rw-r--r--packages/qemu/files/qemu-usb-wacom.patch444
-rw-r--r--packages/qemu/files/qemu-x-no-sdl.patch630
-rw-r--r--packages/qemu/files/trunk_nodocs.patch41
-rw-r--r--packages/rxvt-unicode/rxvt-unicode_7.7.bb2
-rw-r--r--packages/rxvt-unicode/rxvt-unicode_7.9.bb2
-rw-r--r--packages/rxvt/rxvt-2.8.0/.mtn2git_empty0
-rw-r--r--packages/rxvt/rxvt-2.8.0/include.patch16
-rw-r--r--packages/rxvt/rxvt_2.8.0.bb41
-rw-r--r--packages/setserial/setserial_2.17.bb2
-rwxr-xr-xpackages/sysvinit/sysvinit/angstrom/rc5
-rw-r--r--packages/sysvinit/sysvinit_2.86.bb2
-rw-r--r--packages/tasks/task-base.bb4
-rw-r--r--packages/tasks/task-ossie.bb11
-rw-r--r--packages/tasks/task-pivotboot.bb10
-rw-r--r--packages/tinymail/files/camel-lite-configure-hack.patch18
-rw-r--r--packages/tinymail/tinymail_svn.bb42
-rw-r--r--packages/tslib/tslib/h2200/tslib.sh2
-rw-r--r--packages/tslib/tslib/usec_fix.patch26
-rw-r--r--packages/tslib/tslib_1.0.bb2
-rw-r--r--packages/udev/files/mount.sh5
-rw-r--r--packages/udev/udev_092.bb19
-rw-r--r--packages/udev/udev_097.bb20
-rw-r--r--packages/udev/udev_100.bb19
-rw-r--r--packages/vino/.mtn2git_empty0
-rw-r--r--packages/vino/vino_2.16.0.bb13
-rw-r--r--packages/xserver-common/xserver-common_1.11.bb19
-rw-r--r--packages/xserver-common/xserver-common_1.12.bb17
-rw-r--r--packages/xstroke/xstroke_0.6.bb2
-rw-r--r--site/arm-linux1
-rw-r--r--site/arm-linux-gnueabi14
-rw-r--r--site/arm-linux-uclibc1
-rw-r--r--site/arm-linux-uclibcgnueabi1
-rw-r--r--site/armeb-linux1
-rw-r--r--site/armeb-linux-uclibc1
-rw-r--r--site/i486-linux4
-rw-r--r--site/powerpc-linux1
-rw-r--r--site/sh3-linux1
-rw-r--r--site/sh4-linux4
-rw-r--r--site/x86_64-linux1
-rw-r--r--site/x86_64-linux-uclibc1
162 files changed, 7337 insertions, 4803 deletions
diff --git a/classes/insane.bbclass b/classes/insane.bbclass
index 75602d0f44..4ff867b62f 100644
--- a/classes/insane.bbclass
+++ b/classes/insane.bbclass
@@ -8,7 +8,7 @@
# -Check the RUNTIME path for the $TMPDIR
# -Check if .la files wrongly point to workdir
# -Check if .pc files wrongly point to workdir
-# -Check if packages contains .dbg or .so files where they should be in -dev or -dbg
+# -Check if packages contains .debug directories or .so files where they should be in -dev or -dbg
#
@@ -55,7 +55,7 @@ def package_qa_check_devdbg(path, name,d):
if not "-dbg" in name:
if '.debug' in path:
- bb.error("QA Issue: non debug package contains .dbg file: %s" % name)
+ bb.error("QA Issue: non debug package contains .debug directory: %s" % name)
def package_qa_check_perm(path,name,d):
"""
@@ -126,7 +126,7 @@ def package_qa_check_rdepends(pkg, workdir, d):
# The PACKAGE FUNC to scan each package
python do_package_qa () {
bb.note("DO PACKAGE QA")
- workdir = bb.data.getVar('WORKDIR', d, True)
+ workdir = bb.data.getVar('WORKDIR', d, True)
packages = bb.data.getVar('PACKAGES',d, True)
# no packages should be scanned
diff --git a/conf/distro/angstrom-2007.1.conf b/conf/distro/angstrom-2007.1.conf
index be6bed9f9a..738a0cef78 100644
--- a/conf/distro/angstrom-2007.1.conf
+++ b/conf/distro/angstrom-2007.1.conf
@@ -8,7 +8,7 @@
#DISTRO_VERSION = "2007.1"
DISTRO_VERSION = "test-${DATE}"
-DISTRO_REVISION = "8"
+DISTRO_REVISION = "9"
require conf/distro/include/angstrom.inc
require conf/distro/include/sane-srcdates.inc
@@ -38,6 +38,7 @@ FEED_ARCH_htcuniversal = "armv5te"
FEED_ARCH_hx2000 = "armv5te"
FEED_ARCH_hx4700 = "armv5te"
FEED_ARCH_ixp4xx = "armv5te"
+FEED_ARCH_magician = "armv5te"
FEED_ARCH_netbook-pro = "armv5te"
FEED_ARCH_nokia770 = "armv5te"
FEED_ARCH_poodle = "armv5te"
@@ -96,6 +97,7 @@ PREFERRED_PROVIDER_xserver ?= "xserver-kdrive"
require conf/distro/include/preferred-xorg-versions-X11R7.1.inc
PREFERRED_VERSION_xserver-kdrive = "X11R7.1-1.1.0"
+PREFERRED_VERSION_gtk+ = "2.10.6"
#zap extra stuff taking place in $MACHINE.conf
GPE_EXTRA_INSTALL = ""
@@ -147,10 +149,14 @@ PREFERRED_VERSION_gcc ?= "4.1.1"
PREFERRED_VERSION_gcc-cross ?= "4.1.1"
PREFERRED_VERSION_gcc-cross-sdk ?= "4.1.1"
PREFERRED_VERSION_gcc-cross-initial ?= "4.1.1"
+
PREFERRED_VERSION_binutils ?= "2.17.50.0.5"
PREFERRED_VERSION_binutils-cross ?= "2.17.50.0.5"
PREFERRED_VERSION_binutils-cross-sdk ?= "2.17.50.0.5"
+
+PREFERRED_VERSION_linux-libc-headers_guinness ?= "2.6.18"
PREFERRED_VERSION_linux-libc-headers ?= "2.6.15.99"
+
PREFERRED_VERSION_glibc ?= "2.5"
PREFERRED_VERSION_glibc-intermediate ?= "2.5"
diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc
index 858305cd39..a3d9694295 100644
--- a/conf/distro/include/angstrom.inc
+++ b/conf/distro/include/angstrom.inc
@@ -28,11 +28,18 @@ INHERIT += "package_ipk debian multimachine sanity"
PREFERRED_PROVIDER_qemu-native = "qemu-native"
ENABLE_BINARY_LOCALE_GENERATION ?= "1"
+#qemu doesn't like armv6/eabi/vfp
+ENABLE_BINARY_LOCALE_GENERATION_mx31ads = "0"
+
#ARM EABI is softfloat by default, but let's make sure :)
#make it overridable for platforms with FPU, like ep93xx or i.mx31
TARGET_FPU_arm ?= "soft"
TARGET_FPU_ixp4xx ?= "soft"
+
+#Make a LE jffs2 image
+SLUGOS_IMAGESEX = "little-endian"
+
#Name the generated images in a sane way
IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${DISTRO_VERSION}-${MACHINE}"
DEPLOY_DIR_IMAGE = ${DEPLOY_DIR}/images/${MACHINE}
diff --git a/conf/machine/h5xxx.conf b/conf/machine/h5xxx.conf
index d2e7306c46..941d08c013 100644
--- a/conf/machine/h5xxx.conf
+++ b/conf/machine/h5xxx.conf
@@ -29,5 +29,5 @@ MACHINE_EXTRA_RRECOMMENDS = " kernel-module-h5400_lcd \
#
# Modules autoload and other boot properties
#
-SERIAL_CONSOLE = "115200 tts/0 vt100"
+SERIAL_CONSOLE = "115200 ttyS0 vt100"
USE_VT = "0"
diff --git a/conf/machine/hx2000.conf b/conf/machine/hx2000.conf
index b0c962c1d0..da2e466425 100644
--- a/conf/machine/hx2000.conf
+++ b/conf/machine/hx2000.conf
@@ -5,7 +5,7 @@
TARGET_ARCH = "arm"
IPKG_EXTRA_ARCHS = "armv4 armv4t armv5te iwmmxt ipaqpxa ipaq-pxa270"
-#PREFERRED_PROVIDER_virtual/kernel = "linux-openzaurus"
+PREFERRED_PROVIDER_virtual/kernel = "linux-openzaurus"
PREFERRED_VERSION_orinoco-modules = "0.15rc1"
diff --git a/conf/machine/ixp4xx.conf b/conf/machine/ixp4xx.conf
index c088485fcc..c3e56067cd 100644
--- a/conf/machine/ixp4xx.conf
+++ b/conf/machine/ixp4xx.conf
@@ -2,4 +2,8 @@
#@NAME: Generic IXP4XX kernel
#@DESCRIPTION: Machine configuration for a generic ixp4xx board
+MACHINE_FEATURES = "kernel26 usbhost ext2"
+
include conf/machine/include/ixp4xx.conf
+
+IPKG_EXTRA_ARCHS = "armv4 armv4t armv5e armv5te ixp4xx${ARCH_BYTE_SEX}"
diff --git a/conf/machine/mx31ads.conf b/conf/machine/mx31ads.conf
index ad6de78f56..4b3fff7061 100644
--- a/conf/machine/mx31ads.conf
+++ b/conf/machine/mx31ads.conf
@@ -5,8 +5,10 @@
TARGET_ARCH = "arm"
TARGET_FPU_arm = "hard"
+MACHINE_FEATURES = "kernel26 apm alsa ext2 pcmcia usbhost usbgadget"
+
GUI_MACHINE_CLASS = "smallscreen"
-IPKG_EXTRA_ARCHS = "armv6"
+IPKG_EXTRA_ARCHS = "arm armv4t armv5te armv6"
PREFERRED_PROVIDER_virtual/kernel = "${MACHINE}-kernel"
diff --git a/conf/machine/palmld.conf b/conf/machine/palmld.conf
new file mode 100644
index 0000000000..35a31aa00b
--- /dev/null
+++ b/conf/machine/palmld.conf
@@ -0,0 +1,23 @@
+#@TYPE: Machine
+#@NAME: Palm LifeDrive
+#@DESCRIPTION: Machine configuration for the Palm LifeDrive
+
+TARGET_ARCH = "arm"
+IPKG_EXTRA_ARCHS = "arm armv4t armv5te"
+
+PREFERRED_PROVIDER_virtual/kernel = "hackndev-2.6trunk"
+
+PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive"
+
+MACHINE_FEATURES = "kernel26 touchscreen apm alsa pcmcia irda wifi ext2 usbgadget"
+
+ROOT_FLASH_SIZE = "100"
+
+SERIAL_CONSOLE = "115200 ttyS0"
+
+GUI_MACHINE_CLASS = "bigscreen"
+
+# Use tune-xscale per default. Machine independent feeds should be built with tune-strongarm.
+include conf/machine/tune-xscale.conf
+
+module_autoload_sa1100-rtc = "sa1100-rtc"
diff --git a/packages/abiword/abiword-embedded_2.4.6.bb b/packages/abiword/abiword-embedded_2.4.6.bb
new file mode 100644
index 0000000000..9381bbd8a7
--- /dev/null
+++ b/packages/abiword/abiword-embedded_2.4.6.bb
@@ -0,0 +1,12 @@
+require abiword.inc
+
+EXTRA_OECONF += "--enable-embedded"
+
+RCONFLICTS = "abiword"
+RPROVIDES += "abiword"
+
+do_compile_prepend() {
+ cp ${S}/src/af/xap/unix/hildon/xap_EmbeddedFeatures.h ${S}/src/af/xap/unix/
+ cp ${S}/src/wp/ap/unix/hildon/ap_EmbeddedFeatures.h ${S}/src/wp/ap/unix/
+}
+
diff --git a/packages/abiword/abiword-plugins_2.4.6.bb b/packages/abiword/abiword-plugins_2.4.6.bb
new file mode 100644
index 0000000000..28d076aaa4
--- /dev/null
+++ b/packages/abiword/abiword-plugins_2.4.6.bb
@@ -0,0 +1,27 @@
+DESCRIPTION ="AbiWord is free word processing program similar to Microsoft(r) Word""
+SECTION = "gnome/office"
+HOMEPAGE="http://www.abiword.org""
+LICENSE="GPLv2"
+
+DEPENDS = "libwpd librsvg goffice poppler"
+PR="r0"
+
+SRC_URI = "http://www.abiword.org/downloads/abiword/${PV}/source/abiword-${PV}.tar.gz \
+ file://abiword-plugin-pdf-poppler.patch;patch=1;pnum=2"
+S = "${WORKDIR}/abiword-${PV}/abiword-plugins"
+RDEPENDS='abiword'
+
+inherit autotools
+
+PARALLEL_MAKE=""
+
+EXTRA_OECONF = "--without-libwmf"
+
+PACKAGES_DYNAMIC = "abiword-plugin-*"
+
+python populate_packages_prepend () {
+ abiword_libdir = bb.data.expand('${libdir}/AbiWord-2.4/plugins', d)
+
+ do_split_packages(d, abiword_libdir, '^libAbi(.*)\.so$', 'abiword-plugin-%s', 'Abiword plugin for %s', extra_depends='')
+}
+
diff --git a/packages/abiword/abiword.inc b/packages/abiword/abiword.inc
index ac9a39515a..c8f3243b9c 100644
--- a/packages/abiword/abiword.inc
+++ b/packages/abiword/abiword.inc
@@ -6,31 +6,32 @@ LICENSE = "GPLv2"
DEPENDS = "perl-native libgsf libgnomeprint libgnomeprintui libglade libfribidi enchant jpeg libpng libxml2"
RDEPENDS = "enchant glibc-gconv-ibm850 glibc-gconv-cp1252 \
glibc-gconv-iso8859-15 glibc-gconv-iso8859-1"
-PR="r1"
+PR = "r2"
SRC_URI = "http://www.abiword.org/downloads/abiword/${PV}/source/abiword-${PV}.tar.gz"
S = "${WORKDIR}/abiword-${PV}/abi"
-FILES_${PN} += " ${datadir}/icons/* \
-${datadir}/AbiSuite-2.4/AbiWord/glade \
-${datadir}/AbiSuite-2.4/AbiWord/scripts \
-${datadir}/AbiSuite-2.4/AbiWord/system.profile-en \
-${datadir}/AbiSuite-2.4/AbiWord/system.profile-en_GB \
-#${datadir}/AbiSuite-2.4/templates/A4.awt \
-#${datadir}/AbiSuite-2.4/templates/US-Letter.awt \
-${datadir}/AbiSuite-2.4/templates/normal.awt \
-${datadir}/AbiSuite-2.4/templates/normal.awt-en_GB \
-${datadir}/AbiSuite-2.4/templates/Employee-Directory.awt \
-${datadir}/AbiSuite-2.4/templates/Business-Report.awt \
-${datadir}/AbiSuite-2.4/templates/Fax-Coversheet.awt \
-${datadir}/AbiSuite-2.4/templates/Resume.awt \
-${datadir}/AbiSuite-2.4/templates/Two-Columns.awt \
-${datadir}/AbiSuite-2.4/templates/Memo.awt \
-${datadir}/AbiSuite-2.4/templates/Press-Release.awt "
+FILES_${PN} += " \
+ ${datadir}/icons/* \
+ ${datadir}/AbiSuite-2.4/AbiWord/glade \
+ ${datadir}/AbiSuite-2.4/AbiWord/scripts \
+ ${datadir}/AbiSuite-2.4/AbiWord/system.profile-en \
+ ${datadir}/AbiSuite-2.4/AbiWord/system.profile-en_GB \
+# ${datadir}/AbiSuite-2.4/templates/A4.awt \
+# ${datadir}/AbiSuite-2.4/templates/US-Letter.awt \
+ ${datadir}/AbiSuite-2.4/templates/normal.awt \
+ ${datadir}/AbiSuite-2.4/templates/normal.awt-en_GB \
+ ${datadir}/AbiSuite-2.4/templates/Employee-Directory.awt \
+ ${datadir}/AbiSuite-2.4/templates/Business-Report.awt \
+ ${datadir}/AbiSuite-2.4/templates/Fax-Coversheet.awt \
+ ${datadir}/AbiSuite-2.4/templates/Resume.awt \
+ ${datadir}/AbiSuite-2.4/templates/Two-Columns.awt \
+ ${datadir}/AbiSuite-2.4/templates/Memo.awt \
+ ${datadir}/AbiSuite-2.4/templates/Press-Release.awt "
inherit autotools
-PARALLEL_MAKE=""
+PARALLEL_MAKE = ""
EXTRA_OECONF = "--disable-pspell --enable-enchant"
@@ -39,4 +40,10 @@ do_install_append() {
mv ${D}${datadir}/icons/* ${D}${datadir}/pixmaps/
}
+PACKAGES += " abiword-clipart abiword-icons abiword-strings abiword-systemprofiles abiword-templates "
+FILES_abiword-clipart += "${datadir}/AbiSuite-2.4/clipart"
+FILES_abiword-icons += "${datadir}/AbiSuite-2.4/icons"
+FILES_abiword-strings += "${datadir}/AbiSuite-2.4/AbiWord/strings"
+FILES_abiword-systemprofiles += "${datadir}/AbiSuite-2.4/AbiWord/system.profile*"
+FILES_abiword-templates += "${datadir}/AbiSuite-2.4/templates"
diff --git a/packages/abiword/abiword_2.4.6.bb b/packages/abiword/abiword_2.4.6.bb
new file mode 100644
index 0000000000..b97556b735
--- /dev/null
+++ b/packages/abiword/abiword_2.4.6.bb
@@ -0,0 +1,4 @@
+require abiword.inc
+
+RCONFLICTS = "abiword-embedded"
+
diff --git a/packages/altboot/altboot_1.1.0-wip.bb b/packages/altboot/altboot_1.1.0-wip.bb
index 9d78a7a1c2..84acba9f32 100644
--- a/packages/altboot/altboot_1.1.0-wip.bb
+++ b/packages/altboot/altboot_1.1.0-wip.bb
@@ -23,7 +23,7 @@ RDEPENDS_${PN}-conf = "${PN}"
######################################################################################
-WIP_DATE = "20061105"
+WIP_DATE = "20061108"
PR = "${WIP_DATE}-r0"
######################################################################################
@@ -78,7 +78,7 @@ do_install() {
######################################################################################
do_configure() {
- cat ${WORKDIR}/altboot/init.altboot | sed "s/^VERSION=.*/VERSION=\"${PV}\"/" > ${WORKDIR}/altboot/init.altboot_
+ cat ${WORKDIR}/altboot/init.altboot | sed "s/^VERSION=.*/VERSION=\"${PV}-${PR}\"/" > ${WORKDIR}/altboot/init.altboot_
mv ${WORKDIR}/altboot/init.altboot_ ${WORKDIR}/altboot/init.altboot
}
diff --git a/packages/altboot/files/altboot.rc/playbeep.sh b/packages/altboot/files/altboot.rc/playbeep.sh
index 9ef6a0c41b..b41f098630 100644
--- a/packages/altboot/files/altboot.rc/playbeep.sh
+++ b/packages/altboot/files/altboot.rc/playbeep.sh
@@ -11,7 +11,7 @@ then
for module in `cat /etc/modules | grep snd | grep -v ^#`
do
#echo "loading $module"
- modprobe $module
+ modprobe $module >/dev/null 2>&1
done
mount -o remount,rw /
diff --git a/packages/angstrom/angstrom-version.bb b/packages/angstrom/angstrom-version.bb
index 45fadcb3d1..763fbf22dc 100644
--- a/packages/angstrom/angstrom-version.bb
+++ b/packages/angstrom/angstrom-version.bb
@@ -1,5 +1,7 @@
PV = ${DISTRO_VERSION}
+PACKAGES = "${PN}"
+
do_compile() {
mkdir -p ${D}${sysconfdir}
echo "Angstrom ${DISTRO_VERSION}" > ${D}${sysconfdir}/angstrom-version
diff --git a/packages/boost-asio/boost-asio_0.3.7.bb b/packages/boost-asio/boost-asio_0.3.7.bb
index 07888044f2..45b7e22eb1 100644
--- a/packages/boost-asio/boost-asio_0.3.7.bb
+++ b/packages/boost-asio/boost-asio_0.3.7.bb
@@ -6,8 +6,6 @@ PRIORITY = "optional"
LICENSE = "Boost Software License"
PR = "r1"
-inherit debian
-
SRC_URI = "${SOURCEFORGE_MIRROR}/asio/boost_asio_0_3_7.tar.bz2"
# mtx-[12] use 2.4 kernels but the kernel-libc-headers are from kernel 2.6,
diff --git a/packages/boost/boost_1.33.0.bb b/packages/boost/boost_1.33.0.bb
index c409022fae..4c709e6842 100644
--- a/packages/boost/boost_1.33.0.bb
+++ b/packages/boost/boost_1.33.0.bb
@@ -11,9 +11,6 @@ PRIORITY = "optional"
LICENSE = "Boost Software License"
PR = "r1"
-# need debian package naming for the libs
-inherit debian
-
BOOST_VER = "${@"_".join(bb.data.getVar("PV",d,1).split("."))}"
BOOST_MAJ = "${@"_".join(bb.data.getVar("PV",d,1).split(".")[0:2])}"
BOOST_P = "boost_${BOOST_VER}"
diff --git a/packages/busybox/slingbox-1.2.2/defconfig b/packages/busybox/slingbox-1.2.2/defconfig
index a9b167ad8d..8026cfc2ff 100644
--- a/packages/busybox/slingbox-1.2.2/defconfig
+++ b/packages/busybox/slingbox-1.2.2/defconfig
@@ -10,37 +10,41 @@ HAVE_DOT_CONFIG=y
#
# General Configuration
#
+# CONFIG_NITPICK is not set
# CONFIG_FEATURE_BUFFERS_USE_MALLOC is not set
-CONFIG_FEATURE_BUFFERS_GO_ON_STACK=y
+# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
+CONFIG_SHOW_USAGE=y
CONFIG_FEATURE_VERBOSE_USAGE=y
+CONFIG_FEATURE_COMPRESS_USAGE=y
# CONFIG_FEATURE_INSTALLER is not set
# CONFIG_LOCALE_SUPPORT is not set
-# CONFIG_FEATURE_DEVFS is not set
+CONFIG_GETOPT_LONG=y
# CONFIG_FEATURE_DEVPTS is not set
# CONFIG_FEATURE_CLEAN_UP is not set
# CONFIG_FEATURE_SUID is not set
# CONFIG_FEATURE_SUID_CONFIG is not set
# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
# CONFIG_SELINUX is not set
+CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
#
# Build Options
#
# CONFIG_STATIC is not set
-# CONFIG_DISABLE_SHARED is not set
# CONFIG_BUILD_LIBBUSYBOX is not set
# CONFIG_FEATURE_FULL_LIBBUSYBOX is not set
# CONFIG_FEATURE_SHARED_BUSYBOX is not set
CONFIG_LFS=y
USING_CROSS_COMPILER=y
-CROSS_COMPILER_PREFIX="armv5b-softfloat-linux-"
+CROSS_COMPILER_PREFIX="armeb-linux-"
# CONFIG_BUILD_AT_ONCE is not set
#
# Debugging Options
#
# CONFIG_DEBUG is not set
+# CONFIG_DEBUG_PESSIMIZE is not set
# CONFIG_NO_DEBUG_LIB is not set
# CONFIG_DMALLOC is not set
# CONFIG_EFENCE is not set
@@ -70,7 +74,7 @@ CONFIG_MD5_SIZE_VS_SPEED=2
# CONFIG_AR is not set
# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
CONFIG_BUNZIP2=y
-# CONFIG_CPIO is not set
+CONFIG_CPIO=y
# CONFIG_DPKG is not set
# CONFIG_DPKG_DEB is not set
# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
@@ -83,12 +87,12 @@ CONFIG_TAR=y
CONFIG_FEATURE_TAR_CREATE=y
CONFIG_FEATURE_TAR_BZIP2=y
# CONFIG_FEATURE_TAR_LZMA is not set
-# CONFIG_FEATURE_TAR_FROM is not set
+CONFIG_FEATURE_TAR_FROM=y
CONFIG_FEATURE_TAR_GZIP=y
CONFIG_FEATURE_TAR_COMPRESS=y
-CONFIG_FEATURE_TAR_OLDGNU_COMPATABILITY=y
+# CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set
CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
-CONFIG_FEATURE_TAR_LONG_OPTIONS=y
+# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set
CONFIG_UNCOMPRESS=y
# CONFIG_UNLZMA is not set
# CONFIG_FEATURE_LZMA_FAST is not set
@@ -105,29 +109,38 @@ CONFIG_UNZIP=y
#
# Coreutils
#
-# CONFIG_BASENAME is not set
+CONFIG_BASENAME=y
# CONFIG_CAL is not set
-# CONFIG_CAT is not set
-# CONFIG_CHGRP is not set
-# CONFIG_CHMOD is not set
-# CONFIG_CHOWN is not set
+CONFIG_CAT=y
+# CONFIG_CATV is not set
+CONFIG_CHGRP=y
+CONFIG_CHMOD=y
+CONFIG_CHOWN=y
CONFIG_CHROOT=y
+# CONFIG_CKSUM is not set
# CONFIG_CMP is not set
# CONFIG_COMM is not set
-# CONFIG_CP is not set
+CONFIG_CP=y
CONFIG_CUT=y
# CONFIG_DATE is not set
# CONFIG_FEATURE_DATE_ISOFMT is not set
-# CONFIG_DD is not set
-# CONFIG_DF is not set
+CONFIG_DD=y
+# CONFIG_FEATURE_DD_SIGNAL_HANDLING is not set
+# CONFIG_FEATURE_DD_IBS_OBS is not set
+CONFIG_DF=y
+# CONFIG_DIFF is not set
+# CONFIG_FEATURE_DIFF_BINARY is not set
+# CONFIG_FEATURE_DIFF_DIR is not set
+# CONFIG_FEATURE_DIFF_MINIMAL is not set
CONFIG_DIRNAME=y
-# CONFIG_DOS2UNIX is not set
-# CONFIG_UNIX2DOS is not set
+CONFIG_DOS2UNIX=y
+CONFIG_UNIX2DOS=y
CONFIG_DU=y
-CONFIG_FEATURE_DU_DEFALT_BLOCKSIZE_1K=y
-# CONFIG_ECHO is not set
-# CONFIG_FEATURE_FANCY_ECHO is not set
+CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
+CONFIG_ECHO=y
+CONFIG_FEATURE_FANCY_ECHO=y
# CONFIG_ENV is not set
+# CONFIG_FEATURE_ENV_LONG_OPTIONS is not set
CONFIG_EXPR=y
# CONFIG_EXPR_MATH_SUPPORT_64 is not set
# CONFIG_FALSE is not set
@@ -135,37 +148,40 @@ CONFIG_EXPR=y
CONFIG_HEAD=y
CONFIG_FEATURE_FANCY_HEAD=y
# CONFIG_HOSTID is not set
-# CONFIG_ID is not set
+CONFIG_ID=y
# CONFIG_INSTALL is not set
+# CONFIG_FEATURE_INSTALL_LONG_OPTIONS is not set
# CONFIG_LENGTH is not set
-# CONFIG_LN is not set
+CONFIG_LN=y
# CONFIG_LOGNAME is not set
-# CONFIG_LS is not set
-# CONFIG_FEATURE_LS_FILETYPES is not set
-# CONFIG_FEATURE_LS_FOLLOWLINKS is not set
-# CONFIG_FEATURE_LS_RECURSIVE is not set
-# CONFIG_FEATURE_LS_SORTFILES is not set
-# CONFIG_FEATURE_LS_TIMESTAMPS is not set
-# CONFIG_FEATURE_LS_USERNAME is not set
+CONFIG_LS=y
+CONFIG_FEATURE_LS_FILETYPES=y
+CONFIG_FEATURE_LS_FOLLOWLINKS=y
+CONFIG_FEATURE_LS_RECURSIVE=y
+CONFIG_FEATURE_LS_SORTFILES=y
+CONFIG_FEATURE_LS_TIMESTAMPS=y
+CONFIG_FEATURE_LS_USERNAME=y
# CONFIG_FEATURE_LS_COLOR is not set
# CONFIG_FEATURE_LS_COLOR_IS_DEFAULT is not set
CONFIG_MD5SUM=y
-# CONFIG_MKDIR is not set
+CONFIG_MKDIR=y
+# CONFIG_FEATURE_MKDIR_LONG_OPTIONS is not set
CONFIG_MKFIFO=y
-# CONFIG_MKNOD is not set
-# CONFIG_MV is not set
+CONFIG_MKNOD=y
+CONFIG_MV=y
+# CONFIG_FEATURE_MV_LONG_OPTIONS is not set
# CONFIG_NICE is not set
# CONFIG_NOHUP is not set
# CONFIG_OD is not set
# CONFIG_PRINTENV is not set
# CONFIG_PRINTF is not set
-# CONFIG_PWD is not set
+CONFIG_PWD=y
# CONFIG_REALPATH is not set
-# CONFIG_RM is not set
+CONFIG_RM=y
CONFIG_RMDIR=y
# CONFIG_SEQ is not set
# CONFIG_SHA1SUM is not set
-# CONFIG_SLEEP is not set
+CONFIG_SLEEP=y
# CONFIG_FEATURE_FANCY_SLEEP is not set
CONFIG_SORT=y
# CONFIG_FEATURE_SORT_BIG is not set
@@ -173,14 +189,14 @@ CONFIG_SORT=y
# CONFIG_FEATURE_STAT_FORMAT is not set
# CONFIG_STTY is not set
# CONFIG_SUM is not set
-# CONFIG_SYNC is not set
+CONFIG_SYNC=y
CONFIG_TAIL=y
CONFIG_FEATURE_FANCY_TAIL=y
CONFIG_TEE=y
# CONFIG_FEATURE_TEE_USE_BLOCK_IO is not set
-# CONFIG_TEST is not set
+CONFIG_TEST=y
# CONFIG_FEATURE_TEST_64 is not set
-# CONFIG_TOUCH is not set
+CONFIG_TOUCH=y
# CONFIG_TR is not set
# CONFIG_FEATURE_TR_CLASSES is not set
# CONFIG_FEATURE_TR_EQUIV is not set
@@ -196,6 +212,10 @@ CONFIG_UNIQ=y
# CONFIG_WHO is not set
# CONFIG_WHOAMI is not set
# CONFIG_YES is not set
+
+#
+# Common options for cp and mv
+#
# CONFIG_FEATURE_PRESERVE_HARDLINKS is not set
#
@@ -206,7 +226,7 @@ CONFIG_FEATURE_AUTOWIDTH=y
#
# Common options for df, du, ls
#
-# CONFIG_FEATURE_HUMAN_READABLE is not set
+CONFIG_FEATURE_HUMAN_READABLE=y
#
# Common options for md5sum, sha1sum
@@ -225,7 +245,9 @@ CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
# CONFIG_OPENVT is not set
# CONFIG_RESET is not set
# CONFIG_SETCONSOLE is not set
+# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
# CONFIG_SETKEYCODES is not set
+# CONFIG_SETLOGCONS is not set
#
# Debian Utilities
@@ -235,7 +257,10 @@ CONFIG_MKTEMP=y
# CONFIG_READLINK is not set
# CONFIG_FEATURE_READLINK_FOLLOW is not set
# CONFIG_RUN_PARTS is not set
+# CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS is not set
# CONFIG_START_STOP_DAEMON is not set
+# CONFIG_FEATURE_START_STOP_DAEMON_FANCY is not set
+# CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set
# CONFIG_WHICH is not set
#
@@ -243,29 +268,31 @@ CONFIG_MKTEMP=y
#
CONFIG_AWK=y
CONFIG_FEATURE_AWK_MATH=y
+# CONFIG_ED is not set
# CONFIG_PATCH is not set
CONFIG_SED=y
-# CONFIG_VI is not set
-# CONFIG_FEATURE_VI_COLON is not set
-# CONFIG_FEATURE_VI_YANKMARK is not set
-# CONFIG_FEATURE_VI_SEARCH is not set
+CONFIG_VI=y
+CONFIG_FEATURE_VI_COLON=y
+CONFIG_FEATURE_VI_YANKMARK=y
+CONFIG_FEATURE_VI_SEARCH=y
# CONFIG_FEATURE_VI_USE_SIGNALS is not set
# CONFIG_FEATURE_VI_DOT_CMD is not set
# CONFIG_FEATURE_VI_READONLY is not set
# CONFIG_FEATURE_VI_SETOPTS is not set
# CONFIG_FEATURE_VI_SET is not set
# CONFIG_FEATURE_VI_WIN_RESIZE is not set
-# CONFIG_FEATURE_VI_OPTIMIZE_CURSOR is not set
+CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
#
# Finding Utilities
#
-# CONFIG_FIND is not set
+CONFIG_FIND=y
+# CONFIG_FEATURE_FIND_PRINT0 is not set
# CONFIG_FEATURE_FIND_MTIME is not set
# CONFIG_FEATURE_FIND_MMIN is not set
# CONFIG_FEATURE_FIND_PERM is not set
-# CONFIG_FEATURE_FIND_TYPE is not set
-# CONFIG_FEATURE_FIND_XDEV is not set
+CONFIG_FEATURE_FIND_TYPE=y
+CONFIG_FEATURE_FIND_XDEV=y
# CONFIG_FEATURE_FIND_NEWER is not set
# CONFIG_FEATURE_FIND_INUM is not set
# CONFIG_FEATURE_FIND_EXEC is not set
@@ -283,12 +310,13 @@ CONFIG_FEATURE_GREP_FGREP_ALIAS=y
# Init Utilities
#
# CONFIG_INIT is not set
+# CONFIG_DEBUG_INIT is not set
# CONFIG_FEATURE_USE_INITTAB is not set
# CONFIG_FEATURE_INIT_SCTTY is not set
# CONFIG_FEATURE_EXTRA_QUIET is not set
# CONFIG_FEATURE_INIT_COREDUMPS is not set
# CONFIG_FEATURE_INITRD is not set
-# CONFIG_HALT is not set
+CONFIG_HALT=y
# CONFIG_MESG is not set
#
@@ -326,26 +354,30 @@ CONFIG_FEATURE_GREP_FGREP_ALIAS=y
#
# Linux Module Utilities
#
-# CONFIG_INSMOD is not set
+CONFIG_INSMOD=y
# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
-# CONFIG_RMMOD is not set
-# CONFIG_LSMOD is not set
+CONFIG_RMMOD=y
+CONFIG_LSMOD=y
# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set
# CONFIG_MODPROBE is not set
# CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS is not set
-# CONFIG_FEATURE_CHECK_TAINTED_MODULE is not set
-# CONFIG_FEATURE_2_4_MODULES is not set
+
+#
+# Options common to multiple modutils
+#
+CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
+CONFIG_FEATURE_2_4_MODULES=y
# CONFIG_FEATURE_2_6_MODULES is not set
-# CONFIG_FEATURE_QUERY_MODULE_INTERFACE is not set
+CONFIG_FEATURE_QUERY_MODULE_INTERFACE=y
#
# Linux System Utilities
#
-# CONFIG_DMESG is not set
+CONFIG_DMESG=y
# CONFIG_FBSET is not set
# CONFIG_FEATURE_FBSET_FANCY is not set
# CONFIG_FEATURE_FBSET_READMODE is not set
@@ -366,14 +398,16 @@ CONFIG_FREERAMDISK=y
# CONFIG_GETOPT is not set
CONFIG_HEXDUMP=y
# CONFIG_HWCLOCK is not set
-# CONFIG_FEATURE_HWCLOCK_LONGOPTIONS is not set
+# CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set
# CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set
# CONFIG_IPCRM is not set
# CONFIG_IPCS is not set
CONFIG_LOSETUP=y
# CONFIG_MDEV is not set
# CONFIG_FEATURE_MDEV_CONF is not set
-# CONFIG_MKSWAP is not set
+# CONFIG_FEATURE_MDEV_EXEC is not set
+CONFIG_MKSWAP=y
+# CONFIG_FEATURE_MKSWAP_V0 is not set
CONFIG_MORE=y
CONFIG_FEATURE_USE_TERMIOS=y
CONFIG_MOUNT=y
@@ -382,7 +416,7 @@ CONFIG_PIVOT_ROOT=y
# CONFIG_RDATE is not set
# CONFIG_READPROFILE is not set
# CONFIG_SETARCH is not set
-# CONFIG_SWAPONOFF is not set
+CONFIG_SWAPONOFF=y
# CONFIG_SWITCH_ROOT is not set
CONFIG_UMOUNT=y
CONFIG_FEATURE_UMOUNT_ALL=y
@@ -399,6 +433,7 @@ CONFIG_FEATURE_MOUNT_LOOP=y
# CONFIG_ADJTIMEX is not set
# CONFIG_BBCONFIG is not set
# CONFIG_CROND is not set
+# CONFIG_DEBUG_CROND_OPTION is not set
# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
# CONFIG_CRONTAB is not set
# CONFIG_DC is not set
@@ -406,6 +441,7 @@ CONFIG_FEATURE_MOUNT_LOOP=y
# CONFIG_DEVFSD_MODLOAD is not set
# CONFIG_DEVFSD_FG_NP is not set
# CONFIG_DEVFSD_VERBOSE is not set
+# CONFIG_FEATURE_DEVFS is not set
# CONFIG_EJECT is not set
# CONFIG_LAST is not set
# CONFIG_LESS is not set
@@ -430,6 +466,7 @@ CONFIG_FEATURE_MOUNT_LOOP=y
# CONFIG_RX is not set
CONFIG_STRINGS=y
# CONFIG_SETSID is not set
+# CONFIG_TASKSET is not set
# CONFIG_TIME is not set
# CONFIG_WATCHDOG is not set
@@ -443,24 +480,25 @@ CONFIG_STRINGS=y
# CONFIG_FAKEIDENTD is not set
# CONFIG_FTPGET is not set
# CONFIG_FTPPUT is not set
-# CONFIG_HOSTNAME is not set
+# CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set
+CONFIG_HOSTNAME=y
# CONFIG_HTTPD is not set
-# CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY is not set
-# CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set
-# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set
+# CONFIG_FEATURE_HTTPD_WITHOUT_INETD is not set
# CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP is not set
# CONFIG_FEATURE_HTTPD_SETUID is not set
+# CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set
+# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set
# CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES is not set
# CONFIG_FEATURE_HTTPD_CGI is not set
# CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set
# CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set
# CONFIG_FEATURE_HTTPD_ENCODE_URL_STR is not set
-# CONFIG_IFCONFIG is not set
-# CONFIG_FEATURE_IFCONFIG_STATUS is not set
+CONFIG_IFCONFIG=y
+CONFIG_FEATURE_IFCONFIG_STATUS=y
# CONFIG_FEATURE_IFCONFIG_SLIP is not set
# CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set
-# CONFIG_FEATURE_IFCONFIG_HW is not set
-# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
+CONFIG_FEATURE_IFCONFIG_HW=y
+CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y
# CONFIG_IFUPDOWN is not set
# CONFIG_FEATURE_IFUPDOWN_IP is not set
# CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN is not set
@@ -469,33 +507,35 @@ CONFIG_STRINGS=y
# CONFIG_FEATURE_IFUPDOWN_IPX is not set
# CONFIG_FEATURE_IFUPDOWN_MAPPING is not set
# CONFIG_INETD is not set
-# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_ECHO is not set
-# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DISCARD is not set
-# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_TIME is not set
-# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DAYTIME is not set
-# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_CHARGEN is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set
# CONFIG_FEATURE_INETD_RPC is not set
# CONFIG_IP is not set
# CONFIG_FEATURE_IP_ADDRESS is not set
# CONFIG_FEATURE_IP_LINK is not set
# CONFIG_FEATURE_IP_ROUTE is not set
# CONFIG_FEATURE_IP_TUNNEL is not set
-# CONFIG_IPCALC is not set
-# CONFIG_FEATURE_IPCALC_FANCY is not set
+# CONFIG_FEATURE_IP_SHORT_FORMS is not set
# CONFIG_IPADDR is not set
# CONFIG_IPLINK is not set
# CONFIG_IPROUTE is not set
# CONFIG_IPTUNNEL is not set
+# CONFIG_IPCALC is not set
+# CONFIG_FEATURE_IPCALC_FANCY is not set
+# CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
# CONFIG_NAMEIF is not set
CONFIG_NC=y
# CONFIG_NC_GAPING_SECURITY_HOLE is not set
# CONFIG_NETSTAT is not set
# CONFIG_NSLOOKUP is not set
-# CONFIG_PING is not set
-# CONFIG_FEATURE_FANCY_PING is not set
+CONFIG_PING=y
+CONFIG_FEATURE_FANCY_PING=y
# CONFIG_PING6 is not set
# CONFIG_FEATURE_FANCY_PING6 is not set
-# CONFIG_ROUTE is not set
+CONFIG_ROUTE=y
# CONFIG_TELNET is not set
# CONFIG_FEATURE_TELNET_TTYPE is not set
# CONFIG_FEATURE_TELNET_AUTOLOGIN is not set
@@ -505,25 +545,26 @@ CONFIG_NC=y
# CONFIG_FEATURE_TFTP_GET is not set
# CONFIG_FEATURE_TFTP_PUT is not set
# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set
-# CONFIG_FEATURE_TFTP_DEBUG is not set
+# CONFIG_DEBUG_TFTP is not set
# CONFIG_TRACEROUTE is not set
# CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set
# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set
# CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set
-# CONFIG_VCONFIG is not set
-CONFIG_WGET=y
-# CONFIG_FEATURE_WGET_STATUSBAR is not set
-# CONFIG_FEATURE_WGET_AUTHENTICATION is not set
-# CONFIG_FEATURE_WGET_IP6_LITERAL is not set
#
# udhcp Server/Client
#
-# CONFIG_UDHCPD is not set
-# CONFIG_UDHCPC is not set
-# CONFIG_DUMPLEASES is not set
+# CONFIG_APP_UDHCPD is not set
+# CONFIG_APP_UDHCPC is not set
+# CONFIG_APP_DUMPLEASES is not set
# CONFIG_FEATURE_UDHCP_SYSLOG is not set
# CONFIG_FEATURE_UDHCP_DEBUG is not set
+# CONFIG_VCONFIG is not set
+CONFIG_WGET=y
+# CONFIG_FEATURE_WGET_STATUSBAR is not set
+# CONFIG_FEATURE_WGET_AUTHENTICATION is not set
+# CONFIG_FEATURE_WGET_IP6_LITERAL is not set
+CONFIG_FEATURE_WGET_LONG_OPTIONS=y
# CONFIG_ZCIP is not set
#
@@ -531,12 +572,12 @@ CONFIG_WGET=y
#
CONFIG_FREE=y
# CONFIG_FUSER is not set
-# CONFIG_KILL is not set
-# CONFIG_KILLALL is not set
-# CONFIG_PIDOF is not set
+CONFIG_KILL=y
+CONFIG_KILLALL=y
+CONFIG_PIDOF=y
# CONFIG_FEATURE_PIDOF_SINGLE is not set
# CONFIG_FEATURE_PIDOF_OMIT is not set
-# CONFIG_PS is not set
+CONFIG_PS=y
# CONFIG_FEATURE_PS_WIDE is not set
# CONFIG_RENICE is not set
# CONFIG_BB_SYSCTL is not set
@@ -547,47 +588,56 @@ CONFIG_FREE=y
#
# Shells
#
-# CONFIG_FEATURE_SH_IS_ASH is not set
+CONFIG_FEATURE_SH_IS_ASH=y
# CONFIG_FEATURE_SH_IS_HUSH is not set
# CONFIG_FEATURE_SH_IS_LASH is not set
# CONFIG_FEATURE_SH_IS_MSH is not set
-CONFIG_FEATURE_SH_IS_NONE=y
-# CONFIG_ASH is not set
-# CONFIG_ASH_JOB_CONTROL is not set
+# CONFIG_FEATURE_SH_IS_NONE is not set
+CONFIG_ASH=y
+
+#
+# Ash Shell Options
+#
+CONFIG_ASH_JOB_CONTROL=y
# CONFIG_ASH_READ_NCHARS is not set
# CONFIG_ASH_READ_TIMEOUT is not set
# CONFIG_ASH_ALIAS is not set
-# CONFIG_ASH_MATH_SUPPORT is not set
+CONFIG_ASH_MATH_SUPPORT=y
# CONFIG_ASH_MATH_SUPPORT_64 is not set
# CONFIG_ASH_GETOPTS is not set
-# CONFIG_ASH_CMDCMD is not set
# CONFIG_ASH_BUILTIN_ECHO is not set
+# CONFIG_ASH_BUILTIN_TEST is not set
+# CONFIG_ASH_CMDCMD is not set
# CONFIG_ASH_MAIL is not set
-# CONFIG_ASH_OPTIMIZE_FOR_SIZE is not set
+CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
# CONFIG_ASH_RANDOM_SUPPORT is not set
# CONFIG_ASH_EXPAND_PRMT is not set
# CONFIG_HUSH is not set
# CONFIG_LASH is not set
# CONFIG_MSH is not set
+
+#
+# Bourne Shell Options
+#
# CONFIG_FEATURE_SH_EXTRA_QUIET is not set
# CONFIG_FEATURE_SH_STANDALONE_SHELL is not set
-# CONFIG_FEATURE_COMMAND_EDITING is not set
+CONFIG_FEATURE_COMMAND_EDITING=y
# CONFIG_FEATURE_COMMAND_EDITING_VI is not set
-CONFIG_FEATURE_COMMAND_HISTORY=0
+CONFIG_FEATURE_COMMAND_HISTORY=15
# CONFIG_FEATURE_COMMAND_SAVEHISTORY is not set
-# CONFIG_FEATURE_COMMAND_TAB_COMPLETION is not set
+CONFIG_FEATURE_COMMAND_TAB_COMPLETION=y
# CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION is not set
# CONFIG_FEATURE_SH_FANCY_PROMPT is not set
#
# System Logging Utilities
#
-# CONFIG_SYSLOGD is not set
-# CONFIG_FEATURE_ROTATE_LOGFILE is not set
+CONFIG_SYSLOGD=y
+CONFIG_FEATURE_ROTATE_LOGFILE=y
# CONFIG_FEATURE_REMOTE_LOG is not set
# CONFIG_FEATURE_IPC_SYSLOG is not set
CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0
# CONFIG_LOGREAD is not set
# CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set
-# CONFIG_KLOGD is not set
+CONFIG_KLOGD=y
# CONFIG_LOGGER is not set
diff --git a/packages/busybox/slingbox-1.2.2/halt.patch b/packages/busybox/slingbox-1.2.2/halt.patch
new file mode 100644
index 0000000000..c52e35a8d5
--- /dev/null
+++ b/packages/busybox/slingbox-1.2.2/halt.patch
@@ -0,0 +1,40 @@
+diff -Naur busybox-1.2.2/init.orig/halt.c busybox-1.2.2/init/halt.c
+--- busybox-1.2.2/init.orig/halt.c 2006-11-10 13:39:29.000000000 -0600
++++ busybox-1.2.2/init/halt.c 2006-11-10 13:39:09.000000000 -0600
+@@ -12,6 +12,8 @@
+ #include <sys/reboot.h>
+ #include <unistd.h>
+
++#include "init_shared.h" /* Linksys mods */
++
+ int halt_main(int argc, char *argv[])
+ {
+ static const int magic[] = {
+@@ -40,6 +42,12 @@
+ if (flags&1) sleep(atoi(delay));
+ if (!(flags&2)) sync();
+
++/* Linksys Halt code - adapted from the Linksys source for Busybox. */
++ rc = bb_shutdown_system(magic[which]);
++ if (rc) bb_error_msg("No.");
++ return rc; /* Shrug */
++/* End of Linksys code */
++
+ /* Perform action. */
+ if (ENABLE_INIT && !(flags & 4)) {
+ if (ENABLE_FEATURE_INITRD) {
+diff -Naur busybox-1.2.2/init.orig/init_shared.c busybox-1.2.2/init/init_shared.c
+--- busybox-1.2.2/init.orig/init_shared.c 2006-11-10 13:39:29.000000000 -0600
++++ busybox-1.2.2/init/init_shared.c 2006-11-10 13:38:37.000000000 -0600
+@@ -62,6 +62,11 @@
+
+ sync();
+
++/* Linksys Halt code - if poweroff or halt, invoke an external program
++ to do actually turn off the power. */
++ if (magic != 0x01234567) system("/usr/bin/Set_Led power_off");
++/* End of Linksys Halt code */
++
+ reboot(magic);
+ return 0; /* Shrug */
+ }
diff --git a/packages/busybox/slingbox-1.2.2/wget-long-options.patch b/packages/busybox/slingbox-1.2.2/wget-long-options.patch
new file mode 100644
index 0000000000..3c5920a3cb
--- /dev/null
+++ b/packages/busybox/slingbox-1.2.2/wget-long-options.patch
@@ -0,0 +1,20 @@
+--- busybox-1.2.1.orig/networking/wget.c
++++ busybox-1.2.1/networking/wget.c
+@@ -136,7 +136,7 @@
+ #define WGET_OPT_PREFIX 32
+ #define WGET_OPT_PROXY 64
+
+-#if ENABLE_WGET_LONG_OPTIONS
++#if CONFIG_FEATURE_WGET_LONG_OPTIONS
+ static const struct option wget_long_options[] = {
+ { "continue", 0, NULL, 'c' },
+ { "quiet", 0, NULL, 'q' },
+@@ -180,7 +180,7 @@
+ * Crack command line.
+ */
+ bb_opt_complementally = "-1:\203::";
+-#if ENABLE_WGET_LONG_OPTIONS
++#if CONFIG_FEATURE_WGET_LONG_OPTIONS
+ bb_applet_long_options = wget_long_options;
+ #endif
+ opt = bb_getopt_ulflags(argc, argv, "cq\213O:\203:P:Y:",
diff --git a/packages/busybox/slingbox_1.2.2.bb b/packages/busybox/slingbox_1.2.2.bb
index a8fd77d4ef..2468680ba1 100644
--- a/packages/busybox/slingbox_1.2.2.bb
+++ b/packages/busybox/slingbox_1.2.2.bb
@@ -4,12 +4,14 @@ HOMEPAGE = "http://www.busybox.net"
LICENSE = "GPL"
SECTION = "base"
PRIORITY = "required"
-PR = "r1"
+PR = "r2"
SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.gz \
file://defconfig \
+ file://wget-long-options.patch;patch=1 \
file://lazy_umount.patch;patch=1 \
file://slingbox_name.patch;patch=1 \
+ file://halt.patch;patch=1" \
file://slingbox.patch;patch=1"
S = "${WORKDIR}/busybox-${PV}"
diff --git a/packages/cairo/cairo-1.2.4/.mtn2git_empty b/packages/cairo/cairo-1.2.4/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/cairo/cairo-1.2.4/.mtn2git_empty
diff --git a/packages/cairo/cairo-1.2.4/0001-Add-autoconf-macro-AX_C_FLOAT_WORDS_BIGENDIAN.diff b/packages/cairo/cairo-1.2.4/0001-Add-autoconf-macro-AX_C_FLOAT_WORDS_BIGENDIAN.diff
new file mode 100644
index 0000000000..90718d4976
--- /dev/null
+++ b/packages/cairo/cairo-1.2.4/0001-Add-autoconf-macro-AX_C_FLOAT_WORDS_BIGENDIAN.diff
@@ -0,0 +1,103 @@
+From nobody Mon Sep 17 00:00:00 2001
+From: Dan Amelang <dan@amelang.net>
+Date: Sun Oct 29 21:30:08 2006 -0800
+Subject: [PATCH] Add autoconf macro AX_C_FLOAT_WORDS_BIGENDIAN
+
+The symbol that this macro defines (FLOAT_WORDS_BIGENDIAN) can be used
+to make double arithmetic tricks portable.
+
+---
+
+ acinclude.m4 | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ configure.in | 1 +
+ 2 files changed, 66 insertions(+), 0 deletions(-)
+
+3231d91b59a6c2e1c40bbaa8b143694b6c693662
+diff --git a/acinclude.m4 b/acinclude.m4
+index af73800..a0eb13a 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -51,3 +51,68 @@ ifelse([$1],[],,
+ AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
+ AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL")
+ ])
++
++# AX_C_FLOAT_WORDS_BIGENDIAN ([ACTION-IF-TRUE], [ACTION-IF-FALSE],
++# [ACTION-IF-UNKNOWN])
++#
++# Checks the ordering of words within a multi-word float. This check
++# is necessary because on some systems (e.g. certain ARM systems), the
++# float word ordering can be different from the byte ordering. In a
++# multi-word float context, "big-endian" implies that the word containing
++# the sign bit is found in the memory location with the lowest address.
++# This implemenation was inspired by the AC_C_BIGENDIAN macro in autoconf.
++# -------------------------------------------------------------------------
++AC_DEFUN([AX_C_FLOAT_WORDS_BIGENDIAN],
++ [AC_CACHE_CHECK(whether float word ordering is bigendian,
++ ax_cv_c_float_words_bigendian, [
++
++# The endianess is detected by first compiling C code that contains a special
++# double float value, then grepping the resulting object file for certain
++# strings of ascii values. The double is specially crafted to have a
++# binary representation that corresponds with a simple string. In this
++# implementation, the string "noonsees" was selected because the individual
++# word values ("noon" and "sees") are palindromes, thus making this test
++# byte-order agnostic. If grep finds the string "noonsees" in the object
++# file, the target platform stores float words in big-endian order. If grep
++# finds "seesnoon", float words are in little-endian order. If neither value
++# is found, the user is instructed to specify the ordering.
++
++ax_cv_c_float_words_bigendian=unknown
++AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
++
++double d = 90904234967036810337470478905505011476211692735615632014797120844053488865816695273723469097858056257517020191247487429516932130503560650002327564517570778480236724525140520121371739201496540132640109977779420565776568942592.0;
++
++]])], [
++
++if grep noonsees conftest.$ac_objext >/dev/null ; then
++ ax_cv_c_float_words_bigendian=yes
++fi
++if grep seesnoon conftest.$ac_objext >/dev/null ; then
++ if test "$ax_cv_c_float_words_bigendian" = unknown; then
++ ax_cv_c_float_words_bigendian=no
++ else
++ ax_cv_c_float_words_bigendian=unknown
++ fi
++fi
++
++])])
++
++case $ax_cv_c_float_words_bigendian in
++ yes)
++ m4_default([$1],
++ [AC_DEFINE([FLOAT_WORDS_BIGENDIAN], 1,
++ [Define to 1 if your system stores words within floats
++ with the most significant word first])]) ;;
++ no)
++ $2 ;;
++ *)
++ m4_default([$3],
++ [AC_MSG_ERROR([
++
++Unknown float word ordering. You need to manually preset
++ax_cv_c_float_words_bigendian=no (or yes) according to your system.
++
++ ])]) ;;
++esac
++
++])# AX_C_FLOAT_WORDS_BIGENDIAN
+diff --git a/configure.in b/configure.in
+index 2d2bf9f..797c7ce 100644
+--- a/configure.in
++++ b/configure.in
+@@ -55,6 +55,7 @@ AC_PROG_CPP
+ AC_PROG_LIBTOOL dnl required version (1.4) DON'T REMOVE!
+ AC_STDC_HEADERS
+ AC_C_BIGENDIAN
++AX_C_FLOAT_WORDS_BIGENDIAN
+
+ dnl ===========================================================================
+ dnl === Local macros
+--
+1.2.6
+
diff --git a/packages/cairo/cairo-1.2.4/0002-Change-_cairo_fixed_from_double-to-use-the-magic-number-technique.diff b/packages/cairo/cairo-1.2.4/0002-Change-_cairo_fixed_from_double-to-use-the-magic-number-technique.diff
new file mode 100644
index 0000000000..56d8b7e99a
--- /dev/null
+++ b/packages/cairo/cairo-1.2.4/0002-Change-_cairo_fixed_from_double-to-use-the-magic-number-technique.diff
@@ -0,0 +1,79 @@
+From nobody Mon Sep 17 00:00:00 2001
+From: Dan Amelang <dan@amelang.net>
+Date: Sun Oct 29 21:31:23 2006 -0800
+Subject: [PATCH] Change _cairo_fixed_from_double to use the "magic number" technique
+
+See long thread here:
+http://lists.freedesktop.org/archives/cairo/2006-October/008285.html
+
+---
+
+ src/cairo-fixed.c | 48 +++++++++++++++++++++++++++++++++++++++++++++++-
+ 1 files changed, 47 insertions(+), 1 deletions(-)
+
+d88acddcabe770e17664b34a2d5f74d3926e1642
+diff --git a/src/cairo-fixed.c b/src/cairo-fixed.c
+index 604c9e7..fe6c2dc 100644
+--- a/src/cairo-fixed.c
++++ b/src/cairo-fixed.c
+@@ -42,10 +42,56 @@ _cairo_fixed_from_int (int i)
+ return i << 16;
+ }
+
++/* This is the "magic number" approach to converting a double into fixed
++ * point as described here:
++ *
++ * http://www.stereopsis.com/sree/fpu2006.html (an overview)
++ * http://www.d6.com/users/checker/pdfs/gdmfp.pdf (in detail)
++ *
++ * The basic idea is to add a large enough number to the double that the
++ * literal floating point is moved up to the extent that it forces the
++ * double's value to be shifted down to the bottom of the mantissa (to make
++ * room for the large number being added in). Since the mantissa is, at a
++ * given moment in time, a fixed point integer itself, one can convert a
++ * float to various fixed point representations by moving around the point
++ * of a floating point number through arithmetic operations. This behavior
++ * is reliable on most modern platforms as it is mandated by the IEEE-754
++ * standard for floating point arithmetic.
++ *
++ * For our purposes, a "magic number" must be carefully selected that is
++ * both large enough to produce the desired point-shifting effect, and also
++ * has no lower bits in its representation that would interfere with our
++ * value at the bottom of the mantissa. The magic number is calculated as
++ * follows:
++ *
++ * (2 ^ (MANTISSA_SIZE - FRACTIONAL_SIZE)) * 1.5
++ *
++ * where in our case:
++ * - MANTISSA_SIZE for 64-bit doubles is 52
++ * - FRACTIONAL_SIZE for 16.16 fixed point is 16
++ *
++ * Although this approach provides a very large speedup of this function
++ * on a wide-array of systems, it does come with two caveats:
++ *
++ * 1) It uses banker's rounding as opposed to arithmetic rounding.
++ * 2) It doesn't function properly if the FPU is in single-precision
++ * mode.
++ */
++#define CAIRO_MAGIC_NUMBER_FIXED_16_16 (103079215104.0)
+ cairo_fixed_t
+ _cairo_fixed_from_double (double d)
+ {
+- return (cairo_fixed_t) floor (d * 65536 + 0.5);
++ union {
++ double d;
++ int32_t i[2];
++ } u;
++
++ u.d = d + CAIRO_MAGIC_NUMBER_FIXED_16_16;
++#ifdef FLOAT_WORDS_BIGENDIAN
++ return u.i[1];
++#else
++ return u.i[0];
++#endif
+ }
+
+ cairo_fixed_t
+--
+1.2.6
+
diff --git a/packages/cairo/cairo-1.2.4/0003-Add-new-perf-test-pattern_create_radial.diff b/packages/cairo/cairo-1.2.4/0003-Add-new-perf-test-pattern_create_radial.diff
new file mode 100644
index 0000000000..c2b47deb7f
--- /dev/null
+++ b/packages/cairo/cairo-1.2.4/0003-Add-new-perf-test-pattern_create_radial.diff
@@ -0,0 +1,164 @@
+From nobody Mon Sep 17 00:00:00 2001
+From: Dan Amelang <dan@amelang.net>
+Date: Tue Oct 31 23:47:35 2006 -0800
+Subject: [PATCH] Add new perf test "pattern_create_radial"
+
+This test is really just for hammering the double to fixed-point conversion
+(in _cairo_fixed_from_double) that happens as doubles from API calls gets
+translated into internal cairo fixed-point numbers.
+
+Because it's not generally useful, I don't recommend that it become part of
+the main cairo performance test. But hey, it might come in handy for someone
+else.
+
+---
+
+ perf/Makefile.am | 1
+ perf/cairo-perf.c | 1
+ perf/cairo-perf.h | 1
+ perf/pattern_create_radial.c | 98 ++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 101 insertions(+), 0 deletions(-)
+ create mode 100644 perf/pattern_create_radial.c
+
+977383b86c68d0523c899efcba3cf8d36e94d2a7
+diff --git a/perf/Makefile.am b/perf/Makefile.am
+index 419a998..e1cfdc7 100644
+--- a/perf/Makefile.am
++++ b/perf/Makefile.am
+@@ -21,6 +21,7 @@ cairo_perf_SOURCES = \
+ stroke.c \
+ subimage_copy.c \
+ tessellate.c \
++ pattern_create_radial.c \
+ text.c
+
+ if CAIRO_HAS_WIN32_SURFACE
+diff --git a/perf/cairo-perf.c b/perf/cairo-perf.c
+index d9734c4..0707433 100644
+--- a/perf/cairo-perf.c
++++ b/perf/cairo-perf.c
+@@ -256,5 +256,6 @@ cairo_perf_case_t perf_cases[] = {
+ { text, 64, 256},
+ { tessellate, 100, 100},
+ { subimage_copy, 16, 512},
++ { pattern_create_radial, 16, 16},
+ { NULL }
+ };
+diff --git a/perf/cairo-perf.h b/perf/cairo-perf.h
+index 560ba64..faacff9 100644
+--- a/perf/cairo-perf.h
++++ b/perf/cairo-perf.h
+@@ -88,5 +88,6 @@ CAIRO_PERF_DECL (stroke);
+ CAIRO_PERF_DECL (subimage_copy);
+ CAIRO_PERF_DECL (tessellate);
+ CAIRO_PERF_DECL (text);
++CAIRO_PERF_DECL (pattern_create_radial);
+
+ #endif
+diff --git a/perf/pattern_create_radial.c b/perf/pattern_create_radial.c
+new file mode 100644
+index 0000000..d793b7d
+--- /dev/null
++++ b/perf/pattern_create_radial.c
+@@ -0,0 +1,98 @@
++/*
++ * Copyright © 2006 Dan Amelang
++ *
++ * 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, and that the name of
++ * the authors not be used in advertising or publicity pertaining to
++ * distribution of the software without specific, written prior
++ * permission. The authors make no representations about the
++ * suitability of this software for any purpose. It is provided "as
++ * is" without express or implied warranty.
++ *
++ * THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
++ * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
++ * FITNESS, IN NO EVENT SHALL THE AUTHORS 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.
++ *
++ * Authors: Dan Amelang <dan@amelang.net>
++ *
++ * This test was originally created to test _cairo_fixed_from_double.
++ * cairo_pattern_create_radial was selected as the entry point into
++ * cairo as it makes several calls to _cairo_fixed_from_double and
++ * presents a somewhat realistic use-case (although the RADIALS_COUNT
++ * isn't very realistic).
++ */
++#include <time.h>
++#include "cairo-perf.h"
++
++#define RADIALS_COUNT (100000)
++
++static struct
++{
++ double cx0;
++ double cy0;
++ double radius0;
++ double cx1;
++ double cy1;
++ double radius1;
++} radials[RADIALS_COUNT];
++
++static double
++generate_double_in_range (double min, double max)
++{
++ double d;
++
++ d = rand () / (double) RAND_MAX;
++ d *= max - min;
++ d += min;
++
++ return d;
++}
++
++static cairo_perf_ticks_t
++do_pattern_create_radial (cairo_t *cr, int width, int height)
++{
++ int i;
++ cairo_pattern_t *pattern;
++
++ cairo_perf_timer_start ();
++
++ for (i = 0; i < RADIALS_COUNT; i++)
++ {
++ pattern = cairo_pattern_create_radial (radials[i].cx0, radials[i].cy0,
++ radials[i].radius0,
++ radials[i].cx1, radials[i].cy1,
++ radials[i].radius1);
++ cairo_pattern_destroy (pattern);
++ }
++
++ cairo_perf_timer_stop ();
++
++ return cairo_perf_timer_elapsed ();
++}
++
++void
++pattern_create_radial (cairo_perf_t *perf, cairo_t *cr, int width, int height)
++{
++ int i;
++
++ srand (time (0));
++ for (i = 0; i < RADIALS_COUNT; i++)
++ {
++ radials[i].cx0 = generate_double_in_range (-50000.0, 50000.0);
++ radials[i].cy0 = generate_double_in_range (-50000.0, 50000.0);
++ radials[i].radius0 = generate_double_in_range (0.0, 1000.0);
++ radials[i].cx1 = generate_double_in_range (-50000.0, 50000.0);
++ radials[i].cy1 = generate_double_in_range (-50000.0, 50000.0);
++ radials[i].radius1 = generate_double_in_range (0.0, 1000.0);
++ }
++
++ cairo_perf_run (perf, "pattern_create_radial",
++ do_pattern_create_radial);
++}
+--
+1.2.6
+
diff --git a/packages/cairo/cairo_1.2.4.bb b/packages/cairo/cairo_1.2.4.bb
index 0260c267dd..f23e376d1c 100644
--- a/packages/cairo/cairo_1.2.4.bb
+++ b/packages/cairo/cairo_1.2.4.bb
@@ -3,9 +3,12 @@ PRIORITY = "optional"
DEPENDS = "virtual/libx11 libpng fontconfig libxrender"
DESCRIPTION = "Cairo graphics library"
LICENSE = "MPL LGPL"
-PR = "r1"
+PR = "r2"
-SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.gz"
+SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.gz \
+ file://0001-Add-autoconf-macro-AX_C_FLOAT_WORDS_BIGENDIAN.diff;patch=1 \
+ file://0002-Change-_cairo_fixed_from_double-to-use-the-magic-number-technique.diff;patch=1 \
+ "
inherit autotools pkgconfig
diff --git a/packages/clamav/clamav_0.88.4.bb b/packages/clamav/clamav_0.88.6.bb
index 2d980440fa..fec4ae59d8 100644
--- a/packages/clamav/clamav_0.88.4.bb
+++ b/packages/clamav/clamav_0.88.6.bb
@@ -1,3 +1,3 @@
require clamav.inc
-PR = "r6"
+PR = "r0"
diff --git a/packages/dbus/dbus-0.94/dbus-1.init b/packages/dbus/dbus-0.94/dbus-1.init
new file mode 100644
index 0000000000..7ef411606b
--- /dev/null
+++ b/packages/dbus/dbus-0.94/dbus-1.init
@@ -0,0 +1,86 @@
+#! /bin/sh
+# -*- coding: utf-8 -*-
+# Debian init.d script for D-BUS
+# Copyright © 2003 Colin Walters <walters@debian.org>
+
+set -e
+
+DAEMON=/usr/bin/dbus-daemon
+NAME=dbus
+DAEMONUSER=messagebus
+PIDDIR=/var/run/dbus
+PIDFILE=$PIDDIR/pid
+DESC="system message bus"
+EVENTDIR=/etc/dbus-1/event.d
+
+test -x $DAEMON || exit 0
+
+# Source defaults file; edit that file to configure this script.
+ENABLED=1
+PARAMS=""
+if [ -e /etc/default/dbus ]; then
+ . /etc/default/dbus
+fi
+
+test "$ENABLED" != "0" || exit 0
+
+start_it_up()
+{
+ if [ ! -d $PIDDIR ]; then
+ mkdir -p $PIDDIR
+ chown $DAEMONUSER $PIDDIR
+ chgrp $DAEMONUSER $PIDDIR
+ fi
+ if [ -e $PIDFILE ]; then
+ PIDDIR=/proc/$(cat $PIDFILE)
+ if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then
+ echo "$DESC already started; not starting."
+ else
+ echo "Removing stale PID file $PIDFILE."
+ rm -f $PIDFILE
+ fi
+ fi
+ echo -n "Starting $DESC: "
+ start-stop-daemon --start --quiet --pidfile $PIDFILE \
+ --user $DAEMONUSER --exec $DAEMON -- --system $PARAMS
+ echo "$NAME."
+ if [ -d $EVENTDIR ]; then
+ run-parts --arg=start $EVENTDIR
+ fi
+}
+
+shut_it_down()
+{
+ if [ -d $EVENTDIR ]; then
+ run-parts --reverse --arg=stop $EVENTDIR
+ fi
+ echo -n "Stopping $DESC: "
+ start-stop-daemon --stop --quiet --pidfile $PIDFILE \
+ --user $DAEMONUSER
+ # We no longer include these arguments so that start-stop-daemon
+ # can do its job even given that we may have been upgraded.
+ # We rely on the pidfile being sanely managed
+ # --exec $DAEMON -- --system $PARAMS
+ echo "$NAME."
+ rm -f $PIDFILE
+}
+
+case "$1" in
+ start)
+ start_it_up
+ ;;
+ stop)
+ shut_it_down
+ ;;
+ restart|force-reload)
+ shut_it_down
+ sleep 1
+ start_it_up
+ ;;
+ *)
+ echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/packages/dbus/dbus-0.95/.mtn2git_empty b/packages/dbus/dbus-0.95/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/dbus/dbus-0.95/.mtn2git_empty
diff --git a/packages/dbus/dbus-0.95/cross.patch b/packages/dbus/dbus-0.95/cross.patch
new file mode 100644
index 0000000000..268a3ae3de
--- /dev/null
+++ b/packages/dbus/dbus-0.95/cross.patch
@@ -0,0 +1,10 @@
+--- /tmp/configure.in 2006-11-09 21:47:10.000000000 +0100
++++ dbus-0.95/configure.in 2006-11-09 21:48:13.108554000 +0100
+@@ -719,6 +719,7 @@
+ exit (0);
+ ]])],
+ [ac_cv_have_abstract_sockets=yes],
++ [ac_cv_have_abstract_sockets=no],
+ [ac_cv_have_abstract_sockets=no]
+ )])
+ AC_LANG_POP(C)
diff --git a/packages/dbus/dbus-0.95/dbus-1.init b/packages/dbus/dbus-0.95/dbus-1.init
new file mode 100644
index 0000000000..4829c0d4a8
--- /dev/null
+++ b/packages/dbus/dbus-0.95/dbus-1.init
@@ -0,0 +1,88 @@
+#! /bin/sh
+# -*- coding: utf-8 -*-
+# Debian init.d script for D-BUS
+# Copyright © 2003 Colin Walters <walters@debian.org>
+
+set -e
+
+DAEMON=/usr/bin/dbus-daemon
+NAME=dbus
+DAEMONUSER=messagebus
+PIDDIR=/var/run/dbus
+PIDFILE=$PIDDIR/pid
+DESC="system message bus"
+EVENTDIR=/etc/dbus-1/event.d
+
+test -x $DAEMON || exit 0
+
+# Source defaults file; edit that file to configure this script.
+ENABLED=1
+PARAMS=""
+if [ -e /etc/default/dbus ]; then
+ . /etc/default/dbus
+fi
+
+test "$ENABLED" != "0" || exit 0
+
+start_it_up()
+{
+ if [ ! -d $PIDDIR ]; then
+ mkdir -p $PIDDIR
+ chown $DAEMONUSER $PIDDIR
+ chgrp $DAEMONUSER $PIDDIR
+ fi
+ if [ -e $PIDFILE ]; then
+ PIDDIR=/proc/$(cat $PIDFILE)
+ if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then
+ echo "$DESC already started; not starting."
+ else
+ echo "Removing stale PID file $PIDFILE."
+ rm -f $PIDFILE
+ fi
+ fi
+
+ dbus-uuidgen --ensure
+ echo -n "Starting $DESC: "
+ start-stop-daemon --start --quiet --pidfile $PIDFILE \
+ --user $DAEMONUSER --exec $DAEMON -- --system $PARAMS
+ echo "$NAME."
+ if [ -d $EVENTDIR ]; then
+ run-parts --arg=start $EVENTDIR
+ fi
+}
+
+shut_it_down()
+{
+ if [ -d $EVENTDIR ]; then
+ run-parts --reverse --arg=stop $EVENTDIR
+ fi
+ echo -n "Stopping $DESC: "
+ start-stop-daemon --stop --quiet --pidfile $PIDFILE \
+ --user $DAEMONUSER
+ # We no longer include these arguments so that start-stop-daemon
+ # can do its job even given that we may have been upgraded.
+ # We rely on the pidfile being sanely managed
+ # --exec $DAEMON -- --system $PARAMS
+ echo "$NAME."
+ rm -f $PIDFILE
+}
+
+case "$1" in
+ start)
+ start_it_up
+ ;;
+ stop)
+ shut_it_down
+ ;;
+ restart|force-reload)
+ shut_it_down
+ sleep 1
+ start_it_up
+ ;;
+ *)
+ echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/packages/dbus/dbus-0.95/fix-install-daemon.patch b/packages/dbus/dbus-0.95/fix-install-daemon.patch
new file mode 100644
index 0000000000..c31786357d
--- /dev/null
+++ b/packages/dbus/dbus-0.95/fix-install-daemon.patch
@@ -0,0 +1,13 @@
+Index: dbus-0.94/bus/Makefile.am
+===================================================================
+--- dbus-0.94.orig/bus/Makefile.am 2006-10-01 17:36:18.000000000 +0200
++++ dbus-0.94/bus/Makefile.am 2006-10-14 21:40:05.000000000 +0200
+@@ -110,7 +110,7 @@
+ $(mkinstalldirs) $(DESTDIR)$(DBUS_DAEMONDIR); \
+ chmod 755 $(DESTDIR)$(DBUS_DAEMONDIR); \
+ fi
+- $(INSTALL_PROGRAM) dbus-daemon $(DESTDIR)$(DBUS_DAEMONDIR)
++ $(INSTALL_PROGRAM) .libs/dbus-daemon $(DESTDIR)$(DBUS_DAEMONDIR)
+ $(mkinstalldirs) $(DESTDIR)$(localstatedir)/run/dbus
+ $(mkinstalldirs) $(DESTDIR)$(configdir)/system.d
+ $(mkinstalldirs) $(DESTDIR)$(datadir)/dbus-1/services
diff --git a/packages/dbus/dbus-1.0.0/.mtn2git_empty b/packages/dbus/dbus-1.0.0/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/dbus/dbus-1.0.0/.mtn2git_empty
diff --git a/packages/dbus/dbus-1.0.0/cross.patch b/packages/dbus/dbus-1.0.0/cross.patch
new file mode 100644
index 0000000000..268a3ae3de
--- /dev/null
+++ b/packages/dbus/dbus-1.0.0/cross.patch
@@ -0,0 +1,10 @@
+--- /tmp/configure.in 2006-11-09 21:47:10.000000000 +0100
++++ dbus-0.95/configure.in 2006-11-09 21:48:13.108554000 +0100
+@@ -719,6 +719,7 @@
+ exit (0);
+ ]])],
+ [ac_cv_have_abstract_sockets=yes],
++ [ac_cv_have_abstract_sockets=no],
+ [ac_cv_have_abstract_sockets=no]
+ )])
+ AC_LANG_POP(C)
diff --git a/packages/dbus/dbus-1.0.0/dbus-1.init b/packages/dbus/dbus-1.0.0/dbus-1.init
new file mode 100644
index 0000000000..4829c0d4a8
--- /dev/null
+++ b/packages/dbus/dbus-1.0.0/dbus-1.init
@@ -0,0 +1,88 @@
+#! /bin/sh
+# -*- coding: utf-8 -*-
+# Debian init.d script for D-BUS
+# Copyright © 2003 Colin Walters <walters@debian.org>
+
+set -e
+
+DAEMON=/usr/bin/dbus-daemon
+NAME=dbus
+DAEMONUSER=messagebus
+PIDDIR=/var/run/dbus
+PIDFILE=$PIDDIR/pid
+DESC="system message bus"
+EVENTDIR=/etc/dbus-1/event.d
+
+test -x $DAEMON || exit 0
+
+# Source defaults file; edit that file to configure this script.
+ENABLED=1
+PARAMS=""
+if [ -e /etc/default/dbus ]; then
+ . /etc/default/dbus
+fi
+
+test "$ENABLED" != "0" || exit 0
+
+start_it_up()
+{
+ if [ ! -d $PIDDIR ]; then
+ mkdir -p $PIDDIR
+ chown $DAEMONUSER $PIDDIR
+ chgrp $DAEMONUSER $PIDDIR
+ fi
+ if [ -e $PIDFILE ]; then
+ PIDDIR=/proc/$(cat $PIDFILE)
+ if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then
+ echo "$DESC already started; not starting."
+ else
+ echo "Removing stale PID file $PIDFILE."
+ rm -f $PIDFILE
+ fi
+ fi
+
+ dbus-uuidgen --ensure
+ echo -n "Starting $DESC: "
+ start-stop-daemon --start --quiet --pidfile $PIDFILE \
+ --user $DAEMONUSER --exec $DAEMON -- --system $PARAMS
+ echo "$NAME."
+ if [ -d $EVENTDIR ]; then
+ run-parts --arg=start $EVENTDIR
+ fi
+}
+
+shut_it_down()
+{
+ if [ -d $EVENTDIR ]; then
+ run-parts --reverse --arg=stop $EVENTDIR
+ fi
+ echo -n "Stopping $DESC: "
+ start-stop-daemon --stop --quiet --pidfile $PIDFILE \
+ --user $DAEMONUSER
+ # We no longer include these arguments so that start-stop-daemon
+ # can do its job even given that we may have been upgraded.
+ # We rely on the pidfile being sanely managed
+ # --exec $DAEMON -- --system $PARAMS
+ echo "$NAME."
+ rm -f $PIDFILE
+}
+
+case "$1" in
+ start)
+ start_it_up
+ ;;
+ stop)
+ shut_it_down
+ ;;
+ restart|force-reload)
+ shut_it_down
+ sleep 1
+ start_it_up
+ ;;
+ *)
+ echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/packages/dbus/dbus-1.0.0/fix-install-daemon.patch b/packages/dbus/dbus-1.0.0/fix-install-daemon.patch
new file mode 100644
index 0000000000..c31786357d
--- /dev/null
+++ b/packages/dbus/dbus-1.0.0/fix-install-daemon.patch
@@ -0,0 +1,13 @@
+Index: dbus-0.94/bus/Makefile.am
+===================================================================
+--- dbus-0.94.orig/bus/Makefile.am 2006-10-01 17:36:18.000000000 +0200
++++ dbus-0.94/bus/Makefile.am 2006-10-14 21:40:05.000000000 +0200
+@@ -110,7 +110,7 @@
+ $(mkinstalldirs) $(DESTDIR)$(DBUS_DAEMONDIR); \
+ chmod 755 $(DESTDIR)$(DBUS_DAEMONDIR); \
+ fi
+- $(INSTALL_PROGRAM) dbus-daemon $(DESTDIR)$(DBUS_DAEMONDIR)
++ $(INSTALL_PROGRAM) .libs/dbus-daemon $(DESTDIR)$(DBUS_DAEMONDIR)
+ $(mkinstalldirs) $(DESTDIR)$(localstatedir)/run/dbus
+ $(mkinstalldirs) $(DESTDIR)$(configdir)/system.d
+ $(mkinstalldirs) $(DESTDIR)$(datadir)/dbus-1/services
diff --git a/packages/dbus/dbus_0.94.bb b/packages/dbus/dbus_0.94.bb
index 050be8a86e..f19df19187 100644
--- a/packages/dbus/dbus_0.94.bb
+++ b/packages/dbus/dbus_0.94.bb
@@ -6,6 +6,8 @@ DESCRIPTION = "message bus system for applications to talk to one another"
LICENSE = "GPL"
DEPENDS = "expat glib-2.0 virtual/libintl"
+PR = "r1"
+
SRC_URI = "http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \
file://cross.patch;patch=1 \
file://tmpdir.patch;patch=1 \
diff --git a/packages/dbus/dbus_0.95.bb b/packages/dbus/dbus_0.95.bb
new file mode 100644
index 0000000000..688e5c630f
--- /dev/null
+++ b/packages/dbus/dbus_0.95.bb
@@ -0,0 +1,63 @@
+DEFAULT_PREFERENCE = "-1"
+
+SECTION = "base"
+HOMEPAGE = "http://www.freedesktop.org/Software/dbus"
+DESCRIPTION = "message bus system for applications to talk to one another"
+LICENSE = "GPL"
+DEPENDS = "expat glib-2.0 virtual/libintl"
+
+SRC_URI = "http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \
+ file://tmpdir.patch;patch=1 \
+ file://dbus-1.init \
+ file://fix-segfault.patch;patch=1 \
+ file://cross.patch;patch=1 \
+ file://fix-install-daemon.patch;patch=1"
+
+inherit autotools pkgconfig update-rc.d gettext
+
+INITSCRIPT_NAME = "dbus-1"
+INITSCRIPT_PARAMS = "defaults"
+
+CONFFILES_${PN} = "${sysconfdir}/dbus-1/system.conf ${sysconfdir}/dbus-1/session.conf"
+
+FILES_${PN} = "${bindir}/dbus-daemon ${bindir}/dbus-launch ${bindir}/dbus-cleanup-sockets ${bindir}/dbus-send ${bindir}/dbus-monitor ${bindir}/dbus-uuidgen ${sysconfdir} ${datadir}/dbus-1/services ${libdir}/lib*.so.*"
+FILES_${PN}-dev += "${libdir}/dbus-1.0/include"
+
+pkg_postinst_dbus() {
+#!/bin/sh
+
+# can't do adduser stuff offline
+if [ "x$D" != "x" ]; then
+ exit 1
+fi
+
+MESSAGEUSER=messagebus
+MESSAGEHOME=/var/run/dbus
+
+mkdir -p $MESSAGEHOME || true
+chgrp "$MESSAGEUSER" "$MESSAGEHOME" 2>/dev/null || addgroup "$MESSAGEUSER"
+chown "$MESSAGEUSER"."$MESSAGEUSER" "$MESSAGEHOME" 2>/dev/null || adduser --system --home "$MESSAGEHOME" --no-create-home --disabled-password --ingroup "$MESSAGEUSER" "$MESSAGEUSER"
+}
+
+EXTRA_OECONF = "--disable-qt --disable-qt3 --disable-gtk --disable-tests \
+ --disable-checks --disable-xml-docs --disable-doxygen-docs \
+ --with-xml=expat --without-x"
+
+do_stage () {
+ oe_libinstall -so -C dbus libdbus-1 ${STAGING_LIBDIR}
+
+ autotools_stage_includes
+
+ mkdir -p ${STAGING_LIBDIR}/dbus-1.0/include/dbus/
+ install -m 0644 dbus/dbus-arch-deps.h ${STAGING_LIBDIR}/dbus-1.0/include/dbus/
+}
+
+do_install_append () {
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/dbus-1.init ${D}${sysconfdir}/init.d/dbus-1
+}
+
+python populate_packages_prepend () {
+ if (bb.data.getVar('DEBIAN_NAMES', d, 1)):
+ bb.data.setVar('PKG_dbus', 'dbus-1', d)
+}
diff --git a/packages/dbus/dbus_1.0.0.bb b/packages/dbus/dbus_1.0.0.bb
new file mode 100644
index 0000000000..688e5c630f
--- /dev/null
+++ b/packages/dbus/dbus_1.0.0.bb
@@ -0,0 +1,63 @@
+DEFAULT_PREFERENCE = "-1"
+
+SECTION = "base"
+HOMEPAGE = "http://www.freedesktop.org/Software/dbus"
+DESCRIPTION = "message bus system for applications to talk to one another"
+LICENSE = "GPL"
+DEPENDS = "expat glib-2.0 virtual/libintl"
+
+SRC_URI = "http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \
+ file://tmpdir.patch;patch=1 \
+ file://dbus-1.init \
+ file://fix-segfault.patch;patch=1 \
+ file://cross.patch;patch=1 \
+ file://fix-install-daemon.patch;patch=1"
+
+inherit autotools pkgconfig update-rc.d gettext
+
+INITSCRIPT_NAME = "dbus-1"
+INITSCRIPT_PARAMS = "defaults"
+
+CONFFILES_${PN} = "${sysconfdir}/dbus-1/system.conf ${sysconfdir}/dbus-1/session.conf"
+
+FILES_${PN} = "${bindir}/dbus-daemon ${bindir}/dbus-launch ${bindir}/dbus-cleanup-sockets ${bindir}/dbus-send ${bindir}/dbus-monitor ${bindir}/dbus-uuidgen ${sysconfdir} ${datadir}/dbus-1/services ${libdir}/lib*.so.*"
+FILES_${PN}-dev += "${libdir}/dbus-1.0/include"
+
+pkg_postinst_dbus() {
+#!/bin/sh
+
+# can't do adduser stuff offline
+if [ "x$D" != "x" ]; then
+ exit 1
+fi
+
+MESSAGEUSER=messagebus
+MESSAGEHOME=/var/run/dbus
+
+mkdir -p $MESSAGEHOME || true
+chgrp "$MESSAGEUSER" "$MESSAGEHOME" 2>/dev/null || addgroup "$MESSAGEUSER"
+chown "$MESSAGEUSER"."$MESSAGEUSER" "$MESSAGEHOME" 2>/dev/null || adduser --system --home "$MESSAGEHOME" --no-create-home --disabled-password --ingroup "$MESSAGEUSER" "$MESSAGEUSER"
+}
+
+EXTRA_OECONF = "--disable-qt --disable-qt3 --disable-gtk --disable-tests \
+ --disable-checks --disable-xml-docs --disable-doxygen-docs \
+ --with-xml=expat --without-x"
+
+do_stage () {
+ oe_libinstall -so -C dbus libdbus-1 ${STAGING_LIBDIR}
+
+ autotools_stage_includes
+
+ mkdir -p ${STAGING_LIBDIR}/dbus-1.0/include/dbus/
+ install -m 0644 dbus/dbus-arch-deps.h ${STAGING_LIBDIR}/dbus-1.0/include/dbus/
+}
+
+do_install_append () {
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/dbus-1.init ${D}${sysconfdir}/init.d/dbus-1
+}
+
+python populate_packages_prepend () {
+ if (bb.data.getVar('DEBIAN_NAMES', d, 1)):
+ bb.data.setVar('PKG_dbus', 'dbus-1', d)
+}
diff --git a/packages/eds/eds-dbus_svn.bb b/packages/eds/eds-dbus_svn.bb
index c39d5b7443..d5f32eb7dd 100644
--- a/packages/eds/eds-dbus_svn.bb
+++ b/packages/eds/eds-dbus_svn.bb
@@ -4,13 +4,13 @@ LICENSE = "LGPL"
DEPENDS = "glib-2.0 gtk+ gconf dbus db gnome-common libglade virtual/libiconv zlib"
PV = "1.4.0+svn${SRCDATE}"
-PR = "r16"
+PR = "r17"
SRC_URI = "svn://svn.o-hand.com/repos/${PN};module=trunk;proto=http \
file://no_libdb.patch;patch=1 \
file://no_iconv_test.patch;patch=1 \
file://no_libedataserverui.patch;patch=1 \
- file://disable_orbit.patch;patch=1 \
+ file://disable_orbit.patch;patch=1;maxdate=20060126 \
file://iconv-detect.h"
S = "${WORKDIR}/trunk"
@@ -38,24 +38,7 @@ FILES_${PN}-dev += "${libdir}/evolution-data-server-1.2/extensions/*.la \
do_configure_append = " cp ${WORKDIR}/iconv-detect.h ${S} "
do_stage () {
- oe_libinstall -so -C addressbook/libebook-dbus libebook-1.2 ${STAGING_LIBDIR}
- oe_libinstall -so -C addressbook/libedata-book-dbus libedata-book-1.2 ${STAGING_LIBDIR}
- oe_libinstall -so -C calendar/libecal-dbus libecal-1.2 ${STAGING_LIBDIR}
- oe_libinstall -so -C calendar/libedata-cal-dbus libedata-cal-1.2 ${STAGING_LIBDIR}
- oe_libinstall -so -C libedataserver libedataserver-1.2 ${STAGING_LIBDIR}
- oe_libinstall -so -C camel libcamel-1.2 ${STAGING_LIBDIR}
- oe_libinstall -so -C camel libcamel-provider-1.2 ${STAGING_LIBDIR}
-
- install -d ${STAGING_INCDIR}/camel-1.2 ${STAGING_INCDIR}/libebook \
- ${STAGING_INCDIR}/libecal ${STAGING_INCDIR}/libedataserver \
- ${STAGING_INCDIR}/libical
- install -m 0644 ${S}/camel/*.h ${STAGING_INCDIR}/camel-1.2
- install -m 0644 ${S}/camel/*.def ${STAGING_INCDIR}/camel-1.2
- ln -sf ${STAGING_INCDIR}/camel-1.2 ${STAGING_INCDIR}/camel
- install -m 0644 ${S}/addressbook/libebook-dbus/*.h ${STAGING_INCDIR}/libebook
- install -m 0644 ${S}/calendar/libecal-dbus/*.h ${STAGING_INCDIR}/libecal
- install -m 0644 ${S}/libedataserver/*.h ${STAGING_INCDIR}/libedataserver
- install -m 0644 ${S}/calendar/libical/src/libical/*.h ${STAGING_INCDIR}/libical
+ autotools_stage_all
}
diff --git a/packages/file/file-native_4.18.bb b/packages/file/file-native_4.18.bb
new file mode 100644
index 0000000000..63554b01fb
--- /dev/null
+++ b/packages/file/file-native_4.18.bb
@@ -0,0 +1,8 @@
+require file_${PV}.bb
+inherit native
+
+# avoid dependency loop
+DEPENDS = ""
+PR = "r1"
+
+SRC_URI += "file://native-fix.diff;patch=1"
diff --git a/packages/file/file_4.18.bb b/packages/file/file_4.18.bb
new file mode 100644
index 0000000000..697d4ffb9f
--- /dev/null
+++ b/packages/file/file_4.18.bb
@@ -0,0 +1,22 @@
+DESCRIPTION = "File attempts to classify files depending \
+on their contents and prints a description if a match is found."
+SECTION = "console/utils"
+LICENSE = "BSD-ADV"
+DEPENDS = "file-native"
+
+SRC_URI = "ftp://ftp.astron.com/pub/file/file-${PV}.tar.gz \
+ file://dump \
+ file://filesystems"
+S = "${WORKDIR}/file-${PV}"
+
+inherit autotools
+
+do_configure_prepend() {
+ sed -i -e 's,$(top_builddir)/src/file,file,' ${S}/magic/Makefile.am
+ cp ${WORKDIR}/dump ${S}/magic/Magdir/
+ cp ${WORKDIR}/filesystems ${S}/magic/Magdir/
+}
+
+do_stage() {
+ autotools_stage_all
+}
diff --git a/packages/file/files/dump b/packages/file/files/dump
new file mode 100644
index 0000000000..628ead86c6
--- /dev/null
+++ b/packages/file/files/dump
@@ -0,0 +1,81 @@
+
+#------------------------------------------------------------------------------
+# dump: file(1) magic for dump file format--for new and old dump filesystems
+#
+# We specify both byte orders in order to recognize byte-swapped dumps.
+#
+24 belong 60012 new-fs dump file (big endian),
+>4 bedate x Previous dump %s,
+>8 bedate x This dump %s,
+>12 belong >0 Volume %ld,
+>692 belong 0 Level zero, type:
+>692 belong >0 Level %d, type:
+>0 belong 1 tape header,
+>0 belong 2 beginning of file record,
+>0 belong 3 map of inodes on tape,
+>0 belong 4 continuation of file record,
+>0 belong 5 end of volume,
+>0 belong 6 map of inodes deleted,
+>0 belong 7 end of medium (for floppy),
+>676 string >\0 Label %s,
+>696 string >\0 Filesystem %s,
+>760 string >\0 Device %s,
+>824 string >\0 Host %s,
+>888 belong >0 Flags %x
+
+24 belong 60011 old-fs dump file (big endian),
+#>4 bedate x Previous dump %s,
+#>8 bedate x This dump %s,
+>12 belong >0 Volume %ld,
+>692 belong 0 Level zero, type:
+>692 belong >0 Level %d, type:
+>0 belong 1 tape header,
+>0 belong 2 beginning of file record,
+>0 belong 3 map of inodes on tape,
+>0 belong 4 continuation of file record,
+>0 belong 5 end of volume,
+>0 belong 6 map of inodes deleted,
+>0 belong 7 end of medium (for floppy),
+>676 string >\0 Label %s,
+>696 string >\0 Filesystem %s,
+>760 string >\0 Device %s,
+>824 string >\0 Host %s,
+>888 belong >0 Flags %x
+
+24 lelong 60012 new-fs dump file (little endian),
+>4 ledate x This dump %s,
+>8 ledate x Previous dump %s,
+>12 lelong >0 Volume %ld,
+>692 lelong 0 Level zero, type:
+>692 lelong >0 Level %d, type:
+>0 lelong 1 tape header,
+>0 lelong 2 beginning of file record,
+>0 lelong 3 map of inodes on tape,
+>0 lelong 4 continuation of file record,
+>0 lelong 5 end of volume,
+>0 lelong 6 map of inodes deleted,
+>0 lelong 7 end of medium (for floppy),
+>676 string >\0 Label %s,
+>696 string >\0 Filesystem %s,
+>760 string >\0 Device %s,
+>824 string >\0 Host %s,
+>888 lelong >0 Flags %x
+
+24 lelong 60011 old-fs dump file (little endian),
+#>4 ledate x Previous dump %s,
+#>8 ledate x This dump %s,
+>12 lelong >0 Volume %ld,
+>692 lelong 0 Level zero, type:
+>692 lelong >0 Level %d, type:
+>0 lelong 1 tape header,
+>0 lelong 2 beginning of file record,
+>0 lelong 3 map of inodes on tape,
+>0 lelong 4 continuation of file record,
+>0 lelong 5 end of volume,
+>0 lelong 6 map of inodes deleted,
+>0 lelong 7 end of medium (for floppy),
+>676 string >\0 Label %s,
+>696 string >\0 Filesystem %s,
+>760 string >\0 Device %s,
+>824 string >\0 Host %s,
+>888 lelong >0 Flags %x
diff --git a/packages/file/files/filesystems b/packages/file/files/filesystems
new file mode 100644
index 0000000000..fd5073334c
--- /dev/null
+++ b/packages/file/files/filesystems
@@ -0,0 +1,812 @@
+
+#------------------------------------------------------------------------------
+# filesystems: file(1) magic for different filesystems
+#
+0 string \366\366\366\366 PC formatted floppy with no filesystem
+# Sun disk labels
+# From /usr/include/sun/dklabel.h:
+0774 beshort 0xdabe Sun disk label
+>0 string x '%s
+>>31 string >\0 \b%s
+>>>63 string >\0 \b%s
+>>>>95 string >\0 \b%s
+>0 string x \b'
+>0734 short >0 %d rpm,
+>0736 short >0 %d phys cys,
+>0740 short >0 %d alts/cyl,
+>0746 short >0 %d interleave,
+>0750 short >0 %d data cyls,
+>0752 short >0 %d alt cyls,
+>0754 short >0 %d heads/partition,
+>0756 short >0 %d sectors/track,
+>0764 long >0 start cyl %ld,
+>0770 long x %ld blocks
+# Is there a boot block written 1 sector in?
+>512 belong&077777777 0600407 \b, boot block present
+# Smart Boot Manager backup file is 41 byte header + first sectors of disc
+# (http://btmgr.sourceforge.net/docs/user-guide-3.html)
+0 string SBMBAKUP_ Smart Boot Manager backup file
+>9 string x \b, version %-5.5s
+>>14 string =_
+>>>15 string x %-.1s
+>>>>16 string =_ \b.
+>>>>>17 string x \b%-.1s
+>>>>>>18 string =_ \b.
+>>>>>>>19 string x \b%-.1s
+# DOS Emulator image is 128 byte header + harddisc image
+0 string DOSEMU\0
+>0x27E leshort 0xAA55 DOS Emulator image
+0x1FE leshort 0xAA55 x86 boot sector
+>2 string OSBS \b, OS/BS MBR
+# J\xf6rg Jenderek <joerg dot jenderek at web dot de>
+>0x8C string Invalid\ partition\ table \b, MS-DOS MBR
+# dr-dos with some upper-, lowercase variants
+>0x9D string Invalid\ partition\ table$
+>>181 string No\ Operating\ System$
+>>>201 string Operating\ System\ load\ error$ \b, DR-DOS MBR, Version 7.01 to 7.03
+>0x9D string Invalid\ partition\ table$
+>>181 string No\ operating\ system$
+>>>201 string Operating\ system\ load\ error$ \b, DR-DOS MBR, Version 7.01 to 7.03
+>342 string Invalid\ partition\ table$
+>>366 string No\ operating\ system$
+>>>386 string Operating\ system\ load\ error$ \b, DR-DOS MBR, version 7.01 to 7.03
+>295 string NEWLDR\0
+>>302 string Bad\ PT\ $
+>>>310 string No\ OS\ $
+>>>>317 string OS\ load\ err$
+>>>>>329 string Moved\ or\ missing\ IBMBIO.LDR\n\r
+>>>>>>358 string Press\ any\ key\ to\ continue.\n\r$
+>>>>>>>387 string Copyright\ (c)\ 1984,1998
+>>>>>>>>411 string Caldera\ Inc.\0 \b, DR-DOS MBR (IBMBIO.LDR)
+>0x10F string Ung\201ltige\ Partitionstabelle \b, MS-DOS MBR, german version 4.10.1998, 4.10.2222
+>>0x1B8 ubelong >0 \b, Serial 0x%-.4x
+>0x8B string Ung\201ltige\ Partitionstabelle \b, MS-DOS MBR, german version 5.00 to 4.00.950
+>271 string Invalid\ partition\ table\0
+>>295 string Error\ loading\ operating\ system\0
+>>>326 string Missing\ operating\ system\0 \b, mbr
+#
+>139 string Invalid\ partition\ table\0
+>>163 string Error\ loading\ operating\ system\0
+>>>194 string Missing\ operating\ system\0 \b, Microsoft Windows XP mbr
+# http://www.heise.de/ct/05/09/006/ page 184
+#HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices\DosDevices\?:=Serial4Bytes+8Bytes
+>>>>0x1B8 ulelong >0 \b,Serial 0x%-.4x
+>300 string Invalid\ partition\ table\0
+>>324 string Error\ loading\ operating\ system\0
+>>>355 string Missing\ operating\ system\0 \b, Microsoft Windows XP MBR
+#??>>>389 string Invalid\ system\ disk
+>>>>0x1B8 ulelong >0 \b, Serial 0x%-.4x
+>300 string Ung\201ltige\ Partitionstabelle
+#split string to avoid error: String too long
+>>328 string Fehler\ beim\ Laden\
+>>>346 string des\ Betriebssystems
+>>>>366 string Betriebssystem\ nicht\ vorhanden \b, Microsoft Windows XP MBR (german)
+>>>>>0x1B8 ulelong >0 \b, Serial 0x%-.4x
+>0x145 string Default:\ F \b, FREE-DOS MBR
+>64 string no\ active\ partition\ found
+>>96 string read\ error\ while\ reading\ drive \b, FREE-DOS Beta 0.9 MBR
+>271 string Operating\ system\ loading
+>>296 string error\r \b, SYSLINUX MBR (2.10)
+# bootloader, bootmanager
+>43 string SMART\ BTMGRFAT12\ \ \
+>>430 string SBMK\ Bad!\r
+>>>3 string SBM \b, Smart Boot Manager
+>>>>6 string >\0 \b, version %s
+>382 string XOSLLOADXCF \b, eXtended Operating System Loader
+>6 string LILO \b, LInux i386 boot LOader
+>>120 string LILO \b, version 22.3.4 SuSe
+>>172 string LILO \b, version 22.5.8 Debian
+>402 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>394 string stage1 \b, GRand Unified Bootloader (0.5.95)
+>343 string Geom\0Read\0\ Error\0
+>>321 string Loading\ stage1.5 \b, Grand Unified Bootloader
+>380 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>374 string GRUB\ \0 \b, GRand Unified Bootloader
+>382 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>376 string GRUB\ \0 \b, GRand Unified Bootloader (0.93)
+>383 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>377 string GRUB\ \0 \b, GRand Unified Bootloader (0.94)
+>385 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>379 string GRUB\ \0 \b, GRand Unified Bootloader (0.95)
+>480 string Boot\ failed\r
+>>495 string LDLINUX\ SYS \b, SYSLINUX bootloader (2.06)
+>395 string chksum\0\ ERROR!\0 \b, Gujin bootloader
+>185 string FDBOOT\ Version\
+>>204 string \rNo\ Systemdisk.\
+>>>220 string Booting\ from\ harddisk.\n\r
+>>>245 string Cannot\ load\ from\ harddisk.\n\r
+>>>>273 string Insert\ Systemdisk\
+>>>>>291 string and\ press\ any\ key.\n\r \b, FDBOOT harddisk Bootloader
+>>>>>>200 string >\0 \b, version %-3s
+>242 string Bootsector\ from\ C.H.\ Hochst\204
+>>278 string No\ Systemdisk.\
+>>>293 string Booting\ from\ harddisk.\n\r
+>>>441 string Cannot\ load\ from\ harddisk.\n\r
+>>>>469 string Insert\ Systemdisk\
+>>>>>487 string and\ press\ any\ key.\n\r \b, WinImage harddisk Bootloader
+>>>>>>209 string >\0 \b, version %-4.4s
+>(1.b+2) ubyte 0xe
+>>(1.b+3) ubyte 0x1f
+>>>(1.b+4) ubyte 0xbe
+>>>>(1.b+5) ubyte 0x77
+>>>>(1.b+6) ubyte 0x7c
+>>>>>(1.b+7) ubyte 0xac
+>>>>>>(1.b+8) ubyte 0x22
+>>>>>>>(1.b+9) ubyte 0xc0
+>>>>>>>>(1.b+10) ubyte 0x74
+>>>>>>>>>(1.b+11) ubyte 0xb
+>>>>>>>>>>(1.b+12) ubyte 0x56
+>>>>>>>>>>(1.b+13) ubyte 0xb4 \b, mkdosfs boot message display
+#
+>66 string Solaris\ Boot\ Sector
+>>99 string Incomplete\ MDBoot\ load.
+>>>89 string Version \b, Sun Solaris Bootloader
+>>>>97 byte x version %c
+#
+>408 string OS/2\ !!\ SYS01475\r\0
+>>429 string OS/2\ !!\ SYS02025\r\0
+>>>450 string OS/2\ !!\ SYS02027\r\0
+>>>469 string OS2BOOT\ \ \ \ \b, IBM OS/2 Warp bootloader
+#
+>409 string OS/2\ !!\ SYS01475\r\0
+>>430 string OS/2\ !!\ SYS02025\r\0
+>>>451 string OS/2\ !!\ SYS02027\r\0
+>>>470 string OS2BOOT\ \ \ \ \b, IBM OS/2 Warp Bootloader
+>112 string This\ disk\ is\ not\ bootable\r
+>>142 string If\ you\ wish\ to\ make\ it\ bootable
+>>>176 string run\ the\ DOS\ program\ SYS\
+>>>200 string after\ the\r
+>>>>216 string system\ has\ been\ loaded\r\n
+>>>>>242 string Please\ insert\ a\ DOS\ diskette\
+>>>>>271 string into\r\n\ the\ drive\ and\
+>>>>>>292 string strike\ any\ key...\0 \b, IBM OS/2 Warp message display
+# XP
+>430 string NTLDR\ is\ missing\xFF\r\n
+>>449 string Disk\ error\xFF\r\n
+>>>462 string Press\ any\ key\ to\ restart\r \b, Microsoft Windows XP Bootloader
+# DOS names like NTLDR,CMLDR,$LDR$ are 8 right space padded bytes+3 bytes
+>>>>417 ubyte&0xDF >0
+>>>>>417 string x %-.5s
+>>>>>>422 ubyte&0xDF >0
+>>>>>>>422 string x \b%-.3s
+>>>>>425 ubyte&0xDF >0
+>>>>>>425 string >\ \b.%-.3s
+#
+>>>>371 ubyte >0x20
+>>>>>368 ubyte&0xDF >0
+>>>>>>368 string x %-.5s
+>>>>>>>373 ubyte&0xDF >0
+>>>>>>>>373 string x \b%-.3s
+>>>>>>376 ubyte&0xDF >0
+>>>>>>>376 string x \b.%-.3s
+#
+>430 string NTLDR\ nicht\ gefunden\xFF\r\n
+>>453 string Datentr\204gerfehler\xFF\r\n
+>>>473 string Neustart\ mit\ beliebiger\ Taste\r \b, Microsoft Windows XP Bootloader (german)
+>>>>417 ubyte&0xDF >0
+>>>>>417 string x %-.5s
+>>>>>>422 ubyte&0xDF >0
+>>>>>>>422 string x \b%-.3s
+>>>>>425 ubyte&0xDF >0
+>>>>>>425 string >\ \b.%-.3s
+#
+>>>>368 ubyte&0xDF >0
+>>>>>368 string x %-.5s
+>>>>>>373 ubyte&0xDF >0
+>>>>>>>373 string x \b%-.3s
+>>>>>376 ubyte&0xDF >0
+>>>>>>376 string x \b.%-.3s
+#
+>430 string NTLDR\ fehlt\xFF\r\n
+>>444 string Datentr\204gerfehler\xFF\r\n
+>>>464 string Neustart\ mit\ beliebiger\ Taste\r \b, Microsoft Windows XP Bootloader (2.german)
+>>>>417 ubyte&0xDF >0
+>>>>>417 string x %-.5s
+>>>>>>422 ubyte&0xDF >0
+>>>>>>>422 string x \b%-.3s
+>>>>>425 ubyte&0xDF >0
+>>>>>>425 string >\ \b.%-.3s
+# variant
+>>>>371 ubyte >0x20
+>>>>>368 ubyte&0xDF >0
+>>>>>>368 string x %-.5s
+>>>>>>>373 ubyte&0xDF >0
+>>>>>>>>373 string x \b%-.3s
+>>>>>>376 ubyte&0xDF >0
+>>>>>>>376 string x \b.%-.3s
+#
+>430 string NTLDR\ fehlt\xFF\r\n
+>>444 string Medienfehler\xFF\r\n
+>>>459 string Neustart:\ Taste\ dr\201cken\r \b, Microsoft Windows XP Bootloader (3.german)
+>>>>371 ubyte >0x20
+>>>>>368 ubyte&0xDF >0
+>>>>>>368 string x %-.5s
+>>>>>>>373 ubyte&0xDF >0
+>>>>>>>>373 string x \b%-.3s
+>>>>>>376 ubyte&0xDF >0
+>>>>>>>376 string x \b.%-.3s
+# variant
+>>>>417 ubyte&0xDF >0
+>>>>>417 string x %-.5s
+>>>>>>422 ubyte&0xDF >0
+>>>>>>>422 string x \b%-.3s
+>>>>>425 ubyte&0xDF >0
+>>>>>>425 string >\ \b.%-.3s
+#
+>430 string Datentr\204ger\ entfernen\xFF\r\n
+>>454 string Medienfehler\xFF\r\n
+>>>469 string Neustart:\ Taste\ dr\201cken\r \b, Microsoft Windows XP Bootloader (4.german)
+>>>>368 ubyte&0xDF >0
+>>>>>368 string x %-.5s
+>>>>>>373 ubyte&0xDF >0
+>>>>>>>373 string x \b%-.3s
+>>>>>376 ubyte&0xDF >0
+>>>>>>376 string x \b.%-.3s
+#>3 string NTFS\ \ \ \
+>389 string Fehler\ beim\ Lesen\
+>>407 string des\ Datentr\204gers
+>>>426 string NTLDR\ fehlt
+>>>>440 string NTLDR\ ist\ komprimiert
+>>>>>464 string Neustart\ mit\ Strg+Alt+Entf\r \b, Microsoft Windows XP Bootloader NTFS (german)
+#>3 string NTFS\ \ \ \
+>313 string A\ disk\ read\ error\ occurred.\r
+>>345 string A\ kernel\ file\ is\ missing\
+>>>370 string from\ the\ disk.\r
+>>>>484 string NTLDR\ is\ compressed
+>>>>>429 string Insert\ a\ system\ diskette\
+>>>>>>454 string and\ restart\r\nthe\ system.\r \b, Microsoft Windows XP Bootloader NTFS
+# DOS loader variants different languages,offsets
+>472 ubyte&0xDF >0
+>>389 string Invalid\ system\ disk\xFF\r\n
+>>>411 string Disk\ I/O\ error
+>>>>428 string Replace\ the\ disk,\ and\
+>>>>>455 string press\ any\ key \b, Microsoft Windows 98 Bootloader
+#IO.SYS
+>>>>>>472 ubyte&0xDF >0
+>>>>>>>472 string x \b %-.2s
+>>>>>>>>474 ubyte&0xDF >0
+>>>>>>>>>474 string x \b%-.5s
+>>>>>>>>>>479 ubyte&0xDF >0
+>>>>>>>>>>>479 string x \b%-.1s
+>>>>>>>480 ubyte&0xDF >0
+>>>>>>>>480 string x \b.%-.3s
+#MSDOS.SYS
+>>>>>>>483 ubyte&0xDF >0 \b+
+>>>>>>>>483 string x \b%-.5s
+>>>>>>>>>488 ubyte&0xDF >0
+>>>>>>>>>>488 string x \b%-.3s
+>>>>>>>>491 ubyte&0xDF >0
+>>>>>>>>>491 string x \b.%-.3s
+#
+>>390 string Invalid\ system\ disk\xFF\r\n
+>>>412 string Disk\ I/O\ error\xFF\r\n
+>>>>429 string Replace\ the\ disk,\ and\
+>>>>>451 string then\ press\ any\ key\r \b, Microsoft Windows 98 Bootloader
+>>388 string Ungueltiges\ System\ \xFF\r\n
+>>>410 string E/A-Fehler\ \ \ \ \xFF\r\n
+>>>>427 string Datentraeger\ wechseln\ und\
+>>>>>453 string Taste\ druecken\r \b, Microsoft Windows 95/98/ME Bootloader (german)
+#WINBOOT.SYS only not spaces (0xDF)
+>>>>>>497 ubyte&0xDF >0
+>>>>>>>497 string x %-.5s
+>>>>>>>>502 ubyte&0xDF >0
+>>>>>>>>>502 string x \b%-.1s
+>>>>>>>>>>503 ubyte&0xDF >0
+>>>>>>>>>>>503 string x \b%-.1s
+>>>>>>>>>>>>504 ubyte&0xDF >0
+>>>>>>>>>>>>>504 string x \b%-.1s
+>>>>>>505 ubyte&0xDF >0
+>>>>>>>505 string x \b.%-.3s
+#IO.SYS
+>>>>>>472 ubyte&0xDF >0 or
+>>>>>>>472 string x \b %-.2s
+>>>>>>>>474 ubyte&0xDF >0
+>>>>>>>>>474 string x \b%-.5s
+>>>>>>>>>>479 ubyte&0xDF >0
+>>>>>>>>>>>479 string x \b%-.1s
+>>>>>>>480 ubyte&0xDF >0
+>>>>>>>>480 string x \b.%-.3s
+#MSDOS.SYS
+>>>>>>>483 ubyte&0xDF >0 \b+
+>>>>>>>>483 string x \b%-.5s
+>>>>>>>>>488 ubyte&0xDF >0
+>>>>>>>>>>488 string x \b%-.3s
+>>>>>>>>491 ubyte&0xDF >0
+>>>>>>>>>491 string x \b.%-.3s
+#
+>>390 string Ungueltiges\ System\ \xFF\r\n
+>>>412 string E/A-Fehler\ \ \ \ \xFF\r\n
+>>>>429 string Datentraeger\ wechseln\ und\
+>>>>>455 string Taste\ druecken\r \b, Microsoft Windows 95/98/ME Bootloader (German)
+#WINBOOT.SYS only not spaces (0xDF)
+>>>>>>497 ubyte&0xDF >0
+>>>>>>>497 string x %-.7s
+>>>>>>>>504 ubyte&0xDF >0
+>>>>>>>>>504 string x \b%-.1s
+>>>>>>505 ubyte&0xDF >0
+>>>>>>>505 string x \b.%-.3s
+#IO.SYS
+>>>>>>472 ubyte&0xDF >0 or
+>>>>>>>472 string x \b %-.2s
+>>>>>>>>474 ubyte&0xDF >0
+>>>>>>>>>474 string x \b%-.6s
+>>>>>>>480 ubyte&0xDF >0
+>>>>>>>>480 string x \b.%-.3s
+#MSDOS.SYS
+>>>>>>>483 ubyte&0xDF >0 \b+
+>>>>>>>>483 string x \b%-.5s
+>>>>>>>>>488 ubyte&0xDF >0
+>>>>>>>>>>488 string x \b%-.3s
+>>>>>>>>491 ubyte&0xDF >0
+>>>>>>>>>491 string x \b.%-.3s
+#
+>>389 string Ungueltiges\ System\ \xFF\r\n
+>>>411 string E/A-Fehler\ \ \ \ \xFF\r\n
+>>>>428 string Datentraeger\ wechseln\ und\
+>>>>>454 string Taste\ druecken\r \b, Microsoft Windows 95/98/ME Bootloader (GERMAN)
+# DOS names like IO.SYS,WINBOOT.SYS,MSDOS.SYS,WINBOOT.INI are 8 right space padded bytes+3 bytes
+>>>>>>472 string x %-.2s
+>>>>>>>474 ubyte&0xDF >0
+>>>>>>>>474 string x \b%-.5s
+>>>>>>>>479 ubyte&0xDF >0
+>>>>>>>>>479 string x \b%-.1s
+>>>>>>480 ubyte&0xDF >0
+>>>>>>>480 string x \b.%-.3s
+>>>>>>483 ubyte&0xDF >0 \b+
+>>>>>>>483 string x \b%-.5s
+>>>>>>>488 ubyte&0xDF >0
+>>>>>>>>488 string x \b%-.2s
+>>>>>>>>490 ubyte&0xDF >0
+>>>>>>>>>490 string x \b%-.1s
+>>>>>>>491 ubyte&0xDF >0
+>>>>>>>>491 string x \b.%-.3s
+>479 ubyte&0xDF >0
+>>416 string Kein\ System\ oder\
+>>>433 string Laufwerksfehler
+>>>>450 string Wechseln\ und\ Taste\ dr\201cken \b, Microsoft DOS Bootloader (german)
+#IO.SYS
+>>>>>479 string x \b %-.2s
+>>>>>>481 ubyte&0xDF >0
+>>>>>>>481 string x \b%-.6s
+>>>>>487 ubyte&0xDF >0
+>>>>>>487 string x \b.%-.3s
+#MSDOS.SYS
+>>>>>>490 ubyte&0xDF >0 \b+
+>>>>>>>490 string x \b%-.5s
+>>>>>>>>495 ubyte&0xDF >0
+>>>>>>>>>495 string x \b%-.3s
+>>>>>>>498 ubyte&0xDF >0
+>>>>>>>>498 string x \b.%-.3s
+#
+>486 ubyte&0xDF >0
+>>416 string Non-System\ disk\ or\
+>>>435 string disk\ error\r
+>>>>447 string Replace\ and\ press\ any\ key\
+>>>>>473 string when\ ready\r \b, Microsoft DOS Bootloader
+>480 ubyte&0xDF >0
+>>393 string Non-System\ disk\ or\
+>>>412 string disk\ error\r
+>>>>424 string Replace\ and\ press\ any\ key\
+>>>>>450 string when\ ready\r \b, Microsoft DOS bootloader
+#IO.SYS
+>>>>>480 string x \b %-.2s
+>>>>>>482 ubyte&0xDF >0
+>>>>>>>48 string x \b%-.6s
+>>>>>488 ubyte&0xDF >0
+>>>>>>488 string x \b.%-.3s
+#MSDOS.SYS
+>>>>>>491 ubyte&0xDF >0 \b+
+>>>>>>>491 string x \b%-.5s
+>>>>>>>>496 ubyte&0xDF >0
+>>>>>>>>>496 string x \b%-.3s
+>>>>>>>499 ubyte&0xDF >0
+>>>>>>>>499 string x \b.%-.3s
+#>43 string \224R-LOADER\ \ SYS =label
+>54 string SYS
+>>324 string VASKK
+>>>495 string NEWLDR\0 \b, DR-DOS Bootloader (LOADER.SYS)
+#
+>70 string IBMBIO\ \ COM
+>>472 string Cannot\ load\ DOS!\
+>>>489 string Any\ key\ to\ retry \b, DR-DOS Bootloader
+>>471 string Cannot\ load\ DOS\
+>>487 string press\ key\ to\ retry \b, Open-DOS Bootloader
+>444 string KERNEL\ \ SYS
+>>314 string BOOT\ error! \b, FREE-DOS Bootloader
+>499 string KERNEL\ \ SYS
+>>305 string BOOT\ err!\0 \b, Free-DOS Bootloader
+>449 string KERNEL\ \ SYS
+>>319 string BOOT\ error! \b, FREE-DOS 0.5 Bootloader
+>125 string Loading\ FreeDOS...\r
+>>311 string BOOT\ error!\r \b, FREE-DOS bootloader
+>>>441 ubyte&0xDF >0
+>>>>441 string x \b %-.6s
+>>>>>447 ubyte&0xDF >0
+>>>>>>447 string x \b%-.1s
+>>>>>>>448 ubyte&0xDF >0
+>>>>>>>>448 string x \b%-.1s
+>>>>449 ubyte&0xDF >0
+>>>>>449 string x \b.%-.3s
+>124 string FreeDOS\0
+>>331 string \ err\0 \b, FREE-DOS BETa 0.9 Bootloader
+# DOS names like KERNEL.SYS,KERNEL16.SYS,KERNEL32.SYS,METAKERN.SYS are 8 right space padded bytes+3 bytes
+>>>497 ubyte&0xDF >0
+>>>>497 string x \b %-.6s
+>>>>>503 ubyte&0xDF >0
+>>>>>>503 string x \b%-.1s
+>>>>>>>504 ubyte&0xDF >0
+>>>>>>>>504 string x \b%-.1s
+>>>>505 ubyte&0xDF >0
+>>>>>505 string x \b.%-.3s
+>>333 string \ err\0 \b, FREE-DOS BEta 0.9 Bootloader
+>>>497 ubyte&0xDF >0
+>>>>497 string x \b %-.6s
+>>>>>503 ubyte&0xDF >0
+>>>>>>503 string x \b%-.1s
+>>>>>>>504 ubyte&0xDF >0
+>>>>>>>>504 string x \b%-.1s
+>>>>505 ubyte&0xDF >0
+>>>>>505 string x \b.%-.3s
+>>334 string \ err\0 \b, FREE-DOS Beta 0.9 Bootloader
+>>>497 ubyte&0xDF >0
+>>>>497 string x \b %-.6s
+>>>>>503 ubyte&0xDF >0
+>>>>>>503 string x \b%-.1s
+>>>>>>>504 ubyte&0xDF >0
+>>>>>>>>504 string x \b%-.1s
+>>>>505 ubyte&0xDF >0
+>>>>>505 string x \b.%-.3s
+>336 string Error!\
+>>343 string Hit\ a\ key\ to\ reboot. \b, FREE-DOS Beta 0.9sr1 Bootloader
+>>>497 ubyte&0xDF >0
+>>>>497 string x \b %-.6s
+>>>>>503 ubyte&0xDF >0
+>>>>>>503 string x \b%-.1s
+>>>>>>>504 ubyte&0xDF >0
+>>>>>>>>504 string x \b%-.1s
+>>>>505 ubyte&0xDF >0
+>>>>>505 string x \b.%-.3s
+# loader end
+>0 string \0\0\0\0 \b, extended partition table
+# JuMP short bootcodeoffset NOP assembler instructions will usually be EB xx 90
+# older drives may use E9 xx xx
+>0 lelong&0x009000EB 0x009000EB
+>0 lelong&0x000000E9 0x000000E9
+>>1 ubyte >37 \b, code offset 0x%x
+# mtools-3.9.8/msdos.h
+# usual values are marked with comments to get only informations of strange FAT systems
+# valid sectorsize are from 32 to 2048
+>>>11 uleshort <2049
+>>>>11 uleshort >31
+>>>>>3 string >\0 \b, OEM-ID "%8.8s"
+>>>>>11 uleshort >512 \b, Bytes/sector %u
+#>>>>>11 uleshort =512 \b, Bytes/sector %u=512 (usual)
+>>>>>11 uleshort <512 \b, Bytes/sector %u
+>>>>>13 ubyte >1 \b, sectors/cluster %u
+#>>>>>13 ubyte =1 \b, sectors/cluster %u (usual on Floppies)
+>>>>>14 uleshort >32 \b, reserved sectors %u
+#>>>>>14 uleshort =32 \b, reserved sectors %u (usual Fat32)
+#>>>>>14 uleshort >1 \b, reserved sectors %u
+#>>>>>14 uleshort =1 \b, reserved sectors %u (usual FAT12,FAT16)
+>>>>>14 uleshort <1 \b, reserved sectors %u
+>>>>>16 ubyte >2 \b, FATs %u
+#>>>>>16 ubyte =2 \b, FATs %u (usual)
+>>>>>16 ubyte =1 \b, FAT %u
+>>>>>16 ubyte >0
+>>>>>17 uleshort >0 \b, root entries %u
+#>>>>>17 uleshort =0 \b, root entries %u=0 (usual Fat32)
+>>>>>19 uleshort >0 \b, sectors %u (volumes <=32 MB)
+#>>>>>19 uleshort =0 \b, sectors %u=0 (usual Fat32)
+>>>>>21 ubyte >0xF0 \b, Media descriptor 0x%x
+#>>>>>21 ubyte =0xF0 \b, Media descriptor 0x%x (usual floppy)
+>>>>>21 ubyte <0xF0 \b, Media descriptor 0x%x
+>>>>>22 uleshort >0 \b, sectors/FAT %u
+#>>>>>22 uleshort =0 \b, sectors/FAT %u=0 (usual Fat32)
+>>>>>26 ubyte >2 \b, heads %u
+#>>>>>26 ubyte =2 \b, heads %u (usual floppy)
+>>>>>26 ubyte =1 \b, heads %u
+>>>>>28 ulelong >0 \b, hidden sectors %u
+#>>>>>28 ulelong =0 \b, hidden sectors %u (usual floppy)
+>>>>>32 ulelong >0 \b, sectors %u (volumes > 32 MB)
+#>>>>>32 ulelong =0 \b, sectors %u (volumes > 32 MB)
+# FAT<32 specific
+# NOT le FAT3=NOT 3TAF=0xCCABBEB9
+>>>>>82 ulelong&0xCCABBEB9 >0
+>>>>>>36 ubyte >0x80 \b, physical drive 0x%x
+#>>>>>>36 ubyte =0x80 \b, physical drive 0x%x=0x80 (usual harddisk)
+>>>>>>36 ubyte&0x7F >0 \b, physical drive 0x%x
+#>>>>>>36 ubyte =0 \b, physical drive 0x%x=0 (usual floppy)
+>>>>>>37 ubyte >0 \b, reserved 0x%x
+#>>>>>>37 ubyte =0 \b, reserved 0x%x
+>>>>>>38 ubyte >0x29 \b, dos < 4.0 BootSector (0x%x)
+>>>>>>38 ubyte <0x29 \b, dos < 4.0 BootSector (0x%x)
+>>>>>>38 ubyte =0x29
+>>>>>>>39 ulelong x \b, serial number 0x%x
+>>>>>>>43 string <NO\ NAME \b, label: "%11.11s"
+>>>>>>>43 string >NO\ NAME \b, label: "%11.11s"
+>>>>>>>43 string =NO\ NAME \b, unlabeled
+>>>>>>54 string FAT \b, FAT
+>>>>>>>54 string FAT12 \b (12 bit)
+>>>>>>>54 string FAT16 \b (16 bit)
+# FAT32 specific
+>>>>>82 string FAT32 \b, FAT (32 bit)
+>>>>>>36 ulelong x \b, sectors/FAT %u
+>>>>>>40 uleshort >0 \b, extension flags %u
+#>>>>>>40 uleshort =0 \b, extension flags %u
+>>>>>>42 uleshort >0 \b, fsVersion %u
+#>>>>>>42 uleshort =0 \b, fsVersion %u (usual)
+>>>>>>44 ulelong >2 \b, rootdir cluster %u
+#>>>>>>44 ulelong =2 \b, rootdir cluster %u
+#>>>>>>44 ulelong =1 \b, rootdir cluster %u
+>>>>>>48 uleshort >1 \b, infoSector %u
+#>>>>>>48 uleshort =1 \b, infoSector %u (usual)
+>>>>>>48 uleshort <1 \b, infoSector %u
+>>>>>>50 uleshort >6 \b, Backup boot sector %u
+#>>>>>>50 uleshort =6 \b, Backup boot sector %u (usual)
+>>>>>>50 uleshort <6 \b, Backup boot sector %u
+>>>>>>54 ulelong >0 \b, reserved1 0x%x
+>>>>>>58 ulelong >0 \b, reserved2 0x%x
+>>>>>>62 ulelong >0 \b, reserved3 0x%x
+# same structure as FAT1X
+>>>>>>64 ubyte >0x80 \b, physical drive 0x%x
+#>>>>>>64 ubyte =0x80 \b, physical drive 0x%x=80 (usual harddisk)
+>>>>>>64 ubyte&0x7F >0 \b, physical drive 0x%x
+#>>>>>>64 ubyte =0 \b, physical drive 0x%x=0 (usual floppy)
+>>>>>>65 ubyte >0 \b, reserved 0x%x
+>>>>>>66 ubyte >0x29 \b, dos < 4.0 BootSector (0x%x)
+>>>>>>66 ubyte <0x29 \b, dos < 4.0 BootSector (0x%x)
+>>>>>>66 ubyte =0x29
+>>>>>>>67 ulelong x \b, serial number 0x%x
+>>>>>>>71 string <NO\ NAME \b, label: "%11.11s"
+>>>>>>71 string >NO\ NAME \b, label: "%11.11s"
+>>>>>>71 string =NO\ NAME \b, unlabeled
+### FATs end
+>0x200 lelong 0x82564557 \b, BSD disklabel
+# FATX
+0 string FATX FATX filesystem data
+
+
+# Minix filesystems - Juan Cespedes <cespedes@debian.org>
+0x410 leshort 0x137f Minix filesystem
+0x410 beshort 0x137f Minix filesystem (big endian),
+>0x402 beshort !0 \b, %d zones
+>0x1e string minix \b, bootable
+0x410 leshort 0x138f Minix filesystem, 30 char names
+0x410 leshort 0x2468 Minix filesystem, version 2
+0x410 leshort 0x2478 Minix filesystem, version 2, 30 char names
+
+# romfs filesystems - Juan Cespedes <cespedes@debian.org>
+0 string -rom1fs-\0 romfs filesystem, version 1
+>8 belong x %d bytes,
+>16 string x named %s.
+
+# netboot image - Juan Cespedes <cespedes@debian.org>
+0 lelong 0x1b031336L Netboot image,
+>4 lelong&0xFFFFFF00 0
+>>4 lelong&0x100 0x000 mode 2
+>>4 lelong&0x100 0x100 mode 3
+>4 lelong&0xFFFFFF00 !0 unknown mode
+
+0x18b string OS/2 OS/2 Boot Manager
+
+9564 lelong 0x00011954 Unix Fast File system (little-endian),
+>8404 string x last mounted on %s,
+#>9504 ledate x last checked at %s,
+>8224 ledate x last written at %s,
+>8401 byte x clean flag %d,
+>8228 lelong x number of blocks %d,
+>8232 lelong x number of data blocks %d,
+>8236 lelong x number of cylinder groups %d,
+>8240 lelong x block size %d,
+>8244 lelong x fragment size %d,
+>8252 lelong x minimum percentage of free blocks %d,
+>8256 lelong x rotational delay %dms,
+>8260 lelong x disk rotational speed %drps,
+>8320 lelong 0 TIME optimization
+>8320 lelong 1 SPACE optimization
+
+9564 belong 0x00011954 Unix Fast File system (big-endian),
+>7168 long 0x4c41424c Apple UFS Volume
+>>7186 string x named %s,
+>>7176 belong x volume label version %d,
+>>7180 bedate x created on %s,
+>8404 string x last mounted on %s,
+#>9504 bedate x last checked at %s,
+>8224 bedate x last written at %s,
+>8401 byte x clean flag %d,
+>8228 belong x number of blocks %d,
+>8232 belong x number of data blocks %d,
+>8236 belong x number of cylinder groups %d,
+>8240 belong x block size %d,
+>8244 belong x fragment size %d,
+>8252 belong x minimum percentage of free blocks %d,
+>8256 belong x rotational delay %dms,
+>8260 belong x disk rotational speed %drps,
+>8320 belong 0 TIME optimization
+>8320 belong 1 SPACE optimization
+
+# ext2/ext3 filesystems - Andreas Dilger <adilger@turbolabs.com>
+0x438 leshort 0xEF53 Linux
+>0x44c lelong x rev %d
+>0x43e leshort x \b.%d
+>0x45c lelong ^0x0000004 ext2 filesystem data
+>>0x43a leshort ^0x0000001 (mounted or unclean)
+>0x45c lelong &0x0000004 ext3 filesystem data
+>>0x460 lelong &0x0000004 (needs journal recovery)
+>0x43a leshort &0x0000002 (errors)
+>0x460 lelong &0x0000001 (compressed)
+#>0x460 lelong &0x0000002 (filetype)
+#>0x464 lelong &0x0000001 (sparse_super)
+>0x464 lelong &0x0000002 (large files)
+
+# SGI disk labels - Nathan Scott <nathans@debian.org>
+0 belong 0x0BE5A941 SGI disk label (volume header)
+
+# SGI XFS filesystem - Nathan Scott <nathans@debian.org>
+0 belong 0x58465342 SGI XFS filesystem data
+>0x4 belong x (blksz %d,
+>0x68 beshort x inosz %d,
+>0x64 beshort ^0x2004 v1 dirs)
+>0x64 beshort &0x2004 v2 dirs)
+
+############################################################################
+# Minix-ST kernel floppy
+0x800 belong 0x46fc2700 Atari-ST Minix kernel image
+>19 string \240\5\371\5\0\011\0\2\0 \b, 720k floppy
+>19 string \320\2\370\5\0\011\0\1\0 \b, 360k floppy
+
+############################################################################
+# Hmmm, is this a better way of detecting _standard_ floppy images ?
+19 string \320\2\360\3\0\011\0\1\0 DOS floppy 360k
+>0x1FE leshort 0xAA55 \b, x86 hard disk boot sector
+19 string \240\5\371\3\0\011\0\2\0 DOS floppy 720k
+>0x1FE leshort 0xAA55 \b, x86 hard disk boot sector
+19 string \100\013\360\011\0\022\0\2\0 DOS floppy 1440k
+>0x1FE leshort 0xAA55 \b, x86 hard disk boot sector
+
+19 string \240\5\371\5\0\011\0\2\0 DOS floppy 720k, IBM
+>0x1FE leshort 0xAA55 \b, x86 hard disk boot sector
+19 string \100\013\371\5\0\011\0\2\0 DOS floppy 1440k, mkdosfs
+>0x1FE leshort 0xAA55 \b, x86 hard disk boot sector
+
+19 string \320\2\370\5\0\011\0\1\0 Atari-ST floppy 360k
+19 string \240\5\371\5\0\011\0\2\0 Atari-ST floppy 720k
+
+# Valid media descriptor bytes for MS-DOS:
+#
+# Byte Capacity Media Size and Type
+# -------------------------------------------------
+#
+# F0 2.88 MB 3.5-inch, 2-sided, 36-sector
+# F0 1.44 MB 3.5-inch, 2-sided, 18-sector
+# F9 720K 3.5-inch, 2-sided, 9-sector
+# F9 1.2 MB 5.25-inch, 2-sided, 15-sector
+# FD 360K 5.25-inch, 2-sided, 9-sector
+# FF 320K 5.25-inch, 2-sided, 8-sector
+# FC 180K 5.25-inch, 1-sided, 9-sector
+# FE 160K 5.25-inch, 1-sided, 8-sector
+# FE 250K 8-inch, 1-sided, single-density
+# FD 500K 8-inch, 2-sided, single-density
+# FE 1.2 MB 8-inch, 2-sided, double-density
+# F8 ----- Fixed disk
+#
+# FC xxxK Apricot 70x1x9 boot disk.
+#
+# Originally a bitmap:
+# xxxxxxx0 Not two sided
+# xxxxxxx1 Double sided
+# xxxxxx0x Not 8 SPT
+# xxxxxx1x 8 SPT
+# xxxxx0xx Not Removable drive
+# xxxxx1xx Removable drive
+# 11111xxx Must be one.
+#
+# But now it's rather random:
+# 111111xx Low density disk
+# 00 SS, Not 8 SPT
+# 01 DS, Not 8 SPT
+# 10 SS, 8 SPT
+# 11 DS, 8 SPT
+#
+# 11111001 Double density 3½ floppy disk, high density 5¼
+# 11110000 High density 3½ floppy disk
+# 11111000 Hard disk any format
+#
+
+# CDROM Filesystems
+32769 string CD001 ISO 9660 CD-ROM filesystem data
+# "application id" which appears to be used as a volume label
+>32808 string >\0 '%s'
+>34816 string \000CD001\001EL\ TORITO\ SPECIFICATION (bootable)
+37633 string CD001 ISO 9660 CD-ROM filesystem data (raw 2352 byte sectors)
+32776 string CDROM High Sierra CD-ROM filesystem data
+
+# cramfs filesystem - russell@coker.com.au
+0 lelong 0x28cd3d45 Linux Compressed ROM File System data, little endian
+>4 lelong x size %d
+>8 lelong &1 version #2
+>8 lelong &2 sorted_dirs
+>8 lelong &4 hole_support
+>32 lelong x CRC 0x%x,
+>36 lelong x edition %d,
+>40 lelong x %d blocks,
+>44 lelong x %d files
+
+0 belong 0x28cd3d45 Linux Compressed ROM File System data, big endian
+>4 belong x size %d
+>8 belong &1 version #2
+>8 belong &2 sorted_dirs
+>8 belong &4 hole_support
+>32 belong x CRC 0x%x,
+>36 belong x edition %d,
+>40 belong x %d blocks,
+>44 belong x %d files
+
+# reiserfs - russell@coker.com.au
+0x10034 string ReIsErFs ReiserFS V3.5
+0x10034 string ReIsEr2Fs ReiserFS V3.6
+>0x1002c leshort x block size %d
+>0x10032 leshort &2 (mounted or unclean)
+>0x10000 lelong x num blocks %d
+>0x10040 lelong 1 tea hash
+>0x10040 lelong 2 yura hash
+>0x10040 lelong 3 r5 hash
+
+# JFFS - russell@coker.com.au
+0 lelong 0x34383931 Linux Journalled Flash File system, little endian
+0 belong 0x34383931 Linux Journalled Flash File system, big endian
+
+# EST flat binary format (which isn't, but anyway)
+# From: Mark Brown <broonie@sirena.org.uk>
+0 string ESTFBINR EST flat binary
+
+# Aculab VoIP firmware
+# From: Mark Brown <broonie@sirena.org.uk>
+0 string VoIP\ Startup\ and Aculab VoIP firmware
+>35 string x format %s
+
+# PPCBoot image file
+# From: Mark Brown <broonie@sirena.org.uk>
+0 belong 0x27051956 PPCBoot image
+>4 string PPCBoot
+>>12 string x version %s
+
+# JFFS2 file system
+0 leshort 0x1984 Linux old jffs2 filesystem data little endian
+0 lelong 0xe0011985 Linux jffs2 filesystem data little endian
+
+# Squashfs
+0 string sqsh Squashfs filesystem, big endian,
+>28 beshort x version %d.
+>30 beshort x \b%d,
+>8 belong x %d bytes,
+>4 belong x %d inodes,
+>28 beshort <2
+>>32 beshort x blocksize: %d bytes,
+>28 beshort >1
+>>51 belong x blocksize: %d bytes,
+>39 bedate x created: %s
+0 string hsqs Squashfs filesystem, little endian,
+>28 leshort x version %d.
+>30 leshort x \b%d,
+>8 lelong x %d bytes,
+>4 lelong x %d inodes,
+>28 leshort <2
+>>32 leshort x blocksize: %d bytes,
+>28 leshort >1
+>>51 lelong x blocksize: %d bytes,
+>39 ledate x created: %s
+
+# AFS Dump Magic
+# From: Ty Sarna <tsarna@sarna.org>
+0 string \x01\xb3\xa1\x13\x22 AFS Dump
+>&0 belong x (v%d)
+>>&0 byte 0x76
+>>>&0 belong x Vol %d,
+>>>>&0 byte 0x6e
+>>>>>&0 string x %s
+>>>>>>&1 byte 0x74
+>>>>>>>&0 beshort 2
+>>>>>>>>&4 bedate x on: %s
+>>>>>>>>&0 bedate =0 full dump
+>>>>>>>>&0 bedate !0 incremental since: %s
diff --git a/packages/gcc/gcc-fpu.inc b/packages/gcc/gcc-fpu.inc
new file mode 100644
index 0000000000..bb03d95567
--- /dev/null
+++ b/packages/gcc/gcc-fpu.inc
@@ -0,0 +1,6 @@
+
+def get_gcc_fpu_setting(bb, d):
+ if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
+ return "--with-float=soft"
+ return ""
+
diff --git a/packages/gcc/gcc3-build.inc b/packages/gcc/gcc3-build.inc
index 6260a51533..2924f0f9dd 100644
--- a/packages/gcc/gcc3-build.inc
+++ b/packages/gcc/gcc3-build.inc
@@ -54,10 +54,7 @@ ARCH_FLAGS_FOR_TARGET_slugos = "${TARGET_CC_ARCH}"
ARCH_FLAGS_FOR_TARGET_unslung = "${TARGET_CC_ARCH}"
EXTRA_OEMAKE += "ARCH_FLAGS_FOR_TARGET='${ARCH_FLAGS_FOR_TARGET}'"
-def get_gcc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--with-float=soft"
- return ""
+require gcc-fpu.inc
python __anonymous () {
import bb, re
diff --git a/packages/gcc/gcc_3.3.3.bb b/packages/gcc/gcc_3.3.3.bb
index 8852f81def..0c237a9166 100644
--- a/packages/gcc/gcc_3.3.3.bb
+++ b/packages/gcc/gcc_3.3.3.bb
@@ -124,10 +124,7 @@ EXTRA_OECONF_uclibc = "--disable-__cxa_atexit"
EXTRA_OECONF_glibc = "--enable-__cxa_atexit"
EXTRA_OECONF += "${@get_gcc_fpu_setting(bb, d)}"
-def get_gcc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--with-float=soft"
- return ""
+require gcc-fpu.inc
python __anonymous () {
import bb, re
diff --git a/packages/gcc/gcc_3.3.4.bb b/packages/gcc/gcc_3.3.4.bb
index 49f14cd888..bb52fa6a1f 100644
--- a/packages/gcc/gcc_3.3.4.bb
+++ b/packages/gcc/gcc_3.3.4.bb
@@ -103,10 +103,7 @@ EXTRA_OECONF_uclibc = "--disable-__cxa_atexit"
EXTRA_OECONF_glibc = "--enable-__cxa_atexit"
EXTRA_OECONF += "${@get_gcc_fpu_setting(bb, d)}"
-def get_gcc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--with-float=soft"
- return ""
+require gcc-fpu.inc
python __anonymous () {
import bb, re
diff --git a/packages/gcc/gcc_4.1.1.bb b/packages/gcc/gcc_4.1.1.bb
index cd93cab7e2..9c0bd7baac 100644
--- a/packages/gcc/gcc_4.1.1.bb
+++ b/packages/gcc/gcc_4.1.1.bb
@@ -34,6 +34,7 @@ SRC_URI = "http://ftp.gnu.org/pub/gnu/gcc/gcc-4.1.1/gcc-4.1.1.tar.bz2 \
SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 "
#Set the fortran bits
+# 'fortran' or '', not 'f77' like gcc3 had
FORTRAN = ""
HAS_GFORTRAN = "no"
HAS_G2C = "no"
@@ -41,7 +42,7 @@ HAS_G2C = "no"
#Set the java bits
JAVA_arm = ""
-LANGUAGES = "c,c++"
+LANGUAGES = "c,c++${FORTRAN}${JAVA}"
require gcc3-build.inc
diff --git a/packages/geoclue/.mtn2git_empty b/packages/geoclue/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/geoclue/.mtn2git_empty
diff --git a/packages/geoclue/geoclue_svn.bb b/packages/geoclue/geoclue_svn.bb
new file mode 100644
index 0000000000..e07b01d2ca
--- /dev/null
+++ b/packages/geoclue/geoclue_svn.bb
@@ -0,0 +1,29 @@
+DESCRIPTION = "GeoClue is a project that provide all kinds of geography information to an application"
+HOMEPAGE = "http://live.gnome.org/GeoClue"
+
+DEPENDS = "gpsd gnome-panel libsoup dbus-glib"
+
+PV = "0.0+svn${SRCDATE}"
+
+inherit autotools pkgconfig
+
+SRC_URI = "svn://svn.foinse-project.org/geoclue;module=trunk;proto=http"
+
+S = "${WORKDIR}/trunk"
+
+do_install_append() {
+ mkdir -p ${D}/usr/share/
+ cp -pPr ${D}${STAGING_DATADIR}/* ${D}/usr/share
+ rm -rf ${D}${STAGING_DATADIR}/
+}
+
+PACKAGES =+ "geoclue-applet"
+
+FILES_geoclue-applet += " \
+ ${libdir}/bonobo/servers/* \
+ ${libdir}/gnome-panel/*"
+
+
+FILES_${PN} += " \
+ ${libdir}/gnome-panel/* \
+ ${datadir}/dbus-1"
diff --git a/packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch b/packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch
new file mode 100644
index 0000000000..8b36960b04
--- /dev/null
+++ b/packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch
@@ -0,0 +1,94 @@
+From libc-ports-return-430-listarch-libc-ports=sources dot redhat dot com at sourceware dot org Mon Aug 21 20:08:57 2006
+Return-Path: <libc-ports-return-430-listarch-libc-ports=sources dot redhat dot com at sourceware dot org>
+Delivered-To: listarch-libc-ports at sources dot redhat dot com
+Received: (qmail 9913 invoked by alias); 21 Aug 2006 20:08:56 -0000
+Received: (qmail 9893 invoked by uid 22791); 21 Aug 2006 20:08:53 -0000
+X-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,TW_HM,TW_SG,TW_SN
+X-Spam-Check-By: sourceware.org
+Received: from nevyn.them.org (HELO nevyn.them.org) (66.93.172.17) by sourceware.org (qpsmtpd/0.31.1) with ESMTP; Mon, 21 Aug 2006 20:08:44 +0000
+Received: from drow by nevyn.them.org with local (Exim 4.54) id 1GFG4f-0007gO-TW for libc-ports@sourceware.org; Mon, 21 Aug 2006 16:08:42 -0400
+Date: Mon, 21 Aug 2006 16:08:41 -0400
+From: Daniel Jacobowitz <drow at false dot org>
+To: libc-ports at sourceware dot org
+Subject: ARM IPC fix
+Message-ID: <20060821200841.GA29502@nevyn.them.org>
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline
+User-Agent: Mutt/1.5.11+cvs20060403
+X-IsSubscribed: yes
+Mailing-List: contact libc-ports-help at sourceware dot org; run by ezmlm
+Precedence: bulk
+List-Subscribe: <mailto:libc-ports-subscribe at sourceware dot org>
+List-Post: <mailto:libc-ports at sourceware dot org>
+List-Help: <mailto:libc-ports-help at sourceware dot org>, <http://sourceware dot org/lists dot html#faqs>
+Sender: libc-ports-owner at sourceware dot org
+Delivered-To: mailing list libc-ports at sourceware dot org
+
+We can't treat msgctl as a real syscall; if we don't add __IPC_64, we'll get
+a mismatched type for ipc_perm. Fixed by using the Alpha implementation,
+which is similar to the standard i386 implementation but doesn't use
+the multiplexer syscall.
+
+--
+Daniel Jacobowitz
+CodeSourcery
+
+2006-08-21 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/arm/eabi/syscalls.list: Remove msgctl,
+ shmctl, and semctl.
+ * sysdeps/unix/sysv/linux/arm/eabi/semctl.c,
+ sysdeps/unix/sysv/linux/arm/eabi/shmctl.c,
+ sysdeps/unix/sysv/linux/arm/eabi/msgctl.c: New files.
+
+Index: a/ports/sysdeps/unix/sysv/linux/arm/eabi/syscalls.list
+===================================================================
+--- a/ports/sysdeps/unix/sysv/linux/arm/eabi/syscalls.list (revision 147209)
++++ b/ports/sysdeps/unix/sysv/linux/arm/eabi/syscalls.list (working copy)
+@@ -1,18 +1,16 @@
+ # File name Caller Syscall name # args Strong name Weak names
+
+-# semaphore and shm system calls
+-msgctl - msgctl i:iip __msgctl msgctl
++# Semaphore and shm system calls. msgctl, shmctl, and semctl have C
++# wrappers (to set __IPC_64).
+ msgget - msgget i:ii __msgget msgget
+ msgrcv - msgrcv Ci:ibnii __msgrcv msgrcv
+ msgsnd - msgsnd Ci:ibni __msgsnd msgsnd
+ shmat - shmat i:ipi __shmat shmat
+-shmctl - shmctl i:iip __shmctl shmctl
+ shmdt - shmdt i:s __shmdt shmdt
+ shmget - shmget i:iii __shmget shmget
+ semop - semop i:ipi __semop semop
+ semtimedop - semtimedop i:ipip semtimedop
+ semget - semget i:iii __semget semget
+-semctl - semctl i:iiii __semctl semctl
+
+ # proper socket implementations:
+ accept - accept Ci:iBN __libc_accept __accept accept
+
+Property changes on: sysdeps/unix/sysv/linux/arm/eabi/syscalls.list
+___________________________________________________________________
+Name: svn:mime-type
+ - application/octet-stream
+
+Index: a/ports/sysdeps/unix/sysv/linux/arm/eabi/semctl.c
+===================================================================
+--- a/ports/sysdeps/unix/sysv/linux/arm/eabi/semctl.c (revision 0)
++++ b/ports/sysdeps/unix/sysv/linux/arm/eabi/semctl.c (revision 0)
+@@ -0,0 +1 @@
++#include <sysdeps/unix/sysv/linux/alpha/semctl.c>
+Index: a/ports/sysdeps/unix/sysv/linux/arm/eabi/msgctl.c
+===================================================================
+--- a/ports/sysdeps/unix/sysv/linux/arm/eabi/msgctl.c (revision 0)
++++ b/ports/sysdeps/unix/sysv/linux/arm/eabi/msgctl.c (revision 0)
+@@ -0,0 +1 @@
++#include <sysdeps/unix/sysv/linux/alpha/msgctl.c>
+Index: a/ports/sysdeps/unix/sysv/linux/arm/eabi/shmctl.c
+===================================================================
+--- a/ports/sysdeps/unix/sysv/linux/arm/eabi/shmctl.c (revision 0)
++++ b/ports/sysdeps/unix/sysv/linux/arm/eabi/shmctl.c (revision 0)
+@@ -0,0 +1 @@
++#include <sysdeps/unix/sysv/linux/alpha/shmctl.c>
+
diff --git a/packages/glibc/glibc_2.2.5.bb b/packages/glibc/glibc_2.2.5.bb
index 9c7765f1ea..10e2e2e351 100644
--- a/packages/glibc/glibc_2.2.5.bb
+++ b/packages/glibc/glibc_2.2.5.bb
@@ -129,11 +129,6 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
-def get_glibc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--without-fp"
- return ""
-
glibc_do_unpack () {
mv ${WORKDIR}/linuxthreads ${WORKDIR}/linuxthreads_db ${S}/
}
diff --git a/packages/glibc/glibc_2.3.2.bb b/packages/glibc/glibc_2.3.2.bb
index f1c9c1ce69..9f42e00e35 100644
--- a/packages/glibc/glibc_2.3.2.bb
+++ b/packages/glibc/glibc_2.3.2.bb
@@ -129,11 +129,6 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
-def get_glibc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--without-fp"
- return ""
-
glibc_do_unpack () {
mv "${WORKDIR}/linuxthreads" "${WORKDIR}/linuxthreads_db" "${S}/"
}
diff --git a/packages/glibc/glibc_2.3.3+cvs20041128.bb b/packages/glibc/glibc_2.3.3+cvs20041128.bb
index 1d87f0e37c..a6950c558d 100644
--- a/packages/glibc/glibc_2.3.3+cvs20041128.bb
+++ b/packages/glibc/glibc_2.3.3+cvs20041128.bb
@@ -73,11 +73,6 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
-def get_glibc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--without-fp"
- return ""
-
do_configure () {
# override this function to avoid the autoconf/automake/aclocal/autoheader
# calls for now
diff --git a/packages/glibc/glibc_2.3.3.bb b/packages/glibc/glibc_2.3.3.bb
index 1c0c0f9124..22ae2c5c38 100644
--- a/packages/glibc/glibc_2.3.3.bb
+++ b/packages/glibc/glibc_2.3.3.bb
@@ -74,11 +74,6 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
-def get_glibc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--without-fp"
- return ""
-
glibc_do_unpack () {
mv "${WORKDIR}/linuxthreads" "${WORKDIR}/linuxthreads_db" "${S}/"
}
diff --git a/packages/glibc/glibc_2.3.5+cvs20050627.bb b/packages/glibc/glibc_2.3.5+cvs20050627.bb
index 51039fd3c0..833370740f 100644
--- a/packages/glibc/glibc_2.3.5+cvs20050627.bb
+++ b/packages/glibc/glibc_2.3.5+cvs20050627.bb
@@ -84,11 +84,6 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
-def get_glibc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--without-fp"
- return ""
-
do_munge() {
# Integrate ports into tree
mv ${WORKDIR}/ports ${S}
diff --git a/packages/glibc/glibc_2.4.bb b/packages/glibc/glibc_2.4.bb
index dc844ea1d2..702ea4b8fb 100644
--- a/packages/glibc/glibc_2.4.bb
+++ b/packages/glibc/glibc_2.4.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://www.gnu.org/software/libc/libc.html"
LICENSE = "LGPL"
SECTION = "libs"
PRIORITY = "required"
-PR = "r10"
+PR = "r11"
#add the hosts that are confirmed to be working to COMPATIBLE_HOSTi
COMPATIBLE_HOST = '(i.86.*-linux|sh.*-linux)'
@@ -63,6 +63,7 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.4.tar.bz2 \
file://glibc-2.4-openat-3.patch;patch=1 \
file://fixup-aeabi-syscalls.patch;patch=1 \
file://zecke-sane-readelf.patch;patch=1 \
+ file://arm_eabi_ipc_fix.patch;patch=1 \
file://generic-bits_select.h \
file://generic-bits_types.h \
file://generic-bits_typesizes.h \
@@ -90,11 +91,6 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
-def get_glibc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--without-fp"
- return ""
-
do_munge() {
# Integrate ports and libidn into tree
mv ${WORKDIR}/glibc-ports-${PV} ${S}/ports
diff --git a/packages/glibc/glibc_2.5.bb b/packages/glibc/glibc_2.5.bb
index 0afadadb60..3523a3fa8f 100644
--- a/packages/glibc/glibc_2.5.bb
+++ b/packages/glibc/glibc_2.5.bb
@@ -86,11 +86,6 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
-def get_glibc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--without-fp"
- return ""
-
do_munge() {
# Integrate ports and libidn into tree
mv ${WORKDIR}/glibc-ports-${PV} ${S}/ports
diff --git a/packages/glibc/glibc_cvs.bb b/packages/glibc/glibc_cvs.bb
index 396e0d535b..26f03ab0c1 100644
--- a/packages/glibc/glibc_cvs.bb
+++ b/packages/glibc/glibc_cvs.bb
@@ -74,11 +74,6 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
-def get_glibc_fpu_setting(bb, d):
- if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
- return "--without-fp"
- return ""
-
do_munge() {
# Integrate ports into tree
mv ${WORKDIR}/ports ${S}
diff --git a/packages/gmp/gmp-4.2.1/.mtn2git_empty b/packages/gmp/gmp-4.2.1/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/gmp/gmp-4.2.1/.mtn2git_empty
diff --git a/packages/gmp/gmp-4.2.1/amd64.patch b/packages/gmp/gmp-4.2.1/amd64.patch
new file mode 100644
index 0000000000..67be9dd350
--- /dev/null
+++ b/packages/gmp/gmp-4.2.1/amd64.patch
@@ -0,0 +1,14 @@
+--- gmp-4.1.4/longlong.h.orig 2004-04-22 00:34:28.000000000 +0200
++++ gmp-4.1.4/longlong.h 2005-07-18 01:13:06.000000000 +0200
+@@ -738,8 +738,10 @@
+ count is only an int. */
+ #define count_trailing_zeros(count, x) \
+ do { \
++ UDItype __cbtmp; \
+ ASSERT ((x) != 0); \
+- __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \
++ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \
++ (count) = __cbtmp; \
+ } while (0)
+ #endif /* x86_64 */
+
diff --git a/packages/gmp/gmp-4.2.1/configure.patch b/packages/gmp/gmp-4.2.1/configure.patch
new file mode 100644
index 0000000000..08f2172479
--- /dev/null
+++ b/packages/gmp/gmp-4.2.1/configure.patch
@@ -0,0 +1,195 @@
+ acinclude.m4 | 26 ++++++++++++++------------
+ configure.in | 24 +++++++++---------------
+ 2 files changed, 23 insertions(+), 27 deletions(-)
+
+Index: gmp-4.2.1/acinclude.m4
+===================================================================
+--- gmp-4.2.1.orig/acinclude.m4 2006-05-04 17:39:01.000000000 +0100
++++ gmp-4.2.1/acinclude.m4 2006-11-06 20:36:14.000000000 +0000
+@@ -32,20 +32,20 @@ dnl a_out.exe - OpenVMS DEC C called
+ dnl conftest.exe - various DOS compilers
+
+
+-define(IA64_PATTERN,
++define([IA64_PATTERN],
+ [[ia64*-*-* | itanium-*-* | itanium2-*-*]])
+
+ dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all
+ dnl of which config.sub accepts. (Though none of which are likely to work
+ dnl with GMP.)
+ dnl
+-define(M68K_PATTERN,
++define([M68K_PATTERN],
+ [[m68k-*-* | m68[0-9][0-9][0-9]-*-*]])
+
+-define(POWERPC64_PATTERN,
++define([POWERPC64_PATTERN],
+ [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]])
+
+-define(X86_PATTERN,
++define([X86_PATTERN],
+ [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-*]])
+
+
+@@ -64,7 +64,7 @@ dnl x86 -> x86
+ dnl x86/k6 -> k6
+ dnl x86/k6/mmx -> k6_mmx
+
+-define(GMP_FAT_SUFFIX,
++define([GMP_FAT_SUFFIX],
+ [[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]])
+
+
+@@ -73,7 +73,7 @@ dnl ----------------------------------
+ dnl Emit code to remove any occurance of ITEM from $LISTVAR. ITEM can be a
+ dnl shell expression like $foo if desired.
+
+-define(GMP_REMOVE_FROM_LIST,
++define([GMP_REMOVE_FROM_LIST],
+ [remove_from_list_tmp=
+ for remove_from_list_i in $[][$1]; do
+ if test $remove_from_list_i = [$2]; then :;
+@@ -89,12 +89,12 @@ dnl GMP_STRIP_PATH(subdir)
+ dnl ----------------------
+ dnl Strip entries */subdir from $path and $fat_path.
+
+-define(GMP_STRIP_PATH,
++define([GMP_STRIP_PATH],
+ [GMP_STRIP_PATH_VAR(path, [$1])
+ GMP_STRIP_PATH_VAR(fat_path, [$1])
+ ])
+
+-define(GMP_STRIP_PATH_VAR,
++define([GMP_STRIP_PATH_VAR],
+ [tmp_path=
+ for i in $[][$1]; do
+ case $i in
+@@ -115,7 +115,7 @@ dnl
+ dnl Dummy values for __GMP_BITS_PER_MP_LIMB and GMP_LIMB_BITS are enough
+ dnl for all current configure-time uses of gmp.h.
+
+-define(GMP_INCLUDE_GMP_H,
++define([GMP_INCLUDE_GMP_H],
+ [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */
+ #define GMP_NAIL_BITS $GMP_NAIL_BITS
+ #define __GMP_BITS_PER_MP_LIMB 123 /* dummy for GMP_NUMB_BITS etc */
+@@ -131,7 +131,7 @@ dnl Expand at autoconf time to the valu
+ dnl FILE. The regexps here aren't very rugged, but are enough for gmp.
+ dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted.
+
+-define(GMP_HEADER_GETVAL,
++define([GMP_HEADER_GETVAL],
+ [patsubst(patsubst(
+ esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]),
+ [^.*$1[ ]+],[]),
+@@ -145,7 +145,7 @@ dnl The gmp version number, extracted f
+ dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits
+ dnl like 3.0.1 if patchlevel > 0.
+
+-define(GMP_VERSION,
++define([GMP_VERSION],
+ [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl
+ .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl
+ ifelse(m4_eval(GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in) > 0),1,
+@@ -1491,7 +1491,9 @@ esac
+ echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4
+
+ # All CPUs use asm-defs.m4
+-echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i
++echo -n ["include("] >>$gmp_tmpconfigm4i
++echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i
++echo [")"] >>$gmp_tmpconfigm4i
+ ])
+
+
+Index: gmp-4.2.1/configure.in
+===================================================================
+--- gmp-4.2.1.orig/configure.in 2006-04-30 00:31:08.000000000 +0100
++++ gmp-4.2.1/configure.in 2006-11-06 20:39:17.000000000 +0000
+@@ -31,12 +31,6 @@ AC_REVISION($Revision: 1.11 $)
+ AC_PREREQ(2.59)
+ AC_INIT(GNU MP, GMP_VERSION, gmp-bugs@swox.com, gmp)
+ AC_CONFIG_SRCDIR(gmp-impl.h)
+-m4_pattern_forbid([^[ \t]*GMP_])
+-m4_pattern_allow(GMP_LDFLAGS)
+-m4_pattern_allow(GMP_LIMB_BITS)
+-m4_pattern_allow(GMP_MPARAM_H_SUGGEST)
+-m4_pattern_allow(GMP_NAIL_BITS)
+-m4_pattern_allow(GMP_NUMB_BITS)
+
+ # If --target is not used then $target_alias is empty, but if say
+ # "./configure athlon-pc-freebsd3.5" is used, then all three of
+@@ -277,7 +271,7 @@ AH_VERBATIM([HAVE_HOST_CPU_1],
+ # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is
+ # called. User selections of CC etc are respected.
+ #
+-# Care is taken not to use macros like AC_TRY_COMPILE during the GMP
++# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP
+ # pre-testing, since they of course depend on AC_PROG_CC, and also some of
+ # them cache their results, which is not wanted.
+ #
+@@ -369,7 +363,7 @@ abilist="standard"
+ # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring
+ # c89 over cc here. But note that on HP-UX c89 provides a castrated
+ # environment, and would want to be excluded somehow. Maybe
+-# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and
++# already does enough to stick cc into ANSI mode and
+ # we don't need to worry.
+ #
+ cclist="gcc cc"
+@@ -1498,7 +1492,7 @@ esac
+ CFLAGS_or_unset=${CFLAGS-'(unset)'}
+ CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'}
+
+-cat >&AC_FD_CC <<EOF
++cat >&AS_MESSAGE_LOG_FD() <<EOF
+ User:
+ ABI=$ABI
+ CC=$CC
+@@ -1869,7 +1863,6 @@ AC_SUBST(DEFN_LONG_LONG_LIMB)
+
+ # The C compiler and preprocessor, put into ANSI mode if possible.
+ AC_PROG_CC
+-AC_PROG_CC_STDC
+ AC_PROG_CPP
+ GMP_H_ANSI
+
+@@ -1892,11 +1885,11 @@ AC_SUBST(CCAS)
+
+ # The C++ compiler, if desired.
+ want_cxx=no
++AC_PROG_CXX
+ if test $enable_cxx != no; then
+ test_CXXFLAGS=${CXXFLAGS+set}
+- AC_PROG_CXX
+
+- echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC
++ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD()
+ cxxflags_ac_prog_cxx=$CXXFLAGS
+ cxxflags_list=ac_prog_cxx
+
+@@ -2002,7 +1995,7 @@ case $host in
+ esac
+
+
+-cat >&AC_FD_CC <<EOF
++cat >&AS_MESSAGE_LOG_FD() <<EOF
+ Decided:
+ ABI=$ABI
+ CC=$CC
+@@ -3175,7 +3168,7 @@ GMP_FINISH
+ # FIXME: Upcoming version of autoconf/automake may not like broken lines.
+ # Right now automake isn't accepting the new AC_CONFIG_FILES scheme.
+
+-AC_OUTPUT(Makefile \
++AC_CONFIG_FILES([Makefile \
+ mpbsd/Makefile mpf/Makefile mpn/Makefile mpq/Makefile \
+ mpz/Makefile printf/Makefile scanf/Makefile cxx/Makefile \
+ tests/Makefile tests/devel/Makefile tests/mpbsd/Makefile \
+@@ -3184,4 +3177,5 @@ AC_OUTPUT(Makefile \
+ tests/cxx/Makefile \
+ doc/Makefile tune/Makefile \
+ demos/Makefile demos/calc/Makefile demos/expr/Makefile \
+- gmp.h:gmp-h.in mp.h:mp-h.in)
++ gmp.h:gmp-h.in mp.h:mp-h.in])
++AC_OUTPUT
diff --git a/packages/gmp/gmp-4.2.1/sh4-asmfix.patch b/packages/gmp/gmp-4.2.1/sh4-asmfix.patch
new file mode 100644
index 0000000000..1a01f61533
--- /dev/null
+++ b/packages/gmp/gmp-4.2.1/sh4-asmfix.patch
@@ -0,0 +1,26 @@
+--- gmp-4.1.4/mpn/sh/add_n.s 2005/11/17 08:44:00 1.1
++++ gmp-4.1.4/mpn/sh/add_n.s 2005/11/17 08:18:57
+@@ -29,8 +29,8 @@
+
+ .text
+ .align 2
+- .global ___gmpn_add_n
+-___gmpn_add_n:
++ .global __gmpn_add_n
++__gmpn_add_n:
+ mov #0,r3 ! clear cy save reg
+
+ Loop: mov.l @r5+,r1
+--- gmp-4.1.4/mpn/sh/sub_n.s 2005/11/17 08:44:04 1.1
++++ gmp-4.1.4/mpn/sh/sub_n.s 2005/11/17 08:18:59
+@@ -29,8 +29,8 @@
+
+ .text
+ .align 2
+- .global ___gmpn_sub_n
+-___gmpn_sub_n:
++ .global __gmpn_sub_n
++__gmpn_sub_n:
+ mov #0,r3 ! clear cy save reg
+
+ Loop: mov.l @r5+,r1
diff --git a/packages/gmp/gmp-native.inc b/packages/gmp/gmp-native.inc
new file mode 100644
index 0000000000..c3d36e0fdb
--- /dev/null
+++ b/packages/gmp/gmp-native.inc
@@ -0,0 +1,23 @@
+require gmp_${PV}.bb
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gmp-${PV}"
+S = "${WORKDIR}/gmp-${PV}"
+
+inherit native
+
+# darwin 'hacks'
+EXTRA_OECONF_build-darwin = " --enable-shared "
+OLD_STAGING := "${STAGING_BINDIR}"
+OLD_TARGET := "${TARGET_SYS}"
+OLD_HOST := "${HOST_SYS}"
+OLD_BUILD := "${BUILD_SYS}"
+
+PATH_prepend_build-darwin = "${OLD_STAGING}/${OLD_HOST}:${OLD_STAGING}:"
+
+TARGET_SYS_build-darwin = "none-apple-darwin"
+HOST_SYS_build-darwin = "none-apple-darwin"
+BUILD_SYS_build-darwin = "none-apple-darwin"
+
+do_compile_append_build-darwin() {
+ oe_runmake check
+}
diff --git a/packages/gmp/gmp-native_4.1.2.bb b/packages/gmp/gmp-native_4.1.2.bb
index c3d36e0fdb..14e8587154 100644
--- a/packages/gmp/gmp-native_4.1.2.bb
+++ b/packages/gmp/gmp-native_4.1.2.bb
@@ -1,23 +1,2 @@
-require gmp_${PV}.bb
-
-FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gmp-${PV}"
-S = "${WORKDIR}/gmp-${PV}"
-
-inherit native
-
-# darwin 'hacks'
-EXTRA_OECONF_build-darwin = " --enable-shared "
-OLD_STAGING := "${STAGING_BINDIR}"
-OLD_TARGET := "${TARGET_SYS}"
-OLD_HOST := "${HOST_SYS}"
-OLD_BUILD := "${BUILD_SYS}"
-
-PATH_prepend_build-darwin = "${OLD_STAGING}/${OLD_HOST}:${OLD_STAGING}:"
-
-TARGET_SYS_build-darwin = "none-apple-darwin"
-HOST_SYS_build-darwin = "none-apple-darwin"
-BUILD_SYS_build-darwin = "none-apple-darwin"
-
-do_compile_append_build-darwin() {
- oe_runmake check
-}
+PV = "4.1.2"
+require gmp-native.inc
diff --git a/packages/gmp/gmp-native_4.2.1.bb b/packages/gmp/gmp-native_4.2.1.bb
new file mode 100644
index 0000000000..8594f2cb0b
--- /dev/null
+++ b/packages/gmp/gmp-native_4.2.1.bb
@@ -0,0 +1,2 @@
+PV = "4.2.1"
+require gmp-native.inc
diff --git a/packages/gmp/gmp.inc b/packages/gmp/gmp.inc
new file mode 100644
index 0000000000..ad179165f3
--- /dev/null
+++ b/packages/gmp/gmp.inc
@@ -0,0 +1,16 @@
+SECTION = "libs"
+DESCRIPTION = "GNU multiprecision arithmetic library"
+HOMEPAGE = "http://www.swox.com/gmp/"
+LICENSE = "GPL LGPL"
+
+SRC_URI = "ftp://ftp.gnu.org/gnu/gmp/gmp-${PV}.tar.bz2 \
+ file://configure.patch;patch=1 \
+ file://amd64.patch;patch=1"
+
+inherit autotools
+
+acpaths = ""
+
+do_stage () {
+ autotools_stage_all
+}
diff --git a/packages/gmp/gmp_4.1.2.bb b/packages/gmp/gmp_4.1.2.bb
index d7456175a1..45b2672ee7 100644
--- a/packages/gmp/gmp_4.1.2.bb
+++ b/packages/gmp/gmp_4.1.2.bb
@@ -1,18 +1,3 @@
-SECTION = "libs"
-DESCRIPTION = "GNU multiprecision arithmetic library"
-HOMEPAGE = "http://www.swox.com/gmp/"
-LICENSE = "GPL LGPL"
+require gmp.inc
-SRC_URI = "ftp://mirrors.kernel.org/gnu/gmp/gmp-${PV}.tar.gz \
- file://configure.patch;patch=1 \
- file://amd64.patch;patch=1 \
- file://gcc-compile.patch;patch=1 "
-
-inherit autotools
-
-acpaths = ""
-
-do_stage () {
- oe_libinstall -so libgmp ${STAGING_LIBDIR}
- install -m 0644 ${S}/gmp.h ${STAGING_INCDIR}/gmp.h
-}
+SRC_URI += "file://gcc-compile.patch;patch=1" \ No newline at end of file
diff --git a/packages/gmp/gmp_4.1.4.bb b/packages/gmp/gmp_4.1.4.bb
index d80e728dc4..0b32f552e7 100644
--- a/packages/gmp/gmp_4.1.4.bb
+++ b/packages/gmp/gmp_4.1.4.bb
@@ -1,19 +1,5 @@
-SECTION = "libs"
-DESCRIPTION = "GNU multiprecision arithmetic library"
-HOMEPAGE = "http://www.swox.com/gmp/"
-LICENSE = "GPL LGPL"
+require gmp.inc
PR = "r1"
-SRC_URI = "ftp://ftp.gnu.org/gnu/gmp/gmp-${PV}.tar.bz2 \
- file://configure.patch;patch=1 \
- file://amd64.patch;patch=1 \
- file://sh4-asmfix.patch;patch=1"
-
-inherit autotools
-
-acpaths = ""
-
-do_stage () {
- autotools_stage_all
-}
+SRC_URI += "file://sh4-asmfix.patch;patch=1" \ No newline at end of file
diff --git a/packages/gmp/gmp_4.2.1.bb b/packages/gmp/gmp_4.2.1.bb
new file mode 100644
index 0000000000..6af2db66a4
--- /dev/null
+++ b/packages/gmp/gmp_4.2.1.bb
@@ -0,0 +1,3 @@
+require gmp.inc
+
+SRC_URI += "file://sh4-asmfix.patch;patch=1" \ No newline at end of file
diff --git a/packages/gnome/libgnome_2.16.0.bb b/packages/gnome/libgnome_2.16.0.bb
new file mode 100644
index 0000000000..d6c64ee7be
--- /dev/null
+++ b/packages/gnome/libgnome_2.16.0.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Gnome application programming libraries"
+LICENSE = "GPL"
+SECTION = "x11/gnome/libs"
+PR = "r0"
+
+inherit gnome
+
+DEPENDS = "gconf-native gnome-vfs libbonobo esound"
+
+EXTRA_OECONF = "--disable-gtk-doc"
+
+do_stage() {
+autotools_stage_all
+}
diff --git a/packages/gnome/libgnomeui_2.16.0.bb b/packages/gnome/libgnomeui_2.16.0.bb
new file mode 100644
index 0000000000..8f3e0a725c
--- /dev/null
+++ b/packages/gnome/libgnomeui_2.16.0.bb
@@ -0,0 +1,22 @@
+LICENSE = "GPL"
+SECTION = "x11/gnome/libs"
+PR = "r0"
+DEPENDS = "libgnome libgnomecanvas libbonoboui gnome-keyring"
+DESCRIPTION = "GNOME User Interface Library"
+
+FILES_${PN} += "${libdir}/gtk-2.0/*/filesystems/lib*.so \
+ ${libdir}/libglade/*/lib*.so"
+
+inherit gnome
+
+SRC_URI += "file://gnome-stock-pixbufs.h file://no-pixbuf-csource.patch;patch=1"
+
+EXTRA_OECONF = "--disable-gtk-doc"
+
+do_configure_prepend() {
+ install -m 0644 ${WORKDIR}/gnome-stock-pixbufs.h ${S}/libgnomeui/pixmaps/gnome-stock-pixbufs.h
+}
+
+do_stage() {
+autotools_stage_all
+}
diff --git a/packages/hal/files/.mtn2git_empty b/packages/hal/files/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/hal/files/.mtn2git_empty
diff --git a/packages/hal/files/dbus-fix-api.patch b/packages/hal/files/dbus-fix-api.patch
new file mode 100644
index 0000000000..1f025870bc
--- /dev/null
+++ b/packages/hal/files/dbus-fix-api.patch
@@ -0,0 +1,26 @@
+Index: hal-0.5.7/tools/lshal.c
+===================================================================
+--- hal-0.5.7.orig/tools/lshal.c 2006-02-13 14:35:31.000000000 +0000
++++ hal-0.5.7/tools/lshal.c 2006-11-09 13:48:07.000000000 +0000
+@@ -701,7 +701,7 @@
+ libhal_ctx_shutdown (hal_ctx, &error);
+ libhal_ctx_free (hal_ctx);
+
+- dbus_connection_disconnect (conn);
++ dbus_connection_close (conn);
+ dbus_connection_unref (conn);
+
+ if (show_device)
+Index: hal-0.5.7/tools/hal-device.c
+===================================================================
+--- hal-0.5.7.orig/tools/hal-device.c 2006-11-09 13:49:44.000000000 +0000
++++ hal-0.5.7/tools/hal-device.c 2006-11-09 13:50:00.000000000 +0000
+@@ -155,7 +155,7 @@
+
+ libhal_ctx_shutdown(hal_ctx, &error);
+ libhal_ctx_free(hal_ctx);
+- dbus_connection_disconnect(conn);
++ dbus_connection_close(conn);
+ dbus_connection_unref(conn);
+ dbus_error_free(&error);
+
diff --git a/packages/hal/hal_0.5.7.bb b/packages/hal/hal_0.5.7.bb
index 5476e2ec22..6139203f10 100644
--- a/packages/hal/hal_0.5.7.bb
+++ b/packages/hal/hal_0.5.7.bb
@@ -8,7 +8,8 @@ HOMEPAGE = "http://freedesktop.org/Software/hal"
LICENSE = "GPL LGPL AFL"
PR = "r0"
-SRC_URI = "http://freedesktop.org/~david/dist/hal-${PV}.tar.gz"
+SRC_URI = "http://freedesktop.org/~david/dist/hal-${PV}.tar.gz \
+ file://dbus-fix-api.patch;patch=1"
S = "${WORKDIR}/hal-${PV}"
inherit autotools pkgconfig
diff --git a/packages/images/nylon-image-base.bb b/packages/images/nylon-image-base.bb
index 4034590822..5eee653453 100644
--- a/packages/images/nylon-image-base.bb
+++ b/packages/images/nylon-image-base.bb
@@ -1,5 +1,5 @@
inherit image_ipk
-inherit nylon_image
+inherit nylon-image
LICENSE = MIT
export IMAGE_BASENAME = "nylon-base"
diff --git a/packages/images/unslung-image.bb b/packages/images/unslung-image.bb
index 629c855014..d585414f1f 100644
--- a/packages/images/unslung-image.bb
+++ b/packages/images/unslung-image.bb
@@ -1,5 +1,5 @@
LICENSE = MIT
-PR = "r21"
+PR = "r23"
IMAGE_BASENAME = "unslung"
@@ -11,14 +11,16 @@ DEPENDS = "virtual/kernel \
RDEPENDS = "kernel update-modules unslung-rootfs \
libc6-unslung slingbox ipkg \
- cpio \
- findutils \
+ libipkg \
+# cpio \
+# findutils \
${UNSLUNG_EXTRA_RDEPENDS}"
IPKG_INSTALL = "kernel update-modules unslung-rootfs \
libc6-unslung slingbox ipkg \
- cpio \
- findutils \
+ libipkg \
+# cpio \
+# findutils \
kernel-module-netconsole \
${UNSLUNG_EXTRA_INSTALL}"
@@ -72,25 +74,26 @@ unslung_clean_image () {
${STRIP} ${IMAGE_ROOTFS}/lib/libgcc_s.so.1
chmod ugo+x ${IMAGE_ROOTFS}/lib/libgcc_s.so.1
+# MJW - experimental right now, but no longer need cpio and find
# We need cpio and find, but we don't need any of the other stuff in
# the packages (users can install the full package with ipkg after
# unsling). Remove the extra files and executables, and clean up
# the entries from the ipkg database manually.
#-- these are for cpio:
- rm -f ${IMAGE_ROOTFS}/usr/bin/mt
- rm -rf ${IMAGE_ROOTFS}/usr/libexec
- rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/info/cpio.*
- rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/alternatives/rmt
- sed -i -e '/^Package: cpio/,/^$/d' ${IMAGE_ROOTFS}${libdir}/ipkg/status
+# rm -f ${IMAGE_ROOTFS}/usr/bin/mt
+# rm -rf ${IMAGE_ROOTFS}/usr/libexec
+# rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/info/cpio.*
+# rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/alternatives/rmt
+# sed -i -e '/^Package: cpio/,/^$/d' ${IMAGE_ROOTFS}${libdir}/ipkg/status
#-- and these for find:
- rm -f ${IMAGE_ROOTFS}/usr/bin/locate
- rm -f ${IMAGE_ROOTFS}/usr/bin/updatedb
- rm -f ${IMAGE_ROOTFS}/usr/bin/xargs
- rm -f ${IMAGE_ROOTFS}/usr/bin/xargs.findutils
- rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/info/findutils.*
- sed -i -e '/^Package: findutils/,/^$/d' ${IMAGE_ROOTFS}${libdir}/ipkg/status
+# rm -f ${IMAGE_ROOTFS}/usr/bin/locate
+# rm -f ${IMAGE_ROOTFS}/usr/bin/updatedb
+# rm -f ${IMAGE_ROOTFS}/usr/bin/xargs
+# rm -f ${IMAGE_ROOTFS}/usr/bin/xargs.findutils
+# rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/info/findutils.*
+# sed -i -e '/^Package: findutils/,/^$/d' ${IMAGE_ROOTFS}${libdir}/ipkg/status
# FIXME: change made 24 Jul 2006 by the OE folks changes the "strip"
# behavior to create an extra file named .debug/<filename> containing
@@ -107,6 +110,13 @@ unslung_clean_image () {
rm -rf ${IMAGE_ROOTFS}/usr/bin/.debug
rm -rf ${IMAGE_ROOTFS}/usr/sbin/.debug
rm -rf ${IMAGE_ROOTFS}/usr/lib/.debug
+
+# MJW - Experimental - just to make space; remove before releasing!
+# #### Hack to make space for testing! REMOVE THIS!
+# rm -rf ${IMAGE_ROOTFS}/etc/samba/codepages/unicode_map.850
+# rm -rf ${IMAGE_ROOTFS}/bin/ftp
+# #### End of Hack!
+
}
python () {
diff --git a/packages/initscripts/initscripts-1.0/angstrom/.mtn2git_empty b/packages/initscripts/initscripts-1.0/angstrom/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/initscripts/initscripts-1.0/angstrom/.mtn2git_empty
diff --git a/packages/initscripts/initscripts-1.0/angstrom/checkroot.sh b/packages/initscripts/initscripts-1.0/angstrom/checkroot.sh
new file mode 100755
index 0000000000..e5fc6ed8b5
--- /dev/null
+++ b/packages/initscripts/initscripts-1.0/angstrom/checkroot.sh
@@ -0,0 +1,201 @@
+#
+# checkroot.sh Check to root filesystem.
+#
+# Version: @(#)checkroot.sh 2.84 25-Jan-2002 miquels@cistron.nl
+#
+
+. /etc/default/rcS
+
+#
+# Set SULOGIN in /etc/default/rcS to yes if you want a sulogin to be spawned
+# from this script *before anything else* with a timeout, like SCO does.
+#
+test "$SULOGIN" = yes && sulogin -t 30 $CONSOLE
+
+#
+# Ensure that bdflush (update) is running before any major I/O is
+# performed (the following fsck is a good example of such activity :).
+#
+test -x /sbin/update && update
+
+#
+# Read /etc/fstab.
+#
+exec 9>&0 </etc/fstab
+rootmode=rw
+rootopts=rw
+test "$ENABLE_ROOTFS_FSCK" = yes && rootcheck="yes" || rootcheck="no"
+swap_on_md=no
+devfs=
+while read fs mnt type opts dump pass junk
+do
+ case "$fs" in
+ ""|\#*)
+ continue;
+ ;;
+ /dev/md*)
+ # Swap on md device.
+ test "$type" = swap && swap_on_md=yes
+ ;;
+ /dev/*)
+ ;;
+ *)
+ # Might be a swapfile.
+ test "$type" = swap && swap_on_md=yes
+ ;;
+ esac
+
+ test "$type" = devfs && devfs="$fs"
+
+ # Currently we do not care about the other entries
+ if test "$mnt" = "/"
+ then
+ #echo "[$fs] [$mnt] [$type] [$opts] [$dump] [$pass] [$junk]"
+
+ rootopts="$opts"
+ roottype="$type"
+
+ #The "spinner" is broken on busybox sh
+ TERM=dumb
+
+ test "$pass" = 0 -o "$pass" = "" && rootcheck=no
+
+ # Enable fsck for ext2 and ext3 rootfs, disable for everything else
+ case "$type" in
+ ext2|ext3) rootcheck=yes;;
+ *) rootcheck=no;;
+ esac
+
+ if test "$rootcheck" = yes
+ then
+ if ! test -x "/sbin/fsck.${roottype}"
+ then
+ echo -e "\n * * * WARNING: /sbin/fsck.${roottype} is missing! * * *\n"
+ rootcheck=no
+ fi
+ fi
+
+ case "$opts" in
+ ro|ro,*|*,ro|*,ro,*)
+ rootmode=ro
+ ;;
+ esac
+ fi
+done
+exec 0>&9 9>&-
+
+#
+# Activate the swap device(s) in /etc/fstab. This needs to be done
+# before fsck, since fsck can be quite memory-hungry.
+#
+doswap=no
+test -d /proc/1 || mount -n /proc
+case "`uname -r`" in
+ 2.[0123].*)
+ if test $swap_on_md = yes && grep -qs resync /proc/mdstat
+ then
+ test "$VERBOSE" != no && echo "Not activating swap - RAID array resyncing"
+ else
+ doswap=yes
+ fi
+ ;;
+ *)
+ doswap=yes
+ ;;
+esac
+if test $doswap = yes
+then
+ test "$VERBOSE" != no && echo "Activating swap"
+ swapon -a 2> /dev/null
+fi
+
+#
+# Check the root filesystem.
+#
+if test -f /fastboot || test $rootcheck = no
+then
+ test $rootcheck = yes && echo "Fast boot, no filesystem check"
+else
+ #
+ # Ensure that root is quiescent and read-only before fsck'ing.
+ #
+ mount -n -o remount,ro /
+ if test $? = 0
+ then
+ if test -f /forcefsck
+ then
+ force="-f"
+ else
+ force=""
+ fi
+ if test "$FSCKFIX" = yes
+ then
+ fix="-y"
+ else
+ fix="-a"
+ fi
+ spinner="-C"
+ case "$TERM" in
+ dumb|network|unknown|"") spinner="" ;;
+ esac
+ test `uname -m` = s390 && spinner="" # This should go away
+ test "$VERBOSE" != no && echo "Checking root filesystem..."
+ fsck $spinner $force $fix /
+ #
+ # If there was a failure, drop into single-user mode.
+ #
+ # NOTE: "failure" is defined as exiting with a return code of
+ # 2 or larger. A return code of 1 indicates that filesystem
+ # errors were corrected but that the boot may proceed.
+ #
+ if test "$?" -gt 1
+ then
+ # Surprise! Re-directing from a HERE document (as in
+ # "cat << EOF") won't work, because the root is read-only.
+ echo
+ echo "fsck failed. Please repair manually and reboot. Please note"
+ echo "that the root filesystem is currently mounted read-only. To"
+ echo "remount it read-write:"
+ echo
+ echo " # mount -n -o remount,rw /"
+ echo
+ echo "CONTROL-D will exit from this shell and REBOOT the system."
+ echo
+ # Start a single user shell on the console
+ /sbin/sulogin $CONSOLE
+ reboot -f
+ fi
+ else
+ echo "*** ERROR! Cannot fsck root fs because it is not mounted read-only!"
+ echo
+ fi
+fi
+
+#
+# If the root filesystem was not marked as read-only in /etc/fstab,
+# remount the rootfs rw but do not try to change mtab because it
+# is on a ro fs until the remount succeeded. Then clean up old mtabs
+# and finally write the new mtab.
+# This part is only needed if the rootfs was mounted ro.
+#
+
+if [ $(grep "/dev/root" /proc/mounts | awk '{print $4}') = rw ]; then
+ exit 0
+fi
+
+
+echo "Remounting root file system..."
+mount -n -o remount,$rootmode /
+if test "$rootmode" = rw
+then
+ if test ! -L /etc/mtab
+ then
+ rm -f /etc/mtab~ /etc/nologin
+ : > /etc/mtab
+ fi
+ mount -f -o remount /
+ mount -f /proc
+ test "$devfs" && grep -q '^devfs /dev' /proc/mounts && mount -f "$devfs"
+fi
+
+: exit 0
diff --git a/packages/initscripts/initscripts-1.0/checkroot.sh b/packages/initscripts/initscripts-1.0/checkroot.sh
index 3729072656..e84e000f53 100755
--- a/packages/initscripts/initscripts-1.0/checkroot.sh
+++ b/packages/initscripts/initscripts-1.0/checkroot.sh
@@ -24,7 +24,7 @@ test -x /sbin/update && update
exec 9>&0 </etc/fstab
rootmode=rw
rootopts=rw
-rootcheck=no
+test "$ENABLE_ROOTFS_FSCK" = yes && rootcheck="yes" || rootcheck="no"
swap_on_md=no
devfs=
while read fs mnt type opts dump pass junk
@@ -44,15 +44,43 @@ do
test "$type" = swap && swap_on_md=yes
;;
esac
+
test "$type" = devfs && devfs="$fs"
- test "$mnt" != / && continue
- rootopts="$opts"
- test "$pass" = 0 -o "$pass" = "" && rootcheck=no
- case "$opts" in
- ro|ro,*|*,ro|*,ro,*)
- rootmode=ro
- ;;
- esac
+
+ # Currently we do not care about the other entries
+ if test "$mnt" = "/"
+ then
+ #echo "[$fs] [$mnt] [$type] [$opts] [$dump] [$pass] [$junk]"
+
+ rootopts="$opts"
+ roottype="$type"
+
+ #The "spinner" is broken on busybox sh
+ TERM=dumb
+
+ test "$pass" = 0 -o "$pass" = "" && rootcheck=no
+
+ # Enable fsck for ext2 and ext3 rootfs, disable for everything else
+ case "$type" in
+ ext2|ext3) rootcheck=yes;;
+ *) rootcheck=no;;
+ esac
+
+ if test "$rootcheck" = yes
+ then
+ if ! test -x "/sbin/fsck.${roottype}"
+ then
+ echo -e "\n * * * WARNING: /sbin/fsck.${roottype} is missing! * * *\n"
+ rootcheck=no
+ fi
+ fi
+
+ case "$opts" in
+ ro|ro,*|*,ro|*,ro,*)
+ rootmode=ro
+ ;;
+ esac
+ fi
done
exec 0>&9 9>&-
diff --git a/packages/initscripts/initscripts_1.0.bb b/packages/initscripts/initscripts_1.0.bb
index 005b8cfab6..3c937856ae 100644
--- a/packages/initscripts/initscripts_1.0.bb
+++ b/packages/initscripts/initscripts_1.0.bb
@@ -5,7 +5,7 @@ DEPENDS = "makedevs"
DEPENDS_openzaurus = "makedevs virtual/kernel"
RDEPENDS = "makedevs"
LICENSE = "GPL"
-PR = "r77"
+PR = "r80"
SRC_URI = "file://halt \
file://ramdisk \
diff --git a/packages/libiconv/libiconv_1.9.2.bb b/packages/libiconv/libiconv_1.9.2.bb
index 4f8f694e07..059d5fd4c5 100644
--- a/packages/libiconv/libiconv_1.9.2.bb
+++ b/packages/libiconv/libiconv_1.9.2.bb
@@ -1,11 +1,11 @@
DESCRIPTION = "GNU libiconv - libiconv is for you if your application needs to support \
multiple character encodings, but that support lacks from your system."
HOMEPAGE = "http://www.gnu.org/software/libiconv"
-SECTION = "e/libs"
+SECTION = "libs"
PRIORITY = "optional"
NOTES = "Needs to be stripped down to: ascii iso8859-1 eucjp iso-2022jp gb utf8"
PROVIDES = "virtual/libiconv"
-PR = "r3"
+PR = "r4"
LICENSE = "LGPL"
SRC_URI = "ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-${PV}.tar.gz"
diff --git a/packages/libnet/libnet-1.1.2.1/configure.patch b/packages/libnet/libnet-1.1.2.1/configure.patch
deleted file mode 100644
index a2a4f3fc0d..0000000000
--- a/packages/libnet/libnet-1.1.2.1/configure.patch
+++ /dev/null
@@ -1,3075 +0,0 @@
-This is autogenerated, so not really needed.
-Just here for completeness.
-
---- libnet/configure 2005/11/15 03:56:13 1.1
-+++ libnet/configure 2005/11/15 03:56:28
-@@ -1,9 +1,8 @@
- #! /bin/sh
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by GNU Autoconf 2.57.
-+# Generated by GNU Autoconf 2.59.
- #
--# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
--# Free Software Foundation, Inc.
-+# Copyright (C) 2003 Free Software Foundation, Inc.
- # This configure script is free software; the Free Software Foundation
- # gives unlimited permission to copy, distribute and modify it.
- ## --------------------- ##
-@@ -20,9 +19,10 @@
- elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
- fi
-+DUALCASE=1; export DUALCASE # for MKS sh
-
- # Support unset when possible.
--if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
-+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
- else
- as_unset=false
-@@ -41,7 +41,7 @@
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
- do
-- if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then
-+ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- $as_unset $as_var
-@@ -218,16 +218,17 @@
- if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
- else
-+ test -d ./-p && rmdir ./-p
- as_mkdir_p=false
- fi
-
- as_executable_p="test -f"
-
- # Sed expression to map a string onto a valid CPP name.
--as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
-+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
- # Sed expression to map a string onto a valid variable name.
--as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
-+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
- # IFS
-@@ -309,7 +310,7 @@
- #endif"
-
- ac_default_prefix=/usr
--ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE RANLIB ac_ct_RANLIB CPP EGREP ENDIANESS LIBNET_VERSION HAVE_PACKET_SOCKET ADDITIONAL_LIBS LIBNET_CONFIG_DEFINES LIBNET_CONFIG_LIBS LIBNET_CONFIG_CFLAGS LIBOBJS LTLIBOBJS'
-+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RANLIB ac_ct_RANLIB CPP EGREP ENDIANESS LIBNET_VERSION HAVE_PACKET_SOCKET ADDITIONAL_LIBS LIBNET_CONFIG_DEFINES LIBNET_CONFIG_LIBS LIBNET_CONFIG_CFLAGS LIBOBJS LTLIBOBJS'
- ac_subst_files=''
-
- # Initialize some variables set by options.
-@@ -668,7 +669,7 @@
-
- # Be sure to have absolute paths.
- for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
-- localstatedir libdir includedir oldincludedir infodir mandir
-+ localstatedir libdir includedir oldincludedir infodir mandir
- do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
-@@ -708,10 +709,10 @@
- # Try the directory containing this script, then its parent.
- ac_confdir=`(dirname "$0") 2>/dev/null ||
- $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$0" : 'X\(//\)[^/]' \| \
-- X"$0" : 'X\(//\)$' \| \
-- X"$0" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$0" : 'X\(//\)[^/]' \| \
-+ X"$0" : 'X\(//\)$' \| \
-+ X"$0" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$0" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-@@ -803,9 +804,9 @@
- cat <<_ACEOF
- Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
-- [$ac_default_prefix]
-+ [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
-- [PREFIX]
-+ [PREFIX]
-
- By default, \`make install' will install all the files in
- \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-@@ -850,10 +851,10 @@
- Optional Features:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
-- --enable-maintainer-mode enable make rules and dependencies not useful
-- (and sometimes confusing) to the casual installer
-- --disable-dependency-tracking Speeds up one-time builds
-- --enable-dependency-tracking Do not reject slow dependency extractors
-+ --enable-maintainer-mode enable make rules and dependencies not useful
-+ (and sometimes confusing) to the casual installer
-+ --disable-dependency-tracking speeds up one-time build
-+ --enable-dependency-tracking do not reject slow dependency extractors
-
- Some influential environment variables:
- CC C compiler command
-@@ -900,12 +901,45 @@
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
- esac
--# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
--# absolute.
--ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
--ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd`
--ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
--ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
-+
-+# Do not use `cd foo && pwd` to compute absolute paths, because
-+# the directories may not exist.
-+case `pwd` in
-+.) ac_abs_builddir="$ac_dir";;
-+*)
-+ case "$ac_dir" in
-+ .) ac_abs_builddir=`pwd`;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-+ *) ac_abs_builddir=`pwd`/"$ac_dir";;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_builddir=${ac_top_builddir}.;;
-+*)
-+ case ${ac_top_builddir}. in
-+ .) ac_abs_top_builddir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-+ *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_srcdir=$ac_srcdir;;
-+*)
-+ case $ac_srcdir in
-+ .) ac_abs_srcdir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-+ *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_srcdir=$ac_top_srcdir;;
-+*)
-+ case $ac_top_srcdir in
-+ .) ac_abs_top_srcdir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-+ *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-+ esac;;
-+esac
-
- cd $ac_dir
- # Check for guested configure; otherwise get Cygnus style configure.
-@@ -916,7 +950,7 @@
- echo
- $SHELL $ac_srcdir/configure --help=recursive
- elif test -f $ac_srcdir/configure.ac ||
-- test -f $ac_srcdir/configure.in; then
-+ test -f $ac_srcdir/configure.in; then
- echo
- $ac_configure --help
- else
-@@ -930,8 +964,7 @@
- if $ac_init_version; then
- cat <<\_ACEOF
-
--Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
--Free Software Foundation, Inc.
-+Copyright (C) 2003 Free Software Foundation, Inc.
- This configure script is free software; the Free Software Foundation
- gives unlimited permission to copy, distribute and modify it.
- _ACEOF
-@@ -943,7 +976,7 @@
- running configure, to aid debugging if configure makes a mistake.
-
- It was created by $as_me, which was
--generated by GNU Autoconf 2.57. Invocation command line was
-+generated by GNU Autoconf 2.59. Invocation command line was
-
- $ $0 $@
-
-@@ -1020,19 +1053,19 @@
- 2)
- ac_configure_args1="$ac_configure_args1 '$ac_arg'"
- if test $ac_must_keep_next = true; then
-- ac_must_keep_next=false # Got value, back to normal.
-+ ac_must_keep_next=false # Got value, back to normal.
- else
-- case $ac_arg in
-- *=* | --config-cache | -C | -disable-* | --disable-* \
-- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-- | -with-* | --with-* | -without-* | --without-* | --x)
-- case "$ac_configure_args0 " in
-- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-- esac
-- ;;
-- -* ) ac_must_keep_next=true ;;
-- esac
-+ case $ac_arg in
-+ *=* | --config-cache | -C | -disable-* | --disable-* \
-+ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-+ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-+ | -with-* | --with-* | -without-* | --without-* | --x)
-+ case "$ac_configure_args0 " in
-+ "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-+ esac
-+ ;;
-+ -* ) ac_must_keep_next=true ;;
-+ esac
- fi
- ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
- # Get rid of the leading space.
-@@ -1066,12 +1099,12 @@
- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- sed -n \
-- "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
-- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
-+ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
-+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
- ;;
- *)
- sed -n \
-- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
-+ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
- }
-@@ -1100,7 +1133,7 @@
- for ac_var in $ac_subst_files
- do
- eval ac_val=$`echo $ac_var`
-- echo "$ac_var='"'"'$ac_val'"'"'"
-+ echo "$ac_var='"'"'$ac_val'"'"'"
- done | sort
- echo
- fi
-@@ -1119,7 +1152,7 @@
- echo "$as_me: caught signal $ac_signal"
- echo "$as_me: exit $exit_status"
- } >&5
-- rm -f core core.* *.core &&
-+ rm -f core *.core &&
- rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
- ' 0
-@@ -1199,7 +1232,7 @@
- # value.
- ac_cache_corrupted=false
- for ac_var in `(set) 2>&1 |
-- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
-+ sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val="\$ac_cv_env_${ac_var}_value"
-@@ -1216,13 +1249,13 @@
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
-- { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-+ { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
- echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-- { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
-+ { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
- echo "$as_me: former value: $ac_old_val" >&2;}
-- { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
-+ { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
- echo "$as_me: current value: $ac_new_val" >&2;}
-- ac_cache_corrupted=:
-+ ac_cache_corrupted=:
- fi;;
- esac
- # Pass precious variables to config.status.
-@@ -1381,7 +1414,7 @@
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
--am__api_version="1.6"
-+am__api_version="1.9"
- # Find a good install program. We prefer a C program (faster),
- # so one script is as good as another. But avoid the broken or
- # incompatible versions:
-@@ -1393,6 +1426,7 @@
- # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
- # AFS /usr/afsws/bin/install, which mishandles nonexistent args
- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-+# OS/2's system install, which has a completely different semantic
- # ./install, which can be erroneously created by make from ./install.sh.
- echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
- echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
-@@ -1409,6 +1443,7 @@
- case $as_dir/ in
- ./ | .// | /cC/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
-@@ -1416,20 +1451,20 @@
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-- if test $ac_prog = install &&
-- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-- # AIX install. It has an incompatible calling convention.
-- :
-- elif test $ac_prog = install &&
-- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-- # program-specific install script used by HP pwplus--don't use.
-- :
-- else
-- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-- break 3
-- fi
-- fi
-+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-+ if test $ac_prog = install &&
-+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-+ # AIX install. It has an incompatible calling convention.
-+ :
-+ elif test $ac_prog = install &&
-+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-+ # program-specific install script used by HP pwplus--don't use.
-+ :
-+ else
-+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-+ break 3
-+ fi
-+ fi
- done
- done
- ;;
-@@ -1517,7 +1552,6 @@
- program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
- rm conftest.sed
-
--
- # expand $ac_aux_dir to an absolute path
- am_aux_dir=`cd $ac_aux_dir && pwd`
-
-@@ -1531,6 +1565,39 @@
- echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
- fi
-
-+if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
-+ # We used to keeping the `.' as first argument, in order to
-+ # allow $(mkdir_p) to be used without argument. As in
-+ # $(mkdir_p) $(somedir)
-+ # where $(somedir) is conditionally defined. However this is wrong
-+ # for two reasons:
-+ # 1. if the package is installed by a user who cannot write `.'
-+ # make install will fail,
-+ # 2. the above comment should most certainly read
-+ # $(mkdir_p) $(DESTDIR)$(somedir)
-+ # so it does not work when $(somedir) is undefined and
-+ # $(DESTDIR) is not.
-+ # To support the latter case, we have to write
-+ # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
-+ # so the `.' trick is pointless.
-+ mkdir_p='mkdir -p --'
-+else
-+ # On NextStep and OpenStep, the `mkdir' command does not
-+ # recognize any option. It will interpret all options as
-+ # directories to create, and then abort because `.' already
-+ # exists.
-+ for d in ./-p ./--version;
-+ do
-+ test -d $d && rmdir $d
-+ done
-+ # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
-+ if test -f "$ac_aux_dir/mkinstalldirs"; then
-+ mkdir_p='$(mkinstalldirs)'
-+ else
-+ mkdir_p='$(install_sh) -d'
-+ fi
-+fi
-+
- for ac_prog in gawk mawk nawk awk
- do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-@@ -1573,7 +1640,7 @@
-
- echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
- echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
--set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
-+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
- if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-@@ -1600,7 +1667,16 @@
- SET_MAKE="MAKE=${MAKE-make}"
- fi
-
-- # test to see if srcdir already configured
-+rm -rf .tst 2>/dev/null
-+mkdir .tst 2>/dev/null
-+if test -d .tst; then
-+ am__leading_dot=.
-+else
-+ am__leading_dot=_
-+fi
-+rmdir .tst 2>/dev/null
-+
-+# test to see if srcdir already configured
- if test "`cd $srcdir && pwd`" != "`pwd`" &&
- test -f $srcdir/config.status; then
- { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
-@@ -1608,6 +1684,16 @@
- { (exit 1); exit 1; }; }
- fi
-
-+# test whether we have cygpath
-+if test -z "$CYGPATH_W"; then
-+ if (cygpath --version) >/dev/null 2>/dev/null; then
-+ CYGPATH_W='cygpath -w'
-+ else
-+ CYGPATH_W=echo
-+ fi
-+fi
-+
-+
- # Define the identity of the package.
- PACKAGE=libnet
- VERSION=$LIBNET_VERSION
-@@ -1638,9 +1724,6 @@
-
- MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-
--
--AMTAR=${AMTAR-"${am_missing_run}tar"}
--
- install_sh=${install_sh-"$am_aux_dir/install-sh"}
-
- # Installed binaries are usually stripped using `strip' when the user
-@@ -1733,15 +1816,18 @@
-
- # We need awk for the "check" target. The system "awk" is bad on
- # some platforms.
-+# Always define AMTAR for backward compatibility.
-
-+AMTAR=${AMTAR-"${am_missing_run}tar"}
-+
-+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
-
-
--# Add the stamp file to the list of files AC keeps track of,
--# along with our hook.
-- ac_config_headers="$ac_config_headers include/config.h"
-
-
-
-+ ac_config_headers="$ac_config_headers include/config.h"
-+
- echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5
- echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&6
- # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
-@@ -2103,7 +2189,6 @@
- (exit $ac_status); }
-
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -2123,8 +2208,8 @@
- # Try to create an executable without -o first, disregard a.out.
- # It will help us diagnose broken compilers, and finding out an intuition
- # of exeext.
--echo "$as_me:$LINENO: checking for C compiler default output" >&5
--echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
-+echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-+echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
- ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
- if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
- (eval $ac_link_default) 2>&5
-@@ -2144,23 +2229,23 @@
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
-- ;;
-+ ;;
- conftest.$ac_ext )
-- # This is the source file.
-- ;;
-+ # This is the source file.
-+ ;;
- [ab].out )
-- # We found the default executable, but exeext='' is most
-- # certainly right.
-- break;;
-+ # We found the default executable, but exeext='' is most
-+ # certainly right.
-+ break;;
- *.* )
-- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-- # FIXME: I believe we export ac_cv_exeext for Libtool,
-- # but it would be cool to find out if it's true. Does anybody
-- # maintain Libtool? --akim.
-- export ac_cv_exeext
-- break;;
-+ ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-+ # FIXME: I believe we export ac_cv_exeext for Libtool,
-+ # but it would be cool to find out if it's true. Does anybody
-+ # maintain Libtool? --akim.
-+ export ac_cv_exeext
-+ break;;
- * )
-- break;;
-+ break;;
- esac
- done
- else
-@@ -2234,8 +2319,8 @@
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-- export ac_cv_exeext
-- break;;
-+ export ac_cv_exeext
-+ break;;
- * ) break;;
- esac
- done
-@@ -2260,7 +2345,6 @@
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -2311,7 +2395,6 @@
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -2331,11 +2414,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2348,7 +2441,7 @@
-
- ac_compiler_gnu=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
- fi
-@@ -2364,7 +2457,6 @@
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -2381,11 +2473,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2398,7 +2500,7 @@
-
- ac_cv_prog_cc_g=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- fi
- echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
- echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
-@@ -2425,7 +2527,6 @@
- ac_cv_prog_cc_stdc=no
- ac_save_CC=$CC
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -2453,6 +2554,16 @@
- va_end (v);
- return s;
- }
-+
-+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
-+ function prototypes and stuff, but not '\xHH' hex character constants.
-+ These don't provoke an error unfortunately, instead are silently treated
-+ as 'x'. The following induces an error, until -std1 is added to get
-+ proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
-+ array size at least. It's necessary to write '\x00'==0 to get something
-+ that's true only with -std1. */
-+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-+
- int test (int i, double x);
- struct s1 {int (*f) (int a);};
- struct s2 {int (*f) (double a);};
-@@ -2479,11 +2590,21 @@
- CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2496,7 +2617,7 @@
- sed 's/^/| /' conftest.$ac_ext >&5
-
- fi
--rm -f conftest.$ac_objext
-+rm -f conftest.err conftest.$ac_objext
- done
- rm -f conftest.$ac_ext conftest.$ac_objext
- CC=$ac_save_CC
-@@ -2524,19 +2645,28 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- for ac_declaration in \
-- ''\
-- '#include <stdlib.h>' \
-+ '' \
- 'extern "C" void std::exit (int) throw (); using std::exit;' \
- 'extern "C" void std::exit (int); using std::exit;' \
- 'extern "C" void exit (int) throw ();' \
-@@ -2544,14 +2674,13 @@
- 'void exit (int);'
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
--#include <stdlib.h>
- $ac_declaration
-+#include <stdlib.h>
- int
- main ()
- {
-@@ -2562,11 +2691,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2579,9 +2718,8 @@
-
- continue
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -2598,11 +2736,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2614,7 +2762,7 @@
- sed 's/^/| /' conftest.$ac_ext >&5
-
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- done
- rm -f conftest*
- if test -n "$ac_declaration"; then
-@@ -2628,30 +2776,22 @@
- sed 's/^/| /' conftest.$ac_ext >&5
-
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_ext=c
- ac_cpp='$CPP $CPPFLAGS'
- ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
- ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
--rm -f .deps 2>/dev/null
--mkdir .deps 2>/dev/null
--if test -d .deps; then
-- DEPDIR=.deps
--else
-- # MS-DOS does not allow filenames that begin with a dot.
-- DEPDIR=_deps
--fi
--rmdir .deps 2>/dev/null
--
-+DEPDIR="${am__leading_dot}deps"
-
- ac_config_commands="$ac_config_commands depfiles"
-
-
- am_make=${MAKE-make}
- cat > confinc << 'END'
--doit:
-+am__doit:
- @echo done
-+.PHONY: am__doit
- END
- # If we don't find an include directive, just comment out the code.
- echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
-@@ -2666,7 +2806,7 @@
- # In particular we don't look at `^make:' because GNU make might
- # be invoked under some other name (usually "gmake"), in which
- # case it prints its new name instead of `make'.
--if test "`$am_make -s -f confmf 2> /dev/null | fgrep -v 'ing directory'`" = "done"; then
-+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
- am__include=include
- am__quote=
- _am_result=GNU
-@@ -2726,18 +2866,34 @@
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
-+ # We will build objects and dependencies in a subdirectory because
-+ # it helps to detect inapplicable dependency modes. For instance
-+ # both Tru64's cc and ICC support -MD to output dependencies as a
-+ # side effect of compilation, but ICC will put the dependencies in
-+ # the current directory while Tru64 will put them in the object
-+ # directory.
-+ mkdir sub
-
- am_cv_CC_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- for depmode in $am_compiler_list; do
-+ # Setup a source with many dependencies, because some compilers
-+ # like to wrap large dependency lists on column 80 (with \), and
-+ # we should not choose a depcomp mode which is confused by this.
-+ #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
-- echo '#include "conftest.h"' > conftest.c
-- echo 'int i;' > conftest.h
-- echo "${am__include} ${am__quote}conftest.Po${am__quote}" > confmf
-+ : > sub/conftest.c
-+ for i in 1 2 3 4 5 6; do
-+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
-+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-+ # Solaris 8's {/usr,}/bin/sh.
-+ touch sub/conftst$i.h
-+ done
-+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- case $depmode in
- nosideeffect)
-@@ -2755,13 +2911,25 @@
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this.
- if depmode=$depmode \
-- source=conftest.c object=conftest.o \
-- depfile=conftest.Po tmpdepfile=conftest.TPo \
-- $SHELL ./depcomp $depcc -c conftest.c -o conftest.o >/dev/null 2>&1 &&
-- grep conftest.h conftest.Po > /dev/null 2>&1 &&
-+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
-+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
-+ >/dev/null 2>conftest.err &&
-+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
-- am_cv_CC_dependencies_compiler_type=$depmode
-- break
-+ # icc doesn't choke on unknown options, it will just issue warnings
-+ # or remarks (even with -Werror). So we grep stderr for any message
-+ # that says an option was ignored or not supported.
-+ # When given -MP, icc 7.0 and 7.1 complain thusly:
-+ # icc: Command line warning: ignoring option '-M'; no argument required
-+ # The diagnosis changed in icc 8.0:
-+ # icc: Command line remark: option '-MP' not supported
-+ if (grep 'ignoring option' conftest.err ||
-+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
-+ am_cv_CC_dependencies_compiler_type=$depmode
-+ break
-+ fi
- fi
- done
-
-@@ -2777,6 +2945,18 @@
- CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
-
-+
-+if
-+ test "x$enable_dependency_tracking" != xno \
-+ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
-+ am__fastdepCC_TRUE=
-+ am__fastdepCC_FALSE='#'
-+else
-+ am__fastdepCC_TRUE='#'
-+ am__fastdepCC_FALSE=
-+fi
-+
-+
- # Find a good install program. We prefer a C program (faster),
- # so one script is as good as another. But avoid the broken or
- # incompatible versions:
-@@ -2788,6 +2968,7 @@
- # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
- # AFS /usr/afsws/bin/install, which mishandles nonexistent args
- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-+# OS/2's system install, which has a completely different semantic
- # ./install, which can be erroneously created by make from ./install.sh.
- echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
- echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
-@@ -2804,6 +2985,7 @@
- case $as_dir/ in
- ./ | .// | /cC/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
-@@ -2811,20 +2993,20 @@
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-- if test $ac_prog = install &&
-- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-- # AIX install. It has an incompatible calling convention.
-- :
-- elif test $ac_prog = install &&
-- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-- # program-specific install script used by HP pwplus--don't use.
-- :
-- else
-- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-- break 3
-- fi
-- fi
-+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-+ if test $ac_prog = install &&
-+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-+ # AIX install. It has an incompatible calling convention.
-+ :
-+ elif test $ac_prog = install &&
-+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-+ # program-specific install script used by HP pwplus--don't use.
-+ :
-+ else
-+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-+ break 3
-+ fi
-+ fi
- done
- done
- ;;
-@@ -2964,7 +3146,6 @@
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -2975,7 +3156,7 @@
- #else
- # include <assert.h>
- #endif
-- Syntax error
-+ Syntax error
- _ACEOF
- if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-@@ -2987,6 +3168,7 @@
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-@@ -3007,7 +3189,6 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3025,6 +3206,7 @@
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-@@ -3071,7 +3253,6 @@
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3082,7 +3263,7 @@
- #else
- # include <assert.h>
- #endif
-- Syntax error
-+ Syntax error
- _ACEOF
- if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-@@ -3094,6 +3275,7 @@
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-@@ -3114,7 +3296,6 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3132,6 +3313,7 @@
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-@@ -3192,7 +3374,6 @@
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3213,11 +3394,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3230,12 +3421,11 @@
-
- ac_cv_header_stdc=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-
- if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3257,7 +3447,6 @@
- if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3282,7 +3471,6 @@
- :
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3294,9 +3482,9 @@
- # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
- #else
- # define ISLOWER(c) \
-- (('a' <= (c) && (c) <= 'i') \
-- || ('j' <= (c) && (c) <= 'r') \
-- || ('s' <= (c) && (c) <= 'z'))
-+ (('a' <= (c) && (c) <= 'i') \
-+ || ('j' <= (c) && (c) <= 'r') \
-+ || ('s' <= (c) && (c) <= 'z'))
- # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
- #endif
-
-@@ -3307,7 +3495,7 @@
- int i;
- for (i = 0; i < 256; i++)
- if (XOR (islower (i), ISLOWER (i))
-- || toupper (i) != TOUPPER (i))
-+ || toupper (i) != TOUPPER (i))
- exit(2);
- exit (0);
- }
-@@ -3332,7 +3520,7 @@
- ( exit $ac_status )
- ac_cv_header_stdc=no
- fi
--rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
- fi
- fi
-@@ -3357,7 +3545,7 @@
-
-
- for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-- inttypes.h stdint.h unistd.h
-+ inttypes.h stdint.h unistd.h
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
- echo "$as_me:$LINENO: checking for $ac_header" >&5
-@@ -3366,7 +3554,6 @@
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3378,11 +3565,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3395,7 +3592,7 @@
-
- eval "$as_ac_Header=no"
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-@@ -3426,7 +3623,6 @@
- echo "$as_me:$LINENO: checking $ac_header usability" >&5
- echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3437,11 +3633,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3454,7 +3660,7 @@
-
- ac_header_compiler=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
- echo "${ECHO_T}$ac_header_compiler" >&6
-
-@@ -3462,7 +3668,6 @@
- echo "$as_me:$LINENO: checking $ac_header presence" >&5
- echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3480,6 +3685,7 @@
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-@@ -3499,33 +3705,32 @@
- echo "${ECHO_T}$ac_header_preproc" >&6
-
- # So? What about this header?
--case $ac_header_compiler:$ac_header_preproc in
-- yes:no )
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+ yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
- echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
--echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-- (
-- cat <<\_ASBOX
--## ------------------------------------ ##
--## Report this to bug-autoconf@gnu.org. ##
--## ------------------------------------ ##
--_ASBOX
-- ) |
-- sed "s/^/$as_me: WARNING: /" >&2
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-+ ac_header_preproc=yes
- ;;
-- no:yes )
-+ no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
- echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
--echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
- echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
--## ------------------------------------ ##
--## Report this to bug-autoconf@gnu.org. ##
--## ------------------------------------ ##
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists. ##
-+## ------------------------------------------ ##
- _ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
-@@ -3536,7 +3741,7 @@
- if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- eval "$as_ac_Header=$ac_header_preproc"
-+ eval "$as_ac_Header=\$ac_header_preproc"
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-@@ -3553,78 +3758,243 @@
-
-
-
--echo "$as_me:$LINENO: checking machine endianess" >&5
--echo $ECHO_N "checking machine endianess... $ECHO_C" >&6
-+echo "$as_me:$LINENO: checking whether byte ordering is bigendian" >&5
-+echo $ECHO_N "checking whether byte ordering is bigendian... $ECHO_C" >&6
-+if test "${ac_cv_c_bigendian+set}" = set; then
-+ echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+ # See if sys/param.h defines the BYTE_ORDER macro.
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h. */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h. */
-+#include <sys/types.h>
-+#include <sys/param.h>
-
-- cat > conftest.c << EOF
--# include <stdio.h>
--# include <stdlib.h>
-+int
-+main ()
-+{
-+#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN
-+ bogus endian macros
-+#endif
-
-- int main()
-- {
-- union
-- {
-- short s;
-- char c[sizeof(short)];
-- } un;
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>conftest.er1
-+ ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ # It does; now see whether it defined to BIG_ENDIAN or not.
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h. */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h. */
-+#include <sys/types.h>
-+#include <sys/param.h>
-
-- un.s = 0x0102;
-- if (sizeof (short) == 2)
-- {
-- if (un.c [0] == 1 && un.c [1] == 2)
-- {
-- printf("B\n");
-- }
-- else
-- {
-- if (un.c [0] == 2 && un.c [1] == 1)
-- {
-- printf("L\n");
-- }
-- }
-- }
-- else
-- {
-- printf("?\n");
-- }
-- return (EXIT_SUCCESS);
-- }
--EOF
-- ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS > /dev/null 2>&1
-- # Oopz 4.3 BSD doesn't have this. Sorry.
-- if test ! -x conftest ; then
-- ac_cv_libnet_endianess=unknown
-- else
-- ./conftest > conftest.out
-- result=`cat conftest.out`
-- if test $result = "B"; then
-- ac_cv_libnet_endianess=big
-- elif test $result = "L"; then
-- ac_cv_libnet_endianess=lil
-- else
-- ac_cv_libnet_endianess=unknown
-- fi
-- fi
-- rm -f conftest* core core.conftest
-+int
-+main ()
-+{
-+#if BYTE_ORDER != BIG_ENDIAN
-+ not big endian
-+#endif
-
-- echo "$as_me:$LINENO: result: $ac_cv_libnet_endianess" >&5
--echo "${ECHO_T}$ac_cv_libnet_endianess" >&6
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>conftest.er1
-+ ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ ac_cv_c_bigendian=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-
-- if test $ac_cv_libnet_endianess = big ; then
-- cat >>confdefs.h <<\_ACEOF
-+ac_cv_c_bigendian=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+else
-+ echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+# It does not; compile a test program.
-+if test "$cross_compiling" = yes; then
-+ # try to guess the endianness by grepping values into an object file
-+ ac_cv_c_bigendian=unknown
-+ cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h. */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h. */
-+short ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
-+short ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
-+void _ascii () { char *s = (char *) ascii_mm; s = (char *) ascii_ii; }
-+short ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
-+short ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
-+void _ebcdic () { char *s = (char *) ebcdic_mm; s = (char *) ebcdic_ii; }
-+int
-+main ()
-+{
-+ _ascii (); _ebcdic ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>conftest.er1
-+ ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ if grep BIGenDianSyS conftest.$ac_objext >/dev/null ; then
-+ ac_cv_c_bigendian=yes
-+fi
-+if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
-+ if test "$ac_cv_c_bigendian" = unknown; then
-+ ac_cv_c_bigendian=no
-+ else
-+ # finding both strings is unlikely to happen, but who knows?
-+ ac_cv_c_bigendian=unknown
-+ fi
-+fi
-+else
-+ echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+else
-+ cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h. */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h. */
-+int
-+main ()
-+{
-+ /* Are we little or big endian? From Harbison&Steele. */
-+ union
-+ {
-+ long l;
-+ char c[sizeof (long)];
-+ } u;
-+ u.l = 1;
-+ exit (u.c[sizeof (long) - 1] == 1);
-+}
-+_ACEOF
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ ac_cv_c_bigendian=no
-+else
-+ echo "$as_me: program exited with status $ac_status" >&5
-+echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+( exit $ac_status )
-+ac_cv_c_bigendian=yes
-+fi
-+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+fi
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_c_bigendian" >&5
-+echo "${ECHO_T}$ac_cv_c_bigendian" >&6
-+case $ac_cv_c_bigendian in
-+ yes)
-+
-+ cat >>confdefs.h <<\_ACEOF
- #define LIBNET_BIG_ENDIAN 1
- _ACEOF
-
-- ENDIANESS="LIBNET_BIG_ENDIAN"
-- LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_BIG_ENDIAN"
-- elif test $ac_cv_libnet_endianess = lil ; then
-- cat >>confdefs.h <<\_ACEOF
-+ ENDIANESS="LIBNET_BIG_ENDIAN"
-+ LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_BIG_ENDIAN"
-+ ;;
-+ no)
-+
-+ cat >>confdefs.h <<\_ACEOF
- #define LIBNET_LIL_ENDIAN 1
- _ACEOF
-
-- ENDIANESS="LIBNET_LIL_ENDIAN"
-- LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_LIL_ENDIAN"
-- fi
-+ ENDIANESS="LIBNET_LIL_ENDIAN"
-+ LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_LIL_ENDIAN"
-+ ;;
-+ *)
-+ { echo "$as_me:$LINENO: WARNING: cannot detect endianess. try setting ac_cv_c_bigendian to yes or no" >&5
-+echo "$as_me: WARNING: cannot detect endianess. try setting ac_cv_c_bigendian to yes or no" >&2;} ;;
-+esac
-+
-
- echo "$as_me:$LINENO: checking if unaligned accesses fail" >&5
- echo $ECHO_N "checking if unaligned accesses fail... $ECHO_C" >&6
-@@ -3714,7 +4084,6 @@
- else
- ac_pattern="Autoconf.*'x'"
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3734,7 +4103,6 @@
-
- if test $ac_cv_prog_gcc_traditional = no; then
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -3774,21 +4142,28 @@
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
-+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
-+#define $ac_func innocuous_$ac_func
-+
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-+
- #ifdef __STDC__
- # include <limits.h>
- #else
- # include <assert.h>
- #endif
-+
-+#undef $ac_func
-+
- /* Override any gcc2 internal prototype to avoid an error. */
- #ifdef __cplusplus
- extern "C"
-@@ -3819,11 +4194,21 @@
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+ (eval $ac_link) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3836,7 +4221,8 @@
-
- eval "$as_ac_var=no"
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-@@ -3853,27 +4239,69 @@
- echo $ECHO_N "checking link-layer packet interface type... $ECHO_C" >&6
-
- if test -r /dev/bpf0 ; then
-- LIBOBJS="$LIBOBJS libnet_link_bpf.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_bpf.$ac_objext" | \
-+ *" libnet_link_bpf.$ac_objext" | \
-+ "libnet_link_bpf.$ac_objext "* | \
-+ *" libnet_link_bpf.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_bpf.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found bpf" >&5
- echo "${ECHO_T}found bpf" >&6
- elif test -r /usr/include/net/pfilt.h ; then
-- LIBOBJS="$LIBOBJS libnet_link_pf.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_pf.$ac_objext" | \
-+ *" libnet_link_pf.$ac_objext" | \
-+ "libnet_link_pf.$ac_objext "* | \
-+ *" libnet_link_pf.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_pf.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found pf" >&5
- echo "${ECHO_T}found pf" >&6
- elif test -r /dev/nit ; then
-- LIBOBJS="$LIBOBJS libnet_link_snit.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_snit.$ac_objext" | \
-+ *" libnet_link_snit.$ac_objext" | \
-+ "libnet_link_snit.$ac_objext "* | \
-+ *" libnet_link_snit.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_snit.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found snit" >&5
- echo "${ECHO_T}found snit" >&6
- elif test -r /usr/include/sys/net/nit.h ; then
-- LIBOBJS="$LIBOBJS libnet_link_nit.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_nit.$ac_objext" | \
-+ *" libnet_link_nit.$ac_objext" | \
-+ "libnet_link_nit.$ac_objext "* | \
-+ *" libnet_link_nit.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_nit.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found nit" >&5
- echo "${ECHO_T}found nit" >&6
- elif test -r /usr/include/net/raw.h ; then
-- LIBOBJS="$LIBOBJS libnet_link_snoop.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_snoop.$ac_objext" | \
-+ *" libnet_link_snoop.$ac_objext" | \
-+ "libnet_link_snoop.$ac_objext "* | \
-+ *" libnet_link_snoop.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_snoop.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found snoop" >&5
- echo "${ECHO_T}found snoop" >&6
- elif test -r /usr/include/sys/dlpi.h ; then
-- LIBOBJS="$LIBOBJS libnet_link_dlpi.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_dlpi.$ac_objext" | \
-+ *" libnet_link_dlpi.$ac_objext" | \
-+ "libnet_link_dlpi.$ac_objext "* | \
-+ *" libnet_link_dlpi.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_dlpi.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found dlpi" >&5
- echo "${ECHO_T}found dlpi" >&6
- cat >>confdefs.h <<\_ACEOF
-@@ -3881,7 +4309,14 @@
- _ACEOF
-
- elif test -r /usr/include/linux/socket.h ; then
-- LIBOBJS="$LIBOBJS libnet_link_linux.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_linux.$ac_objext" | \
-+ *" libnet_link_linux.$ac_objext" | \
-+ "libnet_link_linux.$ac_objext "* | \
-+ *" libnet_link_linux.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_linux.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found linux primitives" >&5
- echo "${ECHO_T}found linux primitives" >&6
-
-@@ -3995,19 +4430,47 @@
-
- fi
- elif test -c /dev/bpf0 ; then # check again in case not readable
-- LIBOBJS="$LIBOBJS libnet_link_bpf.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_bpf.$ac_objext" | \
-+ *" libnet_link_bpf.$ac_objext" | \
-+ "libnet_link_bpf.$ac_objext "* | \
-+ *" libnet_link_bpf.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_bpf.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found bpf" >&5
- echo "${ECHO_T}found bpf" >&6
- elif test -c /dev/nit ; then # check again in case not readable
-- LIBOBJS="$LIBOBJS libnet_link_snit.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_snit.$ac_objext" | \
-+ *" libnet_link_snit.$ac_objext" | \
-+ "libnet_link_snit.$ac_objext "* | \
-+ *" libnet_link_snit.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_snit.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found snit" >&5
- echo "${ECHO_T}found snit" >&6
- elif test "$target_os" = "cygwin" ; then
-- LIBOBJS="$LIBOBJS libnet_link_win32.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_win32.$ac_objext" | \
-+ *" libnet_link_win32.$ac_objext" | \
-+ "libnet_link_win32.$ac_objext "* | \
-+ *" libnet_link_win32.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_win32.$ac_objext" ;;
-+esac
-+
- echo "$as_me:$LINENO: result: found win32 wpcap" >&5
- echo "${ECHO_T}found win32 wpcap" >&6
- else
-- LIBOBJS="$LIBOBJS libnet_link_none.$ac_objext"
-+ case $LIBOBJS in
-+ "libnet_link_none.$ac_objext" | \
-+ *" libnet_link_none.$ac_objext" | \
-+ "libnet_link_none.$ac_objext "* | \
-+ *" libnet_link_none.$ac_objext "* ) ;;
-+ *) LIBOBJS="$LIBOBJS libnet_link_none.$ac_objext" ;;
-+esac
-+
- { echo "$as_me:$LINENO: WARNING: could not find a link-layer packet interface" >&5
- echo "$as_me: WARNING: could not find a link-layer packet interface" >&2;}
- { echo "$as_me:$LINENO: WARNING: link-layer packet injection will not be available" >&5
-@@ -4054,7 +4517,6 @@
- echo "$as_me:$LINENO: checking $ac_header usability" >&5
- echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4065,11 +4527,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4082,7 +4554,7 @@
-
- ac_header_compiler=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
- echo "${ECHO_T}$ac_header_compiler" >&6
-
-@@ -4090,7 +4562,6 @@
- echo "$as_me:$LINENO: checking $ac_header presence" >&5
- echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4108,6 +4579,7 @@
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-@@ -4127,33 +4599,32 @@
- echo "${ECHO_T}$ac_header_preproc" >&6
-
- # So? What about this header?
--case $ac_header_compiler:$ac_header_preproc in
-- yes:no )
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+ yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
- echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
--echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-- (
-- cat <<\_ASBOX
--## ------------------------------------ ##
--## Report this to bug-autoconf@gnu.org. ##
--## ------------------------------------ ##
--_ASBOX
-- ) |
-- sed "s/^/$as_me: WARNING: /" >&2
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-+ ac_header_preproc=yes
- ;;
-- no:yes )
-+ no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
- echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
--echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
- echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
--## ------------------------------------ ##
--## Report this to bug-autoconf@gnu.org. ##
--## ------------------------------------ ##
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists. ##
-+## ------------------------------------------ ##
- _ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
-@@ -4164,7 +4635,7 @@
- if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- eval "$as_ac_Header=$ac_header_preproc"
-+ eval "$as_ac_Header=\$ac_header_preproc"
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-@@ -4265,7 +4736,6 @@
- echo "$as_me:$LINENO: checking $ac_header usability" >&5
- echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4276,11 +4746,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4293,7 +4773,7 @@
-
- ac_header_compiler=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
- echo "${ECHO_T}$ac_header_compiler" >&6
-
-@@ -4301,7 +4781,6 @@
- echo "$as_me:$LINENO: checking $ac_header presence" >&5
- echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4319,6 +4798,7 @@
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-@@ -4338,33 +4818,32 @@
- echo "${ECHO_T}$ac_header_preproc" >&6
-
- # So? What about this header?
--case $ac_header_compiler:$ac_header_preproc in
-- yes:no )
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+ yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
- echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
--echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-- (
-- cat <<\_ASBOX
--## ------------------------------------ ##
--## Report this to bug-autoconf@gnu.org. ##
--## ------------------------------------ ##
--_ASBOX
-- ) |
-- sed "s/^/$as_me: WARNING: /" >&2
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-+ ac_header_preproc=yes
- ;;
-- no:yes )
-+ no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
- echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
--echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
- echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
--## ------------------------------------ ##
--## Report this to bug-autoconf@gnu.org. ##
--## ------------------------------------ ##
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists. ##
-+## ------------------------------------------ ##
- _ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
-@@ -4375,7 +4854,7 @@
- if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- eval "$as_ac_Header=$ac_header_preproc"
-+ eval "$as_ac_Header=\$ac_header_preproc"
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-@@ -4426,7 +4905,6 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lsocket $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4450,11 +4928,21 @@
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+ (eval $ac_link) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4467,7 +4955,8 @@
-
- ac_cv_lib_socket_socket=no
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
- echo "$as_me:$LINENO: result: $ac_cv_lib_socket_socket" >&5
-@@ -4494,7 +4983,6 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lnsl $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4518,11 +5006,21 @@
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+ (eval $ac_link) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4535,7 +5033,8 @@
-
- ac_cv_lib_nsl_gethostbyname=no
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
- echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5
-@@ -4616,7 +5115,6 @@
- echo "$as_me:$LINENO: checking $ac_header usability" >&5
- echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4627,11 +5125,21 @@
- _ACEOF
- rm -f conftest.$ac_objext
- if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+ (eval $ac_compile) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4644,7 +5152,7 @@
-
- ac_header_compiler=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
- echo "${ECHO_T}$ac_header_compiler" >&6
-
-@@ -4652,7 +5160,6 @@
- echo "$as_me:$LINENO: checking $ac_header presence" >&5
- echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4670,6 +5177,7 @@
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-@@ -4689,33 +5197,32 @@
- echo "${ECHO_T}$ac_header_preproc" >&6
-
- # So? What about this header?
--case $ac_header_compiler:$ac_header_preproc in
-- yes:no )
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+ yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
- echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
--echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-- (
-- cat <<\_ASBOX
--## ------------------------------------ ##
--## Report this to bug-autoconf@gnu.org. ##
--## ------------------------------------ ##
--_ASBOX
-- ) |
-- sed "s/^/$as_me: WARNING: /" >&2
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-+ ac_header_preproc=yes
- ;;
-- no:yes )
-+ no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
- echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
--echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
- echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
--## ------------------------------------ ##
--## Report this to bug-autoconf@gnu.org. ##
--## ------------------------------------ ##
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists. ##
-+## ------------------------------------------ ##
- _ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
-@@ -4726,7 +5233,7 @@
- if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- eval "$as_ac_Header=$ac_header_preproc"
-+ eval "$as_ac_Header=\$ac_header_preproc"
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-@@ -4763,7 +5270,6 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lpacket $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4787,11 +5293,21 @@
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+ (eval $ac_link) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4804,7 +5320,8 @@
-
- ac_cv_lib_packet_PacketSetMode=no
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
- echo "$as_me:$LINENO: result: $ac_cv_lib_packet_PacketSetMode" >&5
-@@ -4831,7 +5348,6 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lwpcap $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line $LINENO "configure"
- /* confdefs.h. */
- _ACEOF
- cat confdefs.h >>conftest.$ac_ext
-@@ -4855,11 +5371,21 @@
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+ (eval $ac_link) 2>conftest.er1
- ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4872,7 +5398,8 @@
-
- ac_cv_lib_wpcap_pcap_setmode=no
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
- echo "$as_me:$LINENO: result: $ac_cv_lib_wpcap_pcap_setmode" >&5
-@@ -4934,13 +5461,13 @@
- # `set' does not quote correctly, so add quotes (double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
-- "s/'/'\\\\''/g;
-- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-+ "s/'/'\\\\''/g;
-+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n \
-- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
-+ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
- } |
-@@ -4970,13 +5497,13 @@
- # trailing colons and then remove the whole line if VPATH becomes empty
- # (actually we leave an empty line to preserve line numbers).
- if test "x$srcdir" = x.; then
-- ac_vpsub='/^[ ]*VPATH[ ]*=/{
-+ ac_vpsub='/^[ ]*VPATH[ ]*=/{
- s/:*\$(srcdir):*/:/;
- s/:*\${srcdir}:*/:/;
- s/:*@srcdir@:*/:/;
--s/^\([^=]*=[ ]*\):*/\1/;
-+s/^\([^=]*=[ ]*\):*/\1/;
- s/:*$//;
--s/^[^=]*=[ ]*$//;
-+s/^[^=]*=[ ]*$//;
- }'
- fi
-
-@@ -4987,7 +5514,7 @@
- for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_i=`echo "$ac_i" |
-- sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
-+ sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
- # 2. Add them.
- ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
- ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
-@@ -5011,6 +5538,13 @@
- Usually this means the macro was only invoked conditionally." >&2;}
- { (exit 1); exit 1; }; }
- fi
-+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
-+ { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
-+Usually this means the macro was only invoked conditionally." >&5
-+echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
-+Usually this means the macro was only invoked conditionally." >&2;}
-+ { (exit 1); exit 1; }; }
-+fi
-
- : ${CONFIG_STATUS=./config.status}
- ac_clean_files_save=$ac_clean_files
-@@ -5045,9 +5579,10 @@
- elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
- fi
-+DUALCASE=1; export DUALCASE # for MKS sh
-
- # Support unset when possible.
--if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
-+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
- else
- as_unset=false
-@@ -5066,7 +5601,7 @@
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
- do
-- if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then
-+ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- $as_unset $as_var
-@@ -5245,16 +5780,17 @@
- if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
- else
-+ test -d ./-p && rmdir ./-p
- as_mkdir_p=false
- fi
-
- as_executable_p="test -f"
-
- # Sed expression to map a string onto a valid CPP name.
--as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
-+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
- # Sed expression to map a string onto a valid variable name.
--as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
-+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
- # IFS
-@@ -5281,7 +5817,7 @@
- cat >&5 <<_CSEOF
-
- This file was extended by $as_me, which was
--generated by GNU Autoconf 2.57. Invocation command line was
-+generated by GNU Autoconf 2.59. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
-@@ -5325,9 +5861,9 @@
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
-- instantiate the configuration file FILE
-+ instantiate the configuration file FILE
- --header=FILE[:TEMPLATE]
-- instantiate the configuration header FILE
-+ instantiate the configuration header FILE
-
- Configuration files:
- $config_files
-@@ -5344,11 +5880,10 @@
- cat >>$CONFIG_STATUS <<_ACEOF
- ac_cs_version="\\
- config.status
--configured by $0, generated by GNU Autoconf 2.57,
-+configured by $0, generated by GNU Autoconf 2.59,
- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-
--Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
--Free Software Foundation, Inc.
-+Copyright (C) 2003 Free Software Foundation, Inc.
- This config.status script is free software; the Free Software Foundation
- gives unlimited permission to copy, distribute and modify it."
- srcdir=$srcdir
-@@ -5565,6 +6100,7 @@
- s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
- s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
- s,@INSTALL_DATA@,$INSTALL_DATA,;t t
-+s,@CYGPATH_W@,$CYGPATH_W,;t t
- s,@PACKAGE@,$PACKAGE,;t t
- s,@VERSION@,$VERSION,;t t
- s,@ACLOCAL@,$ACLOCAL,;t t
-@@ -5572,13 +6108,17 @@
- s,@AUTOMAKE@,$AUTOMAKE,;t t
- s,@AUTOHEADER@,$AUTOHEADER,;t t
- s,@MAKEINFO@,$MAKEINFO,;t t
--s,@AMTAR@,$AMTAR,;t t
- s,@install_sh@,$install_sh,;t t
- s,@STRIP@,$STRIP,;t t
- s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
- s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
-+s,@mkdir_p@,$mkdir_p,;t t
- s,@AWK@,$AWK,;t t
- s,@SET_MAKE@,$SET_MAKE,;t t
-+s,@am__leading_dot@,$am__leading_dot,;t t
-+s,@AMTAR@,$AMTAR,;t t
-+s,@am__tar@,$am__tar,;t t
-+s,@am__untar@,$am__untar,;t t
- s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
- s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
- s,@MAINT@,$MAINT,;t t
-@@ -5596,6 +6136,8 @@
- s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
- s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
- s,@CCDEPMODE@,$CCDEPMODE,;t t
-+s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
-+s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
- s,@RANLIB@,$RANLIB,;t t
- s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
- s,@CPP@,$CPP,;t t
-@@ -5638,9 +6180,9 @@
- (echo ':t
- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
- if test -z "$ac_sed_cmds"; then
-- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
-+ ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
- else
-- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
-+ ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
- fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
- ac_beg=$ac_end
-@@ -5658,21 +6200,21 @@
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
- - | *:- | *:-:* ) # input from stdin
-- cat >$tmp/stdin
-- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-+ cat >$tmp/stdin
-+ ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- * ) ac_file_in=$ac_file.in ;;
- esac
-
- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
- ac_dir=`(dirname "$ac_file") 2>/dev/null ||
- $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$ac_file" : 'X\(//\)[^/]' \| \
-- X"$ac_file" : 'X\(//\)$' \| \
-- X"$ac_file" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$ac_file" : 'X\(//\)[^/]' \| \
-+ X"$ac_file" : 'X\(//\)$' \| \
-+ X"$ac_file" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-@@ -5688,10 +6230,10 @@
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
- $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$as_dir" : 'X\(//\)[^/]' \| \
-- X"$as_dir" : 'X\(//\)$' \| \
-- X"$as_dir" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$as_dir" : 'X\(//\)[^/]' \| \
-+ X"$as_dir" : 'X\(//\)$' \| \
-+ X"$as_dir" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-@@ -5729,12 +6271,45 @@
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
- esac
--# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
--# absolute.
--ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
--ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd`
--ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
--ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
-+
-+# Do not use `cd foo && pwd` to compute absolute paths, because
-+# the directories may not exist.
-+case `pwd` in
-+.) ac_abs_builddir="$ac_dir";;
-+*)
-+ case "$ac_dir" in
-+ .) ac_abs_builddir=`pwd`;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-+ *) ac_abs_builddir=`pwd`/"$ac_dir";;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_builddir=${ac_top_builddir}.;;
-+*)
-+ case ${ac_top_builddir}. in
-+ .) ac_abs_top_builddir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-+ *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_srcdir=$ac_srcdir;;
-+*)
-+ case $ac_srcdir in
-+ .) ac_abs_srcdir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-+ *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_srcdir=$ac_top_srcdir;;
-+*)
-+ case $ac_top_srcdir in
-+ .) ac_abs_top_srcdir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-+ *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-+ esac;;
-+esac
-
-
- case $INSTALL in
-@@ -5756,7 +6331,7 @@
- configure_input="$ac_file. "
- fi
- configure_input=$configure_input"Generated from `echo $ac_file_in |
-- sed 's,.*/,,'` by configure."
-+ sed 's,.*/,,'` by configure."
-
- # First look for the input files in the build tree, otherwise in the
- # src tree.
-@@ -5765,24 +6340,24 @@
- case $f in
- -) echo $tmp/stdin ;;
- [\\/$]*)
-- # Absolute (can't be DOS-style, as IFS=:)
-- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-+ # Absolute (can't be DOS-style, as IFS=:)
-+ test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
-- echo $f;;
-+ echo "$f";;
- *) # Relative
-- if test -f "$f"; then
-- # Build tree
-- echo $f
-- elif test -f "$srcdir/$f"; then
-- # Source tree
-- echo $srcdir/$f
-- else
-- # /dev/null tree
-- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-+ if test -f "$f"; then
-+ # Build tree
-+ echo "$f"
-+ elif test -f "$srcdir/$f"; then
-+ # Source tree
-+ echo "$srcdir/$f"
-+ else
-+ # /dev/null tree
-+ { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
-- fi;;
-+ fi;;
- esac
- done` || { (exit 1); exit 1; }
- _ACEOF
-@@ -5824,12 +6399,12 @@
- # NAME is the cpp macro being defined and VALUE is the value it is being given.
- #
- # ac_d sets the value in "#define NAME VALUE" lines.
--ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)'
--ac_dB='[ ].*$,\1#\2'
-+ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)'
-+ac_dB='[ ].*$,\1#\2'
- ac_dC=' '
- ac_dD=',;t'
- # ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
--ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
-+ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
- ac_uB='$,\1#\2define\3'
- ac_uC=' '
- ac_uD=',;t'
-@@ -5838,11 +6413,11 @@
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
- - | *:- | *:-:* ) # input from stdin
-- cat >$tmp/stdin
-- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-+ cat >$tmp/stdin
-+ ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- * ) ac_file_in=$ac_file.in ;;
- esac
-
-@@ -5856,28 +6431,29 @@
- case $f in
- -) echo $tmp/stdin ;;
- [\\/$]*)
-- # Absolute (can't be DOS-style, as IFS=:)
-- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-+ # Absolute (can't be DOS-style, as IFS=:)
-+ test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
-- echo $f;;
-+ # Do quote $f, to prevent DOS paths from being IFS'd.
-+ echo "$f";;
- *) # Relative
-- if test -f "$f"; then
-- # Build tree
-- echo $f
-- elif test -f "$srcdir/$f"; then
-- # Source tree
-- echo $srcdir/$f
-- else
-- # /dev/null tree
-- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-+ if test -f "$f"; then
-+ # Build tree
-+ echo "$f"
-+ elif test -f "$srcdir/$f"; then
-+ # Source tree
-+ echo "$srcdir/$f"
-+ else
-+ # /dev/null tree
-+ { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
-- fi;;
-+ fi;;
- esac
- done` || { (exit 1); exit 1; }
- # Remove the trailing spaces.
-- sed 's/[ ]*$//' $ac_file_inputs >$tmp/in
-+ sed 's/[ ]*$//' $ac_file_inputs >$tmp/in
-
- _ACEOF
-
-@@ -5900,9 +6476,9 @@
- s,[\\$`],\\&,g
- t clear
- : clear
--s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
-+s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
- t end
--s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
-+s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
- : end
- _ACEOF
- # If some macros were called several times there might be several times
-@@ -5916,13 +6492,13 @@
- # example, in the case of _POSIX_SOURCE, which is predefined and required
- # on some systems where configure will not decide to define it.
- cat >>conftest.undefs <<\_ACEOF
--s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
-+s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
- _ACEOF
-
- # Break up conftest.defines because some shells have a limit on the size
- # of here documents, and old seds have small limits too (100 cmds).
- echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
--echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
-+echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
- echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
- echo ' :' >>$CONFIG_STATUS
- rm -f conftest.tail
-@@ -5931,7 +6507,7 @@
- # Write a limited-size here document to $tmp/defines.sed.
- echo ' cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
- # Speed up: don't consider the non `#define' lines.
-- echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS
-+ echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS
- # Work around the forget-to-reset-the-flag bug.
- echo 't clr' >>$CONFIG_STATUS
- echo ': clr' >>$CONFIG_STATUS
-@@ -5958,7 +6534,7 @@
- # Write a limited-size here document to $tmp/undefs.sed.
- echo ' cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
- # Speed up: don't consider the non `#undef'
-- echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS
-+ echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS
- # Work around the forget-to-reset-the-flag bug.
- echo 't clr' >>$CONFIG_STATUS
- echo ': clr' >>$CONFIG_STATUS
-@@ -5992,10 +6568,10 @@
- else
- ac_dir=`(dirname "$ac_file") 2>/dev/null ||
- $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$ac_file" : 'X\(//\)[^/]' \| \
-- X"$ac_file" : 'X\(//\)$' \| \
-- X"$ac_file" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$ac_file" : 'X\(//\)[^/]' \| \
-+ X"$ac_file" : 'X\(//\)$' \| \
-+ X"$ac_file" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-@@ -6011,10 +6587,10 @@
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
- $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$as_dir" : 'X\(//\)[^/]' \| \
-- X"$as_dir" : 'X\(//\)$' \| \
-- X"$as_dir" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$as_dir" : 'X\(//\)[^/]' \| \
-+ X"$as_dir" : 'X\(//\)$' \| \
-+ X"$as_dir" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-@@ -6034,13 +6610,29 @@
- cat $tmp/config.h
- rm -f $tmp/config.h
- fi
-- # Run the commands associated with the file.
-- case $ac_file in
-- include/config.h ) # update the timestamp
--echo 'timestamp for include/config.h' >"include/stamp-h1"
-- ;;
-+# Compute $ac_file's index in $config_headers.
-+_am_stamp_count=1
-+for _am_header in $config_headers :; do
-+ case $_am_header in
-+ $ac_file | $ac_file:* )
-+ break ;;
-+ * )
-+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
- done
-+echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null ||
-+$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-+ X$ac_file : 'X\(//\)[^/]' \| \
-+ X$ac_file : 'X\(//\)$' \| \
-+ X$ac_file : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
-+echo X$ac_file |
-+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-+ /^X\(\/\/\)$/{ s//\1/; q; }
-+ /^X\(\/\).*/{ s//\1/; q; }
-+ s/.*/./; q'`/stamp-h$_am_stamp_count
-+done
- _ACEOF
- cat >>$CONFIG_STATUS <<\_ACEOF
-
-@@ -6052,16 +6644,41 @@
- ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
- $as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$ac_dest" : 'X\(//\)[^/]' \| \
-- X"$ac_dest" : 'X\(//\)$' \| \
-- X"$ac_dest" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$ac_dest" : 'X\(//\)[^/]' \| \
-+ X"$ac_dest" : 'X\(//\)$' \| \
-+ X"$ac_dest" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$ac_dest" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-+ { if $as_mkdir_p; then
-+ mkdir -p "$ac_dir"
-+ else
-+ as_dir="$ac_dir"
-+ as_dirs=
-+ while test ! -d "$as_dir"; do
-+ as_dirs="$as_dir $as_dirs"
-+ as_dir=`(dirname "$as_dir") 2>/dev/null ||
-+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-+ X"$as_dir" : 'X\(//\)[^/]' \| \
-+ X"$as_dir" : 'X\(//\)$' \| \
-+ X"$as_dir" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
-+echo X"$as_dir" |
-+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-+ /^X\(\/\/\)$/{ s//\1/; q; }
-+ /^X\(\/\).*/{ s//\1/; q; }
-+ s/.*/./; q'`
-+ done
-+ test ! -n "$as_dirs" || mkdir $as_dirs
-+ fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
-+ { (exit 1); exit 1; }; }; }
-+
- ac_builddir=.
-
- if test "$ac_dir" != .; then
-@@ -6087,12 +6704,45 @@
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
- esac
--# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
--# absolute.
--ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
--ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd`
--ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
--ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
-+
-+# Do not use `cd foo && pwd` to compute absolute paths, because
-+# the directories may not exist.
-+case `pwd` in
-+.) ac_abs_builddir="$ac_dir";;
-+*)
-+ case "$ac_dir" in
-+ .) ac_abs_builddir=`pwd`;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-+ *) ac_abs_builddir=`pwd`/"$ac_dir";;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_builddir=${ac_top_builddir}.;;
-+*)
-+ case ${ac_top_builddir}. in
-+ .) ac_abs_top_builddir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-+ *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_srcdir=$ac_srcdir;;
-+*)
-+ case $ac_srcdir in
-+ .) ac_abs_srcdir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-+ *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-+ esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_srcdir=$ac_top_srcdir;;
-+*)
-+ case $ac_top_srcdir in
-+ .) ac_abs_top_srcdir=$ac_abs_builddir;;
-+ [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-+ *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-+ esac;;
-+esac
-
-
- { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
-@@ -6110,10 +6760,10 @@
- if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
- dirpart=`(dirname "$mf") 2>/dev/null ||
- $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$mf" : 'X\(//\)[^/]' \| \
-- X"$mf" : 'X\(//\)$' \| \
-- X"$mf" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$mf" : 'X\(//\)[^/]' \| \
-+ X"$mf" : 'X\(//\)$' \| \
-+ X"$mf" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$mf" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-@@ -6123,36 +6773,30 @@
- else
- continue
- fi
-- grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue
-- # Extract the definition of DEP_FILES from the Makefile without
-- # running `make'.
-- DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
-+ # Extract the definition of DEPDIR, am__include, and am__quote
-+ # from the Makefile without running `make'.
-+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
-+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
-+ test -z "am__include" && continue
-+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
-- U=`sed -n -e '/^U = / s///p' < "$mf"`
-- test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
-- # We invoke sed twice because it is the simplest approach to
-- # changing $(DEPDIR) to its actual value in the expansion.
-- for file in `sed -n -e '
-- /^DEP_FILES = .*\\\\$/ {
-- s/^DEP_FILES = //
-- :loop
-- s/\\\\$//
-- p
-- n
-- /\\\\$/ b loop
-- p
-- }
-- /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
-+ U=`sed -n 's/^U = //p' < "$mf"`
-+ # Find all dependency output files, they are included files with
-+ # $(DEPDIR) in their names. We invoke sed twice because it is the
-+ # simplest approach to changing $(DEPDIR) to its actual value in the
-+ # expansion.
-+ for file in `sed -n "
-+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`(dirname "$file") 2>/dev/null ||
- $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$file" : 'X\(//\)[^/]' \| \
-- X"$file" : 'X\(//\)$' \| \
-- X"$file" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$file" : 'X\(//\)[^/]' \| \
-+ X"$file" : 'X\(//\)$' \| \
-+ X"$file" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-@@ -6168,10 +6812,10 @@
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
- $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$as_dir" : 'X\(//\)[^/]' \| \
-- X"$as_dir" : 'X\(//\)$' \| \
-- X"$as_dir" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$as_dir" : 'X\(//\)[^/]' \| \
-+ X"$as_dir" : 'X\(//\)$' \| \
-+ X"$as_dir" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
diff --git a/packages/libnet/libnet-1.1.2.1/fix-endianess-test.patch b/packages/libnet/libnet-1.1.2.1/fix-endianess-test.patch
index e75ce6737a..6d93e04f68 100644
--- a/packages/libnet/libnet-1.1.2.1/fix-endianess-test.patch
+++ b/packages/libnet/libnet-1.1.2.1/fix-endianess-test.patch
@@ -34,93 +34,3 @@ Also remove the old test from aclocal.m4.
AC_LBL_UNALIGNED_ACCESS
dnl AC_LBL_LIBRARY_NET
---- libnet/aclocal.m4 2005/11/15 04:02:01 1.1
-+++ libnet/aclocal.m4 2005/11/15 04:03:43
-@@ -279,87 +279,6 @@
-
-
- dnl
--dnl Checks endianess
--dnl
--dnl usage:
--dnl
--dnl AC_LIBNET_ENDIAN_CHECK
--dnl
--dnl results:
--dnl
--dnl LIBNET_BIG_ENDIAN = 1 or
--dnl LIBNET_LIL_ENDIAN = 1
--dnl
--
--AC_DEFUN(AC_LIBNET_ENDIAN_CHECK,
-- [AC_MSG_CHECKING(machine endianess)
--
-- cat > conftest.c << EOF
--# include <stdio.h>
--# include <stdlib.h>
--
-- int main()
-- {
-- union
-- {
-- short s;
-- char c[[sizeof(short)]];
-- } un;
--
-- un.s = 0x0102;
-- if (sizeof (short) == 2)
-- {
-- if (un.c [[0]] == 1 && un.c [[1]] == 2)
-- {
-- printf("B\n");
-- }
-- else
-- {
-- if (un.c [[0]] == 2 && un.c [[1]] == 1)
-- {
-- printf("L\n");
-- }
-- }
-- }
-- else
-- {
-- printf("?\n");
-- }
-- return (EXIT_SUCCESS);
-- }
--EOF
-- ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS > /dev/null 2>&1
-- # Oopz 4.3 BSD doesn't have this. Sorry.
-- if test ! -x conftest ; then
--dnl failed to compile for some reason
-- ac_cv_libnet_endianess=unknown
-- else
-- ./conftest > conftest.out
-- result=`cat conftest.out`
-- if test $result = "B"; then
-- ac_cv_libnet_endianess=big
-- elif test $result = "L"; then
-- ac_cv_libnet_endianess=lil
-- else
-- ac_cv_libnet_endianess=unknown
-- fi
-- fi
-- rm -f conftest* core core.conftest
--
-- AC_MSG_RESULT($ac_cv_libnet_endianess)
--
-- if test $ac_cv_libnet_endianess = big ; then
-- AC_DEFINE(LIBNET_BIG_ENDIAN)
-- ENDIANESS="LIBNET_BIG_ENDIAN"
-- LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_BIG_ENDIAN"
-- elif test $ac_cv_libnet_endianess = lil ; then
-- AC_DEFINE(LIBNET_LIL_ENDIAN)
-- ENDIANESS="LIBNET_LIL_ENDIAN"
-- LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_LIL_ENDIAN"
-- fi
-- ])
--
--dnl
- dnl Improved version of AC_CHECK_LIB
- dnl
- dnl Thanks to John Hawkinson (jhawk@mit.edu)
diff --git a/packages/libnet/libnet_1.1.2.1.bb b/packages/libnet/libnet_1.1.2.1.bb
index c28b98a304..92457a8ff4 100644
--- a/packages/libnet/libnet_1.1.2.1.bb
+++ b/packages/libnet/libnet_1.1.2.1.bb
@@ -1,41 +1,38 @@
-SECTION = "libs"
DESCRIPTION = "A packet dissection and creation library"
HOMEPAGE = "http://www.packetfactory.net/libnet/"
-LICENSE = "BSD"
+SECTION = "libs"
PRIORITY = "optional"
+LICENSE = "BSD"
DEPENDS = "libpcap"
-PR = "r0"
-
# There are major API changes beween libnet v1.0 and libnet v1.1
PROVIDES = "libnet-1.1"
+PR = "r1"
SRC_URI = "http://www.packetfactory.net/libnet/dist/libnet-${PV}.tar.gz \
- file://support-uclibc.patch;patch=1 \
- file://fix-endianess-test.patch;patch=1 \
- file://configure.patch;patch=1"
+ file://support-uclibc.patch;patch=1 \
+ file://fix-endianess-test.patch;patch=1"
S = "${WORKDIR}/libnet"
inherit autotools binconfig
-CPPFLAGS_prepend = "-I${S}/libnet/include "
-
-do_configure() {
- oe_runconf
-}
-
-do_stage () {
- oe_runmake -C src 'DESTDIR=${STAGING_LIBDIR}' 'libdir=' install-libLIBRARIES
- oe_runmake -C include 'DESTDIR=${STAGING_INCDIR}' 'includedir=' install-includeHEADERS
- oe_runmake -C include/libnet 'DESTDIR=${STAGING_INCDIR}' 'includedir=' install-libnetincludeHEADERS
+do_configure_prepend() {
+ rm -f aclocal.m4 Makefile.am ltmain.sh
}
-
do_install_append () {
- install -d ${D}${datadir}/man/man3/
- install -d ${D}${bindir}
- install -m 0644 ${S}/doc/man/man3/*.3 ${D}${datadir}/man/man3/
- install -m 0755 ${S}/libnet-config ${D}${bindir}
+ install -d ${D}${datadir}/man/man3/
+ install -d ${D}${bindir}
+ install -m 0644 ${S}/doc/man/man3/*.3 ${D}${datadir}/man/man3/
+ install -m 0755 ${S}/libnet-config ${D}${bindir}
+}
+do_stage () {
+ oe_runmake -C src 'DESTDIR=${STAGING_LIBDIR}' 'libdir=' install-libLIBRARIES
+ oe_runmake -C include 'DESTDIR=${STAGING_INCDIR}' 'includedir=' install-includeHEADERS
+ oe_runmake -C include/libnet 'DESTDIR=${STAGING_INCDIR}' 'includedir=' install-libnetincludeHEADERS
}
PACKAGES = "${PN}-dev ${PN}-doc"
+
FILES_${PN}-dev += "${bindir}/libnet-config"
+
+CPPFLAGS_prepend = "-I${S}/libnet/include "
diff --git a/packages/libpcre/libpcre_4.4.bb b/packages/libpcre/libpcre_4.4.bb
index 941888577b..7b841d0cfc 100644
--- a/packages/libpcre/libpcre_4.4.bb
+++ b/packages/libpcre/libpcre_4.4.bb
@@ -10,6 +10,8 @@ LICENSE = "BSD"
SRC_URI = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-${PV}.tar.bz2"
S = "${WORKDIR}/pcre-${PV}"
+PROVIDES = "pcre"
+
inherit autotools binconfig
PARALLEL_MAKE = ""
diff --git a/packages/libw100/.mtn2git_empty b/packages/libw100/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/libw100/.mtn2git_empty
diff --git a/packages/libw100/libw100_svn.bb b/packages/libw100/libw100_svn.bb
new file mode 100644
index 0000000000..4e6a45b29c
--- /dev/null
+++ b/packages/libw100/libw100_svn.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Acceleration library for ATI imageon chipsets (w100 and w3220)"
+LICENSE = "GPLv2"
+
+PV = "0.0.2+svn${SRCDATE}"
+SRC_URI = "svn://svn.sourceforge.net/svnroot/libw100;module=trunk;proto=https"
+
+S = "${WORKDIR}/trunk"
+
+inherit autotools pkgconfig
+
+do_stage() {
+ autotools_stage_all
+}
+
diff --git a/packages/linux/linux-handhelds-2.6_2.6.17-hh3.bb b/packages/linux/linux-handhelds-2.6_2.6.17-hh3.bb
new file mode 100644
index 0000000000..b34d4630a0
--- /dev/null
+++ b/packages/linux/linux-handhelds-2.6_2.6.17-hh3.bb
@@ -0,0 +1,11 @@
+SECTION = "kernel"
+DESCRIPTION = "handhelds.org Linux kernel 2.6 for PocketPCs and other consumer handheld devices."
+LICENSE = "GPL"
+PR = "r0"
+
+DEFAULT_PREFERENCE = "-1"
+
+SRC_URI = "${HANDHELDS_CVS};module=linux/kernel26;tag=${@'K' + bb.data.getVar('PV',d,1).replace('.', '-')} \
+ file://defconfig"
+
+require linux-handhelds-2.6.inc
diff --git a/packages/linux/linux-handhelds-2.6_cvs.bb b/packages/linux/linux-handhelds-2.6_cvs.bb
index cd4ab10dd1..107b014e60 100644
--- a/packages/linux/linux-handhelds-2.6_cvs.bb
+++ b/packages/linux/linux-handhelds-2.6_cvs.bb
@@ -6,8 +6,8 @@ PR = "r5"
K_MAJOR = "2"
K_MINOR = "6"
-K_MICRO = "17"
-HHV = "2"
+K_MICRO = "18"
+HHV = "0"
SRC_URI = "${HANDHELDS_CVS};module=linux/kernel26 \
file://24-hostap_cs_id.diff;patch=1;maxdate=20061104 \
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/sharpsl-pm-postresume-r1.patch b/packages/linux/linux-openzaurus-2.6.18+git/sharpsl-pm-postresume-r1.patch
new file mode 100644
index 0000000000..409daf03e6
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/sharpsl-pm-postresume-r1.patch
@@ -0,0 +1,30 @@
+ arch/arm/common/sharpsl_pm.c | 3 +++
+ include/asm-arm/hardware/sharpsl_pm.h | 1 +
+ 2 files changed, 4 insertions(+)
+
+Index: git/include/asm-arm/hardware/sharpsl_pm.h
+===================================================================
+--- git.orig/include/asm-arm/hardware/sharpsl_pm.h 2006-10-31 16:09:33.000000000 +0000
++++ git/include/asm-arm/hardware/sharpsl_pm.h 2006-11-07 22:08:41.000000000 +0000
+@@ -26,6 +26,7 @@ struct sharpsl_charger_machinfo {
+ void (*presuspend)(void);
+ void (*postsuspend)(void);
+ void (*earlyresume)(void);
++ void (*postresume)(void);
+ unsigned long (*read_devdata)(int);
+ #define SHARPSL_BATT_VOLT 1
+ #define SHARPSL_BATT_TEMP 2
+Index: git/arch/arm/common/sharpsl_pm.c
+===================================================================
+--- git.orig/arch/arm/common/sharpsl_pm.c 2006-11-07 22:03:48.000000000 +0000
++++ git/arch/arm/common/sharpsl_pm.c 2006-11-07 22:04:20.000000000 +0000
+@@ -584,6 +584,9 @@ static int corgi_pxa_pm_enter(suspend_st
+ if (sharpsl_pm.machinfo->earlyresume)
+ sharpsl_pm.machinfo->earlyresume();
+
++ if (sharpsl_pm.machinfo->postresume)
++ sharpsl_pm.machinfo->postresume();
++
+ dev_dbg(sharpsl_pm.dev, "SharpSL resuming...\n");
+
+ return 0;
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/tmio-nand-r7.patch b/packages/linux/linux-openzaurus-2.6.18+git/tmio-nand-r7.patch
new file mode 100644
index 0000000000..b6ce56eea4
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/tmio-nand-r7.patch
@@ -0,0 +1,593 @@
+ drivers/mtd/nand/Kconfig | 7
+ drivers/mtd/nand/Makefile | 1
+ drivers/mtd/nand/tmio.c | 554 ++++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 562 insertions(+)
+
+Index: git/drivers/mtd/nand/tmio.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ git/drivers/mtd/nand/tmio.c 2006-11-07 23:31:12.000000000 +0000
+@@ -0,0 +1,554 @@
++/*
++ * A device driver for NAND flash connected to a Toshiba Mobile IO
++ * controller. This is known to work with the following variants:
++ * TC6393XB revision 3
++ *
++ * Maintainer: Chris Humbert <mahadri+mtd@drigon.com>
++ *
++ * Copyright (C) 2005 Chris Humbert
++ * Copyright (C) 2005 Dirk Opfer
++ * Copyright (C) 2004 SHARP
++ * Copyright (C) 2002 Lineo Japan, Inc.
++ * Copyright (C) Ian Molton and Sebastian Carlier
++ *
++ * Based on Sharp's NAND driver, sharp_sl_tc6393.c
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ */
++
++#include <linux/module.h>
++#include <linux/types.h>
++#include <linux/delay.h>
++#include <linux/wait.h>
++#include <linux/ioport.h>
++#include <linux/mtd/mtd.h>
++#include <linux/mtd/nand.h>
++#include <linux/mtd/nand_ecc.h>
++#include <linux/mtd/partitions.h>
++#include <asm/io.h>
++#include <asm/hardware/tmio.h>
++
++#include <linux/interrupt.h>
++
++#define mtd_printk(level, mtd, format, arg...) \
++ printk (level "%s: " format, mtd->name, ## arg)
++#define mtd_warn(mtd, format, arg...) \
++ mtd_printk (KERN_WARNING, mtd, format, ## arg)
++
++/*--------------------------------------------------------------------------*/
++
++/* tmio_nfcr.mode Register Command List */
++#define FCR_MODE_DATA 0x94 // Data Data_Mode
++#define FCR_MODE_COMMAND 0x95 // Data Command_Mode
++#define FCR_MODE_ADDRESS 0x96 // Data Address_Mode
++
++#define FCR_MODE_HWECC_CALC 0xB4 // HW-ECC Data
++#define FCR_MODE_HWECC_RESULT 0xD4 // HW-ECC Calculation Result Read_Mode
++#define FCR_MODE_HWECC_RESET 0xF4 // HW-ECC Reset
++
++#define FCR_MODE_POWER_ON 0x0C // Power Supply ON to SSFDC card
++#define FCR_MODE_POWER_OFF 0x08 // Power Supply OFF to SSFDC card
++
++#define FCR_MODE_LED_OFF 0x00 // LED OFF
++#define FCR_MODE_LED_ON 0x04 // LED ON
++
++#define FCR_MODE_EJECT_ON 0x68 // Ejection Demand from Penguin is Advanced
++#define FCR_MODE_EJECT_OFF 0x08 // Ejection Demand from Penguin is Not Advanced
++
++#define FCR_MODE_LOCK 0x6C // Operates By Lock_Mode. Ejection Switch is Invalid
++#define FCR_MODE_UNLOCK 0x0C // Operates By UnLock_Mode.Ejection Switch is Effective
++
++#define FCR_MODE_CONTROLLER_ID 0x40 // Controller ID Read
++#define FCR_MODE_STANDBY 0x00 // SSFDC card Changes Standby State
++
++#define FCR_MODE_WE 0x80
++#define FCR_MODE_ECC1 0x40
++#define FCR_MODE_ECC0 0x20
++#define FCR_MODE_CE 0x10
++#define FCR_MODE_PCNT1 0x08
++#define FCR_MODE_PCNT0 0x04
++#define FCR_MODE_ALE 0x02
++#define FCR_MODE_CLE 0x01
++
++#define FCR_STATUS_BUSY 0x80
++
++/*
++ * NAND Flash Host Controller Configuration Register
++ */
++struct tmio_nfhccr {
++ u8 x00[4];
++ u16 command; /* 0x04 Command */
++ u8 x01[0x0a];
++ u16 base[2]; /* 0x10 NAND Flash Control Reg Base Addr*/
++ u8 x02[0x29];
++ u8 intp; /* 0x3d Interrupt Pin */
++ u8 x03[0x0a];
++ u8 inte; /* 0x48 Interrupt Enable */
++ u8 x04;
++ u8 ec; /* 0x4a Event Control */
++ u8 x05;
++ u8 icc; /* 0x4c Internal Clock Control */
++ u8 x06[0x0e];
++ u8 eccc; /* 0x5b ECC Control */
++ u8 x07[4];
++ u8 nftc; /* 0x60 NAND Flash Transaction Control */
++ u8 nfm; /* 0x61 NAND Flash Monitor */
++ u8 nfpsc; /* 0x62 NAND Flash Power Supply Control */
++ u8 nfdc; /* 0x63 NAND Flash Detect Control */
++ u8 x08[0x9c];
++} __attribute__ ((packed));
++
++/*
++ * NAND Flash Control Register
++ */
++struct tmio_nfcr {
++union {
++ u8 u8; /* 0x00 Data Register */
++ u16 u16;
++ u32 u32;
++} __attribute__ ((packed));
++ u8 mode; /* 0x04 Mode Register */
++ u8 status; /* 0x05 Status Register */
++ u8 isr; /* 0x06 Interrupt Status Register */
++ u8 imr; /* 0x07 Interrupt Mask Register */
++} __attribute__ ((packed));
++
++struct tmio_nand {
++ struct mtd_info mtd;
++ struct nand_chip chip;
++
++ struct tmio_nfhccr __iomem * ccr;
++ struct tmio_nfcr __iomem * fcr;
++
++ unsigned int irq;
++
++ /* for tmio_nand_read_byte */
++ u8 read;
++ unsigned read_good:1;
++};
++
++#define mtd_to_tmio(m) container_of(m, struct tmio_nand, mtd)
++
++/*--------------------------------------------------------------------------*/
++
++static void tmio_nand_hwcontrol(struct mtd_info *mtd, int cmd,
++ unsigned int ctrl)
++{
++ struct tmio_nand *tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem *fcr = tmio->fcr;
++ struct nand_chip *chip = mtd->priv;
++
++ if (ctrl & NAND_CTRL_CHANGE) {
++ u8 mode;
++
++ if (ctrl & NAND_NCE) {
++ mode = FCR_MODE_DATA;
++
++ if (ctrl & NAND_CLE)
++ mode |= FCR_MODE_CLE;
++ else
++ mode &= ~FCR_MODE_CLE;
++
++ if (ctrl & NAND_ALE)
++ mode |= FCR_MODE_ALE;
++ else
++ mode &= ~FCR_MODE_ALE;
++ } else {
++ mode = FCR_MODE_STANDBY;
++ }
++
++ iowrite8 (mode, &fcr->mode);
++ tmio->read_good = 0;
++ }
++
++ if (cmd != NAND_CMD_NONE)
++ writeb(cmd, chip->IO_ADDR_W);
++}
++
++static int tmio_nand_dev_ready (struct mtd_info* mtd)
++{
++ struct tmio_nand* tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++
++ return !(ioread8 (&fcr->status) & FCR_STATUS_BUSY);
++}
++
++static irqreturn_t tmio_irq (int irq, void *__tmio)
++{
++ struct tmio_nand* tmio = __tmio;
++ struct nand_chip* this = &tmio->chip;
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++
++ /* disable RDYREQ interrupt */
++ iowrite8 (0x00, &fcr->imr);
++
++ if (unlikely (!waitqueue_active (&this->controller->wq)))
++ printk (KERN_WARNING TMIO_NAME_NAND ": spurious interrupt\n");
++
++ wake_up (&this->controller->wq);
++ return IRQ_HANDLED;
++}
++
++/*
++ * The TMIO core has a RDYREQ interrupt on the posedge of #SMRB.
++ * This interrupt is normally disabled, but for long operations like
++ * erase and write, we enable it to wake us up. The irq handler
++ * disables the interrupt.
++ */
++static int
++tmio_nand_wait (struct mtd_info *mtd, struct nand_chip *this)
++{
++ struct tmio_nand* tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++ long timeout;
++
++ /* enable RDYREQ interrupt */
++ iowrite8 (0x0f, &fcr->isr);
++ iowrite8 (0x81, &fcr->imr);
++
++ timeout = wait_event_timeout (this->controller->wq, tmio_nand_dev_ready (mtd),
++ msecs_to_jiffies (this->state == FL_ERASING ? 400 : 20));
++
++ if (unlikely (!tmio_nand_dev_ready (mtd))) {
++ iowrite8 (0x00, &fcr->imr);
++ mtd_warn (mtd, "still busy with %s after %d ms\n",
++ this->state == FL_ERASING ? "erase" : "program",
++ this->state == FL_ERASING ? 400 : 20);
++
++ } else if (unlikely (!timeout)) {
++ iowrite8 (0x00, &fcr->imr);
++ mtd_warn (mtd, "timeout waiting for interrupt\n");
++ }
++
++ this->cmdfunc (mtd, NAND_CMD_STATUS, -1, -1);
++ return this->read_byte (mtd);
++}
++
++/*
++ * The TMIO controller combines two 8-bit data bytes into one 16-bit
++ * word. This function separates them so nand_base.c works as expected,
++ * especially its NAND_CMD_READID routines.
++ *
++ * To prevent stale data from being read, tmio_nand_hwcontrol() clears
++ * tmio->read_good.
++ */
++static u_char tmio_nand_read_byte (struct mtd_info *mtd)
++{
++ struct tmio_nand* tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++ unsigned int data;
++
++ if (tmio->read_good--)
++ return tmio->read;
++
++ data = ioread16 (&fcr->u16);
++ tmio->read = data >> 8;
++ return data;
++}
++
++/*
++ * The TMIO controller converts an 8-bit NAND interface to a 16-bit
++ * bus interface, so all data reads and writes must be 16-bit wide.
++ * Thus, we implement 16-bit versions of the read, write, and verify
++ * buffer functions.
++ */
++static void
++tmio_nand_write_buf (struct mtd_info *mtd, const u_char *buf, int len)
++{
++ struct tmio_nand* tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++
++ iowrite16_rep (&fcr->u16, buf, len >> 1);
++}
++
++static void tmio_nand_read_buf (struct mtd_info *mtd, u_char *buf, int len)
++{
++ struct tmio_nand* tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++
++ ioread16_rep (&fcr->u16, buf, len >> 1);
++}
++
++static int
++tmio_nand_verify_buf (struct mtd_info *mtd, const u_char *buf, int len)
++{
++ struct tmio_nand* tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++ u16* p = (u16*) buf;
++
++ for (len >>= 1; len; len--)
++ if (*(p++) != ioread16 (&fcr->u16))
++ return -EFAULT;
++ return 0;
++}
++
++static void tmio_nand_enable_hwecc (struct mtd_info* mtd, int mode)
++{
++ struct tmio_nand* tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++
++ iowrite8 (FCR_MODE_HWECC_RESET, &fcr->mode);
++ ioread8 (&fcr->u8); /* dummy read */
++ iowrite8 (FCR_MODE_HWECC_CALC, &fcr->mode);
++}
++
++static int tmio_nand_calculate_ecc (struct mtd_info* mtd, const u_char* dat,
++ u_char* ecc_code)
++{
++ struct tmio_nand* tmio = mtd_to_tmio (mtd);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++ unsigned int ecc;
++
++ iowrite8 (FCR_MODE_HWECC_RESULT, &fcr->mode);
++
++ ecc = ioread16 (&fcr->u16);
++ ecc_code[1] = ecc; // 000-255 LP7-0
++ ecc_code[0] = ecc >> 8; // 000-255 LP15-8
++ ecc = ioread16 (&fcr->u16);
++ ecc_code[2] = ecc; // 000-255 CP5-0,11b
++ ecc_code[4] = ecc >> 8; // 256-511 LP7-0
++ ecc = ioread16 (&fcr->u16);
++ ecc_code[3] = ecc; // 256-511 LP15-8
++ ecc_code[5] = ecc >> 8; // 256-511 CP5-0,11b
++
++ iowrite8 (FCR_MODE_DATA, &fcr->mode);
++ return 0;
++}
++
++static void tmio_hw_init (struct device *dev, struct tmio_nand *tmio)
++{
++ struct resource* nfcr = tmio_resource_control (dev);
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ struct tmio_nfhccr __iomem * ccr = tmio->ccr;
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++ unsigned long base;
++
++ /* (89h) SMD Buffer ON By TC6393XB SystemConfig gpibfc1 */
++ tdev->ops->clock (dev, 1);
++ tdev->ops->function (dev, 1);
++
++ /* (4Ch) CLKRUN Enable 1st spcrunc */
++ iowrite8 (0x81, &ccr->icc);
++
++ /* (10h)BaseAddress 0x1000 spba.spba2 */
++ base = nfcr->start - tdev->iomem->start;
++ iowrite16 (base, ccr->base + 0);
++ iowrite16 (base >> 16, ccr->base + 1);
++
++ /* (04h)Command Register I/O spcmd */
++ iowrite8 (0x02, &ccr->command);
++
++ /* (62h) Power Supply Control ssmpwc */
++ /* HardPowerOFF - SuspendOFF - PowerSupplyWait_4MS */
++ iowrite8 (0x02, &ccr->nfpsc);
++
++ /* (63h) Detect Control ssmdtc */
++ iowrite8 (0x02, &ccr->nfdc);
++
++ /* Interrupt status register clear sintst */
++ iowrite8 (0x0f, &fcr->isr);
++
++ /* After power supply, Media are reset smode */
++ iowrite8 (FCR_MODE_POWER_ON, &fcr->mode);
++ iowrite8 (FCR_MODE_COMMAND, &fcr->mode);
++ iowrite8 (NAND_CMD_RESET, &fcr->u8);
++
++ /* Standby Mode smode */
++ iowrite8 (FCR_MODE_STANDBY, &fcr->mode);
++
++ mdelay (5);
++}
++
++static void tmio_hw_stop (struct device *dev, struct tmio_nand *tmio)
++{
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ struct tmio_nfcr __iomem * fcr = tmio->fcr;
++
++ iowrite8 (FCR_MODE_POWER_OFF, &fcr->mode);
++ tdev->ops->function (dev, 0);
++ tdev->ops->clock (dev, 0);
++}
++
++/*--------------------------------------------------------------------------*/
++
++#ifdef CONFIG_MTD_PARTITIONS
++static const char *part_probes[] = { "cmdlinepart", NULL };
++#endif
++
++static int tmio_probe (struct device *dev)
++{
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ struct tmio_nand_platform_data* tnpd = dev->platform_data;
++ struct resource* ccr = tmio_resource_config (dev);
++ struct resource* fcr = tmio_resource_control (dev);
++ struct resource* irq = tmio_resource_irq (dev);
++ struct tmio_nand* tmio;
++ struct mtd_info* mtd;
++ struct nand_chip* this;
++ struct mtd_partition* parts;
++ int nbparts = 0;
++ int retval;
++
++ if (!tnpd)
++ return -EINVAL;
++
++ retval = request_resource (tdev->iomem, ccr);
++ if (retval)
++ goto err_request_ccr;
++
++ retval = request_resource (tdev->iomem, fcr);
++ if (retval)
++ goto err_request_fcr;
++
++ tmio = kzalloc (sizeof *tmio, GFP_KERNEL);
++ if (!tmio) {
++ retval = -ENOMEM;
++ goto err_kzalloc;
++ }
++
++ dev_set_drvdata (dev, tmio);
++ mtd = &tmio->mtd;
++ this = &tmio->chip;
++ mtd->priv = this;
++ mtd->name = TMIO_NAME_NAND;
++
++ tmio->ccr = ioremap (ccr->start, ccr->end - ccr->start + 1);
++ if (!tmio->ccr) {
++ retval = -EIO;
++ goto err_iomap_ccr;
++ }
++
++ tmio->fcr = ioremap (fcr->start, fcr->end - fcr->start + 1);
++ if (!tmio->fcr) {
++ retval = -EIO;
++ goto err_iomap_fcr;
++ }
++
++ tmio_hw_init (dev, tmio);
++
++ /* Set address of NAND IO lines */
++ this->IO_ADDR_R = tmio->fcr;
++ this->IO_ADDR_W = tmio->fcr;
++
++ /* Set address of hardware control function */
++ this->cmd_ctrl = tmio_nand_hwcontrol;
++ this->dev_ready = tmio_nand_dev_ready;
++ this->read_byte = tmio_nand_read_byte;
++ this->write_buf = tmio_nand_write_buf;
++ this->read_buf = tmio_nand_read_buf;
++ this->verify_buf = tmio_nand_verify_buf;
++
++ /* set eccmode using hardware ECC */
++ this->ecc.mode = NAND_ECC_HW;
++ this->ecc.size = 512;
++ this->ecc.bytes = 6;
++ this->ecc.hwctl = tmio_nand_enable_hwecc;
++ this->ecc.calculate = tmio_nand_calculate_ecc;
++ this->ecc.correct = nand_correct_data;
++ this->badblock_pattern = tnpd->badblock_pattern;
++
++ /* 15 us command delay time */
++ this->chip_delay = 15;
++
++ if (irq->start) {
++ retval = request_irq (irq->start, &tmio_irq,
++ SA_INTERRUPT, irq->name, tmio);
++ if (!retval) {
++ tmio->irq = irq->start;
++ this->waitfunc = tmio_nand_wait;
++ } else
++ mtd_warn (mtd, "request_irq error %d\n", retval);
++ }
++
++ /* Scan to find existence of the device */
++ if (nand_scan (mtd, 1)) {
++ retval = -ENODEV;
++ goto err_scan;
++ }
++
++ /* Register the partitions */
++#ifdef CONFIG_MTD_PARTITIONS
++ nbparts = parse_mtd_partitions (mtd, part_probes, &parts, 0);
++#endif
++ if (nbparts <= 0) {
++ parts = tnpd->partition;
++ nbparts = tnpd->num_partitions;
++ }
++
++ add_mtd_partitions (mtd, parts, nbparts);
++ return 0;
++
++err_scan:
++ if (tmio->irq)
++ free_irq (tmio->irq, tmio);
++ tmio_hw_stop (dev, tmio);
++ iounmap (tmio->fcr);
++err_iomap_fcr:
++ iounmap (tmio->ccr);
++err_iomap_ccr:
++ kfree (tmio);
++err_kzalloc:
++ release_resource (fcr);
++err_request_fcr:
++ release_resource (ccr);
++err_request_ccr:
++ return retval;
++}
++
++static int tmio_remove (struct device *dev)
++{
++ struct tmio_nand* tmio = dev_get_drvdata (dev);
++
++ nand_release (&tmio->mtd);
++ if (tmio->irq)
++ free_irq (tmio->irq, tmio);
++ tmio_hw_stop (dev, tmio);
++ iounmap (tmio->fcr);
++ iounmap (tmio->ccr);
++ kfree (tmio);
++ release_resource (tmio_resource_control (dev));
++ release_resource (tmio_resource_config (dev));
++ return 0;
++}
++
++#ifdef CONFIG_PM
++static int tmio_suspend (struct device *dev, pm_message_t state)
++{
++ tmio_hw_stop (dev, dev_get_drvdata (dev));
++ return 0;
++}
++
++static int tmio_resume (struct device *dev)
++{
++ tmio_hw_init (dev, dev_get_drvdata (dev));
++ return 0;
++}
++#endif
++
++static struct device_driver tmio_driver = {
++ .name = TMIO_NAME_NAND,
++ .bus = &tmio_bus_type,
++ .probe = tmio_probe,
++ .remove = tmio_remove,
++#ifdef CONFIG_PM
++ .suspend = tmio_suspend,
++ .resume = tmio_resume,
++#endif
++};
++
++static int __init tmio_init (void) {
++ return driver_register (&tmio_driver);
++}
++
++static void __exit tmio_exit (void) {
++ driver_unregister (&tmio_driver);
++}
++
++module_init (tmio_init);
++module_exit (tmio_exit);
++
++MODULE_LICENSE ("GPL");
++MODULE_AUTHOR ("Dirk Opfer, Chris Humbert");
++MODULE_DESCRIPTION ("NAND flash driver on Toshiba Mobile IO controller");
+Index: git/drivers/mtd/nand/Kconfig
+===================================================================
+--- git.orig/drivers/mtd/nand/Kconfig 2006-10-31 16:09:03.000000000 +0000
++++ git/drivers/mtd/nand/Kconfig 2006-11-07 22:13:09.000000000 +0000
+@@ -63,6 +63,13 @@ config MTD_NAND_AMS_DELTA
+ help
+ Support for NAND flash on Amstrad E3 (Delta).
+
++config MTD_NAND_TMIO
++ tristate "NAND Flash device on Toshiba Mobile IO Controller"
++ depends on MTD_NAND && TOSHIBA_TC6393XB
++ help
++ Support for NAND flash connected to a Toshiba Mobile IO
++ Controller in some PDAs, including the Sharp SL6000x.
++
+ config MTD_NAND_TOTO
+ tristate "NAND Flash device on TOTO board"
+ depends on ARCH_OMAP && MTD_NAND && BROKEN
+Index: git/drivers/mtd/nand/Makefile
+===================================================================
+--- git.orig/drivers/mtd/nand/Makefile 2006-10-31 16:09:03.000000000 +0000
++++ git/drivers/mtd/nand/Makefile 2006-11-07 22:13:09.000000000 +0000
+@@ -22,5 +22,6 @@ obj-$(CONFIG_MTD_NAND_TS7250) += ts7250
+ obj-$(CONFIG_MTD_NAND_NANDSIM) += nandsim.o
+ obj-$(CONFIG_MTD_NAND_CS553X) += cs553x_nand.o
+ obj-$(CONFIG_MTD_NAND_NDFC) += ndfc.o
++obj-$(CONFIG_MTD_NAND_TMIO) += tmio.o
+
+ nand-objs = nand_base.o nand_bbt.o
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/tmio-ohci-r6.patch b/packages/linux/linux-openzaurus-2.6.18+git/tmio-ohci-r6.patch
new file mode 100644
index 0000000000..9fdd2962c9
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/tmio-ohci-r6.patch
@@ -0,0 +1,929 @@
+
+ drivers/usb/host/Kconfig | 1
+ drivers/usb/host/ohci-hcd.c | 1
+ drivers/usb/host/ohci-tmio.c | 894 +++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 896 insertions(+)
+
+Index: git/drivers/usb/host/ohci-tmio.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ git/drivers/usb/host/ohci-tmio.c 2006-11-07 21:48:33.000000000 +0000
+@@ -0,0 +1,894 @@
++/*
++ * OHCI HCD (Host Controller Driver) for USB.
++ *
++ * (C) Copyright 1999 Roman Weissgaerber <weissg@vienna.at>
++ * (C) Copyright 2000-2002 David Brownell <dbrownell@users.sourceforge.net>
++ * (C) Copyright 2002 Hewlett-Packard Company
++ *
++ * Bus glue for Toshiba Mobile IO (TMIO) Controller's OHCI core
++ * (C) Copyright 2005 Chris Humbert <mahadri-usb@drigon.com>
++ *
++ * This is known to work with the following variants:
++ * TC6393XB revision 3 (32kB SRAM)
++ *
++ * The TMIO's OHCI core DMAs through a small internal buffer that
++ * is directly addressable by the CPU. dma_declare_coherent_memory
++ * and DMA bounce buffers allow the higher-level OHCI host driver to
++ * work. However, the dma API doesn't handle dma mapping failures
++ * well (dma_sg_map() is a prime example), so it is unusable.
++ *
++ * This HC pretends be a PIO-ish controller and uses the kernel's
++ * generic allocator for the entire SRAM. Using the USB core's
++ * usb_operations, we provide hcd_buffer_alloc/free. Using the OHCI's
++ * ohci_ops, we provide memory management for OHCI's TDs and EDs. We
++ * internally queue a URB's TDs until enough dma memory is available
++ * to enqueue them with the HC.
++ *
++ * Written from sparse documentation from Toshiba and Sharp's driver
++ * for the 2.4 kernel,
++ * usb-ohci-tc6393.c (C) Copyright 2004 Lineo Solutions, Inc.
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ */
++
++#include <linux/fs.h>
++#include <linux/mount.h>
++#include <linux/pagemap.h>
++#include <linux/init.h>
++#include <linux/namei.h>
++#include <linux/sched.h>
++
++#include <linux/genalloc.h>
++#include <asm/dma-mapping.h> /* for consistent_sync() */
++#include <asm/hardware/tmio.h>
++
++/*-------------------------------------------------------------------------*/
++
++/*
++ * USB Host Controller Configuration Register
++ */
++struct tmio_uhccr {
++ u8 x00[8];
++ u8 revid; /* 0x08 Revision ID */
++ u8 x01[7];
++ u16 basel; /* 0x10 USB Control Register Base Address Low */
++ u16 baseh; /* 0x12 USB Control Register Base Address High */
++ u8 x02[0x2c];
++ u8 ilme; /* 0x40 Internal Local Memory Enable */
++ u8 x03[0x0b];
++ u16 pm; /* 0x4c Power Management */
++ u8 x04[2];
++ u8 intc; /* 0x50 INT Control */
++ u8 x05[3];
++ u16 lmw1l; /* 0x54 Local Memory Window 1 LMADRS Low */
++ u16 lmw1h; /* 0x56 Local Memory Window 1 LMADRS High */
++ u16 lmw1bl; /* 0x58 Local Memory Window 1 Base Address Low */
++ u16 lmw1bh; /* 0x5A Local Memory Window 1 Base Address High */
++ u16 lmw2l; /* 0x5C Local Memory Window 2 LMADRS Low */
++ u16 lmw2h; /* 0x5E Local Memory Window 2 LMADRS High */
++ u16 lmw2bl; /* 0x60 Local Memory Window 2 Base Address Low */
++ u16 lmw2bh; /* 0x62 Local Memory Window 2 Base Address High */
++ u8 x06[0x98];
++ u8 misc; /* 0xFC MISC */
++ u8 x07[3];
++} __attribute__ ((packed));
++
++union tmio_uhccr_pm {
++ u16 raw;
++struct {
++ unsigned gcken:1; /* D0 */
++ unsigned ckrnen:1; /* D1 */
++ unsigned uspw1:1; /* D2 USB Port 1 Power Disable */
++ unsigned uspw2:1; /* D3 USB Port 2 Power Disable */
++ unsigned x00:4;
++ unsigned pmee:1; /* D8 */
++ unsigned x01:6;
++ unsigned pmes:1; /* D15 */
++} __attribute__ ((packed));
++} __attribute__ ((packed));
++
++/*-------------------------------------------------------------------------*/
++
++struct tmio_dma_pool {
++ struct device* dev;
++ unsigned int size;
++};
++
++struct tmio_hcd {
++ struct gen_pool* poolp;
++ struct usb_operations ops;
++ struct tmio_dma_pool td_pool;
++ struct tmio_dma_pool ed_pool;
++
++ struct tmio_uhccr __iomem *ccr;
++ void __iomem * sram;
++ size_t sram_len;
++};
++
++#define hcd_to_tmio(hcd) ((struct tmio_hcd*)(hcd_to_ohci (hcd) + 1))
++
++struct tmio_td {
++ void* data; /* td's data buffer */
++ void __iomem * bounce; /* dma bounce buffer */
++ dma_addr_t dma; /* bounce buffer dma address */
++ size_t len; /* bounce buffer length */
++ u32 info; /* parameter for td_fill */
++};
++
++struct tmio_urb {
++ int td_add; /* next index to be added */
++ int td_queue; /* next index to be HC enqueued */
++
++ struct tmio_td td [0]; /* private td data */
++};
++
++static inline struct tmio_urb *urb_to_turb (struct urb *urb)
++{
++ urb_priv_t* urb_priv = urb->hcpriv;
++ return (struct tmio_urb*)(urb_priv->td + urb_priv->length);
++}
++
++/*-------------------------------------------------------------------------*/
++
++/* gen_pool_alloc page allocator callback */
++static unsigned long tmio_pool_callback(struct gen_pool *poolp)
++{
++ return 0;
++}
++
++static inline void tmio_pool_destroy(struct tmio_hcd *tmio)
++{
++ struct gen_pool *poolp = tmio->poolp;
++
++ if (!poolp)
++ return;
++ if (poolp->h)
++ kfree(poolp->h);
++ kfree(poolp);
++ tmio->poolp = NULL;
++}
++
++/*-------------------------------------------------------------------------*/
++
++#define BOUNDED_XYL(x,y,ylen) (((y) <= (x)) && ((x) < ((y)+(ylen))))
++#define BOUNDED_XYY(x,y1,y2) (((y1) <= (x)) && ((x) < (y2)))
++
++static inline dma_addr_t tmio_virt_to_dma (struct usb_hcd *hcd, void *vaddr)
++{
++ struct resource* sram = tmio_resource_mem (hcd->self.controller);
++ struct tmio_hcd* tmio = hcd_to_tmio (hcd);
++
++ return BOUNDED_XYL (vaddr, tmio->sram, tmio->sram_len)
++ ? sram->start + (vaddr - tmio->sram)
++ : ~0;
++}
++
++static inline void* tmio_dma_to_virt (struct usb_hcd *hcd, dma_addr_t handle)
++{
++ struct resource* sram = tmio_resource_mem (hcd->self.controller);
++ struct tmio_hcd* tmio = hcd_to_tmio (hcd);
++
++ return BOUNDED_XYY (handle, sram->start, sram->end + 1)
++ ? tmio->sram + handle - sram->start
++ : NULL;
++}
++
++/*
++ * allocate dma-able memory in the device's internal sram
++ *
++ * The generic pool allocator's minimum chunk size is 32 bytes,
++ * which is the cache line size on the PXA255, so we don't need
++ * to do anything special for smaller requests.
++ */
++static inline void *tmio_dma_alloc (struct device *dev, size_t size,
++ dma_addr_t *handle, gfp_t mem_flags)
++{
++ struct usb_hcd* hcd = dev_get_drvdata (dev);
++ struct tmio_hcd* tmio = hcd_to_tmio (hcd);
++ void* virt = (void*) gen_pool_alloc (tmio->poolp, size);
++
++ return (*handle = tmio_virt_to_dma (hcd, virt)) == ~0 ? NULL : virt;
++}
++
++static inline void tmio_dma_free (struct device *dev, size_t size,
++ void *cpu_addr, dma_addr_t handle)
++{
++ struct usb_hcd* hcd = dev_get_drvdata (dev);
++ struct tmio_hcd* tmio = hcd_to_tmio (hcd);
++ dma_addr_t dma = tmio_virt_to_dma (hcd, cpu_addr);
++
++ if (unlikely (dma == ~0)) {
++ dev_err (dev, "trying to free bad address 0x%p\n", cpu_addr);
++ return;
++ }
++
++ if (unlikely (handle != dma))
++ dev_err (dev, "dma address mismatch for 0x%p: %08x != %08x\n",
++ cpu_addr, handle, dma);
++
++ gen_pool_free (tmio->poolp, (unsigned long) cpu_addr, size);
++}
++
++/*-------------------------------------------------------------------------*/
++
++static void *tmio_dma_pool_alloc(struct dma_pool *pool, gfp_t mem_flags,
++ dma_addr_t *handle)
++{
++ struct tmio_dma_pool *tdp = (struct tmio_dma_pool*) pool;
++ return tmio_dma_alloc (tdp->dev, tdp->size, handle, mem_flags);
++}
++
++static void
++tmio_dma_pool_free (struct dma_pool *pool, void *vaddr, dma_addr_t addr)
++{
++ struct tmio_dma_pool *tdp = (struct tmio_dma_pool*) pool;
++ return tmio_dma_free (tdp->dev, tdp->size, vaddr, addr);
++}
++
++static void *tmio_buffer_alloc (struct usb_bus *bus, size_t size,
++ gfp_t mem_flags, dma_addr_t *dma)
++{
++ return tmio_dma_alloc (bus->controller, size, dma, mem_flags);
++}
++
++static void tmio_buffer_free (struct usb_bus *bus, size_t size,
++ void *addr, dma_addr_t dma)
++{
++ tmio_dma_free (bus->controller, size, addr, dma);
++}
++
++/*-------------------------------------------------------------------------*/
++
++static void tmio_hc_stop (struct usb_hcd *hcd)
++{
++ struct device* dev = hcd->self.controller;
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ struct tmio_hcd* tmio = hcd_to_tmio (hcd);
++ struct tmio_uhccr __iomem* ccr = tmio->ccr;
++ union tmio_uhccr_pm pm = {0};
++
++ pm.gcken = 1;
++ pm.ckrnen = 1;
++ pm.uspw1 = 1;
++ pm.uspw2 = 1;
++
++ iowrite8 (0, &ccr->intc);
++ iowrite8 (0, &ccr->ilme);
++ iowrite16(0, &ccr->basel);
++ iowrite16(0, &ccr->baseh);
++ iowrite16(pm.raw, &ccr->pm);
++
++ tdev->ops->function (dev, 0);
++ tdev->ops->clock (dev, 0);
++}
++
++static void tmio_hc_start (struct usb_hcd *hcd)
++{
++ struct device* dev = hcd->self.controller;
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ struct tmio_hcd* tmio = hcd_to_tmio (hcd);
++ struct tmio_uhccr __iomem* ccr = tmio->ccr;
++ union tmio_uhccr_pm pm = {0};
++
++ pm.pmes = 1;
++ pm.pmee = 1;
++ pm.ckrnen = 1;
++ pm.gcken = 1;
++
++ tdev->ops->clock (dev, 1);
++ tdev->ops->function (dev, 1);
++
++ iowrite16(pm.raw, &ccr->pm);
++ iowrite16(hcd->rsrc_start, &ccr->basel);
++ iowrite16(hcd->rsrc_start >> 16, &ccr->baseh);
++ iowrite8 (1, &ccr->ilme);
++ iowrite8 (2, &ccr->intc);
++
++ consistent_sync (tmio->sram, tmio->sram_len, DMA_BIDIRECTIONAL);
++
++ dev_info (dev, "revision %d @ 0x%08llx, irq %d\n",
++ ioread8 (&ccr->revid), hcd->rsrc_start, hcd->irq);
++}
++
++static void tmio_stop (struct usb_hcd *hcd)
++{
++ struct ohci_hcd* ohci = hcd_to_ohci (hcd);
++
++ /* NULL these so ohci_stop() doesn't try to free them */
++ ohci->hcca = NULL;
++ ohci->td_cache = NULL;
++ ohci->ed_cache = NULL;
++
++ ohci_stop (hcd);
++ tmio_hc_stop (hcd);
++ tmio_pool_destroy (hcd_to_tmio (hcd));
++
++ /* We don't free the hcca because tmio_hc_stop() turns off
++ * the sram and the memory allocation data is destroyed. */
++}
++
++static int tmio_start (struct usb_hcd *hcd)
++{
++ struct device* dev = hcd->self.controller;
++ struct ohci_hcd* ohci = hcd_to_ohci (hcd);
++ struct tmio_hcd* tmio = hcd_to_tmio (hcd);
++ int retval;
++
++ tmio_hc_start (hcd);
++
++ tmio->poolp = gen_pool_create(0, fls(tmio->sram_len) - 1,
++ tmio_pool_callback, 0);
++ if (!tmio->poolp) {
++ retval = -ENOMEM;
++ goto err_gen_pool_create;
++ }
++
++ gen_pool_free (tmio->poolp, (unsigned long)(tmio->sram),
++ tmio->sram_len);
++
++ ohci->hcca = tmio_dma_alloc (dev, sizeof *ohci->hcca,
++ &ohci->hcca_dma, GFP_KERNEL);
++ if (!ohci->hcca) {
++ retval = -ENOMEM;
++ goto err_hcca_alloc;
++ }
++
++ /* for our dma_pool_alloc/free hooks */
++ ohci->td_cache = (struct dma_pool*) &tmio->td_pool;
++ ohci->ed_cache = (struct dma_pool*) &tmio->ed_pool;
++
++ if ((retval = ohci_init (ohci)) < 0)
++ goto err_ohci_init;
++
++ if ((retval = ohci_run (ohci)) < 0)
++ goto err_ohci_run;
++
++ return 0;
++
++err_ohci_run:
++ err ("can't start %s", hcd->self.bus_name);
++err_ohci_init:
++err_hcca_alloc:
++err_gen_pool_create:
++ tmio_stop (hcd);
++ return retval;
++}
++
++/*-------------------------------------------------------------------------*/
++
++static inline void *tmio_urb_dma_to_virt(struct urb *urb, dma_addr_t dma)
++{
++ if (BOUNDED_XYL(dma, urb->transfer_dma, urb->transfer_buffer_length))
++ return urb->transfer_buffer + dma - urb->transfer_dma;
++
++ if (BOUNDED_XYL(dma, urb->setup_dma, sizeof (struct usb_ctrlrequest)))
++ return urb->setup_packet + dma - urb->setup_dma;
++
++ return NULL;
++}
++
++static struct tmio_td* tmio_td_find (struct td *td, int *index)
++{
++ struct urb* urb = td->urb;
++ urb_priv_t* urb_priv = urb->hcpriv;
++ struct tmio_urb* turb = urb_to_turb (urb);
++ int i;
++
++ for (i=0; i < urb_priv->length; i++)
++ if (urb_priv->td[i] == td) {
++ *index = i;
++ return turb->td + i;
++ }
++
++ return NULL;
++}
++
++/*
++ * map the td's data to dma-able memory
++ *
++ * if this td transfers data,
++ * sets tmtd->data to the urb's data buffer
++ * sets tmtd->dma to dma-able memory
++ * sets tmtd->bounce to non-NULL if a bounce buffer is allocated
++ * copies the urb's data buffer to the bounce buffer if necessary
++ */
++static int tmio_td_dma_map (struct ohci_hcd *ohci, struct urb *urb,
++ struct tmio_td *tmtd, int idx)
++{
++ struct usb_hcd* hcd = ohci_to_hcd (ohci);
++ struct device* dev = hcd->self.controller;
++ dma_addr_t dma;
++
++ if (!tmtd->len)
++ return 0;
++
++ if (tmio_dma_to_virt (hcd, tmtd->dma))
++ return 0;
++
++ tmtd->data = tmio_urb_dma_to_virt (urb, tmtd->dma);
++ if (unlikely (!tmtd->data)) {
++ dev_err (dev, "TD has bad dma address 0x%08x\n", tmtd->dma);
++ return 0;
++ }
++
++ tmtd->bounce = tmio_dma_alloc (dev, tmtd->len, &dma, GFP_ATOMIC);
++ if (!tmtd->bounce)
++ return -ENOMEM;
++
++ if ((usb_pipecontrol (urb->pipe) && !idx) || usb_pipeout (urb->pipe)) {
++ consistent_sync (tmtd->bounce, tmtd->len, DMA_TO_DEVICE);
++ memcpy (tmtd->bounce, tmtd->data, tmtd->len);
++ } else
++ consistent_sync (tmtd->bounce, tmtd->len, DMA_FROM_DEVICE);
++
++ tmtd->dma = dma;
++ return 0;
++}
++
++/*
++ * unmaps the td's data from dma-able memory
++ *
++ * if a bounce buffer has been allocated,
++ * copy the bounce buffer to the urb's data buffer if necessary
++ * free the bounce buffer
++ */
++static void tmio_td_dma_unmap (struct ohci_hcd *ohci, struct td *td)
++{
++ struct device* dev = (ohci_to_hcd (ohci))->self.controller;
++ struct urb* urb = td->urb;
++ int idx;
++ struct tmio_td* tmtd = tmio_td_find (td, &idx);
++
++ if (!tmtd->bounce)
++ return;
++
++ if (usb_pipein (urb->pipe) && (usb_pipecontrol (urb->pipe) ? idx : 1)) {
++ memcpy (tmtd->data, tmtd->bounce, tmtd->len);
++ consistent_sync (tmtd->data, tmtd->len, DMA_TO_DEVICE);
++ }
++
++ tmio_dma_free (dev, tmtd->len, tmtd->bounce, tmtd->dma);
++}
++
++static int tmio_urb_runqueue (struct ohci_hcd *ohci, struct urb *urb)
++{
++ struct tmio_urb* turb = urb_to_turb (urb);
++ urb_priv_t* urb_priv= urb->hcpriv;
++ int start = turb->td_queue;
++ int retval = 0;
++ int i;
++
++ for (i = start; i < turb->td_add; i = ++turb->td_queue) {
++ struct tmio_td *tmtd = turb->td + i;
++
++ if ((retval = tmio_td_dma_map (ohci, urb, tmtd, i)))
++ break;
++
++ td_fill (ohci, tmtd->info, tmtd->dma, tmtd->len, urb, i);
++ }
++
++ if (i <= start)
++ return retval;
++
++ /* kickstart the appropriate list */
++ wmb ();
++ switch (urb_priv->ed->type) {
++ case PIPE_BULK:
++ ohci_writel (ohci, OHCI_BLF, &ohci->regs->cmdstatus);
++ break;
++ case PIPE_CONTROL:
++ ohci_writel (ohci, OHCI_CLF, &ohci->regs->cmdstatus);
++ break;
++ }
++
++ return retval;
++}
++
++/*
++ * This needs to be called with ohci->lock held so the pending urb list
++ * isn't modified.
++ */
++static int tmio_ohci_runqueue (struct ohci_hcd *ohci)
++{
++ urb_priv_t* priv;
++ int retval = 0;
++
++ list_for_each_entry_reverse (priv, &ohci->pending, pending)
++ if ((retval = tmio_urb_runqueue (ohci, priv->td[0]->urb)))
++ return retval;
++
++ return retval;
++}
++
++static void tmio_td_fill (struct ohci_hcd *ohci, u32 info,
++ dma_addr_t data, int len, struct urb *urb, int index)
++{
++ struct tmio_urb* turb = urb_to_turb (urb);
++ struct tmio_td* tmtd = turb->td + index;
++
++ tmtd->data = NULL;
++ tmtd->bounce = NULL;
++ tmtd->dma = data;
++ tmtd->len = len;
++ tmtd->info = info;
++ turb->td_add = index + 1;
++}
++
++static void
++tmio_td_done (struct ohci_hcd *ohci, struct urb *urb, struct td *td)
++{
++ tmio_td_dma_unmap (ohci, td);
++ td_done (ohci, urb, td);
++}
++
++const static struct ohci_ops tmio_ops = {
++ .dma_pool_alloc = tmio_dma_pool_alloc,
++ .dma_pool_free = tmio_dma_pool_free,
++ .td_fill = tmio_td_fill,
++ .td_done = tmio_td_done,
++};
++
++/*-------------------------------------------------------------------------*/
++
++static irqreturn_t tmio_irq (struct usb_hcd *hcd, struct pt_regs *ptregs)
++{
++ irqreturn_t retval = ohci_irq (hcd, ptregs);
++
++ if (retval == IRQ_HANDLED) {
++ struct ohci_hcd *ohci = hcd_to_ohci (hcd);
++ unsigned long flags;
++
++ spin_lock_irqsave(&ohci->lock, flags);
++ tmio_ohci_runqueue (ohci);
++ spin_unlock_irqrestore (&ohci->lock, flags);
++ }
++
++ return retval;
++}
++
++/*
++ * This is ohci_urb_enqueue with:
++ * dma address sanitization for tmio_urb_dma_to_virt()
++ * allocate extra space in urb_priv for our private data
++ * initialize urb_priv->td[0]->urb for tmio_ohci_runqueue()
++ * call tmio_ohci_runqueue() after submitting TDs
++ */
++static int tmio_urb_enqueue (
++ struct usb_hcd *hcd,
++ struct usb_host_endpoint *ep,
++ struct urb *urb,
++ gfp_t mem_flags
++) {
++ struct ohci_hcd *ohci = hcd_to_ohci (hcd);
++ struct ed *ed;
++ urb_priv_t *urb_priv;
++ unsigned int pipe = urb->pipe;
++ int i, size = 0;
++ unsigned long flags;
++ int retval = 0;
++
++#ifdef OHCI_VERBOSE_DEBUG
++ urb_print (urb, "SUB", usb_pipein (pipe));
++#endif
++
++ /* make sure we can convert dma offsets back to virtual addresses */
++ if (!tmio_dma_to_virt (hcd, urb->setup_dma))
++ urb->setup_dma = 0;
++
++ if (!tmio_dma_to_virt (hcd, urb->transfer_dma))
++ urb->transfer_dma = sizeof (struct usb_ctrlrequest);
++
++ /* every endpoint has a ed, locate and maybe (re)initialize it */
++ if (! (ed = ed_get (ohci, ep, urb->dev, pipe, urb->interval)))
++ return -ENOMEM;
++
++ /* for the private part of the URB we need the number of TDs (size) */
++ switch (ed->type) {
++ case PIPE_CONTROL:
++ /* td_submit_urb() doesn't yet handle these */
++ if (urb->transfer_buffer_length > 4096)
++ return -EMSGSIZE;
++
++ /* 1 TD for setup, 1 for ACK, plus ... */
++ size = 2;
++ /* FALLTHROUGH */
++ // case PIPE_INTERRUPT:
++ // case PIPE_BULK:
++ default:
++ /* one TD for every 4096 Bytes (can be upto 8K) */
++ size += urb->transfer_buffer_length / 4096;
++ /* ... and for any remaining bytes ... */
++ if ((urb->transfer_buffer_length % 4096) != 0)
++ size++;
++ /* ... and maybe a zero length packet to wrap it up */
++ if (size == 0)
++ size++;
++ else if ((urb->transfer_flags & URB_ZERO_PACKET) != 0
++ && (urb->transfer_buffer_length
++ % usb_maxpacket (urb->dev, pipe,
++ usb_pipeout (pipe))) == 0)
++ size++;
++ break;
++ case PIPE_ISOCHRONOUS: /* number of packets from URB */
++ size = urb->number_of_packets;
++ break;
++ }
++
++ /* allocate the private part of the URB */
++ urb_priv = kzalloc (sizeof (urb_priv_t)
++ + size * sizeof (struct td*)
++ + sizeof (struct tmio_urb)
++ + size * sizeof (struct tmio_td),
++ mem_flags);
++ if (!urb_priv)
++ return -ENOMEM;
++ INIT_LIST_HEAD (&urb_priv->pending);
++ urb_priv->length = size;
++ urb_priv->ed = ed;
++
++ /* allocate the TDs (deferring hash chain updates) */
++ for (i = 0; i < size; i++) {
++ urb_priv->td [i] = td_alloc (ohci, mem_flags);
++ if (!urb_priv->td [i]) {
++ urb_priv->length = i;
++ urb_free_priv (ohci, urb_priv);
++ return -ENOMEM;
++ }
++ urb_priv->td [i]->urb = urb;
++ }
++
++ spin_lock_irqsave (&ohci->lock, flags);
++
++ /* don't submit to a dead HC */
++ if (!HC_IS_RUNNING(hcd->state)) {
++ retval = -ENODEV;
++ goto fail;
++ }
++
++ /* in case of unlink-during-submit */
++ spin_lock (&urb->lock);
++ if (urb->status != -EINPROGRESS) {
++ spin_unlock (&urb->lock);
++ urb->hcpriv = urb_priv;
++ finish_urb (ohci, urb, NULL);
++ retval = 0;
++ goto fail;
++ }
++
++ /* schedule the ed if needed */
++ if (ed->state == ED_IDLE) {
++ retval = ed_schedule (ohci, ed);
++ if (retval < 0)
++ goto fail0;
++ if (ed->type == PIPE_ISOCHRONOUS) {
++ u16 frame = ohci_frame_no(ohci);
++
++ /* delay a few frames before the first TD */
++ frame += max_t (u16, 8, ed->interval);
++ frame &= ~(ed->interval - 1);
++ frame |= ed->branch;
++ urb->start_frame = frame;
++
++ /* yes, only URB_ISO_ASAP is supported, and
++ * urb->start_frame is never used as input.
++ */
++ }
++ } else if (ed->type == PIPE_ISOCHRONOUS)
++ urb->start_frame = ed->last_iso + ed->interval;
++
++ /* fill the TDs and link them to the ed; and
++ * enable that part of the schedule, if needed
++ * and update count of queued periodic urbs
++ */
++ urb->hcpriv = urb_priv;
++ td_submit_urb (ohci, urb);
++ tmio_ohci_runqueue (ohci);
++
++fail0:
++ spin_unlock (&urb->lock);
++fail:
++ if (retval)
++ urb_free_priv (ohci, urb_priv);
++ spin_unlock_irqrestore (&ohci->lock, flags);
++ return retval;
++}
++
++static const struct hc_driver tmio_hc_driver = {
++ .description = hcd_name,
++ .product_desc = "TMIO OHCI USB Host Controller",
++ .hcd_priv_size = sizeof (struct ohci_hcd)
++ + sizeof (struct tmio_hcd),
++
++ /* generic hardware linkage */
++ .irq = tmio_irq,
++ .flags = HCD_USB11 | HCD_MEMORY,
++
++ /* basic lifecycle operations */
++ .start = tmio_start,
++ .stop = tmio_stop,
++
++ /* managing i/o requests and associated device resources */
++ .urb_enqueue = tmio_urb_enqueue,
++ .urb_dequeue = ohci_urb_dequeue,
++ .endpoint_disable = ohci_endpoint_disable,
++
++ /* scheduling support */
++ .get_frame_number = ohci_get_frame,
++
++ /* root hub support */
++ .hub_status_data = ohci_hub_status_data,
++ .hub_control = ohci_hub_control,
++#ifdef CONFIG_PM
++ .bus_suspend = ohci_bus_suspend,
++ .bus_resume = ohci_bus_resume,
++#endif
++ .start_port_reset = ohci_start_port_reset,
++};
++
++/*-------------------------------------------------------------------------*/
++
++/* configure so an HC device and id are always provided */
++/* always called with process context; sleeping is OK */
++
++/**
++ * tmio_probe - initialize TMIO-based HCDs
++ * Context: !in_interrupt()
++ *
++ * Allocates basic resources for this USB host controller, and
++ * then invokes the start() method for the HCD associated with it
++ * through the hotplug entry's driver_data.
++ */
++static int tmio_probe (struct device *dev)
++{
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ struct resource* config = tmio_resource_config (dev);
++ struct resource* regs = tmio_resource_control (dev);
++ struct resource* sram = tmio_resource_mem (dev);
++ struct resource* irq = tmio_resource_irq (dev);
++ struct usb_operations* ops;
++ struct tmio_hcd* tmio;
++ struct ohci_hcd* ohci;
++ struct usb_hcd* hcd;
++ int retval;
++
++ if (usb_disabled ())
++ return -ENODEV;
++
++ if (dev->dma_mask || dev->coherent_dma_mask) {
++ dev_err (dev, "DMA not supported\n");
++ return -ENODEV;
++ }
++
++ hcd = usb_create_hcd (&tmio_hc_driver, dev, dev->bus_id);
++ if (!hcd) {
++ retval = -ENOMEM;
++ goto err_create_hcd;
++ }
++
++ tmio = hcd_to_tmio (hcd);
++ tmio->td_pool.dev = dev;
++ tmio->ed_pool.dev = dev;
++ tmio->td_pool.size = sizeof (struct td);
++ tmio->ed_pool.size = sizeof (struct ed);
++ ohci = hcd_to_ohci (hcd);
++ ohci_hcd_init (ohci);
++ ohci->ops = &tmio_ops;
++
++ retval = request_resource (tdev->iomem, config);
++ if (retval)
++ goto err_request_config_resource;
++
++ retval = request_resource (tdev->iomem, regs);
++ if (retval)
++ goto err_request_regs_resource;
++
++ retval = request_resource (tdev->iomem, sram);
++ if (retval)
++ goto err_request_sram_resource;
++
++ hcd->rsrc_start = regs->start;
++ hcd->rsrc_len = regs->end - regs->start + 1;
++ tmio->sram_len = sram->end - sram->start + 1;
++
++ tmio->ccr = ioremap (config->start, config->end - config->start + 1);
++ if (!tmio->ccr) {
++ retval = -ENOMEM;
++ goto err_ioremap_ccr;
++ }
++
++ hcd->regs = ioremap (hcd->rsrc_start, hcd->rsrc_len);
++ if (!hcd->regs) {
++ retval = -ENOMEM;
++ goto err_ioremap_regs;
++ }
++
++ tmio->sram = ioremap (sram->start, tmio->sram_len);
++ if (!tmio->sram) {
++ retval = -ENOMEM;
++ goto err_ioremap_sram;
++ }
++
++ /* drivers should use our coherent buffer allocator */
++ ops = &tmio->ops;
++ memcpy (ops, hcd->self.op, sizeof *ops);
++ ops->buffer_alloc = tmio_buffer_alloc;
++ ops->buffer_free = tmio_buffer_free;
++ hcd->self.op = ops;
++
++ retval = usb_add_hcd (hcd, irq->start, SA_INTERRUPT);
++ if (retval)
++ goto err_usb_add_hcd;
++
++ return 0;
++
++err_usb_add_hcd:
++ iounmap (tmio->sram);
++err_ioremap_sram:
++ iounmap (hcd->regs);
++err_ioremap_regs:
++ iounmap (tmio->ccr);
++err_ioremap_ccr:
++ release_resource (sram);
++err_request_sram_resource:
++ release_resource (regs);
++err_request_regs_resource:
++ release_resource (config);
++err_request_config_resource:
++ usb_put_hcd (hcd);
++err_create_hcd:
++ return retval;
++}
++
++/* may be called without controller electrically present */
++/* may be called with controller, bus, and devices active */
++
++/**
++ * tmio_remove - shutdown processing for TMIO-based HCDs
++ * @dev: USB Host Controller being removed
++ * Context: !in_interrupt()
++ *
++ * Reverses the effect of tmio_probe(), first invoking
++ * the HCD's stop() method. It is always called from a thread
++ * context, normally "rmmod", "apmd", or something similar.
++ */
++static int tmio_remove (struct device *dev)
++{
++ struct usb_hcd* hcd = dev_get_drvdata (dev);
++ struct tmio_hcd* tmio = hcd_to_tmio (hcd);
++
++ usb_remove_hcd (hcd);
++ iounmap (tmio->sram);
++ iounmap (hcd->regs);
++ iounmap (tmio->ccr);
++ release_resource (tmio_resource_mem (dev));
++ release_resource (tmio_resource_control (dev));
++ release_resource (tmio_resource_config (dev));
++ usb_put_hcd (hcd);
++ return 0;
++}
++
++static struct device_driver tmio_ohci = {
++ .name = TMIO_NAME_OHCI,
++ .bus = &tmio_bus_type,
++ .probe = tmio_probe,
++ .remove = tmio_remove,
++};
++
++static int __init tmio_init (void)
++{
++ dbg (DRIVER_INFO " (%s)", TMIO_SOC_NAME);
++ dbg ("block sizes: ed %d td %d",
++ sizeof (struct ed), sizeof (struct td));
++
++ return driver_register (&tmio_ohci);
++}
++
++static void __exit tmio_exit (void)
++{
++ driver_unregister (&tmio_ohci);
++}
++
++module_init (tmio_init);
++module_exit (tmio_exit);
+Index: git/drivers/usb/host/Kconfig
+===================================================================
+--- git.orig/drivers/usb/host/Kconfig 2006-11-07 21:46:32.000000000 +0000
++++ git/drivers/usb/host/Kconfig 2006-11-07 21:48:38.000000000 +0000
+@@ -84,6 +84,7 @@ config USB_OHCI_HCD
+ depends on USB && USB_ARCH_HAS_OHCI
+ select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3
+ select I2C if ARCH_PNX4008
++ select GENERIC_ALLOCATOR if TOSHIBA_TC6393XB
+ ---help---
+ The Open Host Controller Interface (OHCI) is a standard for accessing
+ USB 1.1 host controller hardware. It does more in hardware than Intel's
+Index: git/drivers/usb/host/ohci-hcd.c
+===================================================================
+--- git.orig/drivers/usb/host/ohci-hcd.c 2006-11-07 21:46:32.000000000 +0000
++++ git/drivers/usb/host/ohci-hcd.c 2006-11-07 21:48:33.000000000 +0000
+@@ -944,6 +944,7 @@ MODULE_LICENSE ("GPL");
+ || defined(CONFIG_ARCH_OMAP) \
+ || defined (CONFIG_ARCH_LH7A404) \
+ || defined (CONFIG_PXA27x) \
++ || defined (CONFIG_TOSHIBA_TC6393XB) \
+ || defined (CONFIG_ARCH_EP93XX) \
+ || defined (CONFIG_SOC_AU1X00) \
+ || defined (CONFIG_USB_OHCI_HCD_PPC_SOC) \
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/tmio-tc6393-r8.patch b/packages/linux/linux-openzaurus-2.6.18+git/tmio-tc6393-r8.patch
new file mode 100644
index 0000000000..2f1b47d783
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/tmio-tc6393-r8.patch
@@ -0,0 +1,800 @@
+ arch/arm/common/Kconfig | 3
+ arch/arm/common/Makefile | 1
+ arch/arm/common/tc6393xb.c | 668 ++++++++++++++++++++++++++++++++++++++++
+ arch/arm/mach-pxa/Kconfig | 1
+ include/asm-arm/arch-pxa/irqs.h | 10
+ include/asm-arm/hardware/tmio.h | 44 ++
+ 6 files changed, 727 insertions(+)
+
+Index: git/arch/arm/common/tc6393xb.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ git/arch/arm/common/tc6393xb.c 2006-11-07 22:14:49.000000000 +0000
+@@ -0,0 +1,668 @@
++/*
++ * Toshiba TC6393XB SoC support
++ *
++ * Maintainer: Chris Humbert <mahadri-kernel@drigon.com>
++ *
++ * Copyright (c) 2005-2006 Chris Humbert
++ * Copyright (c) 2005 Dirk Opfer
++ *
++ * Based on code written by Sharp/Lineo for 2.4 kernels
++ * Based on locomo.c
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ */
++
++#include <linux/module.h>
++#include <linux/init.h>
++#include <linux/kernel.h>
++#include <linux/delay.h>
++#include <linux/errno.h>
++#include <linux/ioport.h>
++#include <linux/device.h>
++#include <linux/platform_device.h>
++#include <linux/slab.h>
++#include <linux/spinlock.h>
++#include <linux/fb.h>
++
++#include <asm/hardware.h>
++#include <asm/mach-types.h>
++#include <asm/io.h>
++#include <asm/irq.h>
++#include <asm/mach/irq.h>
++#include <asm/arch/irqs.h>
++#include <asm/hardware/tmio.h>
++
++#ifndef TMIO_SOC_TC6393XB
++#error "TC6393XB SoC not configured"
++#endif
++
++/*--------------------------------------------------------------------------*/
++
++/* cell ids must be 0-based because they are used as array indexes. */
++#define TC6393_CELL_NAND 0
++#define TC6393_CELL_SD 1
++#define TC6393_CELL_OHCI 2
++#define TC6393_CELL_SERIAL 3
++#define TC6393_CELL_LCD 4
++#define TC6393_NUM_CELLS 5
++
++#define TC6393_RESOURCE(_name, _start, _end, _flags) \
++ { \
++ .name = _name, \
++ .start = _start, \
++ .end = _end, \
++ .flags = _flags, \
++ }
++
++#define TC6393_MEM(name, start, size) \
++ TC6393_RESOURCE(name, start, (start) + (size) - 1, IORESOURCE_MEM)
++
++#define TC6393_IRQ(name, irq) \
++ TC6393_RESOURCE(name, irq, irq, IORESOURCE_IRQ)
++
++const static struct resource tc6393_NAND_resource[] = {
++ TC6393_MEM (TMIO_NAME_NAND, 0x000100, 0x100),
++ TC6393_MEM (TMIO_NAME_NAND, 0x001000, 0x008),
++ TC6393_MEM (TMIO_NAME_NAND, 0, 0),
++ TC6393_IRQ (TMIO_NAME_NAND, IRQ_TC6393_NAND),
++};
++
++const static struct resource tc6393_SD_resource[] = {
++ TC6393_MEM (TMIO_NAME_SD, 0x000200, 0x100),
++ TC6393_MEM (TMIO_NAME_SD, 0x002000, 0x200),
++ TC6393_MEM (TMIO_NAME_SD, 0, 0),
++ TC6393_IRQ (TMIO_NAME_SD, IRQ_TC6393_SD),
++};
++
++const static struct resource tc6393_OHCI_resource[] = {
++ TC6393_MEM (TMIO_NAME_OHCI, 0x000300, 0x100),
++ TC6393_MEM (TMIO_NAME_OHCI, 0x003000, 0x100),
++ TC6393_MEM (TMIO_NAME_OHCI, 0x010000, 32 * 1024),
++ TC6393_IRQ (TMIO_NAME_OHCI, IRQ_TC6393_OHCI),
++};
++
++const static struct resource tc6393_SERIAL_resource[] = {
++ TC6393_MEM (TMIO_NAME_SERIAL, 0x000400, 0x100),
++ TC6393_MEM (TMIO_NAME_SERIAL, 0x004000, 0x100),
++ TC6393_MEM (TMIO_NAME_SERIAL, 0, 0),
++ TC6393_IRQ (TMIO_NAME_SERIAL, IRQ_TC6393_SERIAL),
++};
++
++const static struct resource tc6393_LCD_resource[] = {
++ TC6393_MEM (TMIO_NAME_LCD, 0x000500, 0x100),
++ TC6393_MEM (TMIO_NAME_LCD, 0x005000, 0x200),
++ TC6393_MEM (TMIO_NAME_LCD, 0x100000, 1024 * 1024),
++ TC6393_IRQ (TMIO_NAME_LCD, IRQ_TC6393_LCD),
++};
++
++#define TC6393_CELL(_NAME) \
++ [TC6393_CELL_##_NAME] = { \
++ .name = TMIO_NAME_##_NAME, \
++ .id = TC6393_CELL_##_NAME, \
++ .resource = tc6393_##_NAME##_resource, \
++ .num_resources = ARRAY_SIZE (tc6393_##_NAME##_resource), \
++ }
++
++struct tc6393_cell {
++ const char* name;
++ unsigned int id;
++ const struct resource* resource;
++ unsigned int num_resources;
++};
++
++const static struct tc6393_cell tc6393_cell [TC6393_NUM_CELLS] = {
++ TC6393_CELL (NAND ),
++ TC6393_CELL (SD ),
++ TC6393_CELL (OHCI ),
++ TC6393_CELL (SERIAL ),
++ TC6393_CELL (LCD ),
++};
++
++/*--------------------------------------------------------------------------*/
++
++/*
++ * TC6393 System Configuration Register
++ */
++struct tc6393_scr {
++ u8 x00[8];
++ u8 revid; /* 0x08 Revision ID */
++ u8 x01[0x47];
++ u8 isr; /* 0x50 Interrupt Status */
++ u8 x02;
++ u8 imr; /* 0x52 Interrupt Mask */
++ u8 x03;
++ u8 irr; /* 0x54 Interrupt Routing */
++ u8 x04[0x0b];
++ u16 gper; /* 0x60 GP Enable */
++ u8 x05[2];
++ u16 gpi_sr[2]; /* 0x64 GPI Status */
++ u16 gpi_imr[2]; /* 0x68 GPI INT Mask */
++ u16 gpi_eder[2]; /* 0x6c GPI Edge Detect Enable */
++ u16 gpi_lir[4]; /* 0x70 GPI Level Invert */
++ u16 gpo_dsr[2]; /* 0x78 GPO Data Set */
++ u16 gpo_doecr[2]; /* 0x7c GPO Data OE Control */
++ u16 gp_iarcr[2]; /* 0x80 GP Internal Active Reg Control */
++ u16 gp_iarlcr[2]; /* 0x84 GP Internal Active Reg Level Con*/
++ u8 gpi_bcr[4]; /* 0x88 GPI Buffer Control */
++ u16 gpa_iarcr; /* 0x8c GPa Internal Active Reg Control */
++ u8 x06[2];
++ u16 gpa_iarlcr; /* 0x90 GPa Internal Active Reg Level Co*/
++ u8 x07[2];
++ u16 gpa_bcr; /* 0x94 GPa Buffer Control */
++ u8 x08[2];
++ u16 ccr; /* 0x98 Clock Control */
++ u16 pll2cr; /* 0x9a PLL2 Control */
++ u16 pll1cr[2]; /* 0x9c PLL1 Control */
++ u8 diarcr; /* 0xa0 Device Internal Active Reg Contr*/
++ u8 dbocr; /* 0xa1 Device Buffer Off Control */
++ u8 x09[0x3e];
++ u8 fer; /* 0xe0 Function Enable */
++ u8 x10[3];
++ u16 mcr; /* 0xe4 Mode Control */
++ u8 x11[0x14];
++ u8 config; /* 0xfc Configuration Control */
++ u8 x12[2];
++ u8 debug; /* 0xff Debug */
++} __attribute__ ((packed));
++
++union tc6393_scr_fer {
++ u8 raw;
++struct {
++ unsigned usben:1; /* D0 USB enable */
++ unsigned lcdcven:1; /* D1 polysylicon TFT enable */
++ unsigned slcden:1; /* D2 SLCD enable */
++} __attribute__ ((packed));
++} __attribute__ ((packed));
++
++union tc6393_scr_ccr {
++ u16 raw;
++struct {
++ unsigned ck32ken:1; /* D0 SD host clock enable */
++ unsigned usbcken:1; /* D1 USB host clock enable */
++ unsigned x00:2;
++ unsigned sharp:1; /* D4 ??? set in Sharp's code */
++ unsigned x01:3;
++ enum { disable = 0,
++ m12MHz = 1,
++ m24MHz = 2,
++ m48MHz = 3,
++ } mclksel:3; /* D10-D8 LCD controller clock */
++ unsigned x02:1;
++ enum { h24MHz = 0,
++ h48MHz = 1,
++ } hclksel:2; /* D13-D12 host bus clock */
++ unsigned x03:2;
++} __attribute__ ((packed));
++} __attribute__ ((packed));
++
++/*--------------------------------------------------------------------------*/
++
++struct tc6393 {
++ spinlock_t lock; /* read-modify-write lock */
++ struct device* dev; /* TC6393 device */
++ struct tc6393_scr __iomem *scr; /* system configuration reg */
++
++ struct resource rscr; /* system config reg resource */
++ struct resource* iomem; /* entire TC6393 iomem resource */
++ unsigned int irq; /* hardware cascade irq */
++
++ struct tmio_device tdev [TC6393_NUM_CELLS];
++};
++
++/*--------------------------------------------------------------------------*/
++
++static u32 tc6393_ioread32 (const void __iomem *addr)
++{
++ return ((u32) ioread16 (addr)) | (((u32) ioread16 (addr + 2)) << 16);
++}
++
++static u32 tc6393_iowrite32 (u32 val, const void __iomem *addr)
++{
++ iowrite16 (val, addr);
++ iowrite16 (val >> 16, addr + 2);
++ return val;
++}
++
++u32 get_tc6393_gpio (struct device *dev)
++{
++ struct tc6393* tc6393 = dev_get_drvdata (dev);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++
++ return tc6393_ioread32 (scr->gpo_dsr);
++}
++EXPORT_SYMBOL (get_tc6393_gpio);
++
++u32 set_tc6393_gpio (struct device *dev, u32 bits)
++{
++ struct tc6393* tc6393 = dev_get_drvdata (dev);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++ unsigned long flags;
++ u32 dsr;
++
++ spin_lock_irqsave (&tc6393->lock, flags);
++ dsr = tc6393_ioread32 (scr->gpo_dsr) | bits;
++ tc6393_iowrite32 (dsr, scr->gpo_dsr);
++ spin_unlock_irqrestore (&tc6393->lock, flags);
++
++ return dsr;
++}
++EXPORT_SYMBOL (set_tc6393_gpio);
++
++u32 reset_tc6393_gpio (struct device *dev, u32 bits)
++{
++ struct tc6393* tc6393 = dev_get_drvdata (dev);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++ unsigned long flags;
++ u32 dsr;
++
++ spin_lock_irqsave (&tc6393->lock, flags);
++ dsr = tc6393_ioread32 (scr->gpo_dsr) & ~bits;
++ tc6393_iowrite32 (dsr, scr->gpo_dsr);
++ spin_unlock_irqrestore (&tc6393->lock, flags);
++
++ return dsr;
++}
++EXPORT_SYMBOL (reset_tc6393_gpio);
++
++/*--------------------------------------------------------------------------*/
++
++static void
++tc6393_irq (unsigned int irq, struct irqdesc *desc)
++{
++ struct tc6393* tc6393 = get_irq_chipdata (irq);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++ unsigned int isr;
++ unsigned int bit;
++ unsigned int i;
++
++ desc->chip->ack (irq);
++
++ while ((isr = ioread8(&scr->isr) & ~ioread8(&scr->imr)))
++ for (bit = 1, i = IRQ_TC6393_START; i <= IRQ_TC6393_LCD;
++ bit <<= 1, i++)
++ if (isr & bit)
++ desc_handle_irq (i, irq_desc + i);
++}
++
++static void tc6393_irq_ack (unsigned int irq)
++{
++}
++
++static void tc6393_irq_mask (unsigned int irq)
++{
++ struct tc6393* tc6393 = get_irq_chipdata (irq);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++ unsigned long flags;
++
++ spin_lock_irqsave (&tc6393->lock, flags);
++ iowrite8 (ioread8 (&scr->imr) | (1 << (irq - IRQ_TC6393_START)),
++ &scr->imr);
++ spin_unlock_irqrestore (&tc6393->lock, flags);
++}
++
++static void tc6393_irq_unmask (unsigned int irq)
++{
++ struct tc6393* tc6393 = get_irq_chipdata (irq);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++ unsigned long flags;
++
++ spin_lock_irqsave (&tc6393->lock, flags);
++ iowrite8 (ioread8 (&scr->imr) & ~(1 << (irq - IRQ_TC6393_START)),
++ &scr->imr);
++ spin_unlock_irqrestore (&tc6393->lock, flags);
++}
++
++static struct irqchip tc6393_chip = {
++ .ack = tc6393_irq_ack,
++ .mask = tc6393_irq_mask,
++ .unmask = tc6393_irq_unmask,
++};
++
++static void tc6393_attach_irq (struct tc6393 *tc6393)
++{
++ unsigned int irq;
++
++ for (irq = IRQ_TC6393_START; irq <= IRQ_TC6393_LCD; irq++) {
++ set_irq_chip (irq, &tc6393_chip);
++ set_irq_chipdata(irq, tc6393);
++ set_irq_handler (irq, do_edge_IRQ);
++ set_irq_flags (irq, IRQF_VALID | IRQF_PROBE);
++ }
++
++ set_irq_type (tc6393->irq, IRQT_FALLING);
++ set_irq_chipdata (tc6393->irq, tc6393);
++ set_irq_chained_handler (tc6393->irq, tc6393_irq);
++}
++
++static void tc6393_detach_irq (struct tc6393 *tc6393)
++{
++ unsigned int irq;
++
++ set_irq_chained_handler (tc6393->irq, NULL);
++ set_irq_chipdata (tc6393->irq, NULL);
++
++ for (irq = IRQ_TC6393_START; irq <= IRQ_TC6393_LCD; irq++) {
++ set_irq_flags (irq, 0);
++ set_irq_chip (irq, NULL);
++ set_irq_chipdata(irq, NULL);
++ }
++}
++
++/*--------------------------------------------------------------------------*/
++
++static int tc6393_bus_match (struct device *dev, struct device_driver *drv)
++{
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ const struct tc6393_cell* cell = tdev->soc_data;
++
++ return !strcmp (cell->name, drv->name);
++}
++
++static int tc6393_bus_suspend (struct device *dev, pm_message_t state)
++{
++ struct device_driver* drv = dev->driver;
++ return drv && drv->suspend ? drv->suspend (dev, state) : 0;
++}
++
++static int tc6393_bus_resume (struct device *dev)
++{
++ struct device_driver* drv = dev->driver;
++ return drv && drv->resume ? drv->resume (dev) : 0;
++}
++
++struct bus_type tc6393_bus_type = {
++ .name = TMIO_NAME_BUS,
++ .match = tc6393_bus_match,
++ .suspend = tc6393_bus_suspend,
++ .resume = tc6393_bus_resume,
++};
++EXPORT_SYMBOL (tc6393_bus_type);
++
++/*--------------------------------------------------------------------------*/
++
++static void tc6393_cell_clock (struct device *dev, int enable)
++{
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ const struct tc6393_cell* cell = tdev->soc_data;
++ struct tc6393* tc6393 = dev_get_drvdata (dev->parent);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++ union tc6393_scr_ccr ccr;
++ unsigned long flags;
++
++ spin_lock_irqsave (&tc6393->lock, flags);
++ ccr.raw = ioread16 (&scr->ccr);
++
++ switch (cell->id) {
++ case TC6393_CELL_SD: ccr.ck32ken = enable; break;
++ case TC6393_CELL_OHCI: ccr.usbcken = enable; break;
++ case TC6393_CELL_LCD:
++ ccr.mclksel = enable ? m48MHz : disable;
++ break;
++ }
++
++ printk (KERN_DEBUG TMIO_NAME_CORE ": scr->ccr = %04x\n", ccr.raw);
++
++ iowrite16(ccr.raw, &scr->ccr);
++ spin_unlock_irqrestore (&tc6393->lock, flags);
++}
++
++static void tc6393_cell_function (struct device *dev, int enable)
++{
++ struct tmio_device* tdev = dev_to_tdev (dev);
++ const struct tc6393_cell* cell = tdev->soc_data;
++ struct tc6393* tc6393 = dev_get_drvdata (dev->parent);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++ union tc6393_scr_fer fer;
++ unsigned long flags;
++
++ if (cell->id == TC6393_CELL_NAND) {
++ if (enable) {
++ /* SMD buffer on */
++ printk (KERN_DEBUG TMIO_NAME_CORE ": SMD buffer on\n");
++ iowrite8 (0xff, scr->gpi_bcr + 1);
++ }
++ return;
++ }
++
++ spin_lock_irqsave (&tc6393->lock, flags);
++ fer.raw = ioread16 (&scr->fer);
++
++ switch (cell->id) {
++ case TC6393_CELL_OHCI: fer.usben = enable; break;
++ case TC6393_CELL_LCD: fer.slcden = enable; break;
++ }
++
++ printk (KERN_DEBUG TMIO_NAME_CORE ": scr->fer = %02x\n", fer.raw);
++
++ iowrite8 (fer.raw, &scr->fer);
++ spin_unlock_irqrestore (&tc6393->lock, flags);
++}
++
++static void
++tc6393_lcd_mode (struct device *dev, const struct fb_videomode *mode)
++{
++ struct tc6393* tc6393 = dev_get_drvdata (dev->parent);
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++
++ iowrite16 (mode->pixclock, scr->pll1cr + 0);
++ iowrite16 (mode->pixclock >> 16, scr->pll1cr + 1);
++}
++
++static struct tmio_cell_ops tc6393_cell_ops = {
++ .clock = tc6393_cell_clock,
++ .function = tc6393_cell_function,
++ .lcd_mode = tc6393_lcd_mode,
++};
++
++static void tc6393_device_release (struct device *dev)
++{
++}
++
++static int
++tc6393_device_register (struct tc6393 *tc6393, struct tmio_cell *tcell)
++{
++ const struct tc6393_cell* cell;
++ struct tmio_device* tdev;
++ struct device* dev;
++ int i;
++
++ for (i = 0; strcmp (tcell->name, tc6393_cell [i].name); )
++ if (++i >= ARRAY_SIZE(tc6393_cell))
++ return -EINVAL;
++
++ cell = tc6393_cell + i;
++ tdev = tc6393->tdev + i;
++ dev = &tdev->dev;
++
++ tdev->ops = &tc6393_cell_ops;
++ tdev->iomem = tc6393->iomem;
++ tdev->soc_data = (void*) cell;
++
++ dev->parent = tc6393->dev;
++ strncpy (dev->bus_id, cell->name, sizeof dev->bus_id);
++ dev->bus = &tc6393_bus_type;
++ dev->dma_mask = tc6393->dev->dma_mask;
++ dev->coherent_dma_mask = tc6393->dev->coherent_dma_mask;
++ dev->release = tc6393_device_release;
++ dev->platform_data = tcell->platform_data;
++
++ for (i=0; i < cell->num_resources; i++) {
++ const struct resource* cr = cell->resource + i;
++ struct resource* dr = tdev->resource + i;
++
++ dr->name = cr->name;
++ dr->start = cr->start;
++ dr->end = cr->end;
++ dr->flags = cr->flags;
++
++ /* convert memory offsets to absolutes */
++ if (cr->flags & IORESOURCE_MEM) {
++ dr->start += tc6393->iomem->start;
++ dr->end += tc6393->iomem->start;
++ }
++ }
++
++ return device_register (dev);
++}
++
++/*--------------------------------------------------------------------------*/
++
++static void tc6393_hw_init (struct tc6393 *tc6393)
++{
++ struct tc6393_scr __iomem * scr = tc6393->scr;
++ struct tc6393_platform_data* tcpd = tc6393->dev->platform_data;
++
++ tcpd->enable (tc6393->dev);
++
++ iowrite8 (0, &scr->fer);
++ iowrite16(tcpd->scr_pll2cr, &scr->pll2cr);
++ iowrite16(tcpd->scr_ccr, &scr->ccr);
++ iowrite16(tcpd->scr_mcr, &scr->mcr);
++ iowrite16(tcpd->scr_gper, &scr->gper);
++ iowrite8 (0, &scr->irr);
++ iowrite8 (0xbf, &scr->imr);
++ iowrite16(tcpd->scr_gpo_dsr, scr->gpo_dsr + 0);
++ iowrite16(tcpd->scr_gpo_dsr >> 16, scr->gpo_dsr + 1);
++ iowrite16(tcpd->scr_gpo_doecr, scr->gpo_doecr + 0);
++ iowrite16(tcpd->scr_gpo_doecr >> 16, scr->gpo_doecr + 1);
++}
++
++static int tc6393_probe (struct device *dev)
++{
++ struct platform_device* pdev = to_platform_device (dev);
++ struct tc6393_platform_data* tcpd = dev->platform_data;
++ struct tc6393* tc6393;
++ struct resource* iomem;
++ struct resource* rscr;
++ int retval;
++ int i;
++
++ iomem = platform_get_resource (pdev, IORESOURCE_MEM, 0);
++ if (!iomem)
++ return -EINVAL;
++
++ tc6393 = kzalloc (sizeof *tc6393, GFP_KERNEL);
++ if (!tc6393) {
++ retval = -ENOMEM;
++ goto err_kzalloc;
++ }
++
++ dev_set_drvdata (dev, tc6393);
++ spin_lock_init (&tc6393->lock);
++ tc6393->dev = dev;
++ tc6393->iomem = iomem;
++ tc6393->irq = platform_get_irq (pdev, 0);
++
++ rscr = &tc6393->rscr;
++ rscr->name = TMIO_NAME_CORE;
++ rscr->start = iomem->start;
++ rscr->end = iomem->start + 0xff;
++ rscr->flags = IORESOURCE_MEM;
++
++ retval = request_resource (iomem, rscr);
++ if (retval)
++ goto err_request_scr;
++
++ tc6393->scr = ioremap (rscr->start, rscr->end - rscr->start + 1);
++ if (!tc6393->scr) {
++ retval = -ENOMEM;
++ goto err_ioremap;
++ }
++
++ tc6393_hw_init (tc6393);
++
++ printk (KERN_INFO "Toshiba %s revision %d at 0x%08lx, irq %d\n",
++ TMIO_SOC_NAME, ioread8 (&tc6393->scr->revid),
++ iomem->start, tc6393->irq);
++
++ if (tc6393->irq)
++ tc6393_attach_irq (tc6393);
++
++ for (i = 0; i < tcpd->num_cells; i++)
++ tc6393_device_register (tc6393, tcpd->cell + i);
++
++ return 0;
++
++err_ioremap:
++ release_resource (rscr);
++err_request_scr:
++ kfree(tc6393);
++err_kzalloc:
++ release_resource (iomem);
++ return retval;
++}
++
++static int tc6393_dev_remove (struct device *dev, void *data)
++{
++ device_unregister (dev);
++ return 0;
++}
++
++static int tc6393_remove (struct device *dev)
++{
++ struct tc6393* tc6393 = dev_get_drvdata (dev);
++
++ device_for_each_child (dev, tc6393, tc6393_dev_remove);
++
++ if (tc6393->irq)
++ tc6393_detach_irq (tc6393);
++
++ iounmap (tc6393->scr);
++ release_resource (&tc6393->rscr);
++ release_resource (tc6393->iomem);
++ kfree (tc6393);
++ return 0;
++}
++
++#ifdef CONFIG_PM
++static int tc6393_suspend (struct device *dev, pm_message_t state)
++{
++ struct tc6393_platform_data* tcpd = dev->platform_data;
++ tcpd->disable (dev);
++ return 0;
++}
++
++static int tc6393_resume (struct device *dev)
++{
++ struct tc6393* tc6393 = dev_get_drvdata (dev);
++ tc6393_hw_init (tc6393);
++ return 0;
++}
++#endif
++
++static struct device_driver tc6393_device_driver = {
++ .name = TMIO_SOC_NAME,
++ .bus = &platform_bus_type,
++ .probe = tc6393_probe,
++ .remove = tc6393_remove,
++#ifdef CONFIG_PM
++ .suspend = tc6393_suspend,
++ .resume = tc6393_resume,
++#endif
++};
++
++/*--------------------------------------------------------------------------*/
++
++static int __init tc6393_init (void)
++{
++ int retval = bus_register (&tc6393_bus_type);
++ if (retval)
++ return retval;
++
++ return driver_register (&tc6393_device_driver);
++}
++
++static void __exit tc6393_exit (void)
++{
++ driver_unregister (&tc6393_device_driver);
++ bus_unregister (&tc6393_bus_type);
++}
++
++module_init (tc6393_init);
++module_exit (tc6393_exit);
++
++MODULE_DESCRIPTION ("TC6393 SoC bus driver");
++MODULE_AUTHOR ("Chris Humbert, Dirk Opfer");
++MODULE_LICENSE ("GPL");
+Index: git/arch/arm/common/Kconfig
+===================================================================
+--- git.orig/arch/arm/common/Kconfig 2006-10-31 16:08:28.000000000 +0000
++++ git/arch/arm/common/Kconfig 2006-11-07 22:13:09.000000000 +0000
+@@ -31,3 +31,6 @@ config SHARPSL_PM
+
+ config SHARP_SCOOP
+ bool
++
++config TOSHIBA_TC6393XB
++ bool
+Index: git/arch/arm/mach-pxa/Kconfig
+===================================================================
+--- git.orig/arch/arm/mach-pxa/Kconfig 2006-11-07 22:13:06.000000000 +0000
++++ git/arch/arm/mach-pxa/Kconfig 2006-11-07 23:30:34.000000000 +0000
+@@ -128,6 +128,7 @@ config MACH_BORZOI
+ config MACH_TOSA
+ bool "Enable Sharp SL-6000x (Tosa) Support"
+ depends PXA_SHARPSL_25x
++ select TOSHIBA_TC6393XB
+
+ config PXA25x
+ bool
+Index: git/arch/arm/common/Makefile
+===================================================================
+--- git.orig/arch/arm/common/Makefile 2006-10-31 16:08:28.000000000 +0000
++++ git/arch/arm/common/Makefile 2006-11-07 22:13:09.000000000 +0000
+@@ -17,3 +17,4 @@ obj-$(CONFIG_SHARPSL_PM) += sharpsl_pm.o
+ obj-$(CONFIG_SHARP_SCOOP) += scoop.o
+ obj-$(CONFIG_ARCH_IXP2000) += uengine.o
+ obj-$(CONFIG_ARCH_IXP23XX) += uengine.o
++obj-$(CONFIG_TOSHIBA_TC6393XB) += tc6393xb.o
+Index: git/include/asm-arm/hardware/tmio.h
+===================================================================
+--- git.orig/include/asm-arm/hardware/tmio.h 2006-11-07 22:13:09.000000000 +0000
++++ git/include/asm-arm/hardware/tmio.h 2006-11-07 22:13:09.000000000 +0000
+@@ -91,6 +91,50 @@ struct tmio_device {
+
+ /*--------------------------------------------------------------------------*/
+
++/*
++ * TC6393XB SoC
++ */
++#ifdef CONFIG_TOSHIBA_TC6393XB
++#define TMIO_SOC_TC6393XB
++#define TMIO_SOC_NAME "TC6393XB"
++#define TMIO_NAME_BUS "tc6393-bus"
++#define TMIO_NAME_CORE "tc6393-core"
++#define TMIO_NAME_NAND "tc6393-nand"
++#define TMIO_NAME_SD "tc6393-sd"
++#define TMIO_NAME_OHCI "tc6393-ohci"
++#define TMIO_NAME_SERIAL "tc6393-serial"
++#define TMIO_NAME_LCD "tc6393-lcd"
++#define tmio_bus_type tc6393_bus_type
++
++#define TC6393_GPIO(x) (1 << (x))
++
++extern struct bus_type tc6393_bus_type;
++
++struct tc6393_platform_data {
++ u16 scr_pll2cr; /* PLL2 Control */
++ u16 scr_ccr; /* Clock Control */
++ u16 scr_mcr; /* Mode Control */
++ u16 scr_gper; /* GP Enable */
++ u32 scr_gpo_doecr; /* GPO Data OE Control */
++ u32 scr_gpo_dsr; /* GPO Data Set */
++
++ /* cells to register as devices */
++ struct tmio_cell* cell;
++ unsigned int num_cells;
++
++ /* callbacks to enable and disable the TC6393XB's power and clock */
++ void (*enable) (struct device *dev);
++ void (*disable) (struct device *dev);
++};
++
++u32 get_tc6393_gpio (struct device *dev);
++u32 set_tc6393_gpio (struct device *dev, u32 bits);
++u32 reset_tc6393_gpio (struct device *dev, u32 bits);
++
++/*--------------------------------------------------------------------------*/
++
++#else
+ #error "no TMIO SoC configured"
++#endif
+
+ #endif
+Index: git/include/asm-arm/arch-pxa/irqs.h
+===================================================================
+--- git.orig/include/asm-arm/arch-pxa/irqs.h 2006-10-31 16:09:33.000000000 +0000
++++ git/include/asm-arm/arch-pxa/irqs.h 2006-11-07 22:13:09.000000000 +0000
+@@ -163,17 +163,27 @@
+ #define IRQ_LOCOMO_SPI_OVRN (IRQ_BOARD_END + 20)
+ #define IRQ_LOCOMO_SPI_TEND (IRQ_BOARD_END + 21)
+
++#define IRQ_TC6393_START (IRQ_BOARD_END)
++#define IRQ_TC6393_NAND (IRQ_BOARD_END + 0)
++#define IRQ_TC6393_SD (IRQ_BOARD_END + 1)
++#define IRQ_TC6393_OHCI (IRQ_BOARD_END + 2)
++#define IRQ_TC6393_SERIAL (IRQ_BOARD_END + 3)
++#define IRQ_TC6393_LCD (IRQ_BOARD_END + 4)
++
+ /*
+ * Figure out the MAX IRQ number.
+ *
+ * If we have an SA1111, the max IRQ is S1_BVD1_STSCHG+1.
+ * If we have an LoCoMo, the max IRQ is IRQ_LOCOMO_SPI_TEND+1
++ * If we have an TC6393XB, the max IRQ is IRQ_TC6393_LCD+1
+ * Otherwise, we have the standard IRQs only.
+ */
+ #ifdef CONFIG_SA1111
+ #define NR_IRQS (IRQ_S1_BVD1_STSCHG + 1)
+ #elif defined(CONFIG_SHARP_LOCOMO)
+ #define NR_IRQS (IRQ_LOCOMO_SPI_TEND + 1)
++#elif defined(CONFIG_TOSHIBA_TC6393XB)
++#define NR_IRQS (IRQ_TC6393_LCD + 1)
+ #elif defined(CONFIG_ARCH_LUBBOCK) || \
+ defined(CONFIG_MACH_LOGICPD_PXA270) || \
+ defined(CONFIG_MACH_MAINSTONE)
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/tosa-keyboard-r18.patch b/packages/linux/linux-openzaurus-2.6.18+git/tosa-keyboard-r18.patch
new file mode 100644
index 0000000000..00bac40db5
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/tosa-keyboard-r18.patch
@@ -0,0 +1,515 @@
+ drivers/input/keyboard/Kconfig | 12 -
+ drivers/input/keyboard/Makefile | 1
+ drivers/input/keyboard/tosakbd.c | 467 +++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 479 insertions(+), 1 deletion(-)
+
+Index: git/drivers/input/keyboard/Kconfig
+===================================================================
+--- git.orig/drivers/input/keyboard/Kconfig 2006-10-31 16:08:57.000000000 +0000
++++ git/drivers/input/keyboard/Kconfig 2006-11-07 22:13:10.000000000 +0000
+@@ -148,12 +148,22 @@ config KEYBOARD_SPITZ
+ depends on PXA_SHARPSL
+ default y
+ help
+- Say Y here to enable the keyboard on the Sharp Zaurus SL-C1000,
++ Say Y here to enable the keyboard on the Sharp Zaurus SL-C1000,
+ SL-C3000 and Sl-C3100 series of PDAs.
+
+ To compile this driver as a module, choose M here: the
+ module will be called spitzkbd.
+
++config KEYBOARD_TOSA
++ tristate "Tosa keyboard"
++ depends on PXA_SHARPSL
++ default y
++ help
++ Say Y here to enable the keyboard on the Sharp Zaurus SL-6000x (Tosa)
++
++ To compile this driver as a module, choose M here: the
++ module will be called tosakbd.
++
+ config KEYBOARD_AMIGA
+ tristate "Amiga keyboard"
+ depends on AMIGA
+Index: git/drivers/input/keyboard/Makefile
+===================================================================
+--- git.orig/drivers/input/keyboard/Makefile 2006-10-31 16:08:57.000000000 +0000
++++ git/drivers/input/keyboard/Makefile 2006-11-07 22:13:10.000000000 +0000
+@@ -17,4 +17,5 @@ obj-$(CONFIG_KEYBOARD_SPITZ) += spitzkb
+ obj-$(CONFIG_KEYBOARD_HIL) += hil_kbd.o
+ obj-$(CONFIG_KEYBOARD_HIL_OLD) += hilkbd.o
+ obj-$(CONFIG_KEYBOARD_OMAP) += omap-keypad.o
++obj-$(CONFIG_KEYBOARD_TOSA) += tosakbd.o
+
+Index: git/drivers/input/keyboard/tosakbd.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ git/drivers/input/keyboard/tosakbd.c 2006-11-07 23:27:19.000000000 +0000
+@@ -0,0 +1,467 @@
++/*
++ * Keyboard driver for Sharp Tosa models (SL-6000x)
++ *
++ * Copyright (c) 2005 Dirk Opfer
++ *
++ * Based on xtkbd.c/locomkbd.c/corgikbd.c
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ *
++ */
++
++#include <linux/delay.h>
++#include <linux/platform_device.h>
++#include <linux/init.h>
++#include <linux/input.h>
++#include <linux/interrupt.h>
++#include <linux/jiffies.h>
++#include <linux/module.h>
++#include <linux/slab.h>
++
++#include <asm/arch/tosa.h>
++#include <asm/arch/hardware.h>
++#include <asm/arch/pxa-regs.h>
++
++
++#define TOSA_KEY_STROBE_NUM (11)
++#define TOSA_KEY_SENSE_NUM (7)
++
++#define KEYMASK_ON (0x1<<0)
++#define KEYMASK_REC (0x1<<1)
++#define KEYMASK_SYNC (0x1<<2)
++
++#define KB_ROWS 7
++#define KB_COLS 11
++#define KB_ROWMASK(r) (1 << (r))
++#define SCANCODE(r,c) ( ((r)<<4) + (c) + 1 )
++#define NR_SCANCODES (SCANCODE(KB_ROWS-1,KB_COLS)+1+1)
++
++#define SCAN_INTERVAL (HZ/10)
++#define HP_SCAN_INTERVAL (150) /* ms */
++#define HP_STABLE_COUNT 2
++
++#define TOSA_KEY_CALENDER KEY_F1
++#define TOSA_KEY_ADDRESS KEY_F2
++#define TOSA_KEY_FN KEY_F3
++#define TOSA_KEY_CANCEL KEY_F4
++#define TOSA_KEY_OFF KEY_SUSPEND
++#define TOSA_KEY_CENTER KEY_F5
++#define TOSA_KEY_REC KEY_F6
++#define TOSA_KEY_LIGHT KEY_F7
++#define TOSA_KEY_RECORD KEY_F8
++#define TOSA_KEY_HOME KEY_F9
++#define TOSA_KEY_MAIL KEY_F10
++#define TOSA_KEY_OK KEY_F11
++#define TOSA_KEY_MENU KEY_F12
++#define TOSA_KEY_SYNC KEY_F13
++
++#define GET_ROWS_STATUS(c) ((GPLR2 & TOSA_GPIO_ALL_SENSE_BIT) >> TOSA_GPIO_ALL_SENSE_RSHIFT)
++#define KB_DISCHARGE_DELAY 10
++#define KB_ACTIVATE_DELAY 10
++
++
++static unsigned char tosakbd_keycode[NR_SCANCODES] = {
++ 0, /* 0 */
++ 0, KEY_W, 0, 0, 0, KEY_K, KEY_BACKSPACE, KEY_P, 0, 0, 0, TOSA_KEY_OFF, 0, 0, 0, 0, /*1 - 16*/
++ KEY_Q, KEY_E, KEY_T, KEY_Y, 0, KEY_O, KEY_I, KEY_COMMA, 0, 0, 0, TOSA_KEY_RECORD, 0, 0, 0, 0, /*17 - 32*/
++ KEY_A, KEY_D, KEY_G, KEY_U, 0, KEY_L, KEY_ENTER, KEY_DOT, 0, 0, 0, TOSA_KEY_SYNC, 0, 0, 0, 0, /*33 - 48*/
++ KEY_Z, KEY_C, KEY_V, KEY_J, TOSA_KEY_ADDRESS, TOSA_KEY_CANCEL, TOSA_KEY_CENTER, TOSA_KEY_OK, KEY_LEFTSHIFT, 0 , 0,0 , 0, 0, 0, 0, /*49 - 64*/
++ KEY_S, KEY_R, KEY_B, KEY_N, TOSA_KEY_CALENDER, TOSA_KEY_HOME, TOSA_KEY_REC, TOSA_KEY_LIGHT, 0, KEY_RIGHTSHIFT, 0, 0, 0, 0, 0, 0, /*65 - 80*/
++ KEY_TAB, KEY_SLASH, KEY_H, KEY_M, TOSA_KEY_MENU, 0, KEY_UP, 0, 0, 0, TOSA_KEY_FN, 0, 0, 0, 0, 0, /*81 - 96*/
++ KEY_X, KEY_F, KEY_SPACE, KEY_APOSTROPHE, TOSA_KEY_MAIL, KEY_LEFT, KEY_DOWN, KEY_RIGHT, 0, 0, 0, 0, 0, /*97 - 109*/
++};
++
++struct tosakbd {
++ unsigned char keycode[ARRAY_SIZE(tosakbd_keycode)];
++ struct input_dev *input;
++
++ spinlock_t lock;
++ struct timer_list timer;
++ struct timer_list hptimer;
++
++ int hp_state;
++ int hp_count;
++
++ unsigned int suspended;
++ unsigned long suspend_jiffies;
++};
++
++/* Helper functions for reading the keyboard matrix
++ * Note: We should really be using pxa_gpio_mode to alter GPDR but it
++ * requires a function call per GPIO bit which is excessive
++ * when we need to access 12 bits at once, multiple times.
++ * These functions must be called within local_irq_save()/local_irq_restore()
++ * or similar.
++ */
++static inline void tosakbd_discharge_all(void)
++{
++ /* STROBE All HiZ */
++ GPCR1 = TOSA_GPIO_HIGH_STROBE_BIT;
++ GPDR1 &= ~TOSA_GPIO_HIGH_STROBE_BIT;
++ GPCR2 = TOSA_GPIO_LOW_STROBE_BIT;
++ GPDR2 &= ~TOSA_GPIO_LOW_STROBE_BIT;
++}
++
++static inline void tosakbd_activate_all(void)
++{
++ /* STROBE ALL -> High */
++ GPSR1 = TOSA_GPIO_HIGH_STROBE_BIT;
++ GPDR1 |= TOSA_GPIO_HIGH_STROBE_BIT;
++ GPSR2 = TOSA_GPIO_LOW_STROBE_BIT;
++ GPDR2 |= TOSA_GPIO_LOW_STROBE_BIT;
++
++ udelay(KB_DISCHARGE_DELAY);
++
++ /* STATE CLEAR */
++ GEDR2 |= TOSA_GPIO_ALL_SENSE_BIT;
++}
++
++static inline void tosakbd_activate_col(int col)
++{
++ if (col<=5) {
++ /* STROBE col -> High, not col -> HiZ */
++ GPSR1 = TOSA_GPIO_STROBE_BIT(col);
++ GPDR1 = (GPDR1 & ~TOSA_GPIO_HIGH_STROBE_BIT) | TOSA_GPIO_STROBE_BIT(col);
++ } else {
++ /* STROBE col -> High, not col -> HiZ */
++ GPSR2 = TOSA_GPIO_STROBE_BIT(col);
++ GPDR2 = (GPDR2 & ~TOSA_GPIO_LOW_STROBE_BIT) | TOSA_GPIO_STROBE_BIT(col);
++ }
++}
++
++static inline void tosakbd_reset_col(int col)
++{
++ if (col<=5) {
++ /* STROBE col -> Low */
++ GPCR1 = TOSA_GPIO_STROBE_BIT(col);
++ /* STROBE col -> out, not col -> HiZ */
++ GPDR1 = (GPDR1 & ~TOSA_GPIO_HIGH_STROBE_BIT) | TOSA_GPIO_STROBE_BIT(col);
++ } else {
++ /* STROBE col -> Low */
++ GPCR2 = TOSA_GPIO_STROBE_BIT(col);
++ /* STROBE col -> out, not col -> HiZ */
++ GPDR2 = (GPDR2 & ~TOSA_GPIO_LOW_STROBE_BIT) | TOSA_GPIO_STROBE_BIT(col);
++ }
++}
++
++/*
++ * Read the GPIOs for POWER, RECORD and SYNC
++ */
++static int read_port_key_status_raw(void)
++{
++ int val=0;
++
++ /* Power key */
++ if ((GPLR0 & GPIO_bit(TOSA_GPIO_ON_KEY))==0)
++ val |= KEYMASK_ON;
++ /* Record key */
++ if ((GPLR0 & GPIO_bit(TOSA_GPIO_RECORD_BTN))==0)
++ val |= KEYMASK_REC;
++ /* Sync key */
++ if ((GPLR0 & GPIO_bit(TOSA_GPIO_SYNC))==0)
++ val |= KEYMASK_SYNC;
++ return val;
++}
++
++
++/*
++ * The tosa keyboard only generates interrupts when a key is pressed.
++ * So when a key is pressed, we enable a timer. This timer scans the
++ * keyboard, and this is how we detect when the key is released.
++ */
++
++/* Scan the hardware keyboard and push any changes up through the input layer */
++static void tosakbd_scankeyboard(struct tosakbd *tosakbd_data)
++{
++ unsigned int row, col, rowd;
++ unsigned long flags;
++ unsigned int num_pressed = 0;
++
++ if (tosakbd_data->suspended)
++ return;
++
++ spin_lock_irqsave(&tosakbd_data->lock, flags);
++
++ for (col = 0; col < KB_COLS; col++) {
++ /*
++ * Discharge the output driver capacitatance
++ * in the keyboard matrix. (Yes it is significant..)
++ */
++ tosakbd_discharge_all();
++ udelay(KB_DISCHARGE_DELAY);
++
++ tosakbd_activate_col( col);
++ udelay(KB_ACTIVATE_DELAY);
++
++ rowd = GET_ROWS_STATUS(col);
++
++ for (row = 0; row < KB_ROWS; row++) {
++ unsigned int scancode, pressed;
++ scancode = SCANCODE(row, col);
++ pressed = rowd & KB_ROWMASK(row);
++ input_report_key(tosakbd_data->input, tosakbd_data->keycode[scancode], pressed);
++ if (pressed)
++ num_pressed++;
++ }
++
++ tosakbd_reset_col(col);
++ }
++
++ tosakbd_activate_all();
++
++ rowd = read_port_key_status_raw();
++
++ for (row = 0; row < 3; row++ ) {
++ unsigned int scancode, pressed;
++ scancode = SCANCODE(row, KB_COLS);
++ pressed = rowd & KB_ROWMASK(row);
++ input_report_key(tosakbd_data->input, tosakbd_data->keycode[scancode], pressed);
++ if (pressed)
++ num_pressed++;
++
++ if (pressed && (tosakbd_data->keycode[scancode] == TOSA_KEY_OFF)
++ && time_after(jiffies, tosakbd_data->suspend_jiffies + msecs_to_jiffies(1000))) {
++ input_event(tosakbd_data->input, EV_PWR, TOSA_KEY_OFF, 1);
++ tosakbd_data->suspend_jiffies = jiffies;
++ }
++ }
++
++ input_sync(tosakbd_data->input);
++
++ /* if any keys are pressed, enable the timer */
++ if (num_pressed)
++ mod_timer(&tosakbd_data->timer, jiffies + SCAN_INTERVAL);
++
++ spin_unlock_irqrestore(&tosakbd_data->lock, flags);
++}
++
++/*
++ * tosa keyboard interrupt handler.
++ */
++static irqreturn_t tosakbd_interrupt(int irq, void *dev_id)
++{
++ struct tosakbd *tosakbd_data = dev_id;
++
++ if (!timer_pending(&tosakbd_data->timer))
++ {
++ /** wait chattering delay **/
++ udelay(20);
++ tosakbd_scankeyboard(tosakbd_data);
++ }
++
++ return IRQ_HANDLED;
++}
++
++/*
++ * tosa timer checking for released keys
++ */
++static void tosakbd_timer_callback(unsigned long data)
++{
++ struct tosakbd *tosakbd_data = (struct tosakbd *) data;
++ tosakbd_scankeyboard(tosakbd_data);
++}
++
++/*
++ * The headphone generates an interrupt.
++ * We debounce the switche and pass them to the input system.
++ */
++
++static irqreturn_t tosakbd_hp_isr(int irq, void *dev_id)
++{
++ struct tosakbd *tosakbd_data = dev_id;
++
++ if (!timer_pending(&tosakbd_data->hptimer))
++ mod_timer(&tosakbd_data->hptimer, jiffies + msecs_to_jiffies(HP_SCAN_INTERVAL));
++
++ return IRQ_HANDLED;
++}
++
++static void tosakbd_hp_timer(unsigned long data)
++{
++ struct tosakbd *tosakbd_data = (struct tosakbd *) data;
++ unsigned long state;
++ unsigned long flags;
++
++ state = (GPLR(TOSA_GPIO_EAR_IN) & GPIO_bit(TOSA_GPIO_EAR_IN));
++ if (state != tosakbd_data->hp_state) {
++ tosakbd_data->hp_count = 0;
++ tosakbd_data->hp_state = state;
++ } else if (tosakbd_data->hp_count < HP_STABLE_COUNT) {
++ tosakbd_data->hp_count++;
++ }
++
++ if (tosakbd_data->hp_count >= HP_STABLE_COUNT) {
++ spin_lock_irqsave(&tosakbd_data->lock, flags);
++
++ input_report_switch(tosakbd_data->input, SW_HEADPHONE_INSERT, ((GPLR(TOSA_GPIO_EAR_IN) & GPIO_bit(TOSA_GPIO_EAR_IN)) == 0));
++ input_sync(tosakbd_data->input);
++
++ spin_unlock_irqrestore(&tosakbd_data->lock, flags);
++ } else {
++ mod_timer(&tosakbd_data->hptimer, jiffies + msecs_to_jiffies(HP_SCAN_INTERVAL));
++ }
++}
++
++#ifdef CONFIG_PM
++static int tosakbd_suspend(struct platform_device *dev, pm_message_t state)
++{
++ struct tosakbd *tosakbd = platform_get_drvdata(dev);
++
++ tosakbd->suspended = 1;
++
++ return 0;
++}
++
++static int tosakbd_resume(struct platform_device *dev)
++{
++ struct tosakbd *tosakbd = platform_get_drvdata(dev);
++
++ /* Upon resume, ignore the suspend key for a short while */
++ tosakbd->suspend_jiffies = jiffies;
++ tosakbd->suspended = 0;
++
++ return 0;
++}
++#else
++#define tosakbd_suspend NULL
++#define tosakbd_resume NULL
++#endif
++
++static int __init tosakbd_probe(struct platform_device *pdev) {
++
++ int i;
++ struct tosakbd *tosakbd;
++ struct input_dev *input_dev;
++
++ tosakbd = kzalloc(sizeof(struct tosakbd), GFP_KERNEL);
++ if (!tosakbd)
++ return -ENOMEM;
++
++ input_dev = input_allocate_device();
++ if (!input_dev) {
++ kfree(tosakbd);
++ return -ENOMEM;
++ }
++
++ platform_set_drvdata(pdev,tosakbd);
++
++ spin_lock_init(&tosakbd->lock);
++
++ /* Init Keyboard rescan timer */
++ init_timer(&tosakbd->timer);
++ tosakbd->timer.function = tosakbd_timer_callback;
++ tosakbd->timer.data = (unsigned long) tosakbd;
++
++ /* Init Headphone Timer */
++ init_timer(&tosakbd->hptimer);
++ tosakbd->hptimer.function = tosakbd_hp_timer;
++ tosakbd->hptimer.data = (unsigned long) tosakbd;
++
++ tosakbd->suspend_jiffies = jiffies;
++
++ tosakbd->input = input_dev;
++
++ input_dev->private = tosakbd;
++ input_dev->name = "Tosa Keyboard";
++ input_dev->phys = "tosakbd/input0";
++ input_dev->cdev.dev = &pdev->dev;
++
++ input_dev->id.bustype = BUS_HOST;
++ input_dev->id.vendor = 0x0001;
++ input_dev->id.product = 0x0001;
++ input_dev->id.version = 0x0100;
++
++ input_dev->evbit[0] = BIT(EV_KEY) | BIT(EV_REP) | BIT(EV_PWR) | BIT(EV_SW);
++ input_dev->keycode = tosakbd->keycode;
++ input_dev->keycodesize = sizeof(unsigned char);
++ input_dev->keycodemax = ARRAY_SIZE(tosakbd_keycode);
++
++ memcpy(tosakbd->keycode, tosakbd_keycode, sizeof(tosakbd->keycode));
++ for (i = 0; i < ARRAY_SIZE(tosakbd_keycode); i++)
++ set_bit(tosakbd->keycode[i], input_dev->keybit);
++ clear_bit(0, input_dev->keybit);
++ set_bit(SW_HEADPHONE_INSERT, input_dev->swbit);
++
++ input_register_device(tosakbd->input);
++
++ /* Setup sense interrupts - RisingEdge Detect, sense lines as inputs */
++ for (i = 0; i < TOSA_KEY_SENSE_NUM; i++) {
++ pxa_gpio_mode( TOSA_GPIO_KEY_SENSE(i) | GPIO_IN);
++ if (request_irq(TOSA_IRQ_GPIO_KEY_SENSE(i), tosakbd_interrupt,
++ SA_INTERRUPT | SA_TRIGGER_RISING, "tosakbd", tosakbd)) {
++ printk("tosakbd: Can't get IRQ: %d !\n", i);
++ }
++ }
++
++ /* Set Strobe lines as outputs - set high */
++ for (i = 0; i < TOSA_KEY_STROBE_NUM; i++) {
++ pxa_gpio_mode( TOSA_GPIO_KEY_STROBE(i) | GPIO_OUT | GPIO_DFLT_HIGH);
++ }
++
++ // Power&Rec Button
++ pxa_gpio_mode( TOSA_GPIO_ON_KEY | GPIO_IN);
++ pxa_gpio_mode( TOSA_GPIO_RECORD_BTN | GPIO_IN);
++ pxa_gpio_mode( TOSA_GPIO_SYNC | GPIO_IN);
++ pxa_gpio_mode( TOSA_GPIO_EAR_IN | GPIO_IN);
++
++ if (request_irq(TOSA_IRQ_GPIO_ON_KEY, tosakbd_interrupt, SA_INTERRUPT | SA_TRIGGER_FALLING, "On key", tosakbd) ||
++ request_irq(TOSA_IRQ_GPIO_RECORD_BTN, tosakbd_interrupt, SA_INTERRUPT | SA_TRIGGER_FALLING, "Record key", tosakbd) ||
++ request_irq(TOSA_IRQ_GPIO_SYNC, tosakbd_interrupt, SA_INTERRUPT | SA_TRIGGER_FALLING, "Sync key", tosakbd) ||
++ request_irq(TOSA_IRQ_GPIO_EAR_IN, tosakbd_hp_isr, SA_INTERRUPT | SA_TRIGGER_FALLING, "HP in", tosakbd)) {
++ printk("Could not allocate KEYBD IRQ!\n");
++ }
++
++ printk(KERN_INFO "input: Tosa Keyboard Registered\n");
++
++ return 0;
++}
++
++static int tosakbd_remove(struct platform_device *dev) {
++
++ int i;
++ struct tosakbd *tosakbd = platform_get_drvdata(dev);
++
++ for (i = 0; i < TOSA_KEY_SENSE_NUM; i++)
++ free_irq(TOSA_IRQ_GPIO_KEY_SENSE(i),tosakbd);
++
++ free_irq(TOSA_IRQ_GPIO_ON_KEY,tosakbd);
++ free_irq(TOSA_IRQ_GPIO_RECORD_BTN,tosakbd);
++ free_irq(TOSA_IRQ_GPIO_SYNC,tosakbd);
++
++ del_timer_sync(&tosakbd->timer);
++
++ input_unregister_device(tosakbd->input);
++
++ kfree(tosakbd);
++
++ return 0;
++}
++
++static struct platform_driver tosakbd_driver = {
++ .probe = tosakbd_probe,
++ .remove = tosakbd_remove,
++ .suspend = tosakbd_suspend,
++ .resume = tosakbd_resume,
++ .driver = {
++ .name = "tosa-keyboard",
++ },
++};
++
++static int __devinit tosakbd_init(void)
++{
++ return platform_driver_register(&tosakbd_driver);
++}
++
++static void __exit tosakbd_exit(void)
++{
++ platform_driver_unregister(&tosakbd_driver);
++}
++
++module_init(tosakbd_init);
++module_exit(tosakbd_exit);
++
++MODULE_AUTHOR("Dirk Opfer <Dirk@Opfer-Online.de>");
++MODULE_DESCRIPTION("Tosa Keyboard Driver");
++MODULE_LICENSE("GPLv2");
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/tosa-lcdnoise-r1.patch b/packages/linux/linux-openzaurus-2.6.18+git/tosa-lcdnoise-r1.patch
new file mode 100644
index 0000000000..624098bc64
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/tosa-lcdnoise-r1.patch
@@ -0,0 +1,157 @@
+Index: linux-2.6.18/arch/arm/mach-pxa/tosa.c
+===================================================================
+--- linux-2.6.18.orig/arch/arm/mach-pxa/tosa.c 2006-09-20 17:14:14.000000000 +0200
++++ linux-2.6.18/arch/arm/mach-pxa/tosa.c 2006-09-20 17:14:43.000000000 +0200
+@@ -2,6 +2,7 @@
+ * Support for Sharp SL-C6000x PDAs
+ * Model: (Tosa)
+ *
++ * Copyright (c) 2006 Wolfson Microelectronics PLC.
+ * Copyright (c) 2005 Dirk Opfer
+ *
+ * Based on code written by Sharp/Lineo for 2.4 kernels
+@@ -47,6 +48,8 @@
+ #include <asm/hardware/tmio.h>
+ #include <asm/mach/sharpsl_param.h>
+
++#include <linux/wm97xx.h>
++
+ #include "generic.h"
+
+ /*
+@@ -429,6 +432,16 @@
+ },
+ };
+
++
++/*
++ * Tosa Touchscreen device
++ */
++
++static struct wm97xx_machinfo tosa_ts_machinfo = {
++ .get_hsync_time = tosa_get_hsync_time,
++ .wait_hsync = tosa_wait_hsync,
++};
++
+ /*
+ * Tosa Blueooth
+ */
+@@ -458,6 +471,7 @@
+ GPSR(TOSA_GPIO_ON_RESET) = GPIO_bit(TOSA_GPIO_ON_RESET);
+
+ mdelay(1000);
++ wm97xx_unset_machinfo();
+ arm_machine_restart('h');
+ }
+
+@@ -503,6 +517,8 @@
+ platform_scoop_config = &tosa_pcmcia_config;
+
+ platform_add_devices(devices, ARRAY_SIZE(devices));
++
++ wm97xx_set_machinfo(&tosa_ts_machinfo);
+ }
+
+ static void __init fixup_tosa(struct machine_desc *desc,
+Index: linux-2.6.18/arch/arm/mach-pxa/tosa_lcd.c
+===================================================================
+--- linux-2.6.18.orig/arch/arm/mach-pxa/tosa_lcd.c 2006-09-20 17:14:14.000000000 +0200
++++ linux-2.6.18/arch/arm/mach-pxa/tosa_lcd.c 2006-09-20 17:14:15.000000000 +0200
+@@ -1,6 +1,7 @@
+ /*
+ * LCD / Backlight control code for Sharp SL-6000x (tosa)
+ *
++ * Copyright (c) 2006 Wolfson Microelectronics PLC.
+ * Copyright (c) 2005 Dirk Opfer
+ *
+ * This program is free software; you can redistribute it and/or modify
+@@ -59,6 +60,8 @@
+ static struct ssp_dev tosa_nssp_dev;
+ static struct ssp_state tosa_nssp_state;
+ static spinlock_t tosa_nssp_lock;
++static int blanked;
++static unsigned long hsync_time;
+
+ static unsigned short normal_i2c[] = {
+ DAC_BASE,
+@@ -130,6 +133,17 @@
+ pxa_nssp_output(TG_GPOSR,0x02); /* GPOS0=powercontrol, GPOS1=GPIO, GPOS2=TCTL */
+ }
+
++static unsigned long calc_hsync_time(const struct fb_videomode *mode) {
++ /* The 25 and 44 'magic numbers' are from Sharp's 2.4 patches */
++ if (mode->yres == 640) {
++ return 25;
++ }
++ if (mode->yres == 320) {
++ return 44;
++ }
++ return 0;
++}
++
+ static void tosa_lcd_tg_on(struct device *dev, const struct fb_videomode *mode)
+ {
+ const int value = TG_REG0_COLOR | TG_REG0_UD | TG_REG0_LR;
+@@ -154,6 +168,8 @@
+ /* set common voltage */
+ i2c_smbus_write_byte_data(tosa_i2c_dac, DAC_CH1, comadj);
+
++ blanked = 0;
++ hsync_time = calc_hsync_time(mode);
+ }
+
+ static void tosa_lcd_tg_off(struct device *dev)
+@@ -172,6 +188,8 @@
+
+ /* L3V Off */
+ reset_scoop_gpio( &tosascoop_jc_device.dev,TOSA_SCOOP_JC_TC3693_L3V_ON);
++
++ blanked = 1;
+ }
+
+ static int tosa_detect_client(struct i2c_adapter* adapter, int address, int kind) {
+@@ -238,6 +256,23 @@
+ return 0;
+ }
+
++unsigned long tosa_get_hsync_time(void)
++{
++/* This method should eventually contain the correct algorithm for calculating
++ the hsync_time */
++ if (blanked)
++ return 0;
++ else
++ return hsync_time;
++}
++
++void tosa_wait_hsync(void)
++{
++ /* Waits for a rising edge on the VGA line */
++ while((GPLR(TOSA_GPIO_VGA_LINE) & GPIO_bit(TOSA_GPIO_VGA_LINE)) == 0);
++ while((GPLR(TOSA_GPIO_VGA_LINE) & GPIO_bit(TOSA_GPIO_VGA_LINE)) != 0);
++}
++
+ static struct i2c_driver tosa_driver={
+ .id = TOSA_LCD_I2C_DEVICEID,
+ .attach_adapter = tosa_attach_adapter,
+Index: linux-2.6.18/include/asm-arm/arch-pxa/tosa.h
+===================================================================
+--- linux-2.6.18.orig/include/asm-arm/arch-pxa/tosa.h 2006-09-20 17:14:13.000000000 +0200
++++ linux-2.6.18/include/asm-arm/arch-pxa/tosa.h 2006-09-20 17:14:15.000000000 +0200
+@@ -1,6 +1,7 @@
+ /*
+ * Hardware specific definitions for Sharp SL-C6000x series of PDAs
+ *
++ * Copyright (c) 2006 Wolfson Microelectronics PLC.
+ * Copyright (c) 2005 Dirk Opfer
+ *
+ * Based on Sharp's 2.4 kernel patches
+@@ -187,4 +188,8 @@
+ extern struct platform_device tosascoop_jc_device;
+ extern struct platform_device tosascoop_device;
+ extern struct platform_device tc6393_device;
++
++unsigned long tosa_get_hsync_time(void);
++void tosa_wait_hsync(void);
++
+ #endif /* _ASM_ARCH_TOSA_H_ */
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/tosa-tmio-lcd-r10.patch b/packages/linux/linux-openzaurus-2.6.18+git/tosa-tmio-lcd-r10.patch
new file mode 100644
index 0000000000..aef3a047c1
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/tosa-tmio-lcd-r10.patch
@@ -0,0 +1,472 @@
+ arch/arm/mach-pxa/Kconfig | 5
+ arch/arm/mach-pxa/Makefile | 2
+ arch/arm/mach-pxa/tosa.c | 49 +++++-
+ arch/arm/mach-pxa/tosa_lcd.c | 344 +++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 396 insertions(+), 4 deletions(-)
+
+Index: git/arch/arm/mach-pxa/Makefile
+===================================================================
+--- git.orig/arch/arm/mach-pxa/Makefile 2006-11-07 22:13:10.000000000 +0000
++++ git/arch/arm/mach-pxa/Makefile 2006-11-07 23:29:38.000000000 +0000
+@@ -17,7 +17,7 @@ obj-$(CONFIG_PXA_SHARP_C7xx) += corgi.o
+ obj-$(CONFIG_PXA_SHARP_Cxx00) += spitz.o corgi_ssp.o corgi_lcd.o sharpsl_pm.o spitz_pm.o
+ obj-$(CONFIG_MACH_AKITA) += akita-ioexp.o
+ obj-$(CONFIG_MACH_POODLE) += poodle.o corgi_ssp.o sharpsl_pm.o poodle_pm.o
+-obj-$(CONFIG_MACH_TOSA) += tosa.o sharpsl_pm.o tosa_pm.o
++obj-$(CONFIG_MACH_TOSA) += tosa.o sharpsl_pm.o tosa_pm.o tosa_lcd.o
+ obj-$(CONFIG_MACH_HX2750) += hx2750.o hx2750_test.o
+
+ # Support for blinky lights
+Index: git/arch/arm/mach-pxa/tosa_lcd.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ git/arch/arm/mach-pxa/tosa_lcd.c 2006-11-07 23:29:25.000000000 +0000
+@@ -0,0 +1,344 @@
++/*
++ * LCD / Backlight control code for Sharp SL-6000x (tosa)
++ *
++ * Copyright (c) 2005 Dirk Opfer
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ *
++ */
++
++#include <linux/module.h>
++#include <linux/init.h>
++#include <linux/kernel.h>
++#include <linux/sched.h>
++#include <linux/slab.h>
++#include <linux/delay.h>
++#include <linux/platform_device.h>
++#include <linux/i2c.h>
++#include <linux/fb.h>
++
++#include <asm/mach/sharpsl_param.h>
++#include <asm/hardware.h>
++#include <asm/hardware/scoop.h>
++#include <asm/hardware/tmio.h>
++#include <asm/arch/ssp.h>
++#include <asm/arch/sharpsl.h>
++#include <asm/arch/tosa.h>
++#include <asm/arch/pxa-regs.h>
++
++#define DAC_BASE 0x4e
++#define DAC_CH1 0
++#define DAC_CH2 1
++
++#define TG_REG0_VQV 0x0001
++#define TG_REG0_COLOR 0x0002
++#define TG_REG0_UD 0x0004
++#define TG_REG0_LR 0x0008
++#define COMADJ_DEFAULT 97
++#define TOSA_LCD_I2C_DEVICEID 0x4711 // Fixme: new value
++
++static void tosa_lcd_tg_init(struct device *dev);
++static void tosa_lcd_tg_on(struct device *dev, const struct fb_videomode *mode);
++static void tosa_lcd_tg_off(struct device *dev);
++static void tosa_set_backlight(int intensity);
++
++const static struct tmio_lcd_ops tosa_tc6393_lcd_ops = {
++ .init = tosa_lcd_tg_init,
++ .tg_on = tosa_lcd_tg_on,
++ .tg_off = tosa_lcd_tg_off,
++};
++
++static struct platform_device *tosabl_device;
++static struct i2c_driver tosa_driver;
++static struct i2c_client* tosa_i2c_dac;
++static int initialised;
++static int comadj;
++static int bl_intensity;
++static struct ssp_dev tosa_nssp_dev;
++static struct ssp_state tosa_nssp_state;
++static spinlock_t tosa_nssp_lock;
++
++static unsigned short normal_i2c[] = {
++ DAC_BASE,
++ I2C_CLIENT_END
++};
++I2C_CLIENT_INSMOD;
++
++static struct corgibl_machinfo tosa_bl_machinfo = {
++ .max_intensity = 255,
++ .default_intensity = 68,
++ .limit_mask = 0x0b,
++ .set_bl_intensity = tosa_set_backlight,
++};
++
++int tosa_bl_intensity(void)
++{
++ return bl_intensity;
++}
++
++static void pxa_nssp_output(unsigned char reg, unsigned char data)
++{
++ unsigned long flag, dummy;
++ u32 dat = ( ((reg << 5) & 0xe0) | (data & 0x1f) );
++ spin_lock_irqsave(&tosa_nssp_lock, flag);
++
++ ssp_config(&tosa_nssp_dev, (SSCR0_Motorola | (SSCR0_DSS & 0x07 )), 0, 0, SSCR0_SerClkDiv(128));
++ ssp_enable(&tosa_nssp_dev);
++
++ ssp_write_word(&tosa_nssp_dev,dat);
++
++ /* Read null data back from device to prevent SSP overflow */
++ ssp_read_word(&tosa_nssp_dev, &dummy);
++ ssp_disable(&tosa_nssp_dev);
++ spin_unlock_irqrestore(&tosa_nssp_lock, flag);
++
++}
++
++static void tosa_set_backlight(int intensity)
++{
++ if (!tosa_i2c_dac)
++ return;
++
++ bl_intensity = intensity;
++ /* SetBacklightDuty */
++ i2c_smbus_write_byte_data(tosa_i2c_dac, DAC_CH2, (unsigned char)intensity);
++
++ /* SetBacklightVR */
++ if (intensity)
++ set_tc6393_gpio(&tc6393_device.dev,TOSA_TC6393_BL_C20MA);
++ else
++ reset_tc6393_gpio(&tc6393_device.dev,TOSA_TC6393_BL_C20MA);
++
++ /* bl_enable GP04=1 otherwise GP04=0*/
++ pxa_nssp_output(TG_GPODR2, intensity ? 0x01 : 0x00);
++}
++
++static void tosa_lcd_tg_init(struct device *dev)
++{
++ /* L3V On */
++ set_scoop_gpio( &tosascoop_jc_device.dev,TOSA_SCOOP_JC_TC3693_L3V_ON);
++ mdelay(60);
++
++ /* TG On */
++ reset_tc6393_gpio(&tc6393_device.dev,TOSA_TC6393_TG_ON);
++ mdelay(60);
++
++ pxa_nssp_output(TG_TPOSCTL,0x00); /* delayed 0clk TCTL signal for VGA */
++ pxa_nssp_output(TG_GPOSR,0x02); /* GPOS0=powercontrol, GPOS1=GPIO, GPOS2=TCTL */
++}
++
++static void tosa_lcd_tg_on(struct device *dev, const struct fb_videomode *mode)
++{
++ const int value = TG_REG0_COLOR | TG_REG0_UD | TG_REG0_LR;
++ pxa_nssp_output(TG_PNLCTL, value | (mode->yres == 320 ? 0 : TG_REG0_VQV));
++
++ /* TG LCD pannel power up */
++ pxa_nssp_output(TG_PINICTL,0x4);
++ mdelay(50);
++
++ /* TG LCD GVSS */
++ pxa_nssp_output(TG_PINICTL,0x0);
++
++ if (!initialised)
++ {
++ /* after the pannel is powered up the first time, we can access the i2c bus */
++ /* so probe for the DAC */
++ i2c_add_driver(&tosa_driver);
++ initialised = 1;
++ mdelay(50);
++ }
++ if (tosa_i2c_dac)
++ /* set common voltage */
++ i2c_smbus_write_byte_data(tosa_i2c_dac, DAC_CH1, comadj);
++
++}
++
++static void tosa_lcd_tg_off(struct device *dev)
++{
++ /* TG LCD VHSA off */
++ pxa_nssp_output(TG_PINICTL,0x4);
++ mdelay(50);
++
++ /* TG LCD signal off */
++ pxa_nssp_output(TG_PINICTL,0x6);
++ mdelay(50);
++
++ /* TG Off */
++ set_tc6393_gpio(&tc6393_device.dev, TOSA_TC6393_TG_ON);
++ mdelay(100);
++
++ /* L3V Off */
++ reset_scoop_gpio( &tosascoop_jc_device.dev,TOSA_SCOOP_JC_TC3693_L3V_ON);
++}
++
++static int tosa_detect_client(struct i2c_adapter* adapter, int address, int kind) {
++ int err = 0;
++
++ printk("Tosa-LCD: DAC detected address:0x%2.2x\n",address);
++ if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_BYTE_DATA ))
++ goto ERROR0;
++
++ if (!(tosa_i2c_dac = (struct i2c_client*)kzalloc(sizeof(*tosa_i2c_dac), GFP_KERNEL))) {
++ err = -ENOMEM;
++ goto ERROR0;
++ }
++
++ //i2c_set_clientdata(tosa_i2c_dac, data);
++ tosa_i2c_dac->addr = address;
++ tosa_i2c_dac->adapter = adapter;
++ tosa_i2c_dac->driver = &tosa_driver;
++ tosa_i2c_dac->dev.parent = &tc6393_device.dev;
++ strcpy(tosa_i2c_dac->name, "tosa lcd");
++ if ((err = i2c_attach_client(tosa_i2c_dac)))
++ goto ERROR3;
++
++ /* Now i2c is ready, allocate the backlight device*/
++ tosabl_device = platform_device_alloc("corgi-bl", -1);
++ if (!tosabl_device) {
++ err = -ENOMEM;
++ goto ERROR4;
++ }
++
++ /* set parent device */
++ tosabl_device->dev.parent = &tosa_i2c_dac->dev;
++ tosabl_device->dev.platform_data = &tosa_bl_machinfo;
++
++ err = platform_device_add(tosabl_device);
++
++ if (err)
++ platform_device_put(tosabl_device);
++
++ /* set common voltage */
++ i2c_smbus_write_byte_data(tosa_i2c_dac, DAC_CH1, comadj);
++
++ return 0;
++ERROR4:
++ i2c_detach_client(tosa_i2c_dac);
++ERROR3:
++ kfree(tosa_i2c_dac);
++ERROR0:
++ return err;
++}
++
++static int tosa_attach_adapter(struct i2c_adapter* adapter) {
++ return i2c_probe(adapter, &addr_data, &tosa_detect_client);
++}
++
++static int tosa_detach_client(struct i2c_client* client) {
++ int err;
++
++ if ((err = i2c_detach_client(client))) {
++ printk(KERN_ERR "tosa: Cannot deregister client\n");
++ return err;
++ }
++ kfree(client);
++ return 0;
++}
++
++static struct i2c_driver tosa_driver={
++ .id = TOSA_LCD_I2C_DEVICEID,
++ .attach_adapter = tosa_attach_adapter,
++ .detach_client = tosa_detach_client,
++};
++
++static int __init tosa_lcd_probe(struct platform_device *pdev)
++{
++ int ret;
++ spin_lock_init(&tosa_nssp_lock);
++
++ if (!pdev->dev.platform_data)
++ return -EINVAL;
++
++ /* Set Common Voltage */
++ comadj = sharpsl_param.comadj == -1 ? COMADJ_DEFAULT : sharpsl_param.comadj;
++
++ ret=ssp_init(&tosa_nssp_dev,2,0);
++
++ /* initialize SSP */
++ pxa_gpio_mode(GPIO83_NSSP_TX);
++ pxa_gpio_mode(GPIO81_NSSP_CLK_OUT);
++ pxa_gpio_mode(GPIO82_NSSP_FRM_OUT);
++
++ if (ret)
++ printk(KERN_ERR "Unable to register NSSP handler!\n");
++ else {
++ struct tmio_lcd_ops* *tmio_ops = pdev->dev.platform_data;
++ ssp_disable(&tosa_nssp_dev);
++ initialised = 0;
++
++ /* Set the lcd functions */
++ *tmio_ops = (struct tmio_lcd_ops*) &tosa_tc6393_lcd_ops;
++ }
++
++ return ret;
++}
++
++static int tosa_lcd_remove(struct platform_device *pdev)
++{
++ /* delete the lcd functions */
++ struct tmio_lcd_ops* *tmio_ops = pdev->dev.platform_data;
++ *tmio_ops = NULL;
++
++ ssp_exit(&tosa_nssp_dev);
++
++ if (tosa_i2c_dac) {
++ i2c_detach_client(tosa_i2c_dac);
++ kfree(tosa_i2c_dac);
++ }
++
++ return 0;
++}
++
++#ifdef CONFIG_PM
++
++static int tosa_lcd_suspend(struct platform_device *pdev, pm_message_t state)
++{
++ ssp_flush(&tosa_nssp_dev);
++ ssp_save_state(&tosa_nssp_dev,&tosa_nssp_state);
++ return 0;
++}
++
++static int tosa_lcd_resume(struct platform_device *pdev)
++{
++ printk("tosa_lcd_resume\n");
++ ssp_restore_state(&tosa_nssp_dev,&tosa_nssp_state);
++ ssp_enable(&tosa_nssp_dev);
++ printk("tosa_lcd_resume ok\n");
++ return 0;
++}
++#else
++
++#define tosa_lcd_suspend NULL
++#define tosa_lcd_resume NULL
++
++#endif
++
++
++static struct platform_driver tosalcd_driver = {
++ .probe = tosa_lcd_probe,
++ .remove = tosa_lcd_remove,
++ .suspend = tosa_lcd_suspend,
++ .resume = tosa_lcd_resume,
++ .driver = {
++ .name = "tosa-lcd",
++ },
++};
++
++static int __init tosa_lcd_init(void)
++{
++ return platform_driver_register(&tosalcd_driver);
++}
++
++static void __exit tosa_lcd_cleanup (void)
++{
++ platform_driver_unregister (&tosalcd_driver);
++}
++
++device_initcall(tosa_lcd_init);
++module_exit (tosa_lcd_cleanup);
++
++MODULE_DESCRIPTION ("Tosa LCD device");
++MODULE_AUTHOR ("Dirk Opfer");
++MODULE_LICENSE ("GPL v2");
+Index: git/arch/arm/mach-pxa/tosa.c
+===================================================================
+--- git.orig/arch/arm/mach-pxa/tosa.c 2006-11-07 22:13:10.000000000 +0000
++++ git/arch/arm/mach-pxa/tosa.c 2006-11-07 23:29:38.000000000 +0000
+@@ -24,6 +24,7 @@
+ #include <linux/mtd/partitions.h>
+ #include <linux/pm.h>
+ #include <linux/delay.h>
++#include <linux/fb.h>
+
+ #include <asm/setup.h>
+ #include <asm/memory.h>
+@@ -48,7 +49,6 @@
+
+ #include "generic.h"
+
+-
+ /*
+ * SCOOP Device
+ */
+@@ -345,7 +345,38 @@ static struct tmio_nand_platform_data to
+ .badblock_pattern = &tosa_tc6393_nand_bbt,
+ };
+
+-extern struct tmio_lcd_platform_data tosa_tc6393_lcd_platform_data;
++static struct fb_videomode tosa_tc6393_lcd_mode[] = {
++ {
++ .xres = 480,
++ .yres = 640,
++ .pixclock = 0x002cdf00,/* PLL divisor */
++ .left_margin = 0x004c,
++ .right_margin = 0x005b,
++ .upper_margin = 0x0001,
++ .lower_margin = 0x000d,
++ .hsync_len = 0x0002,
++ .vsync_len = 0x0001,
++ .sync = FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
++ .vmode = FB_VMODE_NONINTERLACED,
++ },{
++ .xres = 240,
++ .yres = 320,
++ .pixclock = 0x00e7f203,/* PLL divisor */
++ .left_margin = 0x0024,
++ .right_margin = 0x002f,
++ .upper_margin = 0x0001,
++ .lower_margin = 0x000d,
++ .hsync_len = 0x0002,
++ .vsync_len = 0x0001,
++ .sync = FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
++ .vmode = FB_VMODE_NONINTERLACED,
++}};
++
++struct tmio_lcd_platform_data tosa_tc6393_lcd_platform_data = {
++ .ops = NULL,
++ .modelist = tosa_tc6393_lcd_mode,
++ .num_modes = ARRAY_SIZE(tosa_tc6393_lcd_mode),
++};
+
+ static struct tmio_cell tosa_tc6393_cells[] = {
+ {
+@@ -384,6 +415,19 @@ struct platform_device tc6393_device = {
+ .num_resources = ARRAY_SIZE(tc6393_resources),
+ .resource = tc6393_resources,
+ };
++EXPORT_SYMBOL (tc6393_device);
++
++/*
++ * Tosa LCD / Backlight stuff
++ */
++static struct platform_device tosalcd_device = {
++ .name = "tosa-lcd",
++ .id = -1,
++ .dev = {
++ .parent = &tc6393_device.dev,
++ .platform_data = &tosa_tc6393_lcd_platform_data.ops,
++ },
++};
+
+ static struct platform_device *devices[] __initdata = {
+ &tosascoop_device,
+@@ -391,6 +435,7 @@ static struct platform_device *devices[]
+ &tosakbd_device,
+ &tosaled_device,
+ &tc6393_device,
++ &tosalcd_device,
+ };
+
+ static void tosa_poweroff(void)
+Index: git/arch/arm/mach-pxa/Kconfig
+===================================================================
+--- git.orig/arch/arm/mach-pxa/Kconfig 2006-11-07 22:13:10.000000000 +0000
++++ git/arch/arm/mach-pxa/Kconfig 2006-11-07 22:13:10.000000000 +0000
+@@ -129,7 +129,10 @@ config MACH_TOSA
+ bool "Enable Sharp SL-6000x (Tosa) Support"
+ depends PXA_SHARPSL_25x
+ select TOSHIBA_TC6393XB
+- select SHARPSL_PM
++ select I2C
++ select I2C_PXA
++ select SHARPSL_PM
++ select PXA_SSP
+
+ config PXA25x
+ bool
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/wm9712-reset-loop-r2.patch b/packages/linux/linux-openzaurus-2.6.18+git/wm9712-reset-loop-r2.patch
new file mode 100644
index 0000000000..78e81ea83a
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/wm9712-reset-loop-r2.patch
@@ -0,0 +1,44 @@
+ sound/soc/codecs/wm9712.c | 28 ++++++++++++++++++----------
+ 1 file changed, 18 insertions(+), 10 deletions(-)
+
+Index: git/sound/soc/codecs/wm9712.c
+===================================================================
+--- git.orig/sound/soc/codecs/wm9712.c 2006-11-07 22:10:01.000000000 +0000
++++ git/sound/soc/codecs/wm9712.c 2006-11-07 22:11:50.000000000 +0000
+@@ -618,18 +618,26 @@ static int wm9712_dapm_event(struct snd_
+
+ static int wm9712_reset(struct snd_soc_codec *codec, int try_warm)
+ {
+- if (try_warm && soc_ac97_ops.warm_reset) {
+- soc_ac97_ops.warm_reset(codec->ac97);
+- if (!(ac97_read(codec, 0) & 0x8000))
+- return 1;
+- }
++ int retry = 3;
+
+- soc_ac97_ops.reset(codec->ac97);
+- if (ac97_read(codec, 0) & 0x8000)
+- goto err;
+- return 0;
++ while (retry--)
++ {
++ if(try_warm && soc_ac97_ops.warm_reset) {
++ soc_ac97_ops.warm_reset(codec->ac97);
++ if(ac97_read(codec, 0) & 0x8000)
++ continue;
++ else
++ return 1;
++ }
++
++ soc_ac97_ops.reset(codec->ac97);
++ if(ac97_read(codec, 0) & 0x8000)
++ continue;
++ else
++ return 0;
++
++ }
+
+-err:
+ printk(KERN_ERR "WM9712 AC97 reset failed\n");
+ return -EIO;
+ }
diff --git a/packages/linux/linux-openzaurus-2.6.18+git/wm9712-suspend-cold-res-r2.patch b/packages/linux/linux-openzaurus-2.6.18+git/wm9712-suspend-cold-res-r2.patch
new file mode 100644
index 0000000000..5179b47cc4
--- /dev/null
+++ b/packages/linux/linux-openzaurus-2.6.18+git/wm9712-suspend-cold-res-r2.patch
@@ -0,0 +1,16 @@
+ sound/soc/codecs/wm9712.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: git/sound/soc/codecs/wm9712.c
+===================================================================
+--- git.orig/sound/soc/codecs/wm9712.c 2006-11-07 21:57:34.000000000 +0000
++++ git/sound/soc/codecs/wm9712.c 2006-11-07 21:59:30.000000000 +0000
+@@ -651,7 +651,7 @@ static int wm9712_soc_resume(struct plat
+ int i, ret;
+ u16 *cache = codec->reg_cache;
+
+- ret = wm9712_reset(codec, 1);
++ ret = wm9712_reset(codec, 0);
+ if (ret < 0){
+ printk(KERN_ERR "could not reset AC97 codec\n");
+ return ret;
diff --git a/packages/linux/linux-openzaurus_2.6.18+git.bb b/packages/linux/linux-openzaurus_2.6.18+git.bb
index c81d67ef5a..6232c9bf47 100644
--- a/packages/linux/linux-openzaurus_2.6.18+git.bb
+++ b/packages/linux/linux-openzaurus_2.6.18+git.bb
@@ -82,22 +82,22 @@ SRC_URI_append_collie = "\
SRC_URI_append_tosa = "\
${CHSRC}/usb-ohci-hooks-r1.patch;patch=1 \
${CHSRC}/tmio-core-r4.patch;patch=1 \
- file://tmio-tc6393-r7.patch;patch=1 \
- file://tmio-nand-r6.patch;patch=1 \
- file://tmio-ohci-r5.patch;patch=1 \
+ file://tmio-tc6393-r8.patch;patch=1 \
+ file://tmio-nand-r7.patch;patch=1 \
+ file://tmio-ohci-r6.patch;patch=1 \
${CHSRC}/tmio-fb-r6.patch;patch=1 \
- ${DOSRC}/tosa-keyboard-r17.patch;patch=1 \
+ file://tosa-keyboard-r18.patch;patch=1 \
${DOSRC}/tosa-pxaac97-r6.patch;patch=1 \
${DOSRC}/tosa-tmio-r6.patch;patch=1 \
${DOSRC}/tosa-power-r17.patch;patch=1 \
- file://tosa-tmio-lcd-r9.patch;patch=1 \
+ file://tosa-tmio-lcd-r10.patch;patch=1 \
${DOSRC}/tosa-bluetooth-r8.patch;patch=1 \
${DOSRC}/wm97xx-lg7-r0.patch;patch=1 \
- ${DOSRC}/wm9712-suspend-cold-res-r1.patch;patch=1 \
- ${DOSRC}/sharpsl-pm-postresume-r0.patch;patch=1 \
+ file://wm9712-suspend-cold-res-r2.patch;patch=1 \
+ file://sharpsl-pm-postresume-r1.patch;patch=1 \
${DOSRC}/wm97xx-dig-restore-r0.patch;patch=1 \
${DOSRC}/wm97xx-miscdevs-resume-r0.patch;patch=1 \
- ${DOSRC}/wm9712-reset-loop-r1.patch;patch=1 \
+ file://wm9712-reset-loop-r2.patch;patch=1 \
file://tosa-lcdnoise-r1.patch;patch=1 \
file://wm97xx-lcdnoise-r0.patch;patch=1 "
# ${DOSRC}/tosa-asoc-r1.patch;patch=1 "
diff --git a/packages/linux/unslung-kernel/defconfig b/packages/linux/unslung-kernel/defconfig
index 4f90b9dca6..7a2f164e6f 100644
--- a/packages/linux/unslung-kernel/defconfig
+++ b/packages/linux/unslung-kernel/defconfig
@@ -458,7 +458,20 @@ CONFIG_IPDDP=m
CONFIG_IPDDP_ENCAP=y
CONFIG_IPDDP_DECAP=y
# CONFIG_DECNET is not set
-# CONFIG_BRIDGE is not set
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_IPF=m
+CONFIG_BRIDGE_EBT_ARPF=m
+CONFIG_BRIDGE_EBT_VLANF=m
+CONFIG_BRIDGE_EBT_MARKF=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_LLC is not set
@@ -513,11 +526,6 @@ CONFIG_TUN=m
CONFIG_ETHERTAP=m
#
-# Netconsole support
-#
-CONFIG_NETCONSOLE=m
-
-#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
@@ -592,6 +600,7 @@ CONFIG_8139CP_PHY_NUM=32
# CONFIG_SK98LIN is not set
# CONFIG_TIGON3 is not set
# CONFIG_FDDI is not set
+CONFIG_NETCONSOLE=m
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=m
@@ -1188,6 +1197,18 @@ CONFIG_USB_SERIAL_VISOR=m
# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
CONFIG_USB_SERIAL_KEYSPAN=m
+# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA19QW is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA19QI is not set
+# CONFIG_USB_SERIAL_KEYSPAN_MPR is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set
+# CONFIG_USB_SERIAL_KEYSPAN_USA49WLC is not set
CONFIG_USB_SERIAL_MCT_U232=m
# CONFIG_USB_SERIAL_KLSI is not set
# CONFIG_USB_SERIAL_KOBIL_SCT is not set
diff --git a/packages/linux/unslung-kernel_2.4.22.l2.3r63.bb b/packages/linux/unslung-kernel_2.4.22.l2.3r63.bb
index 3043992d83..fd8afd1090 100644
--- a/packages/linux/unslung-kernel_2.4.22.l2.3r63.bb
+++ b/packages/linux/unslung-kernel_2.4.22.l2.3r63.bb
@@ -3,7 +3,7 @@ SECTION = "kernel"
require nslu2-linksys-kernel_2.4.22.bb
DESCRIPTION = "Unslung kernel for the Linksys NSLU2 device"
-PR = "r14"
+PR = "r15"
KERNEL_SUFFIX = "unslung"
diff --git a/packages/matchbox-applet-inputmanager/files/.mtn2git_empty b/packages/matchbox-applet-inputmanager/files/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/matchbox-applet-inputmanager/files/.mtn2git_empty
diff --git a/packages/matchbox-applet-inputmanager/files/mbinputmgr-libgtkinput.patch b/packages/matchbox-applet-inputmanager/files/mbinputmgr-libgtkinput.patch
new file mode 100644
index 0000000000..5d1ccdc0c7
--- /dev/null
+++ b/packages/matchbox-applet-inputmanager/files/mbinputmgr-libgtkinput.patch
@@ -0,0 +1,350 @@
+Index: mb-applet-input-manager-0.6/mbinputmgr-tray.c
+===================================================================
+--- mb-applet-input-manager-0.6/mbinputmgr-tray.c (revision 1292)
++++ mb-applet-input-manager-0.6/mbinputmgr-tray.c (working copy)
+@@ -32,8 +32,20 @@
+ MBInpmgrState *Inpmgr_state = NULL;
+ Bool ButtonIsDown = False;
+ int ButtonActive;
+-Atom AtomIMActivate;
+
++Atom atoms[2];
++char *atom_names[] =
++ {
++ "_MB_INPUT_REQUEST",
++ "_GPE_INPUT_MANAGER"
++ };
++
++#define _MB_INPUT_REQUEST 0
++#define _GPE_INPUT_MANAGER 1
++
++#define _GPE_INPUT_MANAGER_OPEN 1
++#define _GPE_INPUT_MANAGER_CLOSE 2
++
+ typedef struct ButtonImgs {
+
+ MBPixbufImage *active;
+@@ -41,6 +53,17 @@
+
+ } ButtonImgs;
+
++struct window_record
++{
++ Window w;
++ struct window_record *next;
++};
++
++struct window_record *requests;
++
++Display *dpy;
++Bool auto_enabled;
++
+ void
+ paint_callback ( MBTrayApp *app, Drawable drw )
+ {
+@@ -262,14 +285,190 @@
+ }
+
+ void
++really_close (void)
++{
++ if (requests == NULL && mbinputmgr_method_active (Inpmgr_state) && auto_enabled)
++ {
++ mbinputmgr_toggle_selected_method (Inpmgr_state);
++ auto_enabled = False;
++ }
++}
++
++Bool timer_active;
++struct timeval expires;
++
++Bool
++get_timeout (struct timeval *tv)
++{
++ int sec, usec;
++ struct timeval now;
++
++ if (!timer_active)
++ return False;
++
++ gettimeofday (&now, NULL);
++
++ sec = expires.tv_sec - now.tv_sec;
++ usec = expires.tv_usec - now.tv_usec;
++ if (usec < 0)
++ {
++ sec--;
++ usec += 1000000;
++ }
++
++ if (sec < 0)
++ {
++ /* timer expired */
++ really_close ();
++ timer_active = False;
++ return False;
++ }
++
++ tv->tv_sec = sec;
++ tv->tv_usec = usec;
++
++ return True;
++}
++
++Bool
++process_close_request (Window w)
++{
++ struct window_record *r, *pr = NULL;
++ unsigned long tv;
++
++ for (r = requests; r != NULL && r->w != w; )
++ {
++ pr = r;
++ r = r->next;
++ }
++
++ if (r)
++ {
++ if (pr)
++ pr->next = r->next;
++ else
++ requests = r->next;
++
++ free (r);
++
++ if (requests == NULL && mbinputmgr_method_active (Inpmgr_state) && auto_enabled)
++ {
++ timer_active = True;
++ gettimeofday (&expires, NULL);
++ expires.tv_usec += 100000;
++ if (expires.tv_usec >= 1000000)
++ {
++ expires.tv_sec++;
++ expires.tv_usec -= 1000000;
++ }
++ }
++
++ return True;
++ }
++
++ return False;
++}
++
++int trapped_error_code;
++int (*old_error_handler) (Display *d, XErrorEvent *e);
++
++static int
++error_handler(Display *display,
++ XErrorEvent *error)
++{
++ trapped_error_code = error->error_code;
++ return 0;
++}
++
++static void
++trap_errors(void)
++{
++ trapped_error_code = 0;
++ old_error_handler = XSetErrorHandler(error_handler);
++}
++
++static int
++untrap_errors(void)
++{
++ XSetErrorHandler(old_error_handler);
++ return trapped_error_code;
++}
++
++Bool
++process_open_request (Window w)
++{
++ struct window_record *r;
++
++ for (r = requests; r != NULL && r->w != w; r = r->next)
++ ;
++
++ if (r)
++ return True;
++
++ trap_errors ();
++ XSelectInput (dpy, w, StructureNotifyMask);
++ XSync (dpy, False);
++ if (untrap_errors ())
++ return False;
++
++ r = malloc (sizeof (*r));
++ r->next = requests;
++ r->w = w;
++ requests = r;
++
++ if (!mbinputmgr_method_active(Inpmgr_state))
++ {
++ mbinputmgr_toggle_selected_method (Inpmgr_state);
++ auto_enabled = True;
++ }
++
++ return False;
++}
++
++Bool docked_already;
++
++void
++is_docked (void)
++{
++ Window tray_w;
++
++ tray_w = mb_tray_app_xwin (app);
++
++ if (XGetSelectionOwner (dpy, atoms[_GPE_INPUT_MANAGER]) == None)
++ {
++ XSetSelectionOwner (dpy, atoms[_GPE_INPUT_MANAGER], tray_w, CurrentTime);
++ }
++ else
++ {
++ fprintf (stderr, "Unable to claim _GPE_INPUT_MANAGER selection.\n");
++ }
++}
++
++void
+ xevent_callback (MBTrayApp *app, XEvent *ev)
+ {
+ if (ev->type == ClientMessage)
+ {
+ XClientMessageEvent *cmev = (XClientMessageEvent *)&ev->xconfigure;
+
+- if (cmev->message_type == AtomIMActivate)
++ if (cmev->message_type == atoms[_GPE_INPUT_MANAGER])
+ {
++ switch (cmev->data.l[0])
++ {
++ case _GPE_INPUT_MANAGER_OPEN:
++ process_open_request (cmev->data.l[1]);
++ break;
++ case _GPE_INPUT_MANAGER_CLOSE:
++ process_close_request (cmev->data.l[1]);
++ break;
++ default:
++ fprintf (stderr, "received unknown _GPE_INPUT_MANAGER request %d\n", cmev->data.l[0]);
++ break;
++ }
++ }
++#ifndef DISABLE_OLD_PROTOCOL
++ else if (cmev->message_type == atoms[_MB_INPUT_REQUEST])
++ {
+ /* De Activate */
+ if (cmev->data.l[0] == 0 && mbinputmgr_method_active(Inpmgr_state))
+ mbinputmgr_toggle_selected_method (Inpmgr_state);
+@@ -278,8 +477,20 @@
+ && !mbinputmgr_method_active(Inpmgr_state))
+ mbinputmgr_toggle_selected_method (Inpmgr_state);
+ }
++#endif
+ }
++ else if (ev->type == UnmapNotify)
++ {
++ XUnmapEvent *uev = &ev->xunmap;
+
++ process_close_request (uev->window);
++ }
++ else if (ev->type == ConfigureNotify && !docked_already)
++ {
++ docked_already = TRUE;
++ is_docked ();
++ }
++
+ mb_menu_handle_xevent (PopupMenu, ev);
+ }
+
+@@ -347,11 +558,42 @@
+ free(icon_path);
+ }
+
++static Bool
++get_xevent_timed(Display* dpy, XEvent* event_return, struct timeval *tv)
++{
++ if (tv == NULL)
++ {
++ XNextEvent(dpy, event_return);
++ return True;
++ }
++
++ XFlush(dpy);
++
++ if (XPending(dpy) == 0)
++ {
++ int fd = ConnectionNumber(dpy);
++ fd_set readset;
++ FD_ZERO(&readset);
++ FD_SET(fd, &readset);
++ if (select(fd+1, &readset, NULL, NULL, tv) == 0)
++ {
++ return False;
++ } else {
++ XNextEvent(dpy, event_return);
++ return True;
++ }
++ } else {
++ XNextEvent(dpy, event_return);
++ return True;
++ }
++}
++
+ int
+ main(int argc, char **argv)
+ {
+ int i;
+ MBPixbufImage *app_icon_img = NULL;
++ XEvent xevent;
+
+ app = mb_tray_app_new ( "Input Selector",
+ resize_callback,
+@@ -359,13 +601,13 @@
+ &argc,
+ &argv );
+
++ dpy = mb_tray_app_xdisplay (app);
++
+ Pixbuf = mb_pixbuf_new(mb_tray_app_xdisplay(app),
+ mb_tray_app_xscreen(app));
+
+- AtomIMActivate = XInternAtom(mb_tray_app_xdisplay(app),
+- "_MB_INPUT_REQUEST", False);
++ XInternAtoms (dpy, atom_names, sizeof (atom_names) / sizeof (atom_names[0]), False, atoms);
+
+-
+ PopupMenu = mb_menu_new (mb_tray_app_xdisplay(app),
+ mb_tray_app_xscreen(app));
+
+@@ -399,17 +641,30 @@
+
+ mb_tray_app_set_xevent_callback (app, xevent_callback );
+
++ mb_tray_app_set_xevent_mask (app, SubstructureNotifyMask);
++
+ mb_tray_app_set_button_callback (app, button_callback );
+
+ /* XXX set up dnotify to reload entrys only on _addition_ */
+
++#ifndef DISABLE_OLD_PROTOCOL
+ XSelectInput(mb_tray_app_xdisplay(app),
+ mb_tray_app_xrootwin(app),
+ SubstructureNotifyMask);
++#endif
+
++ /* Not using mb_tray_app_main() to avoid libmb's broken get_xevent_timed() */
++ mb_tray_app_main_init (app);
++ for (;;)
++ {
++ struct timeval tv, *tvp = NULL;
+
+- mb_tray_app_main (app);
++ if (get_timeout (&tv))
++ tvp = &tv;
+
++ if (get_xevent_timed (dpy, &xevent, tvp))
++ mb_tray_handle_xevent (app, &xevent);
++ }
++
+ return 0;
+ }
+-
diff --git a/packages/matchbox-applet-inputmanager/files/update-to-svn.diff b/packages/matchbox-applet-inputmanager/files/update-to-svn.diff
new file mode 100644
index 0000000000..6ec68a0ea2
--- /dev/null
+++ b/packages/matchbox-applet-inputmanager/files/update-to-svn.diff
@@ -0,0 +1,33 @@
+--- /tmp/mbinputmgr-tray.c 2006-11-11 14:11:02.000000000 +0100
++++ mb-applet-input-manager-0.6/mbinputmgr-tray.c 2006-11-11 14:11:43.638554000 +0100
+@@ -228,6 +228,15 @@
+ || (!mb_tray_app_tray_is_vertical (app) && x > IconWidth) )
+ {
+ mb_tray_app_get_absolute_coords (app, &abs_x, &abs_y);
++
++ /* aligned top, position down a little */
++ if (abs_y < 8)
++ {
++ int w, h;
++ mb_menu_get_root_menu_size(PopupMenu, &w, &h);
++ abs_y = h + IconDim + 2;
++ }
++
+ mb_menu_activate(PopupMenu, abs_x, abs_y);
+ ButtonActive = BUTTON_MENU;
+ }
+@@ -257,14 +266,10 @@
+ {
+ if (ev->type == ClientMessage)
+ {
+- printf("beep\n");
+-
+ XClientMessageEvent *cmev = (XClientMessageEvent *)&ev->xconfigure;
+
+ if (cmev->message_type == AtomIMActivate)
+ {
+- printf("beep\n");
+-
+ /* De Activate */
+ if (cmev->data.l[0] == 0 && mbinputmgr_method_active(Inpmgr_state))
+ mbinputmgr_toggle_selected_method (Inpmgr_state);
diff --git a/packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb b/packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb
index f0dc8f09e4..69fe062178 100644
--- a/packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb
+++ b/packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb
@@ -3,11 +3,16 @@ LICENSE = "GPL"
DEPENDS = "matchbox-wm libmatchbox"
SECTION = "x11/wm"
-PR = "r1"
+PR = "r3"
+
+SRC_URI = "http://projects.o-hand.com/matchbox/sources/mb-applet-input-manager/${PV}/mb-applet-input-manager-${PV}.tar.gz \
+ file://update-to-svn.diff;patch=1 \
+ file://mbinputmgr-libgtkinput.patch;patch=1 \
+ "
-SRC_URI = "http://projects.o-hand.com/matchbox/sources/mb-applet-input-manager/${PV}/mb-applet-input-manager-${PV}.tar.gz"
S = "${WORKDIR}/mb-applet-input-manager-${PV}"
+
inherit autotools pkgconfig
FILES_${PN} = "${bindir}/* ${datadir}/applications ${datadir}/pixmaps"
diff --git a/packages/mplayer/mplayer_1.0pre8.bb b/packages/mplayer/mplayer_1.0pre8.bb
index b38cdecc0f..b5af659fe9 100644
--- a/packages/mplayer/mplayer_1.0pre8.bb
+++ b/packages/mplayer/mplayer_1.0pre8.bb
@@ -6,25 +6,26 @@ DEPENDS = "virtual/libsdl libmad zlib libpng jpeg liba52 freetype fontconfig als
RDEPENDS = "mplayer-common"
LICENSE = "GPL"
SRC_URI = "http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-${PV}.tar.bz2 \
- file://vo_w100.c \
- file://vo_w100_api.h \
- file://vo_w100_fb.h \
- file://Makefile.patch;patch=1 \
- file://w100-configure.patch;patch=1 \
- file://w100-Makefile.patch;patch=1 \
- file://w100-video_out.patch;patch=1 \
- file://w100-mplayer.patch;patch=1 \
+ file://vo_w100.c \
+ file://vo_w100_api.h \
+ file://vo_w100_fb.h \
+ file://Makefile.patch;patch=1 \
+ file://w100-configure.patch;patch=1 \
+ file://w100-Makefile.patch;patch=1 \
+ file://w100-video_out.patch;patch=1 \
+ file://w100-mplayer.patch;patch=1 \
file://libmpdemux-ogg-include.patch;patch=1 \
file://libmpcodecs-ogg-include.patch;patch=1 \
- file://pld-onlyarm5.patch;patch=1"
+ file://pld-onlyarm5.patch;patch=1 \
+ ${SOURCEFORGE_MIRROR}/libw100/mplayer-imageon.patch;patch=1"
RCONFLICTS_${PN} = "mplayer-atty"
RREPLACES_${PN} = "mplayer-atty"
-PR = "r2"
+PR = "r3"
PARALLEL_MAKE = ""
-DEPENDS_append_c7x0 = " sharp-aticore-oss"
+DEPENDS_append_c7x0 = " sharp-aticore-oss libw100 "
S = "${WORKDIR}/MPlayer-${PV}"
@@ -166,7 +167,7 @@ EXTRA_OECONF = " \
--disable-runtime-cpudetection \
"
-EXTRA_OECONF_append_c7x0 = " --enable-w100 "
+EXTRA_OECONF_append_c7x0 = " --enable-w100 --enable-imageon "
do_configure() {
cp ${WORKDIR}/vo_w100.c ${S}/libvo
diff --git a/packages/nslu2-binary-only/unslung-rootfs/NOTES b/packages/nslu2-binary-only/unslung-rootfs/NOTES
index de4d8b00bf..34d319d656 100644
--- a/packages/nslu2-binary-only/unslung-rootfs/NOTES
+++ b/packages/nslu2-binary-only/unslung-rootfs/NOTES
@@ -546,3 +546,10 @@ maintenance; easier than plugging and unplugging disks.
Empty the /etc/win_share.info file on boot (fixes problem with multiple
identical shares appearing on a system).
+
+Upgraded slingbox to v1.2.2 busybox base; enabled fdisk.
+
+Replaced Linksys busybox with slingbox entirely.
+
+Modified "unsling" script to use tar instead of find and cpio; removed
+obsolete and untested unsling utilities (eg: resling).
diff --git a/packages/nslu2-binary-only/unslung-rootfs/rc.1-diversion.patch b/packages/nslu2-binary-only/unslung-rootfs/rc.1-diversion.patch
index 35015d6c82..d0d769931c 100644
--- a/packages/nslu2-binary-only/unslung-rootfs/rc.1-diversion.patch
+++ b/packages/nslu2-binary-only/unslung-rootfs/rc.1-diversion.patch
@@ -13,7 +13,7 @@
/bin/echo "Starting Rest Task :"; . /etc/rc.d/rc.local
+/bin/echo "Starting Optware Packages:"; ( . /etc/rc.d/rc.optware-start )
-+
++/bin/echo "Starting Bootdisk scripts:"; ( . /etc/rc.d/rc.bootdisk )
/usr/bin/Set_Led ready
/usr/bin/Set_Led beep1
/bin/echo "Checking disk status :"; /usr/sbin/CheckDiskFull 2 >/dev/null
diff --git a/packages/nslu2-binary-only/unslung-rootfs/rc.bootdisk b/packages/nslu2-binary-only/unslung-rootfs/rc.bootdisk
new file mode 100755
index 0000000000..3055c1a6c4
--- /dev/null
+++ b/packages/nslu2-binary-only/unslung-rootfs/rc.bootdisk
@@ -0,0 +1,41 @@
+#!/bin/sh
+
+# If we're not booting from flash, exit.
+i=`grep "/dev/root / jffs2" /proc/mounts`
+if ( [ -z "$i" ] ) ; then return 0 ; fi
+
+# Establish our identity
+linksys_hostname=`grep "^default_server_name=" /etc/CGI_ds.conf | sed s/default_server_name=//`
+real_hostname=`hostname`
+echo "====> linksys_hostname is $linksys_hostname"
+echo "====> real_hostname is $real_hostname"
+
+# but don't duplicate
+if ( [ "$linksys_hostname" = `hostname` ] ) ; then linksys_hostname= ; fi
+if ( [ "$real_hostname" = "unslung" ] ) ; then real_hostname= ; fi
+
+# Search all FAT/NTFS filesystem in order.
+# (heavily borrowed from the rc.start-optware script).
+for i in /share/*/data/HDD_* ; do
+ if ( [ "$i" = '/share/*/data/HDD_*' ] ) ; then break ; fi
+ echo "====> searching $i..."
+ for j in $linksys_hostname $real_hostname "unslung" ; do
+ echo "====> checking $i/bootdisk/$j ..."
+ if ( [ -d "$i"/bootdisk/"$j" ] ) ; then
+ for k in "$i"/bootdisk/"$j"/S??* ; do
+ echo "====> found $k ..."
+ [ ! -f "$k" ] && continue
+ nocopy=`grep "^#unslung-nocopy" "$k"`
+ if ( [ -z "$nocopy" ] ) ; then
+ echo "====> running copy: /tmp/tmpscript $k $i"
+ dos2unix -u <"$k" >/tmp/tmpscript
+ /bin/sh /tmp/tmpscript "$k" "$i"
+ rm -f /tmp/tmpscript
+ else
+ echo "====> running in-place $k $k $i"
+ /bin/sh "$k" "$k" "$i"
+ fi
+ done
+ fi
+ done
+done
diff --git a/packages/nslu2-binary-only/unslung-rootfs/rc.lan-shell.patch b/packages/nslu2-binary-only/unslung-rootfs/rc.lan-shell.patch
new file mode 100644
index 0000000000..5d25788fdf
--- /dev/null
+++ b/packages/nslu2-binary-only/unslung-rootfs/rc.lan-shell.patch
@@ -0,0 +1,7 @@
+--- nslu2-linksys-ramdisk-2.3r63/etc/rc.d/rc.lan.orig 2006-11-10 20:07:27.000000000 -0600
++++ nslu2-linksys-ramdisk-2.3r63/etc/rc.d/rc.lan 2006-11-10 20:07:35.000000000 -0600
+@@ -1,3 +1,3 @@
+-#!/bin/bash
++#!/bin/sh
+ #echo "set network driver to operate in auto-sense mode"
+ #/sbin/insmod /lib/modules/sk98lin.o
diff --git a/packages/nslu2-binary-only/unslung-rootfs/unsling b/packages/nslu2-binary-only/unslung-rootfs/unsling
index 400c7d0ad2..79584df8b7 100755
--- a/packages/nslu2-binary-only/unslung-rootfs/unsling
+++ b/packages/nslu2-binary-only/unslung-rootfs/unsling
@@ -36,6 +36,9 @@ else
exit 1
fi
+# MJW - The new "tar" method of unslinging does not care if the device
+# has already been unslung. The following test has been removed.
+#
# Check that we can unsling at all! An unsling operation creates a new
# rootfs, but it also marks the flash rootfs (with a flag file such as
# ".sda1root") so that subsequent boots do not create the "var.state"
@@ -45,39 +48,39 @@ fi
# making sure that we are in a state in which we are capable of
# performing the unsling operation.
-echo "Checking if able to unsling..."
-echo
-m1="/dev/root /dev.state jffs2 rw 0 0"
-m2="/dev/root /var.state jffs2 rw 0 0"
-if ! grep "$m1" /proc/mounts >/dev/null 2>&1 || ! grep "$m2" /proc/mounts >/dev/null 2>&1 ; then
- echo "Error: This system is unable to properly unsling because certain"
- echo "required mounts (dev.state and/or var.state) are not available."
- echo "This is most probably because you have already unslung this system."
- echo
-
- if [ -f /.sda1root ] ; then
- rm -f /.sda1root
- elif [ -f /.sdb1root ] ; then
- rm -f /.sdb1root
- elif [ -f /.sda2root ] ; then
- rm -f /.sda2root
- elif [ -f /.sdb2root ] ; then
- rm -f /.sdb2root
- else
- echo "However, in this case, the flags that indicate an already-unslung"
- echo "system seem to be missing. Try restarting your NSLU2 to correct,"
- echo "but if the problem persists, try re-flashing your NSLU2."
- exit 1
- fi
- echo "The flags that indicate an already-unslung system have now been"
- echo "removed and the required mounts should now become present after"
- echo "reboot of the NSLU2."
- echo
- echo "1) Please unplug all drives from the NSLU2,"
- echo "2) reboot,"
- echo "3) and retry the unslinging process."
- exit 1
-fi
+#echo "Checking if able to unsling..."
+#echo
+#m1="/dev/root /dev.state jffs2 rw 0 0"
+#m2="/dev/root /var.state jffs2 rw 0 0"
+#if ! grep "$m1" /proc/mounts >/dev/null 2>&1 || ! grep "$m2" /proc/mounts >/dev/null 2>&1 ; then
+# echo "Error: This system is unable to properly unsling because certain"
+# echo "required mounts (dev.state and/or var.state) are not available."
+# echo "This is most probably because you have already unslung this system."
+# echo
+#
+# if [ -f /.sda1root ] ; then
+# rm -f /.sda1root
+# elif [ -f /.sdb1root ] ; then
+# rm -f /.sdb1root
+# elif [ -f /.sda2root ] ; then
+# rm -f /.sda2root
+# elif [ -f /.sdb2root ] ; then
+# rm -f /.sdb2root
+# else
+# echo "However, in this case, the flags that indicate an already-unslung"
+# echo "system seem to be missing. Try restarting your NSLU2 to correct,"
+# echo "but if the problem persists, try re-flashing your NSLU2."
+# exit 1
+# fi
+# echo "The flags that indicate an already-unslung system have now been"
+# echo "removed and the required mounts should now become present after"
+# echo "reboot of the NSLU2."
+# echo
+# echo "1) Please unplug all drives from the NSLU2,"
+# echo "2) reboot,"
+# echo "3) and retry the unslinging process."
+# exit 1
+#fi
# Check it's a real mount point
@@ -138,8 +141,16 @@ if [ "$nopw" -eq 0 ] ; then
echo "Error setting password."
exit 1
fi
+# Quick sanity check, something may have gone wrong while we were
+# waiting at the passwd prompt...
+ if ! [ -d $targ/public ] || ! [ -f $targconf/.dongle ] || ! [ -f $targconf/passwd ] ; then
+ echo
+ echo "Error: $targ appears to have vanished into thin air."
+ echo "This would indicate some type of problem with the USB cable,"
+ echo "the device, or the formatting of the device."
+ exit 1
+ fi
cp /etc/passwd /usr/local/passwd
-# cp /etc/passwd $targconf/passwd
grep "^root:" /etc/passwd >$targconf/passwd.new
grep -v "^root:" $targconf/passwd >>$targconf/passwd.new
mv $targconf/passwd $targconf/passwd.save
@@ -161,10 +172,28 @@ fi
# Copy the complete rootfs to the target.
echo
-echo "Copying the complete rootfs from / to $targ ..."
-/usr/bin/find / -xdev -print | /usr/bin/cpio -p -d -m -u $targ
-rm -rf $targ/dev ; mv $targ/dev.state $targ/dev
-rm -rf $targ/var ; mv $targ/var.state $targ/var
+echo "Copying the complete rootfs from / to $targ ... "
+echo " (this will take just a couple of minutes)"
+# Quick sanity check to avoid filling the flash...
+if ! [ -d $targ/public ] || ! [ -f $targconf/.dongle ] || ! [ -f $targconf/passwd ] ; then
+ echo
+ echo "Error: $targ appears to have vanished into thin air."
+ echo "This would indicate some type of problem with the USB cable,"
+ echo "the device, or the formatting of the device."
+ exit 1
+fi
+# /usr/bin/find / -xdev -print | /usr/bin/cpio -p -d -m -u $targ
+# rm -rf $targ/dev ; mv $targ/dev.state $targ/dev
+# rm -rf $targ/var ; mv $targ/var.state $targ/var
+echo "./var/tmp" > /tmp/xfile
+echo "./dev.state" >> /tmp/xfile
+echo "./var.state" >> /tmp/xfile
+mkdir -p /tmp/tmprootfs
+/bin/mount /dev/mtdblock4 /tmp/tmprootfs
+/bin/tar -c -C /tmp/tmprootfs -X /tmp/xfile -f - . | (cd $targ; /bin/tar -x -f -)
+/bin/umount /tmp/tmprootfs
+echo "Copy complete ..."
+echo
# Copy over the existing ipkg database.
@@ -191,6 +220,8 @@ touch $targ/var/log/wtmp
chmod 644 $targ/var/log/wtmp
touch $targ/var/run/utmp
chmod 644 $targ/var/run/utmp
+mkdir -p $targ/var/tmp
+chmod 777 $targ/var/tmp
# The "user password" Linksys utility is hard-coded to /share/hdd; also the
# QuickSet utility seems to have some difficulty as well. Ugly fix is to
@@ -227,7 +258,8 @@ echo > $targ/$flag
echo
echo "Unsling complete."
echo
-echo "Leave the device $htmlinfo plugged in, and reboot"
-echo "in order to boot this system up into unslung mode."
+echo "Leave the device $htmlinfo, plugged in and reboot (using"
+echo "either the Web GUI, or the command \"DO_Reboot\") in order to boot"
+echo "this system up into unslung mode."
exit 0
diff --git a/packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb b/packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb
index 73089bafeb..290d2debbc 100644
--- a/packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb
+++ b/packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb
@@ -1,6 +1,6 @@
SECTION = "base"
-PR = "r15"
+PR = "r16"
DEPENDS = "nslu2-linksys-libs nslu2-linksys-sambacodepages"
@@ -11,11 +11,12 @@ SRC_URI = "http://nslu.sf.net/downloads/nslu2-linksys-ramdisk-2.3r63-2.tar.bz2 \
file://motd-fl \
file://motd-un \
file://unsling \
- file://resling \
- file://slingover \
+# file://resling \
+# file://slingover \
file://linuxrc \
file://unslung.gif \
file://nsswitch.conf \
+ file://rc.bootdisk \
file://rc.optware-start \
file://rc.optware-stop \
file://rc-diversion.patch;patch=1 \
@@ -23,6 +24,7 @@ SRC_URI = "http://nslu.sf.net/downloads/nslu2-linksys-ramdisk-2.3r63-2.tar.bz2 \
file://rc.1-timestamp.patch;patch=1 \
file://rc.crond-diversion.patch;patch=1 \
file://rc.halt-diversion.patch;patch=1 \
+ file://rc.lan-shell.patch;patch=1 \
file://rc.local-diversion.patch;patch=1 \
file://rc.modules-diversion.patch;patch=1 \
file://rc.network-diversion.patch;patch=1 \
@@ -104,10 +106,11 @@ do_compile () {
install -d ${S}/initrd
install -m 755 ${WORKDIR}/unsling ${S}/sbin/unsling
- install -m 755 ${WORKDIR}/resling ${S}/sbin/resling
- install -m 755 ${WORKDIR}/slingover ${S}/sbin/slingover
+# install -m 755 ${WORKDIR}/resling ${S}/sbin/resling
+# install -m 755 ${WORKDIR}/slingover ${S}/sbin/slingover
install -m 755 ${WORKDIR}/rc.optware-start ${S}/etc/rc.d/rc.optware-start
install -m 755 ${WORKDIR}/rc.optware-stop ${S}/etc/rc.d/rc.optware-stop
+ install -m 755 ${WORKDIR}/rc.bootdisk ${S}/etc/rc.d/rc.bootdisk
install -m 644 ${WORKDIR}/nsswitch.conf ${S}/etc/nsswitch.conf
@@ -161,6 +164,14 @@ do_compile () {
# a link to busybox or slingbox at some point.
rm -r ${S}/usr/sbin/date
ln -s ../../bin/date ${S}/usr/sbin/date
+
+ # Replace the Linksys-provided /bin/busybox with a link to slingbox.
+ rm -f ${S}/bin/busybox
+ ln -s slingbox ${S}/bin/busybox
+
+ # No reason not to have a home directory for root...
+ mkdir -p ${S}/root
+ chmod 775 ${S}/root
}
do_install () {
diff --git a/packages/omniorb/omniorb_4.0.7.bb b/packages/omniorb/omniorb_4.0.7.bb
index 1ae2831fba..0dfaa7a98c 100644
--- a/packages/omniorb/omniorb_4.0.7.bb
+++ b/packages/omniorb/omniorb_4.0.7.bb
@@ -34,4 +34,5 @@ do_install () {
make DESTDIR=${D} install
install -d ${D}${sysconfdir}
install -m 0644 ${WORKDIR}/omniORB.cfg ${D}${sysconfdir}
+ install -d ${D}${localstatedir}/omninames
}
diff --git a/packages/openswan/openswan-2.2.0/installflags.patch b/packages/openswan/openswan-2.2.0/installflags.patch
new file mode 100644
index 0000000000..837267d3e6
--- /dev/null
+++ b/packages/openswan/openswan-2.2.0/installflags.patch
@@ -0,0 +1,17 @@
+---
+ Makefile.inc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: openswan-2.2.0/Makefile.inc
+===================================================================
+--- openswan-2.2.0.orig/Makefile.inc 2006-11-06 23:06:33.000000000 +0000
++++ openswan-2.2.0/Makefile.inc 2006-11-08 20:16:26.000000000 +0000
+@@ -170,7 +170,7 @@ INSTALL=install
+ # how backup names are composed.
+ # Note that the install procedures will never overwrite an existing config
+ # file, which is why -b is not specified for them.
+-INSTBINFLAGS=-b --suffix=.old
++INSTBINFLAGS=
+ INSTMANFLAGS=
+ INSTCONFFLAGS=
+
diff --git a/packages/openswan/openswan_2.2.0.bb b/packages/openswan/openswan_2.2.0.bb
index e1423d30b7..b1c5271b13 100644
--- a/packages/openswan/openswan_2.2.0.bb
+++ b/packages/openswan/openswan_2.2.0.bb
@@ -11,6 +11,7 @@ PR = "r5"
SRC_URI = "http://www.openswan.org/download/old/openswan-${PV}.tar.gz \
file://openswan-2.2.0-gentoo.patch;patch=1 \
file://gcc4-fixes.patch;patch=1 \
+ file://installflags.patch;patch=1 \
file://makefile-whitespace-fix.patch;patch=1 \
file://ld-library-path-breakage.patch;patch=1"
S = "${WORKDIR}/openswan-${PV}"
diff --git a/packages/opensync/libopensync_0.20.bb b/packages/opensync/libopensync_0.20.bb
new file mode 100644
index 0000000000..9560e5f949
--- /dev/null
+++ b/packages/opensync/libopensync_0.20.bb
@@ -0,0 +1,18 @@
+LICENSE = "LGPL"
+HOMEPAGE = "http://www.opensync.org/"
+
+DEPENDS = "sqlite3 libxml2 zlib glib-2.0"
+
+SRC_URI = "http://www.openembedded.org/sources/libopensync-${PV}.tar.gz"
+
+inherit autotools pkgconfig lib_package
+
+EXTRA_OECONF = "--disable-python"
+LEAD_SONAME = "libopensync.so"
+
+FILES_${PN} += " ${libdir}/opensync/formats/*.so"
+
+do_stage() {
+autotools_stage_all
+}
+
diff --git a/packages/ossie/ossie-c-wavloader_svn.bb b/packages/ossie/ossie-c-wavloader_svn.bb
new file mode 100644
index 0000000000..4fed260694
--- /dev/null
+++ b/packages/ossie/ossie-c-wavloader_svn.bb
@@ -0,0 +1,14 @@
+PR = "r0"
+DESCRIPTION = "OSSIE Waveform Loader"
+SECTION = "apps"
+PRIORITY = "optional"
+LICENSE = "GPL"
+
+DEPENDS = "ossiecf expat"
+
+S="${WORKDIR}/c_wavLoader"
+
+SRC_URI = "svn://ossie-dev.mprg.org/repos/ossie/platform/c_wavLoader/trunk;module=c_wavLoader;proto=https"
+
+inherit autotools
+
diff --git a/packages/ossie/ossie-soundout-device_svn.bb b/packages/ossie/ossie-soundout-device_svn.bb
new file mode 100644
index 0000000000..f5a85c45b2
--- /dev/null
+++ b/packages/ossie/ossie-soundout-device_svn.bb
@@ -0,0 +1,19 @@
+PR = "r0"
+DESCRIPTION = "OSSIE sound playback device"
+SECTION = "apps"
+PRIORITY = "optional"
+MAINTAINER = "Philip Balister philip@balister.org"
+LICENSE = "GPL"
+
+DEPENDS = "alsa-lib ossiecf ossie-standardinterfaces"
+
+S="${WORKDIR}/Sound_out"
+
+SRC_URI = "svn://ossie-dev.mprg.org/repos/ossie/platform/Sound_out/trunk;module=Sound_out;proto=https"
+
+prefix="/home/sca"
+
+inherit autotools
+
+FILES_${PN} += "/home/sca/xml/soundCard/*xml"
+
diff --git a/packages/qemu/files/mouse_fix-r0.patch b/packages/qemu/files/mouse_fix-r0.patch
deleted file mode 100644
index 8cc19f0392..0000000000
--- a/packages/qemu/files/mouse_fix-r0.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-If the cursor is hidden (SDL_ShowCursor(0)) and the input is grabbed
-(SDL_WM_GrabInput(SDL_GRAB_ON)), then the mouse will give relative motion
-events even when the cursor reaches the edge fo the screen. This is currently
-only implemented on Windows and Linux/Unix-a-likes.
-
-Index: qemu/sdl.c
-===================================================================
---- qemu.orig/sdl.c 2006-04-13 12:22:22.000000000 +0100
-+++ qemu/sdl.c 2006-05-25 00:28:25.000000000 +0100
-@@ -280,13 +280,13 @@
-
- static void sdl_hide_cursor(void)
- {
-- SDL_SetCursor(sdl_cursor_hidden);
-+ SDL_ShowCursor(0);
- }
-
- static void sdl_show_cursor(void)
- {
- if (!kbd_mouse_is_absolute()) {
-- SDL_SetCursor(sdl_cursor_normal);
-+ SDL_ShowCursor(1);
- }
- }
-
diff --git a/packages/qemu/files/nodocs_cvs.patch b/packages/qemu/files/nodocs_cvs.patch
deleted file mode 100644
index b52d860fb0..0000000000
--- a/packages/qemu/files/nodocs_cvs.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-Index: qemu/Makefile
-===================================================================
---- qemu.orig/Makefile 2006-04-18 11:11:37.000000000 +0100
-+++ qemu/Makefile 2006-04-18 11:14:34.000000000 +0100
-@@ -11,7 +11,7 @@
- ifdef CONFIG_STATIC
- LDFLAGS+=-static
- endif
--DOCS=qemu-doc.html qemu-tech.html qemu.1 qemu-img.1
-+DOCS=
-
- all: dyngen$(EXESUF) $(TOOLS) $(DOCS)
- for d in $(TARGET_DIRS); do \
-@@ -51,11 +51,11 @@
- video.x proll.elf linux_boot.bin; do \
- $(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x "$(DESTDIR)$(datadir)"; \
- done
-- mkdir -p "$(DESTDIR)$(docdir)"
-- $(INSTALL) -m 644 qemu-doc.html qemu-tech.html "$(DESTDIR)$(docdir)"
-+# mkdir -p "$(DESTDIR)$(docdir)"
-+# $(INSTALL) -m 644 qemu-doc.html qemu-tech.html "$(DESTDIR)$(docdir)"
- ifndef CONFIG_WIN32
-- mkdir -p "$(DESTDIR)$(mandir)/man1"
-- $(INSTALL) qemu.1 qemu-img.1 "$(DESTDIR)$(mandir)/man1"
-+# mkdir -p "$(DESTDIR)$(mandir)/man1"
-+# $(INSTALL) qemu.1 qemu-img.1 "$(DESTDIR)$(mandir)/man1"
- mkdir -p "$(DESTDIR)$(datadir)/keymaps"
- for x in $(KEYMAPS); do \
- $(INSTALL) -m 644 $(SRC_PATH)/keymaps/$$x "$(DESTDIR)$(datadir)/keymaps"; \
-@@ -122,10 +122,10 @@
- $(datadir)/ppc_rom.bin \
- $(datadir)/video.x \
- $(datadir)/proll.elf \
-- $(datadir)/linux_boot.bin \
-- $(docdir)/qemu-doc.html \
-- $(docdir)/qemu-tech.html \
-- $(mandir)/man1/qemu.1 $(mandir)/man1/qemu-img.1 )
-+ $(datadir)/linux_boot.bin
-+# $(docdir)/qemu-doc.html \
-+# $(docdir)/qemu-tech.html \
-+# $(mandir)/man1/qemu.1 $(mandir)/man1/qemu-img.1 )
-
- ifneq ($(wildcard .depend),)
- include .depend
diff --git a/packages/qemu/files/qemu-usb-wacom.patch b/packages/qemu/files/qemu-usb-wacom.patch
deleted file mode 100644
index c1c39eccaf..0000000000
--- a/packages/qemu/files/qemu-usb-wacom.patch
+++ /dev/null
@@ -1,444 +0,0 @@
-diff -pNaur qemu-cvs-ts-orig/hw/usb-wacom.c qemu-cvs-ts/hw/usb-wacom.c
---- qemu-cvs-ts-orig/hw/usb-wacom.c 1970-01-01 01:00:00.000000000 +0100
-+++ qemu-cvs-ts/hw/usb-wacom.c 2006-09-22 20:44:26.000000000 +0200
-@@ -0,0 +1,407 @@
-+/*
-+ * Wacom PenPartner USB tablet emulation.
-+ *
-+ * Copyright (c) 2006 Openedhand Ltd.
-+ *
-+ * Author: Andrzej Zaborowski <balrog@zabor.org>
-+ *
-+ * Based on hw/usb-hid.c:
-+ * Copyright (c) 2005 Fabrice Bellard
-+ *
-+ * Permission is hereby granted, free of charge, to any person obtaining a copy
-+ * of this software and associated documentation files (the "Software"), to deal
-+ * in the Software without restriction, including without limitation the rights
-+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-+ * copies of the Software, and to permit persons to whom the Software is
-+ * furnished to do so, subject to the following conditions:
-+ *
-+ * The above copyright notice and this permission notice shall be included in
-+ * all copies or substantial portions of the Software.
-+ *
-+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-+ * THE SOFTWARE.
-+ */
-+#include "vl.h"
-+
-+/* Interface requests */
-+#define WACOM_GET_REPORT 0x2101
-+#define WACOM_SET_REPORT 0x2109
-+
-+/* HID interface requests */
-+#define HID_GET_REPORT 0xa101
-+#define HID_GET_IDLE 0xa102
-+#define HID_GET_PROTOCOL 0xa103
-+#define HID_SET_IDLE 0x210a
-+#define HID_SET_PROTOCOL 0x210b
-+
-+#define WACOM_MODE_HID 1
-+#define WACOM_MODE_WACOM 2
-+
-+typedef struct USBWacomState {
-+ USBDevice dev;
-+ int dx, dy, dz, buttons_state;
-+ int x, y;
-+ int mouse_grabbed;
-+ int mode;
-+} USBWacomState;
-+
-+static const uint8_t qemu_wacom_dev_descriptor[] = {
-+ 0x12, /* u8 bLength; */
-+ 0x01, /* u8 bDescriptorType; Device */
-+ 0x10, 0x10, /* u16 bcdUSB; v1.10 */
-+
-+ 0x00, /* u8 bDeviceClass; */
-+ 0x00, /* u8 bDeviceSubClass; */
-+ 0x00, /* u8 bDeviceProtocol; [ low/full speeds only ] */
-+ 0x08, /* u8 bMaxPacketSize0; 8 Bytes */
-+
-+ 0x6a, 0x05, /* u16 idVendor; */
-+ 0x00, 0x00, /* u16 idProduct; */
-+ 0x10, 0x42, /* u16 bcdDevice */
-+
-+ 0x01, /* u8 iManufacturer; */
-+ 0x02, /* u8 iProduct; */
-+ 0x00, /* u8 iSerialNumber; */
-+ 0x01, /* u8 bNumConfigurations; */
-+};
-+
-+static const uint8_t qemu_wacom_config_descriptor[] = {
-+ /* one configuration */
-+ 0x09, /* u8 bLength; */
-+ 0x02, /* u8 bDescriptorType; Configuration */
-+ 0x22, 0x00, /* u16 wTotalLength; */
-+ 0x01, /* u8 bNumInterfaces; (1) */
-+ 0x01, /* u8 bConfigurationValue; */
-+ 0x00, /* u8 iConfiguration; */
-+ 0x80, /* u8 bmAttributes;
-+ Bit 7: must be set,
-+ 6: Self-powered,
-+ 5: Remote wakeup,
-+ 4..0: resvd */
-+ 40, /* u8 MaxPower; */
-+
-+ /* one interface */
-+ 0x09, /* u8 if_bLength; */
-+ 0x04, /* u8 if_bDescriptorType; Interface */
-+ 0x00, /* u8 if_bInterfaceNumber; */
-+ 0x00, /* u8 if_bAlternateSetting; */
-+ 0x01, /* u8 if_bNumEndpoints; */
-+ 0x03, /* u8 if_bInterfaceClass; HID */
-+ 0x01, /* u8 if_bInterfaceSubClass; Boot */
-+ 0x02, /* u8 if_bInterfaceProtocol; [usb1.1 or single tt] */
-+ 0x00, /* u8 if_iInterface; */
-+
-+ /* HID descriptor */
-+ 0x09, /* u8 bLength; */
-+ 0x21, /* u8 bDescriptorType; */
-+ 0x01, 0x10, /* u16 HID_class */
-+ 0x00, /* u8 country_code */
-+ 0x01, /* u8 num_descriptors */
-+ 0x22, /* u8 type; Report */
-+ 0x6e, 0x00, /* u16 len */
-+
-+ /* one endpoint (status change endpoint) */
-+ 0x07, /* u8 ep_bLength; */
-+ 0x05, /* u8 ep_bDescriptorType; Endpoint */
-+ 0x81, /* u8 ep_bEndpointAddress; IN Endpoint 1 */
-+ 0x03, /* u8 ep_bmAttributes; Interrupt */
-+ 0x08, 0x00, /* u16 ep_wMaxPacketSize; */
-+ 0x0a, /* u8 ep_bInterval; */
-+};
-+
-+static void usb_mouse_event(void *opaque,
-+ int dx1, int dy1, int dz1, int buttons_state)
-+{
-+ USBWacomState *s = opaque;
-+
-+ s->dx += dx1;
-+ s->dy += dy1;
-+ s->dz += dz1;
-+ s->buttons_state = buttons_state;
-+}
-+
-+static void usb_wacom_event(void *opaque,
-+ int x, int y, int dz, int buttons_state)
-+{
-+ USBWacomState *s = opaque;
-+
-+ s->x = x;
-+ s->y = y;
-+ s->dz += dz;
-+ s->buttons_state = buttons_state;
-+}
-+
-+static inline int int_clamp(int val, int vmin, int vmax)
-+{
-+ if (val < vmin)
-+ return vmin;
-+ else if (val > vmax)
-+ return vmax;
-+ else
-+ return val;
-+}
-+
-+static int usb_mouse_poll(USBWacomState *s, uint8_t *buf, int len)
-+{
-+ int dx, dy, dz, b, l;
-+
-+ if (!s->mouse_grabbed) {
-+ qemu_add_mouse_event_handler(usb_mouse_event, s, 1);
-+ s->mouse_grabbed = 1;
-+ }
-+
-+ dx = int_clamp(s->dx, -128, 127);
-+ dy = int_clamp(s->dy, -128, 127);
-+ dz = int_clamp(s->dz, -128, 127);
-+
-+ s->dx -= dx;
-+ s->dy -= dy;
-+ s->dz -= dz;
-+
-+ b = 0;
-+ if (s->buttons_state & MOUSE_EVENT_LBUTTON)
-+ b |= 0x01;
-+ if (s->buttons_state & MOUSE_EVENT_RBUTTON)
-+ b |= 0x02;
-+ if (s->buttons_state & MOUSE_EVENT_MBUTTON)
-+ b |= 0x04;
-+
-+ buf[0] = b;
-+ buf[1] = dx;
-+ buf[2] = dy;
-+ l = 3;
-+ if (len >= 4) {
-+ buf[3] = dz;
-+ l = 4;
-+ }
-+ return l;
-+}
-+
-+static int usb_wacom_poll(USBWacomState *s, uint8_t *buf, int len)
-+{
-+ int b;
-+
-+ if (!s->mouse_grabbed) {
-+ qemu_add_mouse_event_handler(usb_wacom_event, s, 1);
-+ s->mouse_grabbed = 1;
-+ }
-+
-+ b = 0;
-+ if (s->buttons_state & MOUSE_EVENT_LBUTTON)
-+ b |= 0x01;
-+ if (s->buttons_state & MOUSE_EVENT_RBUTTON)
-+ b |= 0x02;
-+ if (s->buttons_state & MOUSE_EVENT_MBUTTON)
-+ b |= 0x04;
-+
-+ if (len < 7)
-+ return 0;
-+
-+ buf[0] = s->mode;
-+ buf[1] = s->x & 0xff;
-+ buf[2] = s->x >> 8;
-+ buf[3] = s->y & 0xff;
-+ buf[4] = s->y >> 8;
-+ if (b) {
-+ buf[5] = 0x40;
-+ buf[6] = 0;
-+ } else {
-+ buf[5] = 0x00;
-+ buf[6] = (unsigned char) -120;
-+ }
-+
-+ return 7;
-+}
-+
-+static void usb_wacom_handle_reset(USBDevice *dev)
-+{
-+ USBWacomState *s = (USBWacomState *) dev;
-+
-+ s->dx = 0;
-+ s->dy = 0;
-+ s->dz = 0;
-+ s->x = 0;
-+ s->y = 0;
-+ s->buttons_state = 0;
-+ s->mode = WACOM_MODE_HID;
-+}
-+
-+static int usb_wacom_handle_control(USBDevice *dev, int request, int value,
-+ int index, int length, uint8_t *data)
-+{
-+ USBWacomState *s = (USBWacomState *) dev;
-+ int ret = 0;
-+
-+ switch (request) {
-+ case DeviceRequest | USB_REQ_GET_STATUS:
-+ data[0] = (1 << USB_DEVICE_SELF_POWERED) |
-+ (dev->remote_wakeup << USB_DEVICE_REMOTE_WAKEUP);
-+ data[1] = 0x00;
-+ ret = 2;
-+ break;
-+ case DeviceOutRequest | USB_REQ_CLEAR_FEATURE:
-+ if (value == USB_DEVICE_REMOTE_WAKEUP) {
-+ dev->remote_wakeup = 0;
-+ } else {
-+ goto fail;
-+ }
-+ ret = 0;
-+ break;
-+ case DeviceOutRequest | USB_REQ_SET_FEATURE:
-+ if (value == USB_DEVICE_REMOTE_WAKEUP) {
-+ dev->remote_wakeup = 1;
-+ } else {
-+ goto fail;
-+ }
-+ ret = 0;
-+ break;
-+ case DeviceOutRequest | USB_REQ_SET_ADDRESS:
-+ dev->addr = value;
-+ ret = 0;
-+ break;
-+ case DeviceRequest | USB_REQ_GET_DESCRIPTOR:
-+ switch (value >> 8) {
-+ case USB_DT_DEVICE:
-+ memcpy(data, qemu_wacom_dev_descriptor,
-+ sizeof(qemu_wacom_dev_descriptor));
-+ ret = sizeof(qemu_wacom_dev_descriptor);
-+ break;
-+ case USB_DT_CONFIG:
-+ memcpy(data, qemu_wacom_config_descriptor,
-+ sizeof(qemu_wacom_config_descriptor));
-+ ret = sizeof(qemu_wacom_config_descriptor);
-+ break;
-+ case USB_DT_STRING:
-+ switch (value & 0xff) {
-+ case 0:
-+ /* language ids */
-+ data[0] = 4;
-+ data[1] = 3;
-+ data[2] = 0x09;
-+ data[3] = 0x04;
-+ ret = 4;
-+ break;
-+ case 1:
-+ /* serial number */
-+ ret = set_usb_string(data, "1");
-+ break;
-+ case 2:
-+ ret = set_usb_string(data, "Wacom PenPartner");
-+ break;
-+ case 3:
-+ /* vendor description */
-+ ret = set_usb_string(data, "QEMU " QEMU_VERSION);
-+ break;
-+ case 4:
-+ ret = set_usb_string(data, "Wacom Tablet");
-+ break;
-+ case 5:
-+ ret = set_usb_string(data, "Endpoint1 Interrupt Pipe");
-+ break;
-+ default:
-+ goto fail;
-+ }
-+ break;
-+ default:
-+ goto fail;
-+ }
-+ break;
-+ case DeviceRequest | USB_REQ_GET_CONFIGURATION:
-+ data[0] = 1;
-+ ret = 1;
-+ break;
-+ case DeviceOutRequest | USB_REQ_SET_CONFIGURATION:
-+ ret = 0;
-+ break;
-+ case DeviceRequest | USB_REQ_GET_INTERFACE:
-+ data[0] = 0;
-+ ret = 1;
-+ break;
-+ case DeviceOutRequest | USB_REQ_SET_INTERFACE:
-+ ret = 0;
-+ break;
-+ case WACOM_SET_REPORT:
-+ qemu_add_mouse_event_handler(NULL, NULL, 0);
-+ s->mouse_grabbed = 0;
-+ s->mode = data[0];
-+ ret = 0;
-+ break;
-+ case WACOM_GET_REPORT:
-+ data[0] = 0;
-+ data[1] = s->mode;
-+ ret = 2;
-+ break;
-+ /* USB HID requests */
-+ case HID_GET_REPORT:
-+ if (s->mode == WACOM_MODE_HID)
-+ ret = usb_mouse_poll(s, data, length);
-+ else if (s->mode == WACOM_MODE_WACOM)
-+ ret = usb_wacom_poll(s, data, length);
-+ break;
-+ case HID_SET_IDLE:
-+ ret = 0;
-+ break;
-+ default:
-+ fail:
-+ ret = USB_RET_STALL;
-+ break;
-+ }
-+ return ret;
-+}
-+
-+static int usb_wacom_handle_data(USBDevice *dev, USBPacket *p)
-+{
-+ USBWacomState *s = (USBWacomState *) dev;
-+ int ret = 0;
-+
-+ switch (p->pid) {
-+ case USB_TOKEN_IN:
-+ if (p->devep == 1) {
-+ if (s->mode == WACOM_MODE_HID)
-+ ret = usb_mouse_poll(s, p->data, p->len);
-+ else if (s->mode == WACOM_MODE_WACOM)
-+ ret = usb_wacom_poll(s, p->data, p->len);
-+ break;
-+ }
-+ /* Fall through. */
-+ case USB_TOKEN_OUT:
-+ default:
-+ ret = USB_RET_STALL;
-+ break;
-+ }
-+ return ret;
-+}
-+
-+static void usb_wacom_handle_destroy(USBDevice *dev)
-+{
-+ USBWacomState *s = (USBWacomState *) dev;
-+
-+ qemu_add_mouse_event_handler(NULL, NULL, 0);
-+ qemu_free(s);
-+}
-+
-+USBDevice *usb_wacom_init(void)
-+{
-+ USBWacomState *s;
-+
-+ s = qemu_mallocz(sizeof(USBWacomState));
-+ if (!s)
-+ return NULL;
-+ s->dev.speed = USB_SPEED_FULL;
-+ s->dev.handle_packet = usb_generic_handle_packet;
-+
-+ s->dev.handle_reset = usb_wacom_handle_reset;
-+ s->dev.handle_control = usb_wacom_handle_control;
-+ s->dev.handle_data = usb_wacom_handle_data;
-+ s->dev.handle_destroy = usb_wacom_handle_destroy;
-+
-+ pstrcpy(s->dev.devname, sizeof(s->dev.devname),
-+ "QEMU PenPartner Tablet");
-+
-+ return (USBDevice *) s;
-+}
-diff -pNaur qemu-cvs-ts-orig/hw/usb.h qemu-cvs-ts/hw/usb.h
---- qemu-cvs-ts-orig/hw/usb.h 2006-08-12 03:04:27.000000000 +0200
-+++ qemu-cvs-ts/hw/usb.h 2006-09-21 01:40:40.000000000 +0200
-@@ -218,3 +218,6 @@ USBDevice *usb_tablet_init(void);
-
- /* usb-msd.c */
- USBDevice *usb_msd_init(const char *filename);
-+
-+/* usb-wacom.c */
-+USBDevice *usb_wacom_init(void);
-diff -pNaur qemu-cvs-ts-orig/vl.c qemu-cvs-ts/vl.c
---- qemu-cvs-ts-orig/vl.c 2006-09-10 16:39:54.000000000 +0200
-+++ qemu-cvs-ts/vl.c 2006-09-21 01:45:16.000000000 +0200
-@@ -3765,6 +3765,8 @@ static int usb_device_add(const char *de
- dev = usb_tablet_init();
- } else if (strstart(devname, "disk:", &p)) {
- dev = usb_msd_init(p);
-+ } else if (!strcmp(devname, "wacom-tablet")) {
-+ dev = usb_wacom_init();
- } else {
- return -1;
- }
-diff -pNaur qemu-cvs-ts-orig/Makefile.target qemu-cvs-ts/Makefile.target
---- qemu-cvs-ts-orig/Makefile.target 2006-09-18 03:15:29.000000000 +0200
-+++ qemu-cvs-ts/Makefile.target 2006-09-21 02:32:19.000000000 +0200
-@@ -330,6 +330,7 @@ VL_OBJS+= scsi-disk.o cdrom.o lsi53c895a
-
- # USB layer
- VL_OBJS+= usb.o usb-hub.o usb-linux.o usb-hid.o usb-ohci.o usb-msd.o
-+VL_OBJS+= usb-wacom.o
-
- # PCI network cards
- VL_OBJS+= ne2000.o rtl8139.o pcnet.o
diff --git a/packages/qemu/files/qemu-x-no-sdl.patch b/packages/qemu/files/qemu-x-no-sdl.patch
deleted file mode 100644
index eb00d9806b..0000000000
--- a/packages/qemu/files/qemu-x-no-sdl.patch
+++ /dev/null
@@ -1,630 +0,0 @@
-diff -urN qemu-0.8.2/configure qemu-0.8.2-x/configure
---- qemu-0.8.2/configure 2006-07-22 18:23:34.000000000 +0100
-+++ qemu-0.8.2-x/configure 2006-08-24 14:24:33.000000000 +0100
-@@ -492,6 +492,21 @@
- fi # cross compilation
- fi # -z $sdl
-
-+##########################################
-+# X Probe
-+
-+x11=no
-+if test -z "$sdl" || test "$sdl" = "no"; then
-+ x11=yes
-+fi
-+
-+if test "$x11" = "yes"; then
-+ x11=no
-+ if `pkg-config --exists x11 xext`; then
-+ x11=yes
-+ fi
-+fi
-+
- # Check if tools are available to build documentation.
- if [ -x "`which texi2html`" ] && [ -x "`which pod2man`" ]; then
- build_docs="yes"
-@@ -540,6 +555,7 @@
- if test "$sdl" != "no" ; then
- echo "SDL static link $sdl_static"
- fi
-+echo "X11 support $x11"
- echo "mingw32 support $mingw32"
- echo "Adlib support $adlib"
- echo "CoreAudio support $coreaudio"
-@@ -748,14 +764,14 @@
- fi
-
- if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
-- -a "$sdl" = "no" -a "$cocoa" = "no" ; then
-+ -a "$sdl" = "no" -a "$x11" = "no" -a "$cocoa" = "no" ; then
- echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
- echo "To build QEMU without graphical output configure with --disable-gfx-check"
- echo "Note that this will disable all output from the virtual graphics card."
- exit 1;
- fi
-
--#echo "Creating $config_mak, $config_h and $target_dir/Makefile"
-+echo "Creating $config_mak, $config_h and $target_dir/Makefile"
-
- mkdir -p $target_dir
- mkdir -p $target_dir/fpu
-@@ -882,6 +898,14 @@
- fi
- fi
-
-+# x11
-+if test "$x11" = "yes"; then
-+ echo "#define CONFIG_X11 1" >> $config_h
-+ echo "CONFIG_X11=yes" >> $config_mak
-+ echo "X11_LIBS=`pkg-config --libs x11 xext`" >> $config_mak
-+ echo "X11_CFLAGS=`pkg-config --cflags x11 xext`" >> $config_mak
-+fi
-+
- if test "$cocoa" = "yes" ; then
- echo "#define CONFIG_COCOA 1" >> $config_h
- echo "CONFIG_COCOA=yes" >> $config_mak
-diff -urN qemu-0.8.2/Makefile.target qemu-0.8.2-x/Makefile.target
---- qemu-0.8.2/Makefile.target 2006-07-22 18:23:34.000000000 +0100
-+++ qemu-0.8.2-x/Makefile.target 2006-08-23 14:47:17.000000000 +0100
-@@ -376,6 +376,9 @@
- ifdef CONFIG_SDL
- VL_OBJS+=sdl.o
- endif
-+ifdef CONFIG_X11
-+VL_OBJS+=x.o
-+endif
- VL_OBJS+=vnc.o
- ifdef CONFIG_COCOA
- VL_OBJS+=cocoa.o
-@@ -426,7 +429,7 @@
- endif
-
- $(QEMU_SYSTEM): $(VL_OBJS) libqemu.a
-- $(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS)
-+ $(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(X11_LIBS) $(COCOA_LIBS) $(VL_LIBS)
-
- cocoa.o: cocoa.m
- $(CC) $(CFLAGS) $(DEFINES) -c -o $@ $<
-@@ -434,6 +437,10 @@
- sdl.o: sdl.c keymaps.c sdl_keysym.h
- $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $<
-
-+x.o: x.c keymaps.c
-+ $(CC) $(CFLAGS) $(DEFINES) $(X11_CFLAGS) -c -o $@ $<
-+
-+
- vnc.o: vnc.c keymaps.c sdl_keysym.h vnchextile.h
- $(CC) $(CFLAGS) $(DEFINES) -c -o $@ $<
-
-diff -urN qemu-0.8.2/vl.c qemu-0.8.2-x/vl.c
---- qemu-0.8.2/vl.c 2006-07-22 18:23:34.000000000 +0100
-+++ qemu-0.8.2-x/vl.c 2006-09-29 18:58:26.000000000 +0100
-@@ -5217,6 +5217,9 @@
- #ifdef USE_CODE_COPY
- "-no-code-copy disable code copy acceleration\n"
- #endif
-+#if defined(CONFIG_X11)
-+ "-parent xid Use pre-existing window as qemu output window\n"
-+#endif
- #ifdef TARGET_I386
- "-std-vga simulate a standard VGA card with VESA Bochs Extensions\n"
- " (default is CL-GD5446 PCI VGA)\n"
-@@ -5302,6 +5305,8 @@
- QEMU_OPTION_smp,
- QEMU_OPTION_vnc,
- QEMU_OPTION_no_acpi,
-+
-+ QEMU_OPTION_parent_xid,
- };
-
- typedef struct QEMUOption {
-@@ -5361,6 +5366,9 @@
- #if defined(TARGET_PPC) || defined(TARGET_SPARC)
- { "g", 1, QEMU_OPTION_g },
- #endif
-+#if defined(CONFIG_X11)
-+ { "parent", HAS_ARG, QEMU_OPTION_parent_xid },
-+#endif
- { "localtime", 0, QEMU_OPTION_localtime },
- { "std-vga", 0, QEMU_OPTION_std_vga },
- { "monitor", 1, QEMU_OPTION_monitor },
-@@ -5608,6 +5616,10 @@
- char usb_devices[MAX_USB_CMDLINE][128];
- int usb_devices_index;
-
-+#if defined(CONFIG_X11)
-+ unsigned long parent_xid = 0;
-+#endif
-+
- LIST_INIT (&vm_change_state_head);
- #ifndef _WIN32
- {
-@@ -6021,6 +6033,11 @@
- case QEMU_OPTION_no_acpi:
- acpi_enabled = 0;
- break;
-+#if defined(CONFIG_X11)
-+ case QEMU_OPTION_parent_xid:
-+ parent_xid = strtol(optarg, NULL, 0);
-+ break;
-+#endif
- }
- }
- }
-@@ -6142,6 +6159,8 @@
- sdl_display_init(ds, full_screen);
- #elif defined(CONFIG_COCOA)
- cocoa_display_init(ds, full_screen);
-+#elif defined(CONFIG_X11)
-+ x_display_init(ds, full_screen, parent_xid);
- #else
- dumb_display_init(ds);
- #endif
-diff -urN qemu-0.8.2/vl.h qemu-0.8.2-x/vl.h
---- qemu-0.8.2/vl.h 2006-07-22 18:23:34.000000000 +0100
-+++ qemu-0.8.2-x/vl.h 2006-09-29 18:35:32.000000000 +0100
-@@ -767,6 +767,9 @@
- /* vnc.c */
- void vnc_display_init(DisplayState *ds, int display);
-
-+/* x.c */
-+void x_display_init(DisplayState *ds, int display, unsigned long parent_xid);
-+
- /* ide.c */
- #define MAX_DISKS 4
-
-diff -urN qemu-0.8.2/x.c qemu-0.8.2-x/x.c
---- qemu-0.8.2/x.c 1970-01-01 01:00:00.000000000 +0100
-+++ qemu-0.8.2-x/x.c 2006-09-29 18:35:02.000000000 +0100
-@@ -0,0 +1,451 @@
-+#include "vl.h"
-+
-+#include <X11/Xlib.h>
-+#include <X11/Xutil.h>
-+#include <X11/Xatom.h>
-+#include <X11/keysym.h>
-+#include <X11/extensions/XShm.h>
-+
-+#include <sys/ipc.h>
-+#include <sys/shm.h>
-+
-+typedef struct XHostScreen
-+{
-+ Display *xdpy;
-+ int xscreen;
-+ Visual *xvisual;
-+ Window xwin, xwinroot;
-+ GC xgc;
-+ int xdepth;
-+ XImage *ximg;
-+ int xwin_width, xwin_height;
-+ Bool use_fullscreen;
-+ Bool have_shm;
-+ unsigned char *fb_data;
-+ unsigned long cmap[256];
-+ XShmSegmentInfo shminfo;
-+}
-+XHostScreen;
-+
-+static XHostScreen *xscreen;
-+static int trapped_error_code = 0;
-+static int (*old_error_handler) (Display *d, XErrorEvent *e);
-+
-+static void
-+x_update(DisplayState *ds, int x, int y, int w, int h);
-+
-+static int
-+error_handler(Display *display,
-+ XErrorEvent *error)
-+{
-+ trapped_error_code = error->error_code;
-+ return 0;
-+}
-+
-+static void
-+x_errors_trap(void)
-+{
-+ trapped_error_code = 0;
-+ old_error_handler = XSetErrorHandler(error_handler);
-+}
-+
-+static int
-+x_errors_untrap(void)
-+{
-+ XSetErrorHandler(old_error_handler);
-+ return trapped_error_code;
-+}
-+
-+static void
-+x_update(DisplayState *ds, int x, int y, int w, int h)
-+{
-+ if (xscreen->have_shm)
-+ {
-+ XShmPutImage(xscreen->xdpy, xscreen->xwin, xscreen->xgc, xscreen->ximg,
-+ x, y, x, y, w, h, False);
-+ }
-+ else
-+ {
-+ XPutImage(xscreen->xdpy, xscreen->xwin, xscreen->xgc, xscreen->ximg,
-+ x, y, x, y, w, h);
-+ }
-+
-+ XSync(xscreen->xdpy, False);
-+}
-+
-+static void
-+x_resize(DisplayState *ds, int w, int h)
-+{
-+ Bool shm_success = False;
-+ int bitmap_pad;
-+ XSizeHints *size_hints;
-+
-+ if (xscreen->ximg != NULL)
-+ {
-+ if (xscreen->have_shm)
-+ {
-+ XShmDetach(xscreen->xdpy, &xscreen->shminfo);
-+ XDestroyImage (xscreen->ximg);
-+ shmdt(xscreen->shminfo.shmaddr);
-+ shmctl(xscreen->shminfo.shmid, IPC_RMID, 0);
-+ }
-+ else
-+ {
-+ if (xscreen->ximg->data)
-+ {
-+ free(xscreen->ximg->data);
-+ xscreen->ximg->data = NULL;
-+ }
-+
-+ XDestroyImage(xscreen->ximg);
-+ }
-+ }
-+
-+ if (xscreen->have_shm)
-+ {
-+ xscreen->ximg = XShmCreateImage(xscreen->xdpy,
-+ xscreen->xvisual,
-+ xscreen->xdepth,
-+ ZPixmap,
-+ NULL,
-+ &xscreen->shminfo,
-+ w, h );
-+
-+ xscreen->shminfo.shmid
-+ = shmget(IPC_PRIVATE,
-+ xscreen->ximg->bytes_per_line * h,
-+ IPC_CREAT|0777);
-+ xscreen->shminfo.shmaddr = xscreen->ximg->data
-+ = shmat(xscreen->shminfo.shmid, 0, 0);
-+
-+ if (xscreen->ximg->data == (char *)-1)
-+ {
-+ xscreen->have_shm = False;
-+ XDestroyImage(xscreen->ximg);
-+ shmctl(xscreen->shminfo.shmid, IPC_RMID, 0);
-+ }
-+ else
-+ {
-+ xscreen->shminfo.readOnly = False;
-+ XShmAttach(xscreen->xdpy, &xscreen->shminfo);
-+ shm_success = True;
-+ }
-+ }
-+
-+ if (!shm_success)
-+ {
-+ bitmap_pad = ( xscreen->xdepth > 16 ) ?
-+ 32 : (( xscreen->xdepth > 8 )? 16 : 8 );
-+
-+ xscreen->ximg = XCreateImage( xscreen->xdpy,
-+ xscreen->xvisual,
-+ xscreen->xdepth,
-+ ZPixmap, 0, 0,
-+ w,
-+ h,
-+ bitmap_pad,
-+ 0);
-+
-+ xscreen->ximg->data
-+ = malloc( xscreen->ximg->bytes_per_line * h );
-+ }
-+
-+ XResizeWindow(xscreen->xdpy, xscreen->xwin, w, h);
-+
-+ /* Ask the WM to keep our size static */
-+ size_hints = XAllocSizeHints();
-+ size_hints->max_width = size_hints->min_width = w;
-+ size_hints->max_height = size_hints->min_height = h;
-+ size_hints->flags = PMinSize|PMaxSize;
-+ XSetWMNormalHints(xscreen->xdpy, xscreen->xwin, size_hints);
-+ XFree(size_hints);
-+
-+ XMapWindow(xscreen->xdpy, xscreen->xwin);
-+
-+ XSync(xscreen->xdpy, False);
-+
-+ xscreen->xwin_width = w;
-+ xscreen->xwin_height = h;
-+
-+ if (1) // (ds->depth == xscreen->xdepth)
-+ {
-+ ds->data = xscreen->ximg->data;
-+ }
-+ else
-+ {
-+ xscreen->fb_data = malloc(w*h*(ds->depth>>3));
-+ ds->data = xscreen->fb_data;
-+ }
-+
-+ ds->linesize = xscreen->ximg->bytes_per_line;
-+ ds->depth = (xscreen->xdepth >= 24) ? 32 : xscreen->xdepth;
-+ ds->bgr = 0;
-+
-+#if 0
-+ if (ds->depth == 32 && screen->format->Rshift == 0) {
-+ ds->bgr = 1;
-+ } else {
-+ ds->bgr = 0;
-+ }
-+#endif
-+
-+ ds->width = w;
-+ ds->height = h;
-+
-+}
-+
-+static void
-+x_refresh(DisplayState *ds)
-+{
-+ vga_hw_update();
-+}
-+
-+static int
-+x_listen_poll(void *opaque)
-+{
-+ return XPending(xscreen->xdpy);
-+}
-+
-+static void
-+x_grab(void)
-+{
-+ static Bool grab = False;
-+
-+ if (!grab)
-+ {
-+ if (XGrabPointer (xscreen->xdpy, xscreen->xwin,
-+ True,
-+ NoEventMask,
-+ GrabModeAsync,
-+ GrabModeAsync,
-+ xscreen->xwin, None, CurrentTime) == 0
-+ && XGrabKeyboard (xscreen->xdpy, xscreen->xwin, True,
-+ GrabModeAsync,
-+ GrabModeAsync,
-+ CurrentTime) == 0)
-+ {
-+ grab = True;
-+ XStoreName(xscreen->xdpy, xscreen->xwin,
-+ "QEmu (ctrl+shift releases mouse and keyboard )");
-+ }
-+ }
-+ else
-+ {
-+ XUngrabPointer (xscreen->xdpy, CurrentTime);
-+ XUngrabKeyboard (xscreen->xdpy, CurrentTime);
-+ grab = False;
-+ XStoreName(xscreen->xdpy, xscreen->xwin,
-+ "QEmu (ctrl+shift grabs mouse and keyboard )");
-+ }
-+}
-+
-+static void
-+x_listen_read(void *opaque)
-+{
-+ XEvent xev;
-+ DisplayState *ds = opaque;
-+ Bool grabbed = False;
-+ static int last_x = 0, last_y = 0, button_state = 0, state;
-+
-+ if (XPending(xscreen->xdpy))
-+ {
-+ XNextEvent(xscreen->xdpy, &xev);
-+
-+ switch (xev.type)
-+ {
-+ case EnterNotify:
-+ case LeaveNotify:
-+ break;
-+ case FocusIn:
-+ if (!kbd_mouse_is_absolute())
-+ x_grab();
-+ break;
-+ case FocusOut:
-+ break;
-+ case Expose:
-+ while (XCheckTypedWindowEvent(xscreen->xdpy, xev.xexpose.window,
-+ Expose, &xev));
-+ x_update(ds, 0, 0,
-+ xscreen->xwin_width,
-+ xscreen->xwin_height);
-+ break;
-+ case KeyRelease:
-+ if ((XKeycodeToKeysym(xscreen->xdpy,
-+ xev.xkey.keycode,0) == XK_Shift_L
-+ || XKeycodeToKeysym(xscreen->xdpy,
-+ xev.xkey.keycode,0) == XK_Shift_R)
-+ && (xev.xkey.state & ControlMask))
-+ {
-+ x_grab();
-+ break;
-+ }
-+ case KeyPress:
-+ {
-+ int keycode = xev.xkey.keycode-8; /* X adds 8 to keycode */
-+
-+ /* FIXME: LUT needed here me thinks */
-+
-+ if (keycode & 0x80) /* Extended */
-+ kbd_put_keycode(0xe0);
-+
-+ if (xev.type == KeyPress)
-+ kbd_put_keycode(keycode & 0x7f);
-+ else
-+ kbd_put_keycode(keycode | 0x80);
-+ }
-+ break;
-+ case ButtonPress:
-+ case ButtonRelease:
-+ case MotionNotify:
-+ {
-+ int ev_state, ev_x, ev_y, dx, dy;
-+
-+ state = 0;
-+
-+ if (xev.type == MotionNotify)
-+ {
-+ ev_state = xev.xmotion.state;
-+ ev_x = xev.xmotion.x;
-+ ev_y = xev.xmotion.y;
-+
-+ if (ev_state & Button1Mask)
-+ state |= MOUSE_EVENT_LBUTTON;
-+ if (ev_state & Button2Mask)
-+ state |= MOUSE_EVENT_RBUTTON;
-+ if (ev_state & Button3Mask)
-+ state |= MOUSE_EVENT_MBUTTON;
-+
-+ /* Touchscreen dont send motion notifys */
-+ if (kbd_mouse_is_absolute() && state == 0)
-+ break;
-+ }
-+ else
-+ {
-+ ev_state = xev.xbutton.state;
-+ ev_x = xev.xbutton.x;
-+ ev_y = xev.xbutton.y;
-+
-+ if (xev.type == ButtonPress)
-+ {
-+ if (xev.xbutton.button == Button1)
-+ state |= MOUSE_EVENT_LBUTTON;
-+ if (xev.xbutton.state == Button1)
-+ state |= MOUSE_EVENT_RBUTTON;
-+ if (xev.xbutton.state & Button3)
-+ state |= MOUSE_EVENT_MBUTTON;
-+ }
-+ }
-+
-+ if (kbd_mouse_is_absolute())
-+ {
-+ dx = ev_x * 0x7FFF / xscreen->xwin_width;
-+ dy = ev_y * 0x7FFF / xscreen->xwin_height;
-+ }
-+ else
-+ {
-+ dx = ev_x - last_x;
-+ dy = ev_y - last_y;
-+ }
-+
-+ kbd_mouse_event(dx, dy, 0, state);
-+
-+ last_x = ev_x;
-+ last_y = ev_y;
-+ }
-+ break;
-+ default:
-+ break;
-+
-+ }
-+ }
-+ return;
-+}
-+
-+void
-+x_display_init(DisplayState *ds, int full_screen, unsigned long parent_xid)
-+{
-+ Cursor empty_cursor;
-+ Pixmap cursor_pxm;
-+ XColor col;
-+ XSetWindowAttributes attr;
-+
-+ xscreen = malloc(sizeof(XHostScreen));
-+ memset(xscreen, 0, sizeof(XHostScreen));
-+
-+ if ((xscreen->xdpy = XOpenDisplay(getenv("DISPLAY"))) == NULL)
-+ {
-+ fprintf(stderr, "\nqemu cannot open host display. Is DISPLAY set?\n");
-+ exit(-1);
-+ }
-+
-+ xscreen->xscreen = DefaultScreen(xscreen->xdpy);
-+ xscreen->xwinroot = RootWindow(xscreen->xdpy, xscreen->xscreen);
-+ xscreen->xgc = XCreateGC(xscreen->xdpy, xscreen->xwinroot, 0, NULL);
-+ xscreen->xdepth = DefaultDepth(xscreen->xdpy, xscreen->xscreen);
-+ xscreen->xvisual = DefaultVisual(xscreen->xdpy, xscreen->xscreen);
-+
-+ attr.event_mask = ButtonPressMask|ButtonReleaseMask|PointerMotionMask
-+ |KeyPressMask|KeyReleaseMask|ExposureMask
-+ |FocusChangeMask|EnterWindowMask|LeaveWindowMask;
-+
-+ xscreen->xwin = XCreateWindow(xscreen->xdpy,
-+ xscreen->xwinroot,
-+ 0,0,640,480,
-+ 0,
-+ CopyFromParent,
-+ CopyFromParent,
-+ CopyFromParent,
-+ CWEventMask,
-+ &attr);
-+
-+ xscreen->have_shm = True;
-+
-+ if (!XShmQueryExtension(xscreen->xdpy) || getenv("QEMU_X_NO_SHM"))
-+ {
-+ xscreen->have_shm = False;
-+ }
-+ else
-+ {
-+ XShmSegmentInfo shminfo;
-+
-+ shminfo.shmid=shmget(IPC_PRIVATE, 1, IPC_CREAT|0777);
-+ shminfo.shmaddr=shmat(shminfo.shmid,0,0);
-+ shminfo.readOnly=True;
-+
-+ x_errors_trap();
-+
-+ XShmAttach(xscreen->xdpy, &shminfo);
-+ XSync(xscreen->xdpy, False);
-+
-+ if (x_errors_untrap())
-+ {
-+ fprintf(stderr, "QEmu unable to use SHM XImages\n");
-+ xscreen->have_shm = False;
-+ }
-+
-+ shmdt(shminfo.shmaddr);
-+ shmctl(shminfo.shmid, IPC_RMID, 0);
-+ }
-+
-+ if (!kbd_mouse_is_absolute())
-+ {
-+ /* Only hide cursor if were not a touchscreen */
-+ cursor_pxm = XCreatePixmap (xscreen->xdpy, xscreen->xwinroot, 1, 1, 1);
-+ memset (&col, 0, sizeof (col));
-+ empty_cursor = XCreatePixmapCursor (xscreen->xdpy,
-+ cursor_pxm, cursor_pxm,
-+ &col, &col, 1, 1);
-+ XDefineCursor (xscreen->xdpy, xscreen->xwin, empty_cursor);
-+ XFreePixmap (xscreen->xdpy, cursor_pxm);
-+ }
-+
-+ ds->dpy_update = x_update;
-+ ds->dpy_resize = x_resize;
-+ ds->dpy_refresh = x_refresh;
-+
-+ if ((qemu_set_fd_handler2 (ConnectionNumber(xscreen->xdpy),
-+ x_listen_poll, x_listen_read, NULL, ds)) == -1)
-+ exit(-1);
-+
-+ x_resize(ds, 640, 480);
-+}
diff --git a/packages/qemu/files/trunk_nodocs.patch b/packages/qemu/files/trunk_nodocs.patch
deleted file mode 100644
index 0bf8fcb593..0000000000
--- a/packages/qemu/files/trunk_nodocs.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-diff -Naur trunk_orig/Makefile trunk/Makefile
---- trunk_orig/Makefile 2006-06-06 10:09:03.000000000 +0300
-+++ trunk/Makefile 2006-06-06 17:18:59.000000000 +0300
-@@ -18,7 +18,8 @@
- LDFLAGS+=-static
- endif
- ifdef BUILD_DOCS
--DOCS=qemu-doc.html qemu-tech.html qemu.1 qemu-img.1
-+#DOCS=qemu-doc.html qemu-tech.html qemu.1 qemu-img.1
-+DOCS=
- else
- DOCS=
- endif
-@@ -58,10 +59,10 @@
-
- install-doc: $(DOCS)
- mkdir -p "$(DESTDIR)$(docdir)"
-- $(INSTALL) -m 644 qemu-doc.html qemu-tech.html "$(DESTDIR)$(docdir)"
-+ #$(INSTALL) -m 644 qemu-doc.html qemu-tech.html "$(DESTDIR)$(docdir)"
- ifndef CONFIG_WIN32
- mkdir -p "$(DESTDIR)$(mandir)/man1"
-- $(INSTALL) qemu.1 qemu-img.1 "$(DESTDIR)$(mandir)/man1"
-+ #$(INSTALL) qemu.1 qemu-img.1 "$(DESTDIR)$(mandir)/man1"
- endif
-
- install: all $(if $(BUILD_DOCS),install-doc)
-@@ -151,10 +152,10 @@
- $(datadir)/ppc_rom.bin \
- $(datadir)/video.x \
- $(datadir)/proll.elf \
-- $(datadir)/linux_boot.bin \
-- $(docdir)/qemu-doc.html \
-- $(docdir)/qemu-tech.html \
-- $(mandir)/man1/qemu.1 $(mandir)/man1/qemu-img.1 )
-+ $(datadir)/linux_boot.bin
-+# $(docdir)/qemu-doc.html \
-+# $(docdir)/qemu-tech.html \
-+# $(mandir)/man1/qemu.1 $(mandir)/man1/qemu-img.1 )
-
- ifneq ($(wildcard .depend),)
- include .depend
diff --git a/packages/rxvt-unicode/rxvt-unicode_7.7.bb b/packages/rxvt-unicode/rxvt-unicode_7.7.bb
index 532fe2da63..7eaf109312 100644
--- a/packages/rxvt-unicode/rxvt-unicode_7.7.bb
+++ b/packages/rxvt-unicode/rxvt-unicode_7.7.bb
@@ -10,7 +10,7 @@ PACKAGES =+ "${PN}-daemon ${PN}-control"
FILES_${PN}-daemon = "${bindir}/rxvtd"
FILES_${PN}-control = "${bindir}/rxvtc"
-SRC_URI = "http://dist.schmorp.de/rxvt-unicode/rxvt-unicode-${PV}.tar.bz2 \
+SRC_URI = "http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-${PV}.tar.bz2 \
file://xwc.patch;patch=1 \
file://signedchar.patch;patch=1"
PR = "r0"
diff --git a/packages/rxvt-unicode/rxvt-unicode_7.9.bb b/packages/rxvt-unicode/rxvt-unicode_7.9.bb
index 8356b0589e..5903d08d62 100644
--- a/packages/rxvt-unicode/rxvt-unicode_7.9.bb
+++ b/packages/rxvt-unicode/rxvt-unicode_7.9.bb
@@ -10,7 +10,7 @@ PACKAGES =+ "${PN}-daemon ${PN}-control"
FILES_${PN}-daemon = "${bindir}/rxvtd"
FILES_${PN}-control = "${bindir}/rxvtc"
-SRC_URI = "http://dist.schmorp.de/rxvt-unicode/rxvt-unicode-${PV}.tar.bz2 \
+SRC_URI = "http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-${PV}.tar.bz2 \
file://xwc.patch;patch=1 \
file://signedchar.patch;patch=1"
PR = "r0"
diff --git a/packages/rxvt/rxvt-2.8.0/.mtn2git_empty b/packages/rxvt/rxvt-2.8.0/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/rxvt/rxvt-2.8.0/.mtn2git_empty
diff --git a/packages/rxvt/rxvt-2.8.0/include.patch b/packages/rxvt/rxvt-2.8.0/include.patch
new file mode 100644
index 0000000000..f7542843b1
--- /dev/null
+++ b/packages/rxvt/rxvt-2.8.0/include.patch
@@ -0,0 +1,16 @@
+diff -urN rxvt.orig/src/rxvtlib.h.in rxvt/src/rxvtlib.h.in
+--- rxvt.orig/src/rxvtlib.h.in 2003-03-25 19:13:53.000000000 -0500
++++ rxvt/src/rxvtlib.h.in 2004-04-03 20:35:13.000000000 -0500
+@@ -43,7 +43,11 @@
+ #include <sys/wait.h>
+ #include <sys/stat.h>
+
+-#include <X11/Intrinsic.h> /* Xlib, Xutil, Xresource, Xfuncproto */
++#include <X11/Xlib.h>
++#include <X11/Xutil.h>
++#include <X11/Xresource.h>
++#include <X11/Xproto.h>
++#include <X11/region.h>
+
+ #ifdef ENABLE_XFT
+ #include <X11/Xft/Xft.h>
diff --git a/packages/rxvt/rxvt_2.8.0.bb b/packages/rxvt/rxvt_2.8.0.bb
new file mode 100644
index 0000000000..9e4870022f
--- /dev/null
+++ b/packages/rxvt/rxvt_2.8.0.bb
@@ -0,0 +1,41 @@
+DESCRIPTION = "Well known terminal emulator"
+SECTION = "x11/utils"
+PR = "r1"
+DEPENDS = "virtual/libx11 libxft"
+LICENSE = "GPL"
+SRC_URI = "${HANDHELDS_CVS};module=apps/rxvt \
+ file://include.patch;patch=1"
+
+inherit autotools update-alternatives
+
+ALTERNATIVE_NAME = "x-terminal-emulator"
+ALTERNATIVE_PATH = "${bindir}/rxvt-2.8.0"
+
+S = ${WORKDIR}/rxvt
+
+EXTRA_OECONF = "--disable-menubar --disable-xim \
+ --enable-utmp --enable-wtmp --enable-lastlog \
+ --disable-strings --with-term=rxvt --enable-keepscrolling \
+ --with-xft --with-name=rxvt --enable-frills \
+ --enable-swapscreen --enable-transparency \
+ --with-codesets=eu,jp \
+ --enable-cursor-blink --enable-pointer-blank \
+ --enable-text-blink --enable-plain-scroll \
+ --enable-combining --enable-shared \
+ --with-x=${STAGING_LIBDIR}/.."
+
+EXTRA_OEMAKE = "'XINC=-I${STAGING_INCDIR}' \
+ 'XLIB=-L${STAGING_LIBDIR} -lX11 -lXft'"
+
+do_configure () {
+ mv autoconf/configure.in . || true
+ rm autoconf/libtool.m4
+ libtoolize --force
+ autotools_do_configure
+ echo '#define RXVT_UTMP_FILE "${localstatedir}/run/utmp"' >> config.h
+ echo '#define RXVT_WTMP_FILE "${localstatedir}/log/wtmp"' >> config.h
+ echo '#define RXVT_LASTLOG_FILE "${localstatedir}/log/lastlog"' >> config.h
+ echo '#define HAVE_XLOCALE 1' >> config.h
+ echo '#define HAVE_UTMP_H 1' >> config.h
+ echo '#define HAVE_TTYSLOT 1' >> config.h
+}
diff --git a/packages/setserial/setserial_2.17.bb b/packages/setserial/setserial_2.17.bb
index 5d774ff6a3..4646df818a 100644
--- a/packages/setserial/setserial_2.17.bb
+++ b/packages/setserial/setserial_2.17.bb
@@ -1,5 +1,5 @@
SECTION = "console/utils"
-SRC_URI = "ftp://tsx-11.mit.edu/pub/linux/sources/sbin/setserial-2.17.tar.gz"
+SRC_URI = "http://fresh.t-systems-sfr.com/linux/src/setserial-2.17.tar.gz"
LICENSE = "GPL"
PR = "r1"
inherit autotools
diff --git a/packages/sysvinit/sysvinit/angstrom/rc b/packages/sysvinit/sysvinit/angstrom/rc
index a355ea05cc..fb49720455 100755
--- a/packages/sysvinit/sysvinit/angstrom/rc
+++ b/packages/sysvinit/sysvinit/angstrom/rc
@@ -18,6 +18,11 @@
. /etc/default/rcS
export VERBOSE
+if [ $(($num_steps + $first_step)) -lt 1 ]; then
+ numsteps="10"
+ first_step="1"
+fi
+
startup_progress() {
step=$(($step + $step_change))
progress=$(($step * $progress_size / $num_steps + $first_step))
diff --git a/packages/sysvinit/sysvinit_2.86.bb b/packages/sysvinit/sysvinit_2.86.bb
index d9cfaff2cb..5fa21607e0 100644
--- a/packages/sysvinit/sysvinit_2.86.bb
+++ b/packages/sysvinit/sysvinit_2.86.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "System-V like init."
SECTION = "base"
LICENSE = "GPL"
HOMEPAGE = "http://freshmeat.net/projects/sysvinit/"
-PR = "r29"
+PR = "r30"
# USE_VT and SERIAL_CONSOLE are generally defined by the MACHINE .conf.
# Set PACKAGE_ARCH appropriately.
diff --git a/packages/tasks/task-base.bb b/packages/tasks/task-base.bb
index 9b1f22f2d3..366da828bd 100644
--- a/packages/tasks/task-base.bb
+++ b/packages/tasks/task-base.bb
@@ -1,5 +1,5 @@
DESCRIPTION = "Merge machine and distro options to create a basic machine task/package"
-PR = "r12"
+PR = "r13"
PACKAGES = "task-base \
task-base-minimal \
@@ -17,6 +17,8 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
# apm
# keyboard
# touchscreen
+# screen
+# pci
# Valid only in DISTRO_FEATURES:
#
diff --git a/packages/tasks/task-ossie.bb b/packages/tasks/task-ossie.bb
index cc14213441..9d8537d0b9 100644
--- a/packages/tasks/task-ossie.bb
+++ b/packages/tasks/task-ossie.bb
@@ -3,13 +3,16 @@ DESCRIPTION = "Meta-package for OSSIE Software Defined Radio (SDR)"
ALLOW_EMPTY = 1
PR = "r0"
-OSSIE_INSTALL = "screen procps xerces-c omniorb usrp ossiecf ossie-standardinterfaces ossie-nodebooter"
+OSSIE_BASE = "screen procps xerces-c omniorb usrp"
-OSSIE_COMPONENTS = "ossie-gpp-device ossie-usrp-device ossie-demo ossie-channeldemo ossie-rxdemo"
+OSSIE_PLATFORM = "ossiecf ossie-standardinterfaces ossie-nodebooter ossie-c-wavloader"
+OSSIE_COMPONENTS = "ossie-gpp-device ossie-usrp-device ossie-soundout-device ossie-demo ossie-channeldemo ossie-rxdemo"
-RDEPENDS = "${OSSIE_INSTALL} ${OSSIE_COMPONENTS}"
-IPKG_INSTALL = "${OSSIE_INSTALL}"
+RDEPENDS = "${OSSIE_BASE} ${OSSIE_PLATFORM} ${OSSIE_COMPONENTS}"
+
+IPKG_INSTALL = "${OSSIE_BASE} ${OSSIE_PLATFORM} ${OSSIE_COMPONENTS}"
LICENSE = MIT
+
diff --git a/packages/tasks/task-pivotboot.bb b/packages/tasks/task-pivotboot.bb
index 32e319cae3..a1885170e2 100644
--- a/packages/tasks/task-pivotboot.bb
+++ b/packages/tasks/task-pivotboot.bb
@@ -10,15 +10,7 @@ PACKAGES = "${PN}"
MODUTILS ?= "24 26"
-def bootstrap_modutils_rdepends(d):
- import bb
- m = bb.data.getVar('MODUTILS', d, 1)
- r = []
- if '24' in m:
- r.append('modutils-depmod')
- if '26' in m:
- r.append('module-init-tools-depmod')
- return ' '.join(r)
+require task-bootstrap.inc
HOTPLUG ?= "linux-hotplug"
diff --git a/packages/tinymail/files/camel-lite-configure-hack.patch b/packages/tinymail/files/camel-lite-configure-hack.patch
new file mode 100644
index 0000000000..941f367434
--- /dev/null
+++ b/packages/tinymail/files/camel-lite-configure-hack.patch
@@ -0,0 +1,18 @@
+--- /tmp/configure.ac 2006-11-10 12:33:24.000000000 +0100
++++ trunk/libtinymail-camel/camel-lite/configure.ac 2006-11-10 12:33:56.238554000 +0100
+@@ -157,15 +157,6 @@
+
+ CFLAGS="$CFLAGS -I$srcdir"
+
+-AC_MSG_CHECKING(preferred charset formats for system iconv)
+-AC_RUN_IFELSE([AC_LANG_SOURCE([[
+-#define CONFIGURE_IN
+-#include "iconv-detect.c"
+-]])],[
+- AC_MSG_RESULT(found)
+-],[
+- AC_MSG_RESULT(not found)
+-],[])
+
+ CFLAGS="$save_CFLAGS"
+ LIBS="$save_LIBS"
diff --git a/packages/tinymail/tinymail_svn.bb b/packages/tinymail/tinymail_svn.bb
index be12b8ae66..037e78d119 100644
--- a/packages/tinymail/tinymail_svn.bb
+++ b/packages/tinymail/tinymail_svn.bb
@@ -1,18 +1,19 @@
SECTION = "x11/utils"
-DEPENDS = "gtk+ glib-2.0 gnome-vfs-dbus libgnomeui eds-dbus"
-DESCRIPTION = "TinyMail is an attempt to create an E-mail client for mobile devices"
+DEPENDS = "gtk+ glib-2.0 gnome-vfs-dbus libgnomeui eds-dbus libiconv"
+DESCRIPTION = "TinyMail is an attempt to create an E-mail framework for mobile devices"
LICENSE = "GPL"
PV = "0.0+svn${SRCDATE}"
-PR = "r1"
+PR = "r2"
EXTRA_OECONF=" --disable-gnome --with-platform=gpe --with-html-component=none"
SRC_URI = "svn://svn.tinymail.org/svn/tinymail/;module=trunk;proto=https \
- file://gtk-doc.m4 \
+ file://camel-lite-configure-hack.patch;patch=1 \
+ file://gtk-doc.m4 \
file://gtk-doc.make"
-inherit pkgconfig autotools
+inherit pkgconfig autotools
S = "${WORKDIR}/trunk"
do_configure_prepend() {
@@ -21,3 +22,34 @@ do_configure_prepend() {
install ${WORKDIR}/gtk-doc.make ./
}
+
+PACKAGES =+ "lib${PN}-gpe lib${PN}-gpe-dev \
+ tinymail-camel-lite tinymail-camel-lite-dev tinymail-camel-lite-dbg \
+ libtinymailui-gtk libtinymailui libtinymail-camel lib${PN}"
+
+FILES_lib${PN} = "${libdir}/lib*.so.*"
+FILES_libtinymailui = "${libdir}/libtinymailui*.so.*"
+FILES_libtinymailui-gtk = "${libdir}/libtinymailui-gtk*.so.*"
+
+FILES_libtinymail-camel = "${libdir}/libtinymail-camel*.so.*"
+
+FILES_lib${PN}-gpe = "${libdir}/libtinymail-gpe*.so.*"
+FILES_lib${PN}-gpe-dev = "${libdir}/libtinymail-gpe*.so \
+ ${libdir}/libtinymail-gpe*.a \
+ ${libdir}/libtinymail-gpe*.la"
+
+LEAD_SONAME_tinymail-camel-lite = "libcamel-lite"
+FILES_tinymail-camel-lite += "${libdir}/libcamel*.so.* \
+ ${libdir}/camel-lite-1.2/camel-providers/*.so \
+ ${libdir}/camel-lite-1.2/camel-providers/*.urls "
+FILES_tinymail-camel-lite-dev += "${libdir}/libcamel-lite*.so \
+ ${libdir}/libcamel-lite*.a \
+ ${libdir}/libcamel-lite*.la \
+ ${libdir}/camel-lite-1.2/camel-providers/*.la \
+ ${libdir}/camel-lite-1.2/camel-providers/*.a "
+FILES_tinymail-camel-lite-dbg += "${libdir}/camel-lite-1.2/camel-providers/.debug"
+
+PARALLEL_MAKE = ""
+LDFLAGS += "-liconv"
+
+
diff --git a/packages/tslib/tslib/h2200/tslib.sh b/packages/tslib/tslib/h2200/tslib.sh
index c78f2169c7..b096bfb96e 100644
--- a/packages/tslib/tslib/h2200/tslib.sh
+++ b/packages/tslib/tslib/h2200/tslib.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-TSLIB_TSDEVICE=/dev/input/touchsreen0
+TSLIB_TSDEVICE=/dev/input/touchscreen0
TSLIB_CONFFILE=/etc/ts.conf
case `uname -r` in
diff --git a/packages/tslib/tslib/usec_fix.patch b/packages/tslib/tslib/usec_fix.patch
deleted file mode 100644
index a791b39a3c..0000000000
--- a/packages/tslib/tslib/usec_fix.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: work/tslib-0.0cvs20051201-r32/tslib/plugins/collie-raw.c
-===================================================================
---- tslib.orig/plugins/collie-raw.c 2005-12-04 10:09:33.000000000 +0100
-+++ tslib/plugins/collie-raw.c 2005-12-04 10:16:05.000000000 +0100
-@@ -29,7 +29,7 @@
- #ifdef DEBUG
- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure);
- #endif /*DEBUG*/
-- samp->tv.tv_usec = collie_evt->millisecs % 1000;
-+ samp->tv.tv_usec = (collie_evt->millisecs % 1000) * 1000;
- samp->tv.tv_sec = collie_evt->millisecs / 1000;
- samp++;
- collie_evt++;
-Index: work/tslib-0.0cvs20051201-r32/tslib/plugins/corgi-raw.c
-===================================================================
---- tslib.orig/plugins/corgi-raw.c 2005-12-04 10:10:19.000000000 +0100
-+++ tslib/plugins/corgi-raw.c 2005-12-04 10:16:15.000000000 +0100
-@@ -29,7 +29,7 @@
- #ifdef DEBUG
- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure);
- #endif /*DEBUG*/
-- samp->tv.tv_usec = corgi_evt->millisecs % 1000;
-+ samp->tv.tv_usec = (corgi_evt->millisecs % 1000) * 1000;
- samp->tv.tv_sec = corgi_evt->millisecs / 1000;
- samp++;
- corgi_evt++;
diff --git a/packages/tslib/tslib_1.0.bb b/packages/tslib/tslib_1.0.bb
index afb0202262..3d2e3cd79e 100644
--- a/packages/tslib/tslib_1.0.bb
+++ b/packages/tslib/tslib_1.0.bb
@@ -4,7 +4,7 @@ AUTHOR = "Russell King w/ plugins by Chris Larson et. al."
SECTION = "base"
LICENSE = "LGPL"
-PR = "r2"
+PR = "r3"
SRC_URI = "http://download.berlios.de/tslib/tslib-1.0.tar.bz2 \
file://ts.conf \
diff --git a/packages/udev/files/mount.sh b/packages/udev/files/mount.sh
index 48c7844690..be8b3dfca9 100644
--- a/packages/udev/files/mount.sh
+++ b/packages/udev/files/mount.sh
@@ -50,6 +50,11 @@ if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ]; then
fi
# If the device isn't mounted at this point, it isn't configured in fstab
+ # 20061107: Small correction: The rootfs partition may be called just "rootfs" and not by
+ # its true device name so this would break. If the rootfs is mounted on two places
+ # during boot, it confuses the heck out of fsck. So Im auto-adding the root-partition
+ # to /etc/udev/mount.blacklist via postinst
+
cat /proc/mounts | awk '{print $1}' | grep -q "^$DEVNAME$" || automount
fi
diff --git a/packages/udev/udev_092.bb b/packages/udev/udev_092.bb
index 2de59fb018..3d33938fb1 100644
--- a/packages/udev/udev_092.bb
+++ b/packages/udev/udev_092.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "udev is a daemon which dynamically creates and removes device nod
the hotplug package and requires a kernel not older than 2.6.12."
RPROVIDES = "hotplug"
-PR = "r12"
+PR = "r13"
SRC_URI = "http://kernel.org/pub/linux/utils/kernel/hotplug/udev-${PV}.tar.gz \
file://noasmlinkage.patch;patch=1 \
@@ -57,3 +57,20 @@ do_install () {
do_install_append_h2200() {
install -m 0644 ${WORKDIR}/50-hostap_cs.rules ${D}${sysconfdir}/udev/rules.d/50-hostap_cs.rules
}
+
+pkg_postinst_append() {
+
+ # Add the root partition to mount.blacklist to avoid a bug in the auto-mounter,
+ # causing confusion with fsck on boot
+
+ while read dev mp fs junk
+ do
+ if test "$mp" = "/"
+ then
+ root_partition="$dev"
+ echo "$root_partition" >> /etc/udev/mount.blacklist
+ fi
+ done < /etc/fstab
+
+}
+
diff --git a/packages/udev/udev_097.bb b/packages/udev/udev_097.bb
index 3abd9b5fa7..497357775e 100644
--- a/packages/udev/udev_097.bb
+++ b/packages/udev/udev_097.bb
@@ -8,7 +8,7 @@ used to detect the type of a file system and read its metadata."
DESCRIPTION_libvolume-id-dev = "libvolume_id development headers, \
needed to link programs with libvolume_id."
-PR = "r3"
+PR = "r4"
SRC_URI = "http://kernel.org/pub/linux/utils/kernel/hotplug/udev-${PV}.tar.gz \
file://noasmlinkage.patch;patch=1 \
@@ -61,3 +61,21 @@ do_install () {
do_install_append_h2200() {
install -m 0644 ${WORKDIR}/50-hostap_cs.rules ${D}${sysconfdir}/udev/rules.d/50-hostap_cs.rules
}
+
+pkg_postinst_append() {
+
+ # Add the root partition to mount.blacklist to avoid a bug in the auto-mounter,
+ # causing confusion with fsck on boot
+
+ while read dev mp fs junk
+ do
+ if test "$mp" = "/"
+ then
+ root_partition="$dev"
+ echo "$root_partition" >> /etc/udev/mount.blacklist
+ fi
+ done < /etc/fstab
+
+}
+
+
diff --git a/packages/udev/udev_100.bb b/packages/udev/udev_100.bb
index 31d49d44d8..183d785627 100644
--- a/packages/udev/udev_100.bb
+++ b/packages/udev/udev_100.bb
@@ -9,7 +9,7 @@ used to detect the type of a file system and read its metadata."
DESCRIPTION_libvolume-id-dev = "libvolume_id development headers, \
needed to link programs with libvolume_id."
-PR = "r2"
+PR = "r3"
SRC_URI = "http://kernel.org/pub/linux/utils/kernel/hotplug/udev-${PV}.tar.gz \
file://noasmlinkage.patch;patch=1 \
@@ -62,3 +62,20 @@ do_install () {
do_install_append_h2200() {
install -m 0644 ${WORKDIR}/50-hostap_cs.rules ${D}${sysconfdir}/udev/rules.d/50-hostap_cs.rules
}
+
+pkg_postinst_append() {
+
+ # Add the root partition to mount.blacklist to avoid a bug in the auto-mounter,
+ # causing confusion with fsck on boot
+
+ while read dev mp fs junk
+ do
+ if test "$mp" = "/"
+ then
+ root_partition="$dev"
+ echo "$root_partition" >> /etc/udev/mount.blacklist
+ fi
+ done < /etc/fstab
+
+}
+
diff --git a/packages/vino/.mtn2git_empty b/packages/vino/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/vino/.mtn2git_empty
diff --git a/packages/vino/vino_2.16.0.bb b/packages/vino/vino_2.16.0.bb
new file mode 100644
index 0000000000..0780d0d409
--- /dev/null
+++ b/packages/vino/vino_2.16.0.bb
@@ -0,0 +1,13 @@
+DESCRIPTION = "Vino is an integrated VNC server for GNOME."
+LICENSE = "GPLv2"
+
+DEPENDS = "libgnomeui libglade gnome-keyring esound-gpe dbus-glib libxml2 gnutls gnome-vfs"
+
+inherit gnome gconf
+
+do_configure() {
+ libtoolize --force
+ gnu-configize
+ oe_runconf
+}
+
diff --git a/packages/xserver-common/xserver-common_1.11.bb b/packages/xserver-common/xserver-common_1.11.bb
new file mode 100644
index 0000000000..47f9f2b184
--- /dev/null
+++ b/packages/xserver-common/xserver-common_1.11.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "Common X11 scripts and support files"
+LICENSE = "GPL"
+SECTION = "x11"
+RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo xtscal"
+PR = "r0"
+
+PACKAGE_ARCH = "all"
+
+# we are using a gpe-style Makefile
+inherit gpe
+
+SRC_URI_append = " file://setDPI.sh \
+ file://calibrate_zaurusd.patch;patch=1 \
+ file://w100.patch;patch=1 \
+ file://poodle-xmodmap-2.6.patch;patch=1"
+
+do_install_append() {
+ install -m 0755 "${WORKDIR}/setDPI.sh" "${D}/etc/X11/Xinit.d/50setdpi"
+}
diff --git a/packages/xserver-common/xserver-common_1.12.bb b/packages/xserver-common/xserver-common_1.12.bb
new file mode 100644
index 0000000000..4d46020ba5
--- /dev/null
+++ b/packages/xserver-common/xserver-common_1.12.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Common X11 scripts and support files"
+LICENSE = "GPL"
+SECTION = "x11"
+RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo xtscal"
+PR = "r0"
+
+PACKAGE_ARCH = "all"
+
+# we are using a gpe-style Makefile
+inherit gpe
+
+SRC_URI_append = " file://setDPI.sh \
+ "
+
+do_install_append() {
+ install -m 0755 "${WORKDIR}/setDPI.sh" "${D}/etc/X11/Xinit.d/50setdpi"
+}
diff --git a/packages/xstroke/xstroke_0.6.bb b/packages/xstroke/xstroke_0.6.bb
index 24c03b633c..eb3e23df8b 100644
--- a/packages/xstroke/xstroke_0.6.bb
+++ b/packages/xstroke/xstroke_0.6.bb
@@ -5,7 +5,7 @@ PRIORITY = "optional"
DEPENDS = "virtual/libx11 xft libxtst libxpm"
PR = "r2"
-SRC_URI = "http://www.oesources.org/source/xstroke-0.6.tar.gz \
+SRC_URI = "http://www.oesources.org/source/current/xstroke-0.6.tar.gz \
file://auto-disable.patch;patch=1;pnum=0"
inherit autotools pkgconfig
diff --git a/site/arm-linux b/site/arm-linux
index ce15c881e8..5aa8a4cf5c 100644
--- a/site/arm-linux
+++ b/site/arm-linux
@@ -72,6 +72,7 @@ nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
# libnet
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=lil}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
# screen
screen_cv_sys_bcopy_overlap=${screen_cv_sys_bcopy_overlap=no}
diff --git a/site/arm-linux-gnueabi b/site/arm-linux-gnueabi
index ce15c881e8..77ce33f338 100644
--- a/site/arm-linux-gnueabi
+++ b/site/arm-linux-gnueabi
@@ -72,6 +72,7 @@ nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
# libnet
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=lil}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
# screen
screen_cv_sys_bcopy_overlap=${screen_cv_sys_bcopy_overlap=no}
@@ -305,3 +306,16 @@ dpkg_cv___va_copy=${ac_cv___va_copy=yes}
# enca
yeti_cv_func_scanf_modif_size_t=yes
+# clamav
+clamav_av_func_working_snprintf_long=${clamav_av_func_working_snprintf_long=yes}
+clamav_av_have_in_port_t=${clamav_av_have_in_port_t=yes}
+clamav_av_have_in_addr_t=${clamav_av_have_in_addr_t=yes}
+ac_cv_func_mmap_fixed_mapped=${ac_cv_func_mmap_fixed_mapped=yes}
+
+#dbus
+ac_cv_have_abstract_sockets=${ac_cv_have_abstract_sockets=no}
+
+# p3scan
+ac_cv_func_realloc_0_nonnull=${ac_cv_func_realloc_0_nonnull=yes}
+
+
diff --git a/site/arm-linux-uclibc b/site/arm-linux-uclibc
index 76a93f0f67..f33855f080 100644
--- a/site/arm-linux-uclibc
+++ b/site/arm-linux-uclibc
@@ -57,6 +57,7 @@ nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
# libnet
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=lil}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
# screen
screen_cv_sys_bcopy_overlap=${screen_cv_sys_bcopy_overlap=no}
diff --git a/site/arm-linux-uclibcgnueabi b/site/arm-linux-uclibcgnueabi
index 76a93f0f67..f33855f080 100644
--- a/site/arm-linux-uclibcgnueabi
+++ b/site/arm-linux-uclibcgnueabi
@@ -57,6 +57,7 @@ nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
# libnet
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=lil}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
# screen
screen_cv_sys_bcopy_overlap=${screen_cv_sys_bcopy_overlap=no}
diff --git a/site/armeb-linux b/site/armeb-linux
index 3b47d0cd96..d00d9189e4 100644
--- a/site/armeb-linux
+++ b/site/armeb-linux
@@ -60,6 +60,7 @@ nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
# libnet
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=big}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
# screen
screen_cv_sys_bcopy_overlap=${screen_cv_sys_bcopy_overlap=no}
diff --git a/site/armeb-linux-uclibc b/site/armeb-linux-uclibc
index 54c529b1ff..c399e64f0c 100644
--- a/site/armeb-linux-uclibc
+++ b/site/armeb-linux-uclibc
@@ -60,6 +60,7 @@ nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
# libnet
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=big}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
# screen
screen_cv_sys_bcopy_overlap=${screen_cv_sys_bcopy_overlap=no}
diff --git a/site/i486-linux b/site/i486-linux
index 6116fde046..114b8d7280 100644
--- a/site/i486-linux
+++ b/site/i486-linux
@@ -178,3 +178,7 @@ ac_cv_func_mmap_fixed_mapped=${ac_cv_func_mmap_fixed_mapped=yes}
# p3scan
ac_cv_func_realloc_0_nonnull=${ac_cv_func_realloc_0_nonnull=yes}
+
+# libnet
+ac_cv_lbl_unaligned_fail=${ac_cv_lbl_unaligned_fail=no}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
diff --git a/site/powerpc-linux b/site/powerpc-linux
index 806c011f64..75f8998f23 100644
--- a/site/powerpc-linux
+++ b/site/powerpc-linux
@@ -65,6 +65,7 @@ nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
# libnet
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=big}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
# screen
screen_cv_sys_bcopy_overlap=${screen_cv_sys_bcopy_overlap=no}
diff --git a/site/sh3-linux b/site/sh3-linux
index 8f7998a3de..c83ea6935a 100644
--- a/site/sh3-linux
+++ b/site/sh3-linux
@@ -64,6 +64,7 @@ nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
# libnet
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=lil}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
# screen
screen_cv_sys_bcopy_overlap=${screen_cv_sys_bcopy_overlap=no}
diff --git a/site/sh4-linux b/site/sh4-linux
index e2c4df0064..1dc9567ea8 100644
--- a/site/sh4-linux
+++ b/site/sh4-linux
@@ -288,3 +288,7 @@ clamav_av_func_working_snprintf_long=${clamav_av_func_working_snprintf_long=yes}
clamav_av_have_in_port_t=${clamav_av_have_in_port_t=yes}
clamav_av_have_in_addr_t=${clamav_av_have_in_addr_t=yes}
ac_cv_func_mmap_fixed_mapped=${ac_cv_func_mmap_fixed_mapped=yes}
+
+# libnet
+ac_cv_lbl_unaligned_fail=${ac_cv_lbl_unaligned_fail=no}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
diff --git a/site/x86_64-linux b/site/x86_64-linux
index dc7cb09069..1a2ea5a42f 100644
--- a/site/x86_64-linux
+++ b/site/x86_64-linux
@@ -11,6 +11,7 @@ ac_cv_func_setvbuf_reversed=${ac_cv_func_setvbuf_reversed=no}
ac_cv_func_stat_empty_string_bug=${ac_cv_func_stat_empty_string_bug=no}
ac_cv_func_stat_ignores_trailing_slash=${ac_cv_func_stat_ignores_trailing_slash=no}
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=lil}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
ac_cv_linux_vers=${ac_cv_linux_vers=2}
ac_cv_need_trio=${ac_cv_need_trio=no}
ac_cv_sizeof_char=${ac_cv_sizeof_char=1}
diff --git a/site/x86_64-linux-uclibc b/site/x86_64-linux-uclibc
index ba60564d0d..2bb77f763f 100644
--- a/site/x86_64-linux-uclibc
+++ b/site/x86_64-linux-uclibc
@@ -11,6 +11,7 @@ ac_cv_func_setvbuf_reversed=${ac_cv_func_setvbuf_reversed=no}
ac_cv_func_stat_empty_string_bug=${ac_cv_func_stat_empty_string_bug=no}
ac_cv_func_stat_ignores_trailing_slash=${ac_cv_func_stat_ignores_trailing_slash=no}
ac_cv_libnet_endianess=${ac_cv_libnet_endianess=lil}
+ac_libnet_have_packet_socket=${ac_libnet_have_packet_socket=yes}
ac_cv_linux_vers=${ac_cv_linux_vers=2}
ac_cv_need_trio=${ac_cv_need_trio=no}
ac_cv_sizeof_char=${ac_cv_sizeof_char=1}