gnulib.git
13 years agoceill-ieee: Make it work on OSF/1 5.1 with cc.
Bruno Haible [Sat, 25 Dec 2010 11:03:18 +0000 (12:03 +0100)]
ceill-ieee: Make it work on OSF/1 5.1 with cc.

* doc/posix-functions/ceill.texi: Mention the OSF/1 5.1 bug.
* m4/ceill.m4 (gl_FUNC_CEILL): If gl_FUNC_CEILL_IEEE is also used,
test whether ceill works according to ISO C 99 with IEC 60559.
* m4/ceill-ieee.m4: New file.
* modules/ceill-ieee (Files): Add it and m4/minus-zero.m4,
m4/signbit.m4.
(configure.ac): Invoke gl_FUNC_CEILL_IEEE.

13 years agoEnsure all prerequisites of <wchar.h> are included.
Bruno Haible [Sat, 25 Dec 2010 10:26:23 +0000 (11:26 +0100)]
Ensure all prerequisites of <wchar.h> are included.

* m4/btowc.m4 (gl_FUNC_BTOWC): Include <stddef.h>, <stdio.h>, <time.h>
before <wchar.h>.
* m4/mbrlen.m4 (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL,
gl_MBRLEN_NUL_RETVAL): Likewise.
* m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE, gl_MBRTOWC_SANITYCHECK,
gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL,
AC_FUNC_MBRTOWC): Likewise.
* m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise.
* m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
* m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise.
* m4/wcsrtombs.m4 (gl_WCSRTOMBS_TERMINATION, gl_WCSRTOMBS_NULL):
Likewise.
* m4/wctob.m4 (gl_FUNC_WCTOB): Likewise.
* m4/wchar_h.m4 (gl_WCHAR_H_INLINE_OK): Likewise.
(gl_WCHAR_H): Improve comments.
* m4/wctype_h.m4 (gl_WCTYPE_H): Likewise.

13 years agostrtok_r: Fix C syntax error in autoconf macro.
Bruno Haible [Sat, 25 Dec 2010 09:46:40 +0000 (10:46 +0100)]
strtok_r: Fix C syntax error in autoconf macro.

* m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Don't use UTF-8 encoded U+00A0
characters in test program.

13 years agoceil, trunc, round: Fix gcc warnings.
Bruno Haible [Sat, 25 Dec 2010 01:58:27 +0000 (02:58 +0100)]
ceil, trunc, round: Fix gcc warnings.

* lib/ceil.c (MIN): Undefine before redefining.
* lib/trunc.c (MIN): Likewise.
* lib/round.c (MIN): Likewise.
Include <math.h> first.

13 years agoupdate from texinfo
Karl Berry [Sat, 25 Dec 2010 01:21:32 +0000 (17:21 -0800)]
update from texinfo

13 years agoselect tests: Avoid failures on OSF/1 5.1.
Bruno Haible [Sat, 25 Dec 2010 00:26:18 +0000 (01:26 +0100)]
select tests: Avoid failures on OSF/1 5.1.

* tests/test-select.c (test_accept_first, test_socket_pair): Ignore
failure of closing the last socket; it may fail with ECONNRESET.

13 years agostdint: avoid HP-UX 10.20 preprocessor bug
Eric Blake [Fri, 24 Dec 2010 20:39:50 +0000 (13:39 -0700)]
stdint: avoid HP-UX 10.20 preprocessor bug

* lib/stdint.in.h (INT64_MAX, UINT64_MAX): Check via #ifdef rather
than #if.
* tests/test-floor2.c (main): Likewise.
Reported by Peter O'Gorman.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agopipe: make obsoletion transition easier
Eric Blake [Fri, 24 Dec 2010 20:27:09 +0000 (13:27 -0700)]
pipe: make obsoletion transition easier

* lib/pipe.h: Restore file as thin shim around "spawn-pipe.h".
* modules/pipe (Files): Include revived file.
(Include): Drop reference, to mirror getdate's behavior.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agosys_socket: Hide mismatch of declarations on NonStop Kernel.
Bruno Haible [Fri, 24 Dec 2010 16:16:29 +0000 (17:16 +0100)]
sys_socket: Hide mismatch of declarations on NonStop Kernel.

* lib/sys_socket.in.h (connect, bind, sendto, setsockopt): Use
_GL_CXXALIAS_SYS_CAST instead of _GL_CXXALIAS_SYS.
Reported by Joachim Schmitz <jojo@schmitz-digital.de>.

13 years agogethostname: Ensure declaration on NonStop Kernel.
Bruno Haible [Fri, 24 Dec 2010 15:39:10 +0000 (16:39 +0100)]
gethostname: Ensure declaration on NonStop Kernel.

* lib/unistd.in.h: Include <netdb.h> also on NonStop Kernel systems.
Reported by Joachim Schmitz <jojo@schmitz-digital.de>.

13 years agosys_select: Ensure all necessary types on NonStop Kernel.
Bruno Haible [Fri, 24 Dec 2010 15:27:04 +0000 (16:27 +0100)]
sys_select: Ensure all necessary types on NonStop Kernel.

* lib/sys_select.in.h: If the system does not have <sys/select.h>,
include <sys/time.h>.
* doc/posix-headers/sys_select.texi: Mention that it's missing on
NonStop Kernel.
Reported by Joachim Schmitz <jojo@schmitz-digital.de>.

13 years agosys_select: Remove unneeded include.
Bruno Haible [Fri, 24 Dec 2010 15:21:59 +0000 (16:21 +0100)]
sys_select: Remove unneeded include.

* lib/sys_select.in.h: Don't include <sys/socket.h> on platforms that
have <sys/select.h>.

13 years agogethostname: Provide a fallback for HOST_NAME_MAX.
Bruno Haible [Fri, 24 Dec 2010 12:54:16 +0000 (13:54 +0100)]
gethostname: Provide a fallback for HOST_NAME_MAX.

* m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): When neither HOST_NAME_MAX
nor MAXHOSTNAMELEN is found in the usual system headers, use 256
instead.
Reported by Joachim Schmitz <jojo@schmitz-digital.de>.

13 years agosigaction tests: Allow missing SA_RESETHAND and SA_RESTART.
Bruno Haible [Fri, 24 Dec 2010 10:07:35 +0000 (11:07 +0100)]
sigaction tests: Allow missing SA_RESETHAND and SA_RESTART.

* tests/test-sigaction.c (SA_RESETHAND): Fall back to 0.
(SA_RESTART): Likewise.
Reported by Joachim Schmitz <jojo@schmitz-digital.de>.

13 years agosignal: Define NSIG.
Bruno Haible [Fri, 24 Dec 2010 10:03:44 +0000 (11:03 +0100)]
signal: Define NSIG.

* lib/signal.in.h (NSIG): Define to 32 on NonStop Kernel.
* tests/test-signal.c (nsig): New variable.
Reported by Joachim Schmitz <jojo@schmitz-digital.de>.

13 years agorename, renameat: Avoid test failures on OSF/1 5.1.
Bruno Haible [Fri, 24 Dec 2010 09:20:00 +0000 (10:20 +0100)]
rename, renameat: Avoid test failures on OSF/1 5.1.

* tests/test-rename.h (test_rename): Allow EEXIST and ENOTDIR as
alternative error codes.
* tests/test-renameat.c (main): Likewise.

13 years ago*printf: Detect large precisions bug on Solaris 10/SPARC.
Bruno Haible [Fri, 24 Dec 2010 09:13:43 +0000 (10:13 +0100)]
*printf: Detect large precisions bug on Solaris 10/SPARC.

* m4/printf.m4 (gl_PRINTF_PRECISION): Add one more test code, provided
by Paul Eggert.
* tests/test-snprintf-posix.h (test_function): Add this test code here
too.
* tests/test-sprintf-posix.h (test_function): Likewise.
* tests/test-vasnprintf-posix.c (test_function): Likewise.
* tests/test-vasprintf-posix.c (test_function): Likewise.
* doc/posix-functions/fprintf.texi: Mention Solaris 10 bug as worked
around by gnulib.
* doc/posix-functions/printf.texi: Likewise.
* doc/posix-functions/snprintf.texi: Likewise.
* doc/posix-functions/sprintf.texi: Likewise.
* doc/posix-functions/vfprintf.texi: Likewise.
* doc/posix-functions/vprintf.texi: Likewise.
* doc/posix-functions/vsnprintf.texi: Likewise.
* doc/posix-functions/vsprintf.texi: Likewise.
* doc/posix-functions/dprintf.texi: Undo last commit.
* doc/posix-functions/vdprintf.texi: Likewise.

13 years agotests: port test-fdutimensat.c to Solaris 8
Paul Eggert [Fri, 24 Dec 2010 08:06:16 +0000 (00:06 -0800)]
tests: port test-fdutimensat.c to Solaris 8

* tests/test-fdutimensat.c (do_fdutimens): Don't assume
fdutimensat works with a nonnegative fd and AT_SYMLINK_NOFOLLOW.
On Solaris 8, it fails with errno == ENOSYS, because there is no
futimens (so it can't use the fd), and there is no lutimens (so it
can't implement AT_SYMLINK_NOFOLLOW on symlinks).

13 years agovsnprintf: make more consistent with snprintf; doc fixes
Paul Eggert [Fri, 24 Dec 2010 07:32:55 +0000 (23:32 -0800)]
vsnprintf: make more consistent with snprintf; doc fixes

* doc/posix-functions/snprintf.texi (snprintf): The workaround for
the byte count return problem was promoted from the snprintf-posix
to the snprintf module.
* doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
* m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Also check
gl_SNPRINTF_RETVAL_C99, for consistency with gl_FUNC_SNPRINTF.
* tests/test-snprintf.c (main): Check the byte count returned.
* tests/test-vsnprintf.c (main): Likewise.

13 years agosigpipe: relax to LGPLv2+, since it did not have any LGPLv3+ parts
Eric Blake [Thu, 23 Dec 2010 16:11:10 +0000 (09:11 -0700)]
sigpipe: relax to LGPLv2+, since it did not have any LGPLv3+ parts

* modules/sigpipe (License): Relax license.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agodoc: document Solaris printf bug with large float precisions
Paul Eggert [Wed, 22 Dec 2010 23:13:59 +0000 (15:13 -0800)]
doc: document Solaris printf bug with large float precisions

* doc/posix-functions/dprintf.texi (dprintf):
* doc/posix-functions/fprintf.texi (fprintf):
* doc/posix-functions/printf.texi (printf):
* doc/posix-functions/snprintf.texi (snprintf):
* doc/posix-functions/sprintf.texi (sprintf):
* doc/posix-functions/vdprintf.texi (vdprintf):
* doc/posix-functions/vfprintf.texi (vfprintf):
* doc/posix-functions/vprintf.texi (vprintf):
* doc/posix-functions/vsnprintf.texi (vsnprintf):
* doc/posix-functions/vsprintf.texi (vsprintf):
Mention that these functions mishandle large floating point
precisions on Solaris 10.  The same bug is also present in Solaris
8, and I assume earlier.  This causes "cd gnulib-tests; make
check" to fail on Solaris 8 (and I assume, later) when building
the latest coreutils, in test-vasprintf-posix's call to
my_asprintf (&result, "%.4000f %d", 1.0, 99).  I have not checked
the wide flavors (e.g., wprintf) so this patch just updates the
documentation for the narrow ones.

13 years agotest-posixtm.c: add two tests
Paul Eggert [Wed, 22 Dec 2010 20:27:46 +0000 (12:27 -0800)]
test-posixtm.c: add two tests

* tests/test-posixtm.c: Add two tests, to highlight the
bug in Solaris 10 (and earlier) localtime.  Gnulib doesn't work
around this bug; this is merely to document it.

13 years agogetlogin_r: Work around portability problem on OSF/1.
Bruno Haible [Wed, 22 Dec 2010 18:25:34 +0000 (19:25 +0100)]
getlogin_r: Work around portability problem on OSF/1.

* m4/getlogin_r.m4 (gl_FUNC_GETLOGIN_R): Detect the OSF/1 problem.
* lib/unistd.in.h (getlogin_r): Replace if REPLACE_GETLOGIN_R is set.
* lib/getlogin_r.c (getlogin_r): When getlogin_r exists, invoke it and
test for a truncated result.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize REPLACE_GETLOGIN_R.
* modules/unistd (Makefile.am): Substitute REPLACE_GETLOGIN_R.
* modules/getlogin_r (Depends-on): Add memchr.
* doc/posix-functions/getlogin_r.texi: Mention the OSF/1 problem.

13 years agoptsname: Avoid test failure on OSF/1 5.1.
Bruno Haible [Wed, 22 Dec 2010 16:53:09 +0000 (17:53 +0100)]
ptsname: Avoid test failure on OSF/1 5.1.

* modules/ptsname-tests (Depends-on): Add 'same-inode'.
* tests/test-ptsname.c: Include <sys/stat.h>, same-inode.h.
(same_slave): New function.
(main): Use it to compare ptsname's result with the expected file name.

13 years agoPort extended stdio modules to HP NonStop Kernel.
Bruno Haible [Wed, 22 Dec 2010 16:37:34 +0000 (17:37 +0100)]
Port extended stdio modules to HP NonStop Kernel.

* lib/stdio-impl.h (_IOERR, _IOREAD, _IOWRT, _IORW) [__TANDEM]: New
macros.
* lib/fbufmode.c: Update comments.
* lib/fflush.c: Likewise.
* lib/fpurge.c: Likewise.
* lib/freadable.c: Likewise.
* lib/freadahead.c: Likewise.
* lib/freading.c: Likewise.
* lib/freadptr.c: Likewise.
* lib/freadseek.c: Likewise.
* lib/fseeko.c: Likewise.
* lib/fseterr.c: Likewise.
* lib/fwritable.c: Likewise.
* lib/fwriting.c: Likewise.
Reported by Joachim Schmitz <jojo@schmitz-digital.de>.

13 years agottyname_r: Work around bug on OSF/1 5.1.
Bruno Haible [Wed, 22 Dec 2010 16:09:26 +0000 (17:09 +0100)]
ttyname_r: Work around bug on OSF/1 5.1.

* doc/posix-functions/ttyname_r.texi: Mention the OSF/1 bug.
* m4/ttyname_r.m4 (gl_FUNC_TTYNAME_R): Detect the OSF/1 bug. Say "no"
instead of "guessing no" when the OSF/1 bug or the Solaris bug is
present.
* lib/ttyname_r.c (ttyname_r): Update comments.

13 years agoOops, fix last ChangeLog entry.
Bruno Haible [Wed, 22 Dec 2010 15:15:31 +0000 (16:15 +0100)]
Oops, fix last ChangeLog entry.

13 years agoround: Implement result sign according to IEEE 754.
Bruno Haible [Wed, 22 Dec 2010 15:10:58 +0000 (16:10 +0100)]
round: Implement result sign according to IEEE 754.

* lib/round.c (MIN, MINUS_ZERO): New macros.
(FUNC): Return -0.0 for -0.5 < x < 0.
* tests/test-roundf-ieee.c (main): Test also values between -1 and 1.
* tests/test-round-ieee.c (main): Likewise.
* tests/test-roundl-ieee.c (main): Likewise.

13 years agotrunc: Implement result sign according to IEEE 754.
Bruno Haible [Wed, 22 Dec 2010 15:08:29 +0000 (16:08 +0100)]
trunc: Implement result sign according to IEEE 754.

* lib/trunc.c (MIN, MINUS_ZERO): New macros.
(FUNC): Return +0.0 for 0 < x < 1 and -0.0 for -1 < x < 0.
* tests/test-trunc2.c: Include minus-zero.h.
(MINUS_ZERO): New macro.
(trunc_reference): Keep in sync with lib/trunc.c.
* tests/test-truncf2.c: Include minus-zero.h.
(MINUS_ZERO): New macro.
(truncf_reference): Keep in sync with lib/trunc.c.
* tests/test-truncf-ieee.c (main): Test also values between -1 and 1.
* tests/test-trunc-ieee.c (main): Likewise.
* tests/test-truncl-ieee.c (main): Likewise.

13 years agoceil: Implement result sign according to IEEE 754.
Bruno Haible [Wed, 22 Dec 2010 15:07:08 +0000 (16:07 +0100)]
ceil: Implement result sign according to IEEE 754.

* lib/ceil.c (MIN, MINUS_ZERO): New macros.
(FUNC): Return -0.0 for -1 < x < 0.
* tests/test-ceil2.c: Include minus-zero.h.
(MINUS_ZERO): New macro.
(ceil_reference): Keep in sync with lib/ceil.c.
* tests/test-ceilf2.c: Include minus-zero.h.
(MINUS_ZERO): New macro.
(ceilf_reference): Keep in sync with lib/ceil.c.
* tests/test-ceilf-ieee.c (main): Test also values between -1 and 1.
* tests/test-ceil-ieee.c (main): Likewise.
* tests/test-ceill-ieee.c (main): Likewise.

13 years agofloor: Implement result sign according to IEEE 754.
Bruno Haible [Wed, 22 Dec 2010 15:05:29 +0000 (16:05 +0100)]
floor: Implement result sign according to IEEE 754.

* lib/floor.c (FUNC): Return +0.0 for 0 < x < 1.
* tests/test-floor2.c (floor_reference): Keep in sync with lib/floor.c.
* tests/test-floorf2.c (floorf_reference): Likewise.
* tests/test-floorf-ieee.c (main): Test also values between -1 and 1.
* tests/test-floor-ieee.c (main): Likewise.
* tests/test-floorl-ieee.c (main): Likewise.

13 years agogetaddrinfo: Update doc.
Bruno Haible [Wed, 22 Dec 2010 10:44:12 +0000 (11:44 +0100)]
getaddrinfo: Update doc.

* doc/posix-functions/gai_strerror.texi: Return type is also different
on AIX and HP-UX.

13 years agogetaddrinfo, inet_ntop: Update doc for Solaris.
Paul Eggert [Wed, 22 Dec 2010 10:03:18 +0000 (02:03 -0800)]
getaddrinfo, inet_ntop: Update doc for Solaris.

* doc/posix-functions/gai_strerror.texi: Return type is also an
issue on Solaris 9 and earlier.
* doc/posix-functions/inet_ntop.texi: 4th arg type is also an issue
on Solaris 10 and earlier.

13 years agoNew module 'roundl-ieee'.
Bruno Haible [Tue, 21 Dec 2010 21:27:02 +0000 (22:27 +0100)]
New module 'roundl-ieee'.

* modules/roundl-ieee: New file.
* m4/roundl.m4 (gl_FUNC_ROUNDL): If gl_FUNC_ROUNDL_IEEE is also used,
test whether roundl works according to ISO C 99 with IEC 60559.
* m4/roundl-ieee.m4: New file.
* modules/roundl-ieee-tests: New file.
* tests/test-roundl-ieee.c: New file, based on tests/test-roundl.c.
* tests/test-roundl.c (main): Remove signbit tests.
* modules/roundl-tests (Depends-on): Remove signbit.
* doc/posix-functions/roundl.texi: Mention the new module.

13 years agoNew module 'truncl-ieee'.
Bruno Haible [Tue, 21 Dec 2010 21:04:25 +0000 (22:04 +0100)]
New module 'truncl-ieee'.

* modules/truncl-ieee: New file.
* modules/truncl-ieee-tests: New file.
* tests/test-truncl-ieee.c: New file, based on tests/test-truncl.c.
* tests/test-truncl.c (main): Remove signbit tests.
* modules/truncl-tests (Depends-on): Remove signbit.
* doc/posix-functions/truncl.texi: Mention the new module.

13 years agoNew module 'ceill-ieee'.
Bruno Haible [Tue, 21 Dec 2010 20:58:44 +0000 (21:58 +0100)]
New module 'ceill-ieee'.

* modules/ceill-ieee: New file.
* modules/ceill-ieee-tests: New file.
* tests/test-ceill-ieee.c: New file, based on tests/test-ceill.c.
* tests/test-ceill.c (main): Remove signbit tests.
* modules/ceill-tests (Depends-on): Remove signbit.
* doc/posix-functions/ceill.texi: Mention the new module.

13 years agoNew module 'floorl-ieee'.
Bruno Haible [Tue, 21 Dec 2010 20:49:51 +0000 (21:49 +0100)]
New module 'floorl-ieee'.

* modules/floorl-ieee: New file.
* modules/floorl-ieee-tests: New file.
* tests/test-floorl-ieee.c: New file, based on tests/test-floorl.c.
* tests/test-floorl.c (main): Remove signbit tests.
* modules/floorl-tests (Depends-on): Remove signbit.
* doc/posix-functions/floorl.texi: Mention the new module.

13 years agoNew module 'round-ieee'.
Bruno Haible [Tue, 21 Dec 2010 17:55:59 +0000 (18:55 +0100)]
New module 'round-ieee'.

* modules/round-ieee: New file.
* m4/round.m4 (gl_FUNC_ROUND): If gl_FUNC_ROUND_IEEE is also used, test
whether round works according to ISO C 99 with IEC 60559.
* m4/round-ieee.m4: New file.
* modules/round-ieee-tests: New file.
* tests/test-round-ieee.c: New file, based on tests/test-roundf-ieee.c.
* tests/test-round1.c (main): Remove signbit tests.
* modules/round-tests (Depends-on): Remove 'signbit'.
* doc/posix-functions/round.texi: Mention the new module.

13 years agoNew module 'trunc-ieee'.
Bruno Haible [Tue, 21 Dec 2010 17:30:16 +0000 (18:30 +0100)]
New module 'trunc-ieee'.

* modules/trunc-ieee: New file.
* m4/trunc.m4 (gl_FUNC_TRUNC): If gl_FUNC_TRUNC_IEEE is also used, test
whether trunc works according to ISO C 99 with IEC 60559.
* m4/trunc-ieee.m4: New file.
* lib/math.in.h (trunc): Replace if REPLACE_TRUNC is set.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNC.
* modules/math (Makefile.am): Substitute REPLACE_TRUNC.
* modules/trunc-ieee-tests: New file.
* tests/test-trunc-ieee.c: New file, based on tests/test-truncf-ieee.c.
* tests/test-trunc1.c (main): Remove signbit tests.
* modules/trunc-tests (Depends-on): Remove 'signbit'.
* doc/posix-functions/trunc.texi: Mention the new module.

13 years agoNew module 'ceil-ieee'.
Bruno Haible [Tue, 21 Dec 2010 17:05:21 +0000 (18:05 +0100)]
New module 'ceil-ieee'.

* modules/ceil-ieee: New file.
* m4/ceil.m4 (gl_FUNC_CEIL): Require gl_MATH_H_DEFAULTS. If
gl_FUNC_CEIL_IEEE is also used, test whether ceil works according to
ISO C 99 with IEC 60559.
* m4/ceil-ieee.m4: New file.
* modules/ceil (Files): Add lib/ceil.c.
(Depends-on): Add 'float'.
(configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
* lib/math.in.h (ceil): New declaration.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEIL,
REPLACE_CEIL.
* modules/math (Makefile.am): Substitute GNULIB_CEIL, REPLACE_CEIL.
* modules/ceil-ieee-tests: New file.
* tests/test-ceil-ieee.c: New file, based on tests/test-ceilf-ieee.c.
* tests/test-math-c++.cc: Check the signature of 'ceil'.
* doc/posix-functions/ceil.texi: Mention the new module.

13 years agoNew module 'floor-ieee'.
Bruno Haible [Tue, 21 Dec 2010 16:41:03 +0000 (17:41 +0100)]
New module 'floor-ieee'.

* modules/floor-ieee: New file.
* m4/floor.m4 (gl_FUNC_FLOOR): Require gl_MATH_H_DEFAULTS. If
gl_FUNC_FLOOR_IEEE is also used, test whether floor works according to
ISO C 99 with IEC 60559.
* m4/floor-ieee.m4: New file.
* modules/floor (Files): Add lib/floor.c.
(Depends-on): Add 'float'.
(configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
* lib/math.in.h (floor): New declaration.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOOR,
REPLACE_FLOOR.
* modules/math (Makefile.am): Substitute GNULIB_FLOOR, REPLACE_FLOOR.
* modules/floor-ieee-tests: New file.
* tests/test-floor-ieee.c: New file, based on tests/test-floorf-ieee.c.
* tests/test-math-c++.cc: Check the signature of 'floor'.
* doc/posix-functions/floor.texi: Mention the new module.

13 years agoNew module 'roundf-ieee'.
Bruno Haible [Tue, 21 Dec 2010 14:58:00 +0000 (15:58 +0100)]
New module 'roundf-ieee'.

* modules/roundf-ieee: New file.
* m4/roundf.m4 (gl_FUNC_ROUNDF): If gl_FUNC_ROUNDF_IEEE is also used,
test whether roundf works according to ISO C 99 with IEC 60559.
* m4/roundf-ieee.m4: New file.
* modules/roundf-ieee-tests: New file.
* tests/test-roundf-ieee.c: New file, based on tests/test-roundf1.c.
* tests/test-roundf1.c (main): Remove signbit tests.
* modules/roundf-tests (Depends-on): Remove 'signbit'.
* doc/posix-functions/roundf.texi: Mention the new module.

13 years agoNew module 'truncf-ieee'.
Bruno Haible [Tue, 21 Dec 2010 14:44:21 +0000 (15:44 +0100)]
New module 'truncf-ieee'.

* modules/truncf-ieee: New file.
* m4/truncf.m4 (gl_FUNC_TRUNCF): If gl_FUNC_TRUNCF_IEEE is also used,
test whether truncf works according to ISO C 99 with IEC 60559.
* m4/truncf-ieee.m4: New file.
* lib/math.in.h (truncf): Replace if REPLACE_TRUNCF is set.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCF.
* modules/math (Makefile.am): Substitute REPLACE_TRUNCF.
* modules/truncf-ieee-tests: New file.
* tests/test-truncf-ieee.c: New file, based on tests/test-truncf1.c.
* tests/test-truncf1.c (main): Remove signbit tests.
* modules/truncf-tests (Depends-on): Remove 'signbit'.
* doc/posix-functions/truncf.texi: Mention the new module.

13 years agoNew module 'ceilf-ieee'.
Bruno Haible [Tue, 21 Dec 2010 13:32:25 +0000 (14:32 +0100)]
New module 'ceilf-ieee'.

* modules/ceilf-ieee: New file.
* m4/ceilf.m4 (gl_FUNC_FLOORF): If gl_FUNC_CEILF_IEEE is also used,
test whether ceilf works according to ISO C 99 with IEC 60559.
* m4/ceilf-ieee.m4: New file.
* modules/ceilf-ieee-tests: New file.
* tests/test-ceilf-ieee.c: New file, based on tests/test-ceilf1.c.
* tests/test-ceilf1.c (main): Remove signbit tests.
* modules/ceilf-tests (Depends-on): Remove 'signbit'.
* doc/posix-functions/ceilf.texi: Mention the new module.

13 years agoNew module 'floorf-ieee'.
Bruno Haible [Tue, 21 Dec 2010 04:04:13 +0000 (05:04 +0100)]
New module 'floorf-ieee'.

* modules/floorf-ieee: New file.
* m4/floorf.m4 (gl_FUNC_FLOORF): If gl_FUNC_FLOORF_IEEE is also used,
test whether floorf works according to ISO C 99 with IEC 60559.
* m4/floorf-ieee.m4: New file.
* modules/floorf-ieee-tests: New file.
* tests/test-floorf-ieee.c: New file, based on tests/test-floorf1.c.
* tests/test-floorf1.c (main): Remove signbit tests.
* modules/floorf-tests (Depends-on): Remove 'signbit'.
* doc/posix-functions/floorf.texi: Mention the new module.

13 years agoSupport for minus zero in autoconf macros.
Bruno Haible [Tue, 21 Dec 2010 13:18:46 +0000 (14:18 +0100)]
Support for minus zero in autoconf macros.

* m4/minus-zero.m4: New file, based on tests/minus-zero.h.
* m4/signbit.m4 (gl_FLOAT_SIGNBIT_CODE, gl_DOUBLE_SIGNBIT_CODE,
gl_LONG_DOUBLE_SIGNBIT_CODE, gl_FLOATTYPE_SIGNBIT_CODE): New macros.
* tests/minus-zero.h: Update comments.

13 years agoTests for module 'ceil'.
Bruno Haible [Tue, 21 Dec 2010 16:28:25 +0000 (17:28 +0100)]
Tests for module 'ceil'.

* modules/ceil-tests: New file.
* tests/test-ceil1.c: New file, based on tests/test-ceill.c.
* tests/test-ceil2.c: New file, based on tests/test-ceilf2.c.

13 years agoTests for module 'floor'.
Bruno Haible [Tue, 21 Dec 2010 16:16:09 +0000 (17:16 +0100)]
Tests for module 'floor'.

* modules/floor-tests: New file.
* tests/test-floor1.c: New file, based on tests/test-floorl.c.
* tests/test-floor2.c: New file, based on tests/test-floorf2.c.

13 years agomath: Fix indentation.
Bruno Haible [Tue, 21 Dec 2010 15:11:13 +0000 (16:11 +0100)]
math: Fix indentation.

* lib/math.in.h (floorf): Fix indentation.

13 years agoFix cross-compilation guesses on Solaris.
Bruno Haible [Tue, 21 Dec 2010 11:54:21 +0000 (12:54 +0100)]
Fix cross-compilation guesses on Solaris.

* m4/fopen.m4 (gl_FUNC_FOPEN): Correct shell pattern so that it does
not match "solaris2.10".
* m4/open.m4 (gl_FUNC_OPEN): Likewise.
* m4/printf.m4 (gl_SNPRINTF_TRUNCATION_C99, gl_SNPRINTF_DIRECTIVE_N,
gl_VSNPRINTF_ZEROSIZE_C99): Likewise.

13 years agosnprintf: port snprintf (NULL, 0, ...) to Solaris 8 and 9
Paul Eggert [Tue, 21 Dec 2010 09:15:32 +0000 (01:15 -0800)]
snprintf: port snprintf (NULL, 0, ...) to Solaris 8 and 9

This fixes a problem observed with the latest coreutils snapshot
that caused a test to fail on Solaris 8.  src/csplit.c's call
snprintf (NULL, 0, format, UINT_MAX) returns -1 on Solaris 9 and
earlier, instead of returning the number of bytes that would have
been generated; this causes csplit to incorrectly report memory
exhaustion.
* m4/printf.m4 (gl_SNPRINTF_RETVAL_C99): Also check for
snprintf (NULL, 0, ...) and (for good measure) snprintf (buf, 0, ...).
Guess that it doesn't work on Solaris 2.6 through 9.  Adjust
comments to match.
(gl_PRINTF_SIZES_C99, gl_PRINTF_DIRECTIVE_F, gl_SNPRINTF_RETVAL_C99):
Fix typo in matching older versions of Solaris: "solaris2.10"
is matched by the shell pattern "solaris2.[0-9]*".  This matters
only for guessing while cross-compiling.
* m4/snprintf.m4 (gl_FUNC_SNPRINTF): Also check gl_SNPRINTF_RETVAL_C99.

13 years agoftoastr: fix comment again
Paul Eggert [Tue, 21 Dec 2010 07:48:19 +0000 (23:48 -0800)]
ftoastr: fix comment again

* lib/ftoastr.h: Fix typo in comment.  Noted by Ben Pfaff in
<http://lists.gnu.org/archive/html/bug-gnulib/2010-12/msg00149.html>.
Also, simplify example a bit by using flags = 0.

13 years agoround*, trunc*: Update documentation regarding glibc.
Bruno Haible [Tue, 21 Dec 2010 02:01:56 +0000 (03:01 +0100)]
round*, trunc*: Update documentation regarding glibc.

* doc/posix-functions/roundf.texi: Mention missing declaration problem.
* doc/posix-functions/round.texi: Likewise.
* doc/posix-functions/roundl.texi: Likewise.
* doc/posix-functions/truncf.texi: Likewise.
* doc/posix-functions/trunc.texi: Likewise.
* doc/posix-functions/truncl.texi: Likewise.

13 years agoroundf, round, roundl: Update documentation regarding OSF/1 5.1.
Bruno Haible [Mon, 20 Dec 2010 14:00:16 +0000 (15:00 +0100)]
roundf, round, roundl: Update documentation regarding OSF/1 5.1.

* doc/posix-functions/roundf.texi: Mention OSF/1 5.1 problem.
* doc/posix-functions/round.texi: Likewise.
* doc/posix-functions/roundl.texi: Likewise.

13 years agottyname_r: Add missing declaration on HP-UX 11.
Bruno Haible [Mon, 20 Dec 2010 12:10:22 +0000 (13:10 +0100)]
ttyname_r: Add missing declaration on HP-UX 11.

* lib/unistd.in.h (ttyname_r): Test HAVE_DECL_TTYNAME_R instead of
HAVE_TTYNAME_R.
* m4/ttyname_r.m4 (gl_FUNC_TTYNAME_R): Test whether ttyname_r is
declared. Set HAVE_TTYNAME_R always.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
HAVE_DECL_TTYNAME_R, not HAVE_TTYNAME_R.
* modules/unistd (Makefile.am): Substitute HAVE_DECL_TTYNAME_R, not
HAVE_TTYNAME_R.
* doc/posix-functions/ttyname_r.texi: Document the HP-UX 11 problem.

13 years agogetlogin, getlogin_r: Document HP-UX 11.11 bugs.
Bruno Haible [Mon, 20 Dec 2010 11:43:41 +0000 (12:43 +0100)]
getlogin, getlogin_r: Document HP-UX 11.11 bugs.

* tests/test-getlogin.c: Include <errno.h>.
(main): Avoid test failure on HP-UX 11.11.

13 years agogetlogin, getlogin_r: Document HP-UX 11.11 bugs.
Bruno Haible [Mon, 20 Dec 2010 11:31:17 +0000 (12:31 +0100)]
getlogin, getlogin_r: Document HP-UX 11.11 bugs.

* doc/posix-functions/getlogin.texi: Document HP-UX 11.11 bug.
* doc/posix-functions/getlogin_r.texi: Likewise.
* tests/test-getlogin_r.c (main): Avoid test failure on HP-UX 11.11.

13 years agogetlogin_r: Add missing declaration on HP-UX 11.
Bruno Haible [Mon, 20 Dec 2010 11:27:55 +0000 (12:27 +0100)]
getlogin_r: Add missing declaration on HP-UX 11.

* doc/posix-functions/getlogin_r.texi: Document this workaround.

13 years agogetlogin_r: Add missing declaration on HP-UX 11.
Bruno Haible [Mon, 20 Dec 2010 11:22:17 +0000 (12:22 +0100)]
getlogin_r: Add missing declaration on HP-UX 11.

* m4/getlogin_r.m4 (gl_FUNC_GETLOGIN_R): Test whether getlogin_r is
declared also when it exists as a function.

13 years agowcsrtombs: Don't confuse mbstate_t with rpl_mbstate_t.
Bruno Haible [Mon, 20 Dec 2010 10:18:11 +0000 (11:18 +0100)]
wcsrtombs: Don't confuse mbstate_t with rpl_mbstate_t.

* lib/wcsrtombs.c: If gnulib overrides mbstate_t, define wcsrtombs
through wcrtomb.

13 years agoftoastr: fix comment
Paul Eggert [Mon, 20 Dec 2010 07:05:24 +0000 (23:05 -0800)]
ftoastr: fix comment

* lib/ftoastr.h: Fix typo in comment.  Noted by Ben Pfaff in
<http://lists.gnu.org/archive/html/bug-gnulib/2010-12/msg00130.html>.

13 years agoisnan: Ensure it is a macro.
Bruno Haible [Mon, 20 Dec 2010 02:28:45 +0000 (03:28 +0100)]
isnan: Ensure it is a macro.

* lib/math.in.h (isnan): Define as a macro if not already a macro.
* doc/posix-functions/isnan.texi: Mention problem on IRIX, OSF/1,
Solaris.

13 years agoldexpl test: Fix link error on OSF/1 5.1.
Bruno Haible [Mon, 20 Dec 2010 01:55:53 +0000 (02:55 +0100)]
ldexpl test: Fix link error on OSF/1 5.1.

* modules/ldexpl-tests (Makefile.am): Define test_ldexpl_LDADD.

13 years agowctype: Make it work in C++ mode on OSF/1 5.1.
Bruno Haible [Mon, 20 Dec 2010 01:18:07 +0000 (02:18 +0100)]
wctype: Make it work in C++ mode on OSF/1 5.1.

* lib/wctype.in.h (iswblank): Declare but not define here.
* lib/iswblank.c: New file, extracted from lib/wctype.in.h.
* m4/wctype_h.m4 (gl_WCTYPE_H): Arrange to compile it if needed.
* modules/wctype (Files): Add lib/iswblank.c.

13 years agosignal: Document problem with type of SIGRTMIN, SIGRTMAX on OSF/1 5.1.
Bruno Haible [Mon, 20 Dec 2010 00:53:15 +0000 (01:53 +0100)]
signal: Document problem with type of SIGRTMIN, SIGRTMAX on OSF/1 5.1.

* doc/posix-headers/signal.texi: Document OSF/1 5.1 problem.
* lib/strsignal.c (strsignal): Cast SIGRTMIN to 'int'.

13 years agosys_socket: Use POSIX compatible declarations on OSF/1 5.1.
Bruno Haible [Mon, 20 Dec 2010 00:41:57 +0000 (01:41 +0100)]
sys_socket: Use POSIX compatible declarations on OSF/1 5.1.

* m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): On OSF/1, define
_POSIX_PII_SOCKET.
* doc/posix-functions/recv.texi: Document the OSF/1 problem.
* doc/posix-functions/recvfrom.texi: Likewise.
* doc/posix-functions/send.texi: Likewise.
* doc/posix-functions/sendto.texi: Likewise.

13 years agotcgetsid: Add missing declaration on OSF/1 5.1.
Bruno Haible [Sun, 19 Dec 2010 23:47:57 +0000 (00:47 +0100)]
tcgetsid: Add missing declaration on OSF/1 5.1.

* lib/termios.in.h (tcgetsid): Test HAVE_DECL_TCGETSID instead of
HAVE_TCGETSID.
* m4/tcgetsid.m4 (gl_FUNC_TCGETSID): Test whether tcgetsid is declared.
Don't set HAVE_TCGETSID.
* m4/termios_h.m4 (gl_TERMIOS_H_DEFAULTS): Initialize
HAVE_DECL_TCGETSID, not HAVE_TCGETSID.
* modules/termios (Makefile.am): Substitute HAVE_DECL_TCGETSID, not
HAVE_TCGETSID.
* doc/posix-functions/tcgetsid.texi: Mention the OSF/1 5.1 problem.

13 years agostdio: Fix problem with popen() declaration on OSF/1 5.1.
Bruno Haible [Sun, 19 Dec 2010 23:32:29 +0000 (00:32 +0100)]
stdio: Fix problem with popen() declaration on OSF/1 5.1.

* lib/stdio.in.h: During the include_next statement, let recursive
includes of this file include only the system header file.

13 years agoiconv_open: Fix regression from 2010-12-04.
Bruno Haible [Sun, 19 Dec 2010 23:19:57 +0000 (00:19 +0100)]
iconv_open: Fix regression from 2010-12-04.

* m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN_UTF): Fix typo.
Reported by Noah Lavine <noah.b.lavine@gmail.com>.

13 years agostdbool test: Avoid a gcc warning.
Bruno Haible [Sun, 19 Dec 2010 22:51:54 +0000 (23:51 +0100)]
stdbool test: Avoid a gcc warning.

* tests/test-stdbool.c (main): Fail if e1 is false.
Reported by Jim Meyering.

13 years agosetenv: restore to working order
Jim Meyering [Sun, 19 Dec 2010 21:48:27 +0000 (22:48 +0100)]
setenv: restore to working order

$HAVE_SETENV is used in gl_FUNC_SETENV, yet its definitions were
mistakenly removed.
* m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): Restore code to set
HAVE_SETENV.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Restore code to initialize
HAVE_SETENV.

13 years agoDocument some different function declarations on OSF/1 5.1.
Bruno Haible [Sun, 19 Dec 2010 21:41:16 +0000 (22:41 +0100)]
Document some different function declarations on OSF/1 5.1.

* doc/posix-functions/gai_strerror.texi: Mention different declaration.
* doc/posix-functions/inet_ntop.texi: Likewise.
* doc/posix-functions/gethostname.texi: Likewise.
* lib/unistd.in.h (gethostname): Update comment.

13 years agodoc: Mention vasprintf-posix module.
Bruno Haible [Sun, 19 Dec 2010 18:26:51 +0000 (19:26 +0100)]
doc: Mention vasprintf-posix module.

* doc/glibc-functions/asprintf.texi: Mention the workarounds present in
the 'vasprintf-posix' module.
* doc/glibc-functions/vasprintf.texi: Likewise.

13 years agounsetenv: Add missing declaration on OSF/1 5.1.
Bruno Haible [Sun, 19 Dec 2010 17:35:54 +0000 (18:35 +0100)]
unsetenv: Add missing declaration on OSF/1 5.1.

* lib/stdlib.in.h (setenv): Test HAVE_DECL_UNSETENV, not HAVE_UNSETENV.
* m4/setenv.m4 (gl_FUNC_UNSETENV): Test whether unsetenv is declared.
Don't set HAVE_UNSETENV. In the test program, set _BSD.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize HAVE_DECL_UNSETENV,
not HAVE_UNSETENV.
* modules/stdlib (Makefile.am): Substitute HAVE_DECL_UNSETENV, not
HAVE_UNSETENV.
* doc/posix-functions/unsetenv.texi: Mention the OSF/1 5.1 problem.

13 years agosetenv: Add missing declaration on OSF/1 5.1.
Bruno Haible [Sun, 19 Dec 2010 17:08:03 +0000 (18:08 +0100)]
setenv: Add missing declaration on OSF/1 5.1.

* lib/stdlib.in.h (setenv): Test HAVE_DECL_SETENV, not HAVE_SETENV.
* m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): Test whether setenv is
declared. Don't set HAVE_SETENV.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize HAVE_DECL_SETENV,
not HAVE_SETENV.
* modules/stdlib (Makefile.am): Substitute HAVE_DECL_SETENV, not
HAVE_SETENV.
* doc/posix-functions/setenv.texi: Mention the OSF/1 5.1 problem.

13 years agonl_langinfo tests: Avoid gcc warning.
Bruno Haible [Sun, 19 Dec 2010 16:08:39 +0000 (17:08 +0100)]
nl_langinfo tests: Avoid gcc warning.

* tests/test-nl_langinfo.c: Don't enable the GCC pragma for GCC 4.2.

13 years agomknod: Avoid error in C++ mode on OSF/1 with GCC.
Bruno Haible [Sun, 19 Dec 2010 14:44:42 +0000 (15:44 +0100)]
mknod: Avoid error in C++ mode on OSF/1 with GCC.

* lib/sys_stat.in.h (mknod): Use _GL_CXXALIAS_SYS_CAST instead of
_GL_CXXALIAS_SYS.

13 years agostdbool: Relax test.
Bruno Haible [Sun, 19 Dec 2010 14:27:30 +0000 (15:27 +0100)]
stdbool: Relax test.

* tests/test-stdbool.c (e): Don't require that casts from a variable's
address to 'bool' work in static initializer, for compilers other than
GCC.

13 years agoftello: Add missing declaration on OSF/1 5.1.
Bruno Haible [Sun, 19 Dec 2010 13:59:22 +0000 (14:59 +0100)]
ftello: Add missing declaration on OSF/1 5.1.

* lib/stdio.in.h (ftello): Test HAVE_DECL_FTELLO, not HAVE_FTELLO.
* m4/ftello.m4 (gl_FUNC_FTELLO): Test whether ftello is declared.
* m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize HAVE_DECL_FTELLO.
* modules/stdio (Makefile.am): Substitute HAVE_DECL_FTELLO.
* doc/posix-functions/ftello.texi: Mention the OSF/1 5.1 problem.

13 years agofseeko: Add missing declaration on OSF/1 5.1.
Bruno Haible [Sun, 19 Dec 2010 13:53:15 +0000 (14:53 +0100)]
fseeko: Add missing declaration on OSF/1 5.1.

* lib/stdio.in.h (fseeko): Test HAVE_DECL_FSEEKO, not HAVE_FSEEKO.
* m4/fseeko.m4 (gl_FUNC_FSEEKO): Test whether fseeko is declared.
* m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize HAVE_DECL_FSEEKO.
* modules/stdio (Makefile.am): Substitute HAVE_DECL_FSEEKO.
* doc/posix-functions/fseeko.texi: Mention the OSF/1 5.1 problem.

13 years agofchdir: Add missing declaration on OSF/1 5.1.
Bruno Haible [Sun, 19 Dec 2010 13:33:14 +0000 (14:33 +0100)]
fchdir: Add missing declaration on OSF/1 5.1.

* lib/unistd.in.h (fchdir): Provide declaration if systems lacks it.
* m4/fchdir.m4 (gl_FUNC_FCHDIR): Check whether fchdir is declared.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize HAVE_DECL_FCHDIR.
* modules/unistd (Makefile.am): Substitute HAVE_DECL_FCHDIR.
* doc/posix-functions/fchdir.texi: Mention the OSF/1 5.1 problem.

13 years agorelocatable-prog-wrapper: Separate from relocatable-prog.
Bruno Haible [Sun, 19 Dec 2010 10:59:10 +0000 (11:59 +0100)]
relocatable-prog-wrapper: Separate from relocatable-prog.

* modules/relocatable-prog (Makefile.am): Define uninstall-hook and
uninstall-relocwrapper rule here.
* modules/relocatable-prog-wrapper (Makefile.am): ... not here.
Reported by Ian Beckwith <ianb@erislabs.net>.

13 years agounistr/u8-mbsnlen: Add missing dependency.
Bruno Haible [Sun, 19 Dec 2010 10:23:11 +0000 (11:23 +0100)]
unistr/u8-mbsnlen: Add missing dependency.

* modules/unistr/u8-mbsnlen (Depends-on): Add unistr/u8-mbtouc.
Reported by Ian Beckwith <ianb@erislabs.net>.

13 years agoiconv: Make it possible again to use this module without 'iconv-h'.
Bruno Haible [Sun, 19 Dec 2010 10:11:22 +0000 (11:11 +0100)]
iconv: Make it possible again to use this module without 'iconv-h'.

* modules/iconv (configure.ac): Don't invoke gl_ICONV_MODULE_INDICATOR
if it is not defined.
Reported by Ian Beckwith <ianb@erislabs.net>.

13 years agoacl: port to Solaris 8 when copying from tmpfs to ufs
Paul Eggert [Sun, 19 Dec 2010 06:22:43 +0000 (22:22 -0800)]
acl: port to Solaris 8 when copying from tmpfs to ufs

* lib/copy-acl.c (qcopy_acl): Also allow EINVAL as an ignorable
error number.  Problem observed on Solaris 8 with latest
coreutils, with "mv A B", where A is on a tmpfs file system and B
is on a ufs file system.  This caused coreutils' mv/part-symlink
test to fail.

13 years agotests: set fail=0 at start
Paul Eggert [Sun, 19 Dec 2010 03:54:27 +0000 (19:54 -0800)]
tests: set fail=0 at start

* tests/init.sh (setup_): Move fail=0 initialization here ...
(mktempd_): ... from here, so that tests can rely on fail being
set to 0 initially.  This fixes a problem in coreutils; see:
http://lists.gnu.org/archive/html/coreutils/2010-12/msg00083.html

13 years agomemmem-simple: Stylistic changes.
Bruno Haible [Sun, 19 Dec 2010 00:05:39 +0000 (01:05 +0100)]
memmem-simple: Stylistic changes.

* m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): Avoid possible gcc warning.
Fix preprocessor directive indentation.

13 years agomemmem: rearrange memmem and expand memmem-simple modules
Pádraig Brady [Tue, 22 Jun 2010 23:42:54 +0000 (00:42 +0100)]
memmem: rearrange memmem and expand memmem-simple modules

Move all functional checks to memmem-simple so that one has
a fully functional memmem by using just this module.
Restrict the memmem module to performance checks only.
Document exactly how the memmem and memmem-simple modules
relate to each other.

* m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE, gl_FUNC_MEMMEM): Move the
empty needle check from the memmem module to memmem-simple.
Also expand the empty needle check to ensure the correct
pointer is returned, not just a non NULL pointer.
In gl_FUNC_MEMMEM, make the cross compilation check only
consider the versions with performance issues.
* doc/glibc-functions/memmem.texi: Rearrange the portability
documentation to correlate with the rearranged checks.

13 years agoImprove cross-compilation guesses for uClibc.
Pádraig Brady [Wed, 15 Dec 2010 19:28:52 +0000 (20:28 +0100)]
Improve cross-compilation guesses for uClibc.

* m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): When cross-compiling, assume
that uClibc does not have the glibc bug.
* m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Likewise.
* m4/strstr.m4 (gl_FUNC_STRSTR_SIMPLE): Likewise.

13 years agoconfigmake: provide fallbacks for oldest supported autotools
Eric Blake [Tue, 14 Dec 2010 22:55:43 +0000 (15:55 -0700)]
configmake: provide fallbacks for oldest supported autotools

* m4/configmake.m4: New file.
* modules/configmake (Files): Ship it.
(configure.ac): Use it to guarantee fallbacks.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agoread-file: reorganize to avoid various issues
Pádraig Brady [Mon, 13 Dec 2010 08:08:23 +0000 (08:08 +0000)]
read-file: reorganize to avoid various issues

* lib/read-file.c (fread_file): Read 1 more byte than is
currently in a regular file, to immediately detect EOF,
and thus avoid any realloc()s.  As well as being slower,
these may fail, thus artificially limiting the supported size.
Allocate up to SIZE_MAX for streams, rather than limiting
to about SIZE_MAX - SIZE_MAX/5.
Don't use the 'size + BUFSIZ + 1' expression, which
could overflow and cause invalid operation.
As a style decision, explicitly check for overflow rather
than using a temporary roll over variable (new_alloc).

13 years agocloexec, fcntl: relax license
Eric Blake [Mon, 13 Dec 2010 17:02:59 +0000 (10:02 -0700)]
cloexec, fcntl: relax license

* modules/cloexec (License): Change from LGPLv3+ to LGPLv2+, with
consent from all contributors.
* modules/fcntl (License): Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agoautoupdate
Karl Berry [Sun, 12 Dec 2010 15:43:48 +0000 (07:43 -0800)]
autoupdate

13 years agoTweak last ChangeLog entry.
Bruno Haible [Sat, 11 Dec 2010 02:29:55 +0000 (03:29 +0100)]
Tweak last ChangeLog entry.

13 years agoTests for module 'pipe-posix.
Bruno Haible [Sat, 11 Dec 2010 02:23:44 +0000 (03:23 +0100)]
Tests for module 'pipe-posix.

* modules/pipe-posix-tests: New file.
* tests/test-pipe.c: New file, based on tests/test-pipe2.c.

13 years agoOops, fix mistake in last commit.
Bruno Haible [Sat, 11 Dec 2010 02:19:56 +0000 (03:19 +0100)]
Oops, fix mistake in last commit.

13 years agopipe-posix: Make it work in C++ mode.
Bruno Haible [Sat, 11 Dec 2010 02:03:05 +0000 (03:03 +0100)]
pipe-posix: Make it work in C++ mode.

* lib/unistd.in.h: Don't include <io.h>, <fcntl.h> for pipe.
(pipe): Use common idiom, not a macro definition.
* lib/pipe.c: New file.
* m4/pipe.m4: New file.
* modules/pipe-posix (Description): Enhance.
(Files): Add lib/pipe.c, m4/pipe.m4.
(configure.ac): Invoke gl_FUNC_PIPE.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize HAVE_PIPE.
* modules/unistd (Makefile.am): Substitute HAVE_PIPE.
* tests/test-unistd-c++.cc: Check the signature of pipe.

13 years agoRename module 'pipe' to 'spawn-pipe'.
Bruno Haible [Sat, 11 Dec 2010 01:00:44 +0000 (02:00 +0100)]
Rename module 'pipe' to 'spawn-pipe'.

* modules/spawn-pipe: New file, renamed from modules/pipe.
(Files, configure.ac, Makefile.am): Update.
(Include): Mention "spawn-pipe.h" instead of "pipe.h".
* modules/pipe: Reduce to an obsolete indirection to 'spawn-pipe'.
* lib/spawn-pipe.h: New file, renamed from lib/pipe.h.
* lib/spawn-pipe.c: New file, renamed from lib/pipe.c. Include
"spawn-pipe.h" instead of "pipe.h".
* m4/spawn-pipe.m4: New file, renamed from m4/pipe.m4. Rename gl_PIPE
to gl_SPAWN_PIPE.
* modules/spawn-pipe-tests: New file, renamed from modules/pipe-tests.
(Files, Makefile.am): Update.
* tests/test-spawn-pipe.sh: New file, renamed from tests/test-pipe.sh.
Update.
* tests/test-spawn-pipe.c: New file, renamed from tests/test-pipe.c.
Include "spawn-pipe.h" instead of "pipe.h".
* lib/csharpcomp.c: Include "spawn-pipe.h" instead of "pipe.h".
* lib/javacomp.c: Likewise.
* lib/javaversion.c: Likewise.
* lib/pipe-filter-gi.c: Likewise.
* lib/pipe-filter-ii.c: Likewise.
* modules/csharpcomp (Depends-on): Add 'spawn-pipe', remove 'pipe'.
* modules/javacomp (Depends-on): Likewise.
* modules/javaversion (Depends-on): Likewise.
* modules/pipe-filter-gi (Depends-on): Likewise.
* modules/pipe-filter-ii (Depends-on): Likewise.
* MODULES.html.sh (Executing programs): Update.
* NEWS: Mention the change.

13 years agopipe-posix: new module
Eric Blake [Fri, 10 Dec 2010 22:18:38 +0000 (15:18 -0700)]
pipe-posix: new module

* modules/pipe-posix: New file.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set default.
(gl_UNISTD_H): Check for declaration.
* modules/unistd (Makefile.am): Substitute it.
* lib/unistd.in.h (pipe): Provide it for mingw.
* doc/posix-functions/pipe.texi (pipe): Update documentation.
* MODULES.html.sh (File descriptor based Input/Output): Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years ago* build-aux/gendocs.sh: restore x bit
Eric Blake [Fri, 10 Dec 2010 16:40:08 +0000 (09:40 -0700)]
* build-aux/gendocs.sh: restore x bit