summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRod Whitby <rod@whitby.id.au>2006-09-08 13:16:36 +0000
committerRod Whitby <rod@whitby.id.au>2006-09-08 13:16:36 +0000
commit39de7785ee49751de148f8f8db2fb916968e9d29 (patch)
tree1f85a2a7d520414ed63b12c57b432fde44bdb7d0
parentf8f71064816c7adb3c25705f136c46aad1d5cce6 (diff)
parent01ac74a79e791b4f2a1a3783ae827350fe7a8f92 (diff)
merge of 178beef16531b378ceadfaf06c189bf2d0cefe6b
and e469bf244bad64c70f8175ad971b2d9a83365bec
-rw-r--r--packages/base-files/base-files/mtx-2/.mtn2git_empty (renamed from packages/pcre/.mtn2git_empty)0
-rw-r--r--packages/base-files/base-files/mtx-2/fstab8
-rw-r--r--packages/base-files/base-files/mtx-2/profile25
-rw-r--r--packages/images/nylon-image-base.bb8
-rw-r--r--packages/images/nylon-image-extended.bb85
-rw-r--r--packages/images/nylon-image-extra.bb4
-rw-r--r--packages/images/nylon-image-standard.bb2
-rw-r--r--packages/initscripts/initscripts-1.0/mtx-1/.mtn2git_empty0
-rwxr-xr-xpackages/initscripts/initscripts-1.0/mtx-1/checkroot.sh167
-rwxr-xr-xpackages/initscripts/initscripts-1.0/mtx-1/mountall.sh46
-rw-r--r--packages/initscripts/initscripts-1.0/mtx-2/.mtn2git_empty0
-rwxr-xr-xpackages/initscripts/initscripts-1.0/mtx-2/checkroot.sh167
-rwxr-xr-xpackages/initscripts/initscripts-1.0/mtx-2/mountall.sh46
-rw-r--r--packages/kismet/kismet-2004-04-R1/mtx-2/.mtn2git_empty0
-rw-r--r--packages/kismet/kismet-2004-04-R1/mtx-2/kismet.conf328
-rw-r--r--packages/kismet/kismet_2004-04-R1.bb1
-rw-r--r--packages/libccaudio2/.mtn2git_empty0
-rw-r--r--packages/libccaudio2/libccaudio2-0.9.0/.mtn2git_empty0
-rw-r--r--packages/libccaudio2/libccaudio2-0.9.0/01-ccaudio-fixed-point.diff677
-rw-r--r--packages/libccaudio2/libccaudio2-0.9.0/02-ccaudio-stereo.diff54
-rw-r--r--packages/libccaudio2/libccaudio2-0.9.0/03-ccaudio-dtmf-reset.diff36
-rw-r--r--packages/libccaudio2/libccaudio2_0.9.0.bb24
-rw-r--r--packages/libpcre/.mtn2git_empty0
-rw-r--r--packages/libpcre/libpcre-native_4.4.bb4
-rw-r--r--packages/libpcre/libpcre_4.4.bb (renamed from packages/pcre/pcre_4.4.bb)22
-rw-r--r--packages/linux/handhelds-pxa-2.6/h5xxx/defconfig146
-rw-r--r--packages/linux/handhelds-pxa-2.6/ipaq-pxa270/defconfig2
-rw-r--r--packages/meta/nylon-feed.bb128
-rw-r--r--packages/meta/nylon-feed.inc68
-rw-r--r--packages/modutils/files/mtx-2/.mtn2git_empty0
-rw-r--r--packages/modutils/files/mtx-2/modules3
-rw-r--r--packages/net-snmp/files/mtx-2/.mtn2git_empty0
-rw-r--r--packages/net-snmp/files/mtx-2/snmpd.conf434
-rw-r--r--packages/netbase/netbase/mtx-2/.mtn2git_empty0
-rw-r--r--packages/netbase/netbase/mtx-2/interfaces29
-rw-r--r--packages/nylon/nylon-scripts_cvs.bb14
-rw-r--r--packages/nylon/nylon-statistics.bb7
-rw-r--r--packages/nylon/simple-firewall.bb5
-rw-r--r--packages/nylon/yamonenv.bb3
-rw-r--r--packages/pcre/pcre-native_4.4.bb4
-rw-r--r--packages/speex/speex_1.1.12+1.2beta1.bb38
-rw-r--r--packages/wpa-supplicant/files/mtx-2/.mtn2git_empty0
-rw-r--r--packages/wpa-supplicant/files/mtx-2/defconfig157
-rw-r--r--packages/wpa-supplicant/wpa-supplicant_0.3.8.bb1
-rw-r--r--packages/wpa-supplicant/wpa-supplicant_0.4.7.bb1
45 files changed, 2565 insertions, 179 deletions
diff --git a/packages/pcre/.mtn2git_empty b/packages/base-files/base-files/mtx-2/.mtn2git_empty
index e69de29bb2..e69de29bb2 100644
--- a/packages/pcre/.mtn2git_empty
+++ b/packages/base-files/base-files/mtx-2/.mtn2git_empty
diff --git a/packages/base-files/base-files/mtx-2/fstab b/packages/base-files/base-files/mtx-2/fstab
new file mode 100644
index 0000000000..f6f23ac2aa
--- /dev/null
+++ b/packages/base-files/base-files/mtx-2/fstab
@@ -0,0 +1,8 @@
+# /etc/fstab: static file system information. mtx-2
+#
+# <file system> <mount pt> <type> <options> <dump> <pass>
+rootfs / auto defaults 1 1
+tmpfs /var tmpfs size=10m 0 0
+proc /proc proc defaults 0 0
+devpts /dev/pts devpts mode=0620,gid=5 0 0
+usbdevfs /proc/bus/usb usbdevfs noauto 0 0
diff --git a/packages/base-files/base-files/mtx-2/profile b/packages/base-files/base-files/mtx-2/profile
new file mode 100644
index 0000000000..bedf2fc7d8
--- /dev/null
+++ b/packages/base-files/base-files/mtx-2/profile
@@ -0,0 +1,25 @@
+# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
+# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
+
+PATH="/usr/local/bin:/usr/bin:/bin"
+
+if [ "`id -u`" -eq 0 ]; then
+ PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin:
+fi
+if [ "$PS1" ]; then
+# works for bash and ash (no other shells known to be in use here)
+ PS1='\u@\h:\w\$ '
+fi
+
+if [ -d /etc/profile.d ]; then
+ for i in `ls /etc/profile.d/`; do
+ . /etc/profile.d/$i
+ done
+ unset i
+fi
+
+export PATH PS1
+
+umask 022
+
+alias ll="ls -lah" \ No newline at end of file
diff --git a/packages/images/nylon-image-base.bb b/packages/images/nylon-image-base.bb
index a4f6d17dd8..4e7711e6c7 100644
--- a/packages/images/nylon-image-base.bb
+++ b/packages/images/nylon-image-base.bb
@@ -1,3 +1,6 @@
+inherit image_ipk nylon-image
+LICENSE = MIT
+
export IMAGE_BASENAME = "nylon-base"
NYLON_BASE = "base-files base-passwd bash busybox \
@@ -7,8 +10,8 @@ NYLON_BASE = "base-files base-passwd bash busybox \
openssh sysvinit \
timezones tinylogin"
-DEPENDS = "virtual/kernel"
-RDEPENDS = "kernel modutils-depmod modutils-modinfo \
+DEPENDS += "virtual/kernel less nano"
+RDEPENDS = "kernel modutils-depmod modutils-modinfo less nano \
${NYLON_BASE} ${BOOTSTRAP_EXTRA_RDEPENDS}"
export IPKG_INSTALL = "${RDEPENDS}"
@@ -19,4 +22,3 @@ IMAGE_LINGUAS = ""
ROOTFS_POSTPROCESS_COMMAND = "rm -f ${IMAGE_ROOTFS}/tmp/zImage*"
inherit image_ipk nylon-image
-LICENSE = MIT
diff --git a/packages/images/nylon-image-extended.bb b/packages/images/nylon-image-extended.bb
new file mode 100644
index 0000000000..09ec4897f6
--- /dev/null
+++ b/packages/images/nylon-image-extended.bb
@@ -0,0 +1,85 @@
+LICENSE = MIT
+require nylon-image-base.bb
+require ../meta/nylon-feed.inc
+
+export IMAGE_BASENAME = "nylon-extended"
+
+NYLON_EXTENDED_DEPENDS = "${NYLON_FEED}"
+
+NYLON_EXTENDED_RDEPENDS = "\
+ hostap-modules-cs \
+ hostap-modules-pci \
+ modutils-depmod \
+ modutils-initscripts \
+ modutils-modinfo \
+ ntpdate \
+ ntp-bin \
+ ntp-tickadj \
+ openssh-scp \
+ openssh-ssh \
+ openssh-sshd \
+ perl-misc \
+ perl-module-autoloader \
+ perl-module-base \
+ perl-module-bytes \
+ perl-module-carp \
+ perl-module-config \
+ perl-module-constant \
+ perl-module-data-dumper \
+ perl-module-encode \
+ perl-module-encode-alias \
+ perl-module-encode-config \
+ perl-module-encode-encoding \
+ perl-module-encode-unicode \
+ perl-module-errno \
+ perl-module-exporter \
+ perl-module-exporter-heavy \
+ perl-module-fields \
+ perl-module-getopt-long \
+ perl-module-integer \
+ perl-module-io \
+ perl-module-io-handle \
+ perl-module-io-socket \
+ perl-module-io-socket-inet \
+ perl-module-io-socket-unix \
+ perl-module-locale \
+ perl-module-overload \
+ perl-module-posix \
+ perl-module-selectsaver \
+ perl-module-socket \
+ perl-module-strict \
+ perl-module-symbol \
+ perl-module-sys-hostname \
+ perl-module-vars \
+ perl-module-warnings \
+ perl-module-warnings-register \
+ perl-module-xsloader \
+"
+
+KERNEL_MODULES = " \
+ kernel-module-aes \
+ kernel-module-bridge \
+ kernel-module-ds \
+ kernel-module-fat \
+ kernel-module-mii \
+ kernel-module-pcmcia-core \
+ kernel-module-scsi-mod \
+ kernel-module-sd-mod \
+ kernel-module-usb-storage \
+ kernel-module-usb-ohci \
+ kernel-module-usbnet \
+ kernel-module-usbserial \
+ kernel-module-vfat \
+ kernel-module-yenta-socket \
+"
+
+
+DEPENDS += "${NYLON_EXTENDED_DEPENDS}"
+
+RDEPENDS += "${NYLON_EXTENDED_DEPENDS} ${KERNEL_MODULES} ${NYLON_EXTENDED_RDEPENDS}"
+
+RDEPENDS_append_mtx-1 = "\
+ kernel-module-au1x00-bi \
+ kernel-module-network-fd \
+ kernel-module-usbdcore"
+ kernel-module-usbdprocfs \
diff --git a/packages/images/nylon-image-extra.bb b/packages/images/nylon-image-extra.bb
index 194783af7e..e825b15e69 100644
--- a/packages/images/nylon-image-extra.bb
+++ b/packages/images/nylon-image-extra.bb
@@ -1,3 +1,5 @@
+LICENSE = MIT
+
require nylon-image-standard.bb
export IMAGE_BASENAME = "nylon-extra"
@@ -7,5 +9,3 @@ RDEPENDS = "\
netperf \
nylon-statistics \
openvpn"
-
-LICENSE = MIT
diff --git a/packages/images/nylon-image-standard.bb b/packages/images/nylon-image-standard.bb
index d7acf29142..c3c98ceca4 100644
--- a/packages/images/nylon-image-standard.bb
+++ b/packages/images/nylon-image-standard.bb
@@ -1,3 +1,4 @@
+LICENSE = MIT
require nylon-image-base.bb
export IMAGE_BASENAME = "nylon-standard"
@@ -26,4 +27,3 @@ DEPENDS += "hostap-modules ntp \
RDEPENDS += "hostap-modules-pci ntpdate \
${NYLON_STANDARD}"
-LICENSE = MIT
diff --git a/packages/initscripts/initscripts-1.0/mtx-1/.mtn2git_empty b/packages/initscripts/initscripts-1.0/mtx-1/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/initscripts/initscripts-1.0/mtx-1/.mtn2git_empty
diff --git a/packages/initscripts/initscripts-1.0/mtx-1/checkroot.sh b/packages/initscripts/initscripts-1.0/mtx-1/checkroot.sh
new file mode 100755
index 0000000000..e8ae039650
--- /dev/null
+++ b/packages/initscripts/initscripts-1.0/mtx-1/checkroot.sh
@@ -0,0 +1,167 @@
+#
+# 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
+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"
+ test "$mnt" != / && continue
+ rootopts="$opts"
+ test "$pass" = 0 -o "$pass" = "" && rootcheck=no
+ case "$opts" in
+ ro|ro,*|*,ro|*,ro,*)
+ rootmode=ro
+ ;;
+ esac
+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.
+#
+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/mtx-1/mountall.sh b/packages/initscripts/initscripts-1.0/mtx-1/mountall.sh
new file mode 100755
index 0000000000..4d12c06254
--- /dev/null
+++ b/packages/initscripts/initscripts-1.0/mtx-1/mountall.sh
@@ -0,0 +1,46 @@
+#
+# mountall.sh Mount all filesystems.
+#
+# Version: @(#)mountall.sh 2.83-2 01-Nov-2001 miquels@cistron.nl
+#
+. /etc/default/rcS
+
+#
+# Mount local filesystems in /etc/fstab. For some reason, people
+# might want to mount "proc" several times, and mount -v complains
+# about this. So we mount "proc" filesystems without -v.
+#
+test "$VERBOSE" != no && echo "Mounting local filesystems..."
+mount -a 2>/dev/null
+#t nonfs,nosmbfs,noncpfs 2>/dev/null
+
+#
+# We might have mounted something over /dev, see if /dev/initctl is there.
+#
+if test ! -p /dev/initctl
+then
+ rm -f /dev/initctl
+ mknod -m 600 /dev/initctl p
+fi
+kill -USR1 1
+
+#
+# Execute swapon command again, in case we want to swap to
+# a file on a now mounted filesystem.
+#
+doswap=yes
+case "`uname -r`" in
+ 2.[0123].*)
+ if grep -qs resync /proc/mdstat
+ then
+ doswap=no
+ fi
+ ;;
+esac
+if test $doswap = yes
+then
+ swapon -a 2> /dev/null
+fi
+
+: exit 0
+
diff --git a/packages/initscripts/initscripts-1.0/mtx-2/.mtn2git_empty b/packages/initscripts/initscripts-1.0/mtx-2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/initscripts/initscripts-1.0/mtx-2/.mtn2git_empty
diff --git a/packages/initscripts/initscripts-1.0/mtx-2/checkroot.sh b/packages/initscripts/initscripts-1.0/mtx-2/checkroot.sh
new file mode 100755
index 0000000000..e8ae039650
--- /dev/null
+++ b/packages/initscripts/initscripts-1.0/mtx-2/checkroot.sh
@@ -0,0 +1,167 @@
+#
+# 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
+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"
+ test "$mnt" != / && continue
+ rootopts="$opts"
+ test "$pass" = 0 -o "$pass" = "" && rootcheck=no
+ case "$opts" in
+ ro|ro,*|*,ro|*,ro,*)
+ rootmode=ro
+ ;;
+ esac
+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.
+#
+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/mtx-2/mountall.sh b/packages/initscripts/initscripts-1.0/mtx-2/mountall.sh
new file mode 100755
index 0000000000..4d12c06254
--- /dev/null
+++ b/packages/initscripts/initscripts-1.0/mtx-2/mountall.sh
@@ -0,0 +1,46 @@
+#
+# mountall.sh Mount all filesystems.
+#
+# Version: @(#)mountall.sh 2.83-2 01-Nov-2001 miquels@cistron.nl
+#
+. /etc/default/rcS
+
+#
+# Mount local filesystems in /etc/fstab. For some reason, people
+# might want to mount "proc" several times, and mount -v complains
+# about this. So we mount "proc" filesystems without -v.
+#
+test "$VERBOSE" != no && echo "Mounting local filesystems..."
+mount -a 2>/dev/null
+#t nonfs,nosmbfs,noncpfs 2>/dev/null
+
+#
+# We might have mounted something over /dev, see if /dev/initctl is there.
+#
+if test ! -p /dev/initctl
+then
+ rm -f /dev/initctl
+ mknod -m 600 /dev/initctl p
+fi
+kill -USR1 1
+
+#
+# Execute swapon command again, in case we want to swap to
+# a file on a now mounted filesystem.
+#
+doswap=yes
+case "`uname -r`" in
+ 2.[0123].*)
+ if grep -qs resync /proc/mdstat
+ then
+ doswap=no
+ fi
+ ;;
+esac
+if test $doswap = yes
+then
+ swapon -a 2> /dev/null
+fi
+
+: exit 0
+
diff --git a/packages/kismet/kismet-2004-04-R1/mtx-2/.mtn2git_empty b/packages/kismet/kismet-2004-04-R1/mtx-2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/kismet/kismet-2004-04-R1/mtx-2/.mtn2git_empty
diff --git a/packages/kismet/kismet-2004-04-R1/mtx-2/kismet.conf b/packages/kismet/kismet-2004-04-R1/mtx-2/kismet.conf
new file mode 100644
index 0000000000..233aec378a
--- /dev/null
+++ b/packages/kismet/kismet-2004-04-R1/mtx-2/kismet.conf
@@ -0,0 +1,328 @@
+# Kismet config file
+# Most of the "static" configs have been moved to here -- the command line
+# config was getting way too crowded and cryptic. We want functionality,
+# not continually reading --help!
+
+# Version of Kismet config
+version=2004.03.devel.a
+
+# Name of server (Purely for organiational purposes)
+servername=Kismet
+
+# User to setid to (should be your normal user)
+suiduser=your_user_here
+
+# Sources are defined as:
+# source=cardtype,interface,name[,initialchannel]
+# Card types and required drivers are listed in the README.
+# The initial channel is optional, if hopping is not enabled it can be used
+# to set the channel the interface listens on.
+source=hostap,wlan0,wlan0
+source=hostap,wlan1,wlan1
+# Other common source configs:
+# source=prism2,wlan0,prism2source
+# source=prism2_avs,wlan0,newprism2source
+# source=orinoco,eth0,orinocosource
+# An example source line with an initial channel:
+# source=orinoco,eth0,silver,11
+
+# Comma-separated list of sources to enable. This is only needed if you defined
+# multiple sources and only want to enable some of them. By default, all defined
+# sources are enabled.
+# For example:
+# enablesources=prismsource,ciscosource
+
+# Do we channelhop?
+channelhop=true
+
+# How many channels per second do we hop? (1-10)
+channelvelocity=5
+
+# By setting the dwell time for channel hopping we override the channelvelocity
+# setting above and dwell on each channel for the given number of seconds.
+#channeldwell=10
+
+# Do we split channels between cards on the same spectrum? This means if
+# multiple 802.11b capture sources are defined, they will be offset to cover
+# the most possible spectrum at a given time. This also controls splitting
+# fine-tuned sourcechannels lines which cover multiple interfaces (see below)
+channelsplit=true
+
+# Basic channel hopping control:
+# These define the channels the cards hop through for various frequency ranges
+# supported by Kismet. More finegrain control is available via the
+# "sourcechannels" configuration option.
+#
+# Don't change the IEEE80211<x> identifiers or channel hopping won't work.
+
+# Users outside the US might want to use this list:
+# defaultchannels=IEEE80211b:1,7,13,2,8,3,14,9,4,10,5,11,6,12
+defaultchannels=IEEE80211b:1,6,11,2,7,3,8,4,9,5,10
+
+# 802.11g uses the same channels as 802.11b...
+defaultchannels=IEEE80211g:1,6,11,2,7,3,8,4,9,5,10
+
+# 802.11a channels are non-overlapping so sequential is fine. You may want to
+# adjust the list depending on the channels your card actually supports.
+# defaultchannels=IEEE80211a:36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140,149,153,157,161,184,188,192,196,200,204,208,212,216
+defaultchannels=IEEE80211a:36,40,44,48,52,56,60,64
+
+# Combo cards like Atheros use both 'a' and 'b/g' channels. Of course, you
+# can also explicitly override a given source. You can use the script
+# extras/listchan.pl to extract all the channels your card supports.
+defaultchannels=IEEE80211ab:1,6,11,2,7,3,8,4,9,5,10,36,40,44,48,52,56,60,64
+
+# Fine-tuning channel hopping control:
+# The sourcechannels option can be used to set the channel hopping for
+# specific interfaces, and to control what interfaces share a list of
+# channels for split hopping. This can also be used to easily lock
+# one card on a single channel while hopping with other cards.
+# Any card without a sourcechannel definition will use the standard hopping
+# list.
+# sourcechannels=sourcename[,sourcename]:ch1,ch2,ch3,...chN
+
+# ie, for us channels on the source 'prism2source' (same as normal channel
+# hopping behavior):
+# sourcechannels=prism2source:1,6,11,2,7,3,8,4,9,5,10
+
+# Given two capture sources, "prism2a" and "prism2b", we want prism2a to stay
+# on channel 6 and prism2b to hop normally. By not setting a sourcechannels
+# line for prism2b, it will use the standard hopping.
+# sourcechannels=prism2a:6
+
+# To assign the same custom hop channel to multiple sources, or to split the
+# same custom hop channel over two sources (if splitchannels is true), list
+# them all on the same sourcechannels line:
+# sourcechannels=prism2a,prism2b,prism2c:1,6,11
+
+# Port to serve GUI data
+tcpport=2501
+# People allowed to connect, comma seperated IP addresses or network/mask
+# blocks. Netmasks can be expressed as dotted quad (/255.255.255.0) or as
+# numbers (/24)
+allowedhosts=127.0.0.1
+# Maximum number of concurrent GUI's
+maxclients=5
+
+# Do we have a GPS?
+gps=true
+# Host:port that GPSD is running on. This can be localhost OR remote!
+gpshost=localhost:2947
+# Do we lock the mode? This overrides coordinates of lock "0", which will
+# generate some bad information until you get a GPS lock, but it will
+# fix problems with GPS units with broken NMEA that report lock 0
+gpsmodelock=false
+
+# Packet filtering options:
+# filter_tracker - Packets filtered from the tracker are not processed or
+# recorded in any way.
+# filter_dump - Packets filtered at the dump level are tracked, displayed,
+# and written to the csv/xml/network/etc files, but not
+# recorded in the packet dump
+# filter_export - Controls what packets influence the exported CSV, network,
+# xml, gps, etc files.
+# All filtering options take arguments containing the type of address and
+# addresses to be filtered. Valid address types are 'ANY', 'BSSID',
+# 'SOURCE', and 'DEST'. Filtering can be inverted by the use of '!' before
+# the address. For example,
+# filter_tracker=ANY(!00:00:DE:AD:BE:EF)
+# has the same effect as the previous mac_filter config file option.
+# filter_tracker=...
+# filter_dump=...
+# filter_export=...
+
+# Alerts to be reported and the throttling rates.
+# alert=name,throttle/unit,burst
+# The throttle/unit describes the number of alerts of this type that are
+# sent per time unit. Valid time units are second, minute, hour, and day.
+# Burst describes the number of alerts sent before throttling takes place.
+# For example:
+# alert=FOO,10/min,5
+# Would allow 5 alerts through before throttling is enabled, and will then
+# limit the number of alerts to 10 per minute.
+# A throttle rate of 0 disables throttling of the alert.
+# See the README for a list of alert types.
+alert=NETSTUMBLER,5/min,2
+alert=WELLENREITER,5/min,2
+alert=LUCENTTEST,5/min,2
+alert=DEAUTHFLOOD,5/min,4
+alert=BCASTDISCON,5/min,4
+alert=CHANCHANGE,5/min,4
+alert=AIRJACKSSID,5/min,2
+alert=PROBENOJOIN,5/min,2
+alert=DISASSOCTRAFFIC,5/min,2
+alert=NULLPROBERESP,5/min,5
+
+# Known WEP keys to decrypt, bssid,hexkey. This is only for networks where
+# the keys are already known, and it may impact throughput on slower hardware.
+# Multiple wepkey lines may be used for multiple BSSIDs.
+# wepkey=00:DE:AD:C0:DE:00,FEEDFACEDEADBEEF01020304050607080900
+
+# Is transmission of the keys to the client allowed? This may be a security
+# risk for some. If you disable this, you will not be able to query keys from
+# a client.
+allowkeytransmit=true
+
+# How often (in seconds) do we write all our data files (0 to disable)
+writeinterval=300
+
+# Do we use sound?
+# Not to be confused with GUI sound parameter, this controls wether or not the
+# server itself will play sound. Primarily for headless or automated systems.
+sound=false
+# Path to sound player
+soundplay=/usr/bin/play
+# Optional parameters to pass to the player
+# soundopts=--volume=.3
+# New network found
+sound_new=/usr/share/kismet/wav/new_network.wav
+# Wepped new network
+# sound_new_wep=/usr/com/kismet/wav/new_wep_network.wav
+# Network traffic sound
+sound_traffic=/usr/share/kismet/wav/traffic.wav
+# Network junk traffic found
+sound_junktraffic=/usr/share/kismet/wav/junk_traffic.wav
+# GPS lock aquired sound
+# sound_gpslock=/usr/share/kismet/wav/foo.wav
+# GPS lock lost sound
+# sound_gpslost=/usr/share/kismet/wav/bar.wav
+# Alert sound
+sound_alert=/usr/share/kismet/wav/alert.wav
+
+# Does the server have speech? (Again, not to be confused with the GUI's speech)
+speech=false
+# Server's path to Festival
+festival=/usr/bin/festival
+# How do we speak? Valid options:
+# speech Normal speech
+# nato NATO spellings (alpha, bravo, charlie)
+# spell Spell the letters out (aye, bee, sea)
+speech_type=nato
+# speech_encrypted and speech_unencrypted - Speech templates
+# Similar to the logtemplate option, this lets you customize the speech output.
+# speech_encrypted is used for an encrypted network spoken string
+# speech_unencrypted is used for an unencrypted network spoken string
+#
+# %b is replaced by the BSSID (MAC) of the network
+# %s is replaced by the SSID (name) of the network
+# %c is replaced by the CHANNEL of the network
+# %r is replaced by the MAX RATE of the network
+speech_encrypted=New network detected, s.s.i.d. %s, channel %c, network encrypted.
+speech_unencrypted=New network detected, s.s.i.d. %s, channel %c, network open.
+
+# Where do we get our manufacturer fingerprints from? Assumed to be in the
+# default config directory if an absolute path is not given.
+ap_manuf=ap_manuf
+client_manuf=client_manuf
+
+# Use metric measurements in the output?
+metric=false
+
+# Do we write waypoints for gpsdrive to load? Note: This is NOT related to
+# recent versions of GPSDrive's native support of Kismet.
+waypoints=false
+# GPSMap waypoint file. This WILL be truncated.
+waypointdata=%h/.gpsdrive/way_kismet.txt
+
+# How many alerts do we backlog for new clients? Only change this if you have
+# a -very- low memory system and need those extra bytes, or if you have a high
+# memory system and a huge number of alert conditions.
+alertbacklog=50
+
+# File types to log, comma seperated
+# dump - raw packet dump
+# network - plaintext detected networks
+# csv - plaintext detected networks in CSV format
+# xml - XML formatted network and cisco log
+# weak - weak packets (in airsnort format)
+# cisco - cisco equipment CDP broadcasts
+# gps - gps coordinates
+logtypes=dump,network,csv,xml,weak,cisco,gps
+
+# Do we track probe responses and merge probe networks into their owners?
+# This isn't always desireable, depending on the type of monitoring you're
+# trying to do.
+trackprobenets=true
+
+# Do we log "noise" packets that we can't decipher? I tend to not, since
+# they don't have anything interesting at all in them.
+noiselog=false
+
+# Do we log corrupt packets? Corrupt packets have enough header information
+# to see what they are, but someting is wrong with them that prevents us from
+# completely dissecting them. Logging these is usually not a bad idea.
+corruptlog=true
+
+# Do we log beacon packets or do we filter them out of the dumpfile
+beaconlog=true
+
+# Do we log PHY layer packets or do we filter them out of the dumpfile
+phylog=true
+
+# Do we mangle packets if we can decrypt them or if they're fuzzy-detected
+mangledatalog=true
+
+# Do we do "fuzzy" crypt detection? (byte-based detection instead of 802.11
+# frame headers)
+# valid option: Comma seperated list of card types to perform fuzzy detection
+# on, or 'all'
+fuzzycrypt=wtapfile,wlanng,wlanng_legacy,wlanng_avs,hostap,wlanng_wext
+
+# What type of dump do we generate?
+# valid option: "wiretap"
+dumptype=wiretap
+# Do we limit the size of dump logs? Sometimes ethereal can't handle big ones.
+# 0 = No limit
+# Anything else = Max number of packets to log to a single file before closing
+# and opening a new one.
+dumplimit=0
+
+# Do we write data packets to a FIFO for an external data-IDS (such as Snort)?
+# See the docs before enabling this.
+#fifo=/tmp/kismet_dump
+
+# Default log title
+logdefault=Kismet
+
+# logtemplate - Filename logging template.
+# This is, at first glance, really nasty and ugly, but you'll hardly ever
+# have to touch it so don't complain too much.
+#
+# %n is replaced by the logging instance name
+# %d is replaced by the current date as Mon-DD-YYYY
+# %D is replaced by the current date as YYYYMMDD
+# %t is replaced by the starting log time
+# %i is replaced by the increment log in the case of multiple logs
+# %l is replaced by the log type (dump, status, crypt, etc)
+# %h is replaced by the home directory
+# ie, "netlogs/%n-%d-%i.dump" called with a logging name of "Pok" could expand
+# to something like "netlogs/Pok-Dec-20-01-1.dump" for the first instance and
+# "netlogs/Pok-Dec-20-01-2.%l" for the second logfile generated.
+# %h/netlots/%n-%d-%i.dump could expand to
+# /home/foo/netlogs/Pok-Dec-20-01-2.dump
+#
+# Other possibilities: Sorting by directory
+# logtemplate=%l/%n-%d-%i
+# Would expand to, for example,
+# dump/Pok-Dec-20-01-1
+# crypt/Pok-Dec-20-01-1
+# and so on. The "dump", "crypt", etc, dirs must exist before kismet is run
+# in this case.
+logtemplate=/tmp/%n-%d-%i.%l
+
+# Where do we store the pid file of the server?
+piddir=/var/run/
+
+# Where state info, etc, is stored. You shouldnt ever need to change this.
+# This is a directory.
+configdir=%h/.kismet/
+
+# cloaked SSID file. You shouldn't ever need to change this.
+ssidmap=ssid_map
+
+# Group map file. You shouldn't ever need to change this.
+groupmap=group_map
+
+# IP range map file. You shouldn't ever need to change this.
+ipmap=ip_map
+
diff --git a/packages/kismet/kismet_2004-04-R1.bb b/packages/kismet/kismet_2004-04-R1.bb
index f1510f9e87..9c864a3f86 100644
--- a/packages/kismet/kismet_2004-04-R1.bb
+++ b/packages/kismet/kismet_2004-04-R1.bb
@@ -13,6 +13,7 @@ SRC_URI = "http://www.kismetwireless.net/code/kismet-2004-04-R1.tar.gz \
file://glibc3.3.2-getopt-throw.diff;patch=1;pnum=0"
SRC_URI_append_mtx-1 = " file://kismet.conf"
+SRC_URI_append_mtx-2 = " file://kismet.conf"
EXTRA_OECONF = "--with-pcap=linux --disable-setuid"
diff --git a/packages/libccaudio2/.mtn2git_empty b/packages/libccaudio2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/libccaudio2/.mtn2git_empty
diff --git a/packages/libccaudio2/libccaudio2-0.9.0/.mtn2git_empty b/packages/libccaudio2/libccaudio2-0.9.0/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/libccaudio2/libccaudio2-0.9.0/.mtn2git_empty
diff --git a/packages/libccaudio2/libccaudio2-0.9.0/01-ccaudio-fixed-point.diff b/packages/libccaudio2/libccaudio2-0.9.0/01-ccaudio-fixed-point.diff
new file mode 100644
index 0000000000..226a4203cc
--- /dev/null
+++ b/packages/libccaudio2/libccaudio2-0.9.0/01-ccaudio-fixed-point.diff
@@ -0,0 +1,677 @@
+diff -NurBb src/audio2.h patched_src/audio2.h
+--- ccaudio2-0.9.0/src/audio2.h 2006-04-06 10:25:17.000000000 +0200
++++ ccaudio2-0.9.0/patched_src/audio2.h 2006-04-22 14:13:25.000000000 +0200
+@@ -82,6 +82,7 @@
+ #endif
+
+ #include <ctime>
++#include "fixedPoint.H"
+
+ namespace ost {
+
+@@ -760,7 +761,7 @@
+ Rate rate;
+ unsigned samples;
+ Linear frame;
+- double df1, df2, p1, p2;
++ FixedPoint df1, df2, p1, p2;
+ Level m1, m2;
+ bool silencer;
+
+diff -NurBb src/detect.cpp patched_src/detect.cpp
+--- ccaudio2-0.9.0/src/detect.cpp 2005-07-29 22:16:35.000000000 +0200
++++ ccaudio2-0.9.0/patched_src/detect.cpp 2006-04-22 14:13:26.000000000 +0200
+@@ -78,6 +78,13 @@
+ static float dtmf_col[] = { 1209.0, 1336.0, 1477.0, 1633.0 };
+ static float fax_freq = 1100.0;
+
++ // fixed value for dtmf_detect_(row|col)[].fac for SAMPLE_RATE = 8000
++ static float init[4][4]={ {1.70774,1.1641,0.916368,-0.644862},
++ {1.64528,0.99637,0.70695,-1.00725},
++ {1.56869,0.798618,0.460779,-1.36221},
++ {1.4782,0.568533,0.185089,-1.67677}
++ };
++
+ state = (dtmf_detect_state_t *)malloc(sizeof(dtmf_detect_state_t));
+ memset(state, 0, sizeof(state));
+
+@@ -85,15 +92,19 @@
+ {
+ theta = (float)(2.0 * M_PI * (dtmf_row[i] / SAMPLE_RATE));
+ dtmf_detect_row[i].fac = (float)(2.0 * cos(theta));
++ dtmf_detect_row[i].fac = init[i][0];
+
+ theta = (float)(2.0 * M_PI * (dtmf_col[i] / SAMPLE_RATE));
+ dtmf_detect_col[i].fac = (float)(2.0 * cos(theta));
++ dtmf_detect_col[i].fac = init[i][1];
+
+ theta = (float)(2.0 * M_PI * (dtmf_row[i] * 2.0 / SAMPLE_RATE));
+ dtmf_detect_row_2nd[i].fac = (float)(2.0 * cos(theta));
++ dtmf_detect_row_2nd[i].fac = init[i][2];
+
+ theta = (float)(2.0 * M_PI * (dtmf_col[i] * 2.0 / SAMPLE_RATE));
+ dtmf_detect_col_2nd[i].fac = (float)(2.0 * cos(theta));
++ dtmf_detect_col_2nd[i].fac = init[i][3];
+
+ goertzelInit(&state->row_out[i], &dtmf_detect_row[i]);
+ goertzelInit(&state->col_out[i], &dtmf_detect_col[i]);
+@@ -196,30 +207,30 @@
+ state->row_out[0].v2 = state->row_out[0].v3;
+ state->row_out[0].v3 = state->row_out[0].fac*state->row_out[0].v2 - v1 + famp;
+
+- v1 = state->col_out[0].v2;
+- state->col_out[0].v2 = state->col_out[0].v3;
+- state->col_out[0].v3 = state->col_out[0].fac*state->col_out[0].v2 - v1 + famp;
+-
+ v1 = state->row_out[1].v2;
+ state->row_out[1].v2 = state->row_out[1].v3;
+ state->row_out[1].v3 = state->row_out[1].fac*state->row_out[1].v2 - v1 + famp;
+
+- v1 = state->col_out[1].v2;
+- state->col_out[1].v2 = state->col_out[1].v3;
+- state->col_out[1].v3 = state->col_out[1].fac*state->col_out[1].v2 - v1 + famp;
+-
+ v1 = state->row_out[2].v2;
+ state->row_out[2].v2 = state->row_out[2].v3;
+ state->row_out[2].v3 = state->row_out[2].fac*state->row_out[2].v2 - v1 + famp;
+
+- v1 = state->col_out[2].v2;
+- state->col_out[2].v2 = state->col_out[2].v3;
+- state->col_out[2].v3 = state->col_out[2].fac*state->col_out[2].v2 - v1 + famp;
+-
+ v1 = state->row_out[3].v2;
+ state->row_out[3].v2 = state->row_out[3].v3;
+ state->row_out[3].v3 = state->row_out[3].fac*state->row_out[3].v2 - v1 + famp;
+
++ v1 = state->col_out[0].v2;
++ state->col_out[0].v2 = state->col_out[0].v3;
++ state->col_out[0].v3 = state->col_out[0].fac*state->col_out[0].v2 - v1 + famp;
++
++ v1 = state->col_out[1].v2;
++ state->col_out[1].v2 = state->col_out[1].v3;
++ state->col_out[1].v3 = state->col_out[1].fac*state->col_out[1].v2 - v1 + famp;
++
++ v1 = state->col_out[2].v2;
++ state->col_out[2].v2 = state->col_out[2].v3;
++ state->col_out[2].v3 = state->col_out[2].fac*state->col_out[2].v2 - v1 + famp;
++
+ v1 = state->col_out[3].v2;
+ state->col_out[3].v2 = state->col_out[3].v3;
+ state->col_out[3].v3 = state->col_out[3].fac*state->col_out[3].v2 - v1 + famp;
+@@ -228,34 +239,34 @@
+ state->col_out2nd[0].v2 = state->col_out2nd[0].v3;
+ state->col_out2nd[0].v3 = state->col_out2nd[0].fac*state->col_out2nd[0].v2 - v1 + famp;
+
+- v1 = state->row_out2nd[0].v2;
+- state->row_out2nd[0].v2 = state->row_out2nd[0].v3;
+- state->row_out2nd[0].v3 = state->row_out2nd[0].fac*state->row_out2nd[0].v2 - v1 + famp;
+-
+ v1 = state->col_out2nd[1].v2;
+ state->col_out2nd[1].v2 = state->col_out2nd[1].v3;
+ state->col_out2nd[1].v3 = state->col_out2nd[1].fac*state->col_out2nd[1].v2 - v1 + famp;
+
+- v1 = state->row_out2nd[1].v2;
+- state->row_out2nd[1].v2 = state->row_out2nd[1].v3;
+- state->row_out2nd[1].v3 = state->row_out2nd[1].fac*state->row_out2nd[1].v2 - v1 + famp;
+-
+ v1 = state->col_out2nd[2].v2;
+ state->col_out2nd[2].v2 = state->col_out2nd[2].v3;
+ state->col_out2nd[2].v3 = state->col_out2nd[2].fac*state->col_out2nd[2].v2 - v1 + famp;
+
+- v1 = state->row_out2nd[2].v2;
+- state->row_out2nd[2].v2 = state->row_out2nd[2].v3;
+- state->row_out2nd[2].v3 = state->row_out2nd[2].fac*state->row_out2nd[2].v2 - v1 + famp;
+-
+ v1 = state->col_out2nd[3].v2;
+ state->col_out2nd[3].v2 = state->col_out2nd[3].v3;
+ state->col_out2nd[3].v3 = state->col_out2nd[3].fac*state->col_out2nd[3].v2 - v1 + famp;
+
++ v1 = state->row_out2nd[0].v2;
++ state->row_out2nd[0].v2 = state->row_out2nd[0].v3;
++ state->row_out2nd[0].v3 = state->row_out2nd[0].fac*state->row_out2nd[0].v2 - v1 + famp;
++
++ v1 = state->row_out2nd[1].v2;
++ state->row_out2nd[1].v2 = state->row_out2nd[1].v3;
++ state->row_out2nd[1].v3 = state->row_out2nd[1].fac*state->row_out2nd[1].v2 - v1 + famp;
++
++ v1 = state->row_out2nd[2].v2;
++ state->row_out2nd[2].v2 = state->row_out2nd[2].v3;
++ state->row_out2nd[2].v3 = state->row_out2nd[2].fac*state->row_out2nd[2].v2 - v1 + famp;
++
+ v1 = state->row_out2nd[3].v2;
+ state->row_out2nd[3].v2 = state->row_out2nd[3].v3;
+ state->row_out2nd[3].v3 = state->row_out2nd[3].fac*state->row_out2nd[3].v2 - v1 + famp;
+-
++#ifdef FAXDETECT
+ v1 = state->fax_tone.v2;
+ state->fax_tone.v2 = state->fax_tone.v3;
+ state->fax_tone.v3 = state->fax_tone.fac*state->fax_tone.v2 - v1 + famp;
+@@ -263,13 +274,15 @@
+ v1 = state->fax_tone.v2;
+ state->fax_tone2nd.v2 = state->fax_tone2nd.v3;
+ state->fax_tone2nd.v3 = state->fax_tone2nd.fac*state->fax_tone2nd.v2 - v1 + famp;
++#endif
+ }
+ state->current_sample += (limit - sample);
+ if(state->current_sample < 102)
+ continue;
+
++#ifdef FAXDETECT
+ fax_energy = goertzelResult(&state->fax_tone);
+-
++#endif
+ // We are at the end of a DTMF detection block
+ // Find the peak row and the peak column
+ row_energy[0] = goertzelResult (&state->row_out[0]);
+@@ -332,6 +345,7 @@
+ }
+ }
+
++#ifdef FAXDETECT
+ if (!hit && (fax_energy >= FAX_THRESHOLD) && (fax_energy > state->energy * 21.0))
+ {
+ fax_energy_2nd = goertzelResult(&state->fax_tone2nd);
+@@ -356,6 +370,7 @@
+ }
+ state->fax_hits = 0;
+ }
++#endif
+ state->hit1 = state->hit2;
+ state->hit2 = state->hit3;
+ state->hit3 = hit;
+diff -NurBb src/fixedPoint.C patched_src/fixedPoint.C
+--- ccaudio2-0.9.0/src/fixedPoint.C 1970-01-01 01:00:00.000000000 +0100
++++ ccaudio2-0.9.0/patched_src/fixedPoint.C 2006-04-22 14:13:26.000000000 +0200
+@@ -0,0 +1,145 @@
++#include "fixedPoint.H"
++
++#include <math.h>
++
++#define TABLESIZE (1<<RES_BITS)
++
++static FixedPoint sinGenerator(int x) {
++ FixedPoint q(2 * x * 3.14156);
++ q /= NUMPOINTS;
++ return FixedPoint(sin(static_cast<double>(q)));
++}
++
++static FixedPoint cosGenerator(int x) {
++ FixedPoint q(2 * x * 3.14156);
++ q /= NUMPOINTS;
++ return FixedPoint(cos(static_cast<double>(q)));
++}
++
++static FixedPoint sinGeneratorSmall(int x) {
++ FixedPoint q(2 * x * 3.14156);
++ q /= NUMPOINTS * NUMPOINTS;
++ return FixedPoint(sin(static_cast<double>(q)));
++}
++
++void FixedPoint::generateTables() {
++ int i;
++ std::cout << "unsigned short sinL[] = { 0";
++ for (i=1; i<TABLESIZE; ++i )
++ std::cout << ", " << sinGenerator(i).getNKS();
++ std::cout << "};" << std::endl;
++
++ std::cout << "unsigned short sinS[] = { 0";
++ for (i=1; i<TABLESIZE; ++i )
++ std::cout << ", " << sinGeneratorSmall(i).getNKS();
++ std::cout << "};" << std::endl;
++
++ std::cout << "unsigned short cosL[] = { " << (1<<decimalPlaces)-1;
++ for (i=1; i<TABLESIZE; ++i )
++ std::cout << ", " << cosGenerator(i).getNKS();
++ std::cout << "};" << std::endl;
++}
++
++#define USE_TABLE_LOOKUP
++#ifdef USE_TABLE_LOOKUP
++
++// table for RES_BITS==6
++//unsigned short sinL[] = { 0, 1607, 3214, 4820, 6422, 8021, 9615, 11203, 12784, 14358, 15923, 17478, 19023, 20557, 22077, 23585, 25078, 26557, 28019, 29465, 30892, 32302, 33691, 35061, 36409, 37735, 39039, 40318, 41574, 42805, 44010, 45188, 46340, 47463, 48558, 49623, 50659, 51664, 52638, 53580, 54490, 55367, 56211, 57021, 57797, 58537, 59243, 59913, 60546, 61144, 61704, 62227, 62713, 63161, 63571, 63943, 64276, 64570, 64826, 65042, 65220, 65358, 65456, 65516};
++//unsigned short sinS[] = { 0, 5, 11, 17, 24, 30, 36, 42, 49, 55, 61, 68, 74, 80, 86, 93, 99, 105, 112, 118, 124, 130, 137, 143, 149, 156, 162, 168, 174, 181, 187, 193, 200, 206, 212, 218, 225, 231, 237, 244, 250, 256, 262, 269, 275, 281, 288, 294, 300, 306, 313, 319, 325, 332, 338, 344, 350, 357, 363, 369, 375, 382, 388, 394};
++//unsigned short cosL[] = { 65535, 65516, 65457, 65358, 65220, 65043, 64826, 64571, 64276, 63943, 63572, 63162, 62714, 62228, 61705, 61144, 60547, 59913, 59244, 58538, 57798, 57022, 56212, 55368, 54491, 53582, 52639, 51665, 50660, 49625, 48559, 47465, 46341, 45190, 44011, 42807, 41576, 40320, 39040, 37737, 36410, 35062, 33692, 32303, 30894, 29466, 28020, 26559, 25081, 23587, 22080, 20558, 19025, 17480, 15925, 14360, 12787, 11205, 9617, 8023, 6425, 4822, 3217, 1609};
++
++// table for RES_BITS==7
++//unsigned short sinL[] = { 0, 803, 1607, 2411, 3214, 4018, 4820, 5622, 6422, 7223, 8021, 8819, 9615, 10410, 11203, 11994, 12784, 13573, 14358, 15141, 15923, 16702, 17478, 18252, 19023, 19791, 20557, 21318, 22077, 22832, 23585, 24334, 25078, 25819, 26557, 27290, 28019, 28744, 29465, 30181, 30892, 31599, 32302, 32999, 33691, 34378, 35061, 35737, 36409, 37074, 37735, 38390, 39039, 39681, 40318, 40950, 41574, 42193, 42805, 43411, 44010, 44603, 45188, 45768, 46340, 46905, 47463, 48014, 48558, 49094, 49623, 50144, 50659, 51165, 51664, 52155, 52638, 53113, 53580, 54039, 54490, 54933, 55367, 55793, 56211, 56620, 57021, 57413, 57797, 58171, 58537, 58894, 59243, 59582, 59913, 60234, 60546, 60850, 61144, 61428, 61704, 61970, 62227, 62475, 62713, 62942, 63161, 63371, 63571, 63762, 63943, 64114, 64276, 64428, 64570, 64703, 64826, 64939, 65042, 65136, 65220, 65294, 65358, 65412, 65456, 65491, 65516, 65531};
++//unsigned short sinS[] = { 0, 0, 2, 3, 5, 6, 8, 9, 11, 13, 14, 16, 17, 19, 20, 22, 24, 25, 27, 28, 30, 31, 33, 35, 36, 38, 39, 41, 42, 44, 46, 47, 49, 50, 52, 53, 55, 57, 58, 60, 61, 63, 64, 66, 68, 69, 71, 72, 74, 75, 77, 79, 80, 82, 83, 85, 86, 88, 90, 91, 93, 94, 96, 97, 99, 101, 102, 104, 105, 107, 108, 110, 112, 113, 115, 116, 118, 119, 121, 123, 124, 126, 127, 129, 130, 132, 134, 135, 137, 138, 140, 141, 143, 145, 146, 148, 149, 151, 152, 154, 156, 157, 159, 160, 162, 163, 165, 167, 168, 170, 171, 173, 174, 176, 178, 179, 181, 182, 184, 185, 187, 189, 190, 192, 193, 195, 196, 198};
++//unsigned short cosL[] = { 65535, 65531, 65516, 65491, 65457, 65412, 65358, 65294, 65220, 65136, 65043, 64939, 64826, 64703, 64571, 64428, 64276, 64115, 63943, 63762, 63572, 63371, 63162, 62942, 62714, 62476, 62228, 61971, 61705, 61429, 61144, 60850, 60547, 60235, 59913, 59583, 59244, 58896, 58538, 58172, 57798, 57414, 57022, 56621, 56212, 55795, 55368, 54934, 54491, 54040, 53582, 53114, 52639, 52156, 51665, 51166, 50660, 50146, 49625, 49095, 48559, 48015, 47465, 46906, 46341, 45769, 45190, 44604, 44011, 43412, 42807, 42195, 41576, 40951, 40320, 39684, 39040, 38391, 37737, 37077, 36410, 35739, 35062, 34380, 33692, 33000, 32303, 31601, 30894, 30182, 29466, 28746, 28020, 27292, 26559, 25822, 25081, 24335, 23587, 22835, 22080, 21320, 20558, 19793, 19025, 18254, 17480, 16704, 15925, 15143, 14360, 13574, 12787, 11996, 11205, 10412, 9617, 8820, 8023, 7224, 6425, 5624, 4822, 4020, 3217, 2414, 1609, 805};
++
++unsigned short sinL[] = { 0, 803, 1607, 2411, 3214, 4018, 4820, 5622, 6422, 7223, 8021, 8819, 9615, 10410, 11203, 11994, 12784, 13573, 14358, 15141, 15923, 16702, 17478, 18252, 19023, 19792, 20557, 21318, 22077, 22833, 23585, 24334, 25078, 25820, 26557, 27290, 28019, 28745, 29465, 30181, 30892, 31600, 32302, 32999, 33691, 34379, 35061, 35737, 36409, 37075, 37735, 38390, 39039, 39682, 40319, 40950, 41574, 42194, 42806, 43411, 44010, 44603, 45189, 45768, 46340, 46906, 47464, 48014, 48558, 49095, 49624, 50145, 50659, 51166, 51664, 52155, 52638, 53114, 53581, 54039, 54490, 54933, 55368, 55794, 56211, 56621, 57021, 57413, 57797, 58172, 58538, 58895, 59243, 59583, 59913, 60234, 60547, 60850, 61144, 61429, 61704, 61971, 62228, 62475, 62713, 62942, 63161, 63371, 63571, 63762, 63943, 64114, 64276, 64428, 64571, 64703, 64826, 64939, 65043, 65136, 65220, 65294, 65358, 65412, 65457, 65491, 65516, 65531};
++unsigned short sinS[] = { 0, 0, 2, 3, 5, 6, 8, 9, 11, 13, 14, 16, 17, 19, 20, 22, 24, 25, 27, 28, 30, 31, 33, 35, 36, 38, 39, 41, 42, 44, 46, 47, 49, 50, 52, 53, 55, 57, 58, 60, 61, 63, 64, 66, 68, 69, 71, 72, 74, 75, 77, 79, 80, 82, 83, 85, 86, 88, 90, 91, 93, 94, 96, 97, 99, 101, 102, 104, 105, 107, 108, 110, 112, 113, 115, 116, 118, 119, 121, 123, 124, 126, 127, 129, 130, 132, 134, 135, 137, 138, 140, 141, 143, 145, 146, 148, 149, 151, 152, 154, 156, 157, 159, 160, 162, 163, 165, 167, 168, 170, 171, 173, 174, 176, 178, 179, 181, 182, 184, 185, 187, 189, 190, 192, 193, 195, 196, 198};
++unsigned short cosL[] = { 65535, 65531, 65516, 65491, 65457, 65412, 65358, 65294, 65220, 65136, 65043, 64939, 64826, 64703, 64571, 64428, 64276, 64115, 63943, 63762, 63572, 63371, 63162, 62942, 62714, 62475, 62228, 61971, 61705, 61429, 61144, 60850, 60547, 60235, 59913, 59583, 59244, 58895, 58538, 58172, 57798, 57414, 57022, 56621, 56212, 55794, 55368, 54934, 54491, 54040, 53581, 53114, 52639, 52156, 51665, 51166, 50660, 50146, 49624, 49095, 48559, 48015, 47464, 46906, 46341, 45768, 45189, 44604, 44011, 43412, 42806, 42194, 41576, 40950, 40320, 39683, 39040, 38390, 37736, 37076, 36410, 35738, 35061, 34379, 33692, 32999, 32302, 31600, 30894, 30181, 29465, 28745, 28020, 27291, 26558, 25821, 25080, 24334, 23586, 22834, 22079, 21319, 20557, 19792, 19024, 18253, 17479, 16703, 15924, 15142, 14359, 13573, 12786, 11996, 11204, 10411, 9616, 8820, 8022, 7223, 6424, 5623, 4821, 4019, 3216, 2413, 1608, 804};
++
++
++inline FixedPoint sinhelper(int v)
++{
++ return FixedPoint(0, sinL[v]);
++}
++
++inline FixedPoint sinhelperSmall(int v)
++{
++ return FixedPoint(0, sinS[v]);
++}
++
++inline FixedPoint coshelper(int v)
++{
++ return FixedPoint(0, cosL[v]);
++}
++
++#else
++inline FixedPoint sinhelper(int v)
++{
++ return sinGenerator(v);
++}
++
++inline FixedPoint sinhelperSmall(int v)
++{
++ return sinGeneratorSmall(v);
++}
++
++inline FixedPoint coshelper(int v)
++{
++ return cosGenerator(v);
++}
++
++#endif
++
++FixedPoint sin(const FixedPoint& v) {
++ // scaled to use NUMPOINTS==(1<<RES_BITS+2) as 2pi range
++
++ // get the quadrant
++ int q = (static_cast<int>(v) >> RES_BITS) & 3;
++
++ // handle sin(alpha) as sin(large+small) with large+small=alpha
++ // large is here 0-NUMPOINTS, small is (alpha-large) scaled to NUMPOINTS
++ int large = static_cast<int>(v) & (TABLESIZE-1);
++ int small = v.getNKS()>>(FixedPoint::decimalPlaces - RES_BITS);
++
++ // calculate sin for first quadrant
++ FixedPoint r;
++ // assuming coshelper2(small) == 1
++ if ( q&1 ) {
++ r = coshelper(large)-sinhelper(large)*sinhelperSmall(small);
++ } else {
++ r = sinhelper(large)+sinhelperSmall(small)*coshelper(large);
++ }
++
++ if ( q>1 )
++ r.negate();
++
++ return r;
++}
++
++FixedPoint
++cos(const FixedPoint& v) {
++ // scaled to use NUMPOINTS==(1<<RES_BITS+2) as 2pi range
++
++ // get the quadrant
++ int q = (static_cast<int>(v) >> RES_BITS) & 3;
++
++ // handle sin(alpha) as sin(large+small) with large+small=alpha
++ // large is here 0-NUMPOINTS, small is (alpha-large) scaled to NUMPOINTS
++ int large = static_cast<int>(v) & (TABLESIZE-1);
++ int small = v.getNKS()>>(FixedPoint::decimalPlaces - RES_BITS);
++
++ // calculate sin for first quadrant
++ FixedPoint r;
++ // assuming coshelper2(small) == 1
++ if ( q&1 ) {
++ r = sinhelper(large)+sinhelperSmall(small)*coshelper(large);
++ } else {
++ r = coshelper(large)-sinhelper(large)*sinhelperSmall(small);
++ }
++
++ if ( q==1 || q==2 )
++ r.negate();
++
++ return r;
++}
+diff -NurBb src/fixedPoint.H patched_src/fixedPoint.H
+--- ccaudio2-0.9.0/src/fixedPoint.H 1970-01-01 01:00:00.000000000 +0100
++++ ccaudio2-0.9.0/patched_src/fixedPoint.H 2006-04-22 14:13:26.000000000 +0200
+@@ -0,0 +1,239 @@
++#ifndef FIXEDPOINT__H__
++#define FIXEDPOINT__H__
++
++#include <iostream>
++
++#define longlong
++
++const int RES_BITS = 7;
++const int NUMPOINTS = (1<<(RES_BITS+2));
++
++const int FP_PI_TRIG = (1<<(RES_BITS+1)); // use this as pi in trig functions
++
++class FixedPoint;
++static inline int prepareMultiply(FixedPoint& r, FixedPoint&f);
++static inline void check_overflow(const FixedPoint&a, const FixedPoint&b);
++
++class FixedPoint {
++public:
++#ifdef longlong
++ typedef long long _fp;
++#else
++ typedef long _fp;
++#endif
++
++ FixedPoint() { value=0; }
++ FixedPoint(int v) { value = static_cast<_fp>(v) << decimalPlaces; }
++ FixedPoint(unsigned int v) { value = static_cast<_fp>(v) << decimalPlaces; }
++ FixedPoint(double v) { value = static_cast<_fp>(v * (1 << decimalPlaces)); }
++ FixedPoint(float v) { value = static_cast<_fp>(v * (1 << decimalPlaces)); }
++ FixedPoint(const FixedPoint& a) { value = a.value; }
++ FixedPoint(int ganz, int komma) { value = (static_cast<_fp>(ganz)<<decimalPlaces) + komma; }
++
++ operator _fp() const { return value >> decimalPlaces; }
++ operator int() const { return value >> decimalPlaces; } // this conversion can overflow!!
++ operator double() const { return (double)value / (1<<decimalPlaces); }
++ operator bool() const { return value != 0; }
++
++#ifdef longlong
++
++ friend FixedPoint operator*(const FixedPoint& a, const FixedPoint& b)
++ {
++ FixedPoint r(a);
++ FixedPoint f(b);
++
++ // shift r.value and f.value so, that no overrun occurs
++ int shift = prepareMultiply(r, f);
++ check_overflow(r,f);
++
++ r.value *= f.value;
++
++ // shift away nks
++ r.value >>= shift;
++
++ return r;
++ }
++
++ void operator*=(const FixedPoint& b)
++ {
++ FixedPoint f(b);
++
++ // shift r.value and f.value so, that no overrun occurs
++ int shift = prepareMultiply(*this, f);
++ check_overflow(*this, f);
++
++ value *= f.value;
++
++ // shift away nks
++ value >>= shift;
++ }
++
++#endif
++ friend FixedPoint operator*(const FixedPoint& a, int v)
++ { FixedPoint r(a); r.value *= v; return r; }
++ friend FixedPoint operator*(int v, const FixedPoint& b)
++ { FixedPoint r(b); r.value *= v; return r; }
++ void operator*=(int v)
++ { value *= v; }
++
++#ifdef longlong
++ friend FixedPoint operator/(const FixedPoint& a, const FixedPoint& b)
++ { FixedPoint r(a); r.value<<=decimalPlaces; r.value /= b.value; return r; }
++ void operator/=(const FixedPoint& a)
++ { value<<=decimalPlaces; value /= a.value; }
++#else
++ friend FixedPoint operator/(const FixedPoint& a, const FixedPoint& b)
++ {
++ FixedPoint r;
++ long long v = a.value;
++ v <<= decimalPlaces;
++ v /= b.value;
++ r.value = v;
++ return r;
++ }
++ void operator/=(const FixedPoint& a)
++ {
++ long long v = value;
++ v <<= decimalPlaces;
++ v /= a.value;
++ value = v;
++ }
++#endif
++ friend FixedPoint operator/(const FixedPoint& a, int v)
++ { FixedPoint r(a); r.value /= v; return r; }
++ void operator/=(int v)
++ { value /= v; }
++
++ friend FixedPoint operator+(const FixedPoint& a, const FixedPoint& b)
++ { FixedPoint r(a); r.value += b.value; return r; }
++ friend FixedPoint operator+(const FixedPoint& a, int v)
++ { FixedPoint r(a); r.value += v<<decimalPlaces; return r; }
++ friend FixedPoint operator+(int v, const FixedPoint& b)
++ { FixedPoint r(b); r.value += v<<decimalPlaces; return r; }
++ friend FixedPoint operator-(const FixedPoint& a, const FixedPoint& b)
++ { FixedPoint r(a); r.value -= b.value; return r; }
++ friend FixedPoint operator-(const FixedPoint& a, int v)
++ { FixedPoint r(a); r.value -= v<<decimalPlaces; return r; }
++ friend FixedPoint operator-(int v, const FixedPoint& b)
++ { FixedPoint r(b); r.value -= v<<decimalPlaces; return r; }
++
++ void operator+=(const FixedPoint& a)
++ { value += a.value; }
++ void operator-=(const FixedPoint& a)
++ { value -= a.value; }
++
++ friend bool operator==(const FixedPoint& a, const FixedPoint& b)
++ { return a.value == b.value; }
++ friend bool operator==(const FixedPoint& a, int v)
++ { return a.value == (v << decimalPlaces); }
++ friend bool operator==(int v, const FixedPoint& b)
++ { return (v << decimalPlaces) == b.value; }
++
++ friend bool operator!=(const FixedPoint& a, const FixedPoint& b)
++ { return a.value != b.value; }
++ friend bool operator!=(const FixedPoint& a, int v)
++ { return a.value != (v << decimalPlaces); }
++ friend bool operator!=(int v, const FixedPoint& b)
++ { return (v << decimalPlaces) != b.value ; }
++
++ friend bool operator<(const FixedPoint& a, const FixedPoint& b)
++ { return a.value < b.value; }
++ friend bool operator<(const FixedPoint& a, int v)
++ { return a.value < (v << decimalPlaces); }
++ friend bool operator<(int v, const FixedPoint& b)
++ { return (v << decimalPlaces)< b.value; }
++
++ friend bool operator>(const FixedPoint& a, const FixedPoint& b)
++ { return a.value > b.value; }
++ friend bool operator>(const FixedPoint& a, int v)
++ { return a.value > (v << decimalPlaces) ; }
++ friend bool operator>(int v, const FixedPoint& b)
++ { return (v << decimalPlaces )> b.value; }
++
++ friend bool operator>=(const FixedPoint& a, const FixedPoint& b)
++ { return a.value >= b.value; }
++ friend bool operator<=(const FixedPoint& a, const FixedPoint& b)
++ { return a.value <= b.value; }
++ friend bool operator>=(const FixedPoint& a, int v)
++ { return a.value >= ( v << decimalPlaces ); }
++ friend bool operator>=(int v, const FixedPoint& b)
++ { return ( v << decimalPlaces ) >= b.value; }
++ friend bool operator<=(const FixedPoint& a, int v)
++ { return a.value <= ( v << decimalPlaces ); }
++ friend bool operator<=(int v, const FixedPoint& b)
++ { return ( v << decimalPlaces ) <= b.value; }
++
++ friend std::ostream& operator<<(std::ostream& os, FixedPoint f)
++ {
++ return os << (double)f << " [" << std::hex << (_fp)f << "#" << f.getNKS() << std::dec << "]";
++ }
++
++ friend FixedPoint sin(const FixedPoint& v);
++ friend FixedPoint cos(const FixedPoint& v);
++
++ unsigned int getNKS() const { return value & ((1<<decimalPlaces)-1); }
++
++ void negate() { value *= -1; }
++ friend FixedPoint operator-(const FixedPoint& f) { FixedPoint r(f); r.value *= -1; return r; }
++
++ static const int decimalPlaces=16;
++
++ _fp value;
++
++ static void generateTables();
++
++private:
++ //FixedPoint sinLookup(const FixedPoint& v);
++ //FixedPoint cosLookup(const FixedPoint& v);
++};
++
++
++
++int prepareMultiply(FixedPoint& r, FixedPoint&f) {
++ int shift = 0;
++ FixedPoint::_fp first;
++ if ( r.value < 0 ) {
++ first=0x4000000000000000LL;
++ while ( shift<FixedPoint::decimalPlaces && (r.value & first )) {
++ ++shift;
++ first>>=1;
++ }
++ } else {
++ first=0x4000000000000000LL;
++ while ( shift<FixedPoint::decimalPlaces && !(r.value & first )) {
++ ++shift;
++ first>>=1;
++ }
++ }
++ if ( f.value < 0 ) {
++ first=0x4000000000000000LL;
++ while ( shift<FixedPoint::decimalPlaces && (f.value & first )) {
++ ++shift;
++ first>>=1;
++ }
++ } else {
++ first=0x4000000000000000LL;
++ while ( shift<FixedPoint::decimalPlaces && !(f.value & first )) {
++ ++shift;
++ first>>=1;
++ }
++ }
++
++ if ( shift<FixedPoint::decimalPlaces ) {
++ int donow = FixedPoint::decimalPlaces-shift;
++ std::cerr << " prec loss " << donow << ": " << r << "/" << f << std::endl;
++ r.value >>= donow/2;
++ f.value >>= donow-(donow/2);
++ }
++ return shift;
++}
++
++void check_overflow(const FixedPoint&a, const FixedPoint&b) {
++ if ( a<0 && b<0 || (a>0 && b>0) ) {
++ if ( a.value * b.value < 0 )
++ std::cerr << " overflow1: " << a << " * " << b << "=" << a.value*b.value << std::endl;
++ } else if ( a.value * b.value > 0 )
++ std::cerr << " overflow2: " << a << " * " << b << "=" << a.value*b.value << std::endl;
++}
++
++#endif /* FIXEDPOINT__H__ */
+diff -NurBb src/Makefile.am patched_src/Makefile.am
+--- ccaudio2-0.9.0/src/Makefile.am 2006-03-01 17:43:29.000000000 +0100
++++ ccaudio2-0.9.0/patched_src/Makefile.am 2006-04-22 14:13:25.000000000 +0200
+@@ -14,12 +14,13 @@
+ RELEASE = -version-info @LT_VERSION@ -release @LT_RELEASE@
+ ccxxincludedir=$(includedir)/cc++
+ ccxxinclude_HEADERS = audio2.h
++AM_CXXFLAGS=-msoft-float
+
+ lib_LTLIBRARIES = libccaudio2.la
+
+ libccaudio2_la_SOURCES = audiofile.cpp friends.cpp codec.cpp tone.cpp \
+ fileio.cpp buffer.cpp stream.cpp oss.cpp w32.cpp osx.cpp \
+- mapper.cpp dialers.cpp teltones.cpp detect.cpp audiobase.cpp
++ mapper.cpp dialers.cpp teltones.cpp detect.cpp audiobase.cpp fixedPoint.C
+
+ libccaudio2_la_LDFLAGS = $(DYN_LOADER) $(AUDIO_LIBS) -lm $(RELEASE)
+
+diff -NurBb src/tone.cpp patched_src/tone.cpp
+--- ccaudio2-0.9.0/src/tone.cpp 2006-03-01 16:51:13.000000000 +0100
++++ ccaudio2-0.9.0/patched_src/tone.cpp 2006-04-22 14:13:25.000000000 +0200
+@@ -37,12 +37,15 @@
+
+ #include "private.h"
+ #include "audio2.h"
+-#include <cmath>
++#include "fixedPoint.H"
+
+ #ifndef M_PI
+ #define M_PI 3.14159265358979323846
+ #endif
+
++#undef M_PI
++#define M_PI FP_PI_TRIG
++
+ using namespace ost;
+
+ AudioTone::AudioTone(timeout_t duration, Rate r)
+@@ -59,8 +62,8 @@
+ AudioTone::AudioTone(unsigned freq, Level l, timeout_t duration, Rate r)
+ {
+ rate = r;
+- df1 = (freq * M_PI * 2) / (long)rate;
+- df2 = (freq * M_PI * 2) / (long)rate;
++ df1 = FixedPoint(freq * M_PI * 2) / (int)rate;
++ df2 = FixedPoint(freq * M_PI * 2) / (int)rate;
+ p1 = 0, p2 = 0;
+ samples = (duration * (long)rate) / 1000;
+ m1 = l / 2;
+@@ -73,8 +76,8 @@
+ AudioTone::AudioTone(unsigned f1, unsigned f2, Level l1, Level l2, timeout_t duration, Rate r)
+ {
+ rate = r;
+- df1 = (f1 * M_PI * 2) / (long)r;
+- df2 = (f2 * M_PI * 2) / (long)r;
++ df1 = FixedPoint(f1 * M_PI * 2) / (int)r;
++ df2 = FixedPoint(f2 * M_PI * 2) / (int)r;
+ p1 = 0, p2 = 0;
+ samples = (duration * (long)r) / 1000;
+ m1 = l1 / 2;
+@@ -124,8 +127,8 @@
+
+ void AudioTone::single(unsigned freq, Level l)
+ {
+- df1 = (freq * M_PI * 2) / (long)rate;
+- df2 = (freq * M_PI * 2) / (long)rate;
++ df1 = FixedPoint(freq * M_PI * 2) / (int)rate;
++ df2 = FixedPoint(freq * M_PI * 2) / (int)rate;
+ m1 = l / 2;
+ m2 = l / 2;
+ silencer = false;
+@@ -133,8 +136,8 @@
+
+ void AudioTone::dual(unsigned f1, unsigned f2, Level l1, Level l2)
+ {
+- df1 = (f1 * M_PI * 2) / (long)rate;
+- df2 = (f2 * M_PI * 2) / (long)rate;
++ df1 = FixedPoint(f1 * M_PI * 2) / (int)rate;
++ df2 = FixedPoint(f2 * M_PI * 2) / (int)rate;
+ m1 = l1 / 2;
+ m2 = l2 / 2;
+ silencer = false;
+@@ -188,8 +191,8 @@
+ continue;
+ }
+
+- *(data++) = (Level)(sin(p1) * (double)m1) +
+- (Level)(sin(p2) * (double)m2);
++ *(data++) = (Level)(int)(sin(p1) * m1) +
++ (Level)(int)(sin(p2) * m2);
+
+ p1 += df1;
+ p2 += df2;
+@@ -199,8 +202,8 @@
+ {
+ while(count--)
+ {
+- *(data++) = (Level)(sin(p1) * (double)m1) +
+- (Level)(sin(p2) * (double)m2);
++ *(data++) = (Level)(int)(sin(p1) * m1) +
++ (Level)(int)(sin(p2) * m2);
+
+ p1 += df1;
+ p2 += df2;
diff --git a/packages/libccaudio2/libccaudio2-0.9.0/02-ccaudio-stereo.diff b/packages/libccaudio2/libccaudio2-0.9.0/02-ccaudio-stereo.diff
new file mode 100644
index 0000000000..1643fd8d1c
--- /dev/null
+++ b/packages/libccaudio2/libccaudio2-0.9.0/02-ccaudio-stereo.diff
@@ -0,0 +1,54 @@
+diff -NurBb ccaudio2-0.9.0/src/detect.cpp /tmp/ccaudiosrc/detect.cpp
+--- ccaudio2-0.9.0/src/detect.cpp 2006-05-02 02:20:18.000000000 +0200
++++ tmp/ccaudiosrc/detect.cpp 2006-05-02 02:17:27.000000000 +0200
+@@ -32,6 +32,7 @@
+ #include <cctype>
+ #include <cmath>
+ #include <ctime>
++#include <iostream>
+
+ #ifdef HAVE_STDINT_H
+ #include <stdint.h>
+@@ -198,7 +199,7 @@
+ // time of a rolled loop on the machine on which it was developed
+ for(j = sample; j < limit; j++)
+ {
+- famp = amp[j];
++ famp = amp[2*j+1];
+ state->energy += famp*famp;
+
+ // With GCC 2.95, the following unrolled code seems to take about 35%
+diff -NurBb ccaudio2-0.9.0/src/oss.cpp /tmp/ccaudiosrc/oss.cpp
+--- ccaudio2-0.9.0/src/oss.cpp 2006-03-30 00:17:28.000000000 +0200
++++ tmp/ccaudiosrc/oss.cpp 2006-05-02 02:17:27.000000000 +0200
+@@ -39,7 +39,7 @@
+ #include "audio2.h"
+ #include <cmath>
+ #include <cstdio>
+-
++#include <iostream>
+ extern int _oss_ccaudio_dummy;
+ int _oss_ccaudio_dummy = 0;
+
+@@ -183,6 +183,10 @@
+
+ if(ioctl(dsp, SOUND_PCM_WRITE_RATE, &srate))
+ return false;
++ if ( srate == 0 ) {
++ std::cerr << "ossSetAudio: invalid rate " << rate << std::endl;
++ return false;
++ }
+
+ if(ioctl(dsp, SOUND_PCM_WRITE_CHANNELS, &channels))
+ return false;
+@@ -192,7 +196,10 @@
+ ioctl(dsp, SNDCTL_DSP_GETBLKSIZE, &blksize);
+ info.framesize = blksize;
+ info.framecount = toSamples(info.encoding, blksize);
++ if ( srate )
+ info.framing = (info.framecount * 1000l) / srate;
++ else
++ info.framing = (info.framecount * 500l);
+
+ bufsize = info.framecount * channels;
+
diff --git a/packages/libccaudio2/libccaudio2-0.9.0/03-ccaudio-dtmf-reset.diff b/packages/libccaudio2/libccaudio2-0.9.0/03-ccaudio-dtmf-reset.diff
new file mode 100644
index 0000000000..955de275a0
--- /dev/null
+++ b/packages/libccaudio2/libccaudio2-0.9.0/03-ccaudio-dtmf-reset.diff
@@ -0,0 +1,36 @@
+diff -NurbB ccaudio2-0.9.0/src/audio2.h ccaudio2-0.9.0.patched/src/audio2.h
+--- ccaudio2-0.9.0/src/audio2.h 2006-05-03 14:44:12.000000000 +0200
++++ ccaudio2-0.9.0.patched/src/audio2.h 2006-06-09 11:03:24.000000000 +0200
+@@ -1957,6 +1957,8 @@
+ */
+ inline bool isEnabled(void)
+ {return enabled;};
++
++ virtual void reset(void) {}
+ };
+
+ /**
+diff -NurbB ccaudio2-0.9.0/src/detect.cpp ccaudio2-0.9.0.patched/src/detect.cpp
+--- ccaudio2-0.9.0/src/detect.cpp 2006-05-03 14:44:12.000000000 +0200
++++ ccaudio2-0.9.0.patched/src/detect.cpp 2006-06-09 12:36:30.000000000 +0200
+@@ -316,7 +316,7 @@
+ }
+ // ... and second harmonic test
+ if(i >= 4 &&
+- (row_energy[best_row] + col_energy[best_col]) > 42.0*state->energy &&
++ (row_energy[best_row] + col_energy[best_col]) > 37.0*state->energy &&
+ goertzelResult (&state->col_out2nd[best_col])*DTMF_2ND_HARMONIC_COL < col_energy[best_col] &&
+ goertzelResult (&state->row_out2nd[best_row])*DTMF_2ND_HARMONIC_ROW < row_energy[best_row])
+ {
+diff -NurbB ccaudio2-0.9.0/src/oss.cpp ccaudio2-0.9.0.patched/src/oss.cpp
+--- ccaudio2-0.9.0/src/oss.cpp 2006-06-08 14:53:27.000000000 +0200
++++ ccaudio2-0.9.0.patched/src/oss.cpp 2006-06-08 20:07:30.000000000 +0200
+@@ -75,6 +75,8 @@
+ void resetRecord(void);
+ void enableRecord(void);
+ void disableRecord(void);
++ void reset(void) { ioctl(dsp, SNDCTL_DSP_RESET, NULL); }
++
+ };
+
+ OSSAudioDevice::OSSAudioDevice(int fdsp, int fmixer, DeviceMode mode)
diff --git a/packages/libccaudio2/libccaudio2_0.9.0.bb b/packages/libccaudio2/libccaudio2_0.9.0.bb
new file mode 100644
index 0000000000..1cfb715764
--- /dev/null
+++ b/packages/libccaudio2/libccaudio2_0.9.0.bb
@@ -0,0 +1,24 @@
+DESCRIPTION = "a C++ class library for generating and recognising sounds."
+HOMEPAGE = "http://www.gnu.org/software/ccaudio/"
+LICENSE = "GPL"
+MAINTAINER = "Martin Dietze <dietze@4g-systems.com>, Thomas Geffert <geffert@4g-systems.com>"
+
+SRC_URI = "http://ftp.gnu.org/pub/gnu/ccaudio/ccaudio2-${PV}.tar.gz \
+ file://01-ccaudio-fixed-point.diff;patch=1 \
+ file://02-ccaudio-stereo.diff;patch=1 \
+ file://03-ccaudio-dtmf-reset.diff;patch=1"
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/libccaudio2-${PV}"
+
+S = "${WORKDIR}/ccaudio2-${PV}"
+
+inherit autotools
+
+${EXTRA_OECONF}="-without-fp"
+
+do_stage () {
+ install -d ${STAGING_INCDIR}/cc++
+ install -m 0644 src/audio2.h ${STAGING_INCDIR}/cc++
+ install -m 0644 src/fixedPoint.H ${STAGING_INCDIR}/cc++
+ oe_libinstall -C src libccaudio2 ${STAGING_LIBDIR}
+}
diff --git a/packages/libpcre/.mtn2git_empty b/packages/libpcre/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/libpcre/.mtn2git_empty
diff --git a/packages/libpcre/libpcre-native_4.4.bb b/packages/libpcre/libpcre-native_4.4.bb
new file mode 100644
index 0000000000..7caddc321d
--- /dev/null
+++ b/packages/libpcre/libpcre-native_4.4.bb
@@ -0,0 +1,4 @@
+SECTION = "unknown"
+include libpcre_${PV}.bb
+inherit native
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/libpcre-${PV}"
diff --git a/packages/pcre/pcre_4.4.bb b/packages/libpcre/libpcre_4.4.bb
index 7603e11537..9974e85806 100644
--- a/packages/pcre/pcre_4.4.bb
+++ b/packages/libpcre/libpcre_4.4.bb
@@ -5,37 +5,29 @@ provides a POSIX calling interface to PCRE; the regular expressions \
themselves still follow Perl syntax and semantics. The header file for \
the POSIX-style functions is called pcreposix.h."
SECTION = "devel"
-PR = "r6"
-LICENSE = "BSD"
+PR = "r1"
+
SRC_URI = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-${PV}.tar.bz2"
S = "${WORKDIR}/pcre-${PV}"
inherit autotools binconfig
-PARALLEL_MAKE=""
-
LEAD_SONAME = "libpcre.so"
CFLAGS_append = " -D_REENTRANT"
EXTRA_OECONF = " --with-link-size=2 --enable-newline-is-lf --with-match-limit=10000000"
do_compile () {
- # stop libtool from trying to link with host libraries - fix from #33
- # this resolve build problem on amd64 - #1015
- sed -i 's:-L\$:-L${STAGING_LIBDIR} -L\$:' ${S}/${TARGET_SYS}-libtool
-
- # The generation of dftables can lead to timestamp problems with ccache
- # because the generated config.h seems newer. It is sufficient to ensure that the
- # attempt to build dftables inside make will actually work (foo_FOR_BUILD is
- # only used for this).
- oe_runmake CC_FOR_BUILD="${BUILD_CC}" CFLAGS_FOR_BUILD="-DLINK_SIZE=2 -I${S}/include" LINK_FOR_BUILD="${BUILD_CC}"
+ ${BUILD_CC} -DLINK_SIZE=2 -I${S}/include -c dftables.c
+ ${BUILD_CC} dftables.o -o dftables
+ oe_runmake
}
do_stage () {
- oe_libinstall -a -so libpcre ${STAGING_LIBDIR}
oe_libinstall -a -so libpcreposix ${STAGING_LIBDIR}
+ oe_libinstall -a -so libpcre ${STAGING_LIBDIR}
install -m 0644 pcre.h ${STAGING_INCDIR}/
install -m 0644 pcreposix.h ${STAGING_INCDIR}/
}
FILES_${PN} = "${libdir}/lib*.so*"
-FILES_${PN}-dev += "${bindir}/*"
+FILES_${PN}-dev += "${bindir}"
diff --git a/packages/linux/handhelds-pxa-2.6/h5xxx/defconfig b/packages/linux/handhelds-pxa-2.6/h5xxx/defconfig
index 82f309c895..b3f8f7c100 100644
--- a/packages/linux/handhelds-pxa-2.6/h5xxx/defconfig
+++ b/packages/linux/handhelds-pxa-2.6/h5xxx/defconfig
@@ -1,13 +1,15 @@
#
# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.16-hh5
-# Sat Aug 12 10:50:22 2006
+# Linux kernel version: 2.6.17-hh0
+# Sun Aug 27 16:30:03 2006
#
CONFIG_ARM=y
CONFIG_MMU=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
+CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_MTD_XIP=y
+CONFIG_VECTORS_BASE=0xffff0000
#
# Code maturity level options
@@ -32,6 +34,7 @@ CONFIG_SYSCTL=y
CONFIG_IKCONFIG=y
# CONFIG_MINIMAL_OOPS is not set
CONFIG_IKCONFIG_PROC=y
+# CONFIG_RELAY is not set
CONFIG_INITRAMFS_SOURCE=""
CONFIG_UID16=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -49,10 +52,6 @@ CONFIG_EPOLL=y
CONFIG_SHMEM=y
CONFIG_USELIB=y
CONFIG_CORE_DUMP=y
-CONFIG_CC_ALIGN_FUNCTIONS=0
-CONFIG_CC_ALIGN_LABELS=0
-CONFIG_CC_ALIGN_LOOPS=0
-CONFIG_CC_ALIGN_JUMPS=0
CONFIG_SLAB=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
@@ -65,7 +64,6 @@ CONFIG_OBSOLETE_INTERMODULE=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
-CONFIG_OBSOLETE_MODPARM=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y
@@ -73,6 +71,7 @@ CONFIG_KMOD=y
#
# Block layer
#
+# CONFIG_BLK_DEV_IO_TRACE is not set
#
# IO Schedulers
@@ -94,11 +93,13 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
# CONFIG_ARCH_CLPS711X is not set
# CONFIG_ARCH_CO285 is not set
# CONFIG_ARCH_EBSA110 is not set
+# CONFIG_ARCH_EP93XX is not set
# CONFIG_ARCH_FOOTBRIDGE is not set
# CONFIG_ARCH_INTEGRATOR is not set
# CONFIG_ARCH_IOP3XX is not set
# CONFIG_ARCH_IXP4XX is not set
# CONFIG_ARCH_IXP2000 is not set
+# CONFIG_ARCH_IXP23XX is not set
# CONFIG_ARCH_L7200 is not set
CONFIG_ARCH_PXA=y
# CONFIG_ARCH_RPC is not set
@@ -113,11 +114,13 @@ CONFIG_ARCH_PXA=y
# CONFIG_ARCH_H720X is not set
# CONFIG_ARCH_AAEC2000 is not set
# CONFIG_ARCH_AT91RM9200 is not set
+CONFIG_DMABOUNCE=y
#
# Intel PXA2xx Implementations
#
# CONFIG_ARCH_LUBBOCK is not set
+# CONFIG_MACH_LOGICPD_PXA270 is not set
# CONFIG_MACH_MAINSTONE is not set
# CONFIG_ARCH_PXA_IDP is not set
# CONFIG_ARCH_ESERIES is not set
@@ -130,7 +133,7 @@ CONFIG_ARCH_PXA=y
# CONFIG_MACH_H4700 is not set
# CONFIG_MACH_HX2750 is not set
CONFIG_ARCH_H5400=y
-# CONFIG_IPAQ_H5400_LCD is not set
+CONFIG_IPAQ_H5400_LCD=m
CONFIG_IPAQ_H5400_BATTERY=m
# CONFIG_MACH_HIMALAYA is not set
# CONFIG_MACH_HTCUNIVERSAL is not set
@@ -190,7 +193,6 @@ CONFIG_IPAQ_HANDHELD=y
#
# Compaq/HP iPAQ Drivers
#
-CONFIG_IPAQ_CLOCKS=y
CONFIG_IPAQ_SLEEVE=y
CONFIG_IPAQ_SAMCOP=y
# CONFIG_IPAQ_HAMCOP is not set
@@ -198,7 +200,6 @@ CONFIG_IPAQ_SAMCOP_TOUCHSCREEN=y
# CONFIG_IPAQ_SAMCOP_FSI is not set
# CONFIG_IPAQ_SAMCOP_SLEEVE is not set
CONFIG_IPAQ_SAMCOP_DMA=y
-CONFIG_DMABOUNCE=y
#
# Bus support
@@ -224,6 +225,7 @@ CONFIG_IPAQ_PCMCIA_SLEEVE=m
#
CONFIG_PREEMPT=y
# CONFIG_NO_IDLE_HZ is not set
+CONFIG_HZ=100
CONFIG_AEABI=y
CONFIG_OABI_COMPAT=y
# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
@@ -305,6 +307,7 @@ CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_INET_AH=m
CONFIG_INET_ESP=m
CONFIG_INET_IPCOMP=m
+CONFIG_INET_XFRM_TUNNEL=m
CONFIG_INET_TUNNEL=m
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
@@ -317,9 +320,11 @@ CONFIG_TCP_CONG_BIC=y
# CONFIG_IP_VS is not set
CONFIG_IPV6=m
# CONFIG_IPV6_PRIVACY is not set
+# CONFIG_IPV6_ROUTER_PREF is not set
CONFIG_INET6_AH=m
CONFIG_INET6_ESP=m
CONFIG_INET6_IPCOMP=m
+CONFIG_INET6_XFRM_TUNNEL=m
CONFIG_INET6_TUNNEL=m
CONFIG_IPV6_TUNNEL=m
CONFIG_NETFILTER=y
@@ -346,6 +351,7 @@ CONFIG_IP_NF_IRC=m
# CONFIG_IP_NF_TFTP is not set
# CONFIG_IP_NF_AMANDA is not set
# CONFIG_IP_NF_PPTP is not set
+# CONFIG_IP_NF_H323 is not set
# CONFIG_IP_NF_QUEUE is not set
#
@@ -376,6 +382,7 @@ CONFIG_IP_NF_IRC=m
CONFIG_BRIDGE=m
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
+CONFIG_LLC=m
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
@@ -473,6 +480,8 @@ CONFIG_IEEE80211=m
CONFIG_IEEE80211_CRYPT_WEP=m
CONFIG_IEEE80211_CRYPT_CCMP=m
CONFIG_IEEE80211_CRYPT_TKIP=m
+# CONFIG_IEEE80211_SOFTMAC is not set
+CONFIG_WIRELESS_EXT=y
#
# Device Drivers
@@ -561,7 +570,6 @@ CONFIG_MTD_IPAQ=y
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_PHRAM is not set
# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_BLKMTD is not set
# CONFIG_MTD_BLOCK2MTD is not set
#
@@ -740,6 +748,7 @@ CONFIG_TUN=m
# Wireless LAN (non-hamradio)
#
CONFIG_NET_RADIO=y
+# CONFIG_NET_WIRELESS_RTNETLINK is not set
#
# Obsolete Wireless cards support (pre-802.11)
@@ -898,9 +907,7 @@ CONFIG_I2C_PXA=y
# CONFIG_SENSORS_PCA9539 is not set
# CONFIG_SENSORS_PCA9535 is not set
# CONFIG_SENSORS_PCF8591 is not set
-# CONFIG_SENSORS_RTC8564 is not set
# CONFIG_SENSORS_MAX6875 is not set
-# CONFIG_RTC_X1205_I2C is not set
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
@@ -971,10 +978,19 @@ CONFIG_SA1100_RTC=y
# Dallas's 1-wire bus
#
CONFIG_W1=y
-# CONFIG_W1_DS9490 is not set
-# CONFIG_W1_THERM is not set
-# CONFIG_W1_SMEM is not set
-# CONFIG_W1_DS2433 is not set
+
+#
+# 1-wire Bus Masters
+#
+# CONFIG_W1_MASTER_DS9490 is not set
+# CONFIG_W1_MASTER_DS2482 is not set
+
+#
+# 1-wire Slaves
+#
+# CONFIG_W1_SLAVE_THERM is not set
+# CONFIG_W1_SLAVE_SMEM is not set
+# CONFIG_W1_SLAVE_DS2433 is not set
CONFIG_W1_SAMCOP=y
CONFIG_W1_DS2760=y
@@ -1032,7 +1048,7 @@ CONFIG_SOC_MQ11XX=y
#
# Misc devices
#
-# CONFIG_BATTERY_MONITOR is not set
+CONFIG_BATTERY_MONITOR=y
#
# Multimedia Capabilities Port drivers
@@ -1040,31 +1056,76 @@ CONFIG_SOC_MQ11XX=y
# CONFIG_MCP is not set
#
-# Multimedia Capabilities Port drivers
+# LED devices
+#
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+
+#
+# LED drivers
#
#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=m
+CONFIG_LEDS_TRIGGER_IDE_DISK=y
+
+#
# Multimedia devices
#
CONFIG_VIDEO_DEV=m
+CONFIG_VIDEO_V4L1=y
+CONFIG_VIDEO_V4L1_COMPAT=y
+CONFIG_VIDEO_V4L2=y
#
-# Video For Linux
+# Video Capture Adapters
#
#
-# Video Adapters
+# Video Capture Adapters
#
# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_VIVI is not set
CONFIG_VIDEO_CPIA=m
# CONFIG_VIDEO_CPIA_USB is not set
+# CONFIG_VIDEO_CPIA2 is not set
# CONFIG_VIDEO_SAA5246A is not set
# CONFIG_VIDEO_SAA5249 is not set
# CONFIG_TUNER_3036 is not set
-# CONFIG_VIDEO_EM28XX is not set
# CONFIG_VIDEO_OVCAMCHIP is not set
-# CONFIG_VIDEO_AUDIO_DECODER is not set
-# CONFIG_VIDEO_DECODER is not set
+
+#
+# Encoders and Decoders
+#
+# CONFIG_VIDEO_MSP3400 is not set
+# CONFIG_VIDEO_CS53L32A is not set
+# CONFIG_VIDEO_WM8775 is not set
+# CONFIG_VIDEO_WM8739 is not set
+# CONFIG_VIDEO_CX25840 is not set
+# CONFIG_VIDEO_SAA711X is not set
+# CONFIG_VIDEO_SAA7127 is not set
+# CONFIG_VIDEO_UPD64031A is not set
+# CONFIG_VIDEO_UPD64083 is not set
+
+#
+# V4L USB devices
+#
+# CONFIG_VIDEO_EM28XX is not set
+# CONFIG_USB_DSBR is not set
+# CONFIG_USB_VICAM is not set
+# CONFIG_USB_IBMCAM is not set
+# CONFIG_USB_KONICAWC is not set
+# CONFIG_USB_ET61X251 is not set
+# CONFIG_USB_OV511 is not set
+# CONFIG_USB_SE401 is not set
+# CONFIG_USB_SN9C102 is not set
+# CONFIG_USB_STV680 is not set
+# CONFIG_USB_W9968CF is not set
+# CONFIG_USB_ZC0301 is not set
+# CONFIG_USB_PWC is not set
#
# Radio Adapters
@@ -1075,6 +1136,7 @@ CONFIG_VIDEO_CPIA=m
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set
+# CONFIG_USB_DABUSB is not set
#
# Graphics support
@@ -1084,12 +1146,12 @@ CONFIG_FB_CFB_FILLRECT=m
CONFIG_FB_CFB_COPYAREA=m
CONFIG_FB_CFB_IMAGEBLIT=m
# CONFIG_FB_MACMODES is not set
+CONFIG_FB_FIRMWARE_EDID=y
# CONFIG_FB_MODE_HELPERS is not set
# CONFIG_FB_TILEBLITTING is not set
# CONFIG_FB_IMAGEON is not set
# CONFIG_FB_S1D13XXX is not set
-CONFIG_FB_PXA=m
-# CONFIG_FB_PXA_PARAMETERS is not set
+# CONFIG_FB_PXA is not set
CONFIG_FB_MQ1100=m
# CONFIG_FB_VIRTUAL is not set
@@ -1117,9 +1179,9 @@ CONFIG_FONT_MINI_4x6=y
#
# CONFIG_LOGO is not set
CONFIG_BACKLIGHT_LCD_SUPPORT=y
-CONFIG_BACKLIGHT_CLASS_DEVICE=m
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_DEVICE=y
-CONFIG_LCD_CLASS_DEVICE=m
+CONFIG_LCD_CLASS_DEVICE=y
CONFIG_LCD_DEVICE=y
#
@@ -1132,6 +1194,7 @@ CONFIG_LCD_DEVICE=y
#
CONFIG_USB_ARCH_HAS_HCD=y
# CONFIG_USB_ARCH_HAS_OHCI is not set
+# CONFIG_USB_ARCH_HAS_EHCI is not set
CONFIG_USB=m
# CONFIG_USB_DEBUG is not set
@@ -1182,9 +1245,7 @@ CONFIG_USB_SL811_CS=m
# CONFIG_USB_ACECAD is not set
# CONFIG_USB_KBTAB is not set
# CONFIG_USB_POWERMATE is not set
-# CONFIG_USB_MTOUCH is not set
-# CONFIG_USB_ITMTOUCH is not set
-# CONFIG_USB_EGALAX is not set
+# CONFIG_USB_TOUCHSCREEN is not set
# CONFIG_USB_YEALINK is not set
# CONFIG_USB_XPAD is not set
# CONFIG_USB_ATI_REMOTE is not set
@@ -1199,21 +1260,6 @@ CONFIG_USB_SL811_CS=m
# CONFIG_USB_MICROTEK is not set
#
-# USB Multimedia devices
-#
-# CONFIG_USB_DABUSB is not set
-# CONFIG_USB_VICAM is not set
-# CONFIG_USB_DSBR is not set
-# CONFIG_USB_ET61X251 is not set
-# CONFIG_USB_IBMCAM is not set
-# CONFIG_USB_KONICAWC is not set
-# CONFIG_USB_OV511 is not set
-# CONFIG_USB_SE401 is not set
-# CONFIG_USB_SN9C102 is not set
-# CONFIG_USB_STV680 is not set
-# CONFIG_USB_PWC is not set
-
-#
# USB Network Adapters
#
# CONFIG_USB_CATC is not set
@@ -1269,6 +1315,7 @@ CONFIG_USB_PXA2XX_SMALL=y
# CONFIG_USB_GADGET_MQ11XX is not set
# CONFIG_USB_GADGET_LH7A40X is not set
# CONFIG_USB_GADGET_OMAP is not set
+# CONFIG_USB_GADGET_AT91 is not set
# CONFIG_USB_GADGET_DUMMY_HCD is not set
# CONFIG_USB_GADGET_DUALSPEED is not set
# CONFIG_USB_ZERO is not set
@@ -1291,9 +1338,10 @@ CONFIG_MMC_SAMCOP=y
# CONFIG_MMC_ASIC3 is not set
#
-# LED devices
+# Real Time Clock
#
-CONFIG_CLASS_LEDS=y
+CONFIG_RTC_LIB=y
+# CONFIG_RTC_CLASS is not set
#
# File systems
@@ -1351,7 +1399,6 @@ CONFIG_SYSFS=y
CONFIG_TMPFS=y
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y
-# CONFIG_RELAYFS_FS is not set
# CONFIG_CONFIGFS_FS is not set
#
@@ -1483,6 +1530,7 @@ CONFIG_DEBUG_MUTEXES=y
# CONFIG_DEBUG_FS is not set
# CONFIG_DEBUG_VM is not set
CONFIG_FRAME_POINTER=y
+# CONFIG_UNWIND_INFO is not set
CONFIG_FORCED_INLINING=y
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_DEBUG_USER is not set
diff --git a/packages/linux/handhelds-pxa-2.6/ipaq-pxa270/defconfig b/packages/linux/handhelds-pxa-2.6/ipaq-pxa270/defconfig
index da28b781af..7fadc7ae3a 100644
--- a/packages/linux/handhelds-pxa-2.6/ipaq-pxa270/defconfig
+++ b/packages/linux/handhelds-pxa-2.6/ipaq-pxa270/defconfig
@@ -776,7 +776,7 @@ CONFIG_HOSTAP=m
CONFIG_HOSTAP_FIRMWARE=y
CONFIG_HOSTAP_FIRMWARE_NVRAM=y
CONFIG_HOSTAP_CS=m
-CONFIG_ACX=m
+CONFIG_ACX=y
# CONFIG_ACX_USB is not set
CONFIG_ACX_MEM=y
CONFIG_ACX_HX4700=m
diff --git a/packages/meta/nylon-feed.bb b/packages/meta/nylon-feed.bb
index f5b803f58e..40faab8056 100644
--- a/packages/meta/nylon-feed.bb
+++ b/packages/meta/nylon-feed.bb
@@ -1,99 +1,43 @@
-DEPENDS = " \
-base-files \
-bash \
-bridge-utils \
-busybox \
-chillispot \
-dash \
-db3 \
-ddclient \
-dhcp-forwarder \
-dhcp \
-dnsmasq \
-expat \
-gdb \
-glib-2.0 \
-glibc \
-gmp \
-gnupg \
-hostap-modules \
-hostap-utils \
-hostap-daemon \
-linux-hotplug \
-htb-init \
-ifplugd \
-initscripts \
-iperf \
-ipkg \
-iproute2 \
-iptables \
-virtual/kernel \
-kismet \
-less \
-libcgicc \
-libmail-sendmail-perl \
-libnetserver-generic-perl \
-libpcap \
-lsof \
-lzo \
-madwifi-modules \
-maradns \
-mc \
-mobilemesh \
-modutils \
-mtd-utils \
-mtr \
-nano \
-ncurses \
-netbase \
-netperf \
-net-snmp \
-ntp \
-nylon-scripts \
-nylon-statistics \
-olsrd \
-openssh \
-openssl \
-openvpn \
-openswan \
-pciutils \
-pcre \
-perl \
-pmacct \
-ppp \
-ppp-dsl \
-rp-pppoe \
-rrdtool \
-prism2-firmware-update \
-prism54-module \
-prism54-firmware \
-shorewall \
-stunnel \
-sysvinit \
-tcpdump \
-tinc \
-timezones \
-usbutils \
-vtun \
-wireless-tools \
-wlan-ng-modules \
-yamonenv \
-zlib \
-"
+LICENSE = MIT
-# TODO:
-# ksymoops / binutils
-# strace: SYS_read?
-# gdb-cross: install paths, sdk?
-# screen: sgttyb?
-# nocat?
-# pptp
-# meshroaming
+include nylon-feed.inc
+DEPENDS = "${NYLON_FEED} \
+ db3 \
+ dhcp \
+ dhcp-forwarder \
+ expat \
+ glib-2.0 \
+ glibc \
+ gmp \
+ hotplug \
+ iproute2 \
+ libcgicc \
+ libedit \
+ libmail-sendmail-perl \
+ libnetserver-generic-perl \
+ lzo \
+ make \
+ mystun-server \
+ mc \
+ net-snmp \
+ ntp \
+ openssl \
+ openswan \
+ openvpn \
+ pcre \
+ ppp-dsl \
+ rp-pppoe \
+ simple-firewall \
+ thttpd \
+ vsftpd \
+ wget \
+ wlan-ng-modules \
+ zlib \
+"
do_index() {
- ipkg-make-index -r ${DEPLOY_DIR_IPK}/Packages -p ${DEPLOY_DIR_IPK}/Packages -l ${DEPLOY_DIR_IPK}/Packages.filelist -m ${DEPLOY_DIR_IPK}
+ ipkg-make-index -r ${DEPLOY_DIR_IPK}/Packages -p ${DEPLOY_DIR_IPK}/Packages -l ${DEPLOY_DIR_IPK}/Packages.filelist -m ${DEPLOY_DIR_IPK}
}
addtask index before do_build after do_install
-LICENSE = MIT
diff --git a/packages/meta/nylon-feed.inc b/packages/meta/nylon-feed.inc
new file mode 100644
index 0000000000..f2e55dc3a6
--- /dev/null
+++ b/packages/meta/nylon-feed.inc
@@ -0,0 +1,68 @@
+NYLON_FEED = " \
+base-files \
+bash \
+binutils \
+bridge-utils \
+busybox \
+chillispot \
+dash \
+ddclient \
+dnsmasq \
+gdb \
+gnupg \
+hostap-modules \
+hostap-utils \
+hostap-daemon \
+hotplug-ng \
+htb-init \
+ifplugd \
+initscripts \
+iperf \
+ipkg \
+iptables \
+kismet \
+ksymoops \
+less \
+lsof \
+madwifi-modules \
+maradns \
+minicom \
+mobilemesh \
+modutils \
+mtd-utils \
+mtr \
+nano \
+ncurses \
+netbase \
+netperf \
+nylon-scripts \
+nylon-statistics \
+olsrd \
+openssh \
+pciutils \
+pcmcia-cs \
+perl \
+pmacct \
+ppp \
+pptp-linux \
+rrdtool \
+ser \
+shorewall \
+stunnel \
+sysvinit \
+tcl \
+tcpdump \
+tinc \
+timezones \
+usbutils \
+vtun \
+wireless-tools \
+wpa-supplicant \
+yamonenv \
+"
+
+# TODO:
+# strace: SYS_read?
+# gdb-cross: install paths, sdk?
+# screen: sgttyb?
+
diff --git a/packages/modutils/files/mtx-2/.mtn2git_empty b/packages/modutils/files/mtx-2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/modutils/files/mtx-2/.mtn2git_empty
diff --git a/packages/modutils/files/mtx-2/modules b/packages/modutils/files/mtx-2/modules
new file mode 100644
index 0000000000..3eb719acf9
--- /dev/null
+++ b/packages/modutils/files/mtx-2/modules
@@ -0,0 +1,3 @@
+tun
+ppp_async
+hostap_pci \ No newline at end of file
diff --git a/packages/net-snmp/files/mtx-2/.mtn2git_empty b/packages/net-snmp/files/mtx-2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/net-snmp/files/mtx-2/.mtn2git_empty
diff --git a/packages/net-snmp/files/mtx-2/snmpd.conf b/packages/net-snmp/files/mtx-2/snmpd.conf
new file mode 100644
index 0000000000..9067f68d22
--- /dev/null
+++ b/packages/net-snmp/files/mtx-2/snmpd.conf
@@ -0,0 +1,434 @@
+###############################################################################
+#
+# EXAMPLE.conf:
+# An example configuration file for configuring the ucd-snmp snmpd agent.
+#
+###############################################################################
+#
+# This file is intended to only be an example. If, however, you want
+# to use it, it should be placed in /etc/snmp/snmpd.conf.
+# When the snmpd agent starts up, this is where it will look for it.
+#
+# You might be interested in generating your own snmpd.conf file using
+# the "snmpconf" program (perl script) instead. It's a nice menu
+# based interface to writing well commented configuration files. Try it!
+#
+# Note: This file is automatically generated from EXAMPLE.conf.def.
+# Do NOT read the EXAMPLE.conf.def file! Instead, after you have run
+# configure & make, and then make sure you read the EXAMPLE.conf file
+# instead, as it will tailor itself to your configuration.
+
+# All lines beginning with a '#' are comments and are intended for you
+# to read. All other lines are configuration commands for the agent.
+
+#
+# PLEASE: read the snmpd.conf(5) manual page as well!
+#
+
+
+###############################################################################
+# Access Control
+###############################################################################
+
+# YOU SHOULD CHANGE THE "COMMUNITY" TOKEN BELOW TO A NEW KEYWORD ONLY
+# KNOWN AT YOUR SITE. YOU *MUST* CHANGE THE NETWORK TOKEN BELOW TO
+# SOMETHING REFLECTING YOUR LOCAL NETWORK ADDRESS SPACE.
+
+# By far, the most common question I get about the agent is "why won't
+# it work?", when really it should be "how do I configure the agent to
+# allow me to access it?"
+#
+# By default, the agent responds to the "public" community for read
+# only access, if run out of the box without any configuration file in
+# place. The following examples show you other ways of configuring
+# the agent so that you can change the community names, and give
+# yourself write access as well.
+#
+# The following lines change the access permissions of the agent so
+# that the COMMUNITY string provides read-only access to your entire
+# NETWORK (EG: 10.10.10.0/24), and read/write access to only the
+# localhost (127.0.0.1, not its real ipaddress).
+#
+# For more information, read the FAQ as well as the snmpd.conf(5)
+# manual page.
+
+####
+# First, map the community name (COMMUNITY) into a security name
+# (local and mynetwork, depending on where the request is coming
+# from):
+
+# sec.name source community
+#com2sec paranoid default public
+com2sec readonly default public
+#com2sec readwrite default private
+
+####
+# Second, map the security names into group names:
+
+# sec.model sec.name
+group MyROSystem v1 paranoid
+group MyROSystem v2c paranoid
+group MyROSystem usm paranoid
+group MyROGroup v1 readonly
+group MyROGroup v2c readonly
+group MyROGroup usm readonly
+group MyRWGroup v1 readwrite
+group MyRWGroup v2c readwrite
+group MyRWGroup usm readwrite
+
+####
+# Third, create a view for us to let the groups have rights to:
+
+# incl/excl subtree mask
+view all included .1 80
+view system included .iso.org.dod.internet.mgmt.mib-2.system
+
+####
+# Finally, grant the 2 groups access to the 1 view with different
+# write permissions:
+
+# context sec.model sec.level match read write notif
+access MyROSystem "" any noauth exact system none none
+access MyROGroup "" any noauth exact all none none
+access MyRWGroup "" any noauth exact all all none
+
+# -----------------------------------------------------------------------------
+
+
+###############################################################################
+# System contact information
+#
+
+# It is also possible to set the sysContact and sysLocation system
+# variables through the snmpd.conf file. **PLEASE NOTE** that setting
+# the value of these objects here makes these objects READ-ONLY
+# (regardless of any access control settings). Any attempt to set the
+# value of an object whose value is given here will fail with an error
+# status of notWritable.
+
+syslocation Unknown (configure /etc/snmp/snmpd.local.conf)
+syscontact Root <root@localhost> (configure /etc/snmp/snmpd.local.conf)
+
+# Example output of snmpwalk:
+# % snmpwalk -v 1 -c public localhost system
+# system.sysDescr.0 = "SunOS name sun4c"
+# system.sysObjectID.0 = OID: enterprises.ucdavis.ucdSnmpAgent.sunos4
+# system.sysUpTime.0 = Timeticks: (595637548) 68 days, 22:32:55
+# system.sysContact.0 = "Me <me@somewhere.org>"
+# system.sysName.0 = "name"
+# system.sysLocation.0 = "Right here, right now."
+# system.sysServices.0 = 72
+
+
+# -----------------------------------------------------------------------------
+
+
+###############################################################################
+# Process checks.
+#
+# The following are examples of how to use the agent to check for
+# processes running on the host. The syntax looks something like:
+#
+# proc NAME [MAX=0] [MIN=0]
+#
+# NAME: the name of the process to check for. It must match
+# exactly (ie, http will not find httpd processes).
+# MAX: the maximum number allowed to be running. Defaults to 0.
+# MIN: the minimum number to be running. Defaults to 0.
+
+#
+# Examples:
+#
+
+# Make sure mountd is running
+#proc mountd
+
+# Make sure there are no more than 4 ntalkds running, but 0 is ok too.
+#proc ntalkd 4
+
+# Make sure at least one sendmail, but less than or equal to 10 are running.
+#proc sendmail 10 1
+
+# A snmpwalk of the prTable would look something like this:
+#
+# % snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.2
+# enterprises.ucdavis.procTable.prEntry.prIndex.1 = 1
+# enterprises.ucdavis.procTable.prEntry.prIndex.2 = 2
+# enterprises.ucdavis.procTable.prEntry.prIndex.3 = 3
+# enterprises.ucdavis.procTable.prEntry.prNames.1 = "mountd"
+# enterprises.ucdavis.procTable.prEntry.prNames.2 = "ntalkd"
+# enterprises.ucdavis.procTable.prEntry.prNames.3 = "sendmail"
+# enterprises.ucdavis.procTable.prEntry.prMin.1 = 0
+# enterprises.ucdavis.procTable.prEntry.prMin.2 = 0
+# enterprises.ucdavis.procTable.prEntry.prMin.3 = 1
+# enterprises.ucdavis.procTable.prEntry.prMax.1 = 0
+# enterprises.ucdavis.procTable.prEntry.prMax.2 = 4
+# enterprises.ucdavis.procTable.prEntry.prMax.3 = 10
+# enterprises.ucdavis.procTable.prEntry.prCount.1 = 0
+# enterprises.ucdavis.procTable.prEntry.prCount.2 = 0
+# enterprises.ucdavis.procTable.prEntry.prCount.3 = 1
+# enterprises.ucdavis.procTable.prEntry.prErrorFlag.1 = 1
+# enterprises.ucdavis.procTable.prEntry.prErrorFlag.2 = 0
+# enterprises.ucdavis.procTable.prEntry.prErrorFlag.3 = 0
+# enterprises.ucdavis.procTable.prEntry.prErrMessage.1 = "No mountd process running."
+# enterprises.ucdavis.procTable.prEntry.prErrMessage.2 = ""
+# enterprises.ucdavis.procTable.prEntry.prErrMessage.3 = ""
+# enterprises.ucdavis.procTable.prEntry.prErrFix.1 = 0
+# enterprises.ucdavis.procTable.prEntry.prErrFix.2 = 0
+# enterprises.ucdavis.procTable.prEntry.prErrFix.3 = 0
+#
+# Note that the errorFlag for mountd is set to 1 because one is not
+# running (in this case an rpc.mountd is, but thats not good enough),
+# and the ErrMessage tells you what's wrong. The configuration
+# imposed in the snmpd.conf file is also shown.
+#
+# Special Case: When the min and max numbers are both 0, it assumes
+# you want a max of infinity and a min of 1.
+#
+
+
+# -----------------------------------------------------------------------------
+
+
+###############################################################################
+# Executables/scripts
+#
+
+#
+# You can also have programs run by the agent that return a single
+# line of output and an exit code. Here are two examples.
+#
+# exec NAME PROGRAM [ARGS ...]
+#
+# NAME: A generic name.
+# PROGRAM: The program to run. Include the path!
+# ARGS: optional arguments to be passed to the program
+
+# a simple hello world
+#exec echotest /bin/echo hello world
+
+# Run a shell script containing:
+#
+# #!/bin/sh
+# echo hello world
+# echo hi there
+# exit 35
+#
+# Note: this has been specifically commented out to prevent
+# accidental security holes due to someone else on your system writing
+# a /tmp/shtest before you do. Uncomment to use it.
+#
+#exec shelltest /bin/sh /tmp/shtest
+
+# Then,
+# % snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.8
+# enterprises.ucdavis.extTable.extEntry.extIndex.1 = 1
+# enterprises.ucdavis.extTable.extEntry.extIndex.2 = 2
+# enterprises.ucdavis.extTable.extEntry.extNames.1 = "echotest"
+# enterprises.ucdavis.extTable.extEntry.extNames.2 = "shelltest"
+# enterprises.ucdavis.extTable.extEntry.extCommand.1 = "/bin/echo hello world"
+# enterprises.ucdavis.extTable.extEntry.extCommand.2 = "/bin/sh /tmp/shtest"
+# enterprises.ucdavis.extTable.extEntry.extResult.1 = 0
+# enterprises.ucdavis.extTable.extEntry.extResult.2 = 35
+# enterprises.ucdavis.extTable.extEntry.extOutput.1 = "hello world."
+# enterprises.ucdavis.extTable.extEntry.extOutput.2 = "hello world."
+# enterprises.ucdavis.extTable.extEntry.extErrFix.1 = 0
+# enterprises.ucdavis.extTable.extEntry.extErrFix.2 = 0
+
+# Note that the second line of the /tmp/shtest shell script is cut
+# off. Also note that the exit status of 35 was returned.
+
+# -----------------------------------------------------------------------------
+
+
+###############################################################################
+# disk checks
+#
+
+# The agent can check the amount of available disk space, and make
+# sure it is above a set limit.
+
+# disk PATH [MIN=DEFDISKMINIMUMSPACE]
+#
+# PATH: mount path to the disk in question.
+# MIN: Disks with space below this value will have the Mib's errorFlag set.
+# Default value = DEFDISKMINIMUMSPACE.
+
+# Check the / partition and make sure it contains at least 10 megs.
+
+#disk / 10000
+
+# % snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.9
+# enterprises.ucdavis.diskTable.dskEntry.diskIndex.1 = 0
+# enterprises.ucdavis.diskTable.dskEntry.diskPath.1 = "/" Hex: 2F
+# enterprises.ucdavis.diskTable.dskEntry.diskDevice.1 = "/dev/dsk/c201d6s0"
+# enterprises.ucdavis.diskTable.dskEntry.diskMinimum.1 = 10000
+# enterprises.ucdavis.diskTable.dskEntry.diskTotal.1 = 837130
+# enterprises.ucdavis.diskTable.dskEntry.diskAvail.1 = 316325
+# enterprises.ucdavis.diskTable.dskEntry.diskUsed.1 = 437092
+# enterprises.ucdavis.diskTable.dskEntry.diskPercent.1 = 58
+# enterprises.ucdavis.diskTable.dskEntry.diskErrorFlag.1 = 0
+# enterprises.ucdavis.diskTable.dskEntry.diskErrorMsg.1 = ""
+
+# -----------------------------------------------------------------------------
+
+
+###############################################################################
+# load average checks
+#
+
+# load [1MAX=DEFMAXLOADAVE] [5MAX=DEFMAXLOADAVE] [15MAX=DEFMAXLOADAVE]
+#
+# 1MAX: If the 1 minute load average is above this limit at query
+# time, the errorFlag will be set.
+# 5MAX: Similar, but for 5 min average.
+# 15MAX: Similar, but for 15 min average.
+
+# Check for loads:
+#load 12 14 14
+
+# % snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.10
+# enterprises.ucdavis.loadTable.laEntry.loadaveIndex.1 = 1
+# enterprises.ucdavis.loadTable.laEntry.loadaveIndex.2 = 2
+# enterprises.ucdavis.loadTable.laEntry.loadaveIndex.3 = 3
+# enterprises.ucdavis.loadTable.laEntry.loadaveNames.1 = "Load-1"
+# enterprises.ucdavis.loadTable.laEntry.loadaveNames.2 = "Load-5"
+# enterprises.ucdavis.loadTable.laEntry.loadaveNames.3 = "Load-15"
+# enterprises.ucdavis.loadTable.laEntry.loadaveLoad.1 = "0.49" Hex: 30 2E 34 39
+# enterprises.ucdavis.loadTable.laEntry.loadaveLoad.2 = "0.31" Hex: 30 2E 33 31
+# enterprises.ucdavis.loadTable.laEntry.loadaveLoad.3 = "0.26" Hex: 30 2E 32 36
+# enterprises.ucdavis.loadTable.laEntry.loadaveConfig.1 = "12.00"
+# enterprises.ucdavis.loadTable.laEntry.loadaveConfig.2 = "14.00"
+# enterprises.ucdavis.loadTable.laEntry.loadaveConfig.3 = "14.00"
+# enterprises.ucdavis.loadTable.laEntry.loadaveErrorFlag.1 = 0
+# enterprises.ucdavis.loadTable.laEntry.loadaveErrorFlag.2 = 0
+# enterprises.ucdavis.loadTable.laEntry.loadaveErrorFlag.3 = 0
+# enterprises.ucdavis.loadTable.laEntry.loadaveErrMessage.1 = ""
+# enterprises.ucdavis.loadTable.laEntry.loadaveErrMessage.2 = ""
+# enterprises.ucdavis.loadTable.laEntry.loadaveErrMessage.3 = ""
+
+# -----------------------------------------------------------------------------
+
+
+###############################################################################
+# Extensible sections.
+#
+
+# This alleviates the multiple line output problem found in the
+# previous executable mib by placing each mib in its own mib table:
+
+# Run a shell script containing:
+#
+# #!/bin/sh
+# echo hello world
+# echo hi there
+# exit 35
+#
+# Note: this has been specifically commented out to prevent
+# accidental security holes due to someone else on your system writing
+# a /tmp/shtest before you do. Uncomment to use it.
+#
+# exec .1.3.6.1.4.1.2021.50 shelltest /bin/sh /tmp/shtest
+
+# % snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.50
+# enterprises.ucdavis.50.1.1 = 1
+# enterprises.ucdavis.50.2.1 = "shelltest"
+# enterprises.ucdavis.50.3.1 = "/bin/sh /tmp/shtest"
+# enterprises.ucdavis.50.100.1 = 35
+# enterprises.ucdavis.50.101.1 = "hello world."
+# enterprises.ucdavis.50.101.2 = "hi there."
+# enterprises.ucdavis.50.102.1 = 0
+
+# Now the Output has grown to two lines, and we can see the 'hi
+# there.' output as the second line from our shell script.
+#
+# Note that you must alter the mib.txt file to be correct if you want
+# the .50.* outputs above to change to reasonable text descriptions.
+
+# Other ideas:
+#
+# exec .1.3.6.1.4.1.2021.51 ps /bin/ps
+# exec .1.3.6.1.4.1.2021.52 top /usr/local/bin/top
+# exec .1.3.6.1.4.1.2021.53 mailq /usr/bin/mailq
+
+# -----------------------------------------------------------------------------
+
+
+###############################################################################
+# Pass through control.
+#
+
+# Usage:
+# pass MIBOID EXEC-COMMAND
+#
+# This will pass total control of the mib underneath the MIBOID
+# portion of the mib to the EXEC-COMMAND.
+#
+# Note: You'll have to change the path of the passtest script to your
+# source directory or install it in the given location.
+#
+# Example: (see the script for details)
+# (commented out here since it requires that you place the
+# script in the right location. (its not installed by default))
+
+# pass .1.3.6.1.4.1.2021.255 /bin/sh /usr/local/passtest
+
+# % snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.255
+# enterprises.ucdavis.255.1 = "life the universe and everything"
+# enterprises.ucdavis.255.2.1 = 42
+# enterprises.ucdavis.255.2.2 = OID: 42.42.42
+# enterprises.ucdavis.255.3 = Timeticks: (363136200) 42 days, 0:42:42
+# enterprises.ucdavis.255.4 = IpAddress: 127.0.0.1
+# enterprises.ucdavis.255.5 = 42
+# enterprises.ucdavis.255.6 = Gauge: 42
+#
+# % snmpget -v 1 -c public localhost .1.3.6.1.4.1.2021.255.5
+# enterprises.ucdavis.255.5 = 42
+#
+# % snmpset -v 1 -c public localhost .1.3.6.1.4.1.2021.255.1 s "New string"
+# enterprises.ucdavis.255.1 = "New string"
+#
+
+# For specific usage information, see the man/snmpd.conf.5 manual page
+# as well as the local/passtest script used in the above example.
+
+###############################################################################
+# Subagent control
+#
+
+# The agent can support subagents using a number of extension mechanisms.
+# From the 4.2.1 release, AgentX support is being compiled in by default.
+# However, this is still experimental code, so should not be used on
+# critical production systems.
+# Please see the file README.agentx for more details.
+#
+# If having read, marked, learnt and inwardly digested this information,
+# you decide that you do wish to make use of this mechanism, simply
+# uncomment the following directive.
+#
+# master agentx
+#
+# I repeat - this is *NOT* regarded as suitable for front-line production
+# systems, though it is probably stable enough for day-to-day use.
+# Probably.
+#
+# No refunds will be given.
+
+###############################################################################
+# Further Information
+#
+# See the snmpd.conf manual page, and the output of "snmpd -H".
+# MUCH more can be done with the snmpd.conf than is shown as an
+# example here.
+
+###############################################################################
+# interfaces
+
+# types:
+# ieee80211(71)
+# ethernetCsmacd(6),
+
+# interface name type speed
+interface eth0 6 100000000
+interface wlan0 71 5000000
+interface wlan1 71 5000000
diff --git a/packages/netbase/netbase/mtx-2/.mtn2git_empty b/packages/netbase/netbase/mtx-2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/netbase/netbase/mtx-2/.mtn2git_empty
diff --git a/packages/netbase/netbase/mtx-2/interfaces b/packages/netbase/netbase/mtx-2/interfaces
new file mode 100644
index 0000000000..a7c6da5752
--- /dev/null
+++ b/packages/netbase/netbase/mtx-2/interfaces
@@ -0,0 +1,29 @@
+# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
+
+# The loopback interface
+auto lo
+iface lo inet loopback
+
+# Ethernet
+auto eth0
+iface eth0 inet dhcp
+
+# wlan interface 1 for clients
+auto wlan0
+iface wlan0 inet static
+ address 10.0.0.1
+ netmask 255.0.0.0
+ wireless_mode master
+ wireless_essid cube-ap
+ wireless_channel 1
+
+# wlan interface 2 for mesh
+auto wlan1
+iface wlan1 inet static
+ address 172.16.0.1
+ netmask 255.240.0.0
+ broadcast 172.31.255.255
+ wireless_mode ad-hoc
+ wireless_essid cube-mesh
+ wireless_channel 11
+ wireless_rts 250
diff --git a/packages/nylon/nylon-scripts_cvs.bb b/packages/nylon/nylon-scripts_cvs.bb
index b7ce512e87..e4917d310f 100644
--- a/packages/nylon/nylon-scripts_cvs.bb
+++ b/packages/nylon/nylon-scripts_cvs.bb
@@ -5,14 +5,17 @@ SECTION = "base"
PRIORITY = "optional"
MAINTAINER = "Bruno Randolf <bruno.randolf@4g-systems.biz>"
LICENSE = "GPLv2"
-PV = "1:0.0+cvs${SRCDATE}"
+SRCDATE = "20060114"
+PV = "1.0.0+cvs${SRCDATE}"
PR = "r2"
+RDEPENDS = "bash"
SRC_URI = "http://meshcube.org/download/${PN}_${SRCDATE}.tgz"
S = "${WORKDIR}/${PN}"
INHIBIT_PACKAGE_STRIP = "1"
do_install() {
+ install -d -m 755 ${D}
(cd ${S}; tar -c --exclude .svn -f - . ) | tar -C ${D} -xpf -
}
@@ -21,8 +24,8 @@ if test "x$D" != "x"; then
exit 1
else
update-rc.d -s hostap defaults 14
- update-rc.d -s firewall defaults 20
- update-rc.d -s routing defaults 20
+ update-rc.d -s firewall defaults 16
+ update-rc.d -s routing defaults 17
update-rc.d -s emergency-ip defaults 98
update-rc.d -s flash-backup start 38 S . stop 38 0 6 .
update-rc.d -s dummydate start 50 S . stop 50 0 6 .
@@ -46,8 +49,6 @@ fi
pkg_postrm() {
#!/bin/sh -e
update-rc.d hostap remove
-update-rc.d bridge remove
-update-rc.d ipaliases remove
update-rc.d firewall remove
update-rc.d routing remove
update-rc.d emergency-ip remove
@@ -55,4 +56,5 @@ update-rc.d flash-backup remove
update-rc.d dummydate remove
}
-CONFFILES_${PN} = "/etc/nylon/backup.list /etc/nylon/hostap.conf /etc/nylon/interfaces.conf /etc/nylon/route.list"
+CONFFILES_${PN} = "/etc/nylon/backup.list /etc/nylon/hostap.conf /etc/nylon/check-process.list \
+ /etc/nylon/interfaces.conf /etc/nylon/route.list /etc/nylon/wds-bridge.conf"
diff --git a/packages/nylon/nylon-statistics.bb b/packages/nylon/nylon-statistics.bb
index e24d9c93e8..21c588e78a 100644
--- a/packages/nylon/nylon-statistics.bb
+++ b/packages/nylon/nylon-statistics.bb
@@ -4,7 +4,8 @@ SECTION = "base"
PRIORITY = "optional"
MAINTAINER = "Bruno Randolf <bruno.randolf@4g-systems.biz>"
LICENSE = "GPLv2"
-PV = "1:0.0+cvs${SRCDATE}"
+SRCDATE = "20050909"
+PV = "1.0.0+cvs${SRCDATE}"
PR = "r1"
SRC_URI = "http://meshcube.org/download/${PN}_${SRCDATE}.tgz"
@@ -13,11 +14,11 @@ INHIBIT_PACKAGE_STRIP = "1"
do_install() {
install -d ${D}/srv/www/cgi-bin
- install -d ${D}${sbindir}
+ install -d ${D}/${sbindir}
ln -s /var/tmp ${D}/srv/www/rrd-img
install -m 755 ${S}/*.html ${D}/srv/www/cgi-bin
ln -s /var/tmp/nav.inc.html ${D}/srv/www/cgi-bin
- install -m 755 ${S}/collect.sh ${D}${sbindir}
+ install -m 755 ${S}/collect.sh ${D}/${sbindir}
}
pkg_postinst() {
diff --git a/packages/nylon/simple-firewall.bb b/packages/nylon/simple-firewall.bb
index 5698eb732a..35911dad2c 100644
--- a/packages/nylon/simple-firewall.bb
+++ b/packages/nylon/simple-firewall.bb
@@ -4,8 +4,9 @@ PRIORITY = "optional"
MAINTAINER = "Bruno Randolf <bruno.randolf@4g-systems.biz>"
LICENSE = "GPL"
DEPENDS = "virtual/kernel"
-SRCDATE = "20060114"
-PV = "cvs${SRCDATE}"
+SRCDATE = "20060810"
+PV = "cvs${CVSDATE}"
+
INHIBIT_PACKAGE_STRIP = "1"
diff --git a/packages/nylon/yamonenv.bb b/packages/nylon/yamonenv.bb
index bf4c94200e..2c2fb3cbb7 100644
--- a/packages/nylon/yamonenv.bb
+++ b/packages/nylon/yamonenv.bb
@@ -3,7 +3,8 @@ SECTION = "base"
PRIORITY = "optional"
MAINTAINER = "Michael Stickel <michael.stickel@4g-systems.biz>"
LICENSE = "GPL"
-PV = "1:0.0+cvs${SRCDATE}"
+SRCDATE = "20050909"
+PV = "1.0.0+cvs${SRCDATE}"
SRC_URI = "http://meshcube.org/download/${PN}_${SRCDATE}.tgz"
S = "${WORKDIR}/${PN}"
diff --git a/packages/pcre/pcre-native_4.4.bb b/packages/pcre/pcre-native_4.4.bb
deleted file mode 100644
index ba2645c5d3..0000000000
--- a/packages/pcre/pcre-native_4.4.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-SECTION = "unknown"
-require pcre_${PV}.bb
-inherit native
-FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/pcre-${PV}"
diff --git a/packages/speex/speex_1.1.12+1.2beta1.bb b/packages/speex/speex_1.1.12+1.2beta1.bb
new file mode 100644
index 0000000000..d0f33bf681
--- /dev/null
+++ b/packages/speex/speex_1.1.12+1.2beta1.bb
@@ -0,0 +1,38 @@
+DESCRIPTION = "Speex is an Open Source/Free Software patent-free audio compression format designed for speech."
+SECTION = "libs"
+LICENSE = "BSD"
+HOMEPAGE = "http://www.speex.org"
+DEPENDS = "libogg"
+PR = "r0"
+
+SRC_URI = "http://downloads.us.xiph.org/releases/speex/speex-1.2beta1.tar.gz"
+S = "${WORKDIR}/${PN}-1.2beta1"
+
+PARALLEL_MAKE = ""
+
+inherit autotools pkgconfig
+
+# Some interesting options are:
+#
+# --enable-arm4-asm
+# --enable-arm5e-asm
+# --enable-fixed-point
+#
+
+EXTRA_OECONF_append_openmn = " --enable-arm5e-asm --enable-fixed-point"
+EXTRA_OECONF_append_amsdelta = " --enable-arm4-asm --enable-fixed-point"
+EXTRA_OECONF_append_arm = " --enable-fixed-point "
+
+do_configure_append() {
+ sed -i s/"^OGG_CFLAGS.*$"/"OGG_CFLAGS = "/g Makefile */Makefile */*/Makefile
+ sed -i s/"^OGG_LIBS.*$"/"OGG_LIBS = -logg"/g Makefile */Makefile */*/Makefile
+ perl -pi -e 's:^includedir.*$:includedir = ${STAGING_INCDIR}:g' Makefile */Makefile */*/Makefile
+ perl -pi -e 's:^oldincludedir.*$:includedir = ${STAGING_INCDIR}:g' Makefile */Makefile */*/Makefile
+ perl -pi -e 's:\s*-I/usr/include$::g' Makefile */Makefile */*/Makefile
+}
+
+do_stage() {
+ oe_libinstall -C libspeex -so libspeex ${STAGING_LIBDIR}
+ install -d ${STAGING_INCDIR}/speex
+ install -m 0644 include/speex/*.h ${STAGING_INCDIR}/speex
+}
diff --git a/packages/wpa-supplicant/files/mtx-2/.mtn2git_empty b/packages/wpa-supplicant/files/mtx-2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/wpa-supplicant/files/mtx-2/.mtn2git_empty
diff --git a/packages/wpa-supplicant/files/mtx-2/defconfig b/packages/wpa-supplicant/files/mtx-2/defconfig
new file mode 100644
index 0000000000..a0d9b73d3f
--- /dev/null
+++ b/packages/wpa-supplicant/files/mtx-2/defconfig
@@ -0,0 +1,157 @@
+# This file lists the configuration options that are used when building the
+# hostapd binary. All lines starting with # are ignored. Configuration option
+# lines must be commented out complete, if they are not to be included, i.e.,
+# just setting VARIABLE=n is not disabling that variable.
+#
+# This file is included in Makefile, so variables like CFLAGS and LIBS can also
+# be modified from here. In most cass, these lines should use += in order not
+# to override previous values of the variables.
+
+CFLAGS = $(TARGET_CFLAGS) -I../hostapd -I../utils -I../driver/modules -Wall -MMD
+
+# for wpa_supplicant, wpa_cli
+LIBS = $(TARGET_LDFLAGS)
+
+# for wpa_passphrase:
+LIBS_p = $(TARGET_LDFLAGS)
+
+
+# Uncomment following two lines and fix the paths if you have installed openssl
+# in non-default location
+#CFLAGS += -I/usr/local/openssl/include
+#LIBS += -L/usr/local/openssl/lib
+
+# Example configuration for various cross-compilation platforms
+
+#### sveasoft (e.g., for Linksys WRT54G) ######################################
+#CC=mipsel-uclibc-gcc
+#CC=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc
+#CFLAGS += -Os
+#CPPFLAGS += -I../src/include -I../../src/router/openssl/include
+#LIBS += -L/opt/brcm/hndtools-mipsel-uclibc-0.9.19/lib -lssl
+###############################################################################
+
+#### openwrt (e.g., for Linksys WRT54G) #######################################
+#CC=mipsel-uclibc-gcc
+#CC=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc
+#CFLAGS += -Os
+#CPPFLAGS=-I../src/include -I../openssl-0.9.7d/include \
+# -I../WRT54GS/release/src/include
+#LIBS = -lssl
+###############################################################################
+
+
+# Driver interface for Host AP driver
+CONFIG_DRIVER_HOSTAP=y
+
+# Driver interface for Agere driver
+#CONFIG_DRIVER_HERMES=y
+
+# Driver interface for madwifi driver
+CONFIG_DRIVER_MADWIFI=y
+# Change include directories to match with the local setup
+#CFLAGS += -I../madwifi/wpa
+
+# Driver interface for Prism54 driver
+CONFIG_DRIVER_PRISM54=y
+
+# Driver interface for ndiswrapper
+#CONFIG_DRIVER_NDISWRAPPER=y
+
+# Driver interface for Atmel driver
+#CONFIG_DRIVER_ATMEL=y
+
+# Driver interface for Broadcom driver
+#CONFIG_DRIVER_BROADCOM=y
+# Example path for wlioctl.h; change to match your configuration
+#CFLAGS += -I/opt/WRT54GS/release/src/include
+
+# Driver interface for Intel ipw2100 driver
+#CONFIG_DRIVER_IPW2100=y
+
+# Driver interface for generic Linux wireless extensions
+CONFIG_DRIVER_WEXT=y
+
+# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
+#CONFIG_DRIVER_BSD=y
+#CFLAGS += -I/usr/local/include
+#LIBS += -L/usr/local/lib
+
+# Driver interface for Windows NDIS
+#CONFIG_DRIVER_NDIS=y
+#CFLAGS += -I/usr/include/w32api/ddk
+#LIBS += -L/usr/local/lib
+# For native build using mingw
+#CONFIG_NATIVE_WINDOWS=y
+# Additional directories for cross-compilation on Linux host for mingw target
+#CFLAGS += -I/opt/mingw/mingw32/include/ddk
+#LIBS += -L/opt/mingw/mingw32/lib
+#CC=mingw32-gcc
+
+# Driver interface for development testing
+#CONFIG_DRIVER_TEST=y
+
+# Enable IEEE 802.1X Supplicant (automatically included if any EAP method is
+# included)
+CONFIG_IEEE8021X_EAPOL=y
+
+# EAP-MD5 (automatically included if EAP-TTLS is enabled)
+CONFIG_EAP_MD5=y
+
+# EAP-MSCHAPv2 (automatically included if EAP-PEAP is enabled)
+CONFIG_EAP_MSCHAPV2=y
+
+# EAP-TLS
+CONFIG_EAP_TLS=y
+
+# EAL-PEAP
+CONFIG_EAP_PEAP=y
+
+# EAP-TTLS
+CONFIG_EAP_TTLS=y
+
+# EAP-GTC
+CONFIG_EAP_GTC=y
+
+# EAP-OTP
+CONFIG_EAP_OTP=y
+
+# EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used)
+#CONFIG_EAP_SIM=y
+
+# EAP-PSK (experimental; this is _not_ needed for WPA-PSK)
+#CONFIG_EAP_PSK=y
+
+# LEAP
+CONFIG_EAP_LEAP=y
+
+# EAP-AKA (enable CONFIG_PCSC, if EAP-AKA is used)
+#CONFIG_EAP_AKA=y
+
+# PKCS#12 (PFX) support (used to read private key and certificate file from
+# a file that usually has extension .p12 or .pfx)
+CONFIG_PKCS12=y
+
+# PC/SC interface for smartcards (USIM, GSM SIM)
+# Enable this if EAP-SIM or EAP-AKA is included
+#CONFIG_PCSC=y
+
+# Development testing
+#CONFIG_EAPOL_TEST=y
+
+# Replace native Linux implementation of packet sockets with libdnet/libpcap.
+# This will be automatically set for non-Linux OS.
+#CONFIG_DNET_PCAP=y
+
+# Include control interface for external programs, e.g, wpa_cli
+CONFIG_CTRL_IFACE=y
+
+# Include interface for using external supplicant (Xsupplicant) for EAP
+# authentication
+#CONFIG_XSUPPLICANT_IFACE=y
+
+# Include support for GNU Readline and History Libraries in wpa_cli.
+# When building a wpa_cli binary for distribution, please note that these
+# libraries are licensed under GPL and as such, BSD license may not apply for
+# the resulting binary.
+#CONFIG_READLINE=y
diff --git a/packages/wpa-supplicant/wpa-supplicant_0.3.8.bb b/packages/wpa-supplicant/wpa-supplicant_0.3.8.bb
index 684d7da8eb..d125fb4027 100644
--- a/packages/wpa-supplicant/wpa-supplicant_0.3.8.bb
+++ b/packages/wpa-supplicant/wpa-supplicant_0.3.8.bb
@@ -5,6 +5,7 @@ MAINTAINER = "Holger Schurig"
HOMEPAGE = "http://hostap.epitest.fi/wpa_supplicant/"
DEPENDS = "openssl"
DEPENDS_mtx-1_append = "madwifi-modules"
+DEPENDS_mtx-2_append = "madwifi-modules"
PR = "r1"
SRC_URI = "http://hostap.epitest.fi/releases/wpa_supplicant-${PV}.tar.gz \
diff --git a/packages/wpa-supplicant/wpa-supplicant_0.4.7.bb b/packages/wpa-supplicant/wpa-supplicant_0.4.7.bb
index 03aa3f6d0d..bbb42879d9 100644
--- a/packages/wpa-supplicant/wpa-supplicant_0.4.7.bb
+++ b/packages/wpa-supplicant/wpa-supplicant_0.4.7.bb
@@ -5,6 +5,7 @@ MAINTAINER = "Holger Schurig"
HOMEPAGE = "http://hostap.epitest.fi/wpa_supplicant/"
DEPENDS = "openssl"
DEPENDS_mtx-1_append = "madwifi-modules"
+DEPENDS_mtx-2_append = "madwifi-modules"
PR = "r1"
SRC_URI = "http://hostap.epitest.fi/releases/wpa_supplicant-${PV}.tar.gz \