gnulib.git
11 years agomaint: enable the sc_avoid_if_before_free syntax-check rule
Jim Meyering [Wed, 11 Jul 2012 15:25:27 +0000 (17:25 +0200)]
maint: enable the sc_avoid_if_before_free syntax-check rule

* cfg.mk (local-checks-to-skip): Enable sc_avoid_if_before_free.
(if_before_free_offenders_): Define.
(if_before_free_basename_re_): Define.
Exempt current files with useless if-before-free.

11 years agogettext: do not assume '#define ... defined ...' behavior
Paul Eggert [Thu, 12 Jul 2012 04:16:27 +0000 (21:16 -0700)]
gettext: do not assume '#define ... defined ...' behavior

* lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS):
Do not use '#define FOO ... defined BAR ...', as the C standard says
it's not portable to expect that this works after macro expansion.
Problem reported for gzip by Steven M. Schweda in
<http://lists.gnu.org/archive/html/bug-gzip/2012-07/msg00000.html>.

11 years agogetloadavg: clean out old Emacs and Autoconf cruft
Paul Eggert [Tue, 10 Jul 2012 23:50:06 +0000 (16:50 -0700)]
getloadavg: clean out old Emacs and Autoconf cruft

See Glenn Morris in <http://bugs.gnu.org/11905>.
* lib/getloadavg.c: Include <config.h>, <stdbool.h> always.
Include <sys/param.h> if HAVE_SYS_PARAM_H, not if unix or __unix.
(LDAV_CVT): Remove no-longer-used LOAD_AVE_CVT hook.
* m4/getloadavg.m4 (gl_PREREQ_GETLOADAVG): Check for <sys/param.h>.

11 years agobootstrap: let warn be like tests/init.sh's warn_
Akim Demaille [Fri, 6 Jul 2012 13:01:53 +0000 (15:01 +0200)]
bootstrap: let warn be like tests/init.sh's warn_

Reported by Jim Meyering.
* build-aux/bootstrap (warn): Remove, replaced by...
(warnf_, warn_): these.
Adjust callers.
Shorten messages that no longer fit in 80 columns.

11 years agogetopt: Simplify after Emacs changed.
Bruno Haible [Mon, 9 Jul 2012 19:56:56 +0000 (21:56 +0200)]
getopt: Simplify after Emacs changed.

* m4/getopt.m4 (gl_FUNC_GETOPT_POSIX): Inline gl_GETOPT_IFELSE.
(gl_GETOPT_IFELSE): Remove macro.

11 years agomaint.mk: add sc_vulnerable_makefile_CVE-2012-3386
Jim Meyering [Mon, 9 Jul 2012 14:24:00 +0000 (16:24 +0200)]
maint.mk: add sc_vulnerable_makefile_CVE-2012-3386

* top/maint.mk (sc_vulnerable_makefile_CVE-2012-3386): New rule.

11 years agomaint.mk: _sc_search_regexp, sc_vulnerable_makefile_CVE-2009-4029: fix
Jim Meyering [Mon, 9 Jul 2012 14:11:34 +0000 (16:11 +0200)]
maint.mk: _sc_search_regexp, sc_vulnerable_makefile_CVE-2009-4029: fix

Bugs in both of those conspired to make the
sc_vulnerable_makefile_CVE-2009-4029 rule 99% useless.
_sc_search_regexp's handling of non-empty $in_files would filter
out any offending file names.  sc_vulnerable_makefile_CVE-2009-4029's
choice of in_files value meant there would be no match in most
projects, due to the presence of two or more Makefile.in files.
* top/maint.mk (_sc_search_regexp) [in_vc_files,in_files]: Clarify.
Fix a bug in how a non-empty $$in_files was processed:
(sc_vulnerable_makefile_CVE-2009-4029): Fix erroneous use of in_files:
in spite of the name, it's a regexp, not a list of file names.

11 years agogetloadavg, getopt: fix commentary re configure.in
Paul Eggert [Mon, 9 Jul 2012 08:17:51 +0000 (01:17 -0700)]
getloadavg, getopt: fix commentary re configure.in

Autoconf is deprecating the name 'configure.in', so change it to
to the new name 'configure.ac' in a couple of places.
* lib/getloadavg.c: configure.in -> configure.ac, in comment.
* m4/getopt.m4 (gl_GETOPT_IFELSE, gl_GETOPT_SUBSTITUTE_HEADER)
(gl_PREREQ_GETOPT): Remove obsolete commentary re Emacs configure.in.
Emacs has renamed it to configure.ac, and it no longer refers
to these macros anyway.

11 years agotimespec: mark functions with const attributes
Paul Eggert [Mon, 9 Jul 2012 07:52:53 +0000 (00:52 -0700)]
timespec: mark functions with const attributes

* lib/timespec.h (timespec_add, timespec_sub, dtotimespec):
Mark with _GL_ATTRIBUTE_CONST.

11 years agocanonicalize[-lgpl]: handle "guessing" values when cross-building
Ludovic Courtès [Sat, 7 Jul 2012 00:04:55 +0000 (02:04 +0200)]
canonicalize[-lgpl]: handle "guessing" values when cross-building

* m4/canonicalize.m4 (gl_FUNC_CANONICALIZE_FILENAME_MODE)
(gl_CANONICALIZE_LGPL): Check whether $gl_cv_func_realpath_works
matches "*yes" instead of just "yes".  Regression introduced in commit
e0bcf6626cde8dad4bfbdc4045c744f0cd8b9e24.

11 years agocanonicalize: make the right guess when cross-compiling to GNU
Ludovic Courtès [Sat, 7 Jul 2012 00:04:54 +0000 (02:04 +0200)]
canonicalize: make the right guess when cross-compiling to GNU

* m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Match also "gnu*" to
determine whether cross-compiling to glibc systems, so as to
include GNU/Hurd.

11 years agoupdate from texinfo
Karl Berry [Fri, 6 Jul 2012 23:11:10 +0000 (16:11 -0700)]
update from texinfo

11 years agotimespec-sub: avoid duplicate include
Paul Eggert [Fri, 6 Jul 2012 17:48:27 +0000 (10:48 -0700)]
timespec-sub: avoid duplicate include

* lib/timespec-sub.c: Do not include <config.h> twice.
Reported by Juanma Barranquero.

11 years agobootstrap: use a more consistent error reporting scheme
Akim Demaille [Thu, 5 Jul 2012 15:05:31 +0000 (17:05 +0200)]
bootstrap: use a more consistent error reporting scheme

* build-aux/bootstrap (warn, die): New.
Use them.

11 years agosys_time: allow too-wide tv_sec
Paul Eggert [Fri, 6 Jul 2012 02:28:29 +0000 (02:28 +0000)]
sys_time: allow too-wide tv_sec

* m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Allow struct
timeval even if tv_sec is wider than time_t.  This allows
OpenBSD 5.1 amd64 and fixes an Emacs porting glitch with utimens.c,
as without this patch gnulib replaces struct timeval
and OpenBSD futimes therefore has a type mismatch.
* doc/posix-headers/sys_time.texi: Mention this.

11 years agopthread: check for both pthread_create and pthread_join
Paul Eggert [Fri, 6 Jul 2012 01:42:11 +0000 (18:42 -0700)]
pthread: check for both pthread_create and pthread_join

* m4/pthread.m4 (gl_PTHREAD_CHECK): Revert previous change, but
alter the check so that it tests for both pthread_create and
pthread_join.  This should be more portable to hosts like OSF/1 5.1.
Suggested by Bruno Haible and Richard Yao in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00048.html>.

11 years agoparse-datetime: doc tuneup
Paul Eggert [Fri, 6 Jul 2012 00:43:22 +0000 (00:43 +0000)]
parse-datetime: doc tuneup

* doc/parse-datetime.texi: Index "leap seconds" and fix minor
spacing issues.

11 years agodo-release-commit-and-tag: fix the previous commit
Akim Demaille [Thu, 5 Jul 2012 13:41:20 +0000 (15:41 +0200)]
do-release-commit-and-tag: fix the previous commit

* build-aux/do-release-commit-and-tag: Actually the test was right,
but the comment and the error message were misleading.
Fix comment, and improve error message.
Perform check first, so that NEWS is not modified uselessly.

11 years agodo-release-commit-and-tag: fix typo
Akim Demaille [Thu, 5 Jul 2012 13:16:08 +0000 (15:16 +0200)]
do-release-commit-and-tag: fix typo

* build-aux/do-release-commit-and-tag: Be sure that NEWS does
_not_ start with a stub.

11 years agopthread: check for pthread_create, not pthread_join
Paul Eggert [Thu, 5 Jul 2012 04:28:15 +0000 (21:28 -0700)]
pthread: check for pthread_create, not pthread_join

* m4/pthread.m4 (gl_PTHREAD_CHECK): Check for pthread_create, not
pthread_join.  On FreeBSD 9, pthread_create is in libpthread but
pthread_join in libc.  I hope this removes the need for all the
OSF/1 5.1 pthread_join business.  Reported by Richard Yao in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00042.html>.

11 years agoparse-datetime: fix failure to diagnose invalid input
Jim Meyering [Wed, 4 Jul 2012 10:58:07 +0000 (12:58 +0200)]
parse-datetime: fix failure to diagnose invalid input

date -d "$(printf '\xb0')" would print 00:00:00 with today's date
rather than diagnosing the invalid input.  Now it reports this:
date: invalid date '\260'
* lib/parse-datetime.y (to_uchar): Define.
(yylex): Don't sign-extend "other" bytes.
* m4/parse-datetime.m4: Require AC_C_INLINE for first use of "inline".
Thanks to Bruno Haible for the patch to this file.
* tests/test-parse-datetime.c (main): Add a test to trigger the bug.
Peter Evans reported the bug in GNU date: http://bugs.gnu.org/11843

11 years agobootstrap: do not require now-removed build-aux/missing
Jim Meyering [Tue, 3 Jul 2012 20:22:49 +0000 (22:22 +0200)]
bootstrap: do not require now-removed build-aux/missing

Now that build-aux/missing is, er, missing, bootstrap would
silently fail.
* build-aux/bootstrap (gnulib_extra_files): Remove $build_aux/missing
from the list, now that (since commit v0.0-7489-gd0f486f) the file is
no longer part of gnulib.
Diagnose the failure.

11 years agoalloca: add support for HP NonStop TNS/E native
Paul Eggert [Tue, 3 Jul 2012 17:08:41 +0000 (10:08 -0700)]
alloca: add support for HP NonStop TNS/E native

* lib/alloca.in.h (alloca): Support the new host.
From a suggestion by Joachim Schmitz in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-06/msg00355.html>.

11 years agofsusage: remove code not needed on non GNU/Linux systems.
Pádraig Brady [Mon, 2 Jul 2012 22:02:06 +0000 (00:02 +0200)]
fsusage: remove code not needed on non GNU/Linux systems.

* lib/fsusage.c [STAT_STATVFS || STAT_STATVFS64]:
Don't include headers no longer needed in this case.
* lib/fsusage.c [STAT_STATVFS &&
! (__linux__ && (__GLIBC__||__UCLIBC__))]: Undefine
STAT_STATFS2_FRSIZE to exclude code not used in this case.

11 years agofsusage: include files needed for glibc 2.6 fallback
Paul Eggert [Mon, 2 Jul 2012 21:24:04 +0000 (14:24 -0700)]
fsusage: include files needed for glibc 2.6 fallback

* lib/fsusage.c [STAT_STATVFS || STAT_STATVFS64]:
Include <sys/param.h>, <sys/mount.h>, <sys/vfs.h>
as they are needed for the 2.6 < glibc/Linux < 2.6.36 fallback.
Problem reported by Ludovic Courtès in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00005.html>.

11 years agofsusage: avoid needless check on GNU/Linux
Paul Eggert [Mon, 2 Jul 2012 21:20:16 +0000 (14:20 -0700)]
fsusage: avoid needless check on GNU/Linux

* m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Omit STAT_STATFS3_OSF1 check
on GNU/Linux systems, since it can't possibly work.

11 years agolog: Fix an autoconf >= 2.64 warning.
Bruno Haible [Sun, 1 Jul 2012 23:12:21 +0000 (01:12 +0200)]
log: Fix an autoconf >= 2.64 warning.

* modules/log (configure.ac): Require, not invoke, gl_FUNC_LOG.
Reported by Carlos O'Donell <carlos_odonell@mentor.com>.

11 years agoautoupdate
Karl Berry [Sun, 1 Jul 2012 16:30:32 +0000 (09:30 -0700)]
autoupdate

11 years agoautoupdate
Karl Berry [Sat, 30 Jun 2012 15:26:44 +0000 (08:26 -0700)]
autoupdate

11 years agolog10f: Fix possible configuration problem.
Bruno Haible [Thu, 28 Jun 2012 20:00:38 +0000 (22:00 +0200)]
log10f: Fix possible configuration problem.

* m4/log10f.m4 (gl_FUNC_LOG10F): Augment LIBS by $LOG10F_LIBM, not
$LOGF_LIBM.
Reported by Carlos O'Donell <carlos_odonell@mentor.com>.

11 years agoFix typo in ChangeLog entry.
Bruno Haible [Thu, 28 Jun 2012 11:32:10 +0000 (13:32 +0200)]
Fix typo in ChangeLog entry.

11 years agoremove: No longer override on all platforms. Fixes bug from 2012-03-20.
Bruno Haible [Thu, 28 Jun 2012 10:50:41 +0000 (12:50 +0200)]
remove: No longer override on all platforms. Fixes bug from 2012-03-20.

* m4/remove.m4 (gl_FUNC_REMOVE): Test gl_cv_func_unlink_honors_slashes,
not gl_cv_func_unlink_works.
Reported by Carlos O'Donell <carlos_odonell@mentor.com>.

11 years agoconfig: drop scripts that automake says are not independent
Eric Blake [Tue, 26 Jun 2012 17:23:18 +0000 (11:23 -0600)]
config: drop scripts that automake says are not independent

These three scripts are too closely tied to automake internals to
be independently useful.  In fact, automake would rather that
people did not mix the latest version of these scripts with older
versions of automake, as there is no effort being put into
maintaining backwards-compatibility when these scripts are updated.

The remaining scripts pulled from automake, such as mdate-sh or
depcomp, are independently useful, so a future patch may end up
reparenting those scripts to have gnulib instead of automake as
the master owner.

* config/srclist.txt: Drop elisp-comp, missing, and ylwrap.
* build-aux/elisp-comp: Delete.
* build-aux/missing: Likewise.
* build-aux/ylwrap: Likewise.
* modules/elisp-comp: Likewise.
* MODULES.html.sh: Drop mention of elisp-comp.
* NEWS: Mention this.

Signed-off-by: Eric Blake <eblake@redhat.com>
11 years agoroot-uid: new module
Paul Eggert [Tue, 26 Jun 2012 23:46:25 +0000 (16:46 -0700)]
root-uid: new module

This is for portability to Tandem's NonStop Kernel.
* lib/root-uid.h, modules/root-uid: New files.
* lib/euidaccess.c, lib/pt_chown.c, lib/unlinkdir.c:
* lib/write-any-file.c, tests/test-sethostname2.c:
Include "root-uid.h".
* lib/euidaccess.c (euidaccess):
* lib/pt_chown.c (main):
* lib/unlinkdir.c (cannot_unlink_dir):
* lib/write-any-file.c (can_write_any_file):
* m4/mknod.m4 (gl_FUNC_MKNOD):
* tests/test-sethostname2.c (geteuid, main):
Don't assume ROOT_UID == 0.
* modules/euidaccess (Depends-on):
* modules/pt_chown (Depends-on):
* modules/sethostname-tests (Depends-on):
* modules/unlinkdir (Depends-on):
* modules/write-any-file (Depends-on):
Add root-uid.

11 years agoregex: use locale-independent comparison for codeset name
Paul Eggert [Tue, 26 Jun 2012 22:16:07 +0000 (15:16 -0700)]
regex: use locale-independent comparison for codeset name

See Bruno Haible's comment in <http://bugs.gnu.org/10305#120>.
* lib/regcomp.c (init_dfa): Use just ASCII case comparison
for codeset name.
* lib/regex_internal.h: Do not include <strings.h>, since we
no longer use strcasecmp.
* modules/regex (Depends-on): Remove strcase.

11 years agogetopt-posix: No longer guarantee that option processing is resettable.
Bruno Haible [Tue, 26 Jun 2012 17:53:01 +0000 (19:53 +0200)]
getopt-posix: No longer guarantee that option processing is resettable.

* doc/posix-functions/getopt.texi: Drop description of problem with
internal state. Fix info about mingw and msvc9.
* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Don't require a resettable
option processing by getopt(). Run three test programs instead of one.
Simplify cross-compilation guess.
* NEWS: Mention the change.
Reported by Rich Felker <dalias@aerifal.cx>.

11 years agoargp, regex: Ensure strcasecmp gets declared.
Bruno Haible [Tue, 26 Jun 2012 17:46:15 +0000 (19:46 +0200)]
argp, regex: Ensure strcasecmp gets declared.

* lib/argp-help.c: Include <strings.h>.
* lib/regex_internal.h: Likewise.
Reported and suggested by Joachim Schmitz <jojo@schmitz-digital.de>.

11 years agoautoupdate
Karl Berry [Mon, 25 Jun 2012 13:18:58 +0000 (06:18 -0700)]
autoupdate

11 years agoptsname_r: Fix typo in last commit.
Bruno Haible [Sun, 24 Jun 2012 23:59:31 +0000 (01:59 +0200)]
ptsname_r: Fix typo in last commit.

11 years agoptsname_r: Make it consistent with ptsname on AIX.
Bruno Haible [Sun, 24 Jun 2012 23:00:57 +0000 (01:00 +0200)]
ptsname_r: Make it consistent with ptsname on AIX.

* lib/ptsname_r.c (__ptsname_r): For AIX, use nearly the same
implementation as for OSF/1.
* tests/test-ptsname_r.c (main) [AIX]: Use the modern way of opening
a pty master.

11 years agoptsname_r: Make it consistent with ptsname on OSF/1.
Bruno Haible [Sun, 24 Jun 2012 21:28:13 +0000 (23:28 +0200)]
ptsname_r: Make it consistent with ptsname on OSF/1.

* lib/ptsname_r.c (__ptsname_r): Add a different implementation for
OSF/1.

11 years agottyname_r: Fix result on OSF/1, Solaris.
Bruno Haible [Sun, 24 Jun 2012 21:09:10 +0000 (23:09 +0200)]
ttyname_r: Fix result on OSF/1, Solaris.

* lib/ttyname_r.c (ttyname_r): Produce a NUL-terminated result.

11 years agoptsname_r: Add support for Solaris.
Bruno Haible [Sun, 24 Jun 2012 16:46:57 +0000 (18:46 +0200)]
ptsname_r: Add support for Solaris.

* lib/ptsname_r.c (__ptsname_r): Add a different implementation for
Solaris.

11 years agoptsname_r: Fix test failure on native Windows.
Bruno Haible [Sun, 24 Jun 2012 15:06:39 +0000 (17:06 +0200)]
ptsname_r: Fix test failure on native Windows.

* modules/ptsname_r (Depends-on): Add isatty.

11 years agoptsname_r: Fix test failures on IRIX, Solaris.
Bruno Haible [Sun, 24 Jun 2012 15:05:25 +0000 (17:05 +0200)]
ptsname_r: Fix test failures on IRIX, Solaris.

* m4/ptsname_r.m4 (gl_PREREQ_PTSNAME_R): Test whether isatty sets
errno when it fails. Define ISATTY_FAILS_WITHOUT_SETTING_ERRNO
accordingly.
* lib/ptsname_r.c: Include <fcntl.h>.
(__ptsname_r): When isatty returned false, then on IRIX, Solaris
set errno if fd is invalid.
* tests/test-isatty.c (main): Update comments.

11 years agoptsname test: Extend test.
Bruno Haible [Sun, 24 Jun 2012 12:53:43 +0000 (14:53 +0200)]
ptsname test: Extend test.

* tests/test-ptsname.c: Include <errno.h>.
(main): Test behaviour with invalid file descriptor.

11 years agotime: fix obsolete comment
Paul Eggert [Sun, 24 Jun 2012 05:23:16 +0000 (22:23 -0700)]
time: fix obsolete comment

* m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Remove obsolete
reference to HAVE_STRUCT_TIMESPEC in comment.

11 years agogetopt-gnu: Handle suboptimal getopt_long's abbreviation handling.
Bruno Haible [Sat, 23 Jun 2012 15:08:47 +0000 (17:08 +0200)]
getopt-gnu: Handle suboptimal getopt_long's abbreviation handling.

* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): If getopt_long exists but
does not handle abbreviated long options with equivalent
disambiguations, set gl_replace_getopt to yes.
* doc/posix-functions/getopt.texi: Mention the OpenBSD 5.0 problem.

11 years agotime_r: fix typo that always overrode localtime_r decl
Paul Eggert [Fri, 22 Jun 2012 15:42:13 +0000 (08:42 -0700)]
time_r: fix typo that always overrode localtime_r decl

* m4/time_r.m4 (gl_TIME_R): Use AC_CHECK_DECLS, not
AC_CHECK_DECLS_ONCE, since localtime_r is declared in <time.h>,
not in a standard include.

11 years agoWrite "Mac OS X" instead of "MacOS X".
Bruno Haible [Fri, 22 Jun 2012 11:26:07 +0000 (13:26 +0200)]
Write "Mac OS X" instead of "MacOS X".

* README: Write "Mac OS X" instead of "MacOS X".
* build-aux/bootstrap: Likewise.
* build-aux/install-reloc: Likewise.
* lib/acl-internal.h: Likewise.
* lib/acl_entries.c: Likewise.
* lib/argp-ba.c: Likewise.
* lib/argp-pv.c: Likewise.
* lib/config.charset: Likewise.
* lib/copy-acl.c: Likewise.
* lib/csharpexec.c: Likewise.
* lib/euidaccess.c: Likewise.
* lib/fbufmode.c: Likewise.
* lib/fflush.c: Likewise.
* lib/file-has-acl.c: Likewise.
* lib/filemode.h: 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/fsusage.c: Likewise.
* lib/fwritable.c: Likewise.
* lib/fwriting.c: Likewise.
* lib/get-rusage-as.c: Likewise.
* lib/get-rusage-data.c: Likewise.
* lib/getdomainname.c: Likewise.
* lib/idpriv-drop.c: Likewise.
* lib/idpriv-droptemp.c: Likewise.
* lib/localcharset.c: Likewise.
* lib/locale.in.h: Likewise.
* lib/localename.c: Likewise.
* lib/mbsrtowcs-state.c: Likewise.
* lib/nproc.c: Likewise.
* lib/passfd.c: Likewise.
* lib/posix_openpt.c: Likewise.
* lib/printf-parse.c: Likewise.
* lib/progreloc.c: Likewise.
* lib/safe-read.h: Likewise.
* lib/safe-write.h: Likewise.
* lib/sched.in.h: Likewise.
* lib/set-mode-acl.c: Likewise.
* lib/signal.in.h: Likewise.
* lib/stdint.in.h: Likewise.
* lib/stdio-impl.h: Likewise.
* lib/stdlib.in.h: Likewise.
* lib/strtod.c: Likewise.
* lib/sys_select.in.h: Likewise.
* lib/tcgetsid.c: Likewise.
* lib/unistd.in.h: Likewise.
* lib/unlockpt.c: Likewise.
* lib/vasnprintf.c: Likewise.
* lib/vma-iter.c: Likewise.
* lib/wcsrtombs-state.c: Likewise.
* m4/acl.m4: Likewise.
* m4/acosl.m4: Likewise.
* m4/asinl.m4: Likewise.
* m4/atanl.m4: Likewise.
* m4/c-stack.m4: Likewise.
* m4/cosl.m4: Likewise.
* m4/expl.m4: Likewise.
* m4/extensions.m4: Likewise.
* m4/fdatasync.m4: Likewise.
* m4/fmal.m4: Likewise.
* m4/frexp.m4: Likewise.
* m4/frexpf.m4: Likewise.
* m4/frexpl.m4: Likewise.
* m4/fsusage.m4: Likewise.
* m4/getdomainname.m4: Likewise.
* m4/getloadavg.m4: Likewise.
* m4/getopt.m4: Likewise.
* m4/gettext.m4: Likewise.
* m4/gnulib-common.m4: Likewise.
* m4/intdiv0.m4: Likewise.
* m4/intlmacosx.m4: Likewise.
* m4/largefile.m4: Likewise.
* m4/ldexpl.m4: Likewise.
* m4/link-follow.m4: Likewise.
* m4/locale-ar.m4: Likewise.
* m4/locale-fr.m4: Likewise.
* m4/locale-ja.m4: Likewise.
* m4/locale-tr.m4: Likewise.
* m4/locale-zh.m4: Likewise.
* m4/locale_h.m4: Likewise.
* m4/lock.m4: Likewise.
* m4/logl.m4: Likewise.
* m4/mathfunc.m4: Likewise.
* m4/minus-zero.m4: Likewise.
* m4/mktime.m4: Likewise.
* m4/mmap-anon.m4: Likewise.
* m4/multiarch.m4: Likewise.
* m4/nanosleep.m4: Likewise.
* m4/nocrash.m4: Likewise.
* m4/poll.m4: Likewise.
* m4/printf-frexpl.m4: Likewise.
* m4/printf.m4: Likewise.
* m4/signbit.m4: Likewise.
* m4/sinl.m4: Likewise.
* m4/sqrtl.m4: Likewise.
* m4/strerror_r.m4: Likewise.
* m4/tanl.m4: Likewise.
* m4/threadlib.m4: Likewise.
* m4/ttyname_r.m4: Likewise.
* m4/unlink.m4: Likewise.
* m4/visibility.m4: Likewise.
* m4/wcwidth.m4: Likewise.
* tests/minus-zero.h: Likewise.
* tests/test-alloca-opt.c: Likewise.
* tests/test-copy-acl.sh: Likewise.
* tests/test-copy-file.sh: Likewise.
* tests/test-fdatasync.c: Likewise.
* tests/test-file-has-acl.sh: Likewise.
* tests/test-flock.c: Likewise.
* tests/test-fsync.c: Likewise.
* tests/test-localename.c: Likewise.
* tests/test-malloca.c: Likewise.
* tests/test-nonblocking-pipe.h: Likewise.
* tests/test-nonblocking-socket.h: Likewise.
* tests/test-openpty.c: Likewise.
* tests/test-posix_openpt.c: Likewise.
* tests/test-ptsname.c: Likewise.
* tests/test-ptsname_r.c: Likewise.
* tests/test-sameacls.c: Likewise.
* tests/test-select.h: Likewise.
* tests/test-set-mode-acl.sh: Likewise.
* tests/test-snprintf-posix.h: Likewise.
* tests/test-sprintf-posix.h: Likewise.
* tests/test-strtod.c: Likewise.
* tests/test-time.c: Likewise.
* tests/test-vasnprintf-posix.c: Likewise.
* tests/test-vasprintf-posix.c: Likewise.
* doc/acl-resources.txt: Likewise.
* doc/**/*.texi: Likewise.
Reported by Max Horn <max@quendi.de>.

11 years agograntpt: Relax requirement regarding invalid file descriptors.
Bruno Haible [Fri, 22 Jun 2012 10:36:47 +0000 (12:36 +0200)]
grantpt: Relax requirement regarding invalid file descriptors.

* lib/grantpt.c: Don't include <fcntl.h>.
(grantpt): Don't verify the validity of the file descriptor.
* modules/grantpt (Depends-on): Remove fcntl-h.
* tests/test-grantpt.c (main): Allow grantpt to succeed for invalid
file descriptors.
* doc/posix-functions/grantpt.texi: Document more platforms on which
grantpt succeeds for invalid file descriptors.
Reported by Rich Felker <dalias@aerifal.cx>.

11 years agofbufmode test: Don't test unportable behaviour.
Bruno Haible [Fri, 22 Jun 2012 10:02:54 +0000 (12:02 +0200)]
fbufmode test: Don't test unportable behaviour.

* tests/test-fbufmode.c (test_mode): New function, extracted from main.
(main): Invoke it three times.
Reported by Szabolcs Nagy <nsz@port70.net>
and Rich Felker <dalias@aerifal.cx>.

11 years agognulib-tool: Refactor inctests variable.
Bruno Haible [Thu, 21 Jun 2012 20:45:22 +0000 (22:45 +0200)]
gnulib-tool: Refactor inctests variable.

* gnulib-tool: Normalize inctests to 'true' or 'false', not ''.
(func_modules_transitive_closure,
func_modules_transitive_closure_separately,
func_import, func_create_testdir): Update.

11 years agognulib-tool: --create-[mega]testdir, --[mega]test implies --with-tests.
Bruno Haible [Thu, 21 Jun 2012 20:25:13 +0000 (22:25 +0200)]
gnulib-tool: --create-[mega]testdir, --[mega]test implies --with-tests.

* gnulib-tool: Accept option --without-tests.
(func_usage): Document --without-tests option. Rearrange.
(inctests): Normalize according to the mode.
* NEWS: Mention the change.
Suggested by Simon Josefsson.

11 years agoparse-duration test: Avoid spurious output.
Bruce Korb [Thu, 21 Jun 2012 20:17:13 +0000 (22:17 +0200)]
parse-duration test: Avoid spurious output.

* tests/test-parse-duration.sh: Reindent with leading tabs.

11 years agotesting: fix typo in here doc
Bruce Korb [Thu, 21 Jun 2012 18:19:37 +0000 (11:19 -0700)]
testing: fix typo in here doc

* tests/test-parse-duration.sh: fix mal-formed here doc.

11 years agomaint: disable the strncpy prohibition
Jim Meyering [Thu, 21 Jun 2012 16:33:00 +0000 (18:33 +0200)]
maint: disable the strncpy prohibition

* cfg.mk: Do not prohibit strncpy here.

11 years agoFix misspellings in comments.
Paul Eggert [Thu, 21 Jun 2012 15:58:33 +0000 (08:58 -0700)]
Fix misspellings in comments.

11 years agononblocking: Avoid compilation error on mingw64.
Bruno Haible [Thu, 21 Jun 2012 10:39:37 +0000 (12:39 +0200)]
nonblocking: Avoid compilation error on mingw64.

* m4/stdio_h.m4 (gl_STDIO_H): Invoke gl_MODULE_INDICATOR for scanf,
fscanf.
* modules/vscanf (configure.ac): Invoke gl_MODULE_INDICATOR.
* modules/vfscanf (configure.ac): Likewise.
* lib/stdio-read.c (scanf, fscanf, vscanf, vfscanf): Enable function
definition only if stdio.h has prepared it.
Reported by Daniel P. Berrange <berrange@redhat.com>.

11 years agoDo use readlink if available
Bernd Jendrissek [Wed, 20 Jun 2012 23:04:28 +0000 (01:04 +0200)]
Do use readlink if available

The main effect of this patch is to make gnulib-tool not spam the
terminal with failures from ls. Despite the copious stderr output,
files still get linked correctly.

gnulib-tool: Use readlink if it is available.
* gnulib-tool (func_readlink): Choose function more appropriately.

Running under dash, type -p readlink fails because dash doesn't
understand -p. That causes gnulib-tool to fall back to ls to read
symlinks, despite readlink being available. That, in turn, spams the
terminal when func_ln_if_changed's DEST argument doesn't exist.

The output from type goes to /dev/null anyway, so asking for -p has no
purpose.

11 years agoposixtm-tests: port to buggy compiler
Paul Eggert [Thu, 21 Jun 2012 09:13:59 +0000 (02:13 -0700)]
posixtm-tests: port to buggy compiler

Problem reported by Simon Josefsson in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-06/msg00246.html>.
* modules/posixtm-tests (Depends-on): Add stdint.
* tests/test-posixtm.c (struct posixtm_test.t_expected):
Now of type int_least64_t, not int64_t, both because that's
what INT64_C returns and because int_least64_t works even
on 72-bit hosts.
(T): Use INT64_C on constants outside the traditional int range,
to work around compiler bug noted by Simon.

11 years agomktime: fix integer overflow in 'configure'-time test
Paul Eggert [Thu, 21 Jun 2012 08:49:15 +0000 (01:49 -0700)]
mktime: fix integer overflow in 'configure'-time test

* m4/mktime.m4 (gl_FUNC_MKTIME): Do not rely on undefined behavior
after integer overflow.  Problem reported by Rich Felker in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-06/msg00257.html>.
Also, don't look for further instances of a bug if we've already
found one instance; this helps 'configure' run faster.

11 years agotmpfile, clean-temp: Fix invocation of GetVersionEx.
John Darrington [Wed, 20 Jun 2012 21:30:48 +0000 (23:30 +0200)]
tmpfile, clean-temp: Fix invocation of GetVersionEx.

* lib/tmpfile.c (supports_delete_on_close): Initialize parameter for
GetVersionEx correctly.
* lib/clean-temp.c (supports_delete_on_close): Likewise.

11 years agofdopen: Allow implementations that don't reject invalid fd arguments.
Bruno Haible [Wed, 20 Jun 2012 20:51:06 +0000 (22:51 +0200)]
fdopen: Allow implementations that don't reject invalid fd arguments.

* m4/fdopen.m4 (gl_FUNC_FDOPEN): Let the test pass if fdopen(-1,...)
succeeds.
Reported by Rich Felker <dalias@aerifal.cx>.

11 years agoparse-duration: Make self-test build on its own.
Simon Josefsson [Wed, 20 Jun 2012 17:13:44 +0000 (19:13 +0200)]
parse-duration: Make self-test build on its own.

* modules/parse-duration-tests (test_parse_duration_LDADD): Don't
bring in LIBINTL.

11 years agoautoupdate
Karl Berry [Wed, 20 Jun 2012 16:57:30 +0000 (09:57 -0700)]
autoupdate

11 years agoinit.sh: do not rely on autoupated PWD
Paul Eggert [Wed, 20 Jun 2012 14:06:54 +0000 (07:06 -0700)]
init.sh: do not rely on autoupated PWD

This addresses symptoms of the problem reported by Nelson H.F. Beebe in
<http://lists.gnu.org/archive/html/bug-gzip/2012-06/msg00008.html>.
Although Nelson's bug was not necessarily fixed by this patch,
it seems wise to make the change for safety.
* tests/init.sh (path_prepend_): Do not rely on PWD updating
automagically after 'cd'; this is not reliable on older shells.
(setup_): Fail if we cannot cd to temporary directory.

11 years agostat, fstat: Avoid warnings on mingw64.
Bruno Haible [Wed, 20 Jun 2012 00:01:14 +0000 (02:01 +0200)]
stat, fstat: Avoid warnings on mingw64.

* lib/stat.c (stat) [_GL_WINDOWS_64_BIT_ST_SIZE]: Undefine before
redefining.
* lib/fstat.c (stat, fstat) [_GL_WINDOWS_64_BIT_ST_SIZE]: Likewise.
Reported by Daniel P. Berrange <berrange@redhat.com>.

11 years agostdioext: Add support for musl libc.
Bruno Haible [Tue, 19 Jun 2012 21:35:08 +0000 (23:35 +0200)]
stdioext: Add support for musl libc.

* m4/fbufmode.m4 (gl_FUNC_FBUFMODE): Test whether __fbufsize exists.
* lib/fbufmode.c (fbufmode): Add conditional code for musl.

* m4/fseterr.m4: New file.
* lib/fseterr.h (fseterr): Define as an alias of __fseterr if that
function exists.
* modules/fseterr (Files): Add m4/fseterr.m4.
(configure.ac): Invoke gl_FUNC_FSETERR. Compile fseterr.c if
__fseterr does not exist.
(Makefile.am): Remove fseterr.c from lib_SOURCES.

* lib/freadable.h: Update comment.

* lib/fwritable.h: Update comment.

* lib/freading.h: Update comment.

* lib/fwriting.h: Update comment.

* m4/freadahead.m4: New file.
* lib/freadahead.h (freadahead): Define as an alias of __freadahead if
that function exists.
* modules/freadahead (Files): Add m4/freadahead.m4.
(configure.ac): Invoke gl_FUNC_FREADAHEAD. Compile freadahead.c if
__freadahead does not exist.
(Makefile.am): Remove freadahead.c from lib_SOURCES.

* m4/freadptr.m4: New file.
* lib/freadptr.h (freadptr): Define as an alias of __freadptr if that
function exists.
* modules/freadptr (Files): Add m4/freadptr.m4.
(configure.ac): Invoke gl_FUNC_FREADPTR. Compile freadptr.c if
__freadptr does not exist.
(Makefile.am): Remove freadptr.c from lib_SOURCES.

* m4/freadseek.m4: New file.
* lib/freadseek.c (freadptrinc): Use __freadptrinc if that function
exists.
* modules/freadseek (Files): Add m4/freadseek.m4.
(configure.ac): Invoke gl_FUNC_FREADSEEK.

* lib/fpurge.c (fpurge): Update comment.

Reported by and with help from Rich Felker <dalias@aerifal.cx>.

11 years ago*printf-posix: Put more info into config.log.
Bruno Haible [Tue, 19 Jun 2012 10:43:51 +0000 (12:43 +0200)]
*printf-posix: Put more info into config.log.

* m4/printf.m4 (gl_PRINTF_ENOMEM): Emit conftest's error output and
exit code into config.log.

11 years agogetopt-gnu: Fix exit code overflow in autoconf test.
Bruno Haible [Tue, 19 Jun 2012 10:11:04 +0000 (12:11 +0200)]
getopt-gnu: Fix exit code overflow in autoconf test.

* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Squash exit code values,
to keep them below < 128.

11 years agomaint.mk: fix typo in code to derive GPG key at release time
Jim Meyering [Sun, 17 Jun 2012 19:16:54 +0000 (21:16 +0200)]
maint.mk: fix typo in code to derive GPG key at release time

* top/maint.mk (gpg_key_ID): Fix typo: $3 -> $$3

11 years agoregex: avoid warning when pointers are not long
Paul Eggert [Sun, 17 Jun 2012 16:55:15 +0000 (09:55 -0700)]
regex: avoid warning when pointers are not long

* lib/regcomp.c (parse_dup_op, mark_opt_subexp): Cast between void *
and uintptr_t, not long, for portability to hosts where pointers and
long have different sizes.  Issue noted by Daniel P. Berrange in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-06/msg00122.html>
and fix suggested by Bruno Haible in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-06/msg00128.html>.

11 years agodummy: Relicense into the public domain.
Bruno Haible [Sun, 17 Jun 2012 15:35:59 +0000 (17:35 +0200)]
dummy: Relicense into the public domain.

* modules/dummy (License): Set to "public domain".
Suggested by Reuben Thomas.

11 years agoautoupdate
Karl Berry [Sun, 17 Jun 2012 15:15:48 +0000 (08:15 -0700)]
autoupdate

11 years agoannounce-gen: VPATH issues
Akim Demaille [Tue, 12 Jun 2012 10:23:59 +0000 (12:23 +0200)]
announce-gen: VPATH issues

* build-aux/announce-gen (--srcdir): New option, used to trim the
$srcdir part of the path from $builddir to NEWS.
* top/maint.mk (announcement): Adjust.

11 years agognu-web-doc-update: VPATH builds
Akim Demaille [Thu, 7 Jun 2012 14:17:36 +0000 (16:17 +0200)]
gnu-web-doc-update: VPATH builds

* build-aux/gnu-web-doc-update (--builddir): New option.
Revamp the handling of options.
Prefer $(...) to `...`.
Don't pass --tmpdir=. to mktemp, it is useless given that we specify
the template, and it is GNU mktemp specific.
Prefer set -e to long series of &&.
Restore the initial git branch, not "master".
Properly initialize submodules (don't rely only on bootstrap)
Do not reconfigure blindly, use config.status.
* top/README-release: Update instructions for gnu-web-doc-update.

11 years agoautoupdate
Karl Berry [Mon, 11 Jun 2012 15:21:34 +0000 (08:21 -0700)]
autoupdate

11 years agomaint.mk: revert most of the previous change re "all these"
Jim Meyering [Mon, 11 Jun 2012 09:32:54 +0000 (11:32 +0200)]
maint.mk: revert most of the previous change re "all these"

* top/maint.mk (prohibit_undesirable_word_seq_RE_): Remove that pair.
For rationale, see the discussion at
http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/30912

11 years agoautoupdate missed x bit
Karl Berry [Mon, 11 Jun 2012 00:18:10 +0000 (17:18 -0700)]
autoupdate missed x bit

11 years agodo not ask for gpg pw with --dry-run
Karl Berry [Mon, 11 Jun 2012 00:07:44 +0000 (17:07 -0700)]
do not ask for gpg pw with --dry-run

11 years agoimplement --replace for ftp-upload protocol v1.2
Karl Berry [Mon, 11 Jun 2012 00:05:27 +0000 (17:05 -0700)]
implement --replace for ftp-upload protocol v1.2

11 years agoparse-duration: Relicense under LGPLv2+.
Bruce Korb [Sun, 10 Jun 2012 23:10:34 +0000 (01:10 +0200)]
parse-duration: Relicense under LGPLv2+.

* modules/parse-duration (License): Change to LGPLv2+.

11 years agomaint.mk: prohibit common grammar error: "all these"
Jim Meyering [Sun, 10 Jun 2012 19:49:59 +0000 (21:49 +0200)]
maint.mk: prohibit common grammar error: "all these"

* top/maint.mk (prohibit_undesirable_word_seq_RE_): Add "all these" to
the list of prohibited word sequences.  It should be "all of these".
* lib/tempname.c (__gen_tempname): Fix one of them.

11 years agodo-release-commit-and-tag: support VPATH builds
Akim Demaille [Thu, 7 Jun 2012 14:17:30 +0000 (16:17 +0200)]
do-release-commit-and-tag: support VPATH builds

* build-aux/do-release-commit-and-tag: Prefer $(...) to `...`.
(noteworthy): Defined earlier to factor its value.
(noteworthy_stub): New.
Use it to factor.
(help_version): Split into...
(help, version): these.
Adjust the option processing part.
Support "--option=value" in addition to "--option value".
(builddir): New.
(--builddir): New option.
* top/README-release: Document this.
Reword slightly so that the reader cannot understand that he
has to do these steps before calling do-release-commit-and-tag.

11 years agoreadme-release: also require announce-gen and maintainer-makefile
Akim Demaille [Thu, 7 Jun 2012 14:25:13 +0000 (16:25 +0200)]
readme-release: also require announce-gen and maintainer-makefile

* modules/readme-release (Depends-on): here.
* modules/announce-gen, modules/do-release-commit-and-tag,
modules/gnu-web-doc-update, modules/maintainer-makefile
(Description): Point to readme-release.

11 years agomaint.mk: fix VPATH issues.
Akim Demaille [Thu, 7 Jun 2012 10:21:36 +0000 (12:21 +0200)]
maint.mk: fix VPATH issues.

* top/maint.mk (news-check): GNU Make understand $< very well.
(release-prep): NEWS is in $(srcdir).

11 years agoreadme-release: require the promoted modules.
Akim Demaille [Tue, 5 Jun 2012 09:05:45 +0000 (11:05 +0200)]
readme-release: require the promoted modules.

* modules/readme-release (Depends-on): Add
do-release-commit-and-tag, gnupload, and gnu-web-doc-update, used
in this text.

11 years agoupdate from texinfo
Karl Berry [Tue, 5 Jun 2012 21:44:59 +0000 (14:44 -0700)]
update from texinfo

11 years agoerror, strerror-override: Support mingw64 from Fedora 17.
Paolo Bonzini [Sun, 3 Jun 2012 16:29:00 +0000 (18:29 +0200)]
error, strerror-override: Support mingw64 from Fedora 17.

* lib/errno.in.h (GNULIB_defined_ESTREAMS): Use a different indicator
for ETXTBSY, ENODATA, ENOSR, ENOSTR, ETIME, EOTHER, compared to
EINPROGRESS.
* lib/strerror-override.h (strerror_override): Test it.
* lib/strerror-override.c (strerror_override): Likewise.
* m4/errno_h.m4 (gl_HEADER_ERRNO_H): Test also ETXTBSY.

11 years agoerror, strerror-override: Support mingw64 from Fedora 17.
Paolo Bonzini [Sun, 3 Jun 2012 16:02:55 +0000 (18:02 +0200)]
error, strerror-override: Support mingw64 from Fedora 17.

* lib/errno.in.h (GNULIB_defined_ENOTRECOVERABLE): Use a different
indicator for ENOTRECOVERABLE, compared to EOWNERDEAD.
* lib/strerror-override.h (strerror_override): Test it.
* lib/strerror-override.c (strerror_override): Likewise.

11 years agoerror, strerror-override: Support new errno values from POSIX:2008.
Bruno Haible [Sun, 3 Jun 2012 13:47:14 +0000 (15:47 +0200)]
error, strerror-override: Support new errno values from POSIX:2008.

* m4/errno_h.m4 (gl_HEADER_ERRNO_H): Test also EOWNERDEAD and
ENOTRECOVERABLE.
* lib/errno.in.h (EOWNERDEAD, ENOTRECOVERABLE): Define on all
platforms.
* lib/strerror-override.c (strerror_override): Conditionalize the
EOWNERDEAD, ENOTRECOVERABLE handling on GNULIB_defined_EOWNERDEAD.
* lib/strerror-override.h (strerror_override): Declare also if
GNULIB_defined_EOWNERDEAD is defined.
* tests/test-errno.c (e130, e131): New variables.
* doc/posix-headers/errno.texi: Mention the status for EOWNERDEAD,
ENOTRECOVERABLE.
Reported by Paolo Bonzini.

11 years agoautoupdate
Karl Berry [Sat, 2 Jun 2012 15:19:30 +0000 (08:19 -0700)]
autoupdate

11 years agosavewd: add missing dependency on sys_wait module
Jim Meyering [Thu, 31 May 2012 19:30:10 +0000 (21:30 +0200)]
savewd: add missing dependency on sys_wait module

* modules/savewd (Depends-on): Add sys_wait, needed at least
for MSVC.  Report and suggested change by Michael Goffioul.

11 years agosystem-quote-tests: port to CentOS 5
Paul Eggert [Tue, 29 May 2012 14:50:21 +0000 (07:50 -0700)]
system-quote-tests: port to CentOS 5

Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-05/msg00255.html>.
* tests/test-system-quote-child.c (fclose, fprintf): Undef.

11 years agomaint: fix typos in comments and ChangeLog
Jim Meyering [Tue, 29 May 2012 11:45:10 +0000 (13:45 +0200)]
maint: fix typos in comments and ChangeLog

Culprits identified and fixed mostly automatically using these commands:
git ls-files | misspellings -f - |grep -v '^ERROR:' |perl -pe \
's/^(.*?)\[(\d+)\]: (\w+) -> "(.*?)"$/sed -i '\''${2}s!$3!$4!'\'' $1/'
using http://github.com/lyda/misspell-check
* ChangeLog: Fix typos.
* doc/solaris-versions: Likewise.
* lib/regexec.c (re_search_stub): Likewise.
* m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.

11 years agoautoupdate
Karl Berry [Mon, 28 May 2012 16:42:36 +0000 (09:42 -0700)]
autoupdate

11 years agomanywarnings: remove duplicate -Wmultichar entry
Paul Eggert [Sun, 27 May 2012 23:26:51 +0000 (16:26 -0700)]
manywarnings: remove duplicate -Wmultichar entry

* m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Remove duplicate
entry for -Wmultichar.  -Wno-multichar is in the GCC 4.7.0 manual,
so keep the entry marked as documented.

11 years agodo not sync mktime.c from libc, last one left, not worth it
Karl Berry [Sun, 27 May 2012 16:24:39 +0000 (09:24 -0700)]
do not sync mktime.c from libc, last one left, not worth it

11 years agoautoupdate
Karl Berry [Sun, 27 May 2012 16:23:13 +0000 (09:23 -0700)]
autoupdate