gnulib.git
11 years agotest-getsockopt: avoid compiler warning
Eric Blake [Mon, 4 Mar 2013 15:35:57 +0000 (08:35 -0700)]
test-getsockopt: avoid compiler warning

test-getsockopt.c: In function 'main':
test-getsockopt.c:48:5: warning: implicit declaration of function 'close' [-Wimplicit-function-declaration]

* tests/test-getsockopt.c (includes): Ensure close is declared.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agosys_types: Avoid autoconf warning about gl_SYS_TYPES_H.
Bruno Haible [Sat, 2 Mar 2013 16:31:42 +0000 (17:31 +0100)]
sys_types: Avoid autoconf warning about gl_SYS_TYPES_H.

* m4/sys_types_h.m4 (gl_SYS_TYPES_H): Define through AC_DEFUN_ONCE.

11 years agogettext: Update to version 0.18.2.
Bruno Haible [Sat, 2 Mar 2013 15:50:59 +0000 (16:50 +0100)]
gettext: Update to version 0.18.2.

* m4/intl.m4, m4/po.m4: Update from gettext-0.18.2. In particular:
2012-12-07  Stefano Lattarini  <stefano.lattarini@gmailcom>
* intl.m4, po.m4: Bump requirement in AC_PREREQ to 2.60.

11 years agomaint: restore gendocs.sh execute bit
Eric Blake [Wed, 27 Feb 2013 22:42:46 +0000 (15:42 -0700)]
maint: restore gendocs.sh execute bit

* build-aux/gendocs.sh: Fix accidental mode bit change.

11 years agoregex: merge patches from libc
Paul Eggert [Tue, 26 Feb 2013 06:56:12 +0000 (22:56 -0800)]
regex: merge patches from libc

2013-02-26  Siddhesh Poyarekar  <siddhesh@redhat.com>
* lib/regex_internal.h (__attribute__): Rename from __attribute.
All uses changed.
(bitset_not, bitset_merge, bitset_mask, re_string_char_size_at)
(re_string_wchar_at, re_string_elem_size_at):
Mark function as possibly unused.

2013-02-12  Andreas Schwab  <schwab@suse.de>  [BZ #11561]
* lib/regcomp.c (parse_bracket_exp) [_LIBC]: When looking up collating
elements compare against the byte sequence of it, not its name.

11 years agoputenv: port better to native Windows
Paul Eggert [Tue, 19 Feb 2013 03:38:13 +0000 (19:38 -0800)]
putenv: port better to native Windows

* lib/putenv.c [(_WIN32 || __WIN32__) && ! __CYGWIN__]:
Define WIN32_LEAN_AND_MEAN and include <windows.h>.
(_unsetenv): Use _putenv if available.
(putenv): Temporarily set NAME=' ' rather than NAME='x' as that's
a bit less likely to cause damage.
(putenv) [(_WIN32 || __WIN32__) && ! __CYGWIN__]:
Fix the wrong value with SetEnvironmentVariable.
(putenv) [!HAVE__PUTENV]: Simplify and match the HAVE__PUTENV
code better.

11 years agoregex: ignore old-style-definition warnings
Paul Eggert [Wed, 20 Feb 2013 15:50:59 +0000 (07:50 -0800)]
regex: ignore old-style-definition warnings

* lib/regex.c: Add pragma to ignore these warnings.
Problem reported for GNU tar by Pavel Raiskup.

11 years agogetcwd: support coreutils better
Paul Eggert [Wed, 20 Feb 2013 08:04:35 +0000 (00:04 -0800)]
getcwd: support coreutils better

Like strtod, getcwd incorrectly referred to HAVE_RAW_DECL_GETCWD,
but this might not be correct in coreutils, which disables
the raw decl checks.  Problem reported by Nagendra in
<http://bugs.gnu.org/10305#192>.
* lib/getcwd.c (__getcwd): Do not depend on HAVE_RAW_DECL_GETCWD.
* m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
Test the getcwd function, not any macro, since getcwd.c wants the
function.
* m4/getcwd.m4 (gl_FUNC_GETCWD):
Don't define HAVE_MINIMALLY_WORKING_GETCWD if the code doesn't
compile, as might happen if there's a macro but no function.

11 years ago* lib/strtod.c (HAVE_RAW_DECL_STRTOD): Remove; no longer used.
Paul Eggert [Wed, 20 Feb 2013 07:40:06 +0000 (23:40 -0800)]
* lib/strtod.c (HAVE_RAW_DECL_STRTOD): Remove; no longer used.

11 years agostrtod: support coreutils better
Paul Eggert [Tue, 19 Feb 2013 22:20:04 +0000 (14:20 -0800)]
strtod: support coreutils better

* lib/strtod.c (underlying_strtod): Just invoke the underlying strtod.
HAVE_RAW_DECL_STRTOD might not be correct in coreutils, which
disables the raw decl checks.  This assumes there is an underlying
strtod, but that's a safe assumption these days.

11 years agomountlist: port to HP NonStop
Paul Eggert [Tue, 19 Feb 2013 21:04:35 +0000 (13:04 -0800)]
mountlist: port to HP NonStop

Reported by Joachim Schmitz in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00084.html>.
* lib/mountlist.c (hasmntopt) [!HAVE_HASMNTOPT]: New function.
(MNT_IGNORE) [MNTOPT_IGNORE]: Use it.

11 years agoFix typo in stdnoreturn documentation.
Paul Eggert [Tue, 19 Feb 2013 20:30:32 +0000 (12:30 -0800)]
Fix typo in stdnoreturn documentation.

11 years agoextern-inline: avoid compilation error with HP-UX cc
Paul Eggert [Tue, 19 Feb 2013 01:16:30 +0000 (17:16 -0800)]
extern-inline: avoid compilation error with HP-UX cc

Reported by Richard Lloyd in
<http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
* m4/extern-inline.m4 (_GL_INLINE, _GL_EXTERN_INLINE):
Suppress extern inline with HP-UX cc.  This should be safe,
though it may hurt performance.  Perhaps someone with some HP-UX
experience can come up with a higher-performance fix.

11 years agoputenv: fix heap corruption with mixed putenv/_putenv
Paul Eggert [Thu, 14 Feb 2013 21:14:18 +0000 (13:14 -0800)]
putenv: fix heap corruption with mixed putenv/_putenv

Problem reported by Michael Goffioul in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00061.html>.
* lib/putenv.c (putenv) [HAVE__PUTENV]:
Rely on _putenv to allocate the new environment.
* m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
* modules/putenv (configure.ac): Use it.

11 years agoautoupdate
Karl Berry [Thu, 14 Feb 2013 17:43:22 +0000 (09:43 -0800)]
autoupdate

11 years agoautoupdate
Karl Berry [Wed, 13 Feb 2013 14:33:51 +0000 (06:33 -0800)]
autoupdate

11 years agounsetenv etc.: port to Solaris 11 + GNU Emacs
Paul Eggert [Mon, 11 Feb 2013 22:58:56 +0000 (14:58 -0800)]
unsetenv etc.: port to Solaris 11 + GNU Emacs

* lib/canonicalize-lgpl.c, lib/getaddrinfo.c, lib/getdelim.c:
* lib/glob.c, lib/random_r.c, lib/setenv.c, lib/tsearch.c:
* lib/unsetenv.c (_GL_ARG_NONNULL): Define before including <config.h>.
GNU Emacs's <config.h> includes <stdlib.h> (which is not a great
idea but is too painful to fix right now), and without this gnulib
change <stdlib.h> was defining _GL_ARG_NONNULL incorrectly when
compiling unsetenv.c on Solaris 11.  Fix the problem for
unsetenv.c, and fix other similar occurrences.

11 years agosecure_getenv: fix C++ declaration typo
Paul Eggert [Sat, 9 Feb 2013 20:41:47 +0000 (12:41 -0800)]
secure_getenv: fix C++ declaration typo

* lib/stdlib.in.h (secure_getenv): Fix typo with return type
in _GL_CXXALIAS_SYS macro.  Reported by John W. Eaton in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00057.html>.

11 years agocareadlinkat: stop exporting careadlinkatcwd
Paul Eggert [Fri, 8 Feb 2013 23:12:36 +0000 (15:12 -0800)]
careadlinkat: stop exporting careadlinkatcwd

Only Emacs used it directly, and Emacs no longer needs it.
* NEWS: Document this simplification.
* lib/areadlink.c (careadlinkatcwd): Move here from careadlinkat.c,
and make it static.  Include <stdlib.h>, for abort, and unistd.h,
for readlink.
* lib/careadlinkat.c (careadlinkatcwd): Move to areadlink.c.
Don't include stdlib.h; no longer needed.
* lib/careadlinkat.h (careadlinkatcwd): Remove decl.
* lib/relocwrapper.c: Adjust comment to match new dependencies.
* modules/areadlink (Depends-on): Add readlink.
(Maintainer): Add self.
* modules/careadlinkat (Depends-on): Remove readlink.

11 years agoextensions: port better to HP-UX
Paul Eggert [Fri, 8 Feb 2013 21:10:01 +0000 (13:10 -0800)]
extensions: port better to HP-UX

This is merged from git Autoconf.
* m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS):
On hosts that need _XOPEN_SOURCE, define it when configuring, too,
so that it's compatible with the value used when compiling.

11 years agoopenpty: fix bug where HAVE_OPENPTY is mistakenly 1
Paul Eggert [Fri, 8 Feb 2013 16:03:23 +0000 (08:03 -0800)]
openpty: fix bug where HAVE_OPENPTY is mistakenly 1

Problem reported by Mats Erik Andersson in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00051.html>.
* m4/pty.m4 (gl_FUNC_OPENPTY): Define HAVE_OPENPTY when the
openpty function exists, not merely when we intend to replace it.
This corrects the 2013-01-31 patch, which mistakenly defined
HAVE_OPENPTY even on hosts that lacked it.

11 years agomaint: fix misspelling of MINIX in ChangeLog
Paul Eggert [Fri, 8 Feb 2013 15:26:45 +0000 (07:26 -0800)]
maint: fix misspelling of MINIX in ChangeLog

11 years agosecure_getenv: fix include typo
Paul Eggert [Fri, 8 Feb 2013 05:58:09 +0000 (21:58 -0800)]
secure_getenv: fix include typo

* lib/secure_getenv.c: Include config.h.  Somehow I forgot!

11 years agosecure_getenv: port better to FreeBSD and Solaris
Paul Eggert [Thu, 7 Feb 2013 23:34:23 +0000 (15:34 -0800)]
secure_getenv: port better to FreeBSD and Solaris

* lib/secure_getenv.c [!HAVE___SECURE_GETENV]:
Include unistd.h if HAVE_ISSETUGID, otherwise define a dummy issetugid.
(secure_getenv) [!HAVE___SECURE_GETENV]: Use getenv if not issetugid.
This works better on BSDish platforms.
* m4/secure_getenv.m4 (gl_PREREQ_SECURE_GETENV):
Test for issetugid if __secure_getenv is missing.

11 years agoextensions: port better to MINUX 3, HP-UX, autoheader 2.62
Paul Eggert [Thu, 7 Feb 2013 06:41:08 +0000 (22:41 -0800)]
extensions: port better to MINUX 3, HP-UX, autoheader 2.62

Some of these changes are merged in from git Autoconf.
* m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS):
When deciding whether to define _XOPEN_SOURCE, inspect the
preprocessor macro __hpux instead of the more-heavyweight
operation of requiring AC_CANONICAL_HOST.  Define _NETBSD_HOST on
MINUX, for MINUX 3.  Use USE_SYSTEM_EXTENSIONS, not __EXTENSIONS__,
as the key for __EXTENSIONS__.

11 years agounistd: avoid namespace pollution on non-glibc systems
Paul Eggert [Thu, 7 Feb 2013 00:11:07 +0000 (16:11 -0800)]
unistd: avoid namespace pollution on non-glibc systems

* lib/unistd.in.h: #define __need_getopt before including <getopt.h>.
This avoids namespace pollution on non-glibc systems, by causing
gnulib unistd.h to behave more like glibc unistd.h.  I also hope
that this fixes a bug on FreeBSD, reported by Mats Erik Andersson in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00027.html>.

11 years agoautoupdate
Karl Berry [Tue, 5 Feb 2013 15:13:14 +0000 (07:13 -0800)]
autoupdate

11 years agotmpdir: use secure_getenv
Paul Eggert [Tue, 5 Feb 2013 04:34:17 +0000 (20:34 -0800)]
tmpdir: use secure_getenv

* lib/tmpdir.c (__secure_getenv) [!LIBC]:
Define to secure_getenv, not getenv.
* m4/tmpdir.m4 (gt_TMPDIR): Don't check for __secure_getenv,
as that's now secure_getenv's job.
* modules/tmpdir (Depends-on): Add secure_getenv.

11 years agotempname: use secure_getenv
Paul Eggert [Tue, 5 Feb 2013 02:36:06 +0000 (18:36 -0800)]
tempname: use secure_getenv

* lib/tempname.c (__secure_getenv) [!_LIBC]:
Define to secure_getenv, not getenv.
* modules/tempname (Depends-on):
Add secure_getenv.

11 years agosecure_getenv: new module
Paul Eggert [Tue, 5 Feb 2013 02:33:23 +0000 (18:33 -0800)]
secure_getenv: new module

* MODULES.html.sh (Extra functions based on ANSI C 89):
Add secure_getenv.
* doc/glibc-functions/secure_getenv.texi: New file.
* doc/gnulib.texi: Include it.
* lib/secure_getenv.c, m4/secure_getenv.m4, modules/secure_getenv:
New files.
* lib/stdlib.in.h (secure_getenv): New decl.
* m4/stdlib_h.m4 (gl_STDLIB_H, gl_STDLIB_H_DEFAULTS):
* modules/stdlib (stdlib.h):
Add secure_getenv checks.

11 years agoautoupdate
Karl Berry [Mon, 4 Feb 2013 13:43:29 +0000 (05:43 -0800)]
autoupdate

11 years agogetcwd: break fdopendir + save_cwd recursive loop (Bug#13516)
Paul Eggert [Mon, 4 Feb 2013 05:28:30 +0000 (21:28 -0800)]
getcwd: break fdopendir + save_cwd recursive loop (Bug#13516)

Reported for OS X 10.8.2 by Assaf Gordon in
<http://bugs.gnu.org/13516>.
* lib/getcwd.c (HAVE_OPENAT_SUPPORT): Do not define if
!HAVE_OPENAT && !HAVE_FDOPENDIR.
* m4/getcwd-abort-bug.m4: Reformat to match test-getcwd.c
so that they can be kept in sync more easily.  Avoid PATH_MAX
test on the Hurd.  Sync from test-getcwd.c for errno tests after
mkdir or chdir failure.
* tests/test-getcwd.c (HAVE_OPENAT_SUPPORT): New macro, from
lib/getcwd.c.
(test_abort_bug): Do not test for the deep directory bug unless we
have openat support.  Avoid PATH_MAX test on the Hurd.

11 years agoregex-tests, regex: fix bug: memset undeclared
Paul Eggert [Sun, 3 Feb 2013 17:19:06 +0000 (09:19 -0800)]
regex-tests, regex: fix bug: memset undeclared

* tests/test-regex.c: Don't include regex.h twice.  Include
string.h, to declare memset.  Christensen's report also mentioned
this issue.
* m4/regex.m4 (gl_REGEX): Keep test program more in sync with
test-regex.c, to avoid future problems like this.  Remove
AC_INCLUDES_DEFAULT.  Include <string.h>.  Don't include <regex.h>
twice.

11 years agoregex-tests: fix link errors on older Solaris
Paul Eggert [Sun, 3 Feb 2013 17:03:51 +0000 (09:03 -0800)]
regex-tests: fix link errors on older Solaris

These need to link with @LIBINTL@ to get libintl_gettext.
Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00003.html>.
* modules/regex-tests (test_regex_LDADD): New macro.

11 years agoupdate from texinfo
Karl Berry [Fri, 1 Feb 2013 23:49:12 +0000 (15:49 -0800)]
update from texinfo

11 years agoregex-tests: new module
Paul Eggert [Fri, 1 Feb 2013 05:07:02 +0000 (21:07 -0800)]
regex-tests: new module

* modules/regex-tests, tests/test-regex.c: New files.

11 years agoregex: fix off-by-one error in configure test
Paul Eggert [Fri, 1 Feb 2013 00:41:35 +0000 (16:41 -0800)]
regex: fix off-by-one error in configure test

* m4/regex.m4 (gl_REGEX): Test should return 21, not 20.

11 years agoregex: avoid infinite configure test
Eric Blake [Thu, 31 Jan 2013 22:57:38 +0000 (15:57 -0700)]
regex: avoid infinite configure test

At least glibc 2.15 on Ubuntu ended up hanging.

* m4/regex.m4 (gl_REGEX): Add an alarm escape hatch.
Reported by Reuben Thomas.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agoopenpty: fix bug where HAVE_OPENPTY wasn't defined
Reuben Thomas [Thu, 31 Jan 2013 21:55:55 +0000 (13:55 -0800)]
openpty: fix bug where HAVE_OPENPTY wasn't defined

See the thread starting at:
http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00185.html
* m4/pty.m4 (gl_FUNC_OPENPTY): Define HAVE_OPENPTY when the
openpty function exists, not merely when we intend to replace it.

11 years agosys_time: port to Solaris 2.6
Paul Eggert [Thu, 31 Jan 2013 05:26:44 +0000 (21:26 -0800)]
sys_time: port to Solaris 2.6

There is a circularity problem on Solaris 2.6, where <time.h> includes
<sys/time.h> for struct timespec.  The include nesting is gnulib
<time.h>, system <time.h>, gnulib <sys/time.h>, system
<sys/time.h>, gnulib <sys/types.h>, system <sys/types.h>, gnulib
<sys/select.h>, gnulib <signal.h>, system <sys/signal.h>, system
<sys/siginfo.h>; the last, innermost file needs struct
timestruc_t, which is defined in <sys/time.h>, which has not been
fully parsed.  Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00113.html>.
* lib/sys_select.in.h: Treat Solaris 2.6's problem with
<sys/time.h> and <sys/types.h> like OSF/1's similar problem.
* lib/sys_time.in.h: Redo to resemble sys_select.in.h, which
uses split double-inclusion guards.

11 years agoregex: test for buffer overrun
Paul Eggert [Wed, 30 Jan 2013 06:34:58 +0000 (22:34 -0800)]
regex: test for buffer overrun

* m4/regex.m4 (gl_REGEX): Add test case, by Andreas Schwab,
for the just-fixed regex bug.

11 years agoregex: fix buffer overrun in regexp matcher
Andreas Schwab [Wed, 30 Jan 2013 06:33:51 +0000 (22:33 -0800)]
regex: fix buffer overrun in regexp matcher

* lib/regexec.c (extend_buffers): Add parameter min_len.
(check_matching): Pass minimum needed length.
(clean_state_log_if_needed): Likewise.
(get_subexp): Likewise.

11 years agomountlist: don't consider "devtmpfs" as dummy
Pádraig Brady [Mon, 28 Jan 2013 17:59:05 +0000 (17:59 +0000)]
mountlist: don't consider "devtmpfs" as dummy

* lib/mountlist.c (ME_DUMMY_0): Remove "devtmpfs"
as there is storage associcated with it.

11 years agofutimens-tests, utimens-tests: Depend on gettext.
Paul Eggert [Sun, 27 Jan 2013 19:40:58 +0000 (11:40 -0800)]
futimens-tests, utimens-tests: Depend on gettext.

This works around a problem introduced in my 2013-01-12 patch,
which added @LIBINTL@ to these modules.
* modules/futimens-tests (Depends-on):
* modules/utimens-tests (Depends-on): Add gettext.

11 years agotest-getpeername: fix typo
Eric Blake [Sat, 26 Jan 2013 20:32:40 +0000 (13:32 -0700)]
test-getpeername: fix typo

Commit 9feb36b introduced a typo.

* tests/test-getpeername.c: Fix typo introduced in fd cleanup.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agobootstrap: remove the need for a sorted .gitignore
Bernhard Voelker [Sun, 20 Jan 2013 18:06:54 +0000 (18:06 +0000)]
bootstrap: remove the need for a sorted .gitignore

During bootstrap, files may be created which are already included
in .gitignore, but the test to add such a file relied on the
sort order.  Now, it just adds such a new entry and thus only
changes the file if the line count would change.

* bootstrap (insert_if_absent): Instead of comparing the
sorted new file with the original, the function compares the line
count, and only in case of a difference, the given file is changed.
Also ensure that the given ignore file does not already include
duplicate entries, as otherwise, the entry count would be innacurate.
(sort_patterns): Remove this now redundant function.
(gitignore_entries): A new function to return significant entries
from .gitignore.

Improved-by: Pádraig Brady
11 years agoreadlinkat: don't depend on gl_FUNC_OPENAT
Paul Eggert [Thu, 24 Jan 2013 07:57:57 +0000 (23:57 -0800)]
readlinkat: don't depend on gl_FUNC_OPENAT

* m4/readlinkat.m4 (gl_FUNC_READLINKAT): Don't require gl_FUNC_OPENAT.
Perhaps a similar change needs to be made for linkat.m4, mkfifoat.m4,
renameat.m4, symlinkat.m4; but one thing at a time.

11 years agostatat: new module, split out from fstatat
Paul Eggert [Thu, 24 Jan 2013 02:20:09 +0000 (18:20 -0800)]
statat: new module, split out from fstatat

GNU Emacs needs the POSIX-specified fstatat, but not the
gnulib-specified statat and lstat.  Split the latter two into a
new module 'statat'.
* lib/openat.h: Depend on GNULIB_STATAT, not GNULIB_FSTATAT.
* lib/openat.h, lib/statat.c (STATAT_INLINE):
Rename from FSTATAT_INLINE. All uses changed.
* modules/fstatat (Files): Remove lib/statat.c.
(gl_MODULE_INDICATOR([fstatat])): Remove.
(lib_SOURCES): Remove.
(Maintainer): Add self.
* modules/statat, modules/statat-tests, tests/test-statat.c: New files.
* tests/test-fstatat.c (BASE): Don't define if already defined.
(do_stat, do_lstat) [!TEST_STATAT]: Test fstatat instead.

11 years agoautoupdate
Karl Berry [Wed, 23 Jan 2013 16:08:47 +0000 (08:08 -0800)]
autoupdate

11 years agoFix typo in previous change, by including <unistd.h>.
Paul Eggert [Wed, 23 Jan 2013 01:40:36 +0000 (17:40 -0800)]
Fix typo in previous change, by including <unistd.h>.

11 years agotests: don't assume fd 99 is closed
Paul Eggert [Tue, 22 Jan 2013 17:43:22 +0000 (09:43 -0800)]
tests: don't assume fd 99 is closed

* tests/test-accept.c, tests/test-accept4.c, tests/test-bind.c:
* tests/test-close.c, tests/test-connect.c, tests/test-dprintf.c:
* tests/test-dup.c, tests/test-dup2.c, tests/test-faccessat.c:
* tests/test-fchdir.c, tests/test-fchmod.c, tests/test-fchmodat.c:
* tests/test-fchown.c, tests/test-fchownat.c, tests/test-fclose.c:
* tests/test-fdatasync.c, tests/test-fdopen.c, tests/test-fdopendir.c:
* tests/test-fflush.c, tests/test-fgetc.c, tests/test-fputc.c:
* tests/test-fread.c, tests/test-freopen.c, tests/test-fseeko4.c:
* tests/test-fstat.c, tests/test-fstatat.c, tests/test-fsync.c:
* tests/test-ftello4.c, tests/test-ftruncate.c, tests/test-futimens.h:
* tests/test-fwrite.c, tests/test-getpeername.c:
* tests/test-getsockname.c, tests/test-getsockopt.c:
* tests/test-grantpt.c, tests/test-ioctl.c, tests/test-isatty.c:
* tests/test-linkat.c, tests/test-listen.c, tests/test-lseek.c:
* tests/test-mkdirat.c, tests/test-mkfifoat.c, tests/test-openat.c:
* tests/test-pread.c, tests/test-pwrite.c, tests/test-read.c:
* tests/test-readlinkat.c, tests/test-recv.c, tests/test-recvfrom.c:
* tests/test-renameat.c, tests/test-select.h, tests/test-send.c:
* tests/test-sendto.c, tests/test-setsockopt.c, tests/test-shutdown.c:
* tests/test-symlinkat.c, tests/test-ttyname_r.c:
* tests/test-unlinkat.c, tests/test-unlockpt.c:
* tests/test-utimensat.c, tests/test-vdprintf.c, tests/test-write.c:
Close file descriptor 99, instead of assuming it's already closed.

11 years agoFix ChangeLog typo.
Paul Eggert [Tue, 22 Jan 2013 06:20:08 +0000 (22:20 -0800)]
Fix ChangeLog typo.

11 years agostpncpy: port to OS X 10.8
Paul Eggert [Tue, 22 Jan 2013 06:16:32 +0000 (22:16 -0800)]
stpncpy: port to OS X 10.8

* lib/stpncpy.c (__stpncpy): Parenthesize name when definining function.
Problem reported by Assaf Gordon in <http://bugs.gnu.org/13495>.

11 years agoIn intro, say only latest mingw is tested.
Paul Eggert [Thu, 17 Jan 2013 21:37:32 +0000 (13:37 -0800)]
In intro, say only latest mingw is tested.

11 years agounistd: port to recent mingw
Paul Eggert [Wed, 16 Jan 2013 23:48:52 +0000 (15:48 -0800)]
unistd: port to recent mingw

* lib/unistd.in.h: Remove special invocation convention for mingw,
which breaks for the latest mingw version.  See John W. Eaton in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00100.html>.

11 years agoFix typo in comment.
Paul Eggert [Wed, 16 Jan 2013 17:38:28 +0000 (09:38 -0800)]
Fix typo in comment.

11 years agolargefile: port better to Mac OS X 10.5
Paul Eggert [Wed, 16 Jan 2013 17:35:20 +0000 (09:35 -0800)]
largefile: port better to Mac OS X 10.5

This patch is backported from Autoconf git.
* m4/largefile.m4 (AC_SYS_LARGEFILE): Use AC_DEFINE, not
AH_VERBATIM, to define _DARWIN_USE_64_BIT_INODE, to avoid problems
with ino_t size being different for configuration time versus
build/run time.  Problem reported by PHO in
<http://lists.gnu.org/archive/html/bug-autoconf/2013-01/msg00040.html>.

11 years agodoc: clarify -Werror
Paul Eggert [Tue, 15 Jan 2013 20:21:42 +0000 (12:21 -0800)]
doc: clarify -Werror

* doc/warnings.texi (warnings): -Werror is not always a bad idea;
clarify that it's intended for developers, not for ordinary builds,
and mention --enable-gcc-warnings as one possible use.

11 years agostdint: fix build with Android's Bionic fox x86
Andoni Morales Alastruey [Tue, 15 Jan 2013 10:41:52 +0000 (11:41 +0100)]
stdint: fix build with Android's Bionic fox x86

* lib/stdint.in.h: fix check to test if included-fixed/sys/types.h
was already included as _SSIZE_T_DEFINED_ might also be defined
in include/machine/_types.h, which is included by stdio.h

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agonet_if-tests: port to Solaris 7 + GCC 3.4.6
Paul Eggert [Sun, 13 Jan 2013 18:36:53 +0000 (10:36 -0800)]
net_if-tests: port to Solaris 7 + GCC 3.4.6

Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00091.html>.
* tests/test-net_if.c (ni): Move to next the code that uses it,
so that it's declared only if needed.

11 years agonet_if-tests: port to older Solaris
Paul Eggert [Sun, 13 Jan 2013 05:48:49 +0000 (21:48 -0800)]
net_if-tests: port to older Solaris

Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>.
* modules/net_if-tests (NET_IF_LIB): New substitution.
(test_net_if_LDADD): New makefile macro, which uses NET_IF_LIB.
(HAVE_IF_NAMEINDEX): New C macro.
* tests/test-net_if.c: Bypass most of the test if !HAVE_IF_NAMEINDEX.

11 years agosystem-quote-tests: port to older Solaris
Paul Eggert [Sun, 13 Jan 2013 05:37:23 +0000 (21:37 -0800)]
system-quote-tests: port to older Solaris

Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>.
* tests/test-system-quote-child.c (fopen, fread): Undef.

11 years agoc-xvasprintf etc.: fix link errors on older Solaris
Paul Eggert [Sun, 13 Jan 2013 05:33:54 +0000 (21:33 -0800)]
c-xvasprintf etc.: fix link errors on older Solaris

These need to link with @LIBINTL@ to get libintl_gettext.
Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>.
* modules/c-xvasprintf-tests (test_c_xvasprintf_LDADD):
* modules/readtokens-tests (test_readtokens_LDADD): New macros.
* modules/futimens-tests (test_futimens_LDADD):
* modules/utimens-tests (test_utimens_LDADD): Add @LIBINTL@.

11 years agolocale: port to Solaris 2.6 and 7 + GNU gettext
Paul Eggert [Thu, 10 Jan 2013 21:24:13 +0000 (13:24 -0800)]
locale: port to Solaris 2.6 and 7 + GNU gettext

* lib/locale.in.h: Just include_next <locale.h> when
being invoked recursively.  This prevents problems on Solaris 2.6 and 7
when combining the localename module with GNU gettext 0.18.2.
Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00084.html>.

11 years agoautoupdate
Karl Berry [Fri, 11 Jan 2013 13:25:39 +0000 (05:25 -0800)]
autoupdate

11 years agostdlib: port to Solaris 2.6
Paul Eggert [Tue, 8 Jan 2013 20:32:05 +0000 (12:32 -0800)]
stdlib: port to Solaris 2.6

Also, the code worked on Solaris 7 through 9 only by accident.
Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00059.html>.
* lib/stdlib.in.h: If __need_system_stdlib_h is defined,
simply include the system stdlib.h.
* lib/getopt.in.h (__need_system_stdlib_h):
* lib/pthread.in.h (__need_system_stdlib_h):
* lib/unistd.in.h (__need_system_stdlib_h) [!__GLIBC__]:
Define when including <stdlib.h>, to avoid problems at least for
the pthread case on Solaris 2.6 and 7.  These .h files can get by
with the system stdlib.h.

11 years agoFix misspellings of "occurred".
Paul Eggert [Wed, 9 Jan 2013 08:04:08 +0000 (00:04 -0800)]
Fix misspellings of "occurred".

11 years agoautoupdate
Karl Berry [Mon, 7 Jan 2013 17:05:36 +0000 (09:05 -0800)]
autoupdate

11 years agoautoupdate
Karl Berry [Mon, 7 Jan 2013 16:58:19 +0000 (08:58 -0800)]
autoupdate

11 years agodoc: update main copyright year
Paul Eggert [Sun, 6 Jan 2013 16:49:37 +0000 (08:49 -0800)]
doc: update main copyright year

* doc/gnulib.texi: Update copyright date.

11 years agodoc: improve ISO 8601 discussion
Paul Eggert [Sun, 6 Jan 2013 15:31:32 +0000 (07:31 -0800)]
doc: improve ISO 8601 discussion

* doc/parse-datetime.texi (Combined date and time of day items):
Specify more carefully what formats are supported and what is
done with excess precision.

11 years agodoc: avoid small caps
Paul Eggert [Sun, 6 Jan 2013 01:23:52 +0000 (17:23 -0800)]
doc: avoid small caps

* doc/parse-datetime.texi, doc/regex.texi: Don't use small caps;
they're more trouble than they're worth.  Suggested by Karl Berry
in <http://bugs.gnu.org/13360>.

11 years agoregex: conform to strict C
Paul Eggert [Sat, 5 Jan 2013 20:06:52 +0000 (12:06 -0800)]
regex: conform to strict C

* lib/regcomp.c (parse_bracket_exp): Add cast to conform to strict C.
From Aharon Robbins.

11 years agognulib-tool: fix incompatibility with autopoint 0.18.2
Paul Eggert [Sat, 5 Jan 2013 16:03:10 +0000 (08:03 -0800)]
gnulib-tool: fix incompatibility with autopoint 0.18.2

* gnulib-tool: Don't indent AM_GNU_GETTEXT_VERSION line.
Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00053.html>.

11 years agoautoupdate
Karl Berry [Sat, 5 Jan 2013 15:02:17 +0000 (07:02 -0800)]
autoupdate

11 years agofprintftime: bring back and reword fwrite comment
Paul Eggert [Fri, 4 Jan 2013 21:21:48 +0000 (13:21 -0800)]
fprintftime: bring back and reword fwrite comment

* lib/strftime.c (cpy) [FPRINTFTIME]: Re-add reworded comment.

11 years agoautoupdate
Karl Berry [Fri, 4 Jan 2013 14:47:11 +0000 (06:47 -0800)]
autoupdate

11 years agostdio: remove now-unnecessary stdio.c
Paul Eggert [Fri, 4 Jan 2013 01:59:58 +0000 (17:59 -0800)]
stdio: remove now-unnecessary stdio.c

Since stdio.in.h no longer uses inline functions, we no longer
need to compile the extern versions.
* lib/stdio.c: Remove.
* modules/stdio (Files): Remove lib/stdio.c.
(lib_SOURCES): Remove.

11 years agounicodeio: depend on stdio, not ignore-value
Paul Eggert [Fri, 4 Jan 2013 01:55:52 +0000 (01:55 +0000)]
unicodeio: depend on stdio, not ignore-value

* lib/unicodeio.c: Do not include ignore-value.h.
(fwrite_success_callback): Use plain fwrite, not ignore_value + fwrite.
* modules/unicodeio (Depends-on): Depend on stdio, not ignore-value.

11 years agofprintftime: depend on stdio, not ignore-value
Paul Eggert [Fri, 4 Jan 2013 01:55:18 +0000 (01:55 +0000)]
fprintftime: depend on stdio, not ignore-value

* lib/strftime.c [FPRINTFTIME]: Do not include ignore-value.h.
(cpy) [FPRINTFTIME]: Use plain fwrite, not ignore_value of fwrite,
since the stdio module arranges to silence that warning now.
* modules/fprintftime (Depends-on): Depend on stdio, not ignore-value.

11 years agostdint-tests: Fix expanded-before-required-warning.
Simon Josefsson [Thu, 3 Jan 2013 22:43:07 +0000 (23:43 +0100)]
stdint-tests: Fix expanded-before-required-warning.
* modules/stdint-tests (Depends-on): Use AC_REQUIRE.

11 years agofwrite: silence __wur only for older glibc versions
Paul Eggert [Thu, 3 Jan 2013 18:11:25 +0000 (10:11 -0800)]
fwrite: silence __wur only for older glibc versions

* lib/stdio.in.h (fwrite): Limit workaround to glibc 2.4 through 2.15.
This will help us remove this workaround some time in the far future.

11 years agofwrite: silence __wur without using inline
Eric Blake [Thu, 3 Jan 2013 16:51:44 +0000 (09:51 -0700)]
fwrite: silence __wur without using inline

The libvirt folks reported[1] a link error of multiple rpl_fwrite
definitions that hits only when optimization and FORTIFY_SOURCE
are both enabled, due to improper use of inline.  But since that
particular use of rpl_fwrite exists only to work around a spurious
gcc warning on some versions of glibc, we can use gcc extensions
to acheive the same effect without using inline.  This approach
copies from ignore-value.h.

[1] https://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00014.html

* lib/stdio.in.h (fwrite): Limit warn_unused_result workaround to
just gcc, and in a way that avoids inline issues.
* modules/stdio (Depends-on): Drop extern-inline.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agoupdate-copyright: avoid copyright notice date corruption
Jim Meyering [Thu, 3 Jan 2013 09:23:30 +0000 (10:23 +0100)]
update-copyright: avoid copyright notice date corruption

Given a sequence of copyright year numbers in which the final
one was a two-digit number that happened to be a substring of
a preceding four-digit year number, we would mistakenly update
the substring (from two- to four-digit) rather than the two-digit
number at the end, which, combined with the addition of the current
4-digit year number would yield two 5-digit year numbers, e.g.,
here, it would convert the first "99" to "1999, 2013" rather than
the final one:
  1991, 99
  11999, 20131, 1999
* build-aux/update-copyright: Tighten a regexp.
* tests/test-update-copyright.sh: Add a test case to trigger the bug.
Reported by Joseph Myers in
http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/32281

11 years agoregex: omit needless signed-pointer casts
Paul Eggert [Wed, 2 Jan 2013 00:27:46 +0000 (16:27 -0800)]
regex: omit needless signed-pointer casts

* lib/regcomp.c (build_charclass, build_charclass_op):
Use char *, not unsigned char *, for class name and extra.
The char values are always nonnegative so there's no need to
insist on unsigned char * here, and using char * removes the need
for casts.  Reported by Aharon Robbins in
<http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.

11 years agoregex: support Gawk, which never uses alloca
Paul Eggert [Wed, 2 Jan 2013 00:05:43 +0000 (16:05 -0800)]
regex: support Gawk, which never uses alloca

* lib/regex_internal.h [!_LIBC && !HAVE_ALLOCA]:
Do not include in this case.  Gawk doesn't supply a substitute
alloca.h and doesn't need one.

11 years agoautoupdate
Karl Berry [Wed, 2 Jan 2013 00:01:39 +0000 (16:01 -0800)]
autoupdate

11 years agoupdate from texinfo
Karl Berry [Tue, 1 Jan 2013 23:51:49 +0000 (15:51 -0800)]
update from texinfo

11 years agoupdate from texinfo
Karl Berry [Tue, 1 Jan 2013 18:15:10 +0000 (10:15 -0800)]
update from texinfo

11 years agoautoupdate
Karl Berry [Tue, 1 Jan 2013 17:25:50 +0000 (09:25 -0800)]
autoupdate

11 years agomissing @item
Karl Berry [Tue, 1 Jan 2013 17:17:08 +0000 (09:17 -0800)]
missing @item

11 years agoautoupdate
Karl Berry [Tue, 1 Jan 2013 17:13:02 +0000 (09:13 -0800)]
autoupdate

11 years agoregex: port __libc_lock_define usage to C89
Paul Eggert [Tue, 1 Jan 2013 15:59:12 +0000 (07:59 -0800)]
regex: port __libc_lock_define usage to C89

* lib/regex_internal.h (__libc_lock_define) [!_LIBC]: Remove.
(struct re_dfa_t): Use #ifdef instead.  '__libc_lock_define (, lock)'
does not conform to C89, as it has an empty macro argument.
Reported by Aharon Robbins in
<http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.

11 years agomaint: update all copyright year number ranges
Eric Blake [Tue, 1 Jan 2013 00:50:58 +0000 (00:50 +0000)]
maint: update all copyright year number ranges

Run "make update-copyright".  Compare to commit 1602f0a from last year.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agoversion-etc: bump copyright year reported in --version
Eric Blake [Tue, 1 Jan 2013 00:50:12 +0000 (00:50 +0000)]
version-etc: bump copyright year reported in --version

Compare to commit fc9846f from last year.

* lib/version-etc.c (COPYRIGHT_YEAR): Update to 2013.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agosigprocmask-tests: skip test if pid is unexpectedly large
Eric Blake [Mon, 31 Dec 2012 23:51:29 +0000 (16:51 -0700)]
sigprocmask-tests: skip test if pid is unexpectedly large

At least mingw64 has 8-byte pid_t but only 4-byte long.  Silent
truncation to int in printing a pid value with %d risks killing the
wrong process.  But rather than try to futz with determining
the maximum pid_t, it is simpler to just cap things by realizing
that this test is already skipped on mingw64, so adding a sanity
check bounds comparison (and hard-coding the result rather than
dragging in headers for INT_MAX) is just as effective at avoiding
theoretical problems with no real loss in test coverage.

* tests/test-sigprocmask.c (main): Add range check.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agogit-version-gen: avoid test -z portability glitch
Eric Blake [Mon, 31 Dec 2012 23:01:13 +0000 (16:01 -0700)]
git-version-gen: avoid test -z portability glitch

Autoconf warns that there are some broken shells where 'test -z "$x"'
gives 0 exit status if $x is ')'.  Since some of our strings come
from command-line arguments, and since git-version-gen is run on
end-user machines where sh might be broken, we should be robust to
abuse.  Some of the instances replaced here are provably safe,
and could not confuse even broken 'test', but it is easier to
replace all instances of test -[nz].

* build-aux/git-version-gen: Prefer portable test spelling, since
git-version-gen is run on more than just developer machines.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agogit-version-gen: add --fallback option to use if git is not present
Peter Rosin [Fri, 28 Dec 2012 23:45:07 +0000 (00:45 +0100)]
git-version-gen: add --fallback option to use if git is not present

When building in a git checkout, but from a system lacking git, it
is useful to fall back to the version determined when the git
checkout was last used from a system sporting git.

* build-aux/git-version-gen: Add support for the new option --fallback,
which comes into play when there is no $tarball_version_file and
git is not working.
(scriptversion): Update.

Copyright-paperwork-exempt: yes
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
11 years agomaint.mk: handle missing git with more grace
Peter Rosin [Fri, 28 Dec 2012 22:13:17 +0000 (23:13 +0100)]
maint.mk: handle missing git with more grace

* top/maint.mk (no-submodule-changes, public-submodule-commit): Quietly
proceed if git is not present.

Copyright-paperwork-exempt: yes
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
11 years agodup2: work around cygwin bug
Eric Blake [Mon, 31 Dec 2012 18:15:53 +0000 (11:15 -0700)]
dup2: work around cygwin bug

Detected by './gnulib-tool --test dup2 cloexec'.
Reported upstream: http://cygwin.com/ml/cygwin/2012-12/msg00377.html
and fixed already: http://cygwin.com/ml/cygwin-cvs/2012-q4/msg00202.html
but as we want to work with older cygwin, we'll have to carry this
in gnulib for a while.

* m4/dup2.m4 (gl_FUNC_DUP2): Flush out cygwin core dump.
* lib/dup2.c (rpl_dup2): Work around it.
* doc/posix-functions/dup2.texi (dup2): Document it.

Signed-off-by: Eric Blake <eblake@redhat.com>