diff --git a/ChangeLog b/ChangeLog
index eef60299..7cc25b95 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2000-12-06  Akim Demaille  <akim@epita.fr>
+
+	* man/config.guess.x: New file.
+	* man/config.sub.x: New file.
+
 2000-12-06  Akim Demaille  <akim@epita.fr>
 
 	* tests/aclocal.m4 (AT_STATE_SAVE): Don't even try to preserve
diff --git a/config.guess b/config.guess
index 8f06065b..4802d0d7 100755
--- a/config.guess
+++ b/config.guess
@@ -3,7 +3,7 @@
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
 #   Free Software Foundation, Inc.
 
-timestamp='2000-11-23'
+timestamp='2000-12-06'
 
 # 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
@@ -48,6 +48,7 @@ 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>.
 
@@ -61,8 +62,10 @@ Try \`$me --help' for more information."
 # Parse command line
 while test $# -gt 0 ; do
   case $1 in
-    --time-stamp | --time* | -t)
+    --time-stamp | --time* | -t )
        echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "GNU config.guess (last modified $timestamp)" ; exit 0 ;;
     --help | --h* | -h )
        echo "$usage"; exit 0 ;;
     -- )     # Stop option processing
@@ -141,16 +144,24 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	    ibmrt|romp-ibm) machine=romp-ibm ;;
 	    *) machine=${UNAME_MACHINE}-unknown ;;
 	esac
-	# The Operating System including object format.
-	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
+	# The Operating System including object format, if it has switched
+	# to ELF recently, or will in the future.
+	case "${UNAME_MACHINE}" in
+	    i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
+		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
 	release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
 	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
diff --git a/config.sub b/config.sub
index b522aaf0..d2f956a2 100755
--- a/config.sub
+++ b/config.sub
@@ -3,7 +3,7 @@
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
 #   Free Software Foundation, Inc.
 
-timestamp='2000-11-26'
+timestamp='2000-12-06'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -62,6 +62,7 @@ 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>.
 
@@ -76,6 +77,8 @@ while test $# -gt 0 ; do
   case $1 in
     --time-stamp | --time* | -t )
        echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "GNU config.sub (last modified $timestamp)" ; exit 0 ;;
     --help | --h* | -h )
        echo "$usage"; exit 0 ;;
     -- )     # Stop option processing
diff --git a/man/Makefile.am b/man/Makefile.am
index d84d16cf..34894d05 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -1,21 +1,25 @@
 ## Process this file with automake to produce Makefile.in -*-Makefile-*-
 man_MANS = autoconf.1 autoreconf.1 autoheader.1 autoupdate.1 ifnames.1 \
-autoscan.1
+autoscan.1 config.guess.1 config.sub.1
 
 man_aux = autoconf.x autoreconf.x autoheader.x autoupdate.x ifnames.x \
-autoscan.x
+autoscan.x config.guess.x config.sub.x
 
 EXTRA_DIST = $(man_MANS) $(man_aux) common.x
 MAINTAINERCLEANFILES = $(man_MANS)
 
 # Depend on configure.in to get version number changes.
-$(man_MANS): $(top_srcdir)/configure.in $(srcdir)/common.x
-autoconf.1:   $(srcdir)/autoconf.x   $(top_srcdir)/autoconf.sh
-autoreconf.1: $(srcdir)/autoreconf.x $(top_srcdir)/autoreconf.sh
-autoheader.1: $(srcdir)/autoheader.x $(top_srcdir)/autoheader.sh
-autoupdate.1: $(srcdir)/autoupdate.x $(top_srcdir)/autoupdate.sh
-ifnames.1:    $(srcdir)/ifnames.x    $(top_srcdir)/ifnames.sh
-autoscan.1:   $(srcdir)/autoscan.x   $(top_srcdir)/autoscan.pl
+common_dep = $(top_srcdir)/configure.in $(srcdir)/common.x
+autoconf.1:   $(common_dep) $(srcdir)/autoconf.x   $(top_srcdir)/autoconf.sh
+autoreconf.1: $(common_dep) $(srcdir)/autoreconf.x $(top_srcdir)/autoreconf.sh
+autoheader.1: $(common_dep) $(srcdir)/autoheader.x $(top_srcdir)/autoheader.sh
+autoupdate.1: $(common_dep) $(srcdir)/autoupdate.x $(top_srcdir)/autoupdate.sh
+ifnames.1:    $(common_dep) $(srcdir)/ifnames.x    $(top_srcdir)/ifnames.sh
+autoscan.1:   $(common_dep) $(srcdir)/autoscan.x   $(top_srcdir)/autoscan.pl
+
+# Independent from this package.
+config.guess.1: $(srcdir)/config.guess.x  $(top_srcdir)/config.guess
+config.sub.1:   $(srcdir)/config.sub.x    $(top_srcdir)/config.sub
 
 SUFFIXES = .x .1
 
diff --git a/man/Makefile.in b/man/Makefile.in
index f15168de..3086e6f8 100644
--- a/man/Makefile.in
+++ b/man/Makefile.in
@@ -64,15 +64,18 @@ PERL = @PERL@
 PERLSCRIPTS = @PERLSCRIPTS@
 standards_texi = @standards_texi@
 
-man_MANS = autoconf.1 autoreconf.1 autoheader.1 autoupdate.1 ifnames.1 autoscan.1
+man_MANS = autoconf.1 autoreconf.1 autoheader.1 autoupdate.1 ifnames.1 autoscan.1 config.guess.1 config.sub.1
 
 
-man_aux = autoconf.x autoreconf.x autoheader.x autoupdate.x ifnames.x autoscan.x
+man_aux = autoconf.x autoreconf.x autoheader.x autoupdate.x ifnames.x autoscan.x config.guess.x config.sub.x
 
 
 EXTRA_DIST = $(man_MANS) $(man_aux) common.x
 MAINTAINERCLEANFILES = $(man_MANS)
 
+# Depend on configure.in to get version number changes.
+common_dep = $(top_srcdir)/configure.in $(srcdir)/common.x
+
 SUFFIXES = .x .1
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
 CONFIG_CLEAN_FILES = 
@@ -225,15 +228,16 @@ install-am install uninstall-am uninstall all-redirect all-am all \
 installdirs mostlyclean-generic distclean-generic clean-generic \
 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
 
+autoconf.1:   $(common_dep) $(srcdir)/autoconf.x   $(top_srcdir)/autoconf.sh
+autoreconf.1: $(common_dep) $(srcdir)/autoreconf.x $(top_srcdir)/autoreconf.sh
+autoheader.1: $(common_dep) $(srcdir)/autoheader.x $(top_srcdir)/autoheader.sh
+autoupdate.1: $(common_dep) $(srcdir)/autoupdate.x $(top_srcdir)/autoupdate.sh
+ifnames.1:    $(common_dep) $(srcdir)/ifnames.x    $(top_srcdir)/ifnames.sh
+autoscan.1:   $(common_dep) $(srcdir)/autoscan.x   $(top_srcdir)/autoscan.pl
 
-# Depend on configure.in to get version number changes.
-$(man_MANS): $(top_srcdir)/configure.in $(srcdir)/common.x
-autoconf.1:   $(srcdir)/autoconf.x   $(top_srcdir)/autoconf.sh
-autoreconf.1: $(srcdir)/autoreconf.x $(top_srcdir)/autoreconf.sh
-autoheader.1: $(srcdir)/autoheader.x $(top_srcdir)/autoheader.sh
-autoupdate.1: $(srcdir)/autoupdate.x $(top_srcdir)/autoupdate.sh
-ifnames.1:    $(srcdir)/ifnames.x    $(top_srcdir)/ifnames.sh
-autoscan.1:   $(srcdir)/autoscan.x   $(top_srcdir)/autoscan.pl
+# Independent from this package.
+config.guess.1: $(srcdir)/config.guess.x  $(top_srcdir)/config.guess
+config.sub.1:   $(srcdir)/config.sub.x    $(top_srcdir)/config.sub
 
 .x.1:
 	@if test -f $(top_builddir)/$*; then \
diff --git a/man/autoconf.1 b/man/autoconf.1
index 327c1a61..2cb3c6a1 100644
--- a/man/autoconf.1
+++ b/man/autoconf.1
@@ -79,11 +79,15 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 Report bugs to <bug-autoconf@gnu.org>.
 .SH "SEE ALSO"
 .BR autoconf (1),
+.BR automake (1),
 .BR autoreconf (1),
 .BR autoupdate (1),
 .BR autoheader (1),
 .BR autoscan (1),
-.BR ifnames (1).
+.BR config.guess (1),
+.BR config.sub (1),
+.BR ifnames (1),
+.BR libtool (1).
 .PP
 The full documentation for
 .B autoconf
diff --git a/man/autoheader.1 b/man/autoheader.1
index 609ede74..b250cf2b 100644
--- a/man/autoheader.1
+++ b/man/autoheader.1
@@ -58,11 +58,15 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 Report bugs to <bug-autoconf@gnu.org>.
 .SH "SEE ALSO"
 .BR autoconf (1),
+.BR automake (1),
 .BR autoreconf (1),
 .BR autoupdate (1),
 .BR autoheader (1),
 .BR autoscan (1),
-.BR ifnames (1).
+.BR config.guess (1),
+.BR config.sub (1),
+.BR ifnames (1),
+.BR libtool (1).
 .PP
 The full documentation for
 .B autoheader
diff --git a/man/autoreconf.1 b/man/autoreconf.1
index ca9e4a18..8f4595bc 100644
--- a/man/autoreconf.1
+++ b/man/autoreconf.1
@@ -1,5 +1,5 @@
 .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.23.
-.TH AUTORECONF "1" "November 2000" "GNU autoconf 2.49b" FSF
+.TH AUTORECONF "1" "December 2000" "GNU autoconf 2.49b" FSF
 .SH NAME
 autoreconf \- Update generated configuration files
 .SH SYNOPSIS
@@ -80,11 +80,15 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 Report bugs to <bug-autoconf@gnu.org>.
 .SH "SEE ALSO"
 .BR autoconf (1),
+.BR automake (1),
 .BR autoreconf (1),
 .BR autoupdate (1),
 .BR autoheader (1),
 .BR autoscan (1),
-.BR ifnames (1).
+.BR config.guess (1),
+.BR config.sub (1),
+.BR ifnames (1),
+.BR libtool (1).
 .PP
 The full documentation for
 .B autoreconf
diff --git a/man/autoscan.1 b/man/autoscan.1
index 1787edbc..3686a36a 100644
--- a/man/autoscan.1
+++ b/man/autoscan.1
@@ -1,5 +1,5 @@
 .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.23.
-.TH AUTOSCAN "1" "November 2000" "GNU autoconf 2.49b" FSF
+.TH AUTOSCAN "1" "December 2000" "GNU autoconf 2.49b" FSF
 .SH NAME
 autoscan \- Generate a preliminary configure.in
 .SH SYNOPSIS
@@ -36,11 +36,15 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 Report bugs to <bug-autoconf@gnu.org>.
 .SH "SEE ALSO"
 .BR autoconf (1),
+.BR automake (1),
 .BR autoreconf (1),
 .BR autoupdate (1),
 .BR autoheader (1),
 .BR autoscan (1),
-.BR ifnames (1).
+.BR config.guess (1),
+.BR config.sub (1),
+.BR ifnames (1),
+.BR libtool (1).
 .PP
 The full documentation for
 .B autoscan
diff --git a/man/autoupdate.1 b/man/autoupdate.1
index bd48dc7c..e1fd1cec 100644
--- a/man/autoupdate.1
+++ b/man/autoupdate.1
@@ -46,11 +46,15 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 Report bugs to <bug-autoconf@gnu.org>.
 .SH "SEE ALSO"
 .BR autoconf (1),
+.BR automake (1),
 .BR autoreconf (1),
 .BR autoupdate (1),
 .BR autoheader (1),
 .BR autoscan (1),
-.BR ifnames (1).
+.BR config.guess (1),
+.BR config.sub (1),
+.BR ifnames (1),
+.BR libtool (1).
 .PP
 The full documentation for
 .B autoupdate
diff --git a/man/common.x b/man/common.x
index e07db42d..ea3b237b 100644
--- a/man/common.x
+++ b/man/common.x
@@ -1,7 +1,11 @@
 [see also]
 .BR autoconf (1),
+.BR automake (1),
 .BR autoreconf (1),
 .BR autoupdate (1),
 .BR autoheader (1),
 .BR autoscan (1),
-.BR ifnames (1).
+.BR config.guess (1),
+.BR config.sub (1),
+.BR ifnames (1),
+.BR libtool (1).
diff --git a/man/config.guess.x b/man/config.guess.x
new file mode 100644
index 00000000..1490b22e
--- /dev/null
+++ b/man/config.guess.x
@@ -0,0 +1,25 @@
+[name]
+config.guess \- guess the build system triplet
+
+[Environment variables]
+config.guess might need to compile and run C code, hence it needs a
+compiler for the `build' machine: use the environment variable
+`CC_FOR_BUILD' to specify the compiler for the build machine.  If
+`CC_FOR_BUILD' is not specified, `CC' will be used.  Be sure to
+specify `CC_FOR_BUILD' is `CC' is a cross-compiler to the `host'
+machine.
+
+  CC_FOR_BUILD    a native C compiler, defaults to `cc'
+  CC              a native C compiler, the previous variable is preferred
+
+[description]
+The GNU build system distinguishes three types of machines, the
+`build' machine on which the compilers are run, the `host' machine
+on which the package being built will run, and, exclusively when you
+build a compiler, assembler etc., the `target' machine, for which the
+compiler being built will produce code.
+
+This script will guess the type of the `build' machine.
+
+[reporting bugs]
+Report bugs and patches to <config-patches@gnu.org>.
diff --git a/man/config.sub.x b/man/config.sub.x
new file mode 100644
index 00000000..6c63e55e
--- /dev/null
+++ b/man/config.sub.x
@@ -0,0 +1,3 @@
+[name]
+config.sub \- validate and canonicalize a configuration triplet
+
diff --git a/man/ifnames.1 b/man/ifnames.1
index 983d1f4b..1b591c30 100644
--- a/man/ifnames.1
+++ b/man/ifnames.1
@@ -1,5 +1,5 @@
 .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.23.
-.TH IFNAMES "1" "November 2000" "GNU autoconf 2.49b" FSF
+.TH IFNAMES "1" "December 2000" "GNU autoconf 2.49b" FSF
 .SH NAME
 ifnames \- Extract CPP conditionals from a set of files
 .SH SYNOPSIS
@@ -27,11 +27,15 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 Report bugs to <bug-autoconf@gnu.org>.
 .SH "SEE ALSO"
 .BR autoconf (1),
+.BR automake (1),
 .BR autoreconf (1),
 .BR autoupdate (1),
 .BR autoheader (1),
 .BR autoscan (1),
-.BR ifnames (1).
+.BR config.guess (1),
+.BR config.sub (1),
+.BR ifnames (1),
+.BR libtool (1).
 .PP
 The full documentation for
 .B ifnames