Browse Source

more regressions found at runtime on alic1c

Waldemar Brodkorb 15 years ago
parent
commit
e874f84fdb
100 changed files with 1356 additions and 4444 deletions
  1. 0 5
      BUGS
  2. 9 2
      TODO
  3. 1 0
      package/Depends.mk
  4. 1 1
      package/Makefile
  5. 1 0
      package/apr/Makefile
  6. 1 0
      package/autossh/Makefile
  7. 0 1
      package/avahi/files/avahi-daemon.conf
  8. 17 0
      package/base-files/extra/etc/sysctl.conf
  9. 2 1
      package/base-files/extra/init
  10. 2 1
      package/bind/Makefile
  11. 2 2
      package/cfgfs/src/fwcf.sh
  12. 1 1
      package/cups/Makefile
  13. 1 0
      package/cxxtools/Makefile
  14. 1 0
      package/dhcp/Makefile
  15. 1 0
      package/dsniff/Makefile
  16. 8 0
      package/file/Makefile
  17. 1 0
      package/freeradius-server/Makefile
  18. 2 1
      package/gpsd/Makefile
  19. 4 3
      package/gsm/Makefile
  20. 4 3
      package/ipcad/Makefile
  21. 10 9
      package/ipsec-tools/Makefile
  22. 1 1
      package/jpeg/Makefile
  23. 0 2854
      package/jpeg/patches/jpeg-6b-config_guess.patch
  24. 5 4
      package/libnids/Makefile
  25. 3 2
      package/libol/Makefile
  26. 1 0
      package/libosip2/Makefile
  27. 11 11
      package/linux-atm/Config.in
  28. 13 12
      package/linux-atm/Makefile
  29. 1 1
      package/lrzsz/Makefile
  30. 4 2
      package/macchanger/Makefile
  31. 10 15
      package/miredo/Makefile
  32. 1 1
      package/miredo/files/miredo-server.postinst
  33. 1 0
      package/monit/Makefile
  34. 1 0
      package/mpd/Makefile
  35. 0 1
      package/mplayer/Config.in
  36. 10 5
      package/mrd6/Makefile
  37. 4 2
      package/mysql/Makefile
  38. 5 8
      package/net-snmp/Makefile
  39. 2 1
      package/nfs-utils/Makefile
  40. 2 0
      package/nut/Makefile
  41. 1 1
      package/obexftp/Makefile
  42. 11 0
      package/obexftp/patches/patch-configure
  43. 1 0
      package/openobex/Makefile
  44. 10 1
      package/openobex/patches/patch-configure
  45. 2 1
      package/openssh/Makefile
  46. 1 1
      package/openswan/Makefile
  47. 0 34
      package/ppp/patches/100-debian_close_dev_ppp.patch
  48. 0 86
      package/ppp/patches/203-no_strip.patch
  49. 0 26
      package/ppp/patches/204-opt_flags.patch
  50. 0 24
      package/ppp/patches/320-use_target_ar.patch
  51. 11 0
      package/ppp/patches/patch-chat_Makefile_linux
  52. 2 7
      package/ppp/patches/patch-configure
  53. 63 0
      package/ppp/patches/patch-include_linux_ppp-comp_h
  54. 36 0
      package/ppp/patches/patch-include_net_ppp-comp_h
  55. 23 6
      package/ppp/patches/patch-pppd_Makefile_linux
  56. 85 310
      package/ppp/patches/patch-pppd_ccp_c
  57. 20 0
      package/ppp/patches/patch-pppd_ccp_h
  58. 22 0
      package/ppp/patches/patch-pppd_chap_ms_c
  59. 7 8
      package/ppp/patches/patch-pppd_main_c
  60. 34 0
      package/ppp/patches/patch-pppd_plugins_radius_Makefile_linux
  61. 4 5
      package/ppp/patches/patch-pppd_plugins_radius_etc_radiusclient_conf
  62. 23 0
      package/ppp/patches/patch-pppd_plugins_rp-pppoe_Makefile_linux
  63. 4 5
      package/ppp/patches/patch-pppd_plugins_rp-pppoe_discovery_c
  64. 77 0
      package/ppp/patches/patch-pppd_pppd_8
  65. 16 0
      package/ppp/patches/patch-pppd_sys-linux_c
  66. 19 0
      package/ppp/patches/patch-pppdump_Makefile_linux
  67. 11 0
      package/ppp/patches/patch-pppstats_Makefile_linux
  68. 2 1
      package/privoxy/Makefile
  69. 3 2
      package/procmail/Makefile
  70. 19 0
      package/procmail/patches/patch-Makefile_new
  71. 3 4
      package/procmail/patches/patch-autoconf_h
  72. 2 1
      package/ruby/Makefile
  73. 4 1
      package/samba/Makefile
  74. 1 0
      package/ser2net/Makefile
  75. 7 6
      package/squid/Makefile
  76. 13 0
      package/squid/patches/patch-configure_in
  77. 12 0
      package/squid/patches/patch-lib_util_c
  78. 23 0
      package/squid/patches/patch-src_Makefile_am
  79. 5 3
      package/srelay/Makefile
  80. 3 3
      package/srelay/patches/01-cross_compile.patch
  81. 20 0
      package/srelay/patches/patch-configure_in
  82. 1 0
      package/ssmtp/Makefile
  83. 2 1
      package/stress/Makefile
  84. 1 1
      package/subversion/Makefile
  85. 1 0
      package/syslog-ng/Makefile
  86. 2 3
      package/tcl/Makefile
  87. 1 5
      package/tcp_wrappers/Makefile
  88. 0 936
      package/tcp_wrappers/patches/debian-subset.patch
  89. 0 12
      package/tcp_wrappers/patches/opt_cflags.patch
  90. 279 0
      package/tcp_wrappers/patches/patch-Makefile
  91. 4 0
      package/tcp_wrappers/patches/patch-cflags
  92. 15 0
      package/tcp_wrappers/patches/patch-fix_options_c
  93. 11 0
      package/tcp_wrappers/patches/patch-hosts_access_3
  94. 143 0
      package/tcp_wrappers/patches/patch-hosts_access_5
  95. 38 0
      package/tcp_wrappers/patches/patch-hosts_access_c
  96. 17 0
      package/tcp_wrappers/patches/patch-hosts_options_5
  97. 12 0
      package/tcp_wrappers/patches/patch-options_c
  98. 27 0
      package/tcp_wrappers/patches/patch-percent_m_c
  99. 29 0
      package/tcp_wrappers/patches/patch-rfc931_c
  100. 29 0
      package/tcp_wrappers/patches/patch-safe_finger_c

+ 0 - 5
BUGS

@@ -1,5 +0,0 @@
-- use kmod-template for external kernel modules
-- optimize iptables package (libdirs depending on choosen kernel features)
-- checksum for toolchain packages
-- network scripts for wireless client / ap
-- disable platforms zaurus / qemu etrax

+ 9 - 2
TODO

@@ -1,7 +1,7 @@
 - rescue initramfs image (more archs, generic kernel config )
   - usb boot via stick
-- combine lvm2 + devicemapper package
-- squid package update
+- fix init scripts pidof? vs. killall
+- rpath libtool problem fix
 - bind isc 9.6.1
 - eglibc support
 - check mips -mno-abicalls
@@ -12,4 +12,11 @@
 - netbsd build
 - macos x build
 - openbsd build
+- use kmod-template for external kernel modules
+- optimize iptables package (libdirs depending on choosen kernel features)
+- checksum for toolchain packages
+- network scripts for wireless client / ap
+- network scripts for pppoe
+- fix platform zaurus 
+- test qemu etrax again
 - publish via trac+git

+ 1 - 0
package/Depends.mk

@@ -154,6 +154,7 @@ obexftp-compile: openobex-compile libiconv-compile
 opencdk-compile: libgcrypt-compile libgpg-error-compile zlib-compile
 openct-compile: libtool-compile libusb-compile
 openldap-compile: cyrus-sasl-compile openssl-compile libdb-compile
+openobex-compile: bluez-compile
 opensips-compile: openssl-compile
 ifeq (${ADK_COMPILE_OPENSSH_WITH_KRB5},y)
 openssh-compile: krb5-compile

+ 1 - 1
package/Makefile

@@ -215,7 +215,7 @@ package-$(ADK_PACKAGE_LIBXSLT) += libxslt
 package-$(ADK_PACKAGE_LIBXT) += libXt
 package-$(ADK_PACKAGE_LIGHTTPD) += lighttpd
 package-$(ADK_PACKAGE_LINKS) += links
-package-$(ADK_PACKAGE_LINUX_ATM) += linux-atm
+package-$(ADK_COMPILE_LINUX_ATM) += linux-atm
 package-$(ADK_PACKAGE_LOGROTATE) += logrotate
 package-$(ADK_PACKAGE_LRZSZ) += lrzsz
 package-${ADK_PACKAGE_LYNX} += lynx

+ 1 - 0
package/apr/Makefile

@@ -26,6 +26,7 @@ CONFIGURE_ENV+=		ac_cv_sizeof_size_t=4
 CONFIGURE_ENV+=		ac_cv_sizeof_ssize_t=4
 CONFIGURE_ENV+=		ac_cv_file__dev_zero=yes
 CONFIGURE_ENV+=		apr_cv_process_shared_works=no
+CONFIGURE_ENV+=		ac_cv_lib_nsl_gethostbyname=no
 CONFIGURE_ARGS+=	--with-devrandom=/dev/urandom
 
 ifeq (${ADK_PACKAGE_APR_THREADING},y)

+ 1 - 0
package/autossh/Makefile

@@ -20,6 +20,7 @@ include $(TOPDIR)/mk/package.mk
 $(eval $(call PKG_template,AUTOSSH,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE:=	gnu
+CONFIGURE_ARGS+=	ac_cv_lib_nsl_gethostbyname=no
 BUILD_STYLE:=		auto
 
 do-install:

+ 0 - 1
package/avahi/files/avahi-daemon.conf

@@ -5,7 +5,6 @@ use-ipv4=yes
 use-ipv6=no
 check-response-ttl=no
 use-iff-running=no
-enable-dbus=no
 
 [publish]
 publish-addresses=yes

+ 17 - 0
package/base-files/extra/etc/sysctl.conf

@@ -0,0 +1,17 @@
+# Disables the magic-sysrq key
+#kernel.sysrq = 0
+# When the kernel panics, automatically reboot in 3 seconds
+#kernel.panic = 3
+# Enable packet forwarding
+#net.ipv4.ip_forward = 1
+# Disables IP dynaddr
+#net.ipv4.ip_dynaddr = 0
+# Disable ECN
+#net.ipv4.tcp_ecn = 0
+# Enables source route verification
+net.ipv4.conf.default.rp_filter = 1
+# Enable reverse path
+net.ipv4.conf.all.rp_filter = 1
+# Enable SYN cookies
+#net.ipv4.tcp_syncookies = 1
+

+ 2 - 1
package/base-files/extra/init

@@ -1,8 +1,9 @@
 #!/bin/sh
 export PATH=/bin:/sbin:/usr/bin:/usr/sbin
 mount -nt proc proc /proc
+size=$(awk '/MemTotal:/ { if ($2 > 16000) { print 4096 } else { print 2048 }}' /proc/meminfo)
 mount -o nosuid,nodev,noexec -t sysfs sysfs /sys
-mount none /tmp -t tmpfs -o size=2M
+mount none /tmp -t tmpfs -o size=$size
 mount none /tmp -t tmpfs -o remount,nosuid,nodev,mode=1777
 mount -o nosuid,size=64k,mode=0755 -t tmpfs mdev /dev
 mkdir /dev/pts /dev/shm

+ 2 - 1
package/bind/Makefile

@@ -35,7 +35,8 @@ $(eval $(call PKG_template,BIND_HOST,bind-host,${PKG_VERSION}-${PKG_RELEASE},${P
 $(eval $(call PKG_template,BIND_DIG,bind-dig,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_7},${PKG_SECTION}))
 
 CONFIGURE_STYLE=	gnu
-CONFIGURE_ENV+=         BUILD_CC="${TARGET_CC}"
+CONFIGURE_ENV+=         BUILD_CC="${TARGET_CC}" \
+			ac_cv_lib_nsl_inet_ntoa=no
 CONFIGURE_ARGS+=	--with-randomdev=/dev/urandom \
 			--disable-threads \
 			--with-openssl=${STAGING_DIR}/usr/ \

+ 2 - 2
package/cfgfs/src/fwcf.sh

@@ -146,7 +146,7 @@ if test $1 = setup; then
 	mkdir /tmp/.cfgfs/root
 	mount --bind /etc /tmp/.cfgfs/root
 	mkdir /tmp/.cfgfs/temp
-	mount -t tmpfs -o cfgfs /tmp/.cfgfs/temp
+	mount -t tmpfs none /tmp/.cfgfs/temp
 	(cd /tmp/.cfgfs/root; tar cf - .) | (cd /tmp/.cfgfs/temp; tar xpf -)
 	unclean=0
 	if [[ $1 = -N ]]; then
@@ -225,7 +225,7 @@ if test $1 = commit; then
 		EOF
 		[[ $1 = -f ]] || exit 7
 	fi
-	mount -t tmpfs -o swap /tmp/.cfgfs/temp
+	mount -t tmpfs none /tmp/.cfgfs/temp
 	(cd /etc; tar cf - .) | (cd /tmp/.cfgfs/temp; tar xpf -)
 	cd /tmp/.cfgfs/temp
 	find . -type f | grep -v -e '^./.cfgfs' -e '^./.rnd$' | sort | \

+ 1 - 1
package/cups/Makefile

@@ -64,7 +64,7 @@ post-install:
 	${CP} ${WRKINST}/usr/share/doc/cups/images \
 		${IDIR_CUPS}/usr/share/doc/cups/
 	rm -f ${IDIR_CUPS}/usr/bin/cups-config
-	${CP} ${WRKINST}/usr/lib/libcups.so* ${IDIR_CUPS}/usr/lib/
+	${CP} ${WRKINST}/usr/lib/libcups*.so* ${IDIR_CUPS}/usr/lib/
 	${CP} ${WRKINST}/usr/lib/cups/cgi-bin/* ${IDIR_CUPS}/usr/lib/cups/cgi-bin/
 	${CP} ${WRKINST}/usr/lib/cups/daemon/* ${IDIR_CUPS}/usr/lib/cups/daemon/
 	${CP} ${WRKINST}/usr/share/cups/banners/* \

+ 1 - 0
package/cxxtools/Makefile

@@ -31,6 +31,7 @@ TLDFLAGS+=		-liconv -shared
 endif
 
 CONFIGURE_STYLE:=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_setsockopt=no
 CONFIGURE_ARGS+=	--with-libiconv-prefix='${STAGING_DIR}/usr'
 BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto confprog

+ 1 - 0
package/dhcp/Makefile

@@ -25,6 +25,7 @@ else
 CONFIGURE_ARGS+=       --disable-dhcpv6                
 endif
 
+TCFLAGS+=		-D_GNU_SOURCE
 CONFIGURE_STYLE:=	gnu
 CONFIGURE_ENV+=		ac_cv_file__dev_random=yes
 BUILD_STYLE=		auto

+ 1 - 0
package/dsniff/Makefile

@@ -20,6 +20,7 @@ include ${TOPDIR}/mk/package.mk
 $(eval $(call PKG_template,DSNIFF,dsniff,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_gethostbyname=no
 CONFIGURE_ARGS+=	--without-db \
 			--without-x \
 			--with-gdbm="${STAGING_DIR}/usr" \

+ 8 - 0
package/file/Makefile

@@ -21,6 +21,14 @@ CONFIGURE_STYLE:=	gnu
 BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
 
+pre-configure:
+	(cd ${WRKBUILD}; rm -rf config.{cache,status} ; \
+		CFLAGS="-static" ./configure --enable-static --disable-shared \
+	);
+	${MAKE} -C ${WRKBUILD}
+	${INSTALL_BIN} ${WRKBUILD}/src/file ${STAGING_TOOLS}/bin
+	${MAKE} -C ${WRKBUILD} clean
+
 post-install:
 	${INSTALL_DIR} ${IDIR_FILE}/usr/bin ${IDIR_FILE}/usr/lib ${IDIR_FILE}/usr/share/misc
 	${INSTALL_BIN} ${WRKINST}/usr/bin/file ${IDIR_FILE}/usr/bin

+ 1 - 0
package/freeradius-server/Makefile

@@ -94,6 +94,7 @@ $(eval $(call PKG_mod_template,FREERADIUS_MOD_SQL_MYSQL,rlm_sql_mysql,))
 $(eval $(call PKG_mod_template,FREERADIUS_MOD_SQL_PGSQL,rlm_sql_postgresql,))
 
 CONFIGURE_STYLE=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_inet_ntoa=no
 CONFIGURE_ARGS+=	${PKG_CONFIGURE_OPTIONS} \
 			--with-openssl-includes=${STAGING_DIR}/usr/include \
 			--with-openssl-libraries=${STAGING_DIR}/usr/lib \

+ 2 - 1
package/gpsd/Makefile

@@ -23,7 +23,8 @@ CONFIGURE_STYLE:=	gnu
 CONFIGURE_ENV+=		EGREP="grep -E" \
 			CPP="$(TARGET_CC) -E" \
 			ac_cv_func_strlcpy=no \
-			ac_cv_func_strlcat=no
+			ac_cv_func_strlcat=no \
+			ac_cv_lib_nsl_gethostbyname=no
 # --disable-python breaks configure script
 CONFIGURE_ARGS+=	--without-x \
 			--disable-dbus

+ 4 - 3
package/gsm/Makefile

@@ -13,13 +13,14 @@ PKG_URL:=		http://www-rn.informatik.uni-bremen.de/software/gsm/
 PKG_SITES:=		http://www-rn.informatik.uni-bremen.de/software/gsm/
 
 PKG_DESCR_1:=		A GSM 06.10 full-rate speech transcoding implementation (utilities)
+PKG_DEPENDS_1:=		libgsm
 
 WRKDIST=		${WRKDIR}/${PKG_NAME}-1.0-pl10
 
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,LIBGSM,libgsm,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,GSM_UTILS,gsm-utils,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_1},${PKG_SECTION}))
+$(eval $(call PKG_template,GSM_UTILS,gsm-utils,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS_1},${PKG_DESCR_1},${PKG_SECTION}))
 
 XAKE_FLAGS+=		COPTS="${TARGET_CFLAGS}" \
 			INSTALL_ROOT="${WRKINST}"
@@ -28,8 +29,8 @@ INSTALL_STYLE=		auto
 
 post-install:
 	${INSTALL_DIR} ${IDIR_LIBGSM}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libgsm.so.1.0.10 ${IDIR_LIBGSM}/usr/lib/
+	${CP} ${WRKINST}/usr/lib/libgsm.so.1.0.10 ${IDIR_LIBGSM}/usr/lib
 	${INSTALL_DIR} ${IDIR_GSM_UTILS}/usr/bin
-	${CP} ${WRKINST}/usr/bin/toast ${IDIR_GSM_UTILS}/usr/bin/
+	${CP} ${WRKINST}/usr/bin/toast ${IDIR_GSM_UTILS}/usr/bin
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 4 - 3
package/ipcad/Makefile

@@ -17,13 +17,14 @@ include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,IPCAD,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-CONFIGURE_STYLE=	gnu
+CONFIGURE_STYLE:=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_inet_pton=no
 CONFIGURE_ARGS+=	--with-ifst=linux \
 			--with-psrc=pcap \
 			--with-pcap-include="${STAGING_DIR}/usr/include" \
 			--with-pcap-libraries="${STAGING_DIR}/usr/lib"
-BUILD_STYLE=		auto
-INSTALL_STYLE=		auto
+BUILD_STYLE:=		auto
+INSTALL_STYLE:=		auto
 
 pre-build:
 	touch $(WRKBUILD)/cfglex.c $(WRKBUILD)/cslex.c

+ 10 - 9
package/ipsec-tools/Makefile

@@ -30,15 +30,16 @@ BUILD_STYLE=		auto
 INSTALL_STYLE=		auto
 
 post-install:
-	${INSTALL_DIR} ${IDIR_IPSEC_TOOLS}/usr/sbin
-	${INSTALL_DIR} ${IDIR_IPSEC_TOOLS}/usr/lib/
+	${INSTALL_DIR} ${IDIR_IPSEC_TOOLS}/usr/sbin ${IDIR_IPSEC_TOOLS}/usr/lib
 	${INSTALL_DIR} ${IDIR_IPSEC_TOOLS}/etc
-	${INSTALL_DATA} ${WRKBUILD}/src/racoon/samples/racoon.conf ${IDIR_IPSEC_TOOLS}/etc/
-	${CP} ${WRKINST}/usr/lib/libipsec.so.* ${IDIR_IPSEC_TOOLS}/usr/lib/
-	${CP} ${WRKINST}/usr/lib/libracoon.so.* ${IDIR_IPSEC_TOOLS}/usr/lib/
-	${INSTALL_BIN} ${WRKINST}/usr/sbin/plainrsa-gen ${IDIR_IPSEC_TOOLS}/usr/sbin/
-	${INSTALL_BIN} ${WRKINST}/usr/sbin/racoon ${IDIR_IPSEC_TOOLS}/usr/sbin/
-	${INSTALL_BIN} ${WRKINST}/usr/sbin/racoonctl ${IDIR_IPSEC_TOOLS}/usr/sbin/
-	${INSTALL_BIN} ${WRKINST}/usr/sbin/setkey ${IDIR_IPSEC_TOOLS}/usr/sbin/
+	${INSTALL_DATA} ${WRKBUILD}/src/racoon/samples/racoon.conf \
+		${IDIR_IPSEC_TOOLS}/etc/
+	${CP} ${WRKINST}/usr/lib/libipsec.so.* ${IDIR_IPSEC_TOOLS}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libracoon.so.* ${IDIR_IPSEC_TOOLS}/usr/lib
+	${INSTALL_BIN} ${WRKINST}/usr/sbin/plainrsa-gen \
+		${IDIR_IPSEC_TOOLS}/usr/sbin/
+	${INSTALL_BIN} ${WRKINST}/usr/sbin/racoon ${IDIR_IPSEC_TOOLS}/usr/sbin
+	${INSTALL_BIN} ${WRKINST}/usr/sbin/racoonctl ${IDIR_IPSEC_TOOLS}/usr/sbin
+	${INSTALL_BIN} ${WRKINST}/usr/sbin/setkey ${IDIR_IPSEC_TOOLS}/usr/sbin
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 1 - 1
package/jpeg/Makefile

@@ -31,6 +31,6 @@ pre-build:
 
 post-install:
 	${INSTALL_DIR} ${IDIR_LIBJPEG}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libjpeg.* ${IDIR_LIBJPEG}/usr/lib/
+	${CP} ${WRKINST}/usr/lib/libjpeg.so* ${IDIR_LIBJPEG}/usr/lib/
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 0 - 2854
package/jpeg/patches/jpeg-6b-config_guess.patch

@@ -1,2854 +0,0 @@
-diff -urN jpeg.old/config.guess jpeg.dev/config.guess
---- jpeg.old/config.guess	1998-03-25 16:25:38.000000000 +0100
-+++ jpeg.dev/config.guess	2006-04-21 16:22:05.000000000 +0200
-@@ -1,7 +1,10 @@
- #! /bin/sh
- # Attempt to guess a canonical system name.
--#   Copyright (C) 1992, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
--#
-+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-+#   2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
-+
-+timestamp='2004-11-12'
-+
- # This file is free software; you can redistribute it and/or modify it
- # under the terms of the GNU General Public License as published by
- # the Free Software Foundation; either version 2 of the License, or
-@@ -21,125 +24,314 @@
- # configuration script generated by Autoconf, you may include it under
- # the same distribution terms that you use for the rest of that program.
- 
--# Written by Per Bothner <bothner@cygnus.com>.
--# The master version of this file is at the FSF in /home/gd/gnu/lib.
-+# Originally written by Per Bothner <per@bothner.com>.
-+# Please send patches to <config-patches@gnu.org>.  Submit a context
-+# diff and a properly formatted ChangeLog entry.
- #
- # This script attempts to guess a canonical system name similar to
- # config.sub.  If it succeeds, it prints the system name on stdout, and
- # exits with 0.  Otherwise, it exits with 1.
- #
- # The plan is that this can be called by configure scripts if you
--# don't specify an explicit system type (host/target name).
--#
--# Only a few systems have been added to this list; please add others
--# (but try to keep the structure clean).
--#
-+# don't specify an explicit build system type.
-+
-+me=`echo "$0" | sed -e 's,.*/,,'`
-+
-+usage="\
-+Usage: $0 [OPTION]
-+
-+Output the configuration name of the system \`$me' is run on.
-+
-+Operation modes:
-+  -h, --help         print this help, then exit
-+  -t, --time-stamp   print date of last modification, then exit
-+  -v, --version      print version number, then exit
-+
-+Report bugs and patches to <config-patches@gnu.org>."
-+
-+version="\
-+GNU config.guess ($timestamp)
-+
-+Originally written by Per Bothner.
-+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
-+Free Software Foundation, Inc.
-+
-+This is free software; see the source for copying conditions.  There is NO
-+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-+
-+help="
-+Try \`$me --help' for more information."
-+
-+# Parse command line
-+while test $# -gt 0 ; do
-+  case $1 in
-+    --time-stamp | --time* | -t )
-+       echo "$timestamp" ; exit 0 ;;
-+    --version | -v )
-+       echo "$version" ; exit 0 ;;
-+    --help | --h* | -h )
-+       echo "$usage"; exit 0 ;;
-+    -- )     # Stop option processing
-+       shift; break ;;
-+    - )	# Use stdin as input.
-+       break ;;
-+    -* )
-+       echo "$me: invalid option $1$help" >&2
-+       exit 1 ;;
-+    * )
-+       break ;;
-+  esac
-+done
-+
-+if test $# != 0; then
-+  echo "$me: too many arguments$help" >&2
-+  exit 1
-+fi
-+
-+trap 'exit 1' 1 2 15
-+
-+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-+# compiler to aid in system detection is discouraged as it requires
-+# temporary files to be created and, as you can see below, it is a
-+# headache to deal with in a portable fashion.
-+
-+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-+# use `HOST_CC' if defined, but it is deprecated.
-+
-+# Portable tmp directory creation inspired by the Autoconf team.
-+
-+set_cc_for_build='
-+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-+: ${TMPDIR=/tmp} ;
-+ { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
-+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
-+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
-+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-+dummy=$tmp/dummy ;
-+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-+case $CC_FOR_BUILD,$HOST_CC,$CC in
-+ ,,)    echo "int x;" > $dummy.c ;
-+	for c in cc gcc c89 c99 ; do
-+	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-+	     CC_FOR_BUILD="$c"; break ;
-+	  fi ;
-+	done ;
-+	if test x"$CC_FOR_BUILD" = x ; then
-+	  CC_FOR_BUILD=no_compiler_found ;
-+	fi
-+	;;
-+ ,,*)   CC_FOR_BUILD=$CC ;;
-+ ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-+esac ;'
- 
- # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
--# (ghazi@noc.rutgers.edu 8/24/94.)
-+# (ghazi@noc.rutgers.edu 1994-08-24)
- if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- 	PATH=$PATH:/.attbin ; export PATH
- fi
- 
- UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
- UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
--UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-+UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
- UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
- 
--trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15
--
- # Note: order is significant - the case branches are not exclusive.
- 
- case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-+    *:NetBSD:*:*)
-+	# NetBSD (nbsd) targets should (where applicable) match one or
-+	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-+	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
-+	# switched to ELF, *-*-netbsd* would select the old
-+	# object file format.  This provides both forward
-+	# compatibility and a consistent mechanism for selecting the
-+	# object file format.
-+	#
-+	# Note: NetBSD doesn't particularly care about the vendor
-+	# portion of the name.  We always set it to "unknown".
-+	sysctl="sysctl -n hw.machine_arch"
-+	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-+	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-+	case "${UNAME_MACHINE_ARCH}" in
-+	    armeb) machine=armeb-unknown ;;
-+	    arm*) machine=arm-unknown ;;
-+	    sh3el) machine=shl-unknown ;;
-+	    sh3eb) machine=sh-unknown ;;
-+	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
-+	esac
-+	# The Operating System including object format, if it has switched
-+	# to ELF recently, or will in the future.
-+	case "${UNAME_MACHINE_ARCH}" in
-+	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-+		eval $set_cc_for_build
-+		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-+			| grep __ELF__ >/dev/null
-+		then
-+		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-+		    # Return netbsd for either.  FIX?
-+		    os=netbsd
-+		else
-+		    os=netbsdelf
-+		fi
-+		;;
-+	    *)
-+	        os=netbsd
-+		;;
-+	esac
-+	# The OS release
-+	# Debian GNU/NetBSD machines have a different userland, and
-+	# thus, need a distinct triplet. However, they do not need
-+	# kernel version information, so it can be replaced with a
-+	# suitable tag, in the style of linux-gnu.
-+	case "${UNAME_VERSION}" in
-+	    Debian*)
-+		release='-gnu'
-+		;;
-+	    *)
-+		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-+		;;
-+	esac
-+	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
-+	# contains redundant information, the shorter form:
-+	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-+	echo "${machine}-${os}${release}"
-+	exit 0 ;;
-+    amd64:OpenBSD:*:*)
-+	echo x86_64-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    amiga:OpenBSD:*:*)
-+	echo m68k-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    cats:OpenBSD:*:*)
-+	echo arm-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    hp300:OpenBSD:*:*)
-+	echo m68k-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    luna88k:OpenBSD:*:*)
-+    	echo m88k-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    mac68k:OpenBSD:*:*)
-+	echo m68k-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    macppc:OpenBSD:*:*)
-+	echo powerpc-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    mvme68k:OpenBSD:*:*)
-+	echo m68k-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    mvme88k:OpenBSD:*:*)
-+	echo m88k-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    mvmeppc:OpenBSD:*:*)
-+	echo powerpc-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    sgi:OpenBSD:*:*)
-+	echo mips64-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    sun3:OpenBSD:*:*)
-+	echo m68k-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:OpenBSD:*:*)
-+	echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:ekkoBSD:*:*)
-+	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    macppc:MirBSD:*:*)
-+	echo powerppc-unknown-mirbsd${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:MirBSD:*:*)
-+	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-+	exit 0 ;;
-     alpha:OSF1:*:*)
--	if test $UNAME_RELEASE = "V4.0"; then
-+	case $UNAME_RELEASE in
-+	*4.0)
- 		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
--	fi
-+		;;
-+	*5.*)
-+	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
-+		;;
-+	esac
-+	# According to Compaq, /usr/sbin/psrinfo has been available on
-+	# OSF/1 and Tru64 systems produced since 1995.  I hope that
-+	# covers most systems running today.  This code pipes the CPU
-+	# types through head -n 1, so we only detect the type of CPU 0.
-+	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
-+	case "$ALPHA_CPU_TYPE" in
-+	    "EV4 (21064)")
-+		UNAME_MACHINE="alpha" ;;
-+	    "EV4.5 (21064)")
-+		UNAME_MACHINE="alpha" ;;
-+	    "LCA4 (21066/21068)")
-+		UNAME_MACHINE="alpha" ;;
-+	    "EV5 (21164)")
-+		UNAME_MACHINE="alphaev5" ;;
-+	    "EV5.6 (21164A)")
-+		UNAME_MACHINE="alphaev56" ;;
-+	    "EV5.6 (21164PC)")
-+		UNAME_MACHINE="alphapca56" ;;
-+	    "EV5.7 (21164PC)")
-+		UNAME_MACHINE="alphapca57" ;;
-+	    "EV6 (21264)")
-+		UNAME_MACHINE="alphaev6" ;;
-+	    "EV6.7 (21264A)")
-+		UNAME_MACHINE="alphaev67" ;;
-+	    "EV6.8CB (21264C)")
-+		UNAME_MACHINE="alphaev68" ;;
-+	    "EV6.8AL (21264B)")
-+		UNAME_MACHINE="alphaev68" ;;
-+	    "EV6.8CX (21264D)")
-+		UNAME_MACHINE="alphaev68" ;;
-+	    "EV6.9A (21264/EV69A)")
-+		UNAME_MACHINE="alphaev69" ;;
-+	    "EV7 (21364)")
-+		UNAME_MACHINE="alphaev7" ;;
-+	    "EV7.9 (21364A)")
-+		UNAME_MACHINE="alphaev79" ;;
-+	esac
-+	# A Pn.n version is a patched version.
- 	# A Vn.n version is a released version.
- 	# A Tn.n version is a released field test version.
- 	# A Xn.n version is an unreleased experimental baselevel.
- 	# 1.2 uses "1.2" for uname -r.
--	cat <<EOF >dummy.s
--	.globl main
--	.ent main
--main:
--	.frame \$30,0,\$26,0
--	.prologue 0
--	.long 0x47e03d80 # implver $0
--	lda \$2,259
--	.long 0x47e20c21 # amask $2,$1
--	srl \$1,8,\$2
--	sll \$2,2,\$2
--	sll \$0,3,\$0
--	addl \$1,\$0,\$0
--	addl \$2,\$0,\$0
--	ret \$31,(\$26),1
--	.end main
--EOF
--	${CC-cc} dummy.s -o dummy 2>/dev/null
--	if test "$?" = 0 ; then
--		./dummy
--		case "$?" in
--			7)
--				UNAME_MACHINE="alpha"
--				;;
--			15)
--				UNAME_MACHINE="alphaev5"
--				;;
--			14)
--				UNAME_MACHINE="alphaev56"
--				;;
--			10)
--				UNAME_MACHINE="alphapca56"
--				;;
--			16)
--				UNAME_MACHINE="alphaev6"
--				;;
--		esac
--	fi
--	rm -f dummy.s dummy
--	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]`
-+	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-+	exit 0 ;;
-+    Alpha\ *:Windows_NT*:*)
-+	# How do we know it's Interix rather than the generic POSIX subsystem?
-+	# Should we change UNAME_MACHINE based on the output of uname instead
-+	# of the specific Alpha model?
-+	echo alpha-pc-interix
- 	exit 0 ;;
-     21064:Windows_NT:50:3)
- 	echo alpha-dec-winnt3.5
- 	exit 0 ;;
-     Amiga*:UNIX_System_V:4.0:*)
--	echo m68k-cbm-sysv4
-+	echo m68k-unknown-sysv4
- 	exit 0;;
--    amiga:NetBSD:*:*)
--      echo m68k-cbm-netbsd${UNAME_RELEASE}
--      exit 0 ;;
--    amiga:OpenBSD:*:*)
--	echo m68k-unknown-openbsd${UNAME_RELEASE}
--	exit 0 ;;
--    arc64:OpenBSD:*:*)
--	echo mips64el-unknown-openbsd${UNAME_RELEASE}
-+    *:[Aa]miga[Oo][Ss]:*:*)
-+	echo ${UNAME_MACHINE}-unknown-amigaos
- 	exit 0 ;;
--    arc:OpenBSD:*:*)
--	echo mipsel-unknown-openbsd${UNAME_RELEASE}
-+    *:[Mm]orph[Oo][Ss]:*:*)
-+	echo ${UNAME_MACHINE}-unknown-morphos
- 	exit 0 ;;
--    hkmips:OpenBSD:*:*)
--	echo mips-unknown-openbsd${UNAME_RELEASE}
-+    *:OS/390:*:*)
-+	echo i370-ibm-openedition
- 	exit 0 ;;
--    pmax:OpenBSD:*:*)
--	echo mipsel-unknown-openbsd${UNAME_RELEASE}
--	exit 0 ;;
--    sgi:OpenBSD:*:*)
--	echo mips-unknown-openbsd${UNAME_RELEASE}
-+    *:z/VM:*:*)
-+	echo s390-ibm-zvmoe
- 	exit 0 ;;
--    wgrisc:OpenBSD:*:*)
--	echo mipsel-unknown-openbsd${UNAME_RELEASE}
-+    *:OS400:*:*)
-+        echo powerpc-ibm-os400
- 	exit 0 ;;
-     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- 	echo arm-acorn-riscix${UNAME_RELEASE}
- 	exit 0;;
--    arm32:NetBSD:*:*)
--	echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
--	exit 0 ;;
--    SR2?01:HI-UX/MPP:*:*)
-+    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- 	echo hppa1.1-hitachi-hiuxmpp
- 	exit 0;;
--    Pyramid*:OSx*:*:*|MIS*:OSx*:*:*)
-+    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
- 	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- 	if test "`(/bin/universe) 2>/dev/null`" = att ; then
- 		echo pyramid-pyramid-sysv3
-@@ -147,9 +339,19 @@
- 		echo pyramid-pyramid-bsd
- 	fi
- 	exit 0 ;;
--    NILE:*:*:dcosx)
-+    NILE*:*:*:dcosx)
- 	echo pyramid-pyramid-svr4
- 	exit 0 ;;
-+    DRS?6000:unix:4.0:6*)
-+	echo sparc-icl-nx6
-+	exit 0 ;;
-+    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
-+	case `/usr/bin/uname -p` in
-+	    sparc) echo sparc-icl-nx7 && exit 0 ;;
-+	esac ;;
-+    sun4H:SunOS:5.*:*)
-+	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-+	exit 0 ;;
-     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- 	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- 	exit 0 ;;
-@@ -175,7 +377,7 @@
- 	echo m68k-sun-sunos${UNAME_RELEASE}
- 	exit 0 ;;
-     sun*:*:4.2BSD:*)
--	UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-+	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- 	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
- 	case "`/bin/arch`" in
- 	    sun3)
-@@ -189,29 +391,34 @@
-     aushp:SunOS:*:*)
- 	echo sparc-auspex-sunos${UNAME_RELEASE}
- 	exit 0 ;;
--    atari*:NetBSD:*:*)
--	echo m68k-atari-netbsd${UNAME_RELEASE}
-+    # The situation for MiNT is a little confusing.  The machine name
-+    # can be virtually everything (everything which is not
-+    # "atarist" or "atariste" at least should have a processor
-+    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
-+    # to the lowercase version "mint" (or "freemint").  Finally
-+    # the system name "TOS" denotes a system which is actually not
-+    # MiNT.  But MiNT is downward compatible to TOS, so this should
-+    # be no problem.
-+    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-+        echo m68k-atari-mint${UNAME_RELEASE}
- 	exit 0 ;;
--    atari*:OpenBSD:*:*)
--	echo m68k-unknown-openbsd${UNAME_RELEASE}
--	exit 0 ;;
--    sun3*:NetBSD:*:*)
--	echo m68k-sun-netbsd${UNAME_RELEASE}
--	exit 0 ;;
--    sun3*:OpenBSD:*:*)
--	echo m68k-unknown-openbsd${UNAME_RELEASE}
--	exit 0 ;;
--    mac68k:NetBSD:*:*)
--	echo m68k-apple-netbsd${UNAME_RELEASE}
--	exit 0 ;;
--    mac68k:OpenBSD:*:*)
--	echo m68k-unknown-openbsd${UNAME_RELEASE}
--	exit 0 ;;
--    mvme68k:OpenBSD:*:*)
--	echo m68k-unknown-openbsd${UNAME_RELEASE}
-+    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
-+	echo m68k-atari-mint${UNAME_RELEASE}
-+        exit 0 ;;
-+    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-+        echo m68k-atari-mint${UNAME_RELEASE}
- 	exit 0 ;;
--    mvme88k:OpenBSD:*:*)
--	echo m88k-unknown-openbsd${UNAME_RELEASE}
-+    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-+        echo m68k-milan-mint${UNAME_RELEASE}
-+        exit 0 ;;
-+    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-+        echo m68k-hades-mint${UNAME_RELEASE}
-+        exit 0 ;;
-+    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-+        echo m68k-unknown-mint${UNAME_RELEASE}
-+        exit 0 ;;
-+    m68k:machten:*:*)
-+	echo m68k-apple-machten${UNAME_RELEASE}
- 	exit 0 ;;
-     powerpc:machten:*:*)
- 	echo powerpc-apple-machten${UNAME_RELEASE}
-@@ -225,12 +432,18 @@
-     VAX*:ULTRIX*:*:*)
- 	echo vax-dec-ultrix${UNAME_RELEASE}
- 	exit 0 ;;
--    2020:CLIX:*:*)
-+    2020:CLIX:*:* | 2430:CLIX:*:*)
- 	echo clipper-intergraph-clix${UNAME_RELEASE}
- 	exit 0 ;;
-     mips:*:*:UMIPS | mips:*:*:RISCos)
--	sed 's/^	//' << EOF >dummy.c
--	int main (argc, argv) int argc; char **argv; {
-+	eval $set_cc_for_build
-+	sed 's/^	//' << EOF >$dummy.c
-+#ifdef __cplusplus
-+#include <stdio.h>  /* for printf() prototype */
-+	int main (int argc, char *argv[]) {
-+#else
-+	int main (argc, argv) int argc; char *argv[]; {
-+#endif
- 	#if defined (host_mips) && defined (MIPSEB)
- 	#if defined (SYSTYPE_SYSV)
- 	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
-@@ -245,12 +458,20 @@
- 	  exit (-1);
- 	}
- EOF
--	${CC-cc} dummy.c -o dummy \
--	  && ./dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
--	  && rm dummy.c dummy && exit 0
--	rm -f dummy.c dummy
-+	$CC_FOR_BUILD -o $dummy $dummy.c \
-+	  && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-+	  && exit 0
- 	echo mips-mips-riscos${UNAME_RELEASE}
- 	exit 0 ;;
-+    Motorola:PowerMAX_OS:*:*)
-+	echo powerpc-motorola-powermax
-+	exit 0 ;;
-+    Motorola:*:4.3:PL8-*)
-+	echo powerpc-harris-powermax
-+	exit 0 ;;
-+    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-+	echo powerpc-harris-powermax
-+	exit 0 ;;
-     Night_Hawk:Power_UNIX:*:*)
- 	echo powerpc-harris-powerunix
- 	exit 0 ;;
-@@ -266,15 +487,18 @@
-     AViiON:dgux:*:*)
-         # DG/UX returns AViiON for all architectures
-         UNAME_PROCESSOR=`/usr/bin/uname -p`
--        if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
--	if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
--	     -o ${TARGET_BINARY_INTERFACE}x = x ] ; then
-+	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
-+	then
-+	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-+	       [ ${TARGET_BINARY_INTERFACE}x = x ]
-+	    then
- 		echo m88k-dg-dgux${UNAME_RELEASE}
--	else
-+	    else
- 		echo m88k-dg-dguxbcs${UNAME_RELEASE}
-+	    fi
-+	else
-+	    echo i586-dg-dgux${UNAME_RELEASE}
- 	fi
--        else echo i586-dg-dgux${UNAME_RELEASE}
--        fi
-  	exit 0 ;;
-     M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
- 	echo m88k-dolphin-sysv3
-@@ -295,12 +519,21 @@
-     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- 	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
- 	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
--    i?86:AIX:*:*)
-+    i*86:AIX:*:*)
- 	echo i386-ibm-aix
- 	exit 0 ;;
-+    ia64:AIX:*:*)
-+	if [ -x /usr/bin/oslevel ] ; then
-+		IBM_REV=`/usr/bin/oslevel`
-+	else
-+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-+	fi
-+	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-+	exit 0 ;;
-     *:AIX:2:3)
- 	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
--		sed 's/^		//' << EOF >dummy.c
-+		eval $set_cc_for_build
-+		sed 's/^		//' << EOF >$dummy.c
- 		#include <sys/systemcfg.h>
- 
- 		main()
-@@ -311,8 +544,7 @@
- 			exit(0);
- 			}
- EOF
--		${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
--		rm -f dummy.c dummy
-+		$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
- 		echo rs6000-ibm-aix3.2.5
- 	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- 		echo rs6000-ibm-aix3.2.4
-@@ -320,8 +552,9 @@
- 		echo rs6000-ibm-aix3.2
- 	fi
- 	exit 0 ;;
--    *:AIX:*:4)
--	if /usr/sbin/lsattr -EHl proc0 | grep POWER >/dev/null 2>&1; then
-+    *:AIX:*:[45])
-+	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
-+	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
- 		IBM_ARCH=rs6000
- 	else
- 		IBM_ARCH=powerpc
-@@ -329,7 +562,7 @@
- 	if [ -x /usr/bin/oslevel ] ; then
- 		IBM_REV=`/usr/bin/oslevel`
- 	else
--		IBM_REV=4.${UNAME_RELEASE}
-+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- 	fi
- 	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- 	exit 0 ;;
-@@ -339,7 +572,7 @@
-     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
- 	echo romp-ibm-bsd4.4
- 	exit 0 ;;
--    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC NetBSD and
-+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
- 	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
- 	exit 0 ;;                           # report: romp-ibm BSD 4.3
-     *:BOSX:*:*)
-@@ -354,18 +587,85 @@
-     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- 	echo m68k-hp-bsd4.4
- 	exit 0 ;;
--    9000/[3478]??:HP-UX:*:*)
-+    9000/[34678]??:HP-UX:*:*)
-+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- 	case "${UNAME_MACHINE}" in
- 	    9000/31? )            HP_ARCH=m68000 ;;
- 	    9000/[34]?? )         HP_ARCH=m68k ;;
--	    9000/7?? | 9000/8?[1679] ) HP_ARCH=hppa1.1 ;;
--	    9000/8?? )            HP_ARCH=hppa1.0 ;;
-+	    9000/[678][0-9][0-9])
-+		if [ -x /usr/bin/getconf ]; then
-+		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
-+                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-+                    case "${sc_cpu_version}" in
-+                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-+                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
-+                      532)                      # CPU_PA_RISC2_0
-+                        case "${sc_kernel_bits}" in
-+                          32) HP_ARCH="hppa2.0n" ;;
-+                          64) HP_ARCH="hppa2.0w" ;;
-+			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
-+                        esac ;;
-+                    esac
-+		fi
-+		if [ "${HP_ARCH}" = "" ]; then
-+		    eval $set_cc_for_build
-+		    sed 's/^              //' << EOF >$dummy.c
-+
-+              #define _HPUX_SOURCE
-+              #include <stdlib.h>
-+              #include <unistd.h>
-+
-+              int main ()
-+              {
-+              #if defined(_SC_KERNEL_BITS)
-+                  long bits = sysconf(_SC_KERNEL_BITS);
-+              #endif
-+                  long cpu  = sysconf (_SC_CPU_VERSION);
-+
-+                  switch (cpu)
-+              	{
-+              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-+              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-+              	case CPU_PA_RISC2_0:
-+              #if defined(_SC_KERNEL_BITS)
-+              	    switch (bits)
-+              		{
-+              		case 64: puts ("hppa2.0w"); break;
-+              		case 32: puts ("hppa2.0n"); break;
-+              		default: puts ("hppa2.0"); break;
-+              		} break;
-+              #else  /* !defined(_SC_KERNEL_BITS) */
-+              	    puts ("hppa2.0"); break;
-+              #endif
-+              	default: puts ("hppa1.0"); break;
-+              	}
-+                  exit (0);
-+              }
-+EOF
-+		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
-+		    test -z "$HP_ARCH" && HP_ARCH=hppa
-+		fi ;;
- 	esac
--	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-+	if [ ${HP_ARCH} = "hppa2.0w" ]
-+	then
-+	    # avoid double evaluation of $set_cc_for_build
-+	    test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
-+	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
-+	    then
-+		HP_ARCH="hppa2.0w"
-+	    else
-+		HP_ARCH="hppa64"
-+	    fi
-+	fi
- 	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- 	exit 0 ;;
-+    ia64:HP-UX:*:*)
-+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-+	echo ia64-hp-hpux${HPUX_REV}
-+	exit 0 ;;
-     3050*:HI-UX:*:*)
--	sed 's/^	//' << EOF >dummy.c
-+	eval $set_cc_for_build
-+	sed 's/^	//' << EOF >$dummy.c
- 	#include <unistd.h>
- 	int
- 	main ()
-@@ -390,8 +690,7 @@
- 	  exit (0);
- 	}
- EOF
--	${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
--	rm -f dummy.c dummy
-+	$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
- 	echo unknown-hitachi-hiuxwe2
- 	exit 0 ;;
-     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
-@@ -400,13 +699,16 @@
-     9000/8??:4.3bsd:*:*)
- 	echo hppa1.0-hp-bsd
- 	exit 0 ;;
-+    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
-+	echo hppa1.0-hp-mpeix
-+	exit 0 ;;
-     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
- 	echo hppa1.1-hp-osf
- 	exit 0 ;;
-     hp8??:OSF1:*:*)
- 	echo hppa1.0-hp-osf
- 	exit 0 ;;
--    i?86:OSF1:*:*)
-+    i*86:OSF1:*:*)
- 	if [ -x /usr/sbin/sysversion ] ; then
- 	    echo ${UNAME_MACHINE}-unknown-osf1mk
- 	else
-@@ -434,196 +736,259 @@
-     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- 	echo c4-convex-bsd
-         exit 0 ;;
--    CRAY*X-MP:*:*:*)
--	echo xmp-cray-unicos
--        exit 0 ;;
-     CRAY*Y-MP:*:*:*)
--	echo ymp-cray-unicos${UNAME_RELEASE}
-+	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- 	exit 0 ;;
-     CRAY*[A-Z]90:*:*:*)
- 	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
- 	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
--	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
-+	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-+	      -e 's/\.[^.]*$/.X/'
- 	exit 0 ;;
-     CRAY*TS:*:*:*)
--	echo t90-cray-unicos${UNAME_RELEASE}
-+	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- 	exit 0 ;;
--    CRAY-2:*:*:*)
--	echo cray2-cray-unicos
--        exit 0 ;;
--    F300:UNIX_System_V:*:*)
--        FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'`
-+    CRAY*T3E:*:*:*)
-+	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+	exit 0 ;;
-+    CRAY*SV1:*:*:*)
-+	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+	exit 0 ;;
-+    *:UNICOS/mp:*:*)
-+	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+	exit 0 ;;
-+    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-+	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-         FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
--        echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-+        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-         exit 0 ;;
--    F301:UNIX_System_V:*:*)
--       echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
--       exit 0 ;;
--    hp3[0-9][05]:NetBSD:*:*)
--	echo m68k-hp-netbsd${UNAME_RELEASE}
-+    5000:UNIX_System_V:4.*:*)
-+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-+        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
-+        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- 	exit 0 ;;
--    hp300:OpenBSD:*:*)
--	echo m68k-unknown-openbsd${UNAME_RELEASE}
--	exit 0 ;;
--    i?86:BSD/386:*:* | *:BSD/OS:*:*)
-+    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- 	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- 	exit 0 ;;
--    *:FreeBSD:*:*)
--	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-+    sparc*:BSD/OS:*:*)
-+	echo sparc-unknown-bsdi${UNAME_RELEASE}
- 	exit 0 ;;
--    *:NetBSD:*:*)
--	echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-+    *:BSD/OS:*:*)
-+	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- 	exit 0 ;;
--    *:OpenBSD:*:*)
--	echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-+    *:FreeBSD:*:*)
-+	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- 	exit 0 ;;
-     i*:CYGWIN*:*)
--	echo i386-pc-cygwin32
-+	echo ${UNAME_MACHINE}-pc-cygwin
- 	exit 0 ;;
-     i*:MINGW*:*)
--	echo i386-pc-mingw32
-+	echo ${UNAME_MACHINE}-pc-mingw32
-+	exit 0 ;;
-+    i*:PW*:*)
-+	echo ${UNAME_MACHINE}-pc-pw32
-+	exit 0 ;;
-+    x86:Interix*:[34]*)
-+	echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
-+	exit 0 ;;
-+    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-+	echo i${UNAME_MACHINE}-pc-mks
-+	exit 0 ;;
-+    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
-+	# How do we know it's Interix rather than the generic POSIX subsystem?
-+	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
-+	# UNAME_MACHINE based on the output of uname instead of i386?
-+	echo i586-pc-interix
-+	exit 0 ;;
-+    i*:UWIN*:*)
-+	echo ${UNAME_MACHINE}-pc-uwin
- 	exit 0 ;;
-     p*:CYGWIN*:*)
--	echo powerpcle-unknown-cygwin32
-+	echo powerpcle-unknown-cygwin
- 	exit 0 ;;
-     prep*:SunOS:5.*:*)
- 	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- 	exit 0 ;;
-     *:GNU:*:*)
-+	# the GNU system
- 	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- 	exit 0 ;;
--    *:Linux:*:*)
-+    *:GNU/*:*:*)
-+	# other systems with GNU libc and userland
-+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-+	exit 0 ;;
-+    i*86:Minix:*:*)
-+	echo ${UNAME_MACHINE}-pc-minix
-+	exit 0 ;;
-+    arm*:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	exit 0 ;;
-+    cris:Linux:*:*)
-+	echo cris-axis-linux-gnu
-+	exit 0 ;;
-+    crisv32:Linux:*:*)
-+	echo crisv32-axis-linux-gnu
-+	exit 0 ;;
-+    frv:Linux:*:*)
-+    	echo frv-unknown-linux-gnu
-+	exit 0 ;;
-+    ia64:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	exit 0 ;;
-+    m32r*:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	exit 0 ;;
-+    m68*:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	exit 0 ;;
-+    mips:Linux:*:*)
-+	eval $set_cc_for_build
-+	sed 's/^	//' << EOF >$dummy.c
-+	#undef CPU
-+	#undef mips
-+	#undef mipsel
-+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-+	CPU=mipsel
-+	#else
-+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-+	CPU=mips
-+	#else
-+	CPU=
-+	#endif
-+	#endif
-+EOF
-+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-+	test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
-+	;;
-+    mips64:Linux:*:*)
-+	eval $set_cc_for_build
-+	sed 's/^	//' << EOF >$dummy.c
-+	#undef CPU
-+	#undef mips64
-+	#undef mips64el
-+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-+	CPU=mips64el
-+	#else
-+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-+	CPU=mips64
-+	#else
-+	CPU=
-+	#endif
-+	#endif
-+EOF
-+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-+	test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
-+	;;
-+    ppc:Linux:*:*)
-+	echo powerpc-unknown-linux-gnu
-+	exit 0 ;;
-+    ppc64:Linux:*:*)
-+	echo powerpc64-unknown-linux-gnu
-+	exit 0 ;;
-+    alpha:Linux:*:*)
-+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-+	  EV5)   UNAME_MACHINE=alphaev5 ;;
-+	  EV56)  UNAME_MACHINE=alphaev56 ;;
-+	  PCA56) UNAME_MACHINE=alphapca56 ;;
-+	  PCA57) UNAME_MACHINE=alphapca56 ;;
-+	  EV6)   UNAME_MACHINE=alphaev6 ;;
-+	  EV67)  UNAME_MACHINE=alphaev67 ;;
-+	  EV68*) UNAME_MACHINE=alphaev68 ;;
-+        esac
-+	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
-+	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-+	exit 0 ;;
-+    parisc:Linux:*:* | hppa:Linux:*:*)
-+	# Look for CPU level
-+	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-+	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
-+	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
-+	  *)    echo hppa-unknown-linux-gnu ;;
-+	esac
-+	exit 0 ;;
-+    parisc64:Linux:*:* | hppa64:Linux:*:*)
-+	echo hppa64-unknown-linux-gnu
-+	exit 0 ;;
-+    s390:Linux:*:* | s390x:Linux:*:*)
-+	echo ${UNAME_MACHINE}-ibm-linux
-+	exit 0 ;;
-+    sh64*:Linux:*:*)
-+    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	exit 0 ;;
-+    sh*:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	exit 0 ;;
-+    sparc:Linux:*:* | sparc64:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	exit 0 ;;
-+    x86_64:Linux:*:*)
-+	echo x86_64-unknown-linux-gnu
-+	exit 0 ;;
-+    i*86:Linux:*:*)
- 	# The BFD linker knows what the default object file format is, so
--	# first see if it will tell us.
--	ld_help_string=`ld --help 2>&1`
--	ld_supported_emulations=`echo $ld_help_string \
--			 | sed -ne '/supported emulations:/!d
-+	# first see if it will tell us. cd to the root directory to prevent
-+	# problems with other programs or directories called `ld' in the path.
-+	# Set LC_ALL=C to ensure ld outputs messages in English.
-+	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
-+			 | sed -ne '/supported targets:/!d
- 				    s/[ 	][ 	]*/ /g
--				    s/.*supported emulations: *//
-+				    s/.*supported targets: *//
- 				    s/ .*//
- 				    p'`
--        case "$ld_supported_emulations" in
--	  i?86linux)  echo "${UNAME_MACHINE}-pc-linux-gnuaout"      ; exit 0 ;;
--	  i?86coff)   echo "${UNAME_MACHINE}-pc-linux-gnucoff"      ; exit 0 ;;
--	  sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
--	  m68klinux)  echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
--	  elf32ppc)   echo "powerpc-unknown-linux-gnu"              ; exit 0 ;;
--	esac
--
--	if test "${UNAME_MACHINE}" = "alpha" ; then
--		sed 's/^	//'  <<EOF >dummy.s
--		.globl main
--		.ent main
--	main:
--		.frame \$30,0,\$26,0
--		.prologue 0
--		.long 0x47e03d80 # implver $0
--		lda \$2,259
--		.long 0x47e20c21 # amask $2,$1
--		srl \$1,8,\$2
--		sll \$2,2,\$2
--		sll \$0,3,\$0
--		addl \$1,\$0,\$0
--		addl \$2,\$0,\$0
--		ret \$31,(\$26),1
--		.end main
--EOF
--		LIBC=""
--		${CC-cc} dummy.s -o dummy 2>/dev/null
--		if test "$?" = 0 ; then
--			./dummy
--			case "$?" in
--			7)
--				UNAME_MACHINE="alpha"
--				;;
--			15)
--				UNAME_MACHINE="alphaev5"
--				;;
--			14)
--				UNAME_MACHINE="alphaev56"
--				;;
--			10)
--				UNAME_MACHINE="alphapca56"
--				;;
--			16)
--				UNAME_MACHINE="alphaev6"
--				;;
--			esac	
--
--			objdump --private-headers dummy | \
--			  grep ld.so.1 > /dev/null
--			if test "$?" = 0 ; then
--				LIBC="libc1"
--			fi
--		fi	
--		rm -f dummy.s dummy
--		echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
--	elif test "${UNAME_MACHINE}" = "mips" ; then
--	  cat >dummy.c <<EOF
--main(argc, argv)
--     int argc;
--     char *argv[];
--{
--#ifdef __MIPSEB__
--  printf ("%s-unknown-linux-gnu\n", argv[1]);
--#endif
--#ifdef __MIPSEL__
--  printf ("%sel-unknown-linux-gnu\n", argv[1]);
--#endif
--  return 0;
--}
--EOF
--	  ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
--	  rm -f dummy.c dummy
--	else
--	  # Either a pre-BFD a.out linker (linux-gnuoldld)
--	  # or one that does not give us useful --help.
--	  # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
--	  # If ld does not provide *any* "supported emulations:"
--	  # that means it is gnuoldld.
--	  echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
--	  test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
--
--	  case "${UNAME_MACHINE}" in
--	  i?86)
--	    VENDOR=pc;
--	    ;;
--	  *)
--	    VENDOR=unknown;
--	    ;;
--	  esac
--	  # Determine whether the default compiler is a.out or elf
--	  cat >dummy.c <<EOF
--#include <features.h>
--main(argc, argv)
--     int argc;
--     char *argv[];
--{
--#ifdef __ELF__
--# ifdef __GLIBC__
--#  if __GLIBC__ >= 2
--    printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
--#  else
--    printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
--#  endif
--# else
--   printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
--# endif
--#else
--  printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
--#endif
--  return 0;
--}
-+        case "$ld_supported_targets" in
-+	  elf32-i386)
-+		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
-+		;;
-+	  a.out-i386-linux)
-+		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-+		exit 0 ;;
-+	  coff-i386)
-+		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
-+		exit 0 ;;
-+	  "")
-+		# Either a pre-BFD a.out linker (linux-gnuoldld) or
-+		# one that does not give us useful --help.
-+		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-+		exit 0 ;;
-+	esac
-+	# Determine whether the default compiler is a.out or elf
-+	eval $set_cc_for_build
-+	sed 's/^	//' << EOF >$dummy.c
-+	#include <features.h>
-+	#ifdef __ELF__
-+	# ifdef __GLIBC__
-+	#  if __GLIBC__ >= 2
-+	LIBC=gnu
-+	#  else
-+	LIBC=gnulibc1
-+	#  endif
-+	# else
-+	LIBC=gnulibc1
-+	# endif
-+	#else
-+	#ifdef __INTEL_COMPILER
-+	LIBC=gnu
-+	#else
-+	LIBC=gnuaout
-+	#endif
-+	#endif
-+	#ifdef __dietlibc__
-+	LIBC=dietlibc
-+	#endif
- EOF
--	  ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
--	  rm -f dummy.c dummy
--	fi ;;
--# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.  earlier versions
--# are messed up and put the nodename in both sysname and nodename.
--    i?86:DYNIX/ptx:4*:*)
-+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
-+	test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
-+	test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
-+	;;
-+    i*86:DYNIX/ptx:4*:*)
-+	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
-+	# earlier versions are messed up and put the nodename in both
-+	# sysname and nodename.
- 	echo i386-sequent-sysv4
- 	exit 0 ;;
--    i?86:UNIX_SV:4.2MP:2.*)
-+    i*86:UNIX_SV:4.2MP:2.*)
-         # Unixware is an offshoot of SVR4, but it has its own version
-         # number series starting with 2...
-         # I am not positive that other SVR4 systems won't match this,
-@@ -631,28 +996,62 @@
-         # Use sysv4.2uw... so that sysv4* matches it.
- 	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- 	exit 0 ;;
--    i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
-+    i*86:OS/2:*:*)
-+	# If we were able to find `uname', then EMX Unix compatibility
-+	# is probably installed.
-+	echo ${UNAME_MACHINE}-pc-os2-emx
-+	exit 0 ;;
-+    i*86:XTS-300:*:STOP)
-+	echo ${UNAME_MACHINE}-unknown-stop
-+	exit 0 ;;
-+    i*86:atheos:*:*)
-+	echo ${UNAME_MACHINE}-unknown-atheos
-+	exit 0 ;;
-+	i*86:syllable:*:*)
-+	echo ${UNAME_MACHINE}-pc-syllable
-+	exit 0 ;;
-+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
-+	echo i386-unknown-lynxos${UNAME_RELEASE}
-+	exit 0 ;;
-+    i*86:*DOS:*:*)
-+	echo ${UNAME_MACHINE}-pc-msdosdjgpp
-+	exit 0 ;;
-+    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
-+	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
- 	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
--		echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
-+		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
- 	else
--		echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
-+		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
- 	fi
- 	exit 0 ;;
--    i?86:*:3.2:*)
-+    i*86:*:5:[78]*)
-+	case `/bin/uname -X | grep "^Machine"` in
-+	    *486*)	     UNAME_MACHINE=i486 ;;
-+	    *Pentium)	     UNAME_MACHINE=i586 ;;
-+	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
-+	esac
-+	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-+	exit 0 ;;
-+    i*86:*:3.2:*)
- 	if test -f /usr/options/cb.name; then
- 		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- 		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
- 	elif /bin/uname -X 2>/dev/null >/dev/null ; then
--		UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
--		(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
--		(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
-+		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
-+		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
-+		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- 			&& UNAME_MACHINE=i586
-+		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
-+			&& UNAME_MACHINE=i686
-+		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
-+			&& UNAME_MACHINE=i686
- 		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- 	else
- 		echo ${UNAME_MACHINE}-pc-sysv32
- 	fi
- 	exit 0 ;;
-     pc:*:*:*)
-+	# Left here for compatibility:
-         # uname -m prints for DJGPP always 'pc', but it prints nothing about
-         # the processor, so we play safe by assuming i386.
- 	echo i386-pc-msdosdjgpp
-@@ -674,9 +1073,15 @@
- 	# "miniframe"
- 	echo m68010-convergent-sysv
- 	exit 0 ;;
--    M68*:*:R3V[567]*:*)
-+    mc68k:UNIX:SYSTEM5:3.51m)
-+	echo m68k-convergent-sysv
-+	exit 0 ;;
-+    M680?0:D-NIX:5.3:*)
-+	echo m68k-diab-dnix
-+	exit 0 ;;
-+    M68*:*:R3V[5678]*:*)
- 	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
--    3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
-+    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
- 	OS_REL=''
- 	test -r /etc/.relid \
- 	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-@@ -687,24 +1092,27 @@
-     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-           && echo i486-ncr-sysv4 && exit 0 ;;
--    m68*:LynxOS:2.*:*)
-+    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- 	echo m68k-unknown-lynxos${UNAME_RELEASE}
- 	exit 0 ;;
-     mc68030:UNIX_System_V:4.*:*)
- 	echo m68k-atari-sysv4
- 	exit 0 ;;
--    i?86:LynxOS:2.*:*)
--	echo i386-unknown-lynxos${UNAME_RELEASE}
--	exit 0 ;;
-     TSUNAMI:LynxOS:2.*:*)
- 	echo sparc-unknown-lynxos${UNAME_RELEASE}
- 	exit 0 ;;
--    rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
-+    rs6000:LynxOS:2.*:*)
- 	echo rs6000-unknown-lynxos${UNAME_RELEASE}
- 	exit 0 ;;
-+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
-+	echo powerpc-unknown-lynxos${UNAME_RELEASE}
-+	exit 0 ;;
-     SM[BE]S:UNIX_SV:*:*)
- 	echo mips-dde-sysv${UNAME_RELEASE}
- 	exit 0 ;;
-+    RM*:ReliantUNIX-*:*:*)
-+	echo mips-sni-sysv4
-+	exit 0 ;;
-     RM*:SINIX-*:*:*)
- 	echo mips-sni-sysv4
- 	exit 0 ;;
-@@ -716,8 +1124,8 @@
- 		echo ns32k-sni-sysv
- 	fi
- 	exit 0 ;;
--    PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
--                           # says <Richard.M.Bartel@ccMail.Census.GOV>
-+    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-+                      # says <Richard.M.Bartel@ccMail.Census.GOV>
-         echo i586-unisys-sysv4
-         exit 0 ;;
-     *:UNIX_System_V:4*:FTX*)
-@@ -729,25 +1137,130 @@
- 	# From seanf@swdc.stratus.com.
- 	echo i860-stratus-sysv4
- 	exit 0 ;;
-+    *:VOS:*:*)
-+	# From Paul.Green@stratus.com.
-+	echo hppa1.1-stratus-vos
-+	exit 0 ;;
-     mc68*:A/UX:*:*)
- 	echo m68k-apple-aux${UNAME_RELEASE}
- 	exit 0 ;;
--    news*:NEWS-OS:*:6*)
-+    news*:NEWS-OS:6*:*)
- 	echo mips-sony-newsos6
- 	exit 0 ;;
--    R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:*)
-+    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- 	if [ -d /usr/nec ]; then
- 	        echo mips-nec-sysv${UNAME_RELEASE}
- 	else
- 	        echo mips-unknown-sysv${UNAME_RELEASE}
- 	fi
-         exit 0 ;;
-+    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
-+	echo powerpc-be-beos
-+	exit 0 ;;
-+    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
-+	echo powerpc-apple-beos
-+	exit 0 ;;
-+    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
-+	echo i586-pc-beos
-+	exit 0 ;;
-+    SX-4:SUPER-UX:*:*)
-+	echo sx4-nec-superux${UNAME_RELEASE}
-+	exit 0 ;;
-+    SX-5:SUPER-UX:*:*)
-+	echo sx5-nec-superux${UNAME_RELEASE}
-+	exit 0 ;;
-+    SX-6:SUPER-UX:*:*)
-+	echo sx6-nec-superux${UNAME_RELEASE}
-+	exit 0 ;;
-+    Power*:Rhapsody:*:*)
-+	echo powerpc-apple-rhapsody${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:Rhapsody:*:*)
-+	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:Darwin:*:*)
-+	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-+	case $UNAME_PROCESSOR in
-+	    *86) UNAME_PROCESSOR=i686 ;;
-+	    unknown) UNAME_PROCESSOR=powerpc ;;
-+	esac
-+	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:procnto*:*:* | *:QNX:[0123456789]*:*)
-+	UNAME_PROCESSOR=`uname -p`
-+	if test "$UNAME_PROCESSOR" = "x86"; then
-+		UNAME_PROCESSOR=i386
-+		UNAME_MACHINE=pc
-+	fi
-+	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:QNX:*:4*)
-+	echo i386-pc-qnx
-+	exit 0 ;;
-+    NSR-?:NONSTOP_KERNEL:*:*)
-+	echo nsr-tandem-nsk${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:NonStop-UX:*:*)
-+	echo mips-compaq-nonstopux
-+	exit 0 ;;
-+    BS2000:POSIX*:*:*)
-+	echo bs2000-siemens-sysv
-+	exit 0 ;;
-+    DS/*:UNIX_System_V:*:*)
-+	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:Plan9:*:*)
-+	# "uname -m" is not consistent, so use $cputype instead. 386
-+	# is converted to i386 for consistency with other x86
-+	# operating systems.
-+	if test "$cputype" = "386"; then
-+	    UNAME_MACHINE=i386
-+	else
-+	    UNAME_MACHINE="$cputype"
-+	fi
-+	echo ${UNAME_MACHINE}-unknown-plan9
-+	exit 0 ;;
-+    *:TOPS-10:*:*)
-+	echo pdp10-unknown-tops10
-+	exit 0 ;;
-+    *:TENEX:*:*)
-+	echo pdp10-unknown-tenex
-+	exit 0 ;;
-+    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-+	echo pdp10-dec-tops20
-+	exit 0 ;;
-+    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-+	echo pdp10-xkl-tops20
-+	exit 0 ;;
-+    *:TOPS-20:*:*)
-+	echo pdp10-unknown-tops20
-+	exit 0 ;;
-+    *:ITS:*:*)
-+	echo pdp10-unknown-its
-+	exit 0 ;;
-+    SEI:*:*:SEIUX)
-+        echo mips-sei-seiux${UNAME_RELEASE}
-+	exit 0 ;;
-+    *:DragonFly:*:*)
-+	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-+	exit 0 ;;
-+    *:*VMS:*:*)
-+    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
-+	case "${UNAME_MACHINE}" in
-+	    A*) echo alpha-dec-vms && exit 0 ;;
-+	    I*) echo ia64-dec-vms && exit 0 ;;
-+	    V*) echo vax-dec-vms && exit 0 ;;
-+	esac ;;
-+    *:XENIX:*:SysV)
-+	echo i386-pc-xenix
-+	exit 0 ;;
- esac
- 
- #echo '(No uname command or uname output not recognized.)' 1>&2
- #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
- 
--cat >dummy.c <<EOF
-+eval $set_cc_for_build
-+cat >$dummy.c <<EOF
- #ifdef _SEQUENT_
- # include <sys/types.h>
- # include <sys/utsname.h>
-@@ -785,7 +1298,10 @@
- #endif
-   int version;
-   version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
--  printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-+  if (version < 4)
-+    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-+  else
-+    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-   exit (0);
- #endif
- 
-@@ -830,11 +1346,24 @@
- #endif
- 
- #if defined (vax)
--#if !defined (ultrix)
--  printf ("vax-dec-bsd\n"); exit (0);
--#else
--  printf ("vax-dec-ultrix\n"); exit (0);
--#endif
-+# if !defined (ultrix)
-+#  include <sys/param.h>
-+#  if defined (BSD)
-+#   if BSD == 43
-+      printf ("vax-dec-bsd4.3\n"); exit (0);
-+#   else
-+#    if BSD == 199006
-+      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-+#    else
-+      printf ("vax-dec-bsd\n"); exit (0);
-+#    endif
-+#   endif
-+#  else
-+    printf ("vax-dec-bsd\n"); exit (0);
-+#  endif
-+# else
-+    printf ("vax-dec-ultrix\n"); exit (0);
-+# endif
- #endif
- 
- #if defined (alliant) && defined (i860)
-@@ -845,8 +1374,7 @@
- }
- EOF
- 
--${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0
--rm -f dummy.c dummy
-+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
- 
- # Apollos put the system type in the environment.
- 
-@@ -878,6 +1406,48 @@
-     esac
- fi
- 
--#echo '(Unable to guess system type)' 1>&2
-+cat >&2 <<EOF
-+$0: unable to guess system type
-+
-+This script, last modified $timestamp, has failed to recognize
-+the operating system you are using. It is advised that you
-+download the most up to date version of the config scripts from
-+
-+    ftp://ftp.gnu.org/pub/gnu/config/
-+
-+If the version you run ($0) is already up to date, please
-+send the following data and any information you think might be
-+pertinent to <config-patches@gnu.org> in order to provide the needed
-+information to handle your system.
-+
-+config.guess timestamp = $timestamp
-+
-+uname -m = `(uname -m) 2>/dev/null || echo unknown`
-+uname -r = `(uname -r) 2>/dev/null || echo unknown`
-+uname -s = `(uname -s) 2>/dev/null || echo unknown`
-+uname -v = `(uname -v) 2>/dev/null || echo unknown`
-+
-+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
-+
-+hostinfo               = `(hostinfo) 2>/dev/null`
-+/bin/universe          = `(/bin/universe) 2>/dev/null`
-+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
-+/bin/arch              = `(/bin/arch) 2>/dev/null`
-+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
-+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-+
-+UNAME_MACHINE = ${UNAME_MACHINE}
-+UNAME_RELEASE = ${UNAME_RELEASE}
-+UNAME_SYSTEM  = ${UNAME_SYSTEM}
-+UNAME_VERSION = ${UNAME_VERSION}
-+EOF
- 
- exit 1
-+
-+# Local variables:
-+# eval: (add-hook 'write-file-hooks 'time-stamp)
-+# time-stamp-start: "timestamp='"
-+# time-stamp-format: "%:y-%02m-%02d"
-+# time-stamp-end: "'"
-+# End:
-diff -urN jpeg.old/config.sub jpeg.dev/config.sub
---- jpeg.old/config.sub	1998-03-25 16:25:39.000000000 +0100
-+++ jpeg.dev/config.sub	2006-04-21 16:16:34.000000000 +0200
-@@ -1,6 +1,10 @@
- #! /bin/sh
--# Configuration validation subroutine script, version 1.1.
--#   Copyright (C) 1991, 92, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
-+# Configuration validation subroutine script.
-+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-+#   2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
-+
-+timestamp='2004-11-30'
-+
- # This file is (in principle) common to ALL GNU software.
- # The presence of a machine in this file suggests that SOME GNU software
- # can handle that machine.  It does not imply ALL GNU software can.
-@@ -25,6 +29,9 @@
- # configuration script generated by Autoconf, you may include it under
- # the same distribution terms that you use for the rest of that program.
- 
-+# Please send patches to <config-patches@gnu.org>.  Submit a context
-+# diff and a properly formatted ChangeLog entry.
-+#
- # Configuration subroutine to validate and canonicalize a configuration type.
- # Supply the specified configuration type as an argument.
- # If it is invalid, we print an error message on stderr and exit with code 1.
-@@ -45,30 +52,74 @@
- #	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
- # It is wrong to echo any other type of specification.
- 
--if [ x$1 = x ]
--then
--	echo Configuration name missing. 1>&2
--	echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
--	echo "or     $0 ALIAS" 1>&2
--	echo where ALIAS is a recognized configuration type. 1>&2
--	exit 1
--fi
-+me=`echo "$0" | sed -e 's,.*/,,'`
- 
--# First pass through any local machine types.
--case $1 in
--	*local*)
--		echo $1
--		exit 0
--		;;
--	*)
--	;;
-+usage="\
-+Usage: $0 [OPTION] CPU-MFR-OPSYS
-+       $0 [OPTION] ALIAS
-+
-+Canonicalize a configuration name.
-+
-+Operation modes:
-+  -h, --help         print this help, then exit
-+  -t, --time-stamp   print date of last modification, then exit
-+  -v, --version      print version number, then exit
-+
-+Report bugs and patches to <config-patches@gnu.org>."
-+
-+version="\
-+GNU config.sub ($timestamp)
-+
-+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
-+Free Software Foundation, Inc.
-+
-+This is free software; see the source for copying conditions.  There is NO
-+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-+
-+help="
-+Try \`$me --help' for more information."
-+
-+# Parse command line
-+while test $# -gt 0 ; do
-+  case $1 in
-+    --time-stamp | --time* | -t )
-+       echo "$timestamp" ; exit 0 ;;
-+    --version | -v )
-+       echo "$version" ; exit 0 ;;
-+    --help | --h* | -h )
-+       echo "$usage"; exit 0 ;;
-+    -- )     # Stop option processing
-+       shift; break ;;
-+    - )	# Use stdin as input.
-+       break ;;
-+    -* )
-+       echo "$me: invalid option $1$help"
-+       exit 1 ;;
-+
-+    *local*)
-+       # First pass through any local machine types.
-+       echo $1
-+       exit 0;;
-+
-+    * )
-+       break ;;
-+  esac
-+done
-+
-+case $# in
-+ 0) echo "$me: missing argument$help" >&2
-+    exit 1;;
-+ 1) ;;
-+ *) echo "$me: too many arguments$help" >&2
-+    exit 1;;
- esac
- 
- # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
- # Here we must recognize all the valid KERNEL-OS combinations.
- maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
- case $maybe_os in
--  linux-gnu*)
-+  nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
-+  kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
-     os=-$maybe_os
-     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
-     ;;
-@@ -94,15 +145,33 @@
- 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
--	-apple)
-+	-apple | -axis | -knuth | -cray)
- 		os=
- 		basic_machine=$1
- 		;;
-+	-sim | -cisco | -oki | -wec | -winbond)
-+		os=
-+		basic_machine=$1
-+		;;
-+	-scout)
-+		;;
-+	-wrs)
-+		os=-vxworks
-+		basic_machine=$1
-+		;;
-+	-chorusos*)
-+		os=-chorusos
-+		basic_machine=$1
-+		;;
-+ 	-chorusrdb)
-+ 		os=-chorusrdb
-+		basic_machine=$1
-+ 		;;
- 	-hiux*)
- 		os=-hiuxwe2
- 		;;
- 	-sco5)
--		os=sco3.2v5
-+		os=-sco3.2v5
- 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- 		;;
- 	-sco4)
-@@ -121,6 +190,9 @@
- 		os=-sco3.2v2
- 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- 		;;
-+	-udk*)
-+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-+		;;
- 	-isc)
- 		os=-isc2.2
- 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-@@ -143,26 +215,74 @@
- 	-psos*)
- 		os=-psos
- 		;;
-+	-mint | -mint[0-9]*)
-+		basic_machine=m68k-atari
-+		os=-mint
-+		;;
- esac
- 
- # Decode aliases for certain CPU-COMPANY combinations.
- case $basic_machine in
- 	# Recognize the basic CPU types without company name.
- 	# Some are omitted here because they have special meanings below.
--	tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
--		| arme[lb] | pyramid | mn10200 | mn10300 \
--		| tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \
--		| alpha | alphaev5 | alphaev56 | we32k | ns16k | clipper \
--		| i370 | sh | powerpc | powerpcle | 1750a | dsp16xx | pdp11 \
--		| mips64 | mipsel | mips64el | mips64orion | mips64orionel \
--		| mipstx39 | mipstx39el \
--		| sparc | sparclet | sparclite | sparc64 | v850)
-+	1750a | 580 \
-+	| a29k \
-+	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-+	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-+	| am33_2.0 \
-+	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
-+	| c4x | clipper \
-+	| d10v | d30v | dlx | dsp16xx \
-+	| fr30 | frv \
-+	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-+	| i370 | i860 | i960 | ia64 \
-+	| ip2k | iq2000 \
-+	| m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
-+	| mips | mipsbe | mipseb | mipsel | mipsle \
-+	| mips16 \
-+	| mips64 | mips64el \
-+	| mips64vr | mips64vrel \
-+	| mips64orion | mips64orionel \
-+	| mips64vr4100 | mips64vr4100el \
-+	| mips64vr4300 | mips64vr4300el \
-+	| mips64vr5000 | mips64vr5000el \
-+	| mipsisa32 | mipsisa32el \
-+	| mipsisa32r2 | mipsisa32r2el \
-+	| mipsisa64 | mipsisa64el \
-+	| mipsisa64r2 | mipsisa64r2el \
-+	| mipsisa64sb1 | mipsisa64sb1el \
-+	| mipsisa64sr71k | mipsisa64sr71kel \
-+	| mipstx39 | mipstx39el \
-+	| mn10200 | mn10300 \
-+	| msp430 \
-+	| ns16k | ns32k \
-+	| openrisc | or32 \
-+	| pdp10 | pdp11 | pj | pjl \
-+	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
-+	| pyramid \
-+	| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
-+	| sh64 | sh64le \
-+	| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \
-+	| strongarm \
-+	| tahoe | thumb | tic4x | tic80 | tron \
-+	| v850 | v850e \
-+	| we32k \
-+	| x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
-+	| z8k)
- 		basic_machine=$basic_machine-unknown
- 		;;
-+	m6811 | m68hc11 | m6812 | m68hc12)
-+		# Motorola 68HC11/12.
-+		basic_machine=$basic_machine-unknown
-+		os=-none
-+		;;
-+	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
-+		;;
-+
- 	# We use `pc' rather than `unknown'
- 	# because (1) that's what they normally are, and
- 	# (2) the word "unknown" tends to confuse beginning users.
--	i[3456]86)
-+	i*86 | x86_64)
- 	  basic_machine=$basic_machine-pc
- 	  ;;
- 	# Object if more than one company name word.
-@@ -171,27 +291,86 @@
- 		exit 1
- 		;;
- 	# Recognize the basic CPU types with company name.
--	vax-* | tahoe-* | i[3456]86-* | i860-* | m32r-* | m68k-* | m68000-* \
--	      | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
--	      | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
--	      | power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \
--	      | xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* \
--	      | alpha-* | alphaev5-* | alphaev56-* | we32k-* | cydra-* \
--	      | ns16k-* | pn-* | np1-* | xps100-* | clipper-* | orion-* \
--	      | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
--	      | sparc64-* | mips64-* | mipsel-* \
--	      | mips64el-* | mips64orion-* | mips64orionel-*  \
--	      | mipstx39-* | mipstx39el-* \
--	      | f301-*)
-+	580-* \
-+	| a29k-* \
-+	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-+	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-+	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
-+	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-+	| avr-* \
-+	| bs2000-* \
-+	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
-+	| clipper-* | craynv-* | cydra-* \
-+	| d10v-* | d30v-* | dlx-* \
-+	| elxsi-* \
-+	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
-+	| h8300-* | h8500-* \
-+	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-+	| i*86-* | i860-* | i960-* | ia64-* \
-+	| ip2k-* | iq2000-* \
-+	| m32r-* | m32rle-* \
-+	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-+	| m88110-* | m88k-* | maxq-* | mcore-* \
-+	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-+	| mips16-* \
-+	| mips64-* | mips64el-* \
-+	| mips64vr-* | mips64vrel-* \
-+	| mips64orion-* | mips64orionel-* \
-+	| mips64vr4100-* | mips64vr4100el-* \
-+	| mips64vr4300-* | mips64vr4300el-* \
-+	| mips64vr5000-* | mips64vr5000el-* \
-+	| mipsisa32-* | mipsisa32el-* \
-+	| mipsisa32r2-* | mipsisa32r2el-* \
-+	| mipsisa64-* | mipsisa64el-* \
-+	| mipsisa64r2-* | mipsisa64r2el-* \
-+	| mipsisa64sb1-* | mipsisa64sb1el-* \
-+	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
-+	| mipstx39-* | mipstx39el-* \
-+	| mmix-* \
-+	| msp430-* \
-+	| none-* | np1-* | ns16k-* | ns32k-* \
-+	| orion-* \
-+	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-+	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
-+	| pyramid-* \
-+	| romp-* | rs6000-* \
-+	| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
-+	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-+	| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
-+	| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
-+	| tahoe-* | thumb-* \
-+	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
-+	| tron-* \
-+	| v850-* | v850e-* | vax-* \
-+	| we32k-* \
-+	| x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
-+	| xstormy16-* | xtensa-* \
-+	| ymp-* \
-+	| z8k-*)
- 		;;
- 	# Recognize the various machine names and aliases which stand
- 	# for a CPU type and a company and sometimes even an OS.
-+	386bsd)
-+		basic_machine=i386-unknown
-+		os=-bsd
-+		;;
- 	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- 		basic_machine=m68000-att
- 		;;
- 	3b*)
- 		basic_machine=we32k-att
- 		;;
-+	a29khif)
-+		basic_machine=a29k-amd
-+		os=-udi
-+		;;
-+    	abacus)
-+		basic_machine=abacus-unknown
-+		;;
-+	adobe68k)
-+		basic_machine=m68010-adobe
-+		os=-scout
-+		;;
- 	alliant | fx80)
- 		basic_machine=fx80-alliant
- 		;;
-@@ -202,25 +381,35 @@
- 		basic_machine=a29k-none
- 		os=-bsd
- 		;;
-+	amd64)
-+		basic_machine=x86_64-pc
-+		;;
-+	amd64-*)
-+		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-+		;;
- 	amdahl)
- 		basic_machine=580-amdahl
- 		os=-sysv
- 		;;
- 	amiga | amiga-*)
--		basic_machine=m68k-cbm
-+		basic_machine=m68k-unknown
- 		;;
- 	amigaos | amigados)
--		basic_machine=m68k-cbm
-+		basic_machine=m68k-unknown
- 		os=-amigaos
- 		;;
- 	amigaunix | amix)
--		basic_machine=m68k-cbm
-+		basic_machine=m68k-unknown
- 		os=-sysv4
- 		;;
- 	apollo68)
- 		basic_machine=m68k-apollo
- 		os=-sysv
- 		;;
-+	apollo68bsd)
-+		basic_machine=m68k-apollo
-+		os=-bsd
-+		;;
- 	aux)
- 		basic_machine=m68k-apple
- 		os=-aux
-@@ -229,6 +418,10 @@
- 		basic_machine=ns32k-sequent
- 		os=-dynix
- 		;;
-+	c90)
-+		basic_machine=c90-cray
-+		os=-unicos
-+		;;
- 	convex-c1)
- 		basic_machine=c1-convex
- 		os=-bsd
-@@ -249,27 +442,45 @@
- 		basic_machine=c38-convex
- 		os=-bsd
- 		;;
--	cray | ymp)
--		basic_machine=ymp-cray
--		os=-unicos
--		;;
--	cray2)
--		basic_machine=cray2-cray
-+	cray | j90)
-+		basic_machine=j90-cray
- 		os=-unicos
- 		;;
--	[ctj]90-cray)
--		basic_machine=c90-cray
--		os=-unicos
-+	craynv)
-+		basic_machine=craynv-cray
-+		os=-unicosmp
-+		;;
-+	cr16c)
-+		basic_machine=cr16c-unknown
-+		os=-elf
- 		;;
- 	crds | unos)
- 		basic_machine=m68k-crds
- 		;;
-+	crisv32 | crisv32-* | etraxfs*)
-+		basic_machine=crisv32-axis
-+		;;
-+	cris | cris-* | etrax*)
-+		basic_machine=cris-axis
-+		;;
-+	crx)
-+		basic_machine=crx-unknown
-+		os=-elf
-+		;;
- 	da30 | da30-*)
- 		basic_machine=m68k-da30
- 		;;
- 	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- 		basic_machine=mips-dec
- 		;;
-+	decsystem10* | dec10*)
-+		basic_machine=pdp10-dec
-+		os=-tops10
-+		;;
-+	decsystem20* | dec20*)
-+		basic_machine=pdp10-dec
-+		os=-tops20
-+		;;
- 	delta | 3300 | motorola-3300 | motorola-delta \
- 	      | 3300-motorola | delta-motorola)
- 		basic_machine=m68k-motorola
-@@ -278,6 +489,10 @@
- 		basic_machine=m88k-motorola
- 		os=-sysv3
- 		;;
-+	djgpp)
-+		basic_machine=i586-pc
-+		os=-msdosdjgpp
-+		;;
- 	dpx20 | dpx20-*)
- 		basic_machine=rs6000-bull
- 		os=-bosx
-@@ -297,6 +512,10 @@
- 	encore | umax | mmax)
- 		basic_machine=ns32k-encore
- 		;;
-+	es1800 | OSE68k | ose68k | ose | OSE)
-+		basic_machine=m68k-ericsson
-+		os=-ose
-+		;;
- 	fx2800)
- 		basic_machine=i860-alliant
- 		;;
-@@ -307,6 +526,10 @@
- 		basic_machine=tron-gmicro
- 		os=-sysv
- 		;;
-+	go32)
-+		basic_machine=i386-pc
-+		os=-go32
-+		;;
- 	h3050r* | hiux*)
- 		basic_machine=hppa1.1-hitachi
- 		os=-hiuxwe2
-@@ -315,6 +538,14 @@
- 		basic_machine=h8300-hitachi
- 		os=-hms
- 		;;
-+	h8300xray)
-+		basic_machine=h8300-hitachi
-+		os=-xray
-+		;;
-+	h8500hms)
-+		basic_machine=h8500-hitachi
-+		os=-hms
-+		;;
- 	harris)
- 		basic_machine=m88k-harris
- 		os=-sysv3
-@@ -330,13 +561,30 @@
- 		basic_machine=m68k-hp
- 		os=-hpux
- 		;;
-+	hp3k9[0-9][0-9] | hp9[0-9][0-9])
-+		basic_machine=hppa1.0-hp
-+		;;
- 	hp9k2[0-9][0-9] | hp9k31[0-9])
- 		basic_machine=m68000-hp
- 		;;
- 	hp9k3[2-9][0-9])
- 		basic_machine=m68k-hp
- 		;;
--	hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
-+	hp9k6[0-9][0-9] | hp6[0-9][0-9])
-+		basic_machine=hppa1.0-hp
-+		;;
-+	hp9k7[0-79][0-9] | hp7[0-79][0-9])
-+		basic_machine=hppa1.1-hp
-+		;;
-+	hp9k78[0-9] | hp78[0-9])
-+		# FIXME: really hppa2.0-hp
-+		basic_machine=hppa1.1-hp
-+		;;
-+	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
-+		# FIXME: really hppa2.0-hp
-+		basic_machine=hppa1.1-hp
-+		;;
-+	hp9k8[0-9][13679] | hp8[0-9][13679])
- 		basic_machine=hppa1.1-hp
- 		;;
- 	hp9k8[0-9][0-9] | hp8[0-9][0-9])
-@@ -345,27 +593,42 @@
- 	hppa-next)
- 		os=-nextstep3
- 		;;
-+	hppaosf)
-+		basic_machine=hppa1.1-hp
-+		os=-osf
-+		;;
-+	hppro)
-+		basic_machine=hppa1.1-hp
-+		os=-proelf
-+		;;
- 	i370-ibm* | ibm*)
- 		basic_machine=i370-ibm
--		os=-mvs
- 		;;
- # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
--	i[3456]86v32)
-+	i*86v32)
- 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- 		os=-sysv32
- 		;;
--	i[3456]86v4*)
-+	i*86v4*)
- 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- 		os=-sysv4
- 		;;
--	i[3456]86v)
-+	i*86v)
- 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- 		os=-sysv
- 		;;
--	i[3456]86sol2)
-+	i*86sol2)
- 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- 		os=-solaris2
- 		;;
-+	i386mach)
-+		basic_machine=i386-mach
-+		os=-mach
-+		;;
-+	i386-vsta | vsta)
-+		basic_machine=i386-unknown
-+		os=-vsta
-+		;;
- 	iris | iris4d)
- 		basic_machine=mips-sgi
- 		case $os in
-@@ -391,16 +654,16 @@
- 		basic_machine=ns32k-utek
- 		os=-sysv
- 		;;
-+	mingw32)
-+		basic_machine=i386-pc
-+		os=-mingw32
-+		;;
- 	miniframe)
- 		basic_machine=m68000-convergent
- 		;;
--	mipsel*-linux*)
--		basic_machine=mipsel-unknown
--		os=-linux-gnu
--		;;
--	mips*-linux*)
--		basic_machine=mips-unknown
--		os=-linux-gnu
-+	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
-+		basic_machine=m68k-atari
-+		os=-mint
- 		;;
- 	mips3*-*)
- 		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
-@@ -408,10 +671,34 @@
- 	mips3*)
- 		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- 		;;
-+	monitor)
-+		basic_machine=m68k-rom68k
-+		os=-coff
-+		;;
-+	morphos)
-+		basic_machine=powerpc-unknown
-+		os=-morphos
-+		;;
-+	msdos)
-+		basic_machine=i386-pc
-+		os=-msdos
-+		;;
-+	mvs)
-+		basic_machine=i370-ibm
-+		os=-mvs
-+		;;
- 	ncr3000)
- 		basic_machine=i486-ncr
- 		os=-sysv4
- 		;;
-+	netbsd386)
-+		basic_machine=i386-unknown
-+		os=-netbsd
-+		;;
-+	netwinder)
-+		basic_machine=armv4l-rebel
-+		os=-linux
-+		;;
- 	news | news700 | news800 | news900)
- 		basic_machine=m68k-sony
- 		os=-newsos
-@@ -424,6 +711,10 @@
- 		basic_machine=mips-sony
- 		os=-newsos
- 		;;
-+	necv70)
-+		basic_machine=v70-nec
-+		os=-sysv
-+		;;
- 	next | m*-next )
- 		basic_machine=m68k-next
- 		case $os in
-@@ -449,9 +740,40 @@
- 		basic_machine=i960-intel
- 		os=-nindy
- 		;;
-+	mon960)
-+		basic_machine=i960-intel
-+		os=-mon960
-+		;;
-+	nonstopux)
-+		basic_machine=mips-compaq
-+		os=-nonstopux
-+		;;
- 	np1)
- 		basic_machine=np1-gould
- 		;;
-+	nsr-tandem)
-+		basic_machine=nsr-tandem
-+		;;
-+	op50n-* | op60c-*)
-+		basic_machine=hppa1.1-oki
-+		os=-proelf
-+		;;
-+	or32 | or32-*)
-+		basic_machine=or32-unknown
-+		os=-coff
-+		;;
-+	os400)
-+		basic_machine=powerpc-ibm
-+		os=-os400
-+		;;
-+	OSE68000 | ose68000)
-+		basic_machine=m68000-ericsson
-+		os=-ose
-+		;;
-+	os68k)
-+		basic_machine=m68k-none
-+		os=-os68k
-+		;;
- 	pa-hitachi)
- 		basic_machine=hppa1.1-hitachi
- 		os=-hiuxwe2
-@@ -466,53 +788,95 @@
- 	pbb)
- 		basic_machine=m68k-tti
- 		;;
--        pc532 | pc532-*)
-+	pc532 | pc532-*)
- 		basic_machine=ns32k-pc532
- 		;;
--	pentium | p5)
--		basic_machine=i586-intel
-+	pentium | p5 | k5 | k6 | nexgen | viac3)
-+		basic_machine=i586-pc
-+		;;
-+	pentiumpro | p6 | 6x86 | athlon | athlon_*)
-+		basic_machine=i686-pc
- 		;;
--	pentiumpro | p6)
--		basic_machine=i686-intel
-+	pentiumii | pentium2 | pentiumiii | pentium3)
-+		basic_machine=i686-pc
- 		;;
--	pentium-* | p5-*)
-+	pentium4)
-+		basic_machine=i786-pc
-+		;;
-+	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- 		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- 		;;
--	pentiumpro-* | p6-*)
-+	pentiumpro-* | p6-* | 6x86-* | athlon-*)
-+		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-+		;;
-+	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- 		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- 		;;
--	k5)
--		# We don't have specific support for AMD's K5 yet, so just call it a Pentium
--		basic_machine=i586-amd
--		;;
--	nexen)
--		# We don't have specific support for Nexgen yet, so just call it a Pentium
--		basic_machine=i586-nexgen
-+	pentium4-*)
-+		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- 		;;
- 	pn)
- 		basic_machine=pn-gould
- 		;;
--	power)	basic_machine=rs6000-ibm
-+	power)	basic_machine=power-ibm
- 		;;
- 	ppc)	basic_machine=powerpc-unknown
--	        ;;
-+		;;
- 	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- 		;;
- 	ppcle | powerpclittle | ppc-le | powerpc-little)
- 		basic_machine=powerpcle-unknown
--	        ;;
-+		;;
- 	ppcle-* | powerpclittle-*)
- 		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- 		;;
-+	ppc64)	basic_machine=powerpc64-unknown
-+		;;
-+	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
-+		;;
-+	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
-+		basic_machine=powerpc64le-unknown
-+		;;
-+	ppc64le-* | powerpc64little-*)
-+		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
-+		;;
- 	ps2)
- 		basic_machine=i386-ibm
- 		;;
-+	pw32)
-+		basic_machine=i586-unknown
-+		os=-pw32
-+		;;
-+	rom68k)
-+		basic_machine=m68k-rom68k
-+		os=-coff
-+		;;
- 	rm[46]00)
- 		basic_machine=mips-siemens
- 		;;
- 	rtpc | rtpc-*)
- 		basic_machine=romp-ibm
- 		;;
-+	s390 | s390-*)
-+		basic_machine=s390-ibm
-+		;;
-+	s390x | s390x-*)
-+		basic_machine=s390x-ibm
-+		;;
-+	sa29200)
-+		basic_machine=a29k-amd
-+		os=-udi
-+		;;
-+	sb1)
-+		basic_machine=mipsisa64sb1-unknown
-+		;;
-+	sb1el)
-+		basic_machine=mipsisa64sb1el-unknown
-+		;;
-+	sei)
-+		basic_machine=mips-sei
-+		os=-seiux
-+		;;
- 	sequent)
- 		basic_machine=i386-sequent
- 		;;
-@@ -520,6 +884,13 @@
- 		basic_machine=sh-hitachi
- 		os=-hms
- 		;;
-+	sh64)
-+		basic_machine=sh64-unknown
-+		;;
-+	sparclite-wrs | simso-wrs)
-+		basic_machine=sparclite-wrs
-+		os=-vxworks
-+		;;
- 	sps7)
- 		basic_machine=m68k-bull
- 		os=-sysv2
-@@ -527,6 +898,13 @@
- 	spur)
- 		basic_machine=spur-unknown
- 		;;
-+	st2000)
-+		basic_machine=m68k-tandem
-+		;;
-+	stratus)
-+		basic_machine=i860-stratus
-+		os=-sysv4
-+		;;
- 	sun2)
- 		basic_machine=m68000-sun
- 		;;
-@@ -567,19 +945,51 @@
- 	sun386 | sun386i | roadrunner)
- 		basic_machine=i386-sun
- 		;;
-+	sv1)
-+		basic_machine=sv1-cray
-+		os=-unicos
-+		;;
- 	symmetry)
- 		basic_machine=i386-sequent
- 		os=-dynix
- 		;;
-+	t3e)
-+		basic_machine=alphaev5-cray
-+		os=-unicos
-+		;;
-+	t90)
-+		basic_machine=t90-cray
-+		os=-unicos
-+		;;
-+	tic54x | c54x*)
-+		basic_machine=tic54x-unknown
-+		os=-coff
-+		;;
-+	tic55x | c55x*)
-+		basic_machine=tic55x-unknown
-+		os=-coff
-+		;;
-+	tic6x | c6x*)
-+		basic_machine=tic6x-unknown
-+		os=-coff
-+		;;
- 	tx39)
- 		basic_machine=mipstx39-unknown
- 		;;
- 	tx39el)
- 		basic_machine=mipstx39el-unknown
- 		;;
-+	toad1)
-+		basic_machine=pdp10-xkl
-+		os=-tops20
-+		;;
- 	tower | tower-32)
- 		basic_machine=m68k-ncr
- 		;;
-+	tpf)
-+		basic_machine=s390x-ibm
-+		os=-tpf
-+		;;
- 	udi29k)
- 		basic_machine=a29k-amd
- 		os=-udi
-@@ -588,6 +998,10 @@
- 		basic_machine=a29k-nyu
- 		os=-sym1
- 		;;
-+	v810 | necv810)
-+		basic_machine=v810-nec
-+		os=-none
-+		;;
- 	vaxv)
- 		basic_machine=vax-dec
- 		os=-sysv
-@@ -597,8 +1011,8 @@
- 		os=-vms
- 		;;
- 	vpp*|vx|vx-*)
--               basic_machine=f301-fujitsu
--               ;;
-+		basic_machine=f301-fujitsu
-+		;;
- 	vxworks960)
- 		basic_machine=i960-wrs
- 		os=-vxworks
-@@ -611,13 +1025,29 @@
- 		basic_machine=a29k-wrs
- 		os=-vxworks
- 		;;
--	xmp)
--		basic_machine=xmp-cray
--		os=-unicos
-+	w65*)
-+		basic_machine=w65-wdc
-+		os=-none
-+		;;
-+	w89k-*)
-+		basic_machine=hppa1.1-winbond
-+		os=-proelf
-+		;;
-+	xbox)
-+		basic_machine=i686-pc
-+		os=-mingw32
- 		;;
--        xps | xps100)
-+	xps | xps100)
- 		basic_machine=xps100-honeywell
- 		;;
-+	ymp)
-+		basic_machine=ymp-cray
-+		os=-unicos
-+		;;
-+	z8k-*-coff)
-+		basic_machine=z8k-unknown
-+		os=-sim
-+		;;
- 	none)
- 		basic_machine=none-none
- 		os=-none
-@@ -625,32 +1055,47 @@
- 
- # Here we handle the default manufacturer of certain CPU types.  It is in
- # some cases the only manufacturer, in others, it is the most popular.
--	mips)
--		if [ x$os = x-linux-gnu ]; then
--			basic_machine=mips-unknown
--		else
--			basic_machine=mips-mips
--		fi
-+	w89k)
-+		basic_machine=hppa1.1-winbond
-+		;;
-+	op50n)
-+		basic_machine=hppa1.1-oki
-+		;;
-+	op60c)
-+		basic_machine=hppa1.1-oki
- 		;;
- 	romp)
- 		basic_machine=romp-ibm
- 		;;
-+	mmix)
-+		basic_machine=mmix-knuth
-+		;;
- 	rs6000)
- 		basic_machine=rs6000-ibm
- 		;;
- 	vax)
- 		basic_machine=vax-dec
- 		;;
-+	pdp10)
-+		# there are many clones, so DEC is not a safe bet
-+		basic_machine=pdp10-unknown
-+		;;
- 	pdp11)
- 		basic_machine=pdp11-dec
- 		;;
- 	we32k)
- 		basic_machine=we32k-att
- 		;;
--	sparc)
-+	sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
-+		basic_machine=sh-unknown
-+		;;
-+	sh64)
-+		basic_machine=sh64-unknown
-+		;;
-+	sparc | sparcv8 | sparcv9 | sparcv9b)
- 		basic_machine=sparc-sun
- 		;;
--        cydra)
-+	cydra)
- 		basic_machine=cydra-cydrome
- 		;;
- 	orion)
-@@ -659,6 +1104,15 @@
- 	orion105)
- 		basic_machine=clipper-highlevel
- 		;;
-+	mac | mpw | mac-mpw)
-+		basic_machine=m68k-apple
-+		;;
-+	pmac | pmac-mpw)
-+		basic_machine=powerpc-apple
-+		;;
-+	*-unknown)
-+		# Make sure to match an already-canonicalized machine name.
-+		;;
- 	*)
- 		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- 		exit 1
-@@ -711,14 +1165,46 @@
- 	      | -aos* \
- 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
--	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
--	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
-+	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
-+	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-+	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
--	      | -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
--	      | -mingw32* | -linux-gnu* | -uxpv*)
-+	      | -chorusos* | -chorusrdb* \
-+	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-+	      | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
-+	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-+	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-+	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-+	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-+	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-+	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
- 	# Remember, each alternative MUST END IN *, to match a version number.
- 		;;
-+	-qnx*)
-+		case $basic_machine in
-+		    x86-* | i*86-*)
-+			;;
-+		    *)
-+			os=-nto$os
-+			;;
-+		esac
-+		;;
-+	-nto-qnx*)
-+		;;
-+	-nto*)
-+		os=`echo $os | sed -e 's|nto|nto-qnx|'`
-+		;;
-+	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-+	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
-+	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
-+		;;
-+	-mac*)
-+		os=`echo $os | sed -e 's|mac|macos|'`
-+		;;
-+	-linux-dietlibc)
-+		os=-linux-dietlibc
-+		;;
- 	-linux*)
- 		os=`echo $os | sed -e 's|linux|linux-gnu|'`
- 		;;
-@@ -728,6 +1214,15 @@
- 	-sunos6*)
- 		os=`echo $os | sed -e 's|sunos6|solaris3|'`
- 		;;
-+	-opened*)
-+		os=-openedition
-+		;;
-+        -os400*)
-+		os=-os400
-+		;;
-+	-wince*)
-+		os=-wince
-+		;;
- 	-osfrose*)
- 		os=-osfrose
- 		;;
-@@ -743,11 +1238,26 @@
- 	-acis*)
- 		os=-aos
- 		;;
-+	-atheos*)
-+		os=-atheos
-+		;;
-+	-syllable*)
-+		os=-syllable
-+		;;
-+	-386bsd)
-+		os=-bsd
-+		;;
- 	-ctix* | -uts*)
- 		os=-sysv
- 		;;
-+	-nova*)
-+		os=-rtmk-nova
-+		;;
- 	-ns2 )
--	        os=-nextstep2
-+		os=-nextstep2
-+		;;
-+	-nsk*)
-+		os=-nsk
- 		;;
- 	# Preserve the version number of sinix5.
- 	-sinix5.*)
-@@ -756,6 +1266,9 @@
- 	-sinix*)
- 		os=-sysv4
- 		;;
-+        -tpf*)
-+		os=-tpf
-+		;;
- 	-triton*)
- 		os=-sysv3
- 		;;
-@@ -774,9 +1287,27 @@
- 	# This must come after -sysvr4.
- 	-sysv*)
- 		;;
-+	-ose*)
-+		os=-ose
-+		;;
-+	-es1800*)
-+		os=-ose
-+		;;
- 	-xenix)
- 		os=-xenix
- 		;;
-+	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-+		os=-mint
-+		;;
-+	-aros*)
-+		os=-aros
-+		;;
-+	-kaos*)
-+		os=-kaos
-+		;;
-+	-zvmoe)
-+		os=-zvmoe
-+		;;
- 	-none)
- 		;;
- 	*)
-@@ -802,10 +1333,20 @@
- 	*-acorn)
- 		os=-riscix1.2
- 		;;
-+	arm*-rebel)
-+		os=-linux
-+		;;
- 	arm*-semi)
- 		os=-aout
- 		;;
--        pdp11-*)
-+    c4x-* | tic4x-*)
-+        os=-coff
-+        ;;
-+	# This must come before the *-dec entry.
-+	pdp10-*)
-+		os=-tops20
-+		;;
-+	pdp11-*)
- 		os=-none
- 		;;
- 	*-dec | vax-*)
-@@ -823,15 +1364,42 @@
- 		# default.
- 		# os=-sunos4
- 		;;
-+	m68*-cisco)
-+		os=-aout
-+		;;
-+	mips*-cisco)
-+		os=-elf
-+		;;
-+	mips*-*)
-+		os=-elf
-+		;;
-+	or32-*)
-+		os=-coff
-+		;;
- 	*-tti)	# must be before sparc entry or we get the wrong os.
- 		os=-sysv3
- 		;;
- 	sparc-* | *-sun)
- 		os=-sunos4.1.1
- 		;;
-+	*-be)
-+		os=-beos
-+		;;
- 	*-ibm)
- 		os=-aix
- 		;;
-+    	*-knuth)
-+		os=-mmixware
-+		;;
-+	*-wec)
-+		os=-proelf
-+		;;
-+	*-winbond)
-+		os=-proelf
-+		;;
-+	*-oki)
-+		os=-proelf
-+		;;
- 	*-hp)
- 		os=-hpux
- 		;;
-@@ -874,27 +1442,39 @@
- 	*-next)
- 		os=-nextstep3
- 		;;
--        *-gould)
-+	*-gould)
- 		os=-sysv
- 		;;
--        *-highlevel)
-+	*-highlevel)
- 		os=-bsd
- 		;;
- 	*-encore)
- 		os=-bsd
- 		;;
--        *-sgi)
-+	*-sgi)
- 		os=-irix
- 		;;
--        *-siemens)
-+	*-siemens)
- 		os=-sysv4
- 		;;
- 	*-masscomp)
- 		os=-rtu
- 		;;
--	f301-fujitsu)
-+	f30[01]-fujitsu | f700-fujitsu)
- 		os=-uxpv
- 		;;
-+	*-rom68k)
-+		os=-coff
-+		;;
-+	*-*bug)
-+		os=-coff
-+		;;
-+	*-apple)
-+		os=-macos
-+		;;
-+	*-atari*)
-+		os=-mint
-+		;;
- 	*)
- 		os=-none
- 		;;
-@@ -916,9 +1496,15 @@
- 			-aix*)
- 				vendor=ibm
- 				;;
-+			-beos*)
-+				vendor=be
-+				;;
- 			-hpux*)
- 				vendor=hp
- 				;;
-+			-mpeix*)
-+				vendor=hp
-+				;;
- 			-hiux*)
- 				vendor=hitachi
- 				;;
-@@ -934,21 +1520,47 @@
- 			-genix*)
- 				vendor=ns
- 				;;
--			-mvs*)
-+			-mvs* | -opened*)
-+				vendor=ibm
-+				;;
-+			-os400*)
- 				vendor=ibm
- 				;;
- 			-ptx*)
- 				vendor=sequent
- 				;;
--			-vxsim* | -vxworks*)
-+			-tpf*)
-+				vendor=ibm
-+				;;
-+			-vxsim* | -vxworks* | -windiss*)
- 				vendor=wrs
- 				;;
- 			-aux*)
- 				vendor=apple
- 				;;
-+			-hms*)
-+				vendor=hitachi
-+				;;
-+			-mpw* | -macos*)
-+				vendor=apple
-+				;;
-+			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-+				vendor=atari
-+				;;
-+			-vos*)
-+				vendor=stratus
-+				;;
- 		esac
- 		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- 		;;
- esac
- 
- echo $basic_machine$os
-+exit 0
-+
-+# Local variables:
-+# eval: (add-hook 'write-file-hooks 'time-stamp)
-+# time-stamp-start: "timestamp='"
-+# time-stamp-format: "%:y-%02m-%02d"
-+# time-stamp-end: "'"
-+# End:

+ 5 - 4
package/libnids/Makefile

@@ -17,13 +17,14 @@ include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,LIBNIDS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-CONFIGURE_STYLE=	gnu
+CONFIGURE_STYLE:=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_gethostbyname=no
 XAKE_FLAGS+=		install_prefix="${WRKINST}"
-BUILD_STYLE=		auto
-INSTALL_STYLE=		auto
+BUILD_STYLE:=		auto
+INSTALL_STYLE:=		auto
 
 post-install:
 	${INSTALL_DIR} ${IDIR_LIBNIDS}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libnids.so.* ${IDIR_LIBNIDS}/usr/lib/
+	${CP} ${WRKINST}/usr/lib/libnids.so* ${IDIR_LIBNIDS}/usr/lib/
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 3 - 2
package/libol/Makefile

@@ -14,11 +14,12 @@ PKG_SITES:=		http://www.balabit.com/downloads/files/libol/0.3/
 
 include ${TOPDIR}/mk/package.mk
 
-$(eval $(call PKG_template,LIBOL,libol,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,LIBOL,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_gethostbyname=no
 BUILD_STYLE=		auto
-INSTALL_STYLE=		confprog auto
+INSTALL_STYLE=		auto
 
 post-install:
 	${INSTALL_DIR} ${IDIR_LIBOL}/usr/lib

+ 1 - 0
package/libosip2/Makefile

@@ -18,6 +18,7 @@ include ${TOPDIR}/mk/package.mk
 $(eval $(call PKG_template,LIBOSIP2,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_nis_add=no
 CONFIGURE_ARGS+=	--disable-trace \
 			--enable-pthread \
 			--enable-semaphore \

+ 11 - 11
package/linux-atm/Config.in

@@ -1,20 +1,20 @@
-config ADK_PACKAGE_LINUX_ATM
-	prompt "linux-atm......................... ATM Library/Utilities for Linux"
+config ADK_COMPILE_LINUX_ATM
+	bool
+	default n
+	help
+
+config ADK_PACKAGE_LIBATM
+	prompt "libatm............................. ATM Library for Linux"
 	tristate
 	default n
 	help
 	  ATM Library for linux
 	  
-	  http://ftp.debian.org/debian/pool/main/l/linux-atm/
-
 config ADK_PACKAGE_BR2684CTL
-	prompt   "br2684ctl....................... RFC2684 bridging utility"
+	prompt "br2684ctl......................... RFC2684 bridging utility"
 	tristate
 	default n
-	depends ADK_PACKAGE_LINUX_ATM
+	select ADK_PACKAGE_LIBATM
 	help
-	  Utility for setting up ATM RFC2684 bridging mode
-	  Useful for PPPoE
-	  
-	  http://ftp.debian.org/debian/pool/main/l/linux-atm/
-
+	  Utility for setting up ATM RFC2684 bridging mode.
+	  (Useful for PPPoE)

+ 13 - 12
package/linux-atm/Makefile

@@ -8,26 +8,27 @@ PKG_VERSION:=		2.5.0
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		0b45a0e801fac7093ce4b0cadf419965
 PKG_DESCR:=		ATM library for linux
-PKG_SECTION:=		net
+PKG_SECTION:=		libs
 PKG_URL:=		http://linux-atm.sourceforge.net
 PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=linux-atm/}
 
+PKG_DESCR_1:=		br2684ctl
+PKG_DEPENDS_1:=		libatm
+PKG_SECTION_1:=		net
+
 include ${TOPDIR}/mk/package.mk
 
-$(eval $(call PKG_template,LINUX_ATM,linux-atm,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,BR2684CTL,br2684ctl,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,LIBATM,libatm,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,BR2684CTL,br2684ctl,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS_1},${PKG_DESCR_1},${PKG_SECTION}))
 
-CONFIGURE_STYLE=	gnu
-BUILD_STYLE=		auto
-INSTALL_STYLE=		auto
+CONFIGURE_STYLE:=	gnu
+BUILD_STYLE:=		auto
+INSTALL_STYLE:=		auto
 
 post-install:
-	${INSTALL_DIR} ${IDIR_LINUX_ATM}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libatm.so.1 ${IDIR_LINUX_ATM}/usr/lib
+	${INSTALL_DIR} ${IDIR_LIBATM}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libatm.so.1 ${IDIR_LIBATM}/usr/lib
 	${INSTALL_DIR} ${IDIR_BR2684CTL}/usr/sbin
-	${CP} ${WRKINST}/usr/sbin/br2684ctl ${IDIR_BR2684CTL}/usr/sbin/
-	${INSTALL_DIR} ${IDIR_BR2684CTL}/etc/hotplug.d/net
-	${INSTALL_DATA} ./files/br2684.hotplug \
-		${IDIR_BR2684CTL}/etc/hotplug.d/net/30-br2684
+	${CP} ${WRKINST}/usr/sbin/br2684ctl ${IDIR_BR2684CTL}/usr/sbin
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 1 - 1
package/lrzsz/Makefile

@@ -17,10 +17,10 @@ include ${TOPDIR}/mk/package.mk
 $(eval $(call PKG_template,LRZSZ,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE:=	gnu
+CONFIGURE_ARGS+=	ac_cv_lib_nsl_gethostbyname=no
 CONFIGURE_ARGS+=	--without-libiconv-prefix \
 			--without-libintl-prefix
 BUILD_STYLE:=		auto
-#INSTALL_STYLE:=		auto
 
 do-install:
 	${INSTALL_DIR} ${IDIR_LRZSZ}/usr/bin

+ 4 - 2
package/macchanger/Makefile

@@ -17,10 +17,12 @@ include ${TOPDIR}/mk/package.mk
 $(eval $(call PKG_template,MACCHANGER,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE:=	gnu
+BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
 
 post-install:
-	${INSTALL_DIR} ${IDIR_MACCHANGER}
-	${CP} ${WRKINST}/* ${IDIR_MACCHANGER}/
+	${INSTALL_DIR} ${IDIR_MACCHANGER}/usr/bin ${IDIR_MACCHANGER}/usr/share
+	${INSTALL_BIN} ${WRKINST}/usr/bin/macchanger ${IDIR_MACCHANGER}/usr/bin
+	${CP} ${WRKINST}/usr/share/macchanger ${IDIR_MACCHANGER}/usr/share
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 10 - 15
package/miredo/Makefile

@@ -20,6 +20,7 @@ $(eval $(call PKG_template,MIREDO,miredo,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEP
 $(eval $(call PKG_template,MIREDO_SERVER,miredo-server,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE:=	gnu
+CONFIGURE_ENV+=		ac_cv_file__proc_self_maps=yes
 CONFIGURE_ARGS+=	--disable-chroot \
 			--without-Judy \
 			--enable-teredo-client \
@@ -33,25 +34,19 @@ XAKE_FLAGS+		 CXXLINK="\$${LINK}" \
 ifeq ($(ADK_TARGET_LIB_UCLIBCXX),y)
 TCXXFLAGS+=		-fno-builtin -fno-rtti -nostdinc++
 TLDFLAGS+=		-nodefaultlibs
-CONFIGURE_ENV+=		LIBS="-luClibc++ -lc -lm" \
-			ac_cv_file__proc_self_maps=yes
-else
-CONFIGURE_ENV+=		LIBS="-lc -lm" \
-			ac_cv_file__proc_self_maps=yes
+CONFIGURE_ENV+=		LIBS="-luClibc++ -lc -lm"
 endif
 
 post-install:
-	${INSTALL_DIR} ${IDIR_MIREDO}/etc/init.d
-	${INSTALL_DIR} ${IDIR_MIREDO}/etc/miredo
-	${INSTALL_DIR} ${IDIR_MIREDO}/usr/sbin
-	${INSTALL_DATA} ${WRKINST}/etc/miredo/miredo.conf ${IDIR_MIREDO}/etc/miredo/miredo.conf
-	${INSTALL_BIN} ./files/miredo.init \
-		${IDIR_MIREDO}/etc/init.d/miredo
+	${INSTALL_DIR} ${IDIR_MIREDO}/etc/miredo ${IDIR_MIREDO}/usr/sbin
+	${INSTALL_DIR} ${IDIR_MIREDO}/usr/lib
+	${INSTALL_DATA} ${WRKINST}/etc/miredo/miredo.conf \
+		${IDIR_MIREDO}/etc/miredo
+	${CP} ${WRKINST}/usr/lib/libtun*.so* ${IDIR_MIREDO}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libteredo.so* ${IDIR_MIREDO}/usr/lib
 	${INSTALL_BIN} ${WRKINST}/usr/sbin/miredo ${IDIR_MIREDO}/usr/sbin/
 	${INSTALL_DIR} ${IDIR_MIREDO_SERVER}/usr/sbin
-	${INSTALL_DIR} ${IDIR_MIREDO_SERVER}/etc/init.d
-	${INSTALL_BIN} ./files/miredo-server.init \
-		${IDIR_MIREDO_SERVER}/etc/init.d/miredo-server
-	${INSTALL_BIN} ${WRKINST}/usr/sbin/miredo-server ${IDIR_MIREDO_SERVER}/usr/sbin/
+	${INSTALL_BIN} ${WRKINST}/usr/sbin/miredo-server \
+		${IDIR_MIREDO_SERVER}/usr/sbin/
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 1 - 1
package/miredo/files/miredo-server.postinst

@@ -1,3 +1,3 @@
 #!/bin/sh
 . $IPKG_INSTROOT/etc/functions.sh
-add_rcconf miredo-server miredo-server NO
+add_rcconf miredo_server miredo_server NO

+ 1 - 0
package/monit/Makefile

@@ -28,6 +28,7 @@ CONFIGURE_ARGS+=	--without-ssl
 endif
 
 CONFIGURE_STYLE:=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_inet_addr=no
 BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
 

+ 1 - 0
package/mpd/Makefile

@@ -46,6 +46,7 @@ BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
 XAKE_FLAGS+=		MPD_CFLAGS='-D_GNU_SOURCE'
 
+CONFIGURE_ENV+=		ac_cv_lib_nsl_gethostbyname=no
 CONFIGURE_ARGS+=	\
 			--enable-alsa \
 			--disable-mod \

+ 0 - 1
package/mplayer/Config.in

@@ -12,7 +12,6 @@ config ADK_PACKAGE_MPLAYER
 	select ADK_PACKAGE_ZLIB
 	select ADK_PACKAGE_LIBNCURSES
 	select ADK_PACKAGE_LIBFAAD2
-	depends on ADK_LINUX_X86_ALIX1C
 	help
           http://www.mplayerhq.hu
 

+ 10 - 5
package/mrd6/Makefile

@@ -29,14 +29,19 @@ TCXXFLAGS+=		-fno-builtin -nostdinc++ -nodefaultlibs -I${STAGING_DIR}/usr/includ
 TLDFLAGS+=		-nodefaultlibs -luClibc++ -shared
 endif
 
+XAKE_FLAGS+=		EXTRA_FLAGS="${TCFLAGS}" 
 BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
-XAKE_FLAGS+=		EXTRA_FLAGS="${TCFLAGS}" 
 
 post-install:
-	${INSTALL_DIR} ${WRKINST}/etc
-	${INSTALL_DATA} ./files/${PKG_NAME}.conf ${WRKINST}/etc
-	${INSTALL_DIR} ${IDIR_MRD6}/usr/sbin
-	${CP} ${WRKINST}/* ${IDIR_MRD6}/
+	${INSTALL_DIR} ${IDIR_MRD6}/usr/sbin ${IDIR_MRD6}/etc
+	${INSTALL_DIR} ${IDIR_MRD6}/usr/lib/mrd6 ${IDIR_MRD6}/bin
+	${INSTALL_DATA} ./files/${PKG_NAME}.conf ${IDIR_MRD6}/etc
+	${INSTALL_BIN} ${WRKINST}/usr/local/sbin/mrd \
+		 ${IDIR_MRD6}/usr/sbin
+	${INSTALL_BIN} ${WRKINST}/usr/local/bin/mrd6sh \
+		 ${IDIR_MRD6}/usr/bin
+	${INSTALL_BIN} ${WRKINST}/usr/local/lib/mrd6/bgp.so \
+		 ${IDIR_MRD6}/usr/lib/mrd6/
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 4 - 2
package/mysql/Makefile

@@ -20,6 +20,8 @@ $(eval $(call PKG_template,LIBMYSQLCLIENT,libmysqlclient,${PKG_VERSION}-${PKG_RE
 CONFIGURE_STYLE:=	gnu
 CONFIGURE_ENV+=		OPTIMIZE_CFLAGS="${TARGET_CFLAGS}" \
 			OPTIMIZE_CXXFLAGS="${TARGET_CFLAGS}" \
+			ac_cv_lib_nsl_gethostbyname_r=no \
+			ac_cv_lib_nsl_yp_get_default_domain=no \
 			ac_cv_sys_restartable_syscalls=yes \
 			mysql_cv_sys_os=Linux \
 			mysql_cv_compress=yes \
@@ -79,8 +81,8 @@ do-build:
 		all install
 
 do-install:
-	${INSTALL_DIR} ${IDIR_LIBMYSQLCLIENT}/usr/lib/mysql
+	${INSTALL_DIR} ${IDIR_LIBMYSQLCLIENT}/usr/lib
 	${CP} ${WRKINST}/usr/lib/mysql/libmysqlclient.so* \
-	    ${IDIR_LIBMYSQLCLIENT}/usr/lib/mysql
+	    ${IDIR_LIBMYSQLCLIENT}/usr/lib
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 5 - 8
package/net-snmp/Makefile

@@ -105,23 +105,20 @@ CONFIGURE_ARGS+=	--with-endianness=little \
 			--without-libwrap \
 			--without-rpm \
 			--without-zlib
-ifneq ($(ADK_IPV6),y)
-CONFIGURE_ARGS+=	--disable-ipv6
-endif
+
 BUILD_STYLE:=		auto
-INSTALL_STYLE:=		confprog auto
+INSTALL_STYLE:=		auto
 FAKE_FLAGS+=		INSTALL_PREFIX="${WRKINST}"
 
 post-install:
 	${INSTALL_DIR} ${IDIR_LIBNETSNMP}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libnetsnmp.so* ${IDIR_LIBNETSNMP}/usr/lib/
+	${CP} ${WRKINST}/usr/lib/libnetsnmp*.so* ${IDIR_LIBNETSNMP}/usr/lib/
 	${INSTALL_DIR} ${IDIR_SNMPD}/etc/snmp
-	${INSTALL_DIR} ${IDIR_SNMPD}/etc/init.d
 	${INSTALL_DIR} ${IDIR_SNMPD}/usr/sbin
 	${INSTALL_DATA} ./files/snmpd.conf ${IDIR_SNMPD}/etc/snmp/snmpd.conf
-	${INSTALL_BIN} ./files/snmpd.init ${IDIR_SNMPD}/etc/init.d/snmpd
 	${INSTALL_BIN} ${WRKINST}/usr/sbin/snmpd ${IDIR_SNMPD}/usr/sbin/snmpd
 	${INSTALL_DIR} ${IDIR_SNMP_UTILS}/usr/bin
-	${CP} ${WRKINST}/usr/bin/snmp{get,set,status,test,trap,walk} ${IDIR_SNMP_UTILS}/usr/bin/
+	${CP} ${WRKINST}/usr/bin/snmp{get,set,status,test,trap,walk} \
+		${IDIR_SNMP_UTILS}/usr/bin/
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 2 - 1
package/nfs-utils/Makefile

@@ -52,7 +52,8 @@ CONFIGURE_ARGS+=	--disable-nfsv4 \
 			--disable-gss
 endif
 
-CONFIGURE_ENV+=		knfsd_cv_bsd_signals=no
+CONFIGURE_ENV+=		knfsd_cv_bsd_signals=no \
+			ac_cv_lib_nsl_gethostbyname=no
 CONFIGURE_ARGS+=	--without-tcp-wrappers \
 			--disable-uuid
 BUILD_STYLE=		auto

+ 2 - 0
package/nut/Makefile

@@ -101,8 +101,10 @@ endif
 
 post-install:
 	${INSTALL_DIR} ${IDIR_NUT}/usr/{s,}bin ${IDIR_NUT}/etc
+	${INSTALL_DIR} ${IDIR_NUT}/usr/lib
 	${INSTALL_BIN} ${WRKINST}/usr/sbin/ups{d,mon,sched} \
 		${IDIR_NUT}/usr/sbin/
+	${CP} ${WRKINST}/usr/lib/lib*.so* ${IDIR_NUT}/usr/lib 
 	${INSTALL_BIN} ${WRKINST}/usr/bin/{${INSTALL_DRIVERS}} \
 		${IDIR_NUT}/usr/bin/
 	${INSTALL_BIN} ${WRKINST}/usr/bin/ups{c,cmd,drvctl,log,rw} \

+ 1 - 1
package/obexftp/Makefile

@@ -32,6 +32,6 @@ INSTALL_STYLE:=		auto
 post-install:
 	${INSTALL_DIR} ${IDIR_OBEXFTP}/usr/bin ${IDIR_OBEXFTP}/usr/lib
 	${CP} ${WRKINST}/usr/bin/* ${IDIR_OBEXFTP}/usr/bin/
-	${CP} ${WRKINST}/usr/lib/* ${IDIR_OBEXFTP}/usr/lib/
+	${CP} ${WRKINST}/usr/lib/*.so* ${IDIR_OBEXFTP}/usr/lib/
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 11 - 0
package/obexftp/patches/patch-configure

@@ -0,0 +1,11 @@
+--- obexftp-0.23.orig/configure	2009-02-17 19:28:02.000000000 +0100
++++ obexftp-0.23/configure	2009-06-04 21:52:11.000000000 +0200
+@@ -22551,7 +22551,7 @@ fi
+ if test "$ac_bluetooth_enabled" = yes; then
+ 
+         case $host in
+-        *-*-linux*)
++        *)
+ 
+ 
+ pkg_failed=no

+ 1 - 0
package/openobex/Makefile

@@ -17,6 +17,7 @@ include ${TOPDIR}/mk/package.mk
 $(eval $(call PKG_template,OPENOBEX,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE:=	gnu
+BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
 
 post-install:

+ 10 - 1
package/openobex/patches/patch-configure

@@ -1,6 +1,15 @@
 $Id: update-patches 24 2008-08-31 14:56:13Z wbx $
 --- openobex-1.5.orig/configure	2009-02-08 19:32:25.000000000 +0100
-+++ openobex-1.5/configure	2009-05-30 14:32:22.786455567 +0200
++++ openobex-1.5/configure	2009-06-04 21:43:21.000000000 +0200
+@@ -10943,7 +10943,7 @@ $as_echo "no" >&6; }
+ fi
+ 
+ 	case $host in
+-	*-*-linux*)
++	*)
+ 
+ 
+ pkg_failed=no
 @@ -11270,60 +11270,6 @@ fi
  
  

+ 2 - 1
package/openssh/Makefile

@@ -41,7 +41,8 @@ CONFIGURE_ARGS+=	--without-kerberos5
 endif
 CONFIGURE_STYLE:=	gnu
 CONFIGURE_ENV+=		LD='${TARGET_CC}' \
-			ac_cv_func_setlogin=no
+			ac_cv_func_setlogin=no \
+			ac_cv_lib_nsl_yp_match=no
 CONFIGURE_ARGS+=	--disable-strip \
 			--disable-etc-default-login \
 			--disable-lastlog \

+ 1 - 1
package/openswan/Makefile

@@ -16,7 +16,7 @@ PKG_SITES:=		http://www.openswan.org/download/ \
 
 include ${TOPDIR}/mk/package.mk
 
-$(eval $(call PKG_template,OPENSWAN,openswan,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,OPENSWAN,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 FLAGS:=			${TCFLAGS} ${TCPPFLAGS} ${TLDFLAGS}
 

+ 0 - 34
package/ppp/patches/100-debian_close_dev_ppp.patch

@@ -1,34 +0,0 @@
-From: Simon Peter <dn.tlp@gmx.net>
-Subject: Bug#306261: pppd does not properly close /dev/ppp on persist
-
-When using the kernel PPPoE driver, pppd never
-closes /dev/ppp when the link has come down.
-
-It opens superfluous fds to the device each time it re-opens the
-connection, with the unclosed ones falsely reported always ready for
-data by select().
-
-This makes pppd eat up 100% CPU time after the first persist because of
-the always instantly returning select() on the unclosed fds.
-
-The problem also occurs with the upstream version, but does not occur
-when a pty/tty device is used for the ppp connection.
-
-
-diff -u -r ppp-2.4.3/pppd/sys-linux.c ppp-2.4.3/pppd/sys-linux.c
---- ppp-2.4.3/pppd/sys-linux.c	2005-04-29 20:08:37.000000000 +0200
-+++ ppp-2.4.3/pppd/sys-linux.c	2005-04-29 20:07:03.000000000 +0200
-@@ -455,6 +455,13 @@
-     if (new_style_driver) {
- 	int flags;
- 
-+        /* if a ppp_fd is already open, close it first */
-+        if(ppp_fd > 0) {
-+          close(ppp_fd);
-+          remove_fd(ppp_fd);
-+          ppp_fd = -1;
-+        }
-+
- 	/* Open an instance of /dev/ppp and connect the channel to it */
- 	if (ioctl(fd, PPPIOCGCHAN, &chindex) == -1) {
- 	    error("Couldn't get channel number: %m");

+ 0 - 86
package/ppp/patches/203-no_strip.patch

@@ -1,86 +0,0 @@
-diff -Nur ppp-2.4.4.orig/chat/Makefile.linux ppp-2.4.4/chat/Makefile.linux
---- ppp-2.4.4.orig/chat/Makefile.linux	2006-06-04 07:07:46.000000000 +0200
-+++ ppp-2.4.4/chat/Makefile.linux	2006-12-04 14:17:39.000000000 +0100
-@@ -25,7 +25,7 @@
- 
- install: chat
- 	mkdir -p $(BINDIR) $(MANDIR)
--	$(INSTALL) -s -c chat $(BINDIR)
-+	$(INSTALL) -c chat $(BINDIR)
- 	$(INSTALL) -c -m 644 chat.8 $(MANDIR)
- 
- clean:
-diff -Nur ppp-2.4.4.orig/pppd/Makefile.linux ppp-2.4.4/pppd/Makefile.linux
---- ppp-2.4.4.orig/pppd/Makefile.linux	2006-06-04 07:07:46.000000000 +0200
-+++ ppp-2.4.4/pppd/Makefile.linux	2006-12-04 14:17:39.000000000 +0100
-@@ -99,7 +99,7 @@
- CFLAGS	+= -DUSE_SRP -DOPENSSL -I/usr/local/ssl/include
- LIBS	+= -lsrp -L/usr/local/ssl/lib -lcrypto
- TARGETS	+= srp-entry
--EXTRAINSTALL = $(INSTALL) -s -c -m 555 srp-entry $(BINDIR)/srp-entry
-+EXTRAINSTALL = $(INSTALL) -c -m 555 srp-entry $(BINDIR)/srp-entry
- MANPAGES += srp-entry.8
- EXTRACLEAN += srp-entry.o
- NEEDDES=y
-@@ -200,7 +200,7 @@
- install: pppd
- 	mkdir -p $(BINDIR) $(MANDIR)
- 	$(EXTRAINSTALL)
--	$(INSTALL) -s -c -m 555 pppd $(BINDIR)/pppd
-+	$(INSTALL) -c -m 555 pppd $(BINDIR)/pppd
- 	if chgrp pppusers $(BINDIR)/pppd 2>/dev/null; then \
- 	  chmod o-rx,u+s $(BINDIR)/pppd; fi
- 	$(INSTALL) -c -m 444 pppd.8 $(MANDIR)
-diff -Nur ppp-2.4.4.orig/pppd/plugins/radius/Makefile.linux ppp-2.4.4/pppd/plugins/radius/Makefile.linux
---- ppp-2.4.4.orig/pppd/plugins/radius/Makefile.linux	2006-06-04 07:04:14.000000000 +0200
-+++ ppp-2.4.4/pppd/plugins/radius/Makefile.linux	2006-12-04 14:17:39.000000000 +0100
-@@ -36,9 +36,9 @@
- 
- install: all
- 	$(INSTALL) -d -m 755 $(LIBDIR)
--	$(INSTALL) -s -c -m 755 radius.so $(LIBDIR)
--	$(INSTALL) -s -c -m 755 radattr.so $(LIBDIR)
--	$(INSTALL) -s -c -m 755 radrealms.so $(LIBDIR)
-+	$(INSTALL) -c -m 755 radius.so $(LIBDIR)
-+	$(INSTALL) -c -m 755 radattr.so $(LIBDIR)
-+	$(INSTALL) -c -m 755 radrealms.so $(LIBDIR)
- 	$(INSTALL) -c -m 444 pppd-radius.8 $(MANDIR)
- 	$(INSTALL) -c -m 444 pppd-radattr.8 $(MANDIR)
- 
-diff -Nur ppp-2.4.4.orig/pppd/plugins/rp-pppoe/Makefile.linux ppp-2.4.4/pppd/plugins/rp-pppoe/Makefile.linux
---- ppp-2.4.4.orig/pppd/plugins/rp-pppoe/Makefile.linux	2006-06-04 07:07:46.000000000 +0200
-+++ ppp-2.4.4/pppd/plugins/rp-pppoe/Makefile.linux	2006-12-04 14:17:39.000000000 +0100
-@@ -39,9 +39,9 @@
- 
- install: all
- 	$(INSTALL) -d -m 755 $(LIBDIR)
--	$(INSTALL) -s -c -m 4550 rp-pppoe.so $(LIBDIR)
-+	$(INSTALL) -c -m 4550 rp-pppoe.so $(LIBDIR)
- 	$(INSTALL) -d -m 755 $(BINDIR)
--	$(INSTALL) -s -c -m 555 pppoe-discovery $(BINDIR)
-+	$(INSTALL) -c -m 555 pppoe-discovery $(BINDIR)
- 
- clean:
- 	rm -f *.o *.so
-diff -Nur ppp-2.4.4.orig/pppdump/Makefile.linux ppp-2.4.4/pppdump/Makefile.linux
---- ppp-2.4.4.orig/pppdump/Makefile.linux	2006-06-04 07:04:14.000000000 +0200
-+++ ppp-2.4.4/pppdump/Makefile.linux	2006-12-04 14:17:39.000000000 +0100
-@@ -17,5 +17,5 @@
- 
- install:
- 	mkdir -p $(BINDIR) $(MANDIR)
--	$(INSTALL) -s -c pppdump $(BINDIR)
-+	$(INSTALL) -c pppdump $(BINDIR)
- 	$(INSTALL) -c -m 444 pppdump.8 $(MANDIR)
-diff -Nur ppp-2.4.4.orig/pppstats/Makefile.linux ppp-2.4.4/pppstats/Makefile.linux
---- ppp-2.4.4.orig/pppstats/Makefile.linux	2006-06-04 07:07:46.000000000 +0200
-+++ ppp-2.4.4/pppstats/Makefile.linux	2006-12-04 14:17:39.000000000 +0100
-@@ -22,7 +22,7 @@
- 
- install: pppstats
- 	-mkdir -p $(MANDIR)
--	$(INSTALL) -s -c pppstats $(BINDIR)
-+	$(INSTALL) -c pppstats $(BINDIR)
- 	$(INSTALL) -c -m 444 pppstats.8 $(MANDIR)
- 
- pppstats: $(PPPSTATSRCS)

+ 0 - 26
package/ppp/patches/204-opt_flags.patch

@@ -1,26 +0,0 @@
-diff -ruN ppp-2.4.3-orig/pppd/plugins/radius/Makefile.linux ppp-2.4.3-3/pppd/plugins/radius/Makefile.linux
---- ppp-2.4.3-orig/pppd/plugins/radius/Makefile.linux	2004-11-14 08:02:31.000000000 +0100
-+++ ppp-2.4.3-3/pppd/plugins/radius/Makefile.linux	2004-12-05 17:43:17.000000000 +0100
-@@ -12,7 +12,8 @@
- INSTALL	= install
- 
- PLUGIN=radius.so radattr.so radrealms.so
--CFLAGS=-I. -I../.. -I../../../include -O2 -fPIC -DRC_LOG_FACILITY=LOG_DAEMON
-+COPTS = -O2
-+CFLAGS=-I. -I../.. -I../../../include $(COPTS) -fPIC -DRC_LOG_FACILITY=LOG_DAEMON
- 
- # Uncomment the next line to include support for Microsoft's
- # MS-CHAP authentication protocol.
-diff -ruN ppp-2.4.3-orig/pppdump/Makefile.linux ppp-2.4.3-3/pppdump/Makefile.linux
---- ppp-2.4.3-orig/pppdump/Makefile.linux	2004-10-31 02:36:52.000000000 +0200
-+++ ppp-2.4.3-3/pppdump/Makefile.linux	2004-12-05 17:50:34.000000000 +0100
-@@ -2,7 +2,8 @@
- BINDIR = $(DESTDIR)/sbin
- MANDIR = $(DESTDIR)/share/man/man8
- 
--CFLAGS= -O -I../include/net
-+COPTS = -O
-+CFLAGS= $(COPTS) -I../include/net
- OBJS = pppdump.o bsd-comp.o deflate.o zlib.o
- 
- INSTALL= install

+ 0 - 24
package/ppp/patches/320-use_target_ar.patch

@@ -1,24 +0,0 @@
-$Id$
-
---- ppp-2.4.3/pppd/plugins/radius/Makefile.linux.orig	Sun Jun 18 23:45:43 2006
-+++ ppp-2.4.3/pppd/plugins/radius/Makefile.linux	Sun Jun 18 23:46:01 2006
-@@ -55,7 +55,7 @@ radrealms.so: radrealms.o
- CLIENTOBJS = avpair.o buildreq.o config.o dict.o ip_util.o \
- 	clientid.o sendserver.o lock.o util.o md5.o
- libradiusclient.a: $(CLIENTOBJS)
--	$(AR) rv $@ $?
-+	$(TARGET_AR) rcsv $@ $?
- 
- clean:
- 	rm -f *.o *.so *.a
---- ppp-2.4.3/pppd/plugins/rp-pppoe/Makefile.linux.orig	Sun Jun 18 23:45:44 2006
-+++ ppp-2.4.3/pppd/plugins/rp-pppoe/Makefile.linux	Sun Jun 18 23:46:09 2006
-@@ -50,7 +50,7 @@ plugin.o: plugin.c
- 	$(CC) '-DRP_VERSION="$(VERSION)"' $(CFLAGS) -I../../..  -c -o plugin.o -fPIC plugin.c
- 
- libplugin.a: discovery.o if.o common.o debug.o
--	$(AR) -rc $@ $^
-+	$(TARGET_AR) -rcs $@ $^
- 
- discovery.o: discovery.c
- 	$(CC) $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o discovery.o -fPIC discovery.c

+ 11 - 0
package/ppp/patches/patch-chat_Makefile_linux

@@ -0,0 +1,11 @@
+--- ppp-2.4.4.orig/chat/Makefile.linux	2006-06-04 07:07:46.000000000 +0200
++++ ppp-2.4.4/chat/Makefile.linux	2009-06-05 19:12:00.000000000 +0200
+@@ -25,7 +25,7 @@ chat.o:	chat.c
+ 
+ install: chat
+ 	mkdir -p $(BINDIR) $(MANDIR)
+-	$(INSTALL) -s -c chat $(BINDIR)
++	$(INSTALL) -c chat $(BINDIR)
+ 	$(INSTALL) -c -m 644 chat.8 $(MANDIR)
+ 
+ clean:

+ 2 - 7
package/ppp/patches/010-use_target_for_configuration.patch → package/ppp/patches/patch-configure

@@ -1,10 +1,5 @@
-$Id$
-
-	Use values exported from $(TOPDIR)/rules.mk for determining
-	the target system instead of the host configuration, d'oh
-
---- ppp-2.4.3/configure.orig	Sat Nov  6 11:36:32 2004
-+++ ppp-2.4.3/configure	Sun Jun 18 23:40:46 2006
+--- ppp-2.4.4.orig/configure	2005-07-09 02:23:05.000000000 +0200
++++ ppp-2.4.4/configure	2009-06-05 19:12:00.000000000 +0200
 @@ -8,9 +8,9 @@ SYSCONF=/etc
  #  if [ -d /NextApps ]; then
  #    system="NeXTStep"

+ 63 - 0
package/ppp/patches/patch-include_linux_ppp-comp_h

@@ -0,0 +1,63 @@
+--- ppp-2.4.4.orig/include/linux/ppp-comp.h	2002-12-06 10:49:15.000000000 +0100
++++ ppp-2.4.4/include/linux/ppp-comp.h	2009-06-05 19:12:00.000000000 +0200
+@@ -36,7 +36,7 @@
+  */
+ 
+ /*
+- *  ==FILEVERSION 20020319==
++ *  ==FILEVERSION 20020715==
+  *
+  *  NOTE TO MAINTAINERS:
+  *     If you modify this file at all, please set the above date.
+@@ -86,7 +86,7 @@ struct compressor {
+ 
+ 	/* Compress a packet */
+ 	int     (*compress) (void *state, unsigned char *rptr,
+-			      unsigned char *obuf, int isize, int osize);
++			     unsigned char *obuf, int isize, int osize);
+ 
+ 	/* Return compression statistics */
+ 	void	(*comp_stat) (void *state, struct compstat *stats);
+@@ -107,7 +107,7 @@ struct compressor {
+ 
+ 	/* Decompress a packet. */
+ 	int	(*decompress) (void *state, unsigned char *ibuf, int isize,
+-				unsigned char *obuf, int osize);
++			       unsigned char *obuf, int osize);
+ 
+ 	/* Update state for an incompressible packet received */
+ 	void	(*incomp) (void *state, unsigned char *ibuf, int icnt);
+@@ -288,6 +288,33 @@ struct compressor {
+ 	    opts |= MPPE_OPT_UNKNOWN;		\
+     } while (/* CONSTCOND */ 0)
+ 
++/* MPPE/MPPC definitions by J.D.*/
++#define MPPE_STATELESS          MPPE_H_BIT	/* configuration bit H */
++#define MPPE_40BIT              MPPE_L_BIT	/* configuration bit L */
++#define MPPE_56BIT              MPPE_M_BIT	/* configuration bit M */
++#define MPPE_128BIT             MPPE_S_BIT	/* configuration bit S */
++#define MPPE_MPPC               MPPE_C_BIT	/* configuration bit C */
++
++/*
++ * Definitions for Stac LZS.
++ */
++
++#define CI_LZS			17	/* config option for Stac LZS */
++#define CILEN_LZS		5	/* length of config option */
++
++#define LZS_OVHD		4	/* max. LZS overhead */
++#define LZS_HIST_LEN		2048	/* LZS history size */
++#define LZS_MAX_CCOUNT		0x0FFF	/* max. coherency counter value */
++
++#define LZS_MODE_NONE		0
++#define LZS_MODE_LCB		1
++#define LZS_MODE_CRC		2
++#define LZS_MODE_SEQ		3
++#define LZS_MODE_EXT		4
++
++#define LZS_EXT_BIT_FLUSHED	0x80	/* bit A */
++#define LZS_EXT_BIT_COMP	0x20	/* bit C */
++
+ /*
+  * Definitions for other, as yet unsupported, compression methods.
+  */

+ 36 - 0
package/ppp/patches/patch-include_net_ppp-comp_h

@@ -0,0 +1,36 @@
+--- ppp-2.4.4.orig/include/net/ppp-comp.h	2002-12-06 10:49:15.000000000 +0100
++++ ppp-2.4.4/include/net/ppp-comp.h	2009-06-05 19:12:00.000000000 +0200
+@@ -255,6 +255,33 @@ struct compressor {
+ 	    opts |= MPPE_OPT_UNKNOWN;		\
+     } while (/* CONSTCOND */ 0)
+ 
++/* MPPE/MPPC definitions by J.D.*/
++#define MPPE_STATELESS          MPPE_H_BIT	/* configuration bit H */
++#define MPPE_40BIT              MPPE_L_BIT	/* configuration bit L */
++#define MPPE_56BIT              MPPE_M_BIT	/* configuration bit M */
++#define MPPE_128BIT             MPPE_S_BIT	/* configuration bit S */
++#define MPPE_MPPC               MPPE_C_BIT	/* configuration bit C */
++
++/*
++ * Definitions for Stac LZS.
++ */
++
++#define CI_LZS			17	/* config option for Stac LZS */
++#define CILEN_LZS		5	/* length of config option */
++
++#define LZS_OVHD		4	/* max. LZS overhead */
++#define LZS_HIST_LEN		2048	/* LZS history size */
++#define LZS_MAX_CCOUNT		0x0FFF	/* max. coherency counter value */
++
++#define LZS_MODE_NONE		0
++#define LZS_MODE_LCB		1
++#define LZS_MODE_CRC		2
++#define LZS_MODE_SEQ		3
++#define LZS_MODE_EXT		4
++
++#define LZS_EXT_BIT_FLUSHED	0x80	/* bit A */
++#define LZS_EXT_BIT_COMP	0x20	/* bit C */
++
+ /*
+  * Definitions for other, as yet unsupported, compression methods.
+  */

+ 23 - 6
package/ppp/patches/200-makefile.patch → package/ppp/patches/patch-pppd_Makefile_linux

@@ -1,7 +1,6 @@
-diff -Nur ppp-2.4.4.orig/pppd/Makefile.linux ppp-2.4.4/pppd/Makefile.linux
 --- ppp-2.4.4.orig/pppd/Makefile.linux	2006-06-04 07:07:46.000000000 +0200
-+++ ppp-2.4.4/pppd/Makefile.linux	2007-10-04 08:53:26.000000000 +0200
-@@ -48,7 +48,7 @@
++++ ppp-2.4.4/pppd/Makefile.linux	2009-06-05 19:12:00.000000000 +0200
+@@ -48,7 +48,7 @@ MPPE=y
  # Uncomment the next line to include support for PPP packet filtering.
  # This requires that the libpcap library and headers be installed
  # and that the kernel driver support PPP packet filtering.
@@ -10,7 +9,7 @@ diff -Nur ppp-2.4.4.orig/pppd/Makefile.linux ppp-2.4.4/pppd/Makefile.linux
  
  # Uncomment the next line to enable multilink PPP (enabled by default)
  # Linux distributions: Please leave multilink ENABLED in your builds
-@@ -58,9 +58,9 @@
+@@ -58,9 +58,9 @@ HAVE_MULTILINK=y
  # Uncomment the next line to enable the TDB database (enabled by default.)
  # If you enable multilink, then TDB is automatically enabled also.
  # Linux distributions: Please leave TDB ENABLED in your builds.
@@ -22,7 +21,7 @@ diff -Nur ppp-2.4.4.orig/pppd/Makefile.linux ppp-2.4.4/pppd/Makefile.linux
  #USE_PAM=y
  #HAVE_INET6=y
  
-@@ -77,7 +77,7 @@
+@@ -77,7 +77,7 @@ MAXOCTETS=y
  
  INCLUDE_DIRS= -I../include
  
@@ -31,7 +30,16 @@ diff -Nur ppp-2.4.4.orig/pppd/Makefile.linux ppp-2.4.4/pppd/Makefile.linux
  
  CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS) '-DDESTDIR="@DESTDIR@"'
  
-@@ -117,10 +117,8 @@
+@@ -99,7 +99,7 @@ ifdef USE_SRP
+ CFLAGS	+= -DUSE_SRP -DOPENSSL -I/usr/local/ssl/include
+ LIBS	+= -lsrp -L/usr/local/ssl/lib -lcrypto
+ TARGETS	+= srp-entry
+-EXTRAINSTALL = $(INSTALL) -s -c -m 555 srp-entry $(BINDIR)/srp-entry
++EXTRAINSTALL = $(INSTALL) -c -m 555 srp-entry $(BINDIR)/srp-entry
+ MANPAGES += srp-entry.8
+ EXTRACLEAN += srp-entry.o
+ NEEDDES=y
+@@ -117,10 +117,8 @@ CFLAGS   += -DHAS_SHADOW
  #LIBS     += -lshadow $(LIBS)
  endif
  
@@ -42,3 +50,12 @@ diff -Nur ppp-2.4.4.orig/pppd/Makefile.linux ppp-2.4.4/pppd/Makefile.linux
  
  ifdef NEEDDES
  ifndef USE_CRYPT
+@@ -200,7 +198,7 @@ all: $(TARGETS)
+ install: pppd
+ 	mkdir -p $(BINDIR) $(MANDIR)
+ 	$(EXTRAINSTALL)
+-	$(INSTALL) -s -c -m 555 pppd $(BINDIR)/pppd
++	$(INSTALL) -c -m 555 pppd $(BINDIR)/pppd
+ 	if chgrp pppusers $(BINDIR)/pppd 2>/dev/null; then \
+ 	  chmod o-rx,u+s $(BINDIR)/pppd; fi
+ 	$(INSTALL) -c -m 444 pppd.8 $(MANDIR)

+ 85 - 310
package/ppp/patches/201-mppe_mppc_1.1.patch → package/ppp/patches/patch-pppd_ccp_c

@@ -1,107 +1,6 @@
-diff -ruN ppp-2.4.3.orig/include/linux/ppp-comp.h ppp-2.4.3/include/linux/ppp-comp.h
---- ppp-2.4.3.orig/include/linux/ppp-comp.h	2002-12-06 10:49:15.000000000 +0100
-+++ ppp-2.4.3/include/linux/ppp-comp.h	2004-11-21 13:54:09.000000000 +0100
-@@ -36,7 +36,7 @@
-  */
- 
- /*
-- *  ==FILEVERSION 20020319==
-+ *  ==FILEVERSION 20020715==
-  *
-  *  NOTE TO MAINTAINERS:
-  *     If you modify this file at all, please set the above date.
-@@ -86,7 +86,7 @@
- 
- 	/* Compress a packet */
- 	int     (*compress) (void *state, unsigned char *rptr,
--			      unsigned char *obuf, int isize, int osize);
-+			     unsigned char *obuf, int isize, int osize);
- 
- 	/* Return compression statistics */
- 	void	(*comp_stat) (void *state, struct compstat *stats);
-@@ -107,7 +107,7 @@
- 
- 	/* Decompress a packet. */
- 	int	(*decompress) (void *state, unsigned char *ibuf, int isize,
--				unsigned char *obuf, int osize);
-+			       unsigned char *obuf, int osize);
- 
- 	/* Update state for an incompressible packet received */
- 	void	(*incomp) (void *state, unsigned char *ibuf, int icnt);
-@@ -288,6 +288,33 @@
- 	    opts |= MPPE_OPT_UNKNOWN;		\
-     } while (/* CONSTCOND */ 0)
- 
-+/* MPPE/MPPC definitions by J.D.*/
-+#define MPPE_STATELESS          MPPE_H_BIT	/* configuration bit H */
-+#define MPPE_40BIT              MPPE_L_BIT	/* configuration bit L */
-+#define MPPE_56BIT              MPPE_M_BIT	/* configuration bit M */
-+#define MPPE_128BIT             MPPE_S_BIT	/* configuration bit S */
-+#define MPPE_MPPC               MPPE_C_BIT	/* configuration bit C */
-+
-+/*
-+ * Definitions for Stac LZS.
-+ */
-+
-+#define CI_LZS			17	/* config option for Stac LZS */
-+#define CILEN_LZS		5	/* length of config option */
-+
-+#define LZS_OVHD		4	/* max. LZS overhead */
-+#define LZS_HIST_LEN		2048	/* LZS history size */
-+#define LZS_MAX_CCOUNT		0x0FFF	/* max. coherency counter value */
-+
-+#define LZS_MODE_NONE		0
-+#define LZS_MODE_LCB		1
-+#define LZS_MODE_CRC		2
-+#define LZS_MODE_SEQ		3
-+#define LZS_MODE_EXT		4
-+
-+#define LZS_EXT_BIT_FLUSHED	0x80	/* bit A */
-+#define LZS_EXT_BIT_COMP	0x20	/* bit C */
-+
- /*
-  * Definitions for other, as yet unsupported, compression methods.
-  */
-diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
---- ppp-2.4.3.orig/include/net/ppp-comp.h	2002-12-06 10:49:15.000000000 +0100
-+++ ppp-2.4.3/include/net/ppp-comp.h	2004-11-21 13:54:09.000000000 +0100
-@@ -255,6 +255,33 @@
- 	    opts |= MPPE_OPT_UNKNOWN;		\
-     } while (/* CONSTCOND */ 0)
- 
-+/* MPPE/MPPC definitions by J.D.*/
-+#define MPPE_STATELESS          MPPE_H_BIT	/* configuration bit H */
-+#define MPPE_40BIT              MPPE_L_BIT	/* configuration bit L */
-+#define MPPE_56BIT              MPPE_M_BIT	/* configuration bit M */
-+#define MPPE_128BIT             MPPE_S_BIT	/* configuration bit S */
-+#define MPPE_MPPC               MPPE_C_BIT	/* configuration bit C */
-+
-+/*
-+ * Definitions for Stac LZS.
-+ */
-+
-+#define CI_LZS			17	/* config option for Stac LZS */
-+#define CILEN_LZS		5	/* length of config option */
-+
-+#define LZS_OVHD		4	/* max. LZS overhead */
-+#define LZS_HIST_LEN		2048	/* LZS history size */
-+#define LZS_MAX_CCOUNT		0x0FFF	/* max. coherency counter value */
-+
-+#define LZS_MODE_NONE		0
-+#define LZS_MODE_LCB		1
-+#define LZS_MODE_CRC		2
-+#define LZS_MODE_SEQ		3
-+#define LZS_MODE_EXT		4
-+
-+#define LZS_EXT_BIT_FLUSHED	0x80	/* bit A */
-+#define LZS_EXT_BIT_COMP	0x20	/* bit C */
-+
- /*
-  * Definitions for other, as yet unsupported, compression methods.
-  */
---- ppp-2.4.4/pppd/ccp.c.orig	2005-07-09 02:23:05.000000000 +0200
-+++ ppp-2.4.4/pppd/ccp.c	2006-07-21 23:34:12.121546000 +0200
-@@ -62,12 +62,10 @@
+--- ppp-2.4.4.orig/pppd/ccp.c	2005-07-09 02:23:05.000000000 +0200
++++ ppp-2.4.4/pppd/ccp.c	2009-06-05 19:12:00.000000000 +0200
+@@ -62,12 +62,10 @@ static int setdeflate __P((char **));
  static char bsd_value[8];
  static char deflate_value[8];
  
@@ -117,22 +16,11 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  
  static option_t ccp_option_list[] = {
      { "noccp", o_bool, &ccp_protent.enabled_flag,
-@@ -108,54 +106,36 @@
+@@ -108,54 +106,36 @@ static option_t ccp_option_list[] = {
        "don't allow Predictor-1", OPT_ALIAS | OPT_PRIOSUB | OPT_A2CLR,
        &ccp_allowoptions[0].predictor_1 },
  
-+    { "lzs", o_bool, &ccp_wantoptions[0].lzs,
-+      "request Stac LZS", 1, &ccp_allowoptions[0].lzs, OPT_PRIO },
-+    { "+lzs", o_bool, &ccp_wantoptions[0].lzs,
-+      "request Stac LZS", 1, &ccp_allowoptions[0].lzs, OPT_ALIAS | OPT_PRIO },
-+    { "nolzs", o_bool, &ccp_wantoptions[0].lzs,
-+      "don't allow Stac LZS", OPT_PRIOSUB | OPT_A2CLR,
-+      &ccp_allowoptions[0].lzs },
-+    { "-lzs", o_bool, &ccp_wantoptions[0].lzs,
-+      "don't allow Stac LZS", OPT_ALIAS | OPT_PRIOSUB | OPT_A2CLR,
-+      &ccp_allowoptions[0].lzs },
-+
- #ifdef MPPE
+-#ifdef MPPE
 -    /* MPPE options are symmetrical ... we only set wantoptions here */
 -    { "require-mppe", o_bool, &ccp_wantoptions[0].mppe,
 -      "require MPPE encryption",
@@ -174,12 +62,23 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 -      "don't allow MPPE 128-bit encryption",
 -      OPT_ALIAS | OPT_PRIOSUB | OPT_A2CLRB | MPPE_OPT_128,
 -      &ccp_wantoptions[0].mppe },
--
++    { "lzs", o_bool, &ccp_wantoptions[0].lzs,
++      "request Stac LZS", 1, &ccp_allowoptions[0].lzs, OPT_PRIO },
++    { "+lzs", o_bool, &ccp_wantoptions[0].lzs,
++      "request Stac LZS", 1, &ccp_allowoptions[0].lzs, OPT_ALIAS | OPT_PRIO },
++    { "nolzs", o_bool, &ccp_wantoptions[0].lzs,
++      "don't allow Stac LZS", OPT_PRIOSUB | OPT_A2CLR,
++      &ccp_allowoptions[0].lzs },
++    { "-lzs", o_bool, &ccp_wantoptions[0].lzs,
++      "don't allow Stac LZS", OPT_ALIAS | OPT_PRIOSUB | OPT_A2CLR,
++      &ccp_allowoptions[0].lzs },
+ 
 -    /* strange one; we always request stateless, but will we allow stateful? */
 -    { "mppe-stateful", o_bool, &refuse_mppe_stateful,
 -      "allow MPPE stateful mode", OPT_PRIO },
 -    { "nomppe-stateful", o_bool, &refuse_mppe_stateful,
 -      "disallow MPPE stateful mode", OPT_PRIO | 1 },
++#ifdef MPPE
 +    { "mppc", o_bool, &ccp_wantoptions[0].mppc,
 +      "request MPPC compression", 1, &ccp_allowoptions[0].mppc },
 +    { "+mppc", o_bool, &ccp_wantoptions[0].mppc,
@@ -201,7 +100,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  #endif /* MPPE */
  
      { NULL }
-@@ -241,7 +221,7 @@
+@@ -241,7 +221,7 @@ static fsm_callbacks ccp_callbacks = {
   */
  #define ANY_COMPRESS(opt)	((opt).deflate || (opt).bsd_compress \
  				 || (opt).predictor_1 || (opt).predictor_2 \
@@ -210,7 +109,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  
  /*
   * Local state (mainly for handling reset-reqs and reset-acks).
-@@ -344,6 +324,100 @@
+@@ -344,6 +324,100 @@ setdeflate(argv)
      return 1;
  }
  
@@ -311,7 +210,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  /*
   * ccp_init - initialize CCP.
   */
-@@ -378,6 +452,30 @@
+@@ -378,6 +452,30 @@ ccp_init(unit)
      ccp_allowoptions[0].bsd_bits = BSD_MAX_BITS;
  
      ccp_allowoptions[0].predictor_1 = 1;
@@ -342,7 +241,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  }
  
  /*
-@@ -455,11 +553,11 @@
+@@ -455,11 +553,11 @@ ccp_input(unit, p, len)
      if (oldstate == OPENED && p[0] == TERMREQ && f->state != OPENED) {
  	notice("Compression disabled by peer.");
  #ifdef MPPE
@@ -356,7 +255,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      }
  
      /*
-@@ -487,6 +585,15 @@
+@@ -487,6 +585,15 @@ ccp_extcode(f, code, id, p, len)
  	    break;
  	/* send a reset-ack, which the transmitter will see and
  	   reset its compression state. */
@@ -372,7 +271,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  	fsm_sdata(f, CCP_RESETACK, id, NULL, 0);
  	break;
  
-@@ -515,12 +622,11 @@
+@@ -515,12 +622,11 @@ ccp_protrej(unit)
      fsm_lowerdown(&ccp_fsm[unit]);
  
  #ifdef MPPE
@@ -387,7 +286,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  }
  
  /*
-@@ -537,7 +643,7 @@
+@@ -537,7 +643,7 @@ ccp_resetci(f)
      all_rejected[f->unit] = 0;
  
  #ifdef MPPE
@@ -396,7 +295,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  	ccp_options *ao = &ccp_allowoptions[f->unit];
  	int auth_mschap_bits = auth_done[f->unit];
  	int numbits;
-@@ -551,80 +657,109 @@
+@@ -551,80 +657,109 @@ ccp_resetci(f)
  	 * NB: If MPPE is required, all other compression opts are invalid.
  	 *     So, we return right away if we can't do it.
  	 */
@@ -441,36 +340,19 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 -	    error("MPPE required, but MS-CHAP[v2] auth not performed.");
 -	    lcp_close(f->unit, "MPPE required but not available");
 -	    return;
--	}
--
--	/* A plugin (eg radius) may not have obtained key material. */
--	if (!mppe_keys_set) {
--	    error("MPPE required, but keys are not available.  "
--		  "Possible plugin problem?");
--	    lcp_close(f->unit, "MPPE required but not available");
--	    return;
--	}
--
--	/* LM auth not supported for MPPE */
--	if (auth_done[f->unit] & (CHAP_MS_WITHPEER | CHAP_MS_PEER)) {
--	    /* This might be noise */
--	    if (go->mppe & MPPE_OPT_40) {
--		notice("Disabling 40-bit MPPE; MS-CHAP LM not supported");
--		go->mppe &= ~MPPE_OPT_40;
--		ccp_wantoptions[f->unit].mppe &= ~MPPE_OPT_40;
 +	    /* A plugin (eg radius) may not have obtained key material. */
 +	    if (!mppe_keys_set) {
 +		error("MPPE required, but keys are not available.  "
 +		      "Possible plugin problem?");
 +		lcp_close(f->unit, "MPPE required but not available");
 +		return;
- 	    }
++	    }
  	}
  
--	/* Last check: can we actually negotiate something? */
--	if (!(go->mppe & (MPPE_OPT_40 | MPPE_OPT_128))) {
--	    /* Could be misconfig, could be 40-bit disabled above. */
--	    error("MPPE required, but both 40-bit and 128-bit disabled.");
+-	/* A plugin (eg radius) may not have obtained key material. */
+-	if (!mppe_keys_set) {
+-	    error("MPPE required, but keys are not available.  "
+-		  "Possible plugin problem?");
 -	    lcp_close(f->unit, "MPPE required but not available");
 -	    return;
 +	/*
@@ -487,7 +369,16 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 +	    opt_buf[5] = MPPE_MPPC;
 +	    if (ccp_test(f->unit, opt_buf, CILEN_MPPE, 0) <= 0)
 +		go->mppc = 0;
-+	}
+ 	}
+-
+-	/* LM auth not supported for MPPE */
+-	if (auth_done[f->unit] & (CHAP_MS_WITHPEER | CHAP_MS_PEER)) {
+-	    /* This might be noise */
+-	    if (go->mppe & MPPE_OPT_40) {
+-		notice("Disabling 40-bit MPPE; MS-CHAP LM not supported");
+-		go->mppe &= ~MPPE_OPT_40;
+-		ccp_wantoptions[f->unit].mppe &= ~MPPE_OPT_40;
+-	    }
 +	if (go->mppe_40) {
 +	    opt_buf[0] = CI_MPPE;
 +	    opt_buf[1] = CILEN_MPPE;
@@ -497,7 +388,14 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 +	    opt_buf[5] = MPPE_40BIT;
 +	    if (ccp_test(f->unit, opt_buf, CILEN_MPPE + MPPE_MAX_KEY_LEN, 0) <= 0)
 +		go->mppe_40 = 0;
-+	}
+ 	}
+-
+-	/* Last check: can we actually negotiate something? */
+-	if (!(go->mppe & (MPPE_OPT_40 | MPPE_OPT_128))) {
+-	    /* Could be misconfig, could be 40-bit disabled above. */
+-	    error("MPPE required, but both 40-bit and 128-bit disabled.");
+-	    lcp_close(f->unit, "MPPE required but not available");
+-	    return;
 +	if (go->mppe_56) {
 +	    opt_buf[0] = CI_MPPE;
 +	    opt_buf[1] = CILEN_MPPE;
@@ -572,7 +470,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      if (go->bsd_compress) {
  	opt_buf[0] = CI_BSD_COMPRESS;
  	opt_buf[1] = CILEN_BSD_COMPRESS;
-@@ -679,7 +814,8 @@
+@@ -679,7 +814,8 @@ ccp_cilen(f)
  	+ (go->deflate? CILEN_DEFLATE: 0)
  	+ (go->predictor_1? CILEN_PREDICTOR_1: 0)
  	+ (go->predictor_2? CILEN_PREDICTOR_2: 0)
@@ -582,7 +480,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  }
  
  /*
-@@ -693,6 +829,8 @@
+@@ -693,6 +829,8 @@ ccp_addci(f, p, lenp)
  {
      int res;
      ccp_options *go = &ccp_gotoptions[f->unit];
@@ -591,7 +489,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      u_char *p0 = p;
  
      /*
-@@ -701,22 +839,43 @@
+@@ -701,22 +839,43 @@ ccp_addci(f, p, lenp)
       * in case it gets Acked.
       */
  #ifdef MPPE
@@ -644,7 +542,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      if (go->deflate) {
  	p[0] = go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT;
  	p[1] = CILEN_DEFLATE;
-@@ -802,7 +961,7 @@
+@@ -802,7 +961,7 @@ ccp_addci(f, p, lenp)
  
  /*
   * ccp_ackci - process a received configure-ack, and return
@@ -653,7 +551,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
   */
  static int
  ccp_ackci(f, p, len)
-@@ -811,24 +970,44 @@
+@@ -811,24 +970,44 @@ ccp_ackci(f, p, len)
      int len;
  {
      ccp_options *go = &ccp_gotoptions[f->unit];
@@ -707,7 +605,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      if (go->deflate) {
  	if (len < CILEN_DEFLATE
  	    || p[0] != (go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT)
-@@ -891,7 +1070,7 @@
+@@ -891,7 +1070,7 @@ ccp_ackci(f, p, len)
  
  /*
   * ccp_nakci - process received configure-nak.
@@ -716,7 +614,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
   */
  static int
  ccp_nakci(f, p, len, treat_as_reject)
-@@ -901,6 +1080,8 @@
+@@ -901,6 +1080,8 @@ ccp_nakci(f, p, len, treat_as_reject)
      int treat_as_reject;
  {
      ccp_options *go = &ccp_gotoptions[f->unit];
@@ -725,7 +623,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      ccp_options no;		/* options we've seen already */
      ccp_options try;		/* options to ask for next time */
  
-@@ -908,28 +1089,100 @@
+@@ -908,28 +1089,100 @@ ccp_nakci(f, p, len, treat_as_reject)
      try = *go;
  
  #ifdef MPPE
@@ -743,19 +641,18 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 -	} else if (((go->mppe | MPPE_OPT_STATEFUL) & try.mppe) != try.mppe) {
 -	    /* Peer must have set options we didn't request (suggest) */
 -	    try.mppe = 0;
--	}
 +    if ((go->mppe || go->mppc || (!wo->mppe && ao->mppe)) &&
 +	len >= CILEN_MPPE && p[0] == CI_MPPE && p[1] == CILEN_MPPE) {
- 
--	if (!try.mppe) {
--	    error("MPPE required but peer negotiation failed");
--	    lcp_close(f->unit, "MPPE required but peer negotiation failed");
++
 +	if (go->mppc) {
 +	    no.mppc = 1;
 +	    if (!(p[5] & MPPE_MPPC))
 +		try.mppc = 0;
-+	}
-+
+ 	}
+ 
+-	if (!try.mppe) {
+-	    error("MPPE required but peer negotiation failed");
+-	    lcp_close(f->unit, "MPPE required but peer negotiation failed");
 +	if (go->mppe)
 +	    no.mppe = 1;
 +	if (go->mppe_40)
@@ -772,7 +669,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 +		try.mppe_40 = 1;
 +	    else
 +		try.mppe_40 = (p[5] == 0) ? 1 : 0;
-+	}
+ 	}
 +	if (ao->mppe_56) {
 +	    if ((p[5] & MPPE_56BIT))
 +		try.mppe_56 = 1;
@@ -810,7 +707,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 +	    wo->mppc = wo->mppe = wo->mppe_stateless = wo->mppe_40 =
 +		wo->mppe_56 = wo->mppe_128 = 0;
 +	    lcp_close(f->unit, "Cannot negotiate MPPE key length");
- 	}
++	}
 +	if (try.mppe_40 && try.mppe_56 && try.mppe_128)
 +	    try.mppe_40 = try.mppe_56 = 0;
 +	else
@@ -844,7 +741,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      if (go->deflate && len >= CILEN_DEFLATE
  	&& p[0] == (go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT)
  	&& p[1] == CILEN_DEFLATE) {
-@@ -1002,14 +1255,50 @@
+@@ -1002,14 +1255,50 @@ ccp_rejci(f, p, len)
  	return -1;
  
  #ifdef MPPE
@@ -899,7 +796,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      if (go->deflate_correct && len >= CILEN_DEFLATE
  	&& p[0] == CI_DEFLATE && p[1] == CILEN_DEFLATE) {
  	if (p[2] != DEFLATE_MAKE_OPT(go->deflate_size)
-@@ -1073,14 +1362,15 @@
+@@ -1073,14 +1362,15 @@ ccp_reqci(f, p, lenp, dont_nak)
      int dont_nak;
  {
      int ret, newret, res;
@@ -919,7 +816,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  
      ret = CONFACK;
      retp = p0 = p;
-@@ -1103,106 +1393,307 @@
+@@ -1103,106 +1393,307 @@ ccp_reqci(f, p, lenp, dont_nak)
  	    switch (type) {
  #ifdef MPPE
  	    case CI_MPPE:
@@ -983,9 +880,13 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 +			    p[5] &= ~MPPE_MPPC;
 +			    newret = CONFNAK;
 +			}
-+		    }
-+		}
-+
+ 		    }
+ 		}
+ 
+-		/* Find out which of {S,L} are set. */
+-		if ((ho->mppe & MPPE_OPT_128)
+-		     && (ho->mppe & MPPE_OPT_40)) {
+-		    /* Both are set, negotiate the strongest. */
 +		if (ao->mppe)
 +		    ho->mppe = 1;
 +
@@ -1008,13 +909,9 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
 +			wo->mppe_stateless = 0;
 +			newret = CONFNAK;
 +			p[2] |= MPPE_STATELESS;
- 		    }
- 		}
- 
--		/* Find out which of {S,L} are set. */
--		if ((ho->mppe & MPPE_OPT_128)
--		     && (ho->mppe & MPPE_OPT_40)) {
--		    /* Both are set, negotiate the strongest. */
++		    }
++		}
++
 +		if ((p[5] & ~MPPE_MPPC) == (MPPE_40BIT|MPPE_56BIT|MPPE_128BIT)) {
  		    newret = CONFNAK;
 -		    if (ao->mppe & MPPE_OPT_128)
@@ -1300,7 +1197,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  	    case CI_DEFLATE:
  	    case CI_DEFLATE_DRAFT:
  		if (!ao->deflate || clen != CILEN_DEFLATE
-@@ -1344,12 +1835,6 @@
+@@ -1344,12 +1835,6 @@ ccp_reqci(f, p, lenp, dont_nak)
  	else
  	    *lenp = retp - p0;
      }
@@ -1313,7 +1210,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      return ret;
  }
  
-@@ -1371,24 +1856,35 @@
+@@ -1371,24 +1856,35 @@ method_name(opt, opt2)
  	char *p = result;
  	char *q = result + sizeof(result); /* 1 past result */
  
@@ -1365,7 +1262,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
      case CI_DEFLATE:
      case CI_DEFLATE_DRAFT:
  	if (opt2 != NULL && opt2->deflate_size != opt->deflate_size)
-@@ -1444,12 +1940,12 @@
+@@ -1444,12 +1940,12 @@ ccp_up(f)
      } else if (ANY_COMPRESS(*ho))
  	notice("%s transmit compression enabled", method_name(ho, NULL));
  #ifdef MPPE
@@ -1380,7 +1277,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  }
  
  /*
-@@ -1472,7 +1968,7 @@
+@@ -1472,7 +1968,7 @@ ccp_down(f)
  	    lcp_close(f->unit, "MPPE disabled");
  	}
      }
@@ -1389,7 +1286,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  }
  
  /*
-@@ -1532,24 +2028,28 @@
+@@ -1532,24 +2028,28 @@ ccp_printpkt(p, plen, printer, arg)
  #ifdef MPPE
  	    case CI_MPPE:
  		if (optlen >= CILEN_MPPE) {
@@ -1430,7 +1327,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  	    case CI_DEFLATE:
  	    case CI_DEFLATE_DRAFT:
  		if (optlen >= CILEN_DEFLATE) {
-@@ -1635,6 +2135,7 @@
+@@ -1635,6 +2135,7 @@ ccp_datainput(unit, pkt, len)
  	    error("Lost compression sync: disabling compression");
  	    ccp_close(unit, "Lost compression sync");
  #ifdef MPPE
@@ -1438,7 +1335,7 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  	    /*
  	     * If we were doing MPPE, we must also take the link down.
  	     */
-@@ -1642,9 +2143,18 @@
+@@ -1642,9 +2143,18 @@ ccp_datainput(unit, pkt, len)
  		error("Too many MPPE errors, closing LCP");
  		lcp_close(unit, "Too many MPPE errors");
  	    }
@@ -1458,130 +1355,8 @@ diff -ruN ppp-2.4.3.orig/include/net/ppp-comp.h ppp-2.4.3/include/net/ppp-comp.h
  	     * Send a reset-request to reset the peer's compressor.
  	     * We don't do that if we are still waiting for an
  	     * acknowledgement to a previous reset-request.
-@@ -1675,4 +2185,3 @@
+@@ -1675,4 +2185,3 @@ ccp_rack_timeout(arg)
      } else
  	ccp_localstate[f->unit] &= ~RACK_PENDING;
  }
 -
-diff -ruN ppp-2.4.3.orig/pppd/ccp.h ppp-2.4.3/pppd/ccp.h
---- ppp-2.4.3.orig/pppd/ccp.h	2004-11-04 11:02:26.000000000 +0100
-+++ ppp-2.4.3/pppd/ccp.h	2004-11-21 13:54:09.000000000 +0100
-@@ -37,9 +37,17 @@
-     bool predictor_2;		/* do Predictor-2? */
-     bool deflate_correct;	/* use correct code for deflate? */
-     bool deflate_draft;		/* use draft RFC code for deflate? */
-+    bool lzs;			/* do Stac LZS? */
-+    bool mppc;			/* do MPPC? */
-     bool mppe;			/* do MPPE? */
-+    bool mppe_40;		/* allow 40 bit encryption? */
-+    bool mppe_56;		/* allow 56 bit encryption? */
-+    bool mppe_128;		/* allow 128 bit encryption? */
-+    bool mppe_stateless;	/* allow stateless encryption */
-     u_short bsd_bits;		/* # bits/code for BSD Compress */
-     u_short deflate_size;	/* lg(window size) for Deflate */
-+    u_short lzs_mode;		/* LZS check mode */
-+    u_short lzs_hists;		/* number of LZS histories */
-     short method;		/* code for chosen compression method */
- } ccp_options;
- 
-diff -ruN ppp-2.4.3.orig/pppd/chap_ms.c ppp-2.4.3/pppd/chap_ms.c
---- ppp-2.4.3.orig/pppd/chap_ms.c	2004-11-12 10:57:43.000000000 +0100
-+++ ppp-2.4.3/pppd/chap_ms.c	2004-11-21 13:54:09.000000000 +0100
-@@ -895,13 +895,17 @@
-     /*
-      * Disable undesirable encryption types.  Note that we don't ENABLE
-      * any encryption types, to avoid overriding manual configuration.
-+     *
-+     * It seems that 56 bit keys are unsupported in MS-RADIUS (see RFC 2548)
-      */
-     switch(types) {
- 	case MPPE_ENC_TYPES_RC4_40:
--	    ccp_wantoptions[0].mppe &= ~MPPE_OPT_128;	/* disable 128-bit */
-+	    ccp_wantoptions[0].mppe_128 = 0;	/* disable 128-bit */
-+	    ccp_wantoptions[0].mppe_56 = 0;	/* disable 56-bit */
- 	    break;
- 	case MPPE_ENC_TYPES_RC4_128:
--	    ccp_wantoptions[0].mppe &= ~MPPE_OPT_40;	/* disable 40-bit */
-+	    ccp_wantoptions[0].mppe_56 = 0;	/* disable 56-bit */
-+	    ccp_wantoptions[0].mppe_40 = 0;	/* disable 40-bit */
- 	    break;
- 	default:
- 	    break;
-diff -ruN ppp-2.4.3.orig/pppd/pppd.8 ppp-2.4.3/pppd/pppd.8
---- ppp-2.4.3.orig/pppd/pppd.8	2004-11-13 13:22:49.000000000 +0100
-+++ ppp-2.4.3/pppd/pppd.8	2004-11-21 14:24:47.000000000 +0100
-@@ -622,9 +622,29 @@
- Enables the use of PPP multilink; this is an alias for the `multilink'
- option.  This option is currently only available under Linux.
- .TP
--.B mppe\-stateful
--Allow MPPE to use stateful mode.  Stateless mode is still attempted first.
--The default is to disallow stateful mode.  
-+.B mppc
-+Enables MPPC (Microsoft Point to Point Compression).  This is the default.
-+.TP
-+.B mppe \fIsubopt1[,subopt2[,subopt3[..]]]
-+Modify MPPE (Microsoft Point to Point Encryption) parameters. In order
-+for MPPE to successfully come up, you must have authenticated with either
-+MS-CHAP or MS-CHAPv2. By default MPPE is optional, it means that pppd will
-+not propose MPPE to the peer, but will negotiate MPPE if peer wants that.
-+You can change this using \fIrequired\fR suboption.
-+This option is presently only supported under Linux, and only if your
-+kernel has been configured to include MPPE support.
-+.IP
-+MPPE suboptions:
-+.br
-+\fIrequired\fR - require MPPE; disconnect if peer doesn't support it,
-+.br
-+\fIstateless\fR - try to negotiate stateless mode; default is stateful,
-+.br
-+\fIno40\fR - disable 40 bit keys,
-+.br
-+\fIno56\fR - disable 56 bit keys,
-+.br
-+\fIno128\fR - disable 128 bit keys
- .TP
- .B mpshortseq
- Enables the use of short (12-bit) sequence numbers in multilink
-@@ -757,17 +777,11 @@
- Disables the use of PPP multilink.  This option is currently only
- available under Linux.
- .TP
--.B nomppe
--Disables MPPE (Microsoft Point to Point Encryption).  This is the default.
--.TP
--.B nomppe\-40
--Disable 40-bit encryption with MPPE.
-+.B nomppc
-+Disables MPPC (Microsoft Point to Point Compression).
- .TP
--.B nomppe\-128
--Disable 128-bit encryption with MPPE.
--.TP
--.B nomppe\-stateful
--Disable MPPE stateful mode.  This is the default.
-+.B nomppe
-+Disables MPPE (Microsoft Point to Point Encryption).
- .TP
- .B nompshortseq
- Disables the use of short (12-bit) sequence numbers in the PPP
-@@ -948,19 +962,6 @@
- Require the peer to authenticate itself using CHAP [Challenge
- Handshake Authentication Protocol] authentication.
- .TP
--.B require\-mppe
--Require the use of MPPE (Microsoft Point to Point Encryption).  This
--option disables all other compression types.  This option enables
--both 40-bit and 128-bit encryption.  In order for MPPE to successfully
--come up, you must have authenticated with either MS\-CHAP or MS\-CHAPv2.
--This option is presently only supported under Linux, and only if your
--kernel has been configured to include MPPE support.
--.TP
--.B require\-mppe\-40
--Require the use of MPPE, with 40-bit encryption.
--.TP
--.B require\-mppe\-128
--Require the use of MPPE, with 128-bit encryption.
- .TP
- .B require\-mschap
- Require the peer to authenticate itself using MS\-CHAP [Microsoft Challenge

+ 20 - 0
package/ppp/patches/patch-pppd_ccp_h

@@ -0,0 +1,20 @@
+--- ppp-2.4.4.orig/pppd/ccp.h	2004-11-04 11:02:26.000000000 +0100
++++ ppp-2.4.4/pppd/ccp.h	2009-06-05 19:12:00.000000000 +0200
+@@ -37,9 +37,17 @@ typedef struct ccp_options {
+     bool predictor_2;		/* do Predictor-2? */
+     bool deflate_correct;	/* use correct code for deflate? */
+     bool deflate_draft;		/* use draft RFC code for deflate? */
++    bool lzs;			/* do Stac LZS? */
++    bool mppc;			/* do MPPC? */
+     bool mppe;			/* do MPPE? */
++    bool mppe_40;		/* allow 40 bit encryption? */
++    bool mppe_56;		/* allow 56 bit encryption? */
++    bool mppe_128;		/* allow 128 bit encryption? */
++    bool mppe_stateless;	/* allow stateless encryption */
+     u_short bsd_bits;		/* # bits/code for BSD Compress */
+     u_short deflate_size;	/* lg(window size) for Deflate */
++    u_short lzs_mode;		/* LZS check mode */
++    u_short lzs_hists;		/* number of LZS histories */
+     short method;		/* code for chosen compression method */
+ } ccp_options;
+ 

+ 22 - 0
package/ppp/patches/patch-pppd_chap_ms_c

@@ -0,0 +1,22 @@
+--- ppp-2.4.4.orig/pppd/chap_ms.c	2006-05-21 13:56:40.000000000 +0200
++++ ppp-2.4.4/pppd/chap_ms.c	2009-06-05 19:12:00.000000000 +0200
+@@ -897,13 +897,17 @@ set_mppe_enc_types(int policy, int types
+     /*
+      * Disable undesirable encryption types.  Note that we don't ENABLE
+      * any encryption types, to avoid overriding manual configuration.
++     *
++     * It seems that 56 bit keys are unsupported in MS-RADIUS (see RFC 2548)
+      */
+     switch(types) {
+ 	case MPPE_ENC_TYPES_RC4_40:
+-	    ccp_wantoptions[0].mppe &= ~MPPE_OPT_128;	/* disable 128-bit */
++	    ccp_wantoptions[0].mppe_128 = 0;	/* disable 128-bit */
++	    ccp_wantoptions[0].mppe_56 = 0;	/* disable 56-bit */
+ 	    break;
+ 	case MPPE_ENC_TYPES_RC4_128:
+-	    ccp_wantoptions[0].mppe &= ~MPPE_OPT_40;	/* disable 40-bit */
++	    ccp_wantoptions[0].mppe_56 = 0;	/* disable 56-bit */
++	    ccp_wantoptions[0].mppe_40 = 0;	/* disable 40-bit */
+ 	    break;
+ 	default:
+ 	    break;

+ 7 - 8
package/ppp/patches/209-compensate_time_change.patch → package/ppp/patches/patch-pppd_main_c

@@ -1,6 +1,5 @@
-diff -urN ppp.old/pppd/main.c ppp.dev/pppd/main.c
---- ppp.old/pppd/main.c	2005-11-11 19:19:28.177790000 +0100
-+++ ppp.dev/pppd/main.c	2005-11-11 20:18:05.957363000 +0100
+--- ppp-2.4.4.orig/pppd/main.c	2006-06-04 05:52:50.000000000 +0200
++++ ppp-2.4.4/pppd/main.c	2009-06-05 19:12:00.000000000 +0200
 @@ -90,6 +90,7 @@
  #include <sys/socket.h>
  #include <netinet/in.h>
@@ -9,7 +8,7 @@ diff -urN ppp.old/pppd/main.c ppp.dev/pppd/main.c
  
  #include "pppd.h"
  #include "magic.h"
-@@ -227,6 +228,7 @@
+@@ -227,6 +228,7 @@ static struct subprocess *children;
  
  /* Prototypes for procedures local to this file. */
  
@@ -17,7 +16,7 @@ diff -urN ppp.old/pppd/main.c ppp.dev/pppd/main.c
  static void setup_signals __P((void));
  static void create_pidfile __P((int pid));
  static void create_linkpidfile __P((int pid));
-@@ -531,6 +533,7 @@
+@@ -529,6 +531,7 @@ main(argc, argv)
  	    info("Starting link");
  	}
  
@@ -25,7 +24,7 @@ diff -urN ppp.old/pppd/main.c ppp.dev/pppd/main.c
  	gettimeofday(&start_time, NULL);
  	script_unsetenv("CONNECT_TIME");
  	script_unsetenv("BYTES_SENT");
-@@ -1195,6 +1198,36 @@
+@@ -1262,6 +1265,36 @@ struct	callout {
  
  static struct callout *callout = NULL;	/* Callout list */
  static struct timeval timenow;		/* Current time */
@@ -62,7 +61,7 @@ diff -urN ppp.old/pppd/main.c ppp.dev/pppd/main.c
  
  /*
   * timeout - Schedule a timeout.
-@@ -1265,6 +1298,8 @@
+@@ -1332,6 +1365,8 @@ calltimeout()
  {
      struct callout *p;
  
@@ -71,7 +70,7 @@ diff -urN ppp.old/pppd/main.c ppp.dev/pppd/main.c
      while (callout != NULL) {
  	p = callout;
  
-@@ -1292,6 +1327,8 @@
+@@ -1359,6 +1394,8 @@ timeleft(tvp)
  {
      if (callout == NULL)
  	return NULL;

+ 34 - 0
package/ppp/patches/patch-pppd_plugins_radius_Makefile_linux

@@ -0,0 +1,34 @@
+--- ppp-2.4.4.orig/pppd/plugins/radius/Makefile.linux	2006-06-04 07:04:14.000000000 +0200
++++ ppp-2.4.4/pppd/plugins/radius/Makefile.linux	2009-06-05 19:12:00.000000000 +0200
+@@ -12,7 +12,8 @@ VERSION = $(shell awk -F '"' '/VERSION/ 
+ INSTALL	= install
+ 
+ PLUGIN=radius.so radattr.so radrealms.so
+-CFLAGS=-I. -I../.. -I../../../include -O2 -fPIC -DRC_LOG_FACILITY=LOG_DAEMON
++COPTS = -O2
++CFLAGS=-I. -I../.. -I../../../include $(COPTS) -fPIC -DRC_LOG_FACILITY=LOG_DAEMON
+ 
+ # Uncomment the next line to include support for Microsoft's
+ # MS-CHAP authentication protocol.
+@@ -36,9 +37,9 @@ all: $(PLUGIN)
+ 
+ install: all
+ 	$(INSTALL) -d -m 755 $(LIBDIR)
+-	$(INSTALL) -s -c -m 755 radius.so $(LIBDIR)
+-	$(INSTALL) -s -c -m 755 radattr.so $(LIBDIR)
+-	$(INSTALL) -s -c -m 755 radrealms.so $(LIBDIR)
++	$(INSTALL) -c -m 755 radius.so $(LIBDIR)
++	$(INSTALL) -c -m 755 radattr.so $(LIBDIR)
++	$(INSTALL) -c -m 755 radrealms.so $(LIBDIR)
+ 	$(INSTALL) -c -m 444 pppd-radius.8 $(MANDIR)
+ 	$(INSTALL) -c -m 444 pppd-radattr.8 $(MANDIR)
+ 
+@@ -54,7 +55,7 @@ radrealms.so: radrealms.o
+ CLIENTOBJS = avpair.o buildreq.o config.o dict.o ip_util.o \
+ 	clientid.o sendserver.o lock.o util.o md5.o
+ libradiusclient.a: $(CLIENTOBJS)
+-	$(AR) rv $@ $?
++	$(TARGET_AR) rcsv $@ $?
+ 
+ clean:
+ 	rm -f *.o *.so *.a

+ 4 - 5
package/ppp/patches/206-radius_config.patch → package/ppp/patches/patch-pppd_plugins_radius_etc_radiusclient_conf

@@ -1,7 +1,6 @@
-diff -Nur ppp-2.4.4-orig/pppd/plugins/radius/etc/radiusclient.conf ppp-2.4.4/pppd/plugins/radius/etc/radiusclient.conf
---- ppp-2.4.4-orig/pppd/plugins/radius/etc/radiusclient.conf	2004-11-14 00:48:39.000000000 +0100
-+++ ppp-2.4.4/pppd/plugins/radius/etc/radiusclient.conf	2007-01-23 23:56:52.000000000 +0100
-@@ -22,7 +22,7 @@
+--- ppp-2.4.4.orig/pppd/plugins/radius/etc/radiusclient.conf	2004-11-14 00:48:39.000000000 +0100
++++ ppp-2.4.4/pppd/plugins/radius/etc/radiusclient.conf	2009-06-05 19:12:00.000000000 +0200
+@@ -22,7 +22,7 @@ nologin /etc/nologin
  
  # name of the issue file. it's only display when no username is passed
  # on the radlogin command line  (default /etc/radiusclient/issue)
@@ -10,7 +9,7 @@ diff -Nur ppp-2.4.4-orig/pppd/plugins/radius/etc/radiusclient.conf ppp-2.4.4/ppp
  
  # RADIUS settings
  
-@@ -43,22 +43,22 @@
+@@ -43,22 +43,22 @@ acctserver 	localhost:1813
  
  # file holding shared secrets used for the communication
  # between the RADIUS client and server

+ 23 - 0
package/ppp/patches/patch-pppd_plugins_rp-pppoe_Makefile_linux

@@ -0,0 +1,23 @@
+--- ppp-2.4.4.orig/pppd/plugins/rp-pppoe/Makefile.linux	2006-06-04 07:07:46.000000000 +0200
++++ ppp-2.4.4/pppd/plugins/rp-pppoe/Makefile.linux	2009-06-05 19:12:00.000000000 +0200
+@@ -39,9 +39,9 @@ rp-pppoe.so: libplugin.a plugin.o
+ 
+ install: all
+ 	$(INSTALL) -d -m 755 $(LIBDIR)
+-	$(INSTALL) -s -c -m 4550 rp-pppoe.so $(LIBDIR)
++	$(INSTALL) -c -m 4550 rp-pppoe.so $(LIBDIR)
+ 	$(INSTALL) -d -m 755 $(BINDIR)
+-	$(INSTALL) -s -c -m 555 pppoe-discovery $(BINDIR)
++	$(INSTALL) -c -m 555 pppoe-discovery $(BINDIR)
+ 
+ clean:
+ 	rm -f *.o *.so
+@@ -50,7 +50,7 @@ plugin.o: plugin.c
+ 	$(CC) '-DRP_VERSION="$(VERSION)"' $(CFLAGS) -I../../..  -c -o plugin.o -fPIC plugin.c
+ 
+ libplugin.a: discovery.o if.o common.o debug.o
+-	$(AR) -rc $@ $^
++	$(TARGET_AR) -rcs $@ $^
+ 
+ discovery.o: discovery.c
+ 	$(CC) $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o discovery.o -fPIC discovery.c

+ 4 - 5
package/ppp/patches/208-no_exponential_timeout.patch → package/ppp/patches/patch-pppd_plugins_rp-pppoe_discovery_c

@@ -1,7 +1,6 @@
-diff -urN ppp.old/pppd/plugins/rp-pppoe/discovery.c ppp.dev/pppd/plugins/rp-pppoe/discovery.c
---- ppp.old/pppd/plugins/rp-pppoe/discovery.c	2005-09-05 15:25:35.917232000 +0200
-+++ ppp.dev/pppd/plugins/rp-pppoe/discovery.c	2005-09-05 15:29:17.233586872 +0200
-@@ -593,12 +593,14 @@
+--- ppp-2.4.4.orig/pppd/plugins/rp-pppoe/discovery.c	2005-03-22 11:22:32.000000000 +0100
++++ ppp-2.4.4/pppd/plugins/rp-pppoe/discovery.c	2009-06-05 19:12:00.000000000 +0200
+@@ -607,12 +607,14 @@ discovery(PPPoEConnection *conn)
  	conn->discoveryState = STATE_SENT_PADI;
  	waitForPADO(conn, timeout);
  
@@ -16,7 +15,7 @@ diff -urN ppp.old/pppd/plugins/rp-pppoe/discovery.c ppp.dev/pppd/plugins/rp-pppo
  	if (conn->printACNames && conn->numPADOs) {
  	    break;
  	}
-@@ -621,7 +623,9 @@
+@@ -635,7 +637,9 @@ discovery(PPPoEConnection *conn)
  	sendPADR(conn);
  	conn->discoveryState = STATE_SENT_PADR;
  	waitForPADS(conn, timeout);

+ 77 - 0
package/ppp/patches/patch-pppd_pppd_8

@@ -0,0 +1,77 @@
+--- ppp-2.4.4.orig/pppd/pppd.8	2006-06-16 02:01:23.000000000 +0200
++++ ppp-2.4.4/pppd/pppd.8	2009-06-05 19:12:00.000000000 +0200
+@@ -627,9 +627,29 @@ control, as for the \fIcrtscts\fR option
+ Enables the use of PPP multilink; this is an alias for the `multilink'
+ option.  This option is currently only available under Linux.
+ .TP
+-.B mppe\-stateful
+-Allow MPPE to use stateful mode.  Stateless mode is still attempted first.
+-The default is to disallow stateful mode.  
++.B mppc
++Enables MPPC (Microsoft Point to Point Compression).  This is the default.
++.TP
++.B mppe \fIsubopt1[,subopt2[,subopt3[..]]]
++Modify MPPE (Microsoft Point to Point Encryption) parameters. In order
++for MPPE to successfully come up, you must have authenticated with either
++MS-CHAP or MS-CHAPv2. By default MPPE is optional, it means that pppd will
++not propose MPPE to the peer, but will negotiate MPPE if peer wants that.
++You can change this using \fIrequired\fR suboption.
++This option is presently only supported under Linux, and only if your
++kernel has been configured to include MPPE support.
++.IP
++MPPE suboptions:
++.br
++\fIrequired\fR - require MPPE; disconnect if peer doesn't support it,
++.br
++\fIstateless\fR - try to negotiate stateless mode; default is stateful,
++.br
++\fIno40\fR - disable 40 bit keys,
++.br
++\fIno56\fR - disable 56 bit keys,
++.br
++\fIno128\fR - disable 128 bit keys
+ .TP
+ .B mpshortseq
+ Enables the use of short (12-bit) sequence numbers in multilink
+@@ -767,17 +787,11 @@ peer is buggy.
+ Disables the use of PPP multilink.  This option is currently only
+ available under Linux.
+ .TP
+-.B nomppe
+-Disables MPPE (Microsoft Point to Point Encryption).  This is the default.
+-.TP
+-.B nomppe\-40
+-Disable 40-bit encryption with MPPE.
+-.TP
+-.B nomppe\-128
+-Disable 128-bit encryption with MPPE.
++.B nomppc
++Disables MPPC (Microsoft Point to Point Compression).
+ .TP
+-.B nomppe\-stateful
+-Disable MPPE stateful mode.  This is the default.
++.B nomppe
++Disables MPPE (Microsoft Point to Point Encryption).
+ .TP
+ .B nompshortseq
+ Disables the use of short (12-bit) sequence numbers in the PPP
+@@ -958,19 +972,6 @@ peer using PAP.
+ Require the peer to authenticate itself using CHAP [Challenge
+ Handshake Authentication Protocol] authentication.
+ .TP
+-.B require\-mppe
+-Require the use of MPPE (Microsoft Point to Point Encryption).  This
+-option disables all other compression types.  This option enables
+-both 40-bit and 128-bit encryption.  In order for MPPE to successfully
+-come up, you must have authenticated with either MS\-CHAP or MS\-CHAPv2.
+-This option is presently only supported under Linux, and only if your
+-kernel has been configured to include MPPE support.
+-.TP
+-.B require\-mppe\-40
+-Require the use of MPPE, with 40-bit encryption.
+-.TP
+-.B require\-mppe\-128
+-Require the use of MPPE, with 128-bit encryption.
+ .TP
+ .B require\-mschap
+ Require the peer to authenticate itself using MS\-CHAP [Microsoft Challenge

+ 16 - 0
package/ppp/patches/patch-pppd_sys-linux_c

@@ -0,0 +1,16 @@
+--- ppp-2.4.4.orig/pppd/sys-linux.c	2005-08-27 00:44:35.000000000 +0200
++++ ppp-2.4.4/pppd/sys-linux.c	2009-06-05 19:12:00.000000000 +0200
+@@ -453,6 +453,13 @@ int generic_establish_ppp (int fd)
+     if (new_style_driver) {
+ 	int flags;
+ 
++        /* if a ppp_fd is already open, close it first */
++        if(ppp_fd > 0) {
++          close(ppp_fd);
++          remove_fd(ppp_fd);
++          ppp_fd = -1;
++        }
++
+ 	/* Open an instance of /dev/ppp and connect the channel to it */
+ 	if (ioctl(fd, PPPIOCGCHAN, &chindex) == -1) {
+ 	    error("Couldn't get channel number: %m");

+ 19 - 0
package/ppp/patches/patch-pppdump_Makefile_linux

@@ -0,0 +1,19 @@
+--- ppp-2.4.4.orig/pppdump/Makefile.linux	2006-06-04 07:04:14.000000000 +0200
++++ ppp-2.4.4/pppdump/Makefile.linux	2009-06-05 19:12:00.000000000 +0200
+@@ -2,7 +2,8 @@ DESTDIR = $(INSTROOT)@DESTDIR@
+ BINDIR = $(DESTDIR)/sbin
+ MANDIR = $(DESTDIR)/share/man/man8
+ 
+-CFLAGS= -O -I../include/net
++COPTS = -O
++CFLAGS= $(COPTS) -I../include/net
+ OBJS = pppdump.o bsd-comp.o deflate.o zlib.o
+ 
+ INSTALL= install
+@@ -17,5 +18,5 @@ clean:
+ 
+ install:
+ 	mkdir -p $(BINDIR) $(MANDIR)
+-	$(INSTALL) -s -c pppdump $(BINDIR)
++	$(INSTALL) -c pppdump $(BINDIR)
+ 	$(INSTALL) -c -m 444 pppdump.8 $(MANDIR)

+ 11 - 0
package/ppp/patches/patch-pppstats_Makefile_linux

@@ -0,0 +1,11 @@
+--- ppp-2.4.4.orig/pppstats/Makefile.linux	2006-06-04 07:07:46.000000000 +0200
++++ ppp-2.4.4/pppstats/Makefile.linux	2009-06-05 19:12:00.000000000 +0200
+@@ -22,7 +22,7 @@ all: pppstats
+ 
+ install: pppstats
+ 	-mkdir -p $(MANDIR)
+-	$(INSTALL) -s -c pppstats $(BINDIR)
++	$(INSTALL) -c pppstats $(BINDIR)
+ 	$(INSTALL) -c -m 444 pppstats.8 $(MANDIR)
+ 
+ pppstats: $(PPPSTATSRCS)

+ 2 - 1
package/privoxy/Makefile

@@ -22,7 +22,8 @@ $(eval $(call PKG_template,PRIVOXY,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${P
 
 TLDFLAGS+=		-pthread
 CONFIGURE_STYLE:=	gnu
-CONFIGURE_ENV+=		ac_cv_func_setpgrp_void=no
+CONFIGURE_ENV+=		ac_cv_func_setpgrp_void=no \
+			ac_cv_lib_nsl_gethostbyname=no
 BUILD_STYLE:=		auto
 MAKE_FLAGS+=		SPECIAL_CFLAGS='${TLDFLAGS}'
 MAKE_FILE:=		GNUmakefile

+ 3 - 2
package/procmail/Makefile

@@ -16,9 +16,10 @@ include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,PROCMAIL,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
+TCFLAGS+=		-DPROCMAIL
+
 do-build:
-	${MAKE} -C ${WRKBUILD}/src -f ../Makefile.new  \
-		CC="${TARGET_CC}"
+	${MAKE} -C ${WRKBUILD}/src -f ../Makefile.new
 
 do-install:
 	${INSTALL_DIR} ${IDIR_PROCMAIL}/usr/bin

+ 19 - 0
package/procmail/patches/patch-Makefile_new

@@ -0,0 +1,19 @@
+--- procmail-3.22.orig/Makefile.new	1970-01-01 00:00:00.000000000 +0100
++++ procmail-3.22/Makefile.new	2009-06-04 22:43:04.000000000 +0200
+@@ -0,0 +1,16 @@
++PM_OBJ=cstdio.o common.o exopen.o goodies.o locking.o \
++ mailfold.o foldinfo.o misc.o pipes.o regexp.o robust.o \
++ sublib.o acommon.o mcommon.o lastdirsep.o authenticate.o \
++ lmtp.o memblk.o variables.o from.o comsat.o
++
++FM_OBJ=common.o fields.o formisc.o sublib.o ecommon.o \
++ acommon.o
++
++all: procmail formail
++
++procmail: procmail.o $(PM_OBJ)
++	$(CC) $(CFLAGS) $@.o $(PM_OBJ) -o $@ $(LDFLAGS)
++
++formail: formail.o $(FM_OBJ)
++	$(CC) $(CFLAGS) $@.o $(FM_OBJ) -o $@ $(LDFLAGS)
++

+ 3 - 4
package/procmail/patches/patch-autoconf_h

@@ -1,14 +1,13 @@
-$Id$
-
 This patch is required to make procmail cross compile - it tries to run some
 automatic tests which obviously do not work in a cross compiled environment.
 
 --- procmail-3.22.orig/autoconf.h	1970-01-01 00:00:00.000000000 +0100
-+++ procmail-3.22/autoconf.h	2006-07-27 07:50:48.000000000 +0200
-@@ -0,0 +1,21 @@
++++ procmail-3.22/autoconf.h	2009-06-04 22:52:50.000000000 +0200
+@@ -0,0 +1,22 @@
 +/* This file was automagically generated by autoconf */
 +
 +/* 5 moves in 64 steps of size 16384 when reallocing */
++#define NOpow
 +#define NOpw_class
 +#define NOstrlcat
 +#define NOsetrgid

+ 2 - 1
package/ruby/Makefile

@@ -31,8 +31,9 @@ post-configure:
 	echo "socket" >> ${WRKBUILD}/ext/Setup
 
 post-install:
+	rm ${WRKINST}/usr/lib/*.a
 	rm -rf ${WRKINST}/usr/lib/site_ruby
-	find ${WRKINST}/usr -name "*.h" -delete
+	rm -rf ${WRKINST}/usr/include
 	${CP} ${WRKINST}/usr ${IDIR_RUBY}/
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 4 - 1
package/samba/Makefile

@@ -24,7 +24,10 @@ $(eval $(call PKG_template,SAMBA_PASSWD,samba-passwd,${PKG_VERSION}-${PKG_RELEAS
 CONFIGURE_STYLE:=	gnu
 TLDFLAGS+=		-Wl,-rpath -Wl,/usr/lib/samba
 CONFIGURE_ENV+=		samba_cv_CC_NEGATIVE_ENUM_VALUES=no \
-			samba_cv_USE_SETRESUID=no
+			samba_cv_USE_SETRESUID=no \
+			ac_cv_lib_ext_nsl_connect=no \
+			ac_cv_search_yp_get_default_domain=no \
+			ac_cv_lib_ext_nsl_gethostbyname=no
 ifeq ($(ADK_IPV6),y)
 CONFIGURE_ENV+=		libreplace_cv_HAVE_IPV6=yes
 else

+ 1 - 0
package/ser2net/Makefile

@@ -16,6 +16,7 @@ include ${TOPDIR}/mk/package.mk
 $(eval $(call PKG_template,SER2NET,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE:=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_main=no
 BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
 

+ 7 - 6
package/squid/Makefile

@@ -46,11 +46,9 @@ define PKG_mod_template
 INSTALL_MODS_$${ADK_PACKAGE_${1}}+=	${2}-install
 
 ${2}-install:
-	if [ -e ${WRKINST}/usr/lib/squid/${2} ]; then \
-		${INSTALL_DIR} ${IDIR_${1}}/usr/lib/squid/ ; \
-		${INSTALL_BIN} ${WRKINST}/usr/lib/squid/${2} ${IDIR_${1}}/usr/lib/squid/ ; \
-		
-	fi
+	${INSTALL_DIR} $${IDIR_${1}}/usr/lib/squid
+	${INSTALL_BIN} ${WRKINST}/usr/lib/squid/${2} \
+		$${IDIR_${1}}/usr/lib/squid/
 endef
 
 $(eval $(call PKG_template,SQUID,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
@@ -74,7 +72,7 @@ $(eval $(call PKG_mod_template,SQUID_MOD_EXTERNAL_ACL_UNIX_GROUP,squid_unix_grou
 $(eval $(call PKG_mod_template,SQUID_MOD_NTLM_AUTH_FAKEAUTH,fakeauth_auth))
 $(eval $(call PKG_mod_template,SQUID_MOD_NTLM_AUTH_SMB_AUTH,ntlm_auth))
 
-CONFIGURE_STYLE:=	gnu
+CONFIGURE_STYLE:=	autotool gnu
 CONFIGURE_ENV+=		ac_cv_sizeof_void_p=4 \
 			ac_cv_sizeof_short=2 \
 			ac_cv_sizeof_int=4 \
@@ -94,6 +92,7 @@ CONFIGURE_ENV+=		ac_cv_sizeof_void_p=4 \
 			ac_cv_func_va_copy=no \
 			ac_cv_func___va_copy=no \
 			ac_cv_epoll_works=yes \
+			ac_cv_lib_nsl_main=no \
 			ac_cv_func_strnstr=no
 CONFIGURE_ARGS+=	--datadir=/usr/share/squid \
 			--libexecdir=/usr/lib/squid \
@@ -117,6 +116,8 @@ CONFIGURE_ARGS+=	--datadir=/usr/share/squid \
 			--enable-cache-digests \
 			--enable-referer-log \
 			--enable-delay-pools \
+			--disable-wccp \
+			--disable-wccpv2 \
 			--enable-useragent-log \
 			--with-openssl=${STAGING_DIR}/usr \
 			--enable-auth="${AUTH_MODULES}" \

+ 13 - 0
package/squid/patches/patch-configure_in

@@ -0,0 +1,13 @@
+--- squid-3.0.STABLE15.orig/configure.in	2009-05-06 13:11:43.000000000 +0200
++++ squid-3.0.STABLE15/configure.in	2009-06-04 20:20:15.000000000 +0200
+@@ -1820,6 +1820,10 @@ case "$host" in
+ 	;;
+ esac
+ 
++dnl Define HOSTCXX
++HOSTCXX="g++"
++AC_SUBST(HOSTCXX)
++
+ dnl Check for programs
+ AC_PROG_CPP
+ AC_PROG_INSTALL

+ 12 - 0
package/squid/patches/patch-lib_util_c

@@ -0,0 +1,12 @@
+--- squid-3.0.STABLE15.orig/lib/util.c	2009-05-06 13:11:38.000000000 +0200
++++ squid-3.0.STABLE15/lib/util.c	2009-06-04 21:05:19.000000000 +0200
+@@ -751,7 +751,8 @@ xstrdup(const char *s)
+     /* copy string, including terminating character */
+     sz = strlen(s) + 1;
+ 
+-    p = memcpy((char *)xmalloc(sz), s, sz);
++    p = (char *)xmalloc(sz);
++    memcpy(p, s, sz);
+ 
+     PROF_stop(xstrdup);
+ 

+ 23 - 0
package/squid/patches/patch-src_Makefile_am

@@ -0,0 +1,23 @@
+--- squid-3.0.STABLE15.orig/src/Makefile.am	2009-05-06 13:11:40.000000000 +0200
++++ squid-3.0.STABLE15/src/Makefile.am	2009-06-04 20:21:37.000000000 +0200
+@@ -1007,6 +1007,8 @@ DEFAULT_HOSTS		= @OPT_DEFAULT_HOSTS@
+ 
+ DEFS = @DEFS@ -DDEFAULT_CONFIG_FILE=\"$(DEFAULT_CONFIG_FILE)\"
+ 
++HOSTCXX ?= @HOSTCXX@
++
+ $(OBJS): $(top_srcdir)/include/version.h ../include/autoconf.h
+ 
+ snmp_core.o snmp_agent.o: ../snmplib/libsnmp.a $(top_srcdir)/include/cache_snmp.h
+@@ -1030,6 +1032,11 @@ cache_cf.o: cf_parser.h
+ squid.conf.default: cf_parser.h
+ 	true
+ 
++cf_gen$(EXEEXT): $(cf_gen_SOURCES) $(cf_gen_DEPENDENCIES)
++	$(HOSTCXX) -o $@ $(srcdir)/cf_gen.cc \
++		$(top_srcdir)/lib/util.c $(top_srcdir)/lib/assert.c \
++		-DNDEBUG -DBUILD_HOST_TOOL ${INCLUDES}
++
+ cf_parser.h: cf.data cf_gen$(EXEEXT)
+ 	./cf_gen cf.data $(srcdir)/cf.data.depend
+ 

+ 5 - 3
package/srelay/Makefile

@@ -15,13 +15,15 @@ include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,SRELAY,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-CONFIGURE_STYLE:=	gnu
-CONFIGURE_ARGS+=	--disable-thread
+CONFIGURE_STYLE:=	autoconf gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_getaddrinfo=no
+CONFIGURE_ARGS+=	--disable-thread \
+			--with-libwrap=no
 BUILD_STYLE:=		auto
 
 do-install:
 	${INSTALL_DIR} ${IDIR_SRELAY}/usr/bin ${IDIR_SRELAY}/etc
-	${INSTALL_BIN} ${WRKBUILD}/srelay ${IDIR_SRELAY}/usr/bin/
 	${INSTALL_DATA} ./files/srelay.conf ${IDIR_SRELAY}/etc
+	${INSTALL_BIN} ${WRKBUILD}/srelay ${IDIR_SRELAY}/usr/bin
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 3 - 3
package/srelay/patches/01-cross_compile.patch

@@ -1,7 +1,7 @@
 diff -urN srelay-0.4.6/configure srelay-0.4.6.new/configure
---- srelay-0.4.6/configure	2003-04-14 07:36:15.000000000 +0200
-+++ srelay-0.4.6.new/configure	2006-03-28 15:11:42.000000000 +0200
-@@ -1395,7 +1395,7 @@
+--- srelay-0.4.6.orig/configure	2003-04-14 07:36:15.000000000 +0200
++++ srelay-0.4.6/configure	2009-06-05 18:03:20.000000000 +0200
+@@ -1395,7 +1395,7 @@ _ACEOF
  	;;
    linux*)
  	case "$build_cpu" in

+ 20 - 0
package/srelay/patches/patch-configure_in

@@ -0,0 +1,20 @@
+--- srelay-0.4.6.orig/configure.in	2003-04-14 07:36:15.000000000 +0200
++++ srelay-0.4.6/configure.in	2009-06-05 18:11:26.000000000 +0200
+@@ -15,7 +15,7 @@ case "$build_os" in
+ 	;;
+   linux*)
+ 	case "$build_cpu" in
+-	  i*86)
++	  i*86 | mips* | powerpc* | sparc* | x86_64*)
+ 	    OS=LINUX
+ 	    AC_DEFINE(LINUX)
+ 	    ;;
+@@ -23,7 +23,7 @@ case "$build_os" in
+ 	;;
+ esac
+ 
+-CFLAGS="$CFLAGS -O2 -Wall"
++CFLAGS="$CFLAGS -Wall"
+ LDFLAGS="$LDFLAGS -s"
+ 
+ dnl Local libralies.

+ 1 - 0
package/ssmtp/Makefile

@@ -18,6 +18,7 @@ include ${TOPDIR}/mk/package.mk
 $(eval $(call PKG_template,SSMTP,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE:=	gnu
+CONFIGURE_ENV+=		ac_cv_lib_nsl_gethostname=no
 BUILD_STYLE:=		auto
 
 do-install:

+ 2 - 1
package/stress/Makefile

@@ -7,7 +7,7 @@ PKG_NAME:=		stress
 PKG_VERSION:=		1.0.0
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		d693ff044ac7d34f8aaea202cd96f679
-PKG_DESCR:=		a simple tool that imposes certain types of compute stress on UNIX-like operating systems
+PKG_DESCR:=		a simple tool that imposes certain types of compute stress
 PKG_SECTION:=		utils
 PKG_SITES:=		http://weather.ou.edu/~apw/projects/stress/
 
@@ -16,6 +16,7 @@ include ${TOPDIR}/mk/package.mk
 $(eval $(call PKG_template,STRESS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 CONFIGURE_STYLE:=	gnu
+CONFIGURE_ARGS+=	--disable-static
 BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
 

+ 1 - 1
package/subversion/Makefile

@@ -55,6 +55,6 @@ INSTALL_TARGET:=	external-install local-install
 post-install:
 	${INSTALL_DIR} ${IDIR_SUBVERSION}/usr/{bin,lib}
 	${CP} ${WRKINST}/usr/bin/* ${IDIR_SUBVERSION}/usr/bin
-	${CP} ${WRKINST}/usr/lib/* ${IDIR_SUBVERSION}/usr/lib
+	${CP} ${WRKINST}/usr/lib/*.so* ${IDIR_SUBVERSION}/usr/lib
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 1 - 0
package/syslog-ng/Makefile

@@ -21,6 +21,7 @@ CONFIGURE_STYLE:=	gnu
 CONFIGURE_ARGS+=	--enable-full-dynamic \
 			--enable-tcp-wrapper
 CONFIGURE_ENV+=		ac_cv_path_libol_config=${STAGING_DIR}/usr/bin
+CONFIGURE_ENV+=		ac_cv_lib_nsl_gethostbyname=no
 BUILD_STYLE:=		auto
 INSTALL_STYLE:=		auto
 

+ 2 - 3
package/tcl/Makefile

@@ -24,15 +24,14 @@ CONFIGURE_ENV+=		tcl_cv_strstr_unbroken=ok \
 			tcl_cv_strtod_buggy=ok \
 			tcl_cv_strtod_unbroken=ok \
 			tcl_cv_strtoul_unbroken=ok
-CONFIGURE_ARGS+=	--enable-man-symlinks \
-			--enable-shared
+CONFIGURE_ARGS+=	--enable-man-symlinks
 BUILD_STYLE=		auto
 INSTALL_STYLE=		auto
 
 post-install:
 	${INSTALL_DIR} ${IDIR_TCL}/usr/lib ${IDIR_TCL}/usr/bin
 	${CP} ${WRKINST}/usr/bin/* ${IDIR_TCL}/usr/bin
-	${CP} ${WRKINST}/usr/lib/* ${IDIR_TCL}/usr/lib
+	${CP} ${WRKINST}/usr/lib/*.so* ${IDIR_TCL}/usr/lib
 	chmod u+w ${IDIR_TCL}/usr/lib/libtcl8.4.so	# for strip
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 1 - 5
package/tcp_wrappers/Makefile

@@ -22,7 +22,6 @@ BUILD_STYLE:=		auto
 ALL_TARGET:=		tidy all
 MAKE_FLAGS+=		OPT_CFLAGS="${TARGET_CFLAGS}" \
 			CC="${TARGET_CC}" \
-			LIBS=-lnsl \
 			NETGROUP= \
 			VSYSLOG= \
 			BUGS= \
@@ -34,10 +33,7 @@ MAKE_FLAGS+=		OPT_CFLAGS="${TARGET_CFLAGS}" \
 			STYLE="-DPROCESS_OPTIONS" \
 
 do-install:
-	${INSTALL_DIR} ${IDIR_LIBWRAP}/usr/lib ${IDIR_LIBWRAP}/usr/include
+	${INSTALL_DIR} ${IDIR_LIBWRAP}/usr/lib
 	${CP} ${WRKBUILD}/shared/libwrap.so.* ${IDIR_LIBWRAP}/usr/lib/
-	${CP} ${WRKBUILD}/tcpd.h ${IDIR_LIBWRAP}/usr/include/
-	${INSTALL_DIR} ${WRKINST}/usr/lib
-	${CP} ${WRKBUILD}/shared/libwrap.so* ${WRKINST}/usr/lib/
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 0 - 936
package/tcp_wrappers/patches/debian-subset.patch

@@ -1,936 +0,0 @@
---- tcp-wrappers-7.6.orig/hosts_access.c
-+++ tcp-wrappers-7.6/hosts_access.c
-@@ -240,6 +240,26 @@
-     }
- }
- 
-+/* hostfile_match - look up host patterns from file */
-+
-+static int hostfile_match(path, host)
-+char   *path;
-+struct hosts_info *host;
-+{
-+    char    tok[BUFSIZ];
-+    int     match = NO;
-+    FILE   *fp;
-+
-+    if ((fp = fopen(path, "r")) != 0) {
-+        while (fscanf(fp, "%s", tok) == 1 && !(match = host_match(tok, host)))
-+            /* void */ ;
-+        fclose(fp);
-+    } else if (errno != ENOENT) {
-+        tcpd_warn("open %s: %m", path);
-+    }
-+    return (match);
-+}
-+
- /* host_match - match host name and/or address against pattern */
- 
- static int host_match(tok, host)
-@@ -267,6 +287,8 @@
- 	tcpd_warn("netgroup support is disabled");	/* not tcpd_jump() */
- 	return (NO);
- #endif
-+    } else if (tok[0] == '/') {                         /* /file hack */
-+        return (hostfile_match(tok, host));
-     } else if (STR_EQ(tok, "KNOWN")) {		/* check address and name */
- 	char   *name = eval_hostname(host);
- 	return (STR_NE(eval_hostaddr(host), unknown) && HOSTNAME_KNOWN(name));
---- tcp-wrappers-7.6.orig/tcpd.h
-+++ tcp-wrappers-7.6/tcpd.h
-@@ -4,6 +4,25 @@
-   * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands.
-   */
- 
-+#ifndef _TCPWRAPPERS_TCPD_H
-+#define _TCPWRAPPERS_TCPD_H
-+
-+/* someone else may have defined this */
-+#undef  __P
-+
-+/* use prototypes if we have an ANSI C compiler or are using C++ */
-+#if defined(__STDC__) || defined(__cplusplus)
-+#define __P(args)       args
-+#else
-+#define __P(args)       ()
-+#endif
-+
-+/* Need definitions of struct sockaddr_in and FILE. */
-+#include <netinet/in.h>
-+#include <stdio.h>
-+
-+__BEGIN_DECLS
-+
- /* Structure to describe one communications endpoint. */
- 
- #define STRING_LENGTH	128		/* hosts, users, processes */
-@@ -25,10 +44,10 @@
-     char    pid[10];			/* access via eval_pid(request) */
-     struct host_info client[1];		/* client endpoint info */
-     struct host_info server[1];		/* server endpoint info */
--    void  (*sink) ();			/* datagram sink function or 0 */
--    void  (*hostname) ();		/* address to printable hostname */
--    void  (*hostaddr) ();		/* address to printable address */
--    void  (*cleanup) ();		/* cleanup function or 0 */
-+    void  (*sink) __P((int));		/* datagram sink function or 0 */
-+    void  (*hostname) __P((struct host_info *)); /* address to printable hostname */
-+    void  (*hostaddr) __P((struct host_info *)); /* address to printable address */
-+    void  (*cleanup) __P((struct request_info *)); /* cleanup function or 0 */
-     struct netconfig *config;		/* netdir handle */
- };
- 
-@@ -61,25 +80,30 @@
- /* Global functions. */
- 
- #if defined(TLI) || defined(PTX) || defined(TLI_SEQUENT)
--extern void fromhost();			/* get/validate client host info */
-+extern void fromhost __P((struct request_info *));	/* get/validate client host info */
- #else
- #define fromhost sock_host		/* no TLI support needed */
- #endif
- 
--extern int hosts_access();		/* access control */
--extern void shell_cmd();		/* execute shell command */
--extern char *percent_x();		/* do %<char> expansion */
--extern void rfc931();			/* client name from RFC 931 daemon */
--extern void clean_exit();		/* clean up and exit */
--extern void refuse();			/* clean up and exit */
--extern char *xgets();			/* fgets() on steroids */
--extern char *split_at();		/* strchr() and split */
--extern unsigned long dot_quad_addr();	/* restricted inet_addr() */
-+extern void shell_cmd __P((char *));	/* execute shell command */
-+extern char *percent_x __P((char *, int, char *, struct request_info *)); /* do %<char> expansion */
-+extern void rfc931 __P((struct sockaddr_in *, struct sockaddr_in *, char *)); /* client name from RFC 931 daemon */
-+extern void clean_exit __P((struct request_info *)); /* clean up and exit */
-+extern void refuse __P((struct request_info *));	/* clean up and exit */
-+extern char *xgets __P((char *, int, FILE *));	/* fgets() on steroids */
-+extern char *split_at __P((char *, int));	/* strchr() and split */
-+extern unsigned long dot_quad_addr __P((char *)); /* restricted inet_addr() */
- 
- /* Global variables. */
- 
-+#ifdef HAVE_WEAKSYMS
-+extern int allow_severity __attribute__ ((weak)); /* for connection logging */
-+extern int deny_severity __attribute__ ((weak)); /* for connection logging */
-+#else
- extern int allow_severity;		/* for connection logging */
- extern int deny_severity;		/* for connection logging */
-+#endif
-+
- extern char *hosts_allow_table;		/* for verification mode redirection */
- extern char *hosts_deny_table;		/* for verification mode redirection */
- extern int hosts_access_verbose;	/* for verbose matching mode */
-@@ -92,9 +116,14 @@
-   */
- 
- #ifdef __STDC__
-+extern int hosts_access(struct request_info *request);
-+extern int hosts_ctl(char *daemon, char *client_name, char *client_addr, 
-+                     char *client_user);
- extern struct request_info *request_init(struct request_info *,...);
- extern struct request_info *request_set(struct request_info *,...);
- #else
-+extern int hosts_access();
-+extern int hosts_ctl();
- extern struct request_info *request_init();	/* initialize request */
- extern struct request_info *request_set();	/* update request structure */
- #endif
-@@ -117,27 +146,31 @@
-   * host_info structures serve as caches for the lookup results.
-   */
- 
--extern char *eval_user();		/* client user */
--extern char *eval_hostname();		/* printable hostname */
--extern char *eval_hostaddr();		/* printable host address */
--extern char *eval_hostinfo();		/* host name or address */
--extern char *eval_client();		/* whatever is available */
--extern char *eval_server();		/* whatever is available */
-+extern char *eval_user __P((struct request_info *));	/* client user */
-+extern char *eval_hostname __P((struct host_info *));	/* printable hostname */
-+extern char *eval_hostaddr __P((struct host_info *));	/* printable host address */
-+extern char *eval_hostinfo __P((struct host_info *));	/* host name or address */
-+extern char *eval_client __P((struct request_info *));	/* whatever is available */
-+extern char *eval_server __P((struct request_info *));	/* whatever is available */
- #define eval_daemon(r)	((r)->daemon)	/* daemon process name */
- #define eval_pid(r)	((r)->pid)	/* process id */
- 
- /* Socket-specific methods, including DNS hostname lookups. */
- 
--extern void sock_host();		/* look up endpoint addresses */
--extern void sock_hostname();		/* translate address to hostname */
--extern void sock_hostaddr();		/* address to printable address */
-+/* look up endpoint addresses */
-+extern void sock_host __P((struct request_info *));
-+/* translate address to hostname */
-+extern void sock_hostname __P((struct host_info *));
-+/* address to printable address */
-+extern void sock_hostaddr __P((struct host_info *));
-+
- #define sock_methods(r) \
- 	{ (r)->hostname = sock_hostname; (r)->hostaddr = sock_hostaddr; }
- 
- /* The System V Transport-Level Interface (TLI) interface. */
- 
- #if defined(TLI) || defined(PTX) || defined(TLI_SEQUENT)
--extern void tli_host();			/* look up endpoint addresses etc. */
-+extern void tli_host __P((struct request_info *));	/* look up endpoint addresses etc. */
- #endif
- 
-  /*
-@@ -178,7 +211,7 @@
-   * behavior.
-   */
- 
--extern void process_options();		/* execute options */
-+extern void process_options __P((char *, struct request_info *)); /* execute options */
- extern int dry_run;			/* verification flag */
- 
- /* Bug workarounds. */
-@@ -217,3 +250,7 @@
- #define strtok	my_strtok
- extern char *my_strtok();
- #endif
-+
-+__END_DECLS
-+
-+#endif /* tcpd.h */
---- tcp-wrappers-7.6.orig/Makefile
-+++ tcp-wrappers-7.6/Makefile
-@@ -1,5 +1,10 @@
-+GLIBC=$(shell grep -s -c __GLIBC__ /usr/include/features.h)
-+
- # @(#) Makefile 1.23 97/03/21 19:27:20
- 
-+# unset the HOSTNAME environment variable
-+HOSTNAME =
-+
- what:
- 	@echo
- 	@echo "Usage: edit the REAL_DAEMON_DIR definition in the Makefile then:"
-@@ -19,7 +24,7 @@
- 	@echo "	generic (most bsd-ish systems with sys5 compatibility)"
- 	@echo "	386bsd aix alpha apollo bsdos convex-ultranet dell-gcc dgux dgux543"
- 	@echo "	dynix epix esix freebsd hpux irix4 irix5 irix6 isc iunix"
--	@echo "	linux machten mips(untested) ncrsvr4 netbsd next osf power_unix_211"
-+	@echo "	linux gnu machten mips(untested) ncrsvr4 netbsd next osf power_unix_211"
- 	@echo "	ptx-2.x ptx-generic pyramid sco sco-nis sco-od2 sco-os5 sinix sunos4"
- 	@echo "	sunos40 sunos5 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2"
- 	@echo "	uts215 uxp"
-@@ -43,8 +48,8 @@
- # Ultrix 4.x SunOS 4.x ConvexOS 10.x Dynix/ptx
- #REAL_DAEMON_DIR=/usr/etc
- #
--# SysV.4 Solaris 2.x OSF AIX
--#REAL_DAEMON_DIR=/usr/sbin
-+# SysV.4 Solaris 2.x OSF AIX Linux
-+REAL_DAEMON_DIR=/usr/sbin
- #
- # BSD 4.4
- #REAL_DAEMON_DIR=/usr/libexec
-@@ -141,10 +146,21 @@
- 	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \
- 	EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all
- 
-+ifneq ($(GLIBC),0)
-+MYLIB=-lnsl
-+endif
-+
- linux:
- 	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
--	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \
--	NETGROUP= TLI= EXTRA_CFLAGS="-DBROKEN_SO_LINGER" all
-+	LIBS=$(MYLIB) RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \
-+	NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= all \
-+	EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_WEAKSYMS -D_REENTRANT"
-+
-+gnu:
-+	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
-+	LIBS=$(MYLIB) RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \
-+	NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= all \
-+	EXTRA_CFLAGS="-DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT"
- 
- # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x.
- hpux hpux8 hpux9 hpux10:
-@@ -391,7 +407,7 @@
- # the ones provided with this source distribution. The environ.c module
- # implements setenv(), getenv(), and putenv().
- 
--AUX_OBJ= setenv.o
-+#AUX_OBJ= setenv.o
- #AUX_OBJ= environ.o
- #AUX_OBJ= environ.o strcasecmp.o
- 
-@@ -454,7 +470,8 @@
- # host name aliases. Compile with -DSOLARIS_24_GETHOSTBYNAME_BUG to work
- # around this. The workaround does no harm on other Solaris versions.
- 
--BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DLIBC_CALLS_STRTOK
-+BUGS =
-+#BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DLIBC_CALLS_STRTOK
- #BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DINET_ADDR_BUG
- #BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DSOLARIS_24_GETHOSTBYNAME_BUG
- 
-@@ -464,7 +481,7 @@
- # If your system supports NIS or YP-style netgroups, enable the following
- # macro definition. Netgroups are used only for host access control.
- #
--#NETGROUP= -DNETGROUP
-+NETGROUP= -DNETGROUP
- 
- ###############################################################
- # System dependencies: whether or not your system has vsyslog()
-@@ -491,7 +508,7 @@
- # Uncomment the next definition to turn on the language extensions
- # (examples: allow, deny, banners, twist and spawn).
- # 
--#STYLE	= -DPROCESS_OPTIONS	# Enable language extensions.
-+STYLE	= -DPROCESS_OPTIONS	# Enable language extensions.
- 
- ################################################################
- # Optional: Changing the default disposition of logfile records
-@@ -514,7 +531,7 @@
- #
- # The LOG_XXX names below are taken from the /usr/include/syslog.h file.
- 
--FACILITY= LOG_MAIL	# LOG_MAIL is what most sendmail daemons use
-+FACILITY= LOG_DAEMON	# LOG_MAIL is what most sendmail daemons use
- 
- # The syslog priority at which successful connections are logged.
- 
-@@ -610,7 +627,7 @@
- # Paranoid mode implies hostname lookup. In order to disable hostname
- # lookups altogether, see the next section.
- 
--PARANOID= -DPARANOID
-+#PARANOID= -DPARANOID
- 
- ########################################
- # Optional: turning off hostname lookups
-@@ -623,7 +640,7 @@
- # In order to perform selective hostname lookups, disable paranoid
- # mode (see previous section) and comment out the following definition.
- 
--HOSTNAME= -DALWAYS_HOSTNAME
-+#HOSTNAME= -DALWAYS_HOSTNAME
- 
- #############################################
- # Optional: Turning on host ADDRESS checking
-@@ -649,28 +666,46 @@
- # source-routed traffic in the kernel. Examples: 4.4BSD derivatives,
- # Solaris 2.x, and Linux. See your system documentation for details.
- #
--# KILL_OPT= -DKILL_IP_OPTIONS
-+KILL_OPT= -DKILL_IP_OPTIONS
- 
- ## End configuration options
- ############################
- 
- # Protection against weird shells or weird make programs.
- 
-+CC	= gcc
- SHELL	= /bin/sh
--.c.o:;	$(CC) $(CFLAGS) -c $*.c
-+.c.o:;	$(CC) $(CFLAGS) -o $*.o -c $*.c
-+
-+SOMAJOR = 0
-+SOMINOR = 7.6
-+
-+LIB	= libwrap.a
-+SHLIB	= shared/libwrap.so.$(SOMAJOR).$(SOMINOR)
-+SHLIBSOMAJ= shared/libwrap.so.$(SOMAJOR)
-+SHLIBSO	= shared/libwrap.so
-+SHLIBFLAGS = -Lshared -lwrap
- 
--CFLAGS	= -O -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
-+shared/%.o: %.c
-+	$(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@
-+
-+CFLAGS	= -O2 -g -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
- 	$(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \
- 	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \
- 	-DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \
- 	$(UCHAR) $(TABLES) $(STRINGS) $(TLI) $(EXTRA_CFLAGS) $(DOT) \
- 	$(VSYSLOG) $(HOSTNAME)
- 
-+SHLINKFLAGS = -shared -Xlinker -soname -Xlinker libwrap.so.$(SOMAJOR) -lc $(LIBS)
-+SHCFLAGS = -fPIC -shared -D_REENTRANT
-+
- LIB_OBJ= hosts_access.o options.o shell_cmd.o rfc931.o eval.o \
- 	hosts_ctl.o refuse.o percent_x.o clean_exit.o $(AUX_OBJ) \
- 	$(FROM_OBJ) fix_options.o socket.o tli.o workarounds.o \
- 	update.o misc.o diag.o percent_m.o myvsyslog.o
- 
-+SHLIB_OBJ= $(addprefix shared/, $(LIB_OBJ));
-+
- FROM_OBJ= fromhost.o
- 
- KIT	= README miscd.c tcpd.c fromhost.c hosts_access.c shell_cmd.c \
-@@ -684,46 +719,78 @@
- 	refuse.c tcpdchk.8 setenv.c inetcf.c inetcf.h scaffold.c \
- 	scaffold.h tcpdmatch.8 README.NIS
- 
--LIB	= libwrap.a
--
--all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk
-+all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk $(LIB)
- 
- # Invalidate all object files when the compiler options (CFLAGS) have changed.
- 
- config-check:
- 	@set +e; test -n "$(REAL_DAEMON_DIR)" || { make; exit 1; }
--	@set +e; echo $(CFLAGS) >/tmp/cflags.$$$$ ; \
--	if cmp cflags /tmp/cflags.$$$$ ; \
--	then rm /tmp/cflags.$$$$ ; \
--	else mv /tmp/cflags.$$$$ cflags ; \
-+	@set +e; echo $(CFLAGS) >cflags.new ; \
-+	if cmp cflags cflags.new ; \
-+	then rm cflags.new ; \
-+	else mv cflags.new cflags ; \
- 	fi >/dev/null 2>/dev/null
-+	@if [ ! -d shared ]; then mkdir shared; fi
- 
- $(LIB):	$(LIB_OBJ)
- 	rm -f $(LIB)
- 	$(AR) $(ARFLAGS) $(LIB) $(LIB_OBJ)
- 	-$(RANLIB) $(LIB)
- 
--tcpd:	tcpd.o $(LIB)
--	$(CC) $(CFLAGS) -o $@ tcpd.o $(LIB) $(LIBS)
-+$(SHLIB): $(SHLIB_OBJ)
-+	rm -f $(SHLIB)
-+	$(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ)
-+	ln -s $(notdir $(SHLIB)) $(SHLIBSOMAJ)
-+	ln -s $(notdir $(SHLIBSOMAJ)) $(SHLIBSO)
-+
-+tcpd:	tcpd.o $(SHLIB)
-+	$(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS)
- 
--miscd:	miscd.o $(LIB)
--	$(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS)
-+miscd:	miscd.o $(SHLIB)
-+	$(CC) $(CFLAGS) -o $@ miscd.o $(SHLIBFLAGS)
- 
--safe_finger: safe_finger.o $(LIB)
--	$(CC) $(CFLAGS) -o $@ safe_finger.o $(LIB) $(LIBS)
-+safe_finger: safe_finger.o $(SHLIB)
-+	$(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS)
- 
- TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o
- 
--tcpdmatch: $(TCPDMATCH_OBJ) $(LIB)
--	$(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(LIB) $(LIBS)
-+tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB)
-+	$(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS)
- 
--try-from: try-from.o fakelog.o $(LIB)
--	$(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(LIB) $(LIBS)
-+try-from: try-from.o fakelog.o $(SHLIB)
-+	$(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS)
- 
- TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o
- 
--tcpdchk: $(TCPDCHK_OBJ) $(LIB)
--	$(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(LIB) $(LIBS)
-+tcpdchk: $(TCPDCHK_OBJ) $(SHLIB)
-+	$(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS)
-+
-+install: install-lib install-bin install-dev
-+
-+install-lib:
-+	install -o root -g root -m 0644 $(SHLIB) ${DESTDIR}/lib/
-+	ln -s $(notdir $(SHLIB)) ${DESTDIR}/lib/$(notdir $(SHLIBSOMAJ))
-+
-+install-bin:
-+	install -o root -g root -m 0755 tcpd ${DESTDIR}/usr/sbin/
-+	install -o root -g root -m 0755 tcpdchk ${DESTDIR}/usr/sbin/
-+	install -o root -g root -m 0755 tcpdmatch ${DESTDIR}/usr/sbin/
-+	install -o root -g root -m 0755 try-from ${DESTDIR}/usr/sbin/
-+	install -o root -g root -m 0755 safe_finger ${DESTDIR}/usr/sbin/
-+	install -o root -g root -m 0644 tcpd.8 ${DESTDIR}/usr/share/man/man8/
-+	install -o root -g root -m 0644 tcpdchk.8 ${DESTDIR}/usr/share/man/man8/
-+	install -o root -g root -m 0644 tcpdmatch.8 ${DESTDIR}/usr/share/man/man8/
-+	install -o root -g root -m 0644 hosts_access.5 ${DESTDIR}/usr/share/man/man5/
-+	install -o root -g root -m 0644 hosts_options.5 ${DESTDIR}/usr/share/man/man5/
-+
-+install-dev:
-+	ln -s /lib/$(notdir $(SHLIBSOMAJ)) ${DESTDIR}/usr/lib/$(notdir $(SHLIBSO))
-+	install -o root -g root -m 0644 hosts_access.3 ${DESTDIR}/usr/share/man/man3/
-+	install -o root -g root -m 0644 tcpd.h ${DESTDIR}/usr/include/
-+	install -o root -g root -m 0644 $(LIB) ${DESTDIR}/usr/lib/
-+	ln -s hosts_access.3 ${DESTDIR}/usr/share/man/man3/hosts_ctl.3
-+	ln -s hosts_access.3 ${DESTDIR}/usr/share/man/man3/request_init.3
-+	ln -s hosts_access.3 ${DESTDIR}/usr/share/man/man3/request_set.3
- 
- shar:	$(KIT)
- 	@shar $(KIT)
-@@ -739,7 +806,8 @@
- 
- clean:
- 	rm -f tcpd miscd safe_finger tcpdmatch tcpdchk try-from *.[oa] core \
--	cflags
-+	cflags libwrap*.so*
-+	rm -rf shared
- 
- tidy:	clean
- 	chmod -R a+r .
-@@ -885,5 +953,6 @@
- update.o: mystdarg.h
- update.o: tcpd.h
- vfprintf.o: cflags
-+weak_symbols.o: tcpd.h
- workarounds.o: cflags
- workarounds.o: tcpd.h
---- tcp-wrappers-7.6.orig/hosts_access.5
-+++ tcp-wrappers-7.6/hosts_access.5
-@@ -8,9 +8,9 @@
- impatient reader is encouraged to skip to the EXAMPLES section for a
- quick introduction.
- .PP
--An extended version of the access control language is described in the
--\fIhosts_options\fR(5) document. The extensions are turned on at
--program build time by building with -DPROCESS_OPTIONS.
-+The extended version of the access control language is described in the
-+\fIhosts_options\fR(5) document. \fBNote that this language supersedes
-+the meaning of \fIshell_command\fB as documented below.\fR
- .PP
- In the following text, \fIdaemon\fR is the the process name of a
- network daemon process, and \fIclient\fR is the name and/or address of
-@@ -40,7 +40,7 @@
- character. This permits you to break up long lines so that they are
- easier to edit.
- .IP \(bu
--Blank lines or lines that begin with a `#\' character are ignored.
-+Blank lines or lines that begin with a `#' character are ignored.
- This permits you to insert comments and whitespace so that the tables
- are easier to read.
- .IP \(bu
-@@ -69,26 +69,33 @@
- .SH PATTERNS
- The access control language implements the following patterns:
- .IP \(bu
--A string that begins with a `.\' character. A host name is matched if
-+A string that begins with a `.' character. A host name is matched if
- the last components of its name match the specified pattern.  For
--example, the pattern `.tue.nl\' matches the host name
--`wzv.win.tue.nl\'.
-+example, the pattern `.tue.nl' matches the host name
-+`wzv.win.tue.nl'.
- .IP \(bu
--A string that ends with a `.\' character. A host address is matched if
-+A string that ends with a `.' character. A host address is matched if
- its first numeric fields match the given string.  For example, the
--pattern `131.155.\' matches the address of (almost) every host on the
-+pattern `131.155.' matches the address of (almost) every host on the
- Eind\%hoven University network (131.155.x.x).
- .IP \(bu
--A string that begins with an `@\' character is treated as an NIS
-+A string that begins with an `@' character is treated as an NIS
- (formerly YP) netgroup name. A host name is matched if it is a host
- member of the specified netgroup. Netgroup matches are not supported
- for daemon process names or for client user names.
- .IP \(bu
--An expression of the form `n.n.n.n/m.m.m.m\' is interpreted as a
--`net/mask\' pair. A host address is matched if `net\' is equal to the
--bitwise AND of the address and the `mask\'. For example, the net/mask
--pattern `131.155.72.0/255.255.254.0\' matches every address in the
--range `131.155.72.0\' through `131.155.73.255\'.
-+An expression of the form `n.n.n.n/m.m.m.m' is interpreted as a
-+`net/mask' pair. A host address is matched if `net' is equal to the
-+bitwise AND of the address and the `mask'. For example, the net/mask
-+pattern `131.155.72.0/255.255.254.0' matches every address in the
-+range `131.155.72.0' through `131.155.73.255'.
-+.IP \(bu
-+A string that begins with a `/' character is treated as a file
-+name. A host name or address is matched if it matches any host name
-+or address pattern listed in the named file. The file format is
-+zero or more lines with zero or more host name or address patterns
-+separated by whitespace.  A file name pattern can be used anywhere
-+a host name or address pattern can be used.
- .SH WILDCARDS
- The access control language supports explicit wildcards:
- .IP ALL
-@@ -115,19 +122,19 @@
- .ne 6
- .SH OPERATORS
- .IP EXCEPT
--Intended use is of the form: `list_1 EXCEPT list_2\'; this construct
-+Intended use is of the form: `list_1 EXCEPT list_2'; this construct
- matches anything that matches \fIlist_1\fR unless it matches
- \fIlist_2\fR.  The EXCEPT operator can be used in daemon_lists and in
- client_lists. The EXCEPT operator can be nested: if the control
--language would permit the use of parentheses, `a EXCEPT b EXCEPT c\'
--would parse as `(a EXCEPT (b EXCEPT c))\'.
-+language would permit the use of parentheses, `a EXCEPT b EXCEPT c'
-+would parse as `(a EXCEPT (b EXCEPT c))'.
- .br
- .ne 6
- .SH SHELL COMMANDS
- If the first-matched access control rule contains a shell command, that
- command is subjected to %<letter> substitutions (see next section).
- The result is executed by a \fI/bin/sh\fR child process with standard
--input, output and error connected to \fI/dev/null\fR.  Specify an `&\'
-+input, output and error connected to \fI/dev/null\fR.  Specify an `&'
- at the end of the command if you do not want to wait until it has
- completed.
- .PP
-@@ -159,7 +166,7 @@
- .IP %u
- The client user name (or "unknown").
- .IP %%
--Expands to a single `%\' character.
-+Expands to a single `%' character.
- .PP
- Characters in % expansions that may confuse the shell are replaced by
- underscores.
-@@ -243,9 +250,9 @@
- less trustworthy. It is possible for an intruder to spoof both the
- client connection and the IDENT lookup, although doing so is much
- harder than spoofing just a client connection. It may also be that
--the client\'s IDENT server is lying.
-+the client's IDENT server is lying.
- .PP
--Note: IDENT lookups don\'t work with UDP services. 
-+Note: IDENT lookups don't work with UDP services. 
- .SH EXAMPLES
- The language is flexible enough that different types of access control
- policy can be expressed with a minimum of fuss. Although the language
-@@ -285,7 +292,7 @@
- .br
- ALL: .foobar.edu EXCEPT terminalserver.foobar.edu
- .PP
--The first rule permits access from hosts in the local domain (no `.\'
-+The first rule permits access from hosts in the local domain (no `.'
- in the host name) and from members of the \fIsome_netgroup\fP
- netgroup.  The second rule permits access from all hosts in the
- \fIfoobar.edu\fP domain (notice the leading dot), with the exception of
-@@ -322,8 +329,8 @@
- /etc/hosts.deny:
- .in +3
- .nf
--in.tftpd: ALL: (/some/where/safe_finger -l @%h | \\
--	/usr/ucb/mail -s %d-%h root) &
-+in.tftpd: ALL: (/usr/sbin/safe_finger -l @%h | \\
-+	/usr/bin/mail -s %d-%h root) &
- .fi
- .PP
- The safe_finger command comes with the tcpd wrapper and should be
-@@ -349,7 +356,7 @@
- capacity of an internal buffer; when an access control rule is not
- terminated by a newline character; when the result of %<letter>
- expansion would overflow an internal buffer; when a system call fails
--that shouldn\'t.  All problems are reported via the syslog daemon.
-+that shouldn't.  All problems are reported via the syslog daemon.
- .SH FILES
- .na
- .nf
---- tcp-wrappers-7.6.orig/rfc931.c
-+++ tcp-wrappers-7.6/rfc931.c
-@@ -33,7 +33,7 @@
- 
- int     rfc931_timeout = RFC931_TIMEOUT;/* Global so it can be changed */
- 
--static jmp_buf timebuf;
-+static sigjmp_buf timebuf;
- 
- /* fsocket - open stdio stream on top of socket */
- 
-@@ -62,7 +62,7 @@
- static void timeout(sig)
- int     sig;
- {
--    longjmp(timebuf, sig);
-+    siglongjmp(timebuf, sig);
- }
- 
- /* rfc931 - return remote user name, given socket structures */
-@@ -99,7 +99,7 @@
- 	 * Set up a timer so we won't get stuck while waiting for the server.
- 	 */
- 
--	if (setjmp(timebuf) == 0) {
-+	if (sigsetjmp(timebuf,1) == 0) {
- 	    signal(SIGALRM, timeout);
- 	    alarm(rfc931_timeout);
- 
---- tcp-wrappers-7.6.orig/tcpd.8
-+++ tcp-wrappers-7.6/tcpd.8
-@@ -94,7 +94,7 @@
- .PP
- The example assumes that the network daemons live in /usr/etc. On some
- systems, network daemons live in /usr/sbin or in /usr/libexec, or have
--no `in.\' prefix to their name.
-+no `in.' prefix to their name.
- .SH EXAMPLE 2
- This example applies when \fItcpd\fR expects that the network daemons
- are left in their original place.
-@@ -110,26 +110,26 @@
- becomes:
- .sp
- .ti +5
--finger  stream  tcp  nowait  nobody  /some/where/tcpd     in.fingerd
-+finger  stream  tcp  nowait  nobody  /usr/sbin/tcpd       in.fingerd
- .sp
- .fi
- .PP
- The example assumes that the network daemons live in /usr/etc. On some
- systems, network daemons live in /usr/sbin or in /usr/libexec, the
--daemons have no `in.\' prefix to their name, or there is no userid
-+daemons have no `in.' prefix to their name, or there is no userid
- field in the inetd configuration file.
- .PP
- Similar changes will be needed for the other services that are to be
--covered by \fItcpd\fR.  Send a `kill -HUP\' to the \fIinetd\fR(8)
-+covered by \fItcpd\fR.  Send a `kill -HUP' to the \fIinetd\fR(8)
- process to make the changes effective. AIX users may also have to
--execute the `inetimp\' command.
-+execute the `inetimp' command.
- .SH EXAMPLE 3
- In the case of daemons that do not live in a common directory ("secret"
- or otherwise), edit the \fIinetd\fR configuration file so that it
- specifies an absolute path name for the process name field. For example:
- .nf
- .sp
--    ntalk  dgram  udp  wait  root  /some/where/tcpd  /usr/local/lib/ntalkd
-+    ntalk  dgram  udp  wait  root  /usr/sbin/tcpd  /usr/sbin/in.ntalkd
- .sp
- .fi
- .PP
---- tcp-wrappers-7.6.orig/hosts_access.3
-+++ tcp-wrappers-7.6/hosts_access.3
-@@ -3,7 +3,7 @@
- hosts_access, hosts_ctl, request_init, request_set \- access control library
- .SH SYNOPSIS
- .nf
--#include "tcpd.h"
-+#include <tcpd.h>
- 
- extern int allow_severity;
- extern int deny_severity;
---- tcp-wrappers-7.6.orig/options.c
-+++ tcp-wrappers-7.6/options.c
-@@ -473,6 +473,9 @@
- #ifdef LOG_CRON
-     "cron", LOG_CRON,
- #endif
-+#ifdef LOG_FTP
-+    "ftp", LOG_FTP,
-+#endif
- #ifdef LOG_LOCAL0
-     "local0", LOG_LOCAL0,
- #endif
---- tcp-wrappers-7.6.orig/fix_options.c
-+++ tcp-wrappers-7.6/fix_options.c
-@@ -35,7 +35,12 @@
- #ifdef IP_OPTIONS
-     unsigned char optbuf[BUFFER_SIZE / 3], *cp;
-     char    lbuf[BUFFER_SIZE], *lp;
-+#if !defined(__GLIBC__)
-     int     optsize = sizeof(optbuf), ipproto;
-+#else /* __GLIBC__ */
-+    size_t  optsize = sizeof(optbuf);
-+    int     ipproto;
-+#endif /* __GLIBC__ */
-     struct protoent *ip;
-     int     fd = request->fd;
-     unsigned int opt;
---- tcp-wrappers-7.6.orig/workarounds.c
-+++ tcp-wrappers-7.6/workarounds.c
-@@ -163,7 +163,11 @@
- int     fix_getpeername(sock, sa, len)
- int     sock;
- struct sockaddr *sa;
-+#if !defined(__GLIBC__)
- int    *len;
-+#else /* __GLIBC__ */
-+size_t *len;
-+#endif /* __GLIBC__ */
- {
-     int     ret;
-     struct sockaddr_in *sin = (struct sockaddr_in *) sa;
---- tcp-wrappers-7.6.orig/socket.c
-+++ tcp-wrappers-7.6/socket.c
-@@ -76,7 +76,11 @@
- {
-     static struct sockaddr_in client;
-     static struct sockaddr_in server;
-+#if !defined (__GLIBC__)
-     int     len;
-+#else /* __GLIBC__ */
-+    size_t  len;
-+#endif /* __GLIBC__ */
-     char    buf[BUFSIZ];
-     int     fd = request->fd;
- 
-@@ -224,7 +228,11 @@
- {
-     char    buf[BUFSIZ];
-     struct sockaddr_in sin;
-+#if !defined(__GLIBC__)
-     int     size = sizeof(sin);
-+#else /* __GLIBC__ */
-+    size_t  size = sizeof(sin);
-+#endif /* __GLIBC__ */
- 
-     /*
-      * Eat up the not-yet received datagram. Some systems insist on a
---- tcp-wrappers-7.6.orig/safe_finger.c
-+++ tcp-wrappers-7.6/safe_finger.c
-@@ -26,21 +26,24 @@
- #include <stdio.h>
- #include <ctype.h>
- #include <pwd.h>
-+#include <syslog.h>
- 
- extern void exit();
- 
- /* Local stuff */
- 
--char    path[] = "PATH=/bin:/usr/bin:/usr/ucb:/usr/bsd:/etc:/usr/etc:/usr/sbin";
-+char    path[] = "PATH=/bin:/usr/bin:/sbin:/usr/sbin";
- 
- #define	TIME_LIMIT	60		/* Do not keep listinging forever */
- #define	INPUT_LENGTH	100000		/* Do not keep listinging forever */
- #define	LINE_LENGTH	128		/* Editors can choke on long lines */
- #define	FINGER_PROGRAM	"finger"	/* Most, if not all, UNIX systems */
- #define	UNPRIV_NAME	"nobody"	/* Preferred privilege level */
--#define	UNPRIV_UGID	32767		/* Default uid and gid */
-+#define	UNPRIV_UGID	65534		/* Default uid and gid */
- 
- int     finger_pid;
-+int	allow_severity = SEVERITY;
-+int	deny_severity = LOG_WARNING;
- 
- void    cleanup(sig)
- int     sig;
---- tcp-wrappers-7.6.orig/hosts_options.5
-+++ tcp-wrappers-7.6/hosts_options.5
-@@ -58,12 +58,12 @@
- Execute, in a child process, the specified shell command, after
- performing the %<letter> expansions described in the hosts_access(5)
- manual page.  The command is executed with stdin, stdout and stderr
--connected to the null device, so that it won\'t mess up the
-+connected to the null device, so that it won't mess up the
- conversation with the client host. Example:
- .sp
- .nf
- .ti +3
--spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) &
-+spawn (/usr/sbin/safe_finger -l @%h | /usr/bin/mail root) &
- .fi
- .sp
- executes, in a background child process, the shell command "safe_finger
---- tcp-wrappers-7.6.orig/tcpdchk.c
-+++ tcp-wrappers-7.6/tcpdchk.c
-@@ -350,6 +350,8 @@
- {
-     if (pat[0] == '@') {
- 	tcpd_warn("%s: daemon name begins with \"@\"", pat);
-+    } else if (pat[0] == '/') {
-+        tcpd_warn("%s: daemon name begins with \"/\"", pat);
-     } else if (pat[0] == '.') {
- 	tcpd_warn("%s: daemon name begins with dot", pat);
-     } else if (pat[strlen(pat) - 1] == '.') {
-@@ -382,6 +384,8 @@
- {
-     if (pat[0] == '@') {			/* @netgroup */
- 	tcpd_warn("%s: user name begins with \"@\"", pat);
-+    } else if (pat[0] == '/') {
-+        tcpd_warn("%s: user name begins with \"/\"", pat);
-     } else if (pat[0] == '.') {
- 	tcpd_warn("%s: user name begins with dot", pat);
-     } else if (pat[strlen(pat) - 1] == '.') {
-@@ -402,8 +406,13 @@
- static int check_host(pat)
- char   *pat;
- {
-+    char    buf[BUFSIZ];
-     char   *mask;
-     int     addr_count = 1;
-+    FILE   *fp;
-+    struct tcpd_context saved_context;
-+    char   *cp;
-+    char   *wsp = " \t\r\n";
- 
-     if (pat[0] == '@') {			/* @netgroup */
- #ifdef NO_NETGRENT
-@@ -422,6 +431,21 @@
- 	tcpd_warn("netgroup support disabled");
- #endif
- #endif
-+    } else if (pat[0] == '/') {                 /* /path/name */
-+        if ((fp = fopen(pat, "r")) != 0) {
-+            saved_context = tcpd_context;
-+            tcpd_context.file = pat;
-+            tcpd_context.line = 0;
-+            while (fgets(buf, sizeof(buf), fp)) {
-+                tcpd_context.line++;
-+                for (cp = strtok(buf, wsp); cp; cp = strtok((char *) 0, wsp))
-+                    check_host(cp);
-+            }
-+            tcpd_context = saved_context;
-+            fclose(fp);
-+        } else if (errno != ENOENT) {
-+            tcpd_warn("open %s: %m", pat);
-+        }
-     } else if (mask = split_at(pat, '/')) {	/* network/netmask */
- 	if (dot_quad_addr(pat) == INADDR_NONE
- 	    || dot_quad_addr(mask) == INADDR_NONE)
---- tcp-wrappers-7.6.orig/percent_m.c
-+++ tcp-wrappers-7.6/percent_m.c
-@@ -13,7 +13,7 @@
- #include <string.h>
- 
- extern int errno;
--#ifndef SYS_ERRLIST_DEFINED
-+#if !defined(SYS_ERRLIST_DEFINED) && !defined(HAVE_STRERROR)
- extern char *sys_errlist[];
- extern int sys_nerr;
- #endif
-@@ -29,11 +29,15 @@
- 
-     while (*bp = *cp)
- 	if (*cp == '%' && cp[1] == 'm') {
-+#ifdef HAVE_STRERROR
-+            strcpy(bp, strerror(errno));
-+#else
- 	    if (errno < sys_nerr && errno > 0) {
- 		strcpy(bp, sys_errlist[errno]);
- 	    } else {
- 		sprintf(bp, "Unknown error %d", errno);
- 	    }
-+#endif
- 	    bp += strlen(bp);
- 	    cp += 2;
- 	} else {
---- tcp-wrappers-7.6.orig/scaffold.c
-+++ tcp-wrappers-7.6/scaffold.c
-@@ -180,10 +180,12 @@
- 
- /* ARGSUSED */
- 
--void    rfc931(request)
--struct request_info *request;
-+void    rfc931(rmt_sin, our_sin, dest)
-+struct sockaddr_in *rmt_sin;
-+struct sockaddr_in *our_sin;
-+char   *dest;
- {
--    strcpy(request->user, unknown);
-+    strcpy(dest, unknown);
- }
- 
- /* check_path - examine accessibility */
---- tcp-wrappers-7.6.orig/weak_symbols.c
-+++ tcp-wrappers-7.6/weak_symbols.c
-@@ -0,0 +1,11 @@
-+ /*
-+  * @(#) weak_symbols.h 1.5 99/12/29 23:50
-+  * 
-+  * Author: Anthony Towns <ajt@debian.org>
-+  */
-+
-+#ifdef HAVE_WEAKSYMS
-+#include <syslog.h>
-+int deny_severity = LOG_WARNING;
-+int allow_severity = SEVERITY; 
-+#endif

+ 0 - 12
package/tcp_wrappers/patches/opt_cflags.patch

@@ -1,12 +0,0 @@
---- tcp_wrappers_7.6/Makefile.orig	2005-05-21 18:11:32.000000000 +0200
-+++ tcp_wrappers_7.6/Makefile	2005-05-21 18:14:28.000000000 +0200
-@@ -689,7 +689,8 @@
- shared/%.o: %.c
- 	$(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@
- 
--CFLAGS	= -O2 -g -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
-+OPT_CFLAGS = -O2 -g
-+CFLAGS	= $(OPT_CFLAGS) -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
- 	$(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \
- 	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \
- 	-DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \

+ 279 - 0
package/tcp_wrappers/patches/patch-Makefile

@@ -0,0 +1,279 @@
+--- tcp_wrappers_7.6.orig/Makefile	1997-03-21 19:27:21.000000000 +0100
++++ tcp_wrappers_7.6/Makefile	2009-06-05 18:46:05.000000000 +0200
+@@ -1,5 +1,8 @@
+ # @(#) Makefile 1.23 97/03/21 19:27:20
+ 
++# unset the HOSTNAME environment variable
++HOSTNAME =
++
+ what:
+ 	@echo
+ 	@echo "Usage: edit the REAL_DAEMON_DIR definition in the Makefile then:"
+@@ -19,7 +22,7 @@ what:
+ 	@echo "	generic (most bsd-ish systems with sys5 compatibility)"
+ 	@echo "	386bsd aix alpha apollo bsdos convex-ultranet dell-gcc dgux dgux543"
+ 	@echo "	dynix epix esix freebsd hpux irix4 irix5 irix6 isc iunix"
+-	@echo "	linux machten mips(untested) ncrsvr4 netbsd next osf power_unix_211"
++	@echo "	linux gnu machten mips(untested) ncrsvr4 netbsd next osf power_unix_211"
+ 	@echo "	ptx-2.x ptx-generic pyramid sco sco-nis sco-od2 sco-os5 sinix sunos4"
+ 	@echo "	sunos40 sunos5 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2"
+ 	@echo "	uts215 uxp"
+@@ -43,8 +46,8 @@ what:
+ # Ultrix 4.x SunOS 4.x ConvexOS 10.x Dynix/ptx
+ #REAL_DAEMON_DIR=/usr/etc
+ #
+-# SysV.4 Solaris 2.x OSF AIX
+-#REAL_DAEMON_DIR=/usr/sbin
++# SysV.4 Solaris 2.x OSF AIX Linux
++REAL_DAEMON_DIR=/usr/sbin
+ #
+ # BSD 4.4
+ #REAL_DAEMON_DIR=/usr/libexec
+@@ -143,8 +146,15 @@ freebsd:
+ 
+ linux:
+ 	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
+-	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \
+-	NETGROUP= TLI= EXTRA_CFLAGS="-DBROKEN_SO_LINGER" all
++	LIBS=$(MYLIB) RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \
++	NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= all \
++	EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_WEAKSYMS -D_REENTRANT"
++
++gnu:
++	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
++	LIBS=$(MYLIB) RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \
++	NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= all \
++	EXTRA_CFLAGS="-DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT"
+ 
+ # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x.
+ hpux hpux8 hpux9 hpux10:
+@@ -391,7 +401,7 @@ AR	= ar
+ # the ones provided with this source distribution. The environ.c module
+ # implements setenv(), getenv(), and putenv().
+ 
+-AUX_OBJ= setenv.o
++#AUX_OBJ= setenv.o
+ #AUX_OBJ= environ.o
+ #AUX_OBJ= environ.o strcasecmp.o
+ 
+@@ -454,7 +464,8 @@ AUX_OBJ= setenv.o
+ # host name aliases. Compile with -DSOLARIS_24_GETHOSTBYNAME_BUG to work
+ # around this. The workaround does no harm on other Solaris versions.
+ 
+-BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DLIBC_CALLS_STRTOK
++BUGS =
++#BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DLIBC_CALLS_STRTOK
+ #BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DINET_ADDR_BUG
+ #BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DSOLARIS_24_GETHOSTBYNAME_BUG
+ 
+@@ -464,7 +475,7 @@ BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS 
+ # If your system supports NIS or YP-style netgroups, enable the following
+ # macro definition. Netgroups are used only for host access control.
+ #
+-#NETGROUP= -DNETGROUP
++NETGROUP= -DNETGROUP
+ 
+ ###############################################################
+ # System dependencies: whether or not your system has vsyslog()
+@@ -491,7 +502,7 @@ VSYSLOG	= -Dvsyslog=myvsyslog
+ # Uncomment the next definition to turn on the language extensions
+ # (examples: allow, deny, banners, twist and spawn).
+ # 
+-#STYLE	= -DPROCESS_OPTIONS	# Enable language extensions.
++STYLE	= -DPROCESS_OPTIONS	# Enable language extensions.
+ 
+ ################################################################
+ # Optional: Changing the default disposition of logfile records
+@@ -514,7 +525,7 @@ VSYSLOG	= -Dvsyslog=myvsyslog
+ #
+ # The LOG_XXX names below are taken from the /usr/include/syslog.h file.
+ 
+-FACILITY= LOG_MAIL	# LOG_MAIL is what most sendmail daemons use
++FACILITY= LOG_DAEMON	# LOG_MAIL is what most sendmail daemons use
+ 
+ # The syslog priority at which successful connections are logged.
+ 
+@@ -610,7 +621,7 @@ TABLES	= -DHOSTS_DENY=\"/etc/hosts.deny\
+ # Paranoid mode implies hostname lookup. In order to disable hostname
+ # lookups altogether, see the next section.
+ 
+-PARANOID= -DPARANOID
++#PARANOID= -DPARANOID
+ 
+ ########################################
+ # Optional: turning off hostname lookups
+@@ -623,7 +634,7 @@ PARANOID= -DPARANOID
+ # In order to perform selective hostname lookups, disable paranoid
+ # mode (see previous section) and comment out the following definition.
+ 
+-HOSTNAME= -DALWAYS_HOSTNAME
++#HOSTNAME= -DALWAYS_HOSTNAME
+ 
+ #############################################
+ # Optional: Turning on host ADDRESS checking
+@@ -649,28 +660,47 @@ HOSTNAME= -DALWAYS_HOSTNAME
+ # source-routed traffic in the kernel. Examples: 4.4BSD derivatives,
+ # Solaris 2.x, and Linux. See your system documentation for details.
+ #
+-# KILL_OPT= -DKILL_IP_OPTIONS
++KILL_OPT= -DKILL_IP_OPTIONS
+ 
+ ## End configuration options
+ ############################
+ 
+ # Protection against weird shells or weird make programs.
+ 
++CC	= gcc
+ SHELL	= /bin/sh
+-.c.o:;	$(CC) $(CFLAGS) -c $*.c
++.c.o:;	$(CC) $(CFLAGS) -o $*.o -c $*.c
+ 
+-CFLAGS	= -O -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
++SOMAJOR = 0
++SOMINOR = 7.6
++
++LIB	= libwrap.a
++SHLIB	= shared/libwrap.so.$(SOMAJOR).$(SOMINOR)
++SHLIBSOMAJ= shared/libwrap.so.$(SOMAJOR)
++SHLIBSO	= shared/libwrap.so
++SHLIBFLAGS = -Lshared -lwrap
++
++shared/%.o: %.c
++	$(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@
++
++OPT_CFLAGS = -O2 -g
++CFLAGS	= $(OPT_CFLAGS) -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
+ 	$(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \
+ 	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \
+ 	-DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \
+ 	$(UCHAR) $(TABLES) $(STRINGS) $(TLI) $(EXTRA_CFLAGS) $(DOT) \
+ 	$(VSYSLOG) $(HOSTNAME)
+ 
++SHLINKFLAGS = -shared -Xlinker -soname -Xlinker libwrap.so.$(SOMAJOR) -lc $(LIBS)
++SHCFLAGS = -fPIC -shared -D_REENTRANT
++
+ LIB_OBJ= hosts_access.o options.o shell_cmd.o rfc931.o eval.o \
+ 	hosts_ctl.o refuse.o percent_x.o clean_exit.o $(AUX_OBJ) \
+ 	$(FROM_OBJ) fix_options.o socket.o tli.o workarounds.o \
+ 	update.o misc.o diag.o percent_m.o myvsyslog.o
+ 
++SHLIB_OBJ= $(addprefix shared/, $(LIB_OBJ));
++
+ FROM_OBJ= fromhost.o
+ 
+ KIT	= README miscd.c tcpd.c fromhost.c hosts_access.c shell_cmd.c \
+@@ -684,46 +714,78 @@ KIT	= README miscd.c tcpd.c fromhost.c h
+ 	refuse.c tcpdchk.8 setenv.c inetcf.c inetcf.h scaffold.c \
+ 	scaffold.h tcpdmatch.8 README.NIS
+ 
+-LIB	= libwrap.a
+-
+-all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk
++all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk $(LIB)
+ 
+ # Invalidate all object files when the compiler options (CFLAGS) have changed.
+ 
+ config-check:
+ 	@set +e; test -n "$(REAL_DAEMON_DIR)" || { make; exit 1; }
+-	@set +e; echo $(CFLAGS) >/tmp/cflags.$$$$ ; \
+-	if cmp cflags /tmp/cflags.$$$$ ; \
+-	then rm /tmp/cflags.$$$$ ; \
+-	else mv /tmp/cflags.$$$$ cflags ; \
++	@set +e; echo $(CFLAGS) >cflags.new ; \
++	if cmp cflags cflags.new ; \
++	then rm cflags.new ; \
++	else mv cflags.new cflags ; \
+ 	fi >/dev/null 2>/dev/null
++	@if [ ! -d shared ]; then mkdir shared; fi
+ 
+ $(LIB):	$(LIB_OBJ)
+ 	rm -f $(LIB)
+ 	$(AR) $(ARFLAGS) $(LIB) $(LIB_OBJ)
+ 	-$(RANLIB) $(LIB)
+ 
+-tcpd:	tcpd.o $(LIB)
+-	$(CC) $(CFLAGS) -o $@ tcpd.o $(LIB) $(LIBS)
++$(SHLIB): $(SHLIB_OBJ)
++	rm -f $(SHLIB)
++	$(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ)
++	ln -s $(notdir $(SHLIB)) $(SHLIBSOMAJ)
++	ln -s $(notdir $(SHLIBSOMAJ)) $(SHLIBSO)
+ 
+-miscd:	miscd.o $(LIB)
+-	$(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS)
++tcpd:	tcpd.o $(SHLIB)
++	$(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS)
+ 
+-safe_finger: safe_finger.o $(LIB)
+-	$(CC) $(CFLAGS) -o $@ safe_finger.o $(LIB) $(LIBS)
++miscd:	miscd.o $(SHLIB)
++	$(CC) $(CFLAGS) -o $@ miscd.o $(SHLIBFLAGS)
++
++safe_finger: safe_finger.o $(SHLIB)
++	$(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS)
+ 
+ TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o
+ 
+-tcpdmatch: $(TCPDMATCH_OBJ) $(LIB)
+-	$(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(LIB) $(LIBS)
++tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB)
++	$(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS)
+ 
+-try-from: try-from.o fakelog.o $(LIB)
+-	$(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(LIB) $(LIBS)
++try-from: try-from.o fakelog.o $(SHLIB)
++	$(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS)
+ 
+ TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o
+ 
+-tcpdchk: $(TCPDCHK_OBJ) $(LIB)
+-	$(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(LIB) $(LIBS)
++tcpdchk: $(TCPDCHK_OBJ) $(SHLIB)
++	$(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS)
++
++install: install-lib install-bin install-dev
++
++install-lib:
++	install -o root -g root -m 0644 $(SHLIB) ${DESTDIR}/lib/
++	ln -s $(notdir $(SHLIB)) ${DESTDIR}/lib/$(notdir $(SHLIBSOMAJ))
++
++install-bin:
++	install -o root -g root -m 0755 tcpd ${DESTDIR}/usr/sbin/
++	install -o root -g root -m 0755 tcpdchk ${DESTDIR}/usr/sbin/
++	install -o root -g root -m 0755 tcpdmatch ${DESTDIR}/usr/sbin/
++	install -o root -g root -m 0755 try-from ${DESTDIR}/usr/sbin/
++	install -o root -g root -m 0755 safe_finger ${DESTDIR}/usr/sbin/
++	install -o root -g root -m 0644 tcpd.8 ${DESTDIR}/usr/share/man/man8/
++	install -o root -g root -m 0644 tcpdchk.8 ${DESTDIR}/usr/share/man/man8/
++	install -o root -g root -m 0644 tcpdmatch.8 ${DESTDIR}/usr/share/man/man8/
++	install -o root -g root -m 0644 hosts_access.5 ${DESTDIR}/usr/share/man/man5/
++	install -o root -g root -m 0644 hosts_options.5 ${DESTDIR}/usr/share/man/man5/
++
++install-dev:
++	ln -s /lib/$(notdir $(SHLIBSOMAJ)) ${DESTDIR}/usr/lib/$(notdir $(SHLIBSO))
++	install -o root -g root -m 0644 hosts_access.3 ${DESTDIR}/usr/share/man/man3/
++	install -o root -g root -m 0644 tcpd.h ${DESTDIR}/usr/include/
++	install -o root -g root -m 0644 $(LIB) ${DESTDIR}/usr/lib/
++	ln -s hosts_access.3 ${DESTDIR}/usr/share/man/man3/hosts_ctl.3
++	ln -s hosts_access.3 ${DESTDIR}/usr/share/man/man3/request_init.3
++	ln -s hosts_access.3 ${DESTDIR}/usr/share/man/man3/request_set.3
+ 
+ shar:	$(KIT)
+ 	@shar $(KIT)
+@@ -739,7 +801,8 @@ archive:
+ 
+ clean:
+ 	rm -f tcpd miscd safe_finger tcpdmatch tcpdchk try-from *.[oa] core \
+-	cflags
++	cflags libwrap*.so*
++	rm -rf shared
+ 
+ tidy:	clean
+ 	chmod -R a+r .
+@@ -885,5 +948,6 @@ update.o: cflags
+ update.o: mystdarg.h
+ update.o: tcpd.h
+ vfprintf.o: cflags
++weak_symbols.o: tcpd.h
+ workarounds.o: cflags
+ workarounds.o: tcpd.h

+ 4 - 0
package/tcp_wrappers/patches/patch-cflags

@@ -0,0 +1,4 @@
+--- tcp_wrappers_7.6.orig/cflags	1970-01-01 00:00:00.000000000 +0100
++++ tcp_wrappers_7.6/cflags	2009-06-05 18:45:36.000000000 +0200
+@@ -0,0 +1 @@
++-fwrapv -fno-ident -Os -pipe -march=geode -fomit-frame-pointer -fstack-protector-all -DFACILITY=LOG_DAEMON -DHOSTS_ACCESS -DDAEMON_UMASK=022 -DREAL_DAEMON_DIR="/usr/sbin" -DPROCESS_OPTIONS -DKILL_IP_OPTIONS -DSEVERITY=LOG_INFO -DRFC931_TIMEOUT=10 -DHOSTS_DENY="/etc/hosts.deny" -DHOSTS_ALLOW="/etc/hosts.allow" -DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len

+ 15 - 0
package/tcp_wrappers/patches/patch-fix_options_c

@@ -0,0 +1,15 @@
+--- tcp_wrappers_7.6.orig/fix_options.c	1997-04-08 02:29:19.000000000 +0200
++++ tcp_wrappers_7.6/fix_options.c	2009-06-05 18:45:03.000000000 +0200
+@@ -35,7 +35,12 @@ struct request_info *request;
+ #ifdef IP_OPTIONS
+     unsigned char optbuf[BUFFER_SIZE / 3], *cp;
+     char    lbuf[BUFFER_SIZE], *lp;
++#if !defined(__GLIBC__)
+     int     optsize = sizeof(optbuf), ipproto;
++#else /* __GLIBC__ */
++    size_t  optsize = sizeof(optbuf);
++    int     ipproto;
++#endif /* __GLIBC__ */
+     struct protoent *ip;
+     int     fd = request->fd;
+     unsigned int opt;

+ 11 - 0
package/tcp_wrappers/patches/patch-hosts_access_3

@@ -0,0 +1,11 @@
+--- tcp_wrappers_7.6.orig/hosts_access.3	1996-02-11 17:01:27.000000000 +0100
++++ tcp_wrappers_7.6/hosts_access.3	2009-06-05 18:45:03.000000000 +0200
+@@ -3,7 +3,7 @@
+ hosts_access, hosts_ctl, request_init, request_set \- access control library
+ .SH SYNOPSIS
+ .nf
+-#include "tcpd.h"
++#include <tcpd.h>
+ 
+ extern int allow_severity;
+ extern int deny_severity;

+ 143 - 0
package/tcp_wrappers/patches/patch-hosts_access_5

@@ -0,0 +1,143 @@
+--- tcp_wrappers_7.6.orig/hosts_access.5	1995-01-30 19:51:47.000000000 +0100
++++ tcp_wrappers_7.6/hosts_access.5	2009-06-05 18:45:03.000000000 +0200
+@@ -8,9 +8,9 @@ name, host name/address) patterns.  Exam
+ impatient reader is encouraged to skip to the EXAMPLES section for a
+ quick introduction.
+ .PP
+-An extended version of the access control language is described in the
+-\fIhosts_options\fR(5) document. The extensions are turned on at
+-program build time by building with -DPROCESS_OPTIONS.
++The extended version of the access control language is described in the
++\fIhosts_options\fR(5) document. \fBNote that this language supersedes
++the meaning of \fIshell_command\fB as documented below.\fR
+ .PP
+ In the following text, \fIdaemon\fR is the the process name of a
+ network daemon process, and \fIclient\fR is the name and/or address of
+@@ -40,7 +40,7 @@ A newline character is ignored when it i
+ character. This permits you to break up long lines so that they are
+ easier to edit.
+ .IP \(bu
+-Blank lines or lines that begin with a `#\' character are ignored.
++Blank lines or lines that begin with a `#' character are ignored.
+ This permits you to insert comments and whitespace so that the tables
+ are easier to read.
+ .IP \(bu
+@@ -69,26 +69,33 @@ checks are case insensitive.
+ .SH PATTERNS
+ The access control language implements the following patterns:
+ .IP \(bu
+-A string that begins with a `.\' character. A host name is matched if
++A string that begins with a `.' character. A host name is matched if
+ the last components of its name match the specified pattern.  For
+-example, the pattern `.tue.nl\' matches the host name
+-`wzv.win.tue.nl\'.
++example, the pattern `.tue.nl' matches the host name
++`wzv.win.tue.nl'.
+ .IP \(bu
+-A string that ends with a `.\' character. A host address is matched if
++A string that ends with a `.' character. A host address is matched if
+ its first numeric fields match the given string.  For example, the
+-pattern `131.155.\' matches the address of (almost) every host on the
++pattern `131.155.' matches the address of (almost) every host on the
+ Eind\%hoven University network (131.155.x.x).
+ .IP \(bu
+-A string that begins with an `@\' character is treated as an NIS
++A string that begins with an `@' character is treated as an NIS
+ (formerly YP) netgroup name. A host name is matched if it is a host
+ member of the specified netgroup. Netgroup matches are not supported
+ for daemon process names or for client user names.
+ .IP \(bu
+-An expression of the form `n.n.n.n/m.m.m.m\' is interpreted as a
+-`net/mask\' pair. A host address is matched if `net\' is equal to the
+-bitwise AND of the address and the `mask\'. For example, the net/mask
+-pattern `131.155.72.0/255.255.254.0\' matches every address in the
+-range `131.155.72.0\' through `131.155.73.255\'.
++An expression of the form `n.n.n.n/m.m.m.m' is interpreted as a
++`net/mask' pair. A host address is matched if `net' is equal to the
++bitwise AND of the address and the `mask'. For example, the net/mask
++pattern `131.155.72.0/255.255.254.0' matches every address in the
++range `131.155.72.0' through `131.155.73.255'.
++.IP \(bu
++A string that begins with a `/' character is treated as a file
++name. A host name or address is matched if it matches any host name
++or address pattern listed in the named file. The file format is
++zero or more lines with zero or more host name or address patterns
++separated by whitespace.  A file name pattern can be used anywhere
++a host name or address pattern can be used.
+ .SH WILDCARDS
+ The access control language supports explicit wildcards:
+ .IP ALL
+@@ -115,19 +122,19 @@ without -DPARANOID when you want more co
+ .ne 6
+ .SH OPERATORS
+ .IP EXCEPT
+-Intended use is of the form: `list_1 EXCEPT list_2\'; this construct
++Intended use is of the form: `list_1 EXCEPT list_2'; this construct
+ matches anything that matches \fIlist_1\fR unless it matches
+ \fIlist_2\fR.  The EXCEPT operator can be used in daemon_lists and in
+ client_lists. The EXCEPT operator can be nested: if the control
+-language would permit the use of parentheses, `a EXCEPT b EXCEPT c\'
+-would parse as `(a EXCEPT (b EXCEPT c))\'.
++language would permit the use of parentheses, `a EXCEPT b EXCEPT c'
++would parse as `(a EXCEPT (b EXCEPT c))'.
+ .br
+ .ne 6
+ .SH SHELL COMMANDS
+ If the first-matched access control rule contains a shell command, that
+ command is subjected to %<letter> substitutions (see next section).
+ The result is executed by a \fI/bin/sh\fR child process with standard
+-input, output and error connected to \fI/dev/null\fR.  Specify an `&\'
++input, output and error connected to \fI/dev/null\fR.  Specify an `&'
+ at the end of the command if you do not want to wait until it has
+ completed.
+ .PP
+@@ -159,7 +166,7 @@ depending on how much information is ava
+ .IP %u
+ The client user name (or "unknown").
+ .IP %%
+-Expands to a single `%\' character.
++Expands to a single `%' character.
+ .PP
+ Characters in % expansions that may confuse the shell are replaced by
+ underscores.
+@@ -243,9 +250,9 @@ A positive IDENT lookup result (the clie
+ less trustworthy. It is possible for an intruder to spoof both the
+ client connection and the IDENT lookup, although doing so is much
+ harder than spoofing just a client connection. It may also be that
+-the client\'s IDENT server is lying.
++the client's IDENT server is lying.
+ .PP
+-Note: IDENT lookups don\'t work with UDP services. 
++Note: IDENT lookups don't work with UDP services. 
+ .SH EXAMPLES
+ The language is flexible enough that different types of access control
+ policy can be expressed with a minimum of fuss. Although the language
+@@ -285,7 +292,7 @@ ALL: LOCAL @some_netgroup
+ .br
+ ALL: .foobar.edu EXCEPT terminalserver.foobar.edu
+ .PP
+-The first rule permits access from hosts in the local domain (no `.\'
++The first rule permits access from hosts in the local domain (no `.'
+ in the host name) and from members of the \fIsome_netgroup\fP
+ netgroup.  The second rule permits access from all hosts in the
+ \fIfoobar.edu\fP domain (notice the leading dot), with the exception of
+@@ -322,8 +329,8 @@ in.tftpd: LOCAL, .my.domain
+ /etc/hosts.deny:
+ .in +3
+ .nf
+-in.tftpd: ALL: (/some/where/safe_finger -l @%h | \\
+-	/usr/ucb/mail -s %d-%h root) &
++in.tftpd: ALL: (/usr/sbin/safe_finger -l @%h | \\
++	/usr/bin/mail -s %d-%h root) &
+ .fi
+ .PP
+ The safe_finger command comes with the tcpd wrapper and should be
+@@ -349,7 +356,7 @@ control rule; when the length of an acce
+ capacity of an internal buffer; when an access control rule is not
+ terminated by a newline character; when the result of %<letter>
+ expansion would overflow an internal buffer; when a system call fails
+-that shouldn\'t.  All problems are reported via the syslog daemon.
++that shouldn't.  All problems are reported via the syslog daemon.
+ .SH FILES
+ .na
+ .nf

+ 38 - 0
package/tcp_wrappers/patches/patch-hosts_access_c

@@ -0,0 +1,38 @@
+--- tcp_wrappers_7.6.orig/hosts_access.c	1997-02-12 02:13:23.000000000 +0100
++++ tcp_wrappers_7.6/hosts_access.c	2009-06-05 18:45:03.000000000 +0200
+@@ -240,6 +240,26 @@ struct request_info *request;
+     }
+ }
+ 
++/* hostfile_match - look up host patterns from file */
++
++static int hostfile_match(path, host)
++char   *path;
++struct hosts_info *host;
++{
++    char    tok[BUFSIZ];
++    int     match = NO;
++    FILE   *fp;
++
++    if ((fp = fopen(path, "r")) != 0) {
++        while (fscanf(fp, "%s", tok) == 1 && !(match = host_match(tok, host)))
++            /* void */ ;
++        fclose(fp);
++    } else if (errno != ENOENT) {
++        tcpd_warn("open %s: %m", path);
++    }
++    return (match);
++}
++
+ /* host_match - match host name and/or address against pattern */
+ 
+ static int host_match(tok, host)
+@@ -267,6 +287,8 @@ struct host_info *host;
+ 	tcpd_warn("netgroup support is disabled");	/* not tcpd_jump() */
+ 	return (NO);
+ #endif
++    } else if (tok[0] == '/') {                         /* /file hack */
++        return (hostfile_match(tok, host));
+     } else if (STR_EQ(tok, "KNOWN")) {		/* check address and name */
+ 	char   *name = eval_hostname(host);
+ 	return (STR_NE(eval_hostaddr(host), unknown) && HOSTNAME_KNOWN(name));

+ 17 - 0
package/tcp_wrappers/patches/patch-hosts_options_5

@@ -0,0 +1,17 @@
+--- tcp_wrappers_7.6.orig/hosts_options.5	1994-12-28 17:42:29.000000000 +0100
++++ tcp_wrappers_7.6/hosts_options.5	2009-06-05 18:45:03.000000000 +0200
+@@ -58,12 +58,12 @@ Notice the leading dot on the domain nam
+ Execute, in a child process, the specified shell command, after
+ performing the %<letter> expansions described in the hosts_access(5)
+ manual page.  The command is executed with stdin, stdout and stderr
+-connected to the null device, so that it won\'t mess up the
++connected to the null device, so that it won't mess up the
+ conversation with the client host. Example:
+ .sp
+ .nf
+ .ti +3
+-spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) &
++spawn (/usr/sbin/safe_finger -l @%h | /usr/bin/mail root) &
+ .fi
+ .sp
+ executes, in a background child process, the shell command "safe_finger

+ 12 - 0
package/tcp_wrappers/patches/patch-options_c

@@ -0,0 +1,12 @@
+--- tcp_wrappers_7.6.orig/options.c	1996-02-11 17:01:32.000000000 +0100
++++ tcp_wrappers_7.6/options.c	2009-06-05 18:45:03.000000000 +0200
+@@ -473,6 +473,9 @@ static struct syslog_names log_fac[] = {
+ #ifdef LOG_CRON
+     "cron", LOG_CRON,
+ #endif
++#ifdef LOG_FTP
++    "ftp", LOG_FTP,
++#endif
+ #ifdef LOG_LOCAL0
+     "local0", LOG_LOCAL0,
+ #endif

+ 27 - 0
package/tcp_wrappers/patches/patch-percent_m_c

@@ -0,0 +1,27 @@
+--- tcp_wrappers_7.6.orig/percent_m.c	1994-12-28 17:42:37.000000000 +0100
++++ tcp_wrappers_7.6/percent_m.c	2009-06-05 18:45:03.000000000 +0200
+@@ -13,7 +13,7 @@ static char sccsid[] = "@(#) percent_m.c
+ #include <string.h>
+ 
+ extern int errno;
+-#ifndef SYS_ERRLIST_DEFINED
++#if !defined(SYS_ERRLIST_DEFINED) && !defined(HAVE_STRERROR)
+ extern char *sys_errlist[];
+ extern int sys_nerr;
+ #endif
+@@ -29,11 +29,15 @@ char   *ibuf;
+ 
+     while (*bp = *cp)
+ 	if (*cp == '%' && cp[1] == 'm') {
++#ifdef HAVE_STRERROR
++            strcpy(bp, strerror(errno));
++#else
+ 	    if (errno < sys_nerr && errno > 0) {
+ 		strcpy(bp, sys_errlist[errno]);
+ 	    } else {
+ 		sprintf(bp, "Unknown error %d", errno);
+ 	    }
++#endif
+ 	    bp += strlen(bp);
+ 	    cp += 2;
+ 	} else {

+ 29 - 0
package/tcp_wrappers/patches/patch-rfc931_c

@@ -0,0 +1,29 @@
+--- tcp_wrappers_7.6.orig/rfc931.c	1995-01-02 16:11:34.000000000 +0100
++++ tcp_wrappers_7.6/rfc931.c	2009-06-05 18:45:03.000000000 +0200
+@@ -33,7 +33,7 @@ static char sccsid[] = "@(#) rfc931.c 1.
+ 
+ int     rfc931_timeout = RFC931_TIMEOUT;/* Global so it can be changed */
+ 
+-static jmp_buf timebuf;
++static sigjmp_buf timebuf;
+ 
+ /* fsocket - open stdio stream on top of socket */
+ 
+@@ -62,7 +62,7 @@ int     protocol;
+ static void timeout(sig)
+ int     sig;
+ {
+-    longjmp(timebuf, sig);
++    siglongjmp(timebuf, sig);
+ }
+ 
+ /* rfc931 - return remote user name, given socket structures */
+@@ -99,7 +99,7 @@ char   *dest;
+ 	 * Set up a timer so we won't get stuck while waiting for the server.
+ 	 */
+ 
+-	if (setjmp(timebuf) == 0) {
++	if (sigsetjmp(timebuf,1) == 0) {
+ 	    signal(SIGALRM, timeout);
+ 	    alarm(rfc931_timeout);
+ 

+ 29 - 0
package/tcp_wrappers/patches/patch-safe_finger_c

@@ -0,0 +1,29 @@
+--- tcp_wrappers_7.6.orig/safe_finger.c	1994-12-28 17:42:42.000000000 +0100
++++ tcp_wrappers_7.6/safe_finger.c	2009-06-05 18:45:03.000000000 +0200
+@@ -26,21 +26,24 @@ static char sccsid[] = "@(#) safe_finger
+ #include <stdio.h>
+ #include <ctype.h>
+ #include <pwd.h>
++#include <syslog.h>
+ 
+ extern void exit();
+ 
+ /* Local stuff */
+ 
+-char    path[] = "PATH=/bin:/usr/bin:/usr/ucb:/usr/bsd:/etc:/usr/etc:/usr/sbin";
++char    path[] = "PATH=/bin:/usr/bin:/sbin:/usr/sbin";
+ 
+ #define	TIME_LIMIT	60		/* Do not keep listinging forever */
+ #define	INPUT_LENGTH	100000		/* Do not keep listinging forever */
+ #define	LINE_LENGTH	128		/* Editors can choke on long lines */
+ #define	FINGER_PROGRAM	"finger"	/* Most, if not all, UNIX systems */
+ #define	UNPRIV_NAME	"nobody"	/* Preferred privilege level */
+-#define	UNPRIV_UGID	32767		/* Default uid and gid */
++#define	UNPRIV_UGID	65534		/* Default uid and gid */
+ 
+ int     finger_pid;
++int	allow_severity = SEVERITY;
++int	deny_severity = LOG_WARNING;
+ 
+ void    cleanup(sig)
+ int     sig;

Some files were not shown because too many files changed in this diff