gnulib.git
13 years agoNew module 'wcscpy'.
Bruno Haible [Sat, 5 Feb 2011 13:23:31 +0000 (14:23 +0100)]
New module 'wcscpy'.

* modules/wcscpy: New file.
* lib/wchar.in.h (wcscpy): New declaration.
* lib/wcscpy.c: New file.
* lib/wcscpy-impl.h: New file, from libutf8 with modifications.
* m4/wcscpy.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscpy is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCPY, HAVE_WCSCPY.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSCPY, HAVE_WCSCPY.
* tests/test-wchar-c++.cc: Test the declaration of wcscpy.
* doc/posix-functions/wcscpy.texi: Mention the new module.

13 years agoNew module 'wcsnlen'.
Bruno Haible [Sat, 5 Feb 2011 12:45:22 +0000 (13:45 +0100)]
New module 'wcsnlen'.

* modules/wcsnlen: New file.
* lib/wchar.in.h (wcsnlen): New declaration.
* lib/wcsnlen.c: New file.
* lib/wcsnlen-impl.h: New file, from libutf8 with modifications.
* m4/wcsnlen.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsnlen is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNLEN, HAVE_WCSNLEN.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSNLEN, HAVE_WCSNLEN.
* tests/test-wchar-c++.cc: Test the declaration of wcsnlen.
* doc/posix-functions/wcsnlen.texi: Mention the new module.

13 years agoNew module 'wcslen'.
Bruno Haible [Sat, 5 Feb 2011 12:36:58 +0000 (13:36 +0100)]
New module 'wcslen'.

* modules/wcslen: New file.
* lib/wchar.in.h (wcslen): New declaration.
* lib/wcslen.c: New file.
* lib/wcslen-impl.h: New file, from libutf8 with modifications.
* m4/wcslen.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcslen is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSLEN, HAVE_WCSLEN.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSLEN, HAVE_WCSLEN.
* tests/test-wchar-c++.cc: Test the declaration of wcslen.
* doc/posix-functions/wcslen.texi: Mention the new module.

13 years agoNew module 'wmemset'.
Bruno Haible [Sat, 5 Feb 2011 12:28:21 +0000 (13:28 +0100)]
New module 'wmemset'.

* modules/wmemset: New file.
* lib/wchar.in.h (wmemset): New declaration.
* lib/wmemset.c: New file.
* lib/wmemset-impl.h: New file, from libutf8 with modifications.
* m4/wmemset.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemset is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMSET, HAVE_WMEMSET.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMSET, HAVE_WMEMSET.
* tests/test-wchar-c++.cc: Test the declaration of wmemset.
* doc/posix-functions/wmemset.texi: Mention the new module.

13 years agoNew module 'wmemmove'.
Bruno Haible [Sat, 5 Feb 2011 12:07:51 +0000 (13:07 +0100)]
New module 'wmemmove'.

* modules/wmemmove: New file.
* lib/wchar.in.h (wmemmove): New declaration.
* lib/wmemmove.c: New file.
* lib/wmemmove-impl.h: New file, from libutf8 with modifications.
* m4/wmemmove.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemmove is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMMOVE, HAVE_WMEMMOVE.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMMOVE,
HAVE_WMEMMOVE.
* tests/test-wchar-c++.cc: Test the declaration of wmemmove.
* doc/posix-functions/wmemmove.texi: Mention the new module.

13 years agoNew module 'wmemcpy'.
Bruno Haible [Sat, 5 Feb 2011 11:58:40 +0000 (12:58 +0100)]
New module 'wmemcpy'.

* modules/wmemcpy: New file.
* lib/wchar.in.h (wmemcpy): New declaration.
* lib/wmemcpy.c: New file.
* lib/wmemcpy-impl.h: New file, from libutf8 with modifications.
* m4/wmemcpy.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemcpy is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMCPY, HAVE_WMEMCPY.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMCPY, HAVE_WMEMCPY.
* tests/test-wchar-c++.cc: Test the declaration of wmemcpy.
* doc/posix-functions/wmemcpy.texi: Mention the new module.

13 years agoNew module 'wmemcmp'.
Bruno Haible [Sat, 5 Feb 2011 11:47:22 +0000 (12:47 +0100)]
New module 'wmemcmp'.

* modules/wmemcmp: New file.
* lib/wchar.in.h (wmemcmp): New declaration.
* lib/wmemcmp.c: New file.
* lib/wmemcmp-impl.h: New file, from libutf8 with modifications.
* m4/wmemcmp.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemcmp is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMCMP, HAVE_WMEMCMP.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMCMP, HAVE_WMEMCMP.
* tests/test-wchar-c++.cc: Test the declaration of wmemcmp.
* doc/posix-functions/wmemcmp.texi: Mention the new module.

13 years agodi-set, ino-map: new modules, from coreutils
Jim Meyering [Mon, 7 Feb 2011 15:01:24 +0000 (16:01 +0100)]
di-set, ino-map: new modules, from coreutils

* lib/di-set.c: New file.
* lib/di-set.h: Likewise.
* lib/ino-map.c: Likewise.
* lib/ino-map.h: Likewise.
* modules/di-set: Likewise.
* modules/di-set-tests: Likewise.
* modules/ino-map: Likewise.
* modules/ino-map-tests: Likewise.
* tests/test-di-set.c: Likewise.
* tests/test-ino-map.c: Likewise.

13 years agogetloadavg: merge minor changes from Emacs
Paul Eggert [Mon, 7 Feb 2011 07:26:59 +0000 (23:26 -0800)]
getloadavg: merge minor changes from Emacs

* lib/getloadavg.c (getloadavg_initialized): More-accurate comment.
(getloadavg): Use memset, not bzero.

2008-07-25  Chong Yidong  <cyd@stupidchicken.com>
* lib/getloadavg.c (nl): Rename to name_list to avoid ncurses.h
clash (bug#86).

13 years agoAllow multiple gnulib generated replacements to coexist.
Bruno Haible [Sun, 14 Nov 2010 16:48:50 +0000 (17:48 +0100)]
Allow multiple gnulib generated replacements to coexist.

* lib/getopt.in.h (struct option): Avoid identical redefinition.
* lib/inttypes.in.h (imaxdiv_t): Likewise.
* lib/langinfo.in.h (nl_item): Likewise.
* lib/math.in.h (_NaN, NAN): Likewise.
* lib/netdb.in.h (struct addrinfo): Likewise.
* lib/poll.in.h (struct pollfd, nfds_t): Likewise.
* lib/pthread.in.h (pthread_t, pthread_attr_t, pthread_barrier_t,
pthread_barrierattr_t, pthread_cond_t, pthread_condattr_t,
pthread_key_t, pthread_mutex_t, pthread_mutexattr_t, pthread_once_t,
pthread_rwlock_t, pthread_rwlockattr_t, pthread_cond_destroy,
pthread_cond_init, pthread_cond_signal, pthread_cond_wait,
pthread_create, pthread_exit, pthread_join, pthread_mutexattr_destroy,
pthread_mutexattr_init, pthread_mutexattr_settype,
pthread_mutex_destroy, pthread_mutex_init, pthread_mutex_lock,
pthread_mutex_trylock, pthread_mutex_unlock, pthread_spinlock_t,
pthread_spin_init, pthread_spin_destroy, pthread_spin_lock,
pthread_spin_trylock, pthread_spin_unlock): Likewise.
* lib/sched.in.h (struct sched_param): Likewise.
* lib/se-selinux.in.h (security_class_t, security_context_t,
is_selinux_enabled, getcon, freecon, getfscreatecon, setfscreatecon,
matchpathcon, getfilecon, lgetfilecon, fgetfilecon, setfilecon,
lsetfilecon, fsetfilecon, security_check_context,
security_check_context_raw, setexeccon, matchpathcon_init_prefix):
Likewise.
* lib/search.in.h (VISIT, _gl_search_compar_fn, _gl_search_action_fn):
Likewise.
* lib/signal.in.h (sig_atomic_t, sigset_t, verify_NSIG_constraint,
_gl_function_taking_int_returning_void_t, union sigval,
struct siginfo_t, siginfo_t, struct sigaction): Likewise.
* lib/spawn.in.h (posix_spawnattr_t, posix_spawn_file_actions_t,
verify_POSIX_SPAWN_USEVFORK_no_overlap): Likewise.
* lib/stdint.in.h (gl_int8_t, gl_uint8_t, gl_int16_t, gl_uint16_t,
gl_int32_t, gl_uint32_t, gl_int64_t, gl_uint64_t, int_least8_t,
uint_least8_t, int_least16_t, uint_least16_t, int_least32_t,
uint_least32_t, int_least64_t, uint_least64_t, gl_int_fast8_t,
gl_uint_fast8_t, gl_int_fast16_t, gl_uint_fast16_t, gl_int_fast32_t,
gl_uint_fast32_t, int_fast64_t, uint_fast64_t, gl_intptr_t,
gl_uintptr_t, intmax_t, uintmax_t, _verify_intmax_size): Likewise.
* lib/stdio.in.h (rpl_fseek, rpl_ftell): Likewise.
* lib/sys_socket.in.h (sa_family_t, struct sockaddr_storage,
socklen_t, rpl_fd_isset): Likewise.
* lib/sys_stat.in.h (rpl_mkdir): Likewise.
* lib/sys_time.in.h (struct timeval): Likewise.
* lib/sys_times.in.h (struct tms): Likewise.
* lib/sys_utsname.in.h (struct utsname):
* lib/time.in.h (struct timespec, __time_t_must_be_integral): Likewise.
* lib/unistd.in.h (getpagesize): Likewise.
* lib/wchar.in.h (mbstate_t): Likewise.
* lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit,
towlower, towupper): Likewise.
Reported by Sam Steingold <sds@gnu.org>.

13 years agolibposix: Revert the unreviewed part of yesterday's big merge.
Bruce Korb [Sun, 6 Feb 2011 20:11:40 +0000 (21:11 +0100)]
libposix: Revert the unreviewed part of yesterday's big merge.

Back out yesterday's big merge from the libposix branch, except for the
openat-die.c change that was reviewed and approved by Paul Eggert.
Put the ChangeLog entry at the top, to reflect the order of changes in the
master branch.

13 years agounsetenv: work around Haiku issues
Eric Blake [Sat, 5 Feb 2011 21:31:59 +0000 (14:31 -0700)]
unsetenv: work around Haiku issues

On Haiku alpha 2, test-unsetenv.c passed in isolation with just
system headers, but failed when libgnu and replacement headers
were in use.  Why?  Because putenv("a") fails to remove "a=..."
from the environment, but the gnulib rpl_putenv works by
assigning to environ.  Apparently, Haiku is doing some funky
caching issues, and correctly removes all vestiges of environment
duplicates when Haiku is in charge, but not after assigning to
environ forces Haiku to rebuild its cache.

The m4 change is sufficient to detect Haiku's oddities, and the
existing replacement then passes just fine.

* m4/setenv.m4 (gl_FUNC_UNSETENV): Also detect Haiku issue.
* doc/posix-functions/unsetenv.texi (unsetenv): Document it.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agolibposix: Add _HEADERS primaries to posix modules.
Bruce Korb [Sat, 5 Feb 2011 16:22:48 +0000 (08:22 -0800)]
libposix: Add _HEADERS primaries to posix modules.
Modify gnulib-tool to strip them from generated Makefile.am-s where
they are not needed.  Also, replace M4 macro prefixes when requested.
Finally, omit calls to error() for libposix.

13 years agostrerror_r-posix: port to cygwin
Eric Blake [Sat, 5 Feb 2011 19:15:59 +0000 (12:15 -0700)]
strerror_r-posix: port to cygwin

* lib/strerror_r.c (strerror_r) [__CYGWIN__]: Add cygwin
implementation.
* m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Adjust comment.
* tests/test-strerror_r.c (main): Fix test.
* doc/posix-functions/strerror_r.texi (strerror_r): Document the
issue.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agoNew module 'wmemchr', part 3.
Bruno Haible [Sat, 5 Feb 2011 12:52:41 +0000 (13:52 +0100)]
New module 'wmemchr', part 3.

13 years agoNew module 'wmemchr', part 2.
Bruno Haible [Sat, 5 Feb 2011 11:32:32 +0000 (12:32 +0100)]
New module 'wmemchr', part 2.

13 years agoNew module 'wmemchr'.
Bruno Haible [Sat, 5 Feb 2011 11:25:13 +0000 (12:25 +0100)]
New module 'wmemchr'.

* modules/wmemchr: New file.
* lib/wchar.in.h (wmemchr): New declaration.
* lib/wmemchr.c: New file.
* lib/wmemchr-impl.h: New file, from libutf8 with modifications.
* m4/wmemchr.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMCHR,
HAVE_WMEMCHR.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMCHR, HAVE_WMEMCHR.
* tests/test-wchar-c++.cc: Test the declaration of wmemchr.
* doc/posix-functions/wmemchr.texi: Mention the new module.

13 years agofdopendir: detect FreeBSD bug
Eric Blake [Sat, 5 Feb 2011 04:52:40 +0000 (21:52 -0700)]
fdopendir: detect FreeBSD bug

FreeBSD fdopendir(fd) always consumes fd, even if it fails with
ENOTDIR.  The code that works around the GNU Hurd bug also fixes this;
we just need to detect it.

* m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Detect bug.
* doc/posix-functions/fdopendir.texi (fdopendir): Document it.
Reported by Jim Meyering.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agostdbool: do not define HAVE_STDBOOL_H
Paul Eggert [Sat, 5 Feb 2011 04:54:58 +0000 (20:54 -0800)]
stdbool: do not define HAVE_STDBOOL_H

* m4/stdbool.m4 (AC_CHECK_HEADER_STDBOOL): Renamed from
AC_HEADER_STDBOOL.  All uses changed.  Do not define
HAVE_STDBOOL_H, as gnulib does not need this.  This change is
imported from the latest Autoconf git.  It was motivated by Emacs,
which uses gnulib but does not need HAVE_STDBOOL_H.

13 years agowcsnrtombs: Prepare for new module wwcsnrtombs.
Bruno Haible [Sat, 5 Feb 2011 01:25:14 +0000 (02:25 +0100)]
wcsnrtombs: Prepare for new module wwcsnrtombs.

* lib/wcsnrtombs-impl.h: New file, extracted from lib/wcsnrtombs.c.
* lib/wcsnrtombs.c: Include it.
* modules/wcsnrtombs (Files): Add lib/wcsnrtombs-impl.h.

13 years agowcsrtombs: Prepare for new module wwcsrtombs.
Bruno Haible [Sat, 5 Feb 2011 01:24:20 +0000 (02:24 +0100)]
wcsrtombs: Prepare for new module wwcsrtombs.

* lib/wcsrtombs-impl.h: New file, extracted from lib/wcsrtombs.c.
* lib/wcsrtombs.c: Include it.
* modules/wcsrtombs (Files): Add lib/wcsrtombs-impl.h.

13 years agombsnrtowcs: Prepare for new module mbsnrtowwcs.
Bruno Haible [Sat, 5 Feb 2011 01:22:38 +0000 (02:22 +0100)]
mbsnrtowcs: Prepare for new module mbsnrtowwcs.

* lib/mbsnrtowcs-impl.h: New file, extracted from lib/mbsnrtowcs.c.
* lib/mbsnrtowcs.c: Include it.
* modules/mbsnrtowcs (Files): Add lib/mbsnrtowcs-impl.h.

13 years agombsrtowcs: Prepare for new module mbsrtowwcs.
Bruno Haible [Sat, 5 Feb 2011 01:21:03 +0000 (02:21 +0100)]
mbsrtowcs: Prepare for new module mbsrtowwcs.

* lib/mbsrtowcs-impl.h: New file, extracted from lib/mbsrtowcs.c.
* lib/mbsrtowcs.c: Include it.
* modules/mbsrtowcs (Files): Add lib/mbsrtowcs-impl.h.

13 years agovasnprintf: Reduce use of malloc for small format strings.
Bruno Haible [Fri, 4 Feb 2011 18:22:43 +0000 (19:22 +0100)]
vasnprintf: Reduce use of malloc for small format strings.

* lib/printf-args.h (N_DIRECT_ALLOC_ARGUMENTS): New macro.
(arguments): Add room for the first 7 arguments.
* lib/printf-parse.h (N_DIRECT_ALLOC_DIRECTIVES): New macro.
(char_directives, u8_directives, u16_directives, u32_directives): Add
room for the first 7 directives.
* lib/printf-parse.c: Include <string.h>.
(PRINTF_PARSE): Change memory handling code so that it uses the first
7 preallocated elements in an 'arguments' or 'DIRECTIVES' struct.
* lib/vasnprintf.c (VASNPRINTF): Update memory handling code.
Reported by Pádraig Brady <P@draigbrady.com>.

13 years agoautoudpate
Karl Berry [Fri, 4 Feb 2011 14:42:28 +0000 (06:42 -0800)]
autoudpate

13 years agoupdate from texinfo
Karl Berry [Tue, 1 Feb 2011 18:04:17 +0000 (10:04 -0800)]
update from texinfo

13 years agodup2: work around Haiku bug
Eric Blake [Tue, 1 Feb 2011 03:14:37 +0000 (20:14 -0700)]
dup2: work around Haiku bug

dup2(n,n) must be a no-op, but on Haiku, it resets FD_CLOEXEC.
However, we must keep the Linux workaround for dup2(n,n)
returning (unsigned int)-EBADF.

* m4/dup2.m4 (gl_FUNC_DUP2): Test for bug.
* lib/dup2.c (rpl_dup2) [!WIN32]: Add workaround.
* doc/posix-functions/dup2.texi (dup2): Document the bug.
* tests/test-dup2.c (main): Enhance test.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agodoc: off_t is not available in eglibc 2.11.2 stdio.h.
Simon Josefsson [Mon, 31 Jan 2011 15:00:08 +0000 (16:00 +0100)]
doc: off_t is not available in eglibc 2.11.2 stdio.h.

* doc/posix-headers/stdio.texi (stdio.h): Mention that off_t isn't
declared by eglibc 2.11.2.
* lib/stdio.in.h: Likewise.

13 years agoignore-value: add missing test dependency
Eric Blake [Mon, 31 Jan 2011 14:51:52 +0000 (07:51 -0700)]
ignore-value: add missing test dependency

This reverts commit 13f769497814bf636c5d2a98f1b17cbf0d088be9.

* tests/test-ignore-value.c: Revert previous change; stdio.h
provides off_t.
* modules/ignore-value-tests (Depends-on): Add missing dependency.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agomktime: clarify long_int width checking
Paul Eggert [Sun, 30 Jan 2011 17:36:23 +0000 (09:36 -0800)]
mktime: clarify long_int width checking

* lib/mktime.c (long_int_is_wide_enough): Move this assertion to
the top level, to make it clearer that the assumption about
long_int width is being checked.  See
<http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00554.html>.

13 years agoignore-value: Fix self-test.
Simon Josefsson [Sun, 30 Jan 2011 08:28:59 +0000 (09:28 +0100)]
ignore-value: Fix self-test.

* tests/test-ignore-value.c: Include sys/types.h for off_t.

13 years agoTYPE_MAXIMUM: avoid theoretically undefined behavior
Paul Eggert [Sun, 30 Jan 2011 07:59:31 +0000 (23:59 -0800)]
TYPE_MAXIMUM: avoid theoretically undefined behavior

* lib/intprops.h (TYPE_MINIMUM, TYPE_MAXIMUM): Do not shift a
negative number, which the C Standard says has undefined behavior.
In practice this is not a problem, but might as well do it by the book.
Reported by Rich Felker and Eric Blake; see
<http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00493.html>.
* lib/strtol.c (TYPE_MINIMUM, TYPE_MAXIMUM): Likewise.
* m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
* m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
* m4/parse-datetime.m4 (gl_PARSE_DATETIME): Likewise.
* m4/stdint.m4 (gl_STDINT_H): Likewise.
* lib/mktime.c (TYPE_MAXIMUM): Redo slightly to match the others.

13 years agomktime: #undef mktime before #defining it
Paul Eggert [Sun, 30 Jan 2011 07:04:27 +0000 (23:04 -0800)]
mktime: #undef mktime before #defining it

* lib/mktime.c (mktime) [DEBUG]: #undef mktime before #defining it.

13 years agomktime: systematically normalize tm_isdst comparisons
Paul Eggert [Sun, 30 Jan 2011 07:00:55 +0000 (23:00 -0800)]
mktime: systematically normalize tm_isdst comparisons

* lib/mktime.c (isdst_differ): New function.
(__mktime_internal): Use it systematically for all isdst comparisons.
This completes the fix for libc BZ #6723, and removes the need for
normalizing tm_isdst.  See
<http://sourceware.org/bugzilla/show_bug.cgi?id=6723>
(not_equal_tm) [DEBUG]: Use isdst_differ here, too.

13 years agomktime: fix some integer overflow issues and sidestep the rest
Paul Eggert [Sat, 29 Jan 2011 23:47:04 +0000 (15:47 -0800)]
mktime: fix some integer overflow issues and sidestep the rest

This was prompted by a bug report by Benjamin Lindner for MinGW
<http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00472.html>.
His bug is due to signed integer overflow (0 - INT_MIN), and I
I scanned through mktime.c looking for other integer overflow
problems, fixing all the bugs I found.

Although the C Standard says the resulting code is still not safe
in the presence of integer overflow, in practice it should be good
enough for all real-world two's-complement implementations, except
for debugging environments that deliberately trap on integer
overflow (e.g., gcc -ftrapv).

* lib/mktime.c (WRAPV): New macro.
(SHR): Also check that long_int and time_t shift right in the
usual way, before using the fast-but-unportable method.
(TYPE_ONES_COMPLEMENT, TYPE_SIGNED_MAGNITUDE): Remove, no longer
used.  The code already assumed two's complement, so there's
no need to test for alternatives.  All uses removed.
(TYPE_MAXIMUM): Don't rely here on overflow behavior not defined by
the C standard.  Problem reported by Rich Felker in
<http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00488.html>.
(twos_complement_arithmetic): Also check long_int and time_t.
(time_t_avg, time_t_add_ok, time_t_int_add_ok): New functions.
(guess_time_tm, ranged_convert, __mktime_internal): Use them.
(__mktime_internal): Avoid integer overflow with unary subtraction
in two instances where -1 - X is an adequate replacement for -X,
since the calculations are approximate.

13 years agomktime: avoid infinite loop
Eric Blake [Thu, 27 Jan 2011 17:06:08 +0000 (10:06 -0700)]
mktime: avoid infinite loop

* m4/mktime.m4 (AC_FUNC_MKTIME): Avoid overflow on possibly-signed
type; behavior is still undefined but portable to all known targets.
Reported by Rich Felker.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agorename, unlink, same-inode: Relicense.
Simon Josefsson [Sat, 29 Jan 2011 09:48:36 +0000 (10:48 +0100)]
rename, unlink, same-inode: Relicense.

* modules/rename (License): Relax from LGPLv3+ to LGPLv2+.
* modules/unlink (License): Likewise.
* modules/same-inode (License): Likewise.

13 years agomktime: avoid problems on NetBSD 5 / i386
Paul Eggert [Sat, 29 Jan 2011 05:02:31 +0000 (21:02 -0800)]
mktime: avoid problems on NetBSD 5 / i386

* lib/mktime.c (long_int): New type.  This works around a problem
on NetBSD 5 / i386, where 'long int' and 'int' are both 32 bits
but time_t is 64 bits, and where I expect the existing code is
wrong in some cases.
(leapyear, ydhms_diff, guess_time_tm, __mktime_internal): Use it.
(ydhms_diff): Bring back the compile-time check for wide-enough
year and yday.

13 years agoautoupdate
Karl Berry [Sat, 29 Jan 2011 00:41:34 +0000 (16:41 -0800)]
autoupdate

13 years agomktime: fix misspelling in comment
Paul Eggert [Fri, 28 Jan 2011 23:57:13 +0000 (15:57 -0800)]
mktime: fix misspelling in comment

* lib/mktime.c (__mktime_internal): Fix misspelling in comment.
This merges all recent glibc changes of importance.

13 years agomove-if-change: cope with concurrent mv of identical file.
Ralf Wildenhues [Sat, 22 Jan 2011 15:44:52 +0000 (16:44 +0100)]
move-if-change: cope with concurrent mv of identical file.

* build-aux/move-if-change (CMPPROG): Accept environment
variable as an override for `cmp'.
(usage): Document CMPPROG.
Adjust comparison to drop stdout.  Cope with failure of mv if
the target file exists and is identical to the source, for
parallel builds.
Report from H.J. Lu against binutils in PR binutils/12283.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13 years agousers.txt: Mention sharutils.
Bruce Korb [Fri, 28 Jan 2011 17:48:01 +0000 (09:48 -0800)]
users.txt: Mention sharutils.

13 years agodoc: Update users.txt
Simon Josefsson [Fri, 28 Jan 2011 10:24:24 +0000 (11:24 +0100)]
doc: Update users.txt

* users.txt: Mention OATH Toolkit.

13 years agoPrepare for supporting FreeBSD 10.
Bruno Haible [Thu, 27 Jan 2011 18:09:25 +0000 (19:09 +0100)]
Prepare for supporting FreeBSD 10.

* build-aux/config.libpath: Remove handling of freebsd1*.

13 years agoPrepare for supporting FreeBSD 10.
Gerald Pfeifer [Thu, 27 Jan 2011 18:08:29 +0000 (19:08 +0100)]
Prepare for supporting FreeBSD 10.

* build-aux/config.rpath: Remove handling of freebsd1* which soon would
match FreeBSD 10.0.

13 years agovma-iter, get-rusage-as: Add OpenBSD support.
Bruno Haible [Thu, 27 Jan 2011 10:42:45 +0000 (11:42 +0100)]
vma-iter, get-rusage-as: Add OpenBSD support.

* modules/vma-iter (configure.ac): Test for mquery.
* lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on OpenBSD.
* lib/vma-iter.c: Include <sys/mman.h>.
(vma_iterate): Add an implementation based on mquery().
* lib/resource-ext.h (get_rusage_as): Update comments.
* lib/get-rusage-as.c: Likewise.
* lib/get-rusage-data.c: Likewise.

13 years agomore make vars for makeinfo
Karl Berry [Wed, 26 Jan 2011 18:48:09 +0000 (10:48 -0800)]
more make vars for makeinfo

13 years agoregen
Karl Berry [Wed, 26 Jan 2011 18:47:01 +0000 (10:47 -0800)]
regen

13 years agofcntl: work around Haiku F_DUPFD bugs
Eric Blake [Wed, 26 Jan 2011 05:06:16 +0000 (22:06 -0700)]
fcntl: work around Haiku F_DUPFD bugs

* m4/fcntl.m4 (gl_FUNC_FCNTL): Also catch Haiku errno bug.
* lib/fcntl.c (rpl_fcntl) [F_DUPFD]: Work around Haiku losing
cloexec bit on duplication.
* doc/posix-functions/fcntl.texi (fcntl): Document the bug.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agoautoupdate
Karl Berry [Wed, 26 Jan 2011 15:36:00 +0000 (07:36 -0800)]
autoupdate

13 years agoEnable memory leak tests on AIX.
Bruno Haible [Wed, 26 Jan 2011 12:36:48 +0000 (13:36 +0100)]
Enable memory leak tests on AIX.

* tests/test-dprintf-posix2.c (main): Don't skip the test on AIX.
* tests/test-fprintf-posix3.c (main): Likewise.

13 years agoTests for module 'get-rusage-data'.
Bruno Haible [Wed, 26 Jan 2011 11:57:37 +0000 (12:57 +0100)]
Tests for module 'get-rusage-data'.

* modules/get-rusage-data-tests: New file.
* tests/test-get-rusage-data.c: New file.

13 years agoNew module 'get-rusage-data'.
Bruno Haible [Wed, 26 Jan 2011 11:56:22 +0000 (12:56 +0100)]
New module 'get-rusage-data'.

* lib/resource-ext.h (get_rusage_data): New declaration.
* lib/get-rusage-data.c: New file.
* modules/get-rusage-data: New file.

13 years agoget-rusage-as: Allow for easier testing.
Bruno Haible [Wed, 26 Jan 2011 01:11:18 +0000 (02:11 +0100)]
get-rusage-as: Allow for easier testing.

* lib/resource-ext.h (get_rusage_as): Add comment.
* lib/get-rusage-as.c (get_rusage_as_via_setrlimit): Define always.
(main): New function for interactive testing.

13 years agovma-iter: Treat Haiku like BeOS.
Bruno Haible [Wed, 26 Jan 2011 01:13:52 +0000 (02:13 +0100)]
vma-iter: Treat Haiku like BeOS.

* lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define on Haiku as well.
* lib/vma-iter.c (vma_iterate) [Haiku]: Use the BeOS API.

13 years agoc-stack: fix regression on cygwin when libsigsegv is present
Eric Blake [Tue, 25 Jan 2011 22:14:14 +0000 (15:14 -0700)]
c-stack: fix regression on cygwin when libsigsegv is present

* lib/c-stack.c (die): Don't flatten error if sigsegv is present.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agoautoupdate
Karl Berry [Mon, 24 Jan 2011 17:03:21 +0000 (09:03 -0800)]
autoupdate

13 years agovma-iter: Avoid empty intervals.
Bruno Haible [Mon, 24 Jan 2011 10:05:18 +0000 (11:05 +0100)]
vma-iter: Avoid empty intervals.

* lib/vma-iter.c (vma_iterate) [IRIX, OSF/1]: Don't call the callback
on an empty interval.

13 years agou64: remove unnecessary #include
Jim Meyering [Mon, 24 Jan 2011 06:49:01 +0000 (07:49 +0100)]
u64: remove unnecessary #include

* lib/u64.h: Don't include <stddef.h>.  It was not used.

13 years agoAllow the user to avoid the GNULIB_TEST_* macros.
Paul Eggert [Mon, 24 Jan 2011 04:41:25 +0000 (20:41 -0800)]
Allow the user to avoid the GNULIB_TEST_* macros.

* m4/gnulib-common.m4 (gl_ASSERT_NO_GNULIB_POSIXCHECK): New macro.

13 years agoNew module 'vma-iter'.
Bruno Haible [Mon, 24 Jan 2011 02:56:02 +0000 (03:56 +0100)]
New module 'vma-iter'.

* lib/vma-iter.h: New file.
* lib/vma-iter.c: New file, based on lib/get-rusage-as.c.
* modules/vma-iter: New file.
* lib/get-rusage-as.c: Include vma-iter.h. Don't include system headers
for get_rusage_as_via_iterator.
(vma_iterate_callback): New function.
(get_rusage_as_via_iterator): Rewritten to use vma_iterate.
* modules/get-rusage-as (Depends-on): Add vma-iter.

13 years agouninorm: Tweak includes.
Bruno Haible [Sun, 23 Jan 2011 21:43:07 +0000 (22:43 +0100)]
uninorm: Tweak includes.

* lib/uninorm/normalize-internal.h: Don't include <stddef.h>.
Reported by Jim Meyering.

13 years agoget-rusage-as: Improve on NetBSD.
Bruno Haible [Sun, 23 Jan 2011 19:37:48 +0000 (20:37 +0100)]
get-rusage-as: Improve on NetBSD.

* lib/get-rusage-as.c (get_rusage_as_via_iterator): On NetBSD, use
/proc, like on FreeBSD.

13 years agoxreadlink.h: remove unnecessary #include
Jim Meyering [Sun, 23 Jan 2011 18:07:52 +0000 (19:07 +0100)]
xreadlink.h: remove unnecessary #include

* lib/xreadlink.h: Don't include <stddef.h>.  It was not used.

13 years agomaint.mk: add syntax-check rule: detect unnecessary #include <stddef.h>
Jim Meyering [Sun, 23 Jan 2011 17:54:42 +0000 (18:54 +0100)]
maint.mk: add syntax-check rule: detect unnecessary #include <stddef.h>

* top/maint.mk (sc_prohibit_stddef_without_use): New rule.

13 years agoget-rusage-as: Fix bug.
Bruno Haible [Sun, 23 Jan 2011 17:58:10 +0000 (18:58 +0100)]
get-rusage-as: Fix bug.

* lib/get-rusage-as.c (get_rusage_as_via_setrlimit): Restore the
original limit when aborting the first loop.

13 years agowctype: Ensure valid C syntax.
Bruno Haible [Sun, 23 Jan 2011 11:40:41 +0000 (12:40 +0100)]
wctype: Ensure valid C syntax.

* m4/wctype_h.m4 (gl_WCTYPE_H): Invoke gl_CHECK_NEXT_HEADERS
unconditionally, instead of gl_NEXT_HEADERS conditionally.

13 years agowctype: Ensure valid C syntax.
Bruno Haible [Sun, 23 Jan 2011 11:40:00 +0000 (12:40 +0100)]
wctype: Ensure valid C syntax.

* m4/wctype_h.m4 (gl_WCTYPE_H): Invoke gl_CHECK_NEXT_HEADERS
unconditionally, instead of gl_NEXT_HEADERS conditionally.

13 years agogetopt: omit HAVE_OPTRESET, HAVE_GETOPT_CLIP from config.h
Paul Eggert [Sat, 22 Jan 2011 06:18:18 +0000 (22:18 -0800)]
getopt: omit HAVE_OPTRESET, HAVE_GETOPT_CLIP from config.h

* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not put the
symbols HAVE_OPTRESET and HAVE_GETOPT_CLIP into config.h,
as they are needed only for configure's test case.
This removes two unnecessary symbols from config.h.

13 years agogl_CHECK_NEXT_HEADERS implies AC_CHECK_HEADERS_ONCE
Paul Eggert [Fri, 21 Jan 2011 23:46:54 +0000 (15:46 -0800)]
gl_CHECK_NEXT_HEADERS implies AC_CHECK_HEADERS_ONCE

* m4/include_next.m4 (gl_CHECK_HEXT_HEADERS): Document this.
* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Don't bother to invoke
AC_CHECK_HEADERS_ONCE on a header that we also invoke
gl_CHECK_NEXT_HEADERS on, since the latter invokes the former.
* m4/netdb_h.m4 (gl_HEADER_NETDB): Likewise.
* m4/pthread.m4 (gl_PTHREAD_CHECK): Likewise.
* m4/sched_h.m4 (gl_SCHED_H): Likewise.
* m4/search_h.m4 (gl_SEARCH_H): Likewise.
* m4/spawn_h.m4 (gl_SPAWN_H): Likewise.
* m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_H): Likewise.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
* m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
* m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H): Likewise.
* m4/termios_h.m4 (gl_TERMIOS_H): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
* m4/wchar_h.m4 (gl_WCHAR_H): Likewise.
* m4/wctype_h.m4 (gl_WCTYPE_H): Likewise.

13 years agomaintainer-makefile: work with older git for submodule check
Eric Blake [Fri, 21 Jan 2011 22:33:29 +0000 (15:33 -0700)]
maintainer-makefile: work with older git for submodule check

* top/maint.mk (public-submodule-commit): Rewrite to avoid
merge-base --independent, which Ubuntu 10.04 git 1.7.0.4 lacks.
Reported by Matthias Bolte.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agobootstrap: minor portability fixes
Eric Blake [Fri, 21 Jan 2011 16:17:38 +0000 (09:17 -0700)]
bootstrap: minor portability fixes

* build-aux/bootstrap (me): Use $me instead of $0 in functions.
(usage): Omit leading capital and trailing . on help phrases, per
GNU Coding Standards.
(check_versions, top level): Prefix messages with script name.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agobootstrap: support --no-git option
Benjamin Lindner [Thu, 20 Jan 2011 18:46:53 +0000 (11:46 -0700)]
bootstrap: support --no-git option

* build-aux/bootstrap: Add --no-git option, to be used when
--gnulib-srcdir points to the exact desired checkout.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agostrerror_r-posix: work with glibc 2.13
Eric Blake [Fri, 21 Jan 2011 15:48:39 +0000 (08:48 -0700)]
strerror_r-posix: work with glibc 2.13

* lib/strerror_r.c (strerror_r): Fix return type.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agouN_strstr: New unit tests.
Bruno Haible [Fri, 21 Jan 2011 13:12:24 +0000 (14:12 +0100)]
uN_strstr: New unit tests.

* modules/unistr/u8-strstr-tests: New file.
* modules/unistr/u16-strstr-tests: New file.
* modules/unistr/u32-strstr-tests: New file.
* tests/unistr/test-u-strstr.h: New file, based on tests/test-strstr.c.
* tests/unistr/test-u8-strstr.c: New file.
* tests/unistr/test-u16-strstr.c: New file.
* tests/unistr/test-u32-strstr.c: New file.

13 years agoMake uN_strstr functions O(n) worst-case.
Bruno Haible [Fri, 21 Jan 2011 13:06:47 +0000 (14:06 +0100)]
Make uN_strstr functions O(n) worst-case.

* lib/unistr/u-strstr.h (FUNC): In the 8-bit case, use strstr. In the
16-bit and 32-bit unit cases, use the unibyte algorithm from
lib/mbsstr.c.
* lib/unistr/u8-strstr.c: Include <string.h>.
(UNIT_IS_UINT8_T): New macro.
* lib/unistr/u16-strstr.c: Include malloca.h and str-kmp.h.
(U_STRLEN, U_STRNLEN): New macros.
* lib/unistr/u32-strstr.c: Include malloca.h and str-kmp.h.
(U_STRLEN, U_STRNLEN): New macros.
* modules/unistr/u8-strstr (Depends-on): Add strstr.
(configure.ac): Update required libunistring version.
* modules/unistr/u16-strstr (Files): Add lib/str-kmp.h.
(Depends-on): Add unistr/u16-strlen, unistr/u16-strnlen, stdbool,
malloca.
(configure.ac): Update required libunistring version.
* modules/unistr/u32-strstr (Files): Add lib/str-kmp.h.
(Depends-on): Add unistr/u32-strlen, unistr/u32-strnlen, stdbool,
malloca.
(configure.ac): Update required libunistring version.

13 years agoPrepare for faster uN_strstr functions.
Pádraig Brady [Fri, 21 Jan 2011 12:40:28 +0000 (13:40 +0100)]
Prepare for faster uN_strstr functions.

* lib/str-kmp.h: Support definable UNITs.
(knuth_morris_pratt): Renamed from knuth_morris_pratt_unibyte. Add
needle_len argument.
* lib/mbsstr.c (mbsstr): Adjust for the changed str-kmp.h.
* lib/mbscasestr.c (mbscasestr): Likewise.

13 years agotest-malloca: unset MALLOC_PERTURB_ to speed up test
Pádraig Brady [Fri, 21 Jan 2011 08:47:51 +0000 (08:47 +0000)]
test-malloca: unset MALLOC_PERTURB_ to speed up test

* tests/test-malloca.c (main): Unset the environment variable
to greatly speed up the test.
* tests/init.sh: Don't say that MALLOC_PERTURB_ is cheap.
* modules/malloca-tests: Depend on unsetenv.

13 years agoignore-value: remove dependency on stdint
Pádraig Brady [Fri, 21 Jan 2011 08:17:07 +0000 (08:17 +0000)]
ignore-value: remove dependency on stdint

Since commit 939dedd9, 06-01-2011,
"ignore-value: support aggregate types"
we no longer need stdint (intptr_t).

* lib/ignore-value.h: Remove uneeded <stdint.h>.
* modules/ignore-value: Remove stdint dependency.

13 years agomaint.mk: adjust variable name to be consistent with other gl_ vars
Jim Meyering [Fri, 21 Jan 2011 08:07:33 +0000 (09:07 +0100)]
maint.mk: adjust variable name to be consistent with other gl_ vars

* top/maint.mk (gl_public_submodule_commit): Rename the variable
to be lower case.

13 years agoChangeLog: remove duplicate entry
Jim Meyering [Thu, 20 Jan 2011 21:29:50 +0000 (22:29 +0100)]
ChangeLog: remove duplicate entry

Remove "bootstrap: avoid failure when there is no .gitmodules file"
Spotted by Bruno Haible.

13 years agomaint.mk: make "check" depend on public-submodule-commit by default
Jim Meyering [Thu, 20 Jan 2011 20:49:06 +0000 (21:49 +0100)]
maint.mk: make "check" depend on public-submodule-commit by default

* top/maint.mk (GL_PUBLIC_SUBMODULE_COMMIT): New overridable variable.

13 years agombfile, mbiter: Complete change from 2008-12-21.
Bruno Haible [Thu, 20 Jan 2011 20:44:31 +0000 (21:44 +0100)]
mbfile, mbiter: Complete change from 2008-12-21.

* m4/mbfile.m4 (gl_MBFILE): Don't require AC_FUNC_MBRTOWC.
* m4/mbiter.m4 (gl_MBITER): Likewise.

13 years agoupdate from texinfo
Karl Berry [Thu, 20 Jan 2011 16:47:10 +0000 (08:47 -0800)]
update from texinfo

13 years agoupdate from texinfo
Karl Berry [Thu, 20 Jan 2011 16:43:53 +0000 (08:43 -0800)]
update from texinfo

13 years agoinit.sh: insert space between each function name and "()"
Jim Meyering [Thu, 20 Jan 2011 07:47:24 +0000 (08:47 +0100)]
init.sh: insert space between each function name and "()"

* tests/init.sh: Make it a little easier to see that a function's
name is "warn_", and not "warn" when looking at the first part of
its definition: "warn_ ()".  Suggested by Ralf Wildenhues.

13 years agobootstrap: avoid failure when there is no .gitmodules file
Jim Meyering [Fri, 14 Jan 2011 08:43:00 +0000 (09:43 +0100)]
bootstrap: avoid failure when there is no .gitmodules file

": ${gnulib_path=gnulib}" fails to set $gnulib_path when that variable
has been assigned to, even when its value is the empty string.
* build-aux/bootstrap (gnulib_path): Test explicitly for an empty
"$gnulib_path", rather than using ${gnulib_path=gnulib}.
Reported by John W. Eaton <jwe@gnu.org>.

13 years agoupdate from texinfo
Karl Berry [Thu, 20 Jan 2011 14:57:34 +0000 (06:57 -0800)]
update from texinfo

13 years agomountlist: clean up code formatting
Jim Meyering [Thu, 20 Jan 2011 08:35:37 +0000 (09:35 +0100)]
mountlist: clean up code formatting

* lib/mountlist.c (read_file_system_list): Split a long line,
correct bracing style, use NULL in place of "(struct statfs *)0",
don't parenthesize return value, add spaces around "=" and after
";-in-for-stmt".

13 years agomountlist: add support for Interix
Markus Duft [Thu, 20 Jan 2011 08:19:24 +0000 (09:19 +0100)]
mountlist: add support for Interix

* lib/mountlist.c (read_file_system_list) [MOUNTED_INTERIX_STATVFS]:
Apply statvfs to all entries of /dev/fs.
* m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for statvfs,
and if found, AC_DEFINE MOUNTED_INTERIX_STATVFS.

13 years agomaint.mk: improve the public-submodule-commit rule
Jim Meyering [Thu, 20 Jan 2011 10:50:53 +0000 (11:50 +0100)]
maint.mk: improve the public-submodule-commit rule

* top/maint.mk (public-submodule-commit): Prefix with $(AM_V_GEN),
to suppress printing of its commands... unless V=1.
Add git submodule's --quiet option to suppress printing of e.g.,
"Entering gnulib" output.
"cd" into $(srcdir) before running git submodule.

13 years agoinclude_next: Fix bug introduced on 2011-01-18.
Bruno Haible [Thu, 20 Jan 2011 10:25:32 +0000 (11:25 +0100)]
include_next: Fix bug introduced on 2011-01-18.

* m4/include_next.m4 (gl_NEXT_HEADERS_INTERNAL): New macro, extracted
from gl_CHECK_NEXT_HEADERS and gl_NEXT_HEADERS. Omit test of
ac_cv_header_... variable if the second argument is not 'check'.
(gl_CHECK_NEXT_HEADERS, gl_NEXT_HEADERS): Invoke
gl_NEXT_HEADERS_INTERNAL.

13 years agoAllow the user to avoid the GNULIB_TEST_* macros.
Bruno Haible [Thu, 20 Jan 2011 09:31:24 +0000 (10:31 +0100)]
Allow the user to avoid the GNULIB_TEST_* macros.

* m4/gnulib-common.m4 (gl_ASSERT_NO_GNULIB_TESTS): New macro.
Suggested by Paul Eggert.

13 years agobootstrap: avoid failure when there is no .gitmodules file
Jim Meyering [Fri, 14 Jan 2011 08:43:00 +0000 (09:43 +0100)]
bootstrap: avoid failure when there is no .gitmodules file

": ${gnulib_path=gnulib}" fails to set $gnulib_path when that variable
has been assigned to, even when its value is the empty string.
* build-aux/bootstrap (gnulib_path): Test explicitly for an empty
"$gnulib_path", rather than using ${gnulib_path=gnulib}.
Reported by John W. Eaton <jwe@gnu.org>.

13 years agoassume <ctype.h>, ..., <time.h> exist
Paul Eggert [Thu, 20 Jan 2011 06:15:41 +0000 (22:15 -0800)]
assume <ctype.h>, ..., <time.h> exist

For years gnulib has been assuming the existence of the headers
<ctime.h>, <errno.h>, <fcntl.h>, <locale.h>, <signal.h>,
<stdio.h>, <stdlib.h>, <string.h>, and <time.h>.  Omit checks for
them, since they don't appear to be needed.
* README (Portability guidelines): Document this.
* lib/flock.c: Assume <fcntl.h> exists.
* lib/regex_internal.h: Assume <locale.h> exists.
* m4/ctype.m4 (gl_CTYPE_H): Assume <ctype.h> exists.
* m4/errno_h.m4 (gl_HEADER_ERRNO_H): Assume <errno.h> exists.
* m4/fcntl_h.m4 (gl_FCNTL_H): Assume <fcntl.h> exists.
* m4/flock.m4 (gl_PREREQ_FLOCK): Likewise.
* m4/locale_h.m4 (gl_LOCALE_H): Assume <locale.h> exists.
* m4/regex.m4 (gl_REGEX): Likewise.
* m4/signal_h.m4 (gl_SIGNAL_H): Assume <signal.h> exists.
* m4/stdio_h.m4 (gl_STDIO_H): Assume <stdio.h> exists.
* m4/stdlib_h.m4 (gl_STDLIB_H): Assume <stdlib.h> exists.
* m4/string_h.m4 (gl_STRING_H): Assume <string.h> exists.
* tests/test-argp.c: Likewise.
* m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Assume <time.h> exists.

13 years agomultiarch: remove AA_APPLE_UNIVERSAL_BUILD
Paul Eggert [Thu, 20 Jan 2011 00:20:30 +0000 (16:20 -0800)]
multiarch: remove AA_APPLE_UNIVERSAL_BUILD

* m4/multiarch.m4 (gl_MULTIARCH): Don't AC_DEFINE
AA_APPLE_UNIVERSAL_BUILD.  See
<http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00247.html>.
* NEWS: Document this.

13 years agoc-stack: assume stack overflow if SA_SIGINFO unsupported
Eric Blake [Wed, 19 Jan 2011 17:12:12 +0000 (10:12 -0700)]
c-stack: assume stack overflow if SA_SIGINFO unsupported

* lib/c-stack.c (SIGACTION_WORKS): Rename...
(SIGINFO_WORKS): ...since gnulib module guarantees that (most) of
sigaction will work.
(die): Assume stack overflow if siginfo doesn't work, to let Haiku
behavior match Linux.
* tests/test-c-stack.c (main): Prefer NULL for pointers.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agostdbool-tests: accomodate Haiku
Eric Blake [Wed, 19 Jan 2011 15:20:56 +0000 (08:20 -0700)]
stdbool-tests: accomodate Haiku

* tests/test-stdbool.c: Haiku's gcc 2.95 lacks native _Bool.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agobinary-io: fix O_TEXT on Haiku
Eric Blake [Wed, 19 Jan 2011 13:17:20 +0000 (06:17 -0700)]
binary-io: fix O_TEXT on Haiku

* modules/binary-io (Depends-on): Add fcntl-h.
* lib/binary-io.h (O_TEXT): Rely on replacement <fcntl.h> rather
than blindly undefining O_TEXT.
Reported by Scott McCreary.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agoinclude_next: do not check for standard headers like stddef.h
Paul Eggert [Wed, 19 Jan 2011 06:38:10 +0000 (22:38 -0800)]
include_next: do not check for standard headers like stddef.h

I found this problem when modifying Emacs to use gnulib.
I noticed that it added HAVE_STDDEF_H to config.h, even though
gnulib always assumes <stddef.h> exists as per README and this
symbol is unnecessary.
* m4/include_next.m4 (gl_NEXT_HEADERS): New macro, which does not
use AC_CHECK_HEADERS_ONCE, but which otherwise contains what
gl_CHECK_NEXT_HEADERS used to contain.  This makes 'configure' run
faster for headers like stddef.h that are known to exist.
(gl_CHECK_NEXT_HEADERS): Use it.
* m4/float_h.m4 (gl_FLOAT_H): For float.h, use gl_NEXT_HEADERS
rather than gl_CHECK_NEXT_HEADERS.
* m4/stdarg.m4 (gl_STDARG_H): Likewise, for stdarg.h.
* m4/stddef_h.m4 (gl_STDDEF_H): Likewise, for stddef.h.