pspp
13 years agoimaxabs: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 22:28:38 +0000 (00:28 +0200)]
imaxabs: Move AC_LIBOBJ invocations to module description.

* m4/imaxabs.m4 (gl_FUNC_IMAXABS): Move AC_LIBOBJ and gl_PREREQ_IMAXABS
invocations from here...
* modules/imaxabs (configure.ac): ... to here.

13 years agogetaddrinfo: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 22:20:21 +0000 (00:20 +0200)]
getaddrinfo: Move AC_LIBOBJ invocations to module description.

* m4/getaddrinfo.m4 (gl_GETADDRINFO): Set HAVE_GETADDRINFO, Move
AC_LIBOBJ invocations from here...
* modules/getaddrinfo (configure.ac): ... to here.
(Depends-on): Add conditions.

13 years agoinet_pton. getaddrinfo: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sun, 8 May 2011 19:48:06 +0000 (21:48 +0200)]
inet_pton. getaddrinfo: Respect rules for use of AC_LIBOBJ.

* m4/inet_pton.m4 (gl_FUNC_INET_PTON): Set HAVE_INET_PTON. Call
AC_CHECK_FUNCS instead of AC_REPLACE_FUNCS. Don't invoke
gl_PREREQ_INET_PTON. Move tests for declaration of inet_pton here...
(gl_PREREQ_INET_PTON): ... from here.
* modules/inet_pton (configure.ac): Invoke AC_LIBOBJ and
gl_PREREQ_INET_PTON here.
(Depends-on): Update condition.

13 years agoinet_ntop. getaddrinfo: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sun, 8 May 2011 19:42:19 +0000 (21:42 +0200)]
inet_ntop. getaddrinfo: Respect rules for use of AC_LIBOBJ.

* m4/inet_ntop.m4 (gl_FUNC_INET_NTOP): Set HAVE_INET_NTOP. Call
AC_CHECK_FUNCS instead of AC_REPLACE_FUNCS. Don't invoke
gl_PREREQ_INET_NTOP. Move tests for declaration of inet_ntop here...
(gl_PREREQ_INET_NTOP): ... from here.
* modules/inet_ntop (configure.ac): Invoke AC_LIBOBJ and
gl_PREREQ_INET_NTOP here.
(Depends-on): Update condition.

13 years agoiconv_open: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 19:24:22 +0000 (21:24 +0200)]
iconv_open: Move AC_LIBOBJ invocations to module description.

* m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN, gl_REPLACE_ICONV_OPEN): Move
AC_LIBOBJ invocations from here...
* modules/iconv_open (configure.ac): ... to here.

13 years agoiconv_open, iconv_open-utf: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sun, 8 May 2011 19:03:04 +0000 (21:03 +0200)]
iconv_open, iconv_open-utf: Respect rules for use of AC_LIBOBJ.

If module 'iconv_open' is among the main modules and module
'iconv_open-utf' is among the tests dependencies, then
REPLACE_ICONV_UTF will be defined to 1, hence iconv_open() in lib may
return the special iconv_t values. Therefore iconv() and iconv_close()
must support these special iconv_t values, already in lib, not only in
tests.
* m4/iconv_open-utf.m4: New file, extracted from m4/iconv_open.m4.
* m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN): Invoke
gl_FUNC_ICONV_OPEN_UTF_SUPPORT if present.
(gl_FUNC_ICONV_OPEN_UTF): Remove macro.
* modules/iconv_open (Files): Add lib/iconv.c, lib/iconv_close.c.
(Depends-on): Add the dependencies of iconv_open-utf.
* modules/iconv_open-utf (Files): Add m4/iconv_open-utf.m4. Remove
m4/iconv_open.m4, lib/iconv.c, lib/iconv_close.c.
(Depends-on): Remove modules needed by lib/iconv.c, lib/iconv_close.c.

13 years agogroup-member: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 18:42:41 +0000 (20:42 +0200)]
group-member: Move AC_LIBOBJ invocations to module description.

* m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Set HAVE_GROUP_MEMBER.
Move AC_LIBOBJ and gl_PREREQ_GROUP_MEMBER invocations from here...
* modules/group-member (configure.ac): ... to here.

13 years agograntpt: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 17:38:45 +0000 (19:38 +0200)]
grantpt: Move AC_LIBOBJ invocations to module description.

* m4/grantpt.m4 (gl_FUNC_GRANTPT): Move AC_LIBOBJ and gl_PREREQ_GRANTPT
invocations from here...
* modules/grantpt (configure.ac): ... to here.

13 years agoglob: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 17:36:38 +0000 (19:36 +0200)]
glob: Move AC_LIBOBJ invocations to module description.

* m4/glob.m4 (gl_GLOB): Move AC_LIBOBJ and gl_PREREQ_GLOB invocations
from here...
* modules/glob (configure.ac): ... to here.

13 years agogetusershell: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 16:21:24 +0000 (18:21 +0200)]
getusershell: Move AC_LIBOBJ invocations to module description.

* m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Set HAVE_GETUSERSHELL.
Move AC_LIBOBJ invocation from here...
* modules/getusershell (configure.ac): ... to here.
(Depends-on): Update condition.

13 years agogettimeofday: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 16:17:25 +0000 (18:17 +0200)]
gettimeofday: Move AC_LIBOBJ invocations to module description.

* m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Move AC_LIBOBJ and
gl_PREREQ_GETTIMEOFDAY invocations from here...
* modules/gettimeofday (configure.ac): ... to here.

13 years agogettimeofday, tzset: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sun, 8 May 2011 15:45:18 +0000 (17:45 +0200)]
gettimeofday, tzset: Respect rules for use of AC_LIBOBJ.

* modules/tzset (configure.ac): Don't invoke gl_FUNC_TZSET_CLOBBER,
just gl_FUNC_TZSET.
* m4/tzset.m4 (gl_FUNC_TZSET): New macro.
(gl_FUNC_TZSET_CLOBBER): Remove actions.
* m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Invoke
gl_FUNC_TZSET_CLOBBER and its actions here, if present.

13 years agogetsubopt: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 11:24:43 +0000 (13:24 +0200)]
getsubopt: Move AC_LIBOBJ invocations to module description.

* m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Move AC_LIBOBJ and
gl_PREREQ_GETSUBOPT invocations from here...
* modules/getsubopt (configure.ac): ... to here.

13 years agogetpass-gnu: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 11:21:50 +0000 (13:21 +0200)]
getpass-gnu: Move AC_LIBOBJ invocations to module description.

* m4/getpass.m4 (gl_FUNC_GETPASS_GNU): Set REPLACE_GETPASS. Move
AC_LIBOBJ and gl_PREREQ_GETPASS invocations from here...
* modules/getpass-gnu (configure.ac): ... to here.

13 years agogetpass: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 11:18:21 +0000 (13:18 +0200)]
getpass: Move AC_LIBOBJ invocations to module description.

* m4/getpass.m4 (gl_FUNC_GETPASS): Set HAVE_GETPASS. Move AC_LIBOBJ and
gl_PREREQ_GETPASS invocations from here...
* modules/getpass (configure.ac): ... to here.

13 years agogetpagesize: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 11:10:22 +0000 (13:10 +0200)]
getpagesize: Move AC_LIBOBJ invocations to module description.

* m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Move AC_LIBOBJ invocation
from here...
* modules/getpagesize (configure.ac): ... to here.

13 years agogetopt: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 11:05:47 +0000 (13:05 +0200)]
getopt: Move AC_LIBOBJ invocations to module description.

* m4/getopt.m4 (gl_REPLACE_GETOPT): Remove macro.
(gl_FUNC_GETOPT): Inline it here. Move AC_LIBOBJ and gl_PREREQ_GETOPT
invocations from here...
* modules/getopt-gnu (configure.ac): ... to here.
* modules/getopt-posix (configure.ac): ... and here.
(Depends-on): Update condition.

13 years agogetopt, argp: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sun, 8 May 2011 11:00:10 +0000 (13:00 +0200)]
getopt, argp: Respect rules for use of AC_LIBOBJ.

* m4/argp.m4 (gl_ARGP): Don't invoke gl_REPLACE_GETOPT.
(gl_REPLACE_GETOPT_ALWAYS): New macro.
* m4/getopt.m4 (gl_FUNC_GETOPT_POSIX): Test whether
gl_REPLACE_GETOPT_ALWAYS is defined. Set REPLACE_GETOPT.

13 years agogetlogin_r: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 10:18:00 +0000 (12:18 +0200)]
getlogin_r: Move AC_LIBOBJ invocations to module description.

* m4/getlogin_r.m4 (gl_FUNC_GETLOGIN_R): Move AC_LIBOBJ and
gl_PREREQ_GETLOGIN_R invocations from here...
* modules/getlogin_r (configure.ac): ... to here.

13 years agogetlogin: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 10:15:52 +0000 (12:15 +0200)]
getlogin: Move AC_LIBOBJ invocations to module description.

* m4/getlogin.m4 (gl_FUNC_GETLOGIN): Move AC_LIBOBJ invocation from
here...
* modules/getlogin (configure.ac): ... to here.

13 years agogetloadavg: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 10:14:03 +0000 (12:14 +0200)]
getloadavg: Move AC_LIBOBJ invocations to module description.

* m4/getloadavg.m4 (gl_FUNC_GETDELIM): Set HAVE_GETLOADAVG. Move
AC_LIBOBJ and gl_PREREQ_GETLOADAVG invocations from here...
* modules/getloadavg (configure.ac): ... to here.

13 years agogethrxtime: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 10:06:27 +0000 (12:06 +0200)]
gethrxtime: Move AC_LIBOBJ invocations to module description.

* m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Move code that determines
LIB_GETHRXTIME from here...
(gl_GETHRXTIME): ... to here. Move AC_LIBOBJ and gl_PREREQ_GETHRXTIME
invocations from here...
* modules/gethrxtime (configure.ac): ... to here.

13 years agogethostname: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 09:48:45 +0000 (11:48 +0200)]
gethostname: Move AC_LIBOBJ invocations to module description.

* m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Move AC_LIBOBJ and
gl_PREREQ_GETHOSTNAME invocations from here...
* modules/gethostname (configure.ac): ... to here.

13 years agogetgroups: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 09:46:22 +0000 (11:46 +0200)]
getgroups: Move AC_LIBOBJ invocations to module description.

* m4/getgroups.m4 (gl_FUNC_GETGROUPS): Move AC_LIBOBJ invocations from
here...
* modules/getgroups (configure.ac): ... to here.

13 years agogetdtablesize: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 09:43:03 +0000 (11:43 +0200)]
getdtablesize: Move AC_LIBOBJ invocations to module description.

* m4/getdtablesize.m4 (gl_FUNC_GETDTABLESIZE): Move AC_LIBOBJ
invocation from here...
* modules/getdtablesize (configure.ac): ... to here.

13 years agogetdomainname: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 09:41:07 +0000 (11:41 +0200)]
getdomainname: Move AC_LIBOBJ invocations to module description.

* m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Move AC_LIBOBJ and
gl_PREREQ_GETDOMAINNAME invocations from here...
* modules/getdomainname (configure.ac): ... to here.

13 years agogetline: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 09:38:44 +0000 (11:38 +0200)]
getline: Move AC_LIBOBJ invocations to module description.

* m4/getline.m4 (gl_FUNC_GETLINE): Move AC_LIBOBJ and gl_PREREQ_GETLINE
invocations from here...
* modules/getline (configure.ac): ... to here.

13 years agogetline: Simplify.
Bruno Haible [Sun, 8 May 2011 09:36:44 +0000 (11:36 +0200)]
getline: Simplify.

* m4/getline.m4 (gl_PREREQ_GETLINE): Don't invoke gl_FUNC_GETDELIM.
It's already handled through the module dependency.

13 years agogetdelim: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 09:32:02 +0000 (11:32 +0200)]
getdelim: Move AC_LIBOBJ invocations to module description.

* m4/getdelim.m4 (gl_FUNC_GETDELIM): Set HAVE_GETDELIM. Move AC_LIBOBJ
and gl_PREREQ_GETDELIM invocations from here...
* modules/getdelim (configure.ac): ... to here.
(Depends-on): Fix condition.

13 years agogetcwd: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 09:25:18 +0000 (11:25 +0200)]
getcwd: Move AC_LIBOBJ invocations to module description.

* m4/getcwd.m4 (gl_FUNC_GETCWD): Move AC_LIBOBJ and gl_PREREQ_GETCWD
invocations from here...
* modules/getcwd (configure.ac): ... to here.

13 years agogetcwd-lgpl: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 8 May 2011 09:22:53 +0000 (11:22 +0200)]
getcwd-lgpl: Move AC_LIBOBJ invocations to module description.

* m4/getcwd.m4 (gl_FUNC_GETCWD_LGPL): Move AC_LIBOBJ invocation from
here...
* modules/getcwd-lgpl (configure.ac): ... to here.

13 years agocrypto/gc: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 12:11:41 +0000 (14:11 +0200)]
crypto/gc: Move AC_LIBOBJ invocations to module description.

* m4/gc.m4 (gl_GC): Move AC_LIBOBJ invocations from here...
* modules/crypto/gc (configure.ac): ... to here.

13 years agofwriting: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 11:48:53 +0000 (13:48 +0200)]
fwriting: Move AC_LIBOBJ invocations to module description.

* m4/fwriting.m4 (gl_FUNC_FWRITINT): Move AC_LIBOBJ invocation from
here...
* modules/fwriting (configure.ac): ... to here.

13 years agofwritable: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 11:47:27 +0000 (13:47 +0200)]
fwritable: Move AC_LIBOBJ invocations to module description.

* m4/fwritable.m4 (gl_FUNC_FWRITABLE): Move AC_LIBOBJ invocation from
here...
* modules/fwritable (configure.ac): ... to here.

13 years agofutimens: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 11:45:40 +0000 (13:45 +0200)]
futimens: Move AC_LIBOBJ invocations to module description.

* m4/futimens.m4 (gl_FUNC_FUTIMENS): Move AC_LIBOBJ invocations from
here...
* modules/futimens (configure.ac): ... to here.

13 years agoftruncate: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 11:42:47 +0000 (13:42 +0200)]
ftruncate: Move AC_LIBOBJ invocations to module description.

* m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Move AC_LIBOBJ and
gl_PREREQ_FTRUNCATE invocations from here...
* modules/ftruncate (configure.ac): ... to here.

13 years agofsync: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 11:34:55 +0000 (13:34 +0200)]
fsync: Move AC_LIBOBJ invocations to module description.

* m4/fsync.m4 (gl_FUNC_FSYNC): Move AC_LIBOBJ and gl_PREREQ_FSYNC
invocations from here...
* modules/fsync (configure.ac): ... to here.

13 years agofsusage: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 11:32:46 +0000 (13:32 +0200)]
fsusage: Move AC_LIBOBJ invocations to module description.

* m4/fsusage.m4 (gl_FUNC_FREOPEN): Move AC_LIBOBJ and
gl_PREREQ_FSUSAGE_EXTRA invocations from here...
* modules/fsusage (configure.ac): ... to here.

13 years agofreopen: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:48:09 +0000 (12:48 +0200)]
freopen: Move AC_LIBOBJ invocations to module description.

* m4/freopen.m4 (gl_FUNC_FREOPEN): Move AC_LIBOBJ and gl_PREREQ_FREOPEN
invocations from here...
* modules/freopen (configure.ac): ... to here.

13 years agofree: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:46:04 +0000 (12:46 +0200)]
free: Move AC_LIBOBJ invocations to module description.

* m4/free.m4 (gl_FUNC_FREE): Move AC_LIBOBJ and missing gl_PREREQ_FREE
invocations from here...
* modules/free (configure.ac): ... to here.

13 years agofreadable: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:31:11 +0000 (12:31 +0200)]
freadable: Move AC_LIBOBJ invocations to module description.

* m4/freadable.m4 (gl_FUNC_FREADABLE): Move AC_LIBOBJ invocation from
here...
* modules/freadable (configure.ac): ... to here.

13 years agofpurge: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:28:30 +0000 (12:28 +0200)]
fpurge: Move AC_LIBOBJ invocations to module description.

* m4/fpurge.m4 (gl_FUNC_FPURGE): Set HAVE_FPURGE. Move AC_LIBOBJ
invocations from here...
* modules/fpurge (configure.ac): ... to here.

13 years agofpending: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:23:53 +0000 (12:23 +0200)]
fpending: Move AC_LIBOBJ invocations to module description.

* m4/fpending.m4 (gl_PREREQ_FPENDING): New macro, extracted from
gl_FUNC_FPENDING.
(gl_FUNC_FPENDING): Move AC_LIBOBJ and gl_PREREQ_FPENDING
invocations from here...
* modules/fpending (configure.ac): ... to here.

13 years agofopen: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:15:25 +0000 (12:15 +0200)]
fopen: Move AC_LIBOBJ invocations to module description.

* m4/fopen.m4 (gl_FUNC_FOPEN): Move AC_LIBOBJ and gl_PREREQ_FOPEN
invocations from here...
* modules/fopen (configure.ac): ... to here.

13 years agofnmatch, fnmatch-gnu: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:13:04 +0000 (12:13 +0200)]
fnmatch, fnmatch-gnu: Move AC_LIBOBJ invocations to module description.

* m4/fnmatch.m4 (gl_PREREQ_FNMATCH): New macro, extracted from
gl_FUNC_FNMATCH_POSIX.
(gl_FUNC_FNMATCH_POSIX): Move AC_LIBOBJ and gl_PREREQ_FNMATCH
invocations from here...
* modules/fnmatch (configure.ac): ... to here.
* modules/fnmatch-gnu (configure.ac): ... and here.

13 years agoflock: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:04:35 +0000 (12:04 +0200)]
flock: Move AC_LIBOBJ invocations to module description.

* m4/flock.m4 (gl_FUNC_FLOCK): Move AC_LIBOBJ and gl_PREREQ_FLOCK
invocations from here...
* modules/flock (configure.ac): ... to here.

13 years agofileblocks: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 10:02:05 +0000 (12:02 +0200)]
fileblocks: Move AC_LIBOBJ invocations to module description.

* m4/fileblocks.m4 (gl_FILEBLOCKS): Move AC_LIBOBJ and
gl_PREREQ_FILEBLOCKS invocations from here...
* modules/fileblocks (configure.ac): ... to here.

13 years agofflush: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Fri, 6 May 2011 11:21:22 +0000 (13:21 +0200)]
fflush: Move AC_LIBOBJ invocations to module description.

* m4/fflush.m4 (gl_REPLACE_FFLUSH): Remove macro.
(gl_FUNC_FFLUSH): Inline it here. Move AC_LIBOBJ and gl_PREREQ_FFLUSH
invocations from here...
* modules/fflush (configure.ac): ... to here.

13 years agofdopendir: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Fri, 6 May 2011 11:17:26 +0000 (13:17 +0200)]
fdopendir: Move AC_LIBOBJ invocations to module description.

* m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Move AC_LIBOBJ invocations from
here...
* modules/fdopendir (configure.ac): ... to here.
(Depends-on): Improve conditions.

13 years ago_Exit: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Fri, 6 May 2011 10:58:23 +0000 (12:58 +0200)]
_Exit: Move AC_LIBOBJ invocations to module description.

* m4/_Exit.m4 (gl_FUNC__EXIT): Move AC_LIBOBJ and gl_PREREQ__EXIT
invocations from here...
* modules/_Exit (configure.ac): ... to here.

13 years agoeuidaccess: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sat, 21 May 2011 10:40:54 +0000 (12:40 +0200)]
euidaccess: Respect rules for use of AC_LIBOBJ.

* m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Call AC_CHECK_FUNCS instead of
AC_REPLACE_FUNCS. Move AC_LIBOBJ and gl_PREREQ_EUIDACCESS invocations
from here...
* modules/euidaccess (configure.ac): ... to here.

13 years agoerror: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Fri, 6 May 2011 10:55:33 +0000 (12:55 +0200)]
error: Move AC_LIBOBJ invocations to module description.

* m4/error.m4 (gl_ERROR): Inline AC_FUNC_ERROR_AT_LINE. Remove
AC_LIBSOURCES invocation. Move AC_LIBOBJ and gl_PREREQ_ERROR
invocations from here...
* modules/error (configure.ac): ... to here.

13 years agoduplocale: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Fri, 6 May 2011 10:46:34 +0000 (12:46 +0200)]
duplocale: Move AC_LIBOBJ invocations to module description.

* m4/duplocale.m4 (gl_FUNC_DUPLOCALE): Move AC_LIBOBJ and
gl_PREREQ_DUPLOCALE invocations from here...
* modules/duplocale (configure.ac): ... to here.

13 years agodirfd: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Fri, 6 May 2011 01:46:57 +0000 (03:46 +0200)]
dirfd: Move AC_LIBOBJ invocations to module description.

* m4/dirfd.m4 (gl_PREREQ_DIRFD): New macro, extracted from
gl_FUNC_DIRFD.
(gl_FUNC_DIRFD): Move AC_LIBOBJ and gl_PREREQ_DIRFD invocations from
here...
* modules/dirfd (configure.ac): ... to here.
(Depends-on): Fix condition.

13 years agochown: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Fri, 6 May 2011 01:27:03 +0000 (03:27 +0200)]
chown: Respect rules for use of AC_LIBOBJ.

* m4/chown.m4 (gl_FUNC_CHOWN): Move AC_LIBOBJ invocations from here...
* modules/chown (configure.ac): ... to here.

13 years agochdir-long: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Thu, 5 May 2011 23:47:42 +0000 (01:47 +0200)]
chdir-long: Move AC_LIBOBJ invocations to module description.

* m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Move AC_LIBOBJ and
gl_PREREQ_CHDIR_LONG invocations from here...
* modules/chdir-long (configure.ac): ... to here.

13 years agocanonicalize-lgpl: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Thu, 5 May 2011 23:29:37 +0000 (01:29 +0200)]
canonicalize-lgpl: Move AC_LIBOBJ invocations to module description.

* m4/canonicalize.m4 (gl_CANONICALIZE_LGPL): Move AC_LIBOBJ invocation
from here...
* modules/canonicalize-lgpl (configure.ac): ... to here.

13 years agocalloc-posix, calloc-gnu: Move AC_LIBOBJs to module description.
Bruno Haible [Thu, 5 May 2011 23:15:44 +0000 (01:15 +0200)]
calloc-posix, calloc-gnu: Move AC_LIBOBJs to module description.

* m4/calloc.m4 (gl_REPLACE_CALLOC): Remove macro.
(gl_FUNC_CALLOC_GNU, gl_FUNC_CALLOC_POSIX): Instead, just set
REPLACE_CALLOC.
* modules/calloc-posix (configure.ac): Invoke AC_LIBOBJ here.
* modules/calloc-gnu (configure.ac): Likewise.

13 years agobtowc: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Thu, 5 May 2011 23:09:53 +0000 (01:09 +0200)]
btowc: Move AC_LIBOBJ invocations to module description.

* m4/btowc.m4 (gl_FUNC_BTOWC): Move AC_LIBOBJ and gl_PREREQ_BTOWC
invocations from here...
* modules/btowc (configure.ac): ... to here.

13 years agoatexit: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 21 May 2011 10:33:31 +0000 (12:33 +0200)]
atexit: Move AC_LIBOBJ invocations to module description.

* m4/atexit.m4 (gl_FUNC_ATEXIT): Call AC_CHECK_FUNCS instead of
AC_REPLACE_FUNCS. Move AC_LIBOBJ and gl_PREREQ_ATEXIT invocations from
here...
* modules/atexit (configure.ac): ... to here.

13 years agoatoll: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Thu, 5 May 2011 23:06:05 +0000 (01:06 +0200)]
atoll: Move AC_LIBOBJ invocations to module description.

* m4/atoll.m4 (gl_FUNC_ATOLL): Move AC_LIBOBJ and gl_PREREQ_ATOLL
invocations from here...
* modules/atoll (configure.ac): ... to here.

13 years agoargz: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Thu, 5 May 2011 23:03:00 +0000 (01:03 +0200)]
argz: Move AC_LIBOBJ invocations to module description.

* m4/argz.m4 (gl_FUNC_ARGZ): Move AC_LIBOBJ invocation from here...
* modules/argz (configure.ac): ... to here.

13 years agoalphasort: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Thu, 5 May 2011 22:59:02 +0000 (00:59 +0200)]
alphasort: Move AC_LIBOBJ invocations to module description.

* m4/alphasort.m4 (gl_FUNC_ALPHASORT): Move AC_LIBOBJ and
gl_PREREQ_ALPHASORT invocations from here...
* modules/alphasort (configure.ac): ... to here.

13 years agoverify: new macro verify_expr; verify_true deprecated
Paul Eggert [Wed, 15 Jun 2011 18:15:37 +0000 (11:15 -0700)]
verify: new macro verify_expr; verify_true deprecated

* NEWS: Mention this.
* doc/verify.texi (Compile-time Assertions): Document this.
* lib/verify.h (verify_true): Deprecate.
(verify_expr): New macro.
* tests/test-verify.c (function): Test verify_expr.

13 years agoinit.sh: give more portable redirection-related advice in a comment
Jim Meyering [Tue, 14 Jun 2011 13:33:23 +0000 (15:33 +0200)]
init.sh: give more portable redirection-related advice in a comment

* tests/init.sh (stderr_fileno_): Update the advice in comments.
See http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/22488
for lots of discussion.  Stefano Lattarini suggested the solution
of putting "9>&2" after the command.  Reported by Bruno Haible.

13 years agoFix ChangeLog typo in my previous commit.
Paul Eggert [Mon, 13 Jun 2011 19:29:30 +0000 (12:29 -0700)]
Fix ChangeLog typo in my previous commit.

13 years agolocale-zh: Reject zh_CN.GB18030 locale on Solaris 8.
Bruno Haible [Mon, 13 Jun 2011 18:05:58 +0000 (20:05 +0200)]
locale-zh: Reject zh_CN.GB18030 locale on Solaris 8.

* m4/locale-zh.m4 (gt_LOCALE_ZH_CN): On Solaris 8, set LOCALE_ZH_CN to
'none'.

13 years agoftoastr: use strtof only if HAVE_STRTOF
Paul Eggert [Mon, 13 Jun 2011 16:40:58 +0000 (09:40 -0700)]
ftoastr: use strtof only if HAVE_STRTOF

This is needed on HP-UX 11.11 with GCC 4.24; see Bruno Haible's report
<http://lists.gnu.org/archive/html/bug-gnulib/2011-06/msg00154.html>.
* lib/ftoastr.c (STRTOF) [LENGTH == 1]: Use strtof only if HAVE_STRTOF.
* modules/ftoastr (configure.ac): Check for strtof.

13 years agognulib-tool: Addendum to 2011-06-08 commit.
Bruno Haible [Mon, 13 Jun 2011 15:44:26 +0000 (17:44 +0200)]
gnulib-tool: Addendum to 2011-06-08 commit.

* gnulib-tool (func_emit_lib_Makefile_am): If options --makefile-name
and --witness-c-macro have been given, augment AM_CPPFLAGS.

13 years agofseeko: Provide a non-inline replacement of fseek().
Bruno Haible [Mon, 13 Jun 2011 15:36:39 +0000 (17:36 +0200)]
fseeko: Provide a non-inline replacement of fseek().

* lib/stdio.in.h (fseek): Don't provide if module 'fseek' is not used.
* modules/fseeko (Depends-on): Add fseek.
* modules/fseek (License): Change to LGPLv2+.

13 years agoftello: Provide a non-inline replacement of ftell().
Bruno Haible [Mon, 13 Jun 2011 15:33:59 +0000 (17:33 +0200)]
ftello: Provide a non-inline replacement of ftell().

* lib/stdio.in.h (ftell): Don't provide if module 'ftell' is not used.
* m4/ftell.m4 (gl_FUNC_FTELL): Replace ftell also if the system does
not have ftello() (such as on mingw).
* modules/ftello (Depends-on): Add ftell.
* modules/ftell (License): Change to LGPLv2+.

13 years agoftell: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 11:40:26 +0000 (13:40 +0200)]
ftell: Move AC_LIBOBJ invocations to module description.

* m4/ftell.m4 (gl_FUNC_FTELL): Move AC_LIBOBJ invocation from here...
* modules/ftell (configure.ac): ... to here.

13 years agoftello: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sat, 7 May 2011 11:37:56 +0000 (13:37 +0200)]
ftello: Respect rules for use of AC_LIBOBJ.

* m4/ftello.m4 (gl_REPLACE_FTELLO): Remove macro.
(gl_FUNC_FTELLO): Inline it here. Move AC_LIBOBJ invocation from
here...
* modules/ftello (configure.ac): ... to here.

13 years agofseeko: Simplify.
Bruno Haible [Sat, 7 May 2011 11:30:25 +0000 (13:30 +0200)]
fseeko: Simplify.

* m4/fseeko.m4 (gl_HAVE_FSEEKO): Remove macro.
(gl_FUNC_FSEEKO): Inline it here.

13 years agofseek: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sat, 7 May 2011 11:26:48 +0000 (13:26 +0200)]
fseek: Move AC_LIBOBJ invocations to module description.

* m4/fseek.m4 (gl_REPLACE_FSEEK): Remove macro.
(gl_FUNC_FSEEK): Inline it here. Move AC_LIBOBJ invocation from here...
* modules/fseek (configure.ac): ... to here.

13 years agofseek: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sat, 7 May 2011 11:23:50 +0000 (13:23 +0200)]
fseek: Respect rules for use of AC_LIBOBJ.

* m4/fseeko.m4 (gl_FUNC_FSEEKO): Move gl_REPLACE_FSEEK invocation from
here...
* m4/fseek.m4 (gl_FUNC_FSEEK): ... to here.

13 years agofseeko: Respect rules for use of AC_LIBOBJ.
Bruno Haible [Sat, 7 May 2011 11:18:23 +0000 (13:18 +0200)]
fseeko: Respect rules for use of AC_LIBOBJ.

* m4/fseeko.m4 (gl_REPLACE_FSEEKO): Remove macro.
(gl_FUNC_FSEEKO): Inline it here. Move AC_LIBOBJ invocation from
here...
* modules/fseeko (configure.ac): ... to here.

13 years agognulib-tool: Allow comments in the 'Depends-on' section.
Bruno Haible [Mon, 13 Jun 2011 10:29:46 +0000 (12:29 +0200)]
gnulib-tool: Allow comments in the 'Depends-on' section.

* doc/gnulib.texi (Module description): Mention comment syntax in the
Depends-on section.
* gnulib-tool (func_get_dependencies): Filter out comment lines.

13 years agoCorrect last ChangeLog entry.
Bruno Haible [Mon, 13 Jun 2011 09:49:16 +0000 (11:49 +0200)]
Correct last ChangeLog entry.

13 years agofile-set.h: guard __attibute__ use, now that it's not always defined
Bruno Haible [Mon, 13 Jun 2011 09:19:42 +0000 (11:19 +0200)]
file-set.h: guard __attibute__ use, now that it's not always defined

* lib/file-set.h (record_file): Use __attribute__ only with compiler
versions that support it.  This fixes a coreutils build failure with
/bin/cc on HP-UX 11.31.

13 years agoacl: Add support for HP-UX >= 11.11 JFS ACLs.
Bruno Haible [Mon, 13 Jun 2011 00:11:03 +0000 (02:11 +0200)]
acl: Add support for HP-UX >= 11.11 JFS ACLs.

* doc/acl-resources.txt: Add info about the ACL APIs on HP-UX.
* m4/acl.m4 (gl_FUNC_ACL): Also test for HP-UX 11.11 API.
* lib/acl-internal.h [HP-UX 11.11]: Include <aclv.h>.
(acl, aclsort): New declarations.
(aclv_nontrivial): New declaration.
* lib/file-has-acl.c (aclv_nontrivial) [HP-UX 11.11]: New function.
(file_has_acl): Read also the second kind of HP-UX ACLs.
* lib/set-mode-acl.c (qset_acl) [HP-UX 11.11]: Try to set the second
kind of HP-UX ACLs if the first kind fails.
* lib/copy-acl.c (qcopy_acl) [HP-UX 11.11]: Read and set also the
second kind of HP-UX ACLs.
* tests/test-sameacls.c [HP-UX 11.11]: Include <aclv.h>.
(main) [HP-UX 11.11]: Test also whether the second kind of HP-UX ACLs
agree.
* tests/test-file-has-acl.sh (acl_flavor) [HP-UX 11.11]: Set to
hpuxjfs.
Handle hpuxjfs.
* tests/test-set-mode-acl.sh (acl_flavor) [HP-UX 11.11]: Set to
hpuxjfs.
Handle hpuxjfs.
* tests/test-copy-acl.sh (acl_flavor) [HP-UX 11.11]: Set to hpuxjfs.
(func_test_same_acls): Use both lsacl and getacl.
Handle hpuxjfs.
* tests/test-copy-file.sh (acl_flavor) [HP-UX 11.11]: Set to hpuxjfs.
(func_test_same_acls): Use both lsacl and getacl.
Handle hpuxjfs.

13 years agoacl: Complete the 2010-08-10 fix.
Bruno Haible [Sun, 12 Jun 2011 23:17:20 +0000 (01:17 +0200)]
acl: Complete the 2010-08-10 fix.

* lib/file-has-acl.c (file_has_acl) [HP-UX]: Also test against ENOTSUP.
* lib/set-mode-acl.c (qset_acl) [HP-UX]: Likewise.
* lib/copy-acl.c (qcopy_acl) [HP-UX]: Test for the errno values
explicitly.
* tests/test-sameacls.c (main) [HP-UX]: Also test against ENOTSUP.
Reported in <http://debbugs.gnu.org/db/60/6053.html>.

13 years agospawn-pipe tests: Comments.
Bruno Haible [Sun, 12 Jun 2011 12:46:34 +0000 (14:46 +0200)]
spawn-pipe tests: Comments.

* tests/test-spawn-pipe-child.c (main): Update comment.
Reported by James Youngman <jay@gnu.org>.

13 years agoNew module 'stat-size'.
James Youngman [Sat, 11 Jun 2011 00:15:39 +0000 (01:15 +0100)]
New module 'stat-size'.

* modules/stat-size: New module.  Provides macros for accessing
file size information in instances of struct stat.  Depends on the
fileblocks module because it calls st_blocks.
* lib/stat-size.h: New file, adapted from coreutils' system.h.
* doc/gnulib.texi: Include stat-size.texi.
* doc/stat-size.texi: Documentation for this module.
* m4/stat-size.m4: New file; defines gl_STAT_SIZE.
* m4/fileblocks.m4: Mention that stat-size depends on the call to
AC_STRUCT_ST_BLOCKS.

13 years agothread: Support pthreads-win32.
Bruno Haible [Thu, 9 Jun 2011 10:40:44 +0000 (12:40 +0200)]
thread: Support pthreads-win32.

* lib/glthread/thread.h (gl_thread_self): Define differently on
pthreads-win32.
(gl_null_thread): New declaration.
(gl_thread_self_pointer): New macro.
* lib/glthread/thread.c (gl_null_thread): New constant.
* tests/test-lock.c: Use gl_thread_self_pointer instead of
gl_thread_self.
* tests/test-tls.c: Likewise.
Suggested by Paul Eggert. Reported by Eric Blake.

13 years agothread: Fix confusion between NULL and 0.
Bruno Haible [Thu, 9 Jun 2011 10:55:09 +0000 (12:55 +0200)]
thread: Fix confusion between NULL and 0.

* lib/glthread/thread.h (gl_thread_self): Use NULL and 0 appropriately.
Reported by Paul Eggert.

13 years agospawn-pipe tests: Avoid test failure on HP-UX 11.
Bruno Haible [Thu, 9 Jun 2011 09:37:58 +0000 (11:37 +0200)]
spawn-pipe tests: Avoid test failure on HP-UX 11.

* tests/test-spawn-pipe-child.c (main) [HP-UX]: Don't assert that fd 2
is closed.

13 years agoacl tests: Fix compilation error on HP-UX 11.
Bruno Haible [Thu, 9 Jun 2011 09:35:25 +0000 (11:35 +0200)]
acl tests: Fix compilation error on HP-UX 11.

* tests/test-sameacls.c: Include <sys/acl.h> also on HP-UX.

13 years agormdir: Avoid test failure on HP-UX 10.20.
Bruno Haible [Thu, 9 Jun 2011 09:21:23 +0000 (11:21 +0200)]
rmdir: Avoid test failure on HP-UX 10.20.

* tests/test-rmdir.h (test_rmdir_func): Accept ENOTEMPTY error, like
EEXIST.

13 years agoperror: fix test on mingw
Eric Blake [Wed, 8 Jun 2011 14:34:21 +0000 (08:34 -0600)]
perror: fix test on mingw

test-perror2 was tripping up on a known mingw dup2 pitfall.

* modules/perror-tests (Depends-on): Add dup2.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agostrerror_r-posix: fix on MacOS
Eric Blake [Wed, 8 Jun 2011 02:49:04 +0000 (20:49 -0600)]
strerror_r-posix: fix on MacOS

MacOS X 10.5 strerror(0) is "Unknown error: 0", which is not distinguished
from "Unknown error: -1" for out-of-range.  Worse, strerror_r(0,,)
is "Undefined error: 0", although strerror_r for all other out-of-range
values matches strerror.

* m4/strerror.m4 (gl_FUNC_STRERROR): Flush out MacOS bug.
* m4/strerror_r.m4 (gl_FUNC_STRERROR_R_WORKS): Likewise, and fix
logic bug.
* lib/strerror_r.c (strerror_r): Fix the bug.
* lib/strerror.c (strerror): Likewise.
* doc/posix-functions/strerror_r.texi (strerror_r): Document the
problem.
* doc/posix-functions/strerror.texi (strerror): Likewise.
* doc/posix-functions/perror.texi (perror): Likewise.
* tests/test-strerror.c (main): Enhance test.
* tests/test-strerror_r.c (main): Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agognulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible [Wed, 8 Jun 2011 11:23:56 +0000 (13:23 +0200)]
gnulib-tool: Better isolation between different gnulib-tool invocations.

* gnulib-tool: New option --witness-c-macro.
(witness_c_macro): New variable.
(func_emit_lib_Makefile_am): If --witness-c-macro was specified, let
AM_CPPFLAGS define it as a C macro.
(func_emit_tests_Makefile_am): Likewise.
(func_import): Store witness_c_macro setting in gnulib-cache.m4 and
read it from there.
* m4/gnulib-common.m4 (gl_MODULE_INDICATOR_CONDITION): Define through
m4_define, not AC_DEFUN.
(gl_MODULE_INDICATOR_SET_VARIABLE_AUX,
gl_MODULE_INDICATOR_SET_VARIABLE_AUX_OR): New macros.
(gl_MODULE_INDICATOR_SET_VARIABLE): Use them.
* modules/arpa_inet (Makefile.am): Use sed expression s/.../.../, not
s|...|...|, to substitute the values of the GNULIB_* module indicator
variables.
* modules/dirent (Makefile.am): Likewise.
* modules/fcntl-h (Makefile.am): Likewise.
* modules/iconv-h (Makefile.am): Likewise.
* modules/langinfo (Makefile.am): Likewise.
* modules/locale (Makefile.am): Likewise.
* modules/math (Makefile.am): Likewise.
* modules/netdb (Makefile.am): Likewise.
* modules/poll-h (Makefile.am): Likewise.
* modules/pty (Makefile.am): Likewise.
* modules/search (Makefile.am): Likewise.
* modules/signal (Makefile.am): Likewise.
* modules/spawn (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/sys_ioctl (Makefile.am): Likewise.
* modules/sys_select (Makefile.am): Likewise.
* modules/sys_socket (Makefile.am): Likewise.
* modules/sys_stat (Makefile.am): Likewise.
* modules/sys_times (Makefile.am): Likewise.
* modules/sys_utsname (Makefile.am): Likewise.
* modules/sys_wait (Makefile.am): Likewise.
* modules/termios (Makefile.am): Likewise.
* modules/time (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.

13 years agostrerror: simplify replacement
Eric Blake [Wed, 8 Jun 2011 11:12:15 +0000 (05:12 -0600)]
strerror: simplify replacement

Only strerror-override depends on winsock2.h; our strerror.c file
does not.  This also fixes mingw strerror_r-posix use of winsock2.h
via strerror-override.

Since we assume C89 which guarantees a declaration for sterror, we
don't need to repeat that check.

* m4/strerror.m4 (gl_PREREQ_STRERROR): Delete.
* modules/strerror (configure.ac): No prereqs needed here...
* modules/strerror-override (configure.ac): ...but this needs it.
(Files): Add file for needed prereq macro.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agostrerror_r-posix: Tweaks.
Bruno Haible [Wed, 8 Jun 2011 10:27:31 +0000 (12:27 +0200)]
strerror_r-posix: Tweaks.

* m4/strerror.m4 (gl_FUNC_STRERROR): Omit the code that tests
gl_cv_func_strerror_r_works if gl_FUNC_STRERROR_R_WORKS is not present.
* m4/strerror_r.m4 (gl_FUNC_STRERROR_R_WORKS): Fix AC_CACHE_CHECK
message. Move gl_HEADER_STRING_H_DEFAULTS invocation from here...
(gl_FUNC_STRERROR_R): ... to here.
(gl_PREREQ_STRERROR_R): Test for __xpg_strerror_r.

13 years agoperror: document fixed bugs
Eric Blake [Wed, 8 Jun 2011 03:09:01 +0000 (21:09 -0600)]
perror: document fixed bugs

* doc/posix-functions/perror.texi (perror): Document recent
patches.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agostat-time: get_stat_birthtime failure is better-defined
Paul Eggert [Tue, 7 Jun 2011 23:01:33 +0000 (16:01 -0700)]
stat-time: get_stat_birthtime failure is better-defined

* lib/stat-time.h (get_stat_birthtime): If the time is not available,
return a timestamp whose tv_sec and tv_nsec values are both -1.
Previously, the spec said only that the tv_nsec value was negative.
This upward-compatible change simplifies GNU tar a bit.

13 years agostrerror_r-posix: work around cygwin 1.7.9
Eric Blake [Mon, 6 Jun 2011 23:59:01 +0000 (17:59 -0600)]
strerror_r-posix: work around cygwin 1.7.9

Cygwin __xpg_strerror_r clobbers strerror, until cygwin 1.7.10; in
this case, we must replace strerror, but there was nothing in
strerror.m4 finding fault with cygwin's native strerror.  Solve
this by splitting strerror_r.m4 into two parts, one for probing
for the strerror_r bug, and one for replacing strerror_r based
on the presence of bugs unrelated to signature issues; that way,
the 'strerror' module in isolation will not replace strerror, but
if strerror_r is in use for any other reason, then the two use
separate buffers.

Note that cygwin's strerror is thread-safe while the gnulib
replacement is not; but this is no worse than any other
platform where strerror is not thread-safe; in a single-threaded
program, the difference is not observable, and in a multi-threaded
program, you really shouldn't be using strerror in the first place.

Also note that this ends up replacing glibc 2.13 strerror as it
deems __xpg_strerror_r broken on that platform, which isn't
technically necessary for strerror, but doesn't hurt too much.
Meanwhile, glibc 2.14 fixed __xpg_strerror_r, and strerror is not
replaced in that scenario.

* m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Split...
(gl_FUNC_STRERROR_R_WORKS): ...into new macro, to detect Cygwin
bug without replacing strerror_r.
* m4/strerror.m4 (gl_FUNC_STRERROR): Replace strerror if
strerror_r is buggy, but without requiring strerror_r compilation.
* doc/posix-functions/strerror_r.texi (strerror_r): Fix docs.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agotest-perror: relax test to ignore cygwin bug
Eric Blake [Tue, 7 Jun 2011 21:41:20 +0000 (15:41 -0600)]
test-perror: relax test to ignore cygwin bug

glibc was not the only platform where fprintf(fopen(,"r"))
fails to detect errors; cygwin 1.7.9 is another culprit
(although it will be fixed for 1.7.10), and I suspect that
several other platforms were failing perror2 for the same
reason.

At this point, there are so many functions affected, and
the way to avoid the bug is easy enough (don't pass bogus
streams to output-producing functions), that I'm not worried
about fixing things other than to document them.

* tests/test-perror2.c (main): Relax test on requiring detection
of stream errors, and use unbuffered stream.
* doc/posix-functions/dprintf.texi (dprintf): Document bug.
* doc/posix-functions/fprintf.texi (fprintf): Likewise.
* doc/posix-functions/fputc.texi (fputc): Likewise.
* doc/posix-functions/fputs.texi (fputs): Likewise.
* doc/posix-functions/fputws.texi (fputws): Likewise.
* doc/posix-functions/fwprintf.texi (fwprintf): Likewise.
* doc/posix-functions/fwrite.texi (fwrite): Likewise.
* doc/posix-functions/getopt.texi (getopt): Likewise.
* doc/posix-functions/perror.texi (perror): Likewise.
* doc/posix-functions/printf.texi (printf): Likewise.
* doc/posix-functions/psiginfo.texi (psiginfo): Likewise.
* doc/posix-functions/psignal.texi (psignal): Likewise.
* doc/posix-functions/putc.texi (putc): Likewise.
* doc/posix-functions/putc_unlocked.texi (putc_unlocked):
Likewise.
* doc/posix-functions/putchar.texi (putchar): Likewise.
* doc/posix-functions/putchar_unlocked.texi (putchar_unlocked):
Likewise.
* doc/posix-functions/puts.texi (puts): Likewise.
* doc/posix-functions/putwc.texi (putwc): Likewise.
* doc/posix-functions/putwchar.texi (putwchar): Likewise.
* doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
* doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
* doc/posix-functions/vfwprintf.texi (vfwprintf): Likewise.
* doc/posix-functions/vprintf.texi (vprintf): Likewise.
* doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
* doc/posix-functions/wordexp.texi (wordexp): Likewise.
* doc/posix-functions/wprintf.texi (wprintf): Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agostrerror: Move AC_LIBOBJ invocations to module description.
Bruno Haible [Sun, 22 May 2011 11:19:32 +0000 (13:19 +0200)]
strerror: Move AC_LIBOBJ invocations to module description.

* m4/strerror.m4 (gl_FUNC_STRERROR): Move AC_LIBOBJ and
gl_PREREQ_STRERROR invocations from here...
* modules/strerror (configure.ac): ... to here.

13 years agoperror: Use common idiom.
Bruno Haible [Sat, 21 May 2011 14:51:40 +0000 (16:51 +0200)]
perror: Use common idiom.

* modules/perror (configure.ac): Reorder statements.