changeset 6275:fd0ccce602e4

Sync from coreutils. * .cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h, stat-time.h. * argmatch.h: Include verify.h (ARGMATCH_VERIFY): Use verify rather than rolling our own. (ARGMATCH_ASSERT): Remove; unused. * canonicalize.c: Assume STDC_HEADERS. * exclude.c: Include "strcase.h". * regex_internal.h [!defined _LIBC]: Likewise. * getusershell.c: Include stdio--.h rather than stdio.h and stdio-safer.h. (getusershell): Call fopen, not fopen_safer. * save-cwd.c: Include fcntl--.h rather than fcntl.h. Do not include unistd-safer.h. (save_cwd): Don't call fd_safer; no longer needed now that we include fcntl--.h. * modules/argmatch (Depends-on): Add verify. * modules/getloadavg (Depends-on): Depend on fcntl-safer, not unistd-safer. * modules/save-cwd (Depends-on): Likewise. * backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4: * fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4: * getugroups.m4, group-member.m4, idcache.m4, link-follow.m4: * mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4: * physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4: * save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4: * userspec.m4, xgetcwd.m4, xreadlink.m4: Don't bother checking for string.h, stdlib.h, unistd.h. * fts.m4 (gl_FUNC_FTS_CORE): Don't require AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat module's job. * jm-macros.m4 (gl_MACROS): Likewise. * prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT. * backupfile.c: Use ARGMATCH_VERIFY, just in case. * posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just the .tm_year member, since otherwise gcc-4.0 would now warn about tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday. * quotearg.c (quotearg_n_options): Change code to be suboptimal, in order to avoid an unsuppressible warning from gcc on 64-bit systems. * lstat.m4 (gl_FUNC_LSTAT): Use AC_LIBSOURCES to require lstat.c and lstat.h. Remove obsolete comment. * xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ. * xstrtod.m4: Likewise.
author Paul Eggert <eggert@cs.ucla.edu>
date Fri, 23 Sep 2005 04:15:13 +0000
parents 6636f61f50fe
children 62463caf0009
files ChangeLog lib/.cppi-disable lib/ChangeLog lib/argmatch.h lib/backupfile.c lib/canonicalize.c lib/chown.c lib/cloexec.c lib/dup2.c lib/euidaccess.c lib/exclude.c lib/fileblocks.c lib/fsusage.c lib/ftruncate.c lib/getcwd.c lib/getcwd.h lib/getopt_.h lib/getpagesize.h lib/getugroups.c lib/getusershell.c lib/group-member.c lib/human.h lib/idcache.c lib/inttostr.h lib/mountlist.c lib/nanosleep.c lib/pathmax.h lib/physmem.c lib/posixtm.c lib/posixver.c lib/putenv.c lib/quotearg.c lib/raise.c lib/regex_internal.h lib/safe-read.c lib/same.c lib/save-cwd.c lib/settime.c lib/tempname.c lib/unlinkdir.c lib/userspec.c lib/xgethostname.c lib/xreadlink.c m4/ChangeLog m4/backupfile.m4 m4/calloc.m4 m4/canonicalize.m4 m4/chown.m4 m4/cloexec.m4 m4/dup2.m4 m4/fileblocks.m4 m4/free.m4 m4/ftruncate.m4 m4/fts.m4 m4/getcwd.m4 m4/getpagesize.m4 m4/getugroups.m4 m4/group-member.m4 m4/idcache.m4 m4/link-follow.m4 m4/lstat.m4 m4/mkstemp.m4 m4/mktime.m4 m4/mountlist.m4 m4/nanosleep.m4 m4/pathmax.m4 m4/physmem.m4 m4/posixver.m4 m4/putenv.m4 m4/safe-read.m4 m4/same.m4 m4/save-cwd.m4 m4/stdio-safer.m4 m4/unistd-safer.m4 m4/unlinkdir.m4 m4/userspec.m4 m4/xgetcwd.m4 m4/xreadlink.m4 m4/xstrtod.m4 modules/argmatch modules/getloadavg modules/save-cwd
diffstat 82 files changed, 221 insertions(+), 311 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
 
+	Sync from coreutils.
+
+	* modules/argmatch (Depends-on): Add verify.
+	* modules/getloadavg (Depends-on): Depend on fcntl-safer, not
+	unistd-safer.
+	* modules/save-cwd (Depends-on): Likewise.
+
 	* modules/openat (Files): Add lib/openat-die.c.
 	(Depends-on): Remove error, exitfail.
 	Add dirname.
--- a/lib/.cppi-disable
+++ b/lib/.cppi-disable
@@ -18,8 +18,12 @@
 obstack.h
 printf-args.h
 printf-parse.h
+regcomp.c
 regex.c
 regex.h
+regex_internal.c
+regex_internal.h
+stat-time.h
 stdbool_.h
 strdup.h
 strndup.h
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -2,6 +2,22 @@
 
 	Sync from coreutils.
 
+	* .cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
+	stat-time.h.
+	* argmatch.h: Include verify.h
+	(ARGMATCH_VERIFY): Use verify rather than rolling our own.
+	(ARGMATCH_ASSERT): Remove; unused.
+	* canonicalize.c: Assume STDC_HEADERS.
+	* exclude.c: Include "strcase.h".
+	* regex_internal.h [!defined _LIBC]: Likewise.
+	* getusershell.c: Include stdio--.h rather than stdio.h
+	and stdio-safer.h.
+	(getusershell): Call fopen, not fopen_safer.
+	* save-cwd.c: Include fcntl--.h rather than fcntl.h.
+	Do not include unistd-safer.h.
+	(save_cwd): Don't call fd_safer; no longer needed
+	now that we include fcntl--.h.
+
 	* getdate.y (relative_time): New type.
 	(RELATIVE_TIME_0): New constant.
 	(parser_control): Use relative_time instead of doing it ourselves.
@@ -50,6 +66,15 @@
 
 	Sync from coreutils.
 
+	* backupfile.c: Use ARGMATCH_VERIFY, just in case.
+
+	* posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
+	the .tm_year member, since otherwise gcc-4.0 would now warn about
+	tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
+
+	* quotearg.c (quotearg_n_options): Change code to be suboptimal, in
+	order to avoid an unsuppressible warning from gcc on 64-bit systems.
+
 	* getdate.y (get_date): Undo part of the 2005-04-04 change, so that
 	the command "date -d'2005-03-27 +1 day'" succeeds once again, even
 	when run in a time zone for which daylight savings time is in effect
@@ -103,8 +128,18 @@
 	optional field width, not before, so we accept %9:z, not %:9z.
 	(my_strftime): Be sure to use L_('x') for literals.
 
-	* getloadavg.c, mkdir-p.c, openat.h:
+	* backupfile.c, canon-host.c, canonicalize.c, chown.c, cloexec.c:
+	* dup-safer.c, dup2.c, euidaccess.c, fd-safer.c, fileblocks.c:
+	* fopen-safer.c, fsusage.c, ftruncate.c, getcwd.c, getcwd.h:
+	* getloadavg.c, getopt_.h, getpagesize.h, getugroups.c, group-member.c:
+	* human.h, idcache.c, mkdir-p.c, mountlist.c, nanosleep.c, pathmax.h:
+	* physmem.c, posixver.c, putenv.c, raise.c, safe-read.c, same.c:
+	* save-cwd.c, setenv.c, settime.c, tempname.c, unlinkdir.c:
+	* unsetenv.c, userspec.c, xgethostname.c, xreadlink.c:
 	Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
+
+	* chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
+	* getloadavg.c, mountlist.c, openat.h, save-cwd.c, tempname.c:
 	Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
 	and don't include <sys/file.h>).
 
--- a/lib/argmatch.h
+++ b/lib/argmatch.h
@@ -1,6 +1,6 @@
 /* argmatch.h -- definitions and prototypes for argmatch.c
 
-   Copyright (C) 1990, 1998, 1999, 2001, 2002, 2004 Free Software
+   Copyright (C) 1990, 1998, 1999, 2001, 2002, 2004, 2005 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -25,24 +25,15 @@
 
 # include <stddef.h>
 
-# define ARRAY_CARDINALITY(Array) (sizeof (Array) / sizeof *(Array))
+# include "verify.h"
 
-# define ARGMATCH_CONSTRAINT(Arglist, Vallist) \
-  (ARRAY_CARDINALITY (Arglist) == ARRAY_CARDINALITY (Vallist) + 1)
+# define ARRAY_CARDINALITY(Array) (sizeof (Array) / sizeof *(Array))
 
 /* Assert there are as many real arguments as there are values
-   (argument list ends with a NULL guard).  ARGMATCH_VERIFY is
-   preferred, since it is guaranteed to be checked at compile-time.
-   ARGMATCH_ASSERT is for backward compatibility only.  */
+   (argument list ends with a NULL guard).  */
 
-# define ARGMATCH_VERIFY(Arglist, Vallist)				  \
-  struct argmatch_verify						  \
-  {									  \
-    char argmatch_verify[ARGMATCH_CONSTRAINT(Arglist, Vallist) ? 1 : -1]; \
-  }
-
-# define ARGMATCH_ASSERT(Arglist, Vallist) \
-  assert (ARGMATCH_CONSTRAINT (Arglist, Vallist))
+# define ARGMATCH_VERIFY(Arglist, Vallist) \
+    verify (ARRAY_CARDINALITY (Arglist) == ARRAY_CARDINALITY (Vallist) + 1)
 
 /* Return the index of the element of ARGLIST (NULL terminated) that
    matches with ARG.  If VALLIST is not NULL, then use it to resolve
--- a/lib/backupfile.c
+++ b/lib/backupfile.c
@@ -38,9 +38,7 @@
 
 #include <limits.h>
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #if HAVE_DIRENT_H
 # include <dirent.h>
@@ -334,7 +332,7 @@
 
 static char const * const backup_args[] =
 {
-  /* In a series of synonyms, present the most meaning full first, so
+  /* In a series of synonyms, present the most meaningful first, so
      that argmatch_valid be more readable. */
   "none", "off",
   "simple", "never",
@@ -351,6 +349,10 @@
   numbered_backups, numbered_backups
 };
 
+/* Ensure that these two vectors have the same number of elements,
+   not counting the final NULL in the first one.  */
+ARGMATCH_VERIFY (backup_args, backup_types);
+
 /* Return the type of backup specified by VERSION.
    If VERSION is NULL or the empty string, return numbered_existing_backups.
    If VERSION is invalid or ambiguous, fail with a diagnostic appropriate
--- a/lib/canonicalize.c
+++ b/lib/canonicalize.c
@@ -22,17 +22,8 @@
 
 #include "canonicalize.h"
 
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-#else
-void free ();
-#endif
-
-#if defined STDC_HEADERS || defined HAVE_STRING_H
-# include <string.h>
-#else
-# include <strings.h>
-#endif
+#include <stdlib.h>
+#include <string.h>
 
 #if HAVE_SYS_PARAM_H
 # include <sys/param.h>
@@ -40,9 +31,7 @@
 
 #include <sys/stat.h>
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include <errno.h>
 #include <stddef.h>
--- a/lib/chown.c
+++ b/lib/chown.c
@@ -29,9 +29,7 @@
 
 #include <sys/types.h>
 #include <sys/stat.h>
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 #include <fcntl.h>
 #include <errno.h>
 
--- a/lib/cloexec.c
+++ b/lib/cloexec.c
@@ -1,5 +1,5 @@
 /* closexec.c - set or clear the close-on-exec descriptor flag
-   Copyright (C) 1991, 2004 Free Software Foundation, Inc.
+   Copyright (C) 1991, 2004, 2005 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -23,10 +23,7 @@
 
 #include "cloexec.h"
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
+#include <unistd.h>
 #include <fcntl.h>
 
 #ifndef FD_CLOEXEC
--- a/lib/dup2.c
+++ b/lib/dup2.c
@@ -1,5 +1,5 @@
 /* Duplicate an open file descriptor to a specified file descriptor.
-   Copyright (C) 1999, 2004 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2004, 2005 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -22,12 +22,8 @@
 #endif
 
 #include <errno.h>
-
 #include <fcntl.h>
-
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #ifndef F_DUPFD
 static int
--- a/lib/euidaccess.c
+++ b/lib/euidaccess.c
@@ -32,10 +32,7 @@
 
 #include <sys/types.h>
 #include <sys/stat.h>
-
-#if HAVE_UNISTD_H || defined _LIBC
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #if HAVE_LIBGEN_H
 # include <libgen.h>
--- a/lib/exclude.c
+++ b/lib/exclude.c
@@ -35,6 +35,7 @@
 
 #include "exclude.h"
 #include "fnmatch.h"
+#include "strcase.h"
 #include "xalloc.h"
 
 #if USE_UNLOCKED_IO
--- a/lib/fileblocks.c
+++ b/lib/fileblocks.c
@@ -1,6 +1,7 @@
 /* Convert file size to number of blocks on System V-like machines.
 
-   Copyright (C) 1990, 1997, 1998, 1999, 2004 Free Software Foundation, Inc.
+   Copyright (C) 1990, 1997, 1998, 1999, 2004, 2005 Free Software
+   Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -30,9 +31,7 @@
 
 #if !HAVE_STRUCT_STAT_ST_BLOCKS && !defined _POSIX_SOURCE && defined BSIZE
 
-# if HAVE_UNISTD_H
-#  include <unistd.h>
-# endif
+# include <unistd.h>
 
 # ifndef NINDIR
 
--- a/lib/fsusage.c
+++ b/lib/fsusage.c
@@ -27,9 +27,7 @@
 #if HAVE_STDINT_H
 # include <stdint.h>
 #endif
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 #ifndef UINTMAX_MAX
 # define UINTMAX_MAX ((uintmax_t) -1)
 #endif
--- a/lib/ftruncate.c
+++ b/lib/ftruncate.c
@@ -23,9 +23,7 @@
 
 #  include <sys/stat.h>
 #  include <errno.h>
-#  if HAVE_UNISTD_H
-#   include <unistd.h>
-#  endif
+#  include <unistd.h>
 
 int
 ftruncate (int fd, off_t length)
--- a/lib/getcwd.c
+++ b/lib/getcwd.c
@@ -60,10 +60,7 @@
 # define _D_ALLOC_NAMLEN(d) (_D_EXACT_NAMLEN (d) + 1)
 #endif
 
-#if HAVE_UNISTD_H || _LIBC
-# include <unistd.h>
-#endif
-
+#include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
 
--- a/lib/getcwd.h
+++ b/lib/getcwd.h
@@ -22,9 +22,7 @@
    cause confusion if included after this file.  */
 
 #include <stdlib.h>
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 /* If necessary, systematically rename identifiers so that they do not
    collide with the system function.  Renaming avoids problems with
--- a/lib/getopt_.h
+++ b/lib/getopt_.h
@@ -1,5 +1,5 @@
 /* Declarations for getopt.
-   Copyright (C) 1989-1994,1996-1999,2001,2003,2004
+   Copyright (C) 1989-1994,1996-1999,2001,2003,2004,2005
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -34,9 +34,7 @@
 #if defined __GETOPT_PREFIX && !defined __need_getopt
 # include <stdlib.h>
 # include <stdio.h>
-# if HAVE_UNISTD_H
-#  include <unistd.h>
-# endif
+# include <unistd.h>
 # undef __need_getopt
 # undef getopt
 # undef getopt_long
--- a/lib/getpagesize.h
+++ b/lib/getpagesize.h
@@ -1,5 +1,5 @@
 /* Emulate getpagesize on systems that lack it.
-   Copyright (C) 1999, 2000, 2004 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2000, 2004, 2005 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -18,9 +18,7 @@
 
 #ifndef HAVE_GETPAGESIZE
 
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #if !defined getpagesize && defined _SC_PAGESIZE
 # if !(defined VMS && __VMS_VER < 70000000)
--- a/lib/getugroups.c
+++ b/lib/getugroups.c
@@ -1,6 +1,6 @@
 /* getugroups.c -- return a list of the groups a user is in
 
-   Copyright (C) 1990, 1991, 1998, 1999, 2000, 2003, 2004 Free
+   Copyright (C) 1990, 1991, 1998, 1999, 2000, 2003, 2004, 2005 Free
    Software Foundation.
 
    This program is free software; you can redistribute it and/or modify
@@ -27,9 +27,7 @@
 #include <stdio.h> /* grp.h on alpha OSF1 V2.0 uses "FILE *". */
 #include <grp.h>
 
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include <errno.h>
 #ifndef EOVERFLOW
--- a/lib/getusershell.c
+++ b/lib/getusershell.c
@@ -33,11 +33,10 @@
 # endif
 #endif
 
-#include <stdio.h>
 #include <stdlib.h>
 #include <ctype.h>
 
-#include "stdio-safer.h"
+#include "stdio--.h"
 #include "xalloc.h"
 
 #if USE_UNLOCKED_IO
@@ -99,7 +98,7 @@
 
   if (shellstream == NULL)
     {
-      shellstream = fopen_safer (SHELLS_FILE, "r");
+      shellstream = fopen (SHELLS_FILE, "r");
       if (shellstream == NULL)
 	{
 	  /* No shells file.  Use the default list.  */
--- a/lib/group-member.c
+++ b/lib/group-member.c
@@ -1,5 +1,5 @@
 /* group-member.c -- determine whether group id is in calling user's group list
-   Copyright (C) 1994, 1997, 1998, 2003 Free Software Foundation, Inc.
+   Copyright (C) 1994, 1997, 1998, 2003, 2005 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -26,9 +26,7 @@
 #include <sys/types.h>
 #include <stdlib.h>
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include "xalloc.h"
 
--- a/lib/human.h
+++ b/lib/human.h
@@ -28,9 +28,7 @@
 # if HAVE_STDINT_H
 #  include <stdint.h>
 # endif
-# if HAVE_UNISTD_H
-#  include <unistd.h>
-# endif
+# include <unistd.h>
 
 /* A conservative bound on the maximum length of a human-readable string.
    The output can be the square of the largest uintmax_t, so double
--- a/lib/idcache.c
+++ b/lib/idcache.c
@@ -27,9 +27,7 @@
 #include <pwd.h>
 #include <grp.h>
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include "xalloc.h"
 
--- a/lib/inttostr.h
+++ b/lib/inttostr.h
@@ -25,9 +25,7 @@
 # include <stdint.h>
 #endif
 
-#if HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
+#include <sys/types.h>
 
 #include "intprops.h"
 
--- a/lib/mountlist.c
+++ b/lib/mountlist.c
@@ -37,9 +37,7 @@
 
 #include <fcntl.h>
 
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #if HAVE_SYS_PARAM_H
 # include <sys/param.h>
--- a/lib/nanosleep.c
+++ b/lib/nanosleep.c
@@ -32,9 +32,7 @@
 
 #include <errno.h>
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include "timespec.h"
 
--- a/lib/pathmax.h
+++ b/lib/pathmax.h
@@ -18,9 +18,7 @@
 #ifndef _PATHMAX_H
 # define _PATHMAX_H
 
-# if HAVE_UNISTD_H
-#  include <unistd.h>
-# endif
+# include <unistd.h>
 
 # include <limits.h>
 
--- a/lib/physmem.c
+++ b/lib/physmem.c
@@ -1,5 +1,5 @@
 /* Calculate the size of physical memory.
-   Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2001, 2003, 2005 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -23,9 +23,7 @@
 
 #include "physmem.h"
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #if HAVE_SYS_PSTAT_H
 # include <sys/pstat.h>
--- a/lib/posixtm.c
+++ b/lib/posixtm.c
@@ -193,19 +193,19 @@
 bool
 posixtime (time_t *p, const char *s, unsigned int syntax_bits)
 {
-  struct tm tm0;
+  struct tm tm0
+#ifdef lint
+  /* Placate gcc-4's -Wuninitialized.
+     posix_time_parse fails to set all of tm0 only when it returns
+     nonzero (due to year() returning nonzero), and in that case,
+     this code doesn't use the tm0 at all.  */
+    = { 0, }
+#endif
+    ;
   struct tm tm1;
   struct tm const *tm;
   time_t t;
 
-#ifdef lint
-  /* Placate gcc-4's -Wuninitialized.
-     posix_time_parse fails to set tm0.tm_year only when it returns
-     nonzero (due to year() returning nonzero), and in that case,
-     this code doesn't use the tm0 at all.  */
-  tm0.tm_year = 0;
-#endif
-
   if (posix_time_parse (&tm0, s, syntax_bits))
     return false;
 
--- a/lib/posixver.c
+++ b/lib/posixver.c
@@ -1,6 +1,6 @@
 /* Which POSIX version to conform to, for utilities.
 
-   Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -27,9 +27,7 @@
 #include <limits.h>
 #include <stdlib.h>
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 #ifndef _POSIX2_VERSION
 # define _POSIX2_VERSION 0
 #endif
--- a/lib/putenv.c
+++ b/lib/putenv.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1994, 1997, 1998, 2000, 2003, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1994, 1997, 1998, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
 
    NOTE: The canonical source of this file is maintained with the GNU C
    Library.  Bugs can be reported to bug-glibc@prep.ai.mit.edu.
@@ -39,9 +39,7 @@
 
 #include <string.h>
 
-#if defined (__GNU_LIBRARY__) || defined (HAVE_UNISTD_H)
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #if HAVE_GNU_LD
 # define environ __environ
--- a/lib/quotearg.c
+++ b/lib/quotearg.c
@@ -586,7 +586,12 @@
 
   if (nslots <= n0)
     {
-      unsigned int n1 = n0 + 1;
+      /* FIXME: technically, the type of n1 should be `unsigned int',
+	 but that evokes an unsuppressible warning from gcc-4.0.1 and
+	 older.  If gcc ever provides an option to suppress that warning,
+	 revert to the original type, so that the test in xalloc_oversized
+	 is once again performed only at compile time.  */
+      size_t n1 = n0 + 1;
 
       if (xalloc_oversized (n1, sizeof *slotvec))
 	xalloc_die ();
--- a/lib/raise.c
+++ b/lib/raise.c
@@ -1,5 +1,5 @@
 /* Provide a non-threads replacement for the POSIX raise function.
-   Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -23,9 +23,7 @@
 
 #include <sys/types.h>
 #include <signal.h>
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 int
 raise (int sig)
--- a/lib/regex_internal.h
+++ b/lib/regex_internal.h
@@ -27,6 +27,10 @@
 #include <stdlib.h>
 #include <string.h>
 
+#ifndef _LIBC
+# include "strcase.h"
+#endif
+
 #if defined HAVE_LANGINFO_H || defined HAVE_LANGINFO_CODESET || defined _LIBC
 # include <langinfo.h>
 #endif
--- a/lib/safe-read.c
+++ b/lib/safe-read.c
@@ -1,6 +1,6 @@
 /* An interface to read and write that retries after interrupts.
 
-   Copyright (C) 1993, 1994, 1998, 2002, 2003, 2004 Free Software
+   Copyright (C) 1993, 1994, 1998, 2002, 2003, 2004, 2005 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -30,9 +30,7 @@
 
 /* Get ssize_t.  */
 #include <sys/types.h>
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include <errno.h>
 
--- a/lib/same.c
+++ b/lib/same.c
@@ -25,9 +25,7 @@
 
 #include <stdbool.h>
 #include <stdio.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 #include <stdlib.h>
 #include <sys/types.h>
 #include <sys/stat.h>
--- a/lib/save-cwd.c
+++ b/lib/save-cwd.c
@@ -25,20 +25,14 @@
 
 #include "save-cwd.h"
 
+#include <errno.h>
 #include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
-
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-#include <fcntl.h>
-
-#include <errno.h>
+#include <unistd.h>
 
 #include "chdir-long.h"
-#include "unistd-safer.h"
+#include "fcntl--.h"
 #include "xgetcwd.h"
 
 /* On systems without the fchdir function (WOE), pretend that open
@@ -78,10 +72,10 @@
 {
   cwd->name = NULL;
 
-  cwd->desc = fd_safer (open (".", O_RDONLY));
+  cwd->desc = open (".", O_RDONLY);
   if (cwd->desc < 0)
     {
-      cwd->desc = fd_safer (open (".", O_WRONLY));
+      cwd->desc = open (".", O_WRONLY);
       if (cwd->desc < 0)
 	{
 	  cwd->name = xgetcwd ();
--- a/lib/settime.c
+++ b/lib/settime.c
@@ -1,5 +1,5 @@
 /* settime -- set the system clock
-   Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -23,9 +23,7 @@
 
 #include "timespec.h"
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include <errno.h>
 
--- a/lib/tempname.c
+++ b/lib/tempname.c
@@ -60,9 +60,7 @@
 # include <inttypes.h>
 #endif
 
-#if HAVE_UNISTD_H || _LIBC
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include <sys/stat.h>
 
--- a/lib/unlinkdir.c
+++ b/lib/unlinkdir.c
@@ -27,9 +27,7 @@
 #if HAVE_PRIV_H
 # include <priv.h>
 #endif
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #if ! UNLINK_CANNOT_UNLINK_DIR
 
--- a/lib/userspec.c
+++ b/lib/userspec.c
@@ -39,9 +39,7 @@
 #include <stdlib.h>
 #include <string.h>
 
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include "intprops.h"
 #include "inttostr.h"
--- a/lib/xgethostname.c
+++ b/lib/xgethostname.c
@@ -28,10 +28,7 @@
 
 #include <stdlib.h>
 #include <errno.h>
-
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #include "xalloc.h"
 
--- a/lib/xreadlink.c
+++ b/lib/xreadlink.c
@@ -30,9 +30,7 @@
 #include <limits.h>
 #include <sys/types.h>
 #include <stdlib.h>
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 
 #ifndef SIZE_MAX
 # define SIZE_MAX ((size_t) -1)
--- a/m4/ChangeLog
+++ b/m4/ChangeLog
@@ -2,6 +2,20 @@
 
 	Sync from coreutils.
 
+	* backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
+	* fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
+	* getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
+	* mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
+	* physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
+	* save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
+	* userspec.m4, xgetcwd.m4, xreadlink.m4:
+	Don't bother checking for string.h, stdlib.h, unistd.h.
+	* fts.m4 (gl_FUNC_FTS_CORE): Don't require
+	AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
+	module's job.
+	* jm-macros.m4 (gl_MACROS): Likewise.
+	* prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
+
 	* getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
 	(gl_GETDATE): Use it.
 
@@ -11,6 +25,12 @@
 
 	Sync from coreutils.
 
+	* lstat.m4 (gl_FUNC_LSTAT):
+	Use AC_LIBSOURCES to require lstat.c and lstat.h.
+	Remove obsolete comment.
+	* xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
+	* xstrtod.m4: Likewise.
+
 	* openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
 
 2005-09-19  Simon Josefsson  <jas@extundo.com>
--- a/m4/backupfile.m4
+++ b/m4/backupfile.m4
@@ -1,4 +1,4 @@
-# backupfile.m4 serial 8
+# backupfile.m4 serial 9
 dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -14,6 +14,5 @@
   AC_REQUIRE([gl_CHECK_TYPE_STRUCT_DIRENT_D_INO])
   AC_REQUIRE([gl_AC_DOS])
   AC_REQUIRE([AC_SYS_LONG_FILE_NAMES])
-  AC_CHECK_HEADERS_ONCE([unistd.h])
   AC_CHECK_FUNCS_ONCE([pathconf])
 ])
--- a/m4/calloc.m4
+++ b/m4/calloc.m4
@@ -1,6 +1,6 @@
-# calloc.m4 serial 4
+# calloc.m4 serial 5
 
-# Copyright (C) 2004 Free Software Foundation, Inc.
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -18,7 +18,6 @@
 AC_DEFUN([_AC_FUNC_CALLOC_IF],
 [AC_REQUIRE([AC_HEADER_STDC])dnl
 AC_REQUIRE([AC_TYPE_SIZE_T])dnl
-AC_CHECK_HEADERS(stdlib.h)
 AC_CACHE_CHECK([for GNU libc compatible calloc], ac_cv_func_calloc_0_nonnull,
 [AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT],
 		  [exit (!calloc (0, 0) || calloc ((size_t) -1 / 8 + 1, 8));])],
--- a/m4/canonicalize.m4
+++ b/m4/canonicalize.m4
@@ -1,4 +1,4 @@
-#serial 8
+#serial 9
 
 # Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
@@ -12,7 +12,6 @@
     AC_LIBSOURCES([canonicalize.c, canonicalize.h])
     AC_LIBOBJ([canonicalize])
 
-    AC_REQUIRE([AC_HEADER_STDC])
-    AC_CHECK_HEADERS(string.h sys/param.h)
+    AC_CHECK_HEADERS(sys/param.h)
     AC_CHECK_FUNCS(resolvepath canonicalize_file_name)
   ])
--- a/m4/chown.m4
+++ b/m4/chown.m4
@@ -1,4 +1,4 @@
-#serial 14
+#serial 16
 # Determine whether we need the chown wrapper.
 
 dnl Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 Free
@@ -44,9 +44,7 @@
     gl_cv_func_chown_follows_symlink,
     [
       AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <unistd.h>
 #include <stdlib.h>
 #include <errno.h>
 
@@ -81,6 +79,5 @@
 # Prerequisites of lib/chown.c.
 AC_DEFUN([gl_PREREQ_CHOWN],
 [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_CHECK_FUNC([fchown], , [AC_LIBOBJ(fchown-stub)])
 ])
--- a/m4/cloexec.m4
+++ b/m4/cloexec.m4
@@ -1,4 +1,4 @@
-#serial 4
+#serial 5
 dnl Copyright (C) 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -8,7 +8,4 @@
 [
   AC_LIBSOURCES([cloexec.c, cloexec.h])
   AC_LIBOBJ([cloexec])
-
-  dnl Prerequisites of lib/cloexec.c.
-  AC_CHECK_HEADERS_ONCE(unistd.h)
 ])
--- a/m4/dup2.m4
+++ b/m4/dup2.m4
@@ -1,4 +1,4 @@
-#serial 3
+#serial 4
 dnl Copyright (C) 2002, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -7,12 +7,4 @@
 AC_DEFUN([gl_FUNC_DUP2],
 [
   AC_REPLACE_FUNCS(dup2)
-  if test $ac_cv_func_dup2 = no; then
-    gl_PREREQ_DUP2
-  fi
 ])
-
-# Prerequisites of lib/dup2.c.
-AC_DEFUN([gl_PREREQ_DUP2], [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
-])
--- a/m4/fileblocks.m4
+++ b/m4/fileblocks.m4
@@ -1,5 +1,5 @@
-# fileblocks.m4 serial 2
-dnl Copyright (C) 2002 Free Software Foundation, Inc.
+# fileblocks.m4 serial 3
+dnl Copyright (C) 2002, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -15,5 +15,5 @@
 
 # Prerequisites of lib/fileblocks.c.
 AC_DEFUN([gl_PREREQ_FILEBLOCKS], [
-  AC_CHECK_HEADERS_ONCE(sys/param.h unistd.h)
+  AC_CHECK_HEADERS_ONCE(sys/param.h)
 ])
--- a/m4/free.m4
+++ b/m4/free.m4
@@ -1,6 +1,6 @@
 # Check whether free (NULL) is supposed to work.
 
-# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,14 +16,11 @@
 
 AC_DEFUN([gl_FUNC_FREE],
 [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_CACHE_CHECK([whether free (NULL) is known to work],
     [gl_cv_func_free],
     [AC_COMPILE_IFELSE(
        [AC_LANG_PROGRAM(
-	  [[@%:@if HAVE_UNISTD_H
-	      @%:@include <unistd.h>
-	    @%:@endif]],
+	  [[@%:@include <unistd.h>]],
 	  [[@%:@if _POSIX_VERSION < 199009L && \
 	        (defined unix || defined _unix || defined _unix_ \
 	         || defined __unix || defined __unix__)
--- a/m4/ftruncate.m4
+++ b/m4/ftruncate.m4
@@ -1,8 +1,8 @@
-#serial 7
+#serial 8
 
 # See if we need to emulate a missing ftruncate function using fcntl or chsize.
 
-# Copyright (C) 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -18,6 +18,5 @@
 # Prerequisites of lib/ftruncate.c.
 AC_DEFUN([gl_PREREQ_FTRUNCATE],
 [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_CHECK_FUNCS(chsize)
 ])
--- a/m4/fts.m4
+++ b/m4/fts.m4
@@ -1,4 +1,4 @@
-#serial 5
+#serial 6
 dnl Copyright (C) 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -31,7 +31,4 @@
   # Checks for header files.
   AC_REQUIRE([AC_HEADER_DIRENT])
   AC_CHECK_HEADERS_ONCE([sys/param.h])
-
-  # Checks for library functions.
-  AC_REQUIRE([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
 ])
--- a/m4/getcwd.m4
+++ b/m4/getcwd.m4
@@ -11,15 +11,12 @@
   [
    AC_LIBSOURCES([getcwd.c, getcwd.h])
 
-   AC_CHECK_HEADERS_ONCE(unistd.h)
    AC_CACHE_CHECK([whether getcwd (NULL, 0) allocates memory for result],
      [gl_cv_func_getcwd_null],
      [AC_TRY_RUN(
         [
 #	 include <stdlib.h>
-#	 ifdef HAVE_UNISTD_H
-#	  include <unistd.h>
-#	 endif
+#	 include <unistd.h>
 #	 ifndef getcwd
 	 char *getcwd ();
 #	 endif
--- a/m4/getpagesize.m4
+++ b/m4/getpagesize.m4
@@ -1,4 +1,4 @@
-# getpagesize.m4 serial 4
+# getpagesize.m4 serial 5
 dnl Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,7 +9,7 @@
   AC_LIBSOURCES([getpagesize.h])
 
   dnl Prerequisites of lib/getpagesize.h.
-  AC_CHECK_HEADERS_ONCE(sys/param.h unistd.h)
+  AC_CHECK_HEADERS_ONCE(sys/param.h)
   AC_CHECK_HEADERS(OS.h)
   AC_CHECK_FUNCS(getpagesize)
 ])
--- a/m4/getugroups.m4
+++ b/m4/getugroups.m4
@@ -1,4 +1,4 @@
-# getugroups.m4 serial 4
+# getugroups.m4 serial 5
 dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -10,6 +10,5 @@
   AC_LIBOBJ([getugroups])
 
   dnl Prerequisites of lib/getugroups.c.
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_TYPE_GETGROUPS
 ])
--- a/m4/group-member.m4
+++ b/m4/group-member.m4
@@ -1,4 +1,4 @@
-#serial 8
+#serial 9
 
 # Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
@@ -25,6 +25,5 @@
 # Prerequisites of lib/group-member.c.
 AC_DEFUN([gl_PREREQ_GROUP_MEMBER],
 [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_REQUIRE([AC_FUNC_GETGROUPS])
 ])
--- a/m4/idcache.m4
+++ b/m4/idcache.m4
@@ -1,4 +1,4 @@
-# idcache.m4 serial 4
+# idcache.m4 serial 5
 dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -8,7 +8,4 @@
 [
   AC_LIBSOURCES([idcache.c])
   AC_LIBOBJ([idcache])
-
-  dnl Prerequisites of lib/idcache.c.
-  AC_CHECK_HEADERS_ONCE(unistd.h)
 ])
--- a/m4/link-follow.m4
+++ b/m4/link-follow.m4
@@ -1,8 +1,8 @@
-#serial 5
+#serial 7
 dnl Run a program to determine whether whether link(2) follows symlinks.
 dnl Set LINK_FOLLOWS_SYMLINKS accordingly.
 
-# Copyright (C) 1999, 2000, 2001, 2004 Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2001, 2004, 2005 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -13,20 +13,13 @@
     [whether link(2) dereferences a symlink specified with a trailing slash],
 		 jm_ac_cv_func_link_follows_symlink,
   [
-    dnl poor-man's AC_REQUIRE: FIXME: repair this once autoconf-3 provides
-    dnl the appropriate framework.
-    test -z "$ac_cv_header_unistd_h" \
-      && AC_CHECK_HEADERS(unistd.h)
-
     # Create a regular file.
     echo > conftest.file
     AC_TRY_RUN(
       [
 #       include <sys/types.h>
 #       include <sys/stat.h>
-#       ifdef HAVE_UNISTD_H
-#        include <unistd.h>
-#       endif
+#       include <unistd.h>
 
 #       define SAME_INODE(Stat_buf_1, Stat_buf_2) \
 	  ((Stat_buf_1).st_ino == (Stat_buf_2).st_ino \
--- a/m4/lstat.m4
+++ b/m4/lstat.m4
@@ -1,4 +1,4 @@
-#serial 13
+#serial 14
 
 # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 Free Software
 # Foundation, Inc.
@@ -8,16 +8,11 @@
 # with or without modifications, as long as this notice is preserved.
 
 dnl From Jim Meyering.
-dnl Determine whether lstat has the bug that it succeeds when given the
-dnl zero-length file name argument.  The lstat from SunOS 4.1.4 and the Hurd
-dnl (as of 1998-11-01) do this.
-dnl
-dnl If it does, then define HAVE_LSTAT_EMPTY_STRING_BUG and arrange to
-dnl compile the wrapper function.
-dnl
 
 AC_DEFUN([gl_FUNC_LSTAT],
 [
+  AC_LIBSOURCES([lstat.c, lstat.h])
+
   AC_REQUIRE([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
   dnl Note: AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK does AC_LIBOBJ(lstat).
   :
--- a/m4/mkstemp.m4
+++ b/m4/mkstemp.m4
@@ -1,4 +1,4 @@
-#serial 11
+#serial 12
 
 # Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
@@ -65,7 +65,7 @@
 # Prerequisites of lib/tempname.c.
 AC_DEFUN([gl_PREREQ_TEMPNAME],
 [
-  AC_CHECK_HEADERS_ONCE(sys/time.h stdint.h unistd.h)
+  AC_CHECK_HEADERS_ONCE(sys/time.h)
   AC_CHECK_FUNCS(__secure_getenv gettimeofday)
   AC_CHECK_DECLS_ONCE(getenv)
   AC_REQUIRE([gl_AC_TYPE_UINTMAX_T])
--- a/m4/mktime.m4
+++ b/m4/mktime.m4
@@ -1,5 +1,5 @@
-# mktime.m4 serial 5
-dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+#serial 7
+dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -14,8 +14,8 @@
 # --------------
 AC_DEFUN([AC_FUNC_MKTIME],
 [AC_REQUIRE([AC_HEADER_TIME])dnl
-AC_CHECK_HEADERS(stdlib.h sys/time.h unistd.h)
-AC_CHECK_FUNCS(alarm)
+AC_CHECK_HEADERS_ONCE(sys/time.h)
+AC_CHECK_FUNCS_ONCE(alarm)
 AC_CACHE_CHECK([for working mktime], ac_cv_func_working_mktime,
 [AC_RUN_IFELSE([AC_LANG_SOURCE(
 [[/* Test program from Paul Eggert and Tony Leneis.  */
@@ -30,13 +30,8 @@
 # endif
 #endif
 
-#if HAVE_STDLIB_H
-# include <stdlib.h>
-#endif
-
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
+#include <stdlib.h>
+#include <unistd.h>
 
 #if !HAVE_ALARM
 # define alarm(X) /* empty */
--- a/m4/mountlist.m4
+++ b/m4/mountlist.m4
@@ -1,4 +1,4 @@
-#serial 7
+#serial 8
 dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,6 @@
 AC_DEFUN([gl_PREREQ_MOUNTLIST_EXTRA],
 [
   dnl Note gl_LIST_MOUNTED_FILE_SYSTEMS checks for mntent.h, not sys/mntent.h.
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_CHECK_HEADERS(sys/mntent.h)
   gl_FSTYPENAME
 ])
--- a/m4/nanosleep.m4
+++ b/m4/nanosleep.m4
@@ -1,4 +1,4 @@
-#serial 13
+#serial 14
 
 dnl From Jim Meyering.
 dnl Check for the nanosleep function.
@@ -67,6 +67,5 @@
 # Prerequisites of lib/nanosleep.c.
 AC_DEFUN([gl_PREREQ_NANOSLEEP],
 [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_CHECK_FUNCS_ONCE(siginterrupt)
 ])
--- a/m4/pathmax.m4
+++ b/m4/pathmax.m4
@@ -1,4 +1,4 @@
-# pathmax.m4 serial 4
+# pathmax.m4 serial 5
 dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,5 +9,5 @@
   AC_LIBSOURCES([pathmax.h])
 
   dnl Prerequisites of lib/pathmax.h.
-  AC_CHECK_HEADERS_ONCE(sys/param.h unistd.h)
+  AC_CHECK_HEADERS_ONCE(sys/param.h)
 ])
--- a/m4/physmem.m4
+++ b/m4/physmem.m4
@@ -1,4 +1,4 @@
-# physmem.m4 serial 4
+# physmem.m4 serial 5
 dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -30,7 +30,6 @@
   AC_LIBOBJ([physmem])
 
   # Prerequisites of lib/physmem.c.
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_CHECK_HEADERS([sys/pstat.h sys/sysmp.h sys/sysinfo.h \
     machine/hal_sysinfo.h sys/table.h sys/param.h sys/sysctl.h \
     sys/systemcfg.h],,, [AC_INCLUDES_DEFAULT])
--- a/m4/posixver.m4
+++ b/m4/posixver.m4
@@ -1,4 +1,4 @@
-# posixver.m4 serial 6
+# posixver.m4 serial 7
 dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,7 +9,6 @@
   AC_LIBSOURCES([posixver.c, posixver.h])
   AC_LIBOBJ([posixver])
 
-  AC_CHECK_HEADERS_ONCE(unistd.h)
   AC_REQUIRE([gl_DEFAULT_POSIX2_VERSION])
 ])
 
--- a/m4/putenv.m4
+++ b/m4/putenv.m4
@@ -1,5 +1,5 @@
-# putenv.m4 serial 9
-dnl Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+# putenv.m4 serial 10
+dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -39,11 +39,5 @@
     AC_LIBOBJ(putenv)
     AC_DEFINE(putenv, rpl_putenv,
       [Define to rpl_putenv if the replacement function should be used.])
-    gl_PREREQ_PUTENV
   fi
 ])
-
-# Prerequisites of lib/putenv.c.
-AC_DEFUN([gl_PREREQ_PUTENV], [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
-])
--- a/m4/safe-read.m4
+++ b/m4/safe-read.m4
@@ -1,4 +1,4 @@
-# safe-read.m4 serial 3
+# safe-read.m4 serial 4
 dnl Copyright (C) 2002-2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -16,5 +16,4 @@
 AC_DEFUN([gl_PREREQ_SAFE_READ],
 [
   AC_REQUIRE([gt_TYPE_SSIZE_T])
-  AC_CHECK_HEADERS_ONCE(unistd.h)
 ])
--- a/m4/same.m4
+++ b/m4/same.m4
@@ -1,4 +1,4 @@
-# same.m4 serial 5
+# same.m4 serial 6
 dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -11,6 +11,5 @@
 
   dnl Prerequisites of lib/same.c.
   AC_REQUIRE([AC_SYS_LONG_FILE_NAMES])
-  AC_CHECK_HEADERS_ONCE([unistd.h])
   AC_CHECK_FUNCS_ONCE([pathconf])
 ])
--- a/m4/save-cwd.m4
+++ b/m4/save-cwd.m4
@@ -1,4 +1,4 @@
-#serial 6
+#serial 7
 dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -10,5 +10,4 @@
   AC_LIBOBJ([save-cwd])
   dnl Prerequisites for lib/save-cwd.c.
   AC_CHECK_FUNCS_ONCE(fchdir)
-  AC_CHECK_HEADERS_ONCE(unistd.h)
 ])
--- a/m4/stdio-safer.m4
+++ b/m4/stdio-safer.m4
@@ -1,4 +1,4 @@
-#serial 4
+#serial 5
 dnl Copyright (C) 2002, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -8,7 +8,4 @@
 [
   AC_LIBSOURCES([fopen-safer.c, stdio-safer.h, stdio--.h])
   AC_LIBOBJ([fopen-safer])
-
-  dnl Prerequisites of lib/fopen-safer.c.
-  AC_CHECK_HEADERS_ONCE(unistd.h)
 ])
--- a/m4/unistd-safer.m4
+++ b/m4/unistd-safer.m4
@@ -1,4 +1,4 @@
-#serial 6
+#serial 7
 dnl Copyright (C) 2002, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -10,17 +10,4 @@
   AC_LIBOBJ([dup-safer])
   AC_LIBOBJ([fd-safer])
   AC_LIBOBJ([pipe-safer])
-
-  gl_PREREQ_DUP_SAFER
-  gl_PREREQ_FD_SAFER
 ])
-
-# Prerequisites of lib/dup-safer.c.
-AC_DEFUN([gl_PREREQ_DUP_SAFER], [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
-])
-
-# Prerequisites of lib/fd-safer.c.
-AC_DEFUN([gl_PREREQ_FD_SAFER], [
-  AC_CHECK_HEADERS_ONCE(unistd.h)
-])
--- a/m4/unlinkdir.m4
+++ b/m4/unlinkdir.m4
@@ -1,4 +1,4 @@
-#serial 2
+#serial 3
 
 # Copyright (C) 2005 Free Software Foundation, Inc.
 #
@@ -11,7 +11,7 @@
 AC_DEFUN([gl_UNLINKDIR],
 [
   AC_REQUIRE([AC_CANONICAL_HOST])
-  AC_CHECK_HEADERS_ONCE(priv.h unistd.h)
+  AC_CHECK_HEADERS_ONCE(priv.h)
 
   AC_LIBSOURCES([unlinkdir.c, unlinkdir.h])
   AC_LIBOBJ([unlinkdir])
--- a/m4/userspec.m4
+++ b/m4/userspec.m4
@@ -1,4 +1,4 @@
-#serial 7
+#serial 8
 dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -10,5 +10,5 @@
   AC_LIBOBJ([userspec])
 
   dnl Prerequisites of lib/userspec.c.
-  AC_CHECK_HEADERS_ONCE(sys/param.h unistd.h)
+  AC_CHECK_HEADERS_ONCE(sys/param.h)
 ])
--- a/m4/xgetcwd.m4
+++ b/m4/xgetcwd.m4
@@ -1,4 +1,4 @@
-# xgetcwd.m4 serial 4
+#serial 5
 dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
--- a/m4/xreadlink.m4
+++ b/m4/xreadlink.m4
@@ -1,12 +1,14 @@
-# xreadlink.m4 serial 5
-dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+#serial 7
+dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 
 AC_DEFUN([gl_XREADLINK],
 [
+  AC_LIBSOURCES([xreadlink.c, xreadlink.h])
+  AC_LIBOBJ([xreadlink])
+
   dnl Prerequisites of lib/xreadlink.c.
   AC_REQUIRE([gt_TYPE_SSIZE_T])
-  AC_CHECK_HEADERS_ONCE(unistd.h)
 ])
--- a/m4/xstrtod.m4
+++ b/m4/xstrtod.m4
@@ -1,5 +1,5 @@
-# xstrtod.m4 serial 3
-dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+#serial 4
+dnl Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -7,5 +7,6 @@
 # Prerequisites of lib/xstrtod.c.
 AC_DEFUN([gl_XSTRTOD],
 [
-  :
+  AC_LIBSOURCES([xstrtod.c, xstrtod.h])
+  AC_LIBOBJ([xstrtod])
 ])
--- a/modules/argmatch
+++ b/modules/argmatch
@@ -12,6 +12,7 @@
 quote
 exit
 exitfail
+verify
 stdbool
 
 configure.ac:
--- a/modules/getloadavg
+++ b/modules/getloadavg
@@ -10,7 +10,7 @@
 xalloc
 c-strtod
 stdbool
-unistd-safer
+fcntl-safer
 
 configure.ac:
 AC_FUNC_GETLOADAVG
--- a/modules/save-cwd
+++ b/modules/save-cwd
@@ -8,7 +8,7 @@
 
 Depends-on:
 chdir-long
-unistd-safer
+fcntl-safer
 xgetcwd
 stdbool