Update from Gnulib

This incorporates:
2019-09-22 Update some URLs
2019-09-15 fcntl-h: fix compilation error of creat.c on MSVC
2019-09-15 creat: new module
2019-09-15 access: new module
2019-09-09 Add option to assume best, not worst, when cross-compiling.
* build-aux/config.guess, build-aux/config.sub, doc/misc/texinfo.tex:
* lib/careadlinkat.c, lib/careadlinkat.h, lib/count-leading-zeros.h:
* lib/count-trailing-zeros.h, lib/diffseq.h, lib/fcntl.in.h:
* lib/ftoastr.c, lib/get-permissions.c:
* lib/ieee754.in.h, lib/inttypes.in.h, lib/mktime.c, lib/open.c:
* lib/pathmax.h, lib/pipe2.c, lib/stddef.in.h, lib/stdint.in.h:
* lib/stdlib.in.h, lib/str-two-way.h, lib/string.in.h, lib/time.in.h:
* lib/timegm.c, lib/unistd.in.h, m4/canonicalize.m4:
* m4/extern-inline.m4, m4/fcntl_h.m4, m4/fdopendir.m4:
* m4/getgroups.m4, m4/getopt.m4, m4/gettimeofday.m4:
* m4/gnulib-common.m4, m4/largefile.m4:
* m4/lstat.m4, m4/memmem.m4, m4/mktime.m4, m4/nocrash.m4, m4/open.m4:
* m4/pselect.m4, m4/putenv.m4, m4/readlink.m4, m4/regex.m4:
* m4/symlink.m4, m4/unistd_h.m4, m4/utimens.m4, m4/utimes.m4:
Copy from Gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* m4/open-slash.m4: New file, copied from Gnulib.
This commit is contained in:
Paul Eggert 2019-09-22 23:50:59 -07:00
parent a33cda168e
commit 78669517dc
50 changed files with 281 additions and 185 deletions

View file

@ -2,7 +2,7 @@
# Attempt to guess a canonical system name.
# Copyright 1992-2019 Free Software Foundation, Inc.
timestamp='2019-07-24'
timestamp='2019-09-10'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@ -274,6 +274,9 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
*:Sortix:*:*)
echo "$UNAME_MACHINE"-unknown-sortix
exit ;;
*:Twizzler:*:*)
echo "$UNAME_MACHINE"-unknown-twizzler
exit ;;
*:Redox:*:*)
echo "$UNAME_MACHINE"-unknown-redox
exit ;;

View file

@ -1343,7 +1343,7 @@ case $os in
| hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
| sym* | kopensolaris* | plan9* \
| amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
| aos* | aros* | cloudabi* | sortix* \
| aos* | aros* | cloudabi* | sortix* | twizzler* \
| nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
| clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
| knetbsd* | mirbsd* | netbsd* \

View file

@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
\def\texinfoversion{2019-08-18.20}
\def\texinfoversion{2019-09-20.22}
%
% Copyright 1985, 1986, 1988, 1990-2019 Free Software Foundation, Inc.
%
@ -1052,7 +1052,7 @@
tex.sprint(
string.format(string.char(0x5c) .. string.char(0x25) .. '03o' ..
string.char(0x5c) .. string.char(0x25) .. '03o',
(c / 256), (c % 256)))
math.floor(c / 256), math.floor(c % 256)))
else
c = c - 0x10000
local c_hi = c / 1024 + 0xd800
@ -1062,8 +1062,8 @@
string.char(0x5c) .. string.char(0x25) .. '03o' ..
string.char(0x5c) .. string.char(0x25) .. '03o' ..
string.char(0x5c) .. string.char(0x25) .. '03o',
(c_hi / 256), (c_hi % 256),
(c_lo / 256), (c_lo % 256)))
math.floor(c_hi / 256), math.floor(c_hi % 256),
math.floor(c_lo / 256), math.floor(c_lo % 256)))
end
end
end
@ -1076,15 +1076,19 @@
function PDFescstr(str)
for c in string.bytes(str) do
if c <= 0x20 or c >= 0x80 or c == 0x28 or c == 0x29 or c == 0x5c then
tex.sprint(
tex.sprint(-2,
string.format(string.char(0x5c) .. string.char(0x25) .. '03o',
c))
else
tex.sprint(string.char(c))
tex.sprint(-2, string.char(c))
end
end
end
}
% The -2 in the arguments here gives all the input to TeX catcode 12
% (other) or 10 (space), preventing undefined control sequence errors. See
% https://lists.gnu.org/archive/html/bug-texinfo/2019-08/msg00031.html
%
\endgroup
\def\pdfescapestring#1{\directlua{PDFescstr('\luaescapestring{#1}')}}
\ifnum\luatexversion>84
@ -4843,6 +4847,7 @@
\definedummyletter\ %
\definedummyletter\{%
\definedummyletter\}%
\definedummyletter\&%
%
% Do the redefinitions.
\definedummies
@ -4913,6 +4918,7 @@
\definedummyword\TeX
%
% Assorted special characters.
\definedummyword\ampchar
\definedummyword\atchar
\definedummyword\arrow
\definedummyword\backslashchar

View file

@ -54,7 +54,7 @@
The PREADLINKAT function specifies how to read links. It operates
like POSIX readlinkat()
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>
but can assume that its first argument is the same as FD.
If successful, return the buffer address; otherwise return NULL and

View file

@ -40,7 +40,7 @@ struct allocator;
The PREADLINKAT function specifies how to read links. It operates
like POSIX readlinkat()
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>
but can assume that its first argument is the same as FD.
If successful, return the buffer address; otherwise return NULL and

View file

@ -71,7 +71,7 @@ COUNT_LEADING_ZEROS_INLINE int
count_leading_zeros_32 (unsigned int x)
{
/* <https://github.com/gibsjose/BitHacks>
<http://www.fit.vutbr.cz/~ibarina/pub/bithacks.pdf> */
<https://www.fit.vutbr.cz/~ibarina/pub/bithacks.pdf> */
static const char de_Bruijn_lookup[32] = {
31, 22, 30, 21, 18, 10, 29, 2, 20, 17, 15, 13, 9, 6, 28, 1,
23, 19, 11, 3, 16, 14, 7, 24, 12, 4, 8, 25, 5, 26, 27, 0

View file

@ -69,7 +69,7 @@ COUNT_TRAILING_ZEROS_INLINE int
count_trailing_zeros_32 (unsigned int x)
{
/* <https://github.com/gibsjose/BitHacks>
<http://www.fit.vutbr.cz/~ibarina/pub/bithacks.pdf> */
<https://www.fit.vutbr.cz/~ibarina/pub/bithacks.pdf> */
static const char de_Bruijn_lookup[32] = {
0, 1, 28, 2, 29, 14, 24, 3, 30, 22, 20, 15, 25, 17, 4, 8,
31, 27, 13, 23, 21, 19, 16, 7, 26, 12, 18, 6, 11, 5, 10, 9

View file

@ -28,13 +28,13 @@
The basic algorithm is described in:
"An O(ND) Difference Algorithm and its Variations", Eugene W. Myers,
Algorithmica Vol. 1, 1986, pp. 251-266,
<http://dx.doi.org/10.1007/BF01840446>.
<https://doi.org/10.1007/BF01840446>.
See especially section 4.2, which describes the variation used below.
The basic algorithm was independently discovered as described in:
"Algorithms for Approximate String Matching", Esko Ukkonen,
Information and Control Vol. 64, 1985, pp. 100-118,
<http://dx.doi.org/10.1016/S0019-9958(85)80046-2>.
<https://doi.org/10.1016/S0019-9958(85)80046-2>.
Unless the 'find_minimal' flag is set, this code uses the TOO_EXPENSIVE
heuristic, by Paul Eggert, to limit the cost to O(N**1.5 log N)

View file

@ -39,6 +39,12 @@
#endif
#@INCLUDE_NEXT@ @NEXT_FCNTL_H@
/* Native Windows platforms declare open(), creat() in <io.h>. */
#if (@GNULIB_CREAT@ || @GNULIB_OPEN@ || defined GNULIB_POSIXCHECK) \
&& (defined _WIN32 && ! defined __CYGWIN__)
# include <io.h>
#endif
#else
/* Normal invocation convention. */
@ -59,6 +65,12 @@
/* The include_next requires a split double-inclusion guard. */
#@INCLUDE_NEXT@ @NEXT_FCNTL_H@
/* Native Windows platforms declare open(), creat() in <io.h>. */
#if (@GNULIB_CREAT@ || @GNULIB_OPEN@ || defined GNULIB_POSIXCHECK) \
&& (defined _WIN32 && ! defined __CYGWIN__)
# include <io.h>
#endif
#ifndef _@GUARD_PREFIX@_FCNTL_H
#define _@GUARD_PREFIX@_FCNTL_H
@ -66,12 +78,6 @@
# include <unistd.h>
#endif
/* Native Windows platforms declare open(), creat() in <io.h>. */
#if (@GNULIB_OPEN@ || defined GNULIB_POSIXCHECK) \
&& (defined _WIN32 && ! defined __CYGWIN__)
# include <io.h>
#endif
/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
@ -82,6 +88,26 @@
/* Declare overridden functions. */
#if @GNULIB_CREAT@
# if @REPLACE_CREAT@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef creat
# define creat rpl_creat
# endif
_GL_FUNCDECL_RPL (creat, int, (const char *filename, mode_t mode)
_GL_ARG_NONNULL ((1)));
_GL_CXXALIAS_RPL (creat, int, (const char *filename, mode_t mode));
# else
_GL_CXXALIAS_SYS (creat, int, (const char *filename, mode_t mode));
# endif
_GL_CXXALIASWARN (creat);
#elif defined GNULIB_POSIXCHECK
# undef creat
/* Assume creat is always declared. */
_GL_WARN_ON_USE (creat, "creat is not always POSIX compliant - "
"use gnulib module creat for portability");
#endif
#if @GNULIB_FCNTL@
# if @REPLACE_FCNTL@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)

View file

@ -105,7 +105,7 @@ FTOASTR (char *buf, size_t bufsize, int flags, int width, FLOAT x)
Andrysco M, Jhala R, Lerner S. Printing floating-point numbers:
a faster, always correct method. ACM SIGPLAN notices - POPL '16.
2016;51(1):555-67 <http://dx.doi.org/10.1145/2914770.2837654>; draft at
2016;51(1):555-67 <https://doi.org/10.1145/2914770.2837654>; draft at
<https://cseweb.ucsd.edu/~lerner/papers/fp-printing-popl16.pdf>. */
PROMOTED_FLOAT promoted_x = x;

View file

@ -108,7 +108,7 @@ get_permissions (const char *name, int desc, mode_t mode,
When fetching the source ACL, we simply fetch both ACL types.
When setting the destination ACL, we try either ACL types, assuming
that the kernel will translate the ACL from one form to the other.
(See in <http://docs.sun.com/app/docs/doc/819-2241/6n4huc7ia?l=en&a=view>
(See in <https://docs.oracle.com/cd/E86824_01/html/E54765/acl-2.html>
the description of ENOTSUP.) */
for (;;)
{

View file

@ -249,6 +249,7 @@ GL_GENERATE_STDINT_H = @GL_GENERATE_STDINT_H@
GMALLOC_OBJ = @GMALLOC_OBJ@
GMP_LIB = @GMP_LIB@
GMP_OBJ = @GMP_OBJ@
GNULIB_ACCESS = @GNULIB_ACCESS@
GNULIB_ALPHASORT = @GNULIB_ALPHASORT@
GNULIB_ATOLL = @GNULIB_ATOLL@
GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
@ -258,6 +259,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CREAT = @GNULIB_CREAT@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@ -838,11 +840,13 @@ PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@
PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@
RALLOC_OBJ = @RALLOC_OBJ@
RANLIB = @RANLIB@
REPLACE_ACCESS = @REPLACE_ACCESS@
REPLACE_CALLOC = @REPLACE_CALLOC@
REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@
REPLACE_CHOWN = @REPLACE_CHOWN@
REPLACE_CLOSE = @REPLACE_CLOSE@
REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@
REPLACE_CREAT = @REPLACE_CREAT@
REPLACE_CTIME = @REPLACE_CTIME@
REPLACE_DIRFD = @REPLACE_DIRFD@
REPLACE_DPRINTF = @REPLACE_DPRINTF@
@ -1609,12 +1613,14 @@ fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
-e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
-e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \
-e 's/@''GNULIB_CREAT''@/$(GNULIB_CREAT)/g' \
-e 's/@''GNULIB_FCNTL''@/$(GNULIB_FCNTL)/g' \
-e 's/@''GNULIB_NONBLOCKING''@/$(GNULIB_NONBLOCKING)/g' \
-e 's/@''GNULIB_OPEN''@/$(GNULIB_OPEN)/g' \
-e 's/@''GNULIB_OPENAT''@/$(GNULIB_OPENAT)/g' \
-e 's|@''HAVE_FCNTL''@|$(HAVE_FCNTL)|g' \
-e 's|@''HAVE_OPENAT''@|$(HAVE_OPENAT)|g' \
-e 's|@''REPLACE_CREAT''@|$(REPLACE_CREAT)|g' \
-e 's|@''REPLACE_FCNTL''@|$(REPLACE_FCNTL)|g' \
-e 's|@''REPLACE_OPEN''@|$(REPLACE_OPEN)|g' \
-e 's|@''REPLACE_OPENAT''@|$(REPLACE_OPENAT)|g' \
@ -3176,6 +3182,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
-e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \
-e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \
-e 's/@''GNULIB_ACCESS''@/$(GNULIB_ACCESS)/g' \
-e 's/@''GNULIB_CHDIR''@/$(GNULIB_CHDIR)/g' \
-e 's/@''GNULIB_CHOWN''@/$(GNULIB_CHOWN)/g' \
-e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \
@ -3275,7 +3282,8 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \
-e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \
| \
sed -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \
sed -e 's|@''REPLACE_ACCESS''@|$(REPLACE_ACCESS)|g' \
-e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \
-e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \
-e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \
-e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \

View file

@ -13,7 +13,7 @@
You should have received a copy of the GNU General Public
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
<https://www.gnu.org/licenses/>. */
#ifndef _IEEE754_H

View file

@ -17,7 +17,7 @@
/*
* ISO C 99 <inttypes.h> for platforms that lack it.
* <http://www.opengroup.org/susv3xbd/inttypes.h.html>
* <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/inttypes.h.html>
*/
#if __GNUC__ >= 3

View file

@ -78,7 +78,7 @@ my_tzset (void)
- Time zone names based on geography, without slashes, e.g.
"Singapore".
- Time zone names that contain explicit DST rules. Syntax: see
<http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_03>
<https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_03>
The Microsoft CRT understands only the first kind. It produces incorrect
results if the value of TZ is of the other kinds.
But in a Cygwin environment, /etc/profile.d/tzset.sh sets TZ to a value

View file

@ -94,20 +94,13 @@ open (const char *filename, int flags, ...)
#if OPEN_TRAILING_SLASH_BUG
/* If the filename ends in a slash and one of O_CREAT, O_WRONLY, O_RDWR
is specified, then fail.
Rationale: POSIX <http://www.opengroup.org/susv3/basedefs/xbd_chap04.html>
says that
"A pathname that contains at least one non-slash character and that
ends with one or more trailing slashes shall be resolved as if a
single dot character ( '.' ) were appended to the pathname."
and
"The special filename dot shall refer to the directory specified by
its predecessor."
Rationale: POSIX <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html>
If the named file already exists as a directory, then
- if O_CREAT is specified, open() must fail because of the semantics
of O_CREAT,
- if O_WRONLY or O_RDWR is specified, open() must fail because POSIX
<http://www.opengroup.org/susv3/functions/open.html> says that it
fails with errno = EISDIR in this case.
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/open.html>
says that it fails with errno = EISDIR in this case.
If the named file does not exist or does not name a directory, then
- if O_CREAT is specified, open() must fail since open() cannot create
directories,
@ -171,14 +164,6 @@ open (const char *filename, int flags, ...)
#if OPEN_TRAILING_SLASH_BUG
/* If the filename ends in a slash and fd does not refer to a directory,
then fail.
Rationale: POSIX <http://www.opengroup.org/susv3/basedefs/xbd_chap04.html>
says that
"A pathname that contains at least one non-slash character and that
ends with one or more trailing slashes shall be resolved as if a
single dot character ( '.' ) were appended to the pathname."
and
"The special filename dot shall refer to the directory specified by
its predecessor."
If the named file without the slash is not a directory, open() must fail
with ENOTDIR. */
if (fd >= 0)

View file

@ -20,7 +20,7 @@
/* POSIX:2008 defines PATH_MAX to be the maximum number of bytes in a filename,
including the terminating NUL byte.
<http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html>
<https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html>
PATH_MAX is not defined on systems which have no limit on filename length,
such as GNU/Hurd.

View file

@ -107,7 +107,7 @@ pipe2 (int fd[2], int flags)
if (pipe (fd) < 0)
return -1;
/* POSIX <http://www.opengroup.org/onlinepubs/9699919799/functions/pipe.html>
/* POSIX <https://pubs.opengroup.org/onlinepubs/9699919799/functions/pipe.html>
says that initially, the O_NONBLOCK and FD_CLOEXEC flags are cleared on
both fd[0] and fd[1]. */

View file

@ -19,7 +19,7 @@
/*
* POSIX 2008 <stddef.h> for platforms that have issues.
* <http://www.opengroup.org/susv3xbd/stddef.h.html>
* <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stddef.h.html>
*/
#if __GNUC__ >= 3

View file

@ -17,7 +17,7 @@
/*
* ISO C 99 <stdint.h> for platforms that lack it.
* <http://www.opengroup.org/susv3xbd/stdint.h.html>
* <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stdint.h.html>
*/
#ifndef _@GUARD_PREFIX@_STDINT_H

View file

@ -238,8 +238,8 @@ _GL_WARN_ON_USE (getloadavg, "getloadavg is not portable - "
element (or NULL if it doesn't contain an "=" sign),
- It returns the index of the "token" in the given array of tokens.
Otherwise it returns -1, and *OPTIONP and *VALUEP are undefined.
For more details see the POSIX:2001 specification.
http://www.opengroup.org/susv3xsh/getsubopt.html */
For more details see the POSIX specification.
https://pubs.opengroup.org/onlinepubs/9699919799/functions/getsubopt.html */
# if !@HAVE_GETSUBOPT@
_GL_FUNCDECL_SYS (getsubopt, int,
(char **optionp, char *const *tokens, char **valuep)

View file

@ -49,7 +49,7 @@
character shift table similar to the Boyer-Moore algorithm to
achieve improved (potentially sub-linear) performance.
See http://www-igm.univ-mlv.fr/~lecroq/string/node26.html#SECTION00260,
See https://www-igm.univ-mlv.fr/~lecroq/string/node26.html#SECTION00260,
https://en.wikipedia.org/wiki/Boyer-Moore_string_search_algorithm,
https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.34.6641&rep=rep1&type=pdf
*/

View file

@ -693,7 +693,7 @@ _GL_WARN_ON_USE (strcasestr, "strcasestr does work correctly on character "
This is a variant of strtok() that is multithread-safe.
For the POSIX documentation for this function, see:
http://www.opengroup.org/susv3xsh/strtok.html
https://pubs.opengroup.org/onlinepubs/9699919799/functions/strtok.html
Caveat: It modifies the original string.
Caveat: These functions cannot be used on constant strings.

View file

@ -84,8 +84,8 @@ struct timespec
# endif
# if !GNULIB_defined_struct_time_t_must_be_integral
/* Per http://austingroupbugs.net/view.php?id=327, POSIX requires
time_t to be an integer type, even though C99 permits floating
/* https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html
requires time_t to be an integer type, even though C99 permits floating
point. We don't know of any implementation that uses floating
point, and it is much easier to write code that doesn't have to
worry about that corner case, so we force the issue. */
@ -97,7 +97,7 @@ struct __time_t_must_be_integral {
/* Sleep for at least RQTP seconds unless interrupted, If interrupted,
return -1 and store the remaining time into RMTP. See
<http://www.opengroup.org/susv3xsh/nanosleep.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/nanosleep.html>. */
# if @GNULIB_NANOSLEEP@
# if @REPLACE_NANOSLEEP@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@ -153,8 +153,8 @@ _GL_CXXALIASWARN (mktime);
# endif
/* Convert TIMER to RESULT, assuming local time and UTC respectively. See
<http://www.opengroup.org/susv3xsh/localtime_r.html> and
<http://www.opengroup.org/susv3xsh/gmtime_r.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/localtime_r.html> and
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/gmtime_r.html>. */
# if @GNULIB_TIME_R@
# if @REPLACE_LOCALTIME_R@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@ -203,8 +203,8 @@ _GL_CXXALIASWARN (gmtime_r);
# endif
/* Convert TIMER to RESULT, assuming local time and UTC respectively. See
<http://www.opengroup.org/susv3xsh/localtime.html> and
<http://www.opengroup.org/susv3xsh/gmtime.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/localtime.html> and
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/gmtime.html>. */
# if @GNULIB_LOCALTIME@ || @REPLACE_LOCALTIME@
# if @REPLACE_LOCALTIME@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@ -237,7 +237,7 @@ _GL_CXXALIASWARN (gmtime);
/* Parse BUF as a timestamp, assuming FORMAT specifies its layout, and store
the resulting broken-down time into TM. See
<http://www.opengroup.org/susv3xsh/strptime.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/strptime.html>. */
# if @GNULIB_STRPTIME@
# if ! @HAVE_STRPTIME@
_GL_FUNCDECL_SYS (strptime, char *, (char const *restrict __buf,
@ -252,7 +252,7 @@ _GL_CXXALIASWARN (strptime);
# endif
/* Convert *TP to a date and time string. See
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/ctime.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/ctime.html>. */
# if @GNULIB_CTIME@
# if @REPLACE_CTIME@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@ -268,7 +268,7 @@ _GL_CXXALIASWARN (ctime);
# endif
/* Convert *TP to a date and time string. See
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/strftime.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/strftime.html>. */
# if @GNULIB_STRFTIME@
# if @REPLACE_STRFTIME@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)

View file

@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
<https://www.gnu.org/licenses/>. */
#ifndef _LIBC
# include <libc-config.h>

View file

@ -253,10 +253,28 @@ _GL_INLINE_HEADER_BEGIN
/* Declare overridden functions. */
#if defined GNULIB_POSIXCHECK
#if @GNULIB_ACCESS@
# if @REPLACE_ACCESS@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef access
# define access rpl_access
# endif
_GL_FUNCDECL_RPL (access, int, (const char *file, int mode)
_GL_ARG_NONNULL ((1)));
_GL_CXXALIAS_RPL (access, int, (const char *file, int mode));
# else
_GL_CXXALIAS_SYS (access, int, (const char *file, int mode));
# endif
_GL_CXXALIASWARN (access);
#elif defined GNULIB_POSIXCHECK
# undef access
# if HAVE_RAW_DECL_ACCESS
/* The access() function is a security risk. */
_GL_WARN_ON_USE (access, "the access function is a security risk - "
_GL_WARN_ON_USE (access, "access does not always support X_OK - "
"use gnulib module access for portability; "
"also, this function is a security risk - "
"use the gnulib module faccessat instead");
# endif
#endif
@ -277,7 +295,7 @@ _GL_WARN_ON_USE (chown, "chdir is not always in <unistd.h> - "
to GID (if GID is not -1). Follow symbolic links.
Return 0 if successful, otherwise -1 and errno set.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/chown.html. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/chown.html. */
# if @REPLACE_CHOWN@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef chown
@ -371,7 +389,7 @@ _GL_WARN_ON_USE (dup, "dup is unportable - "
NEWFD = OLDFD, otherwise close NEWFD first if it is open.
Return newfd if successful, otherwise -1 and errno set.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/dup2.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/dup2.html>. */
# if @REPLACE_DUP2@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# define dup2 rpl_dup2
@ -526,7 +544,7 @@ _GL_WARN_ON_USE (faccessat, "faccessat is not portable - "
the given file descriptor is open.
Return 0 if successful, otherwise -1 and errno set.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/fchdir.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/fchdir.html>. */
# if ! @HAVE_FCHDIR@
_GL_FUNCDECL_SYS (fchdir, int, (int /*fd*/));
@ -587,7 +605,7 @@ _GL_WARN_ON_USE (fchownat, "fchownat is not portable - "
/* Synchronize changes to a file.
Return 0 if successful, otherwise -1 and errno set.
See POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/fdatasync.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/fdatasync.html>. */
# if !@HAVE_FDATASYNC@ || !@HAVE_DECL_FDATASYNC@
_GL_FUNCDECL_SYS (fdatasync, int, (int fd));
# endif
@ -606,7 +624,7 @@ _GL_WARN_ON_USE (fdatasync, "fdatasync is unportable - "
/* Synchronize changes, including metadata, to a file.
Return 0 if successful, otherwise -1 and errno set.
See POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/fsync.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/fsync.html>. */
# if !@HAVE_FSYNC@
_GL_FUNCDECL_SYS (fsync, int, (int fd));
# endif
@ -625,7 +643,7 @@ _GL_WARN_ON_USE (fsync, "fsync is unportable - "
/* Change the size of the file to which FD is opened to become equal to LENGTH.
Return 0 if successful, otherwise -1 and errno set.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/ftruncate.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/ftruncate.html>. */
# if @REPLACE_FTRUNCATE@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef ftruncate
@ -655,7 +673,7 @@ _GL_WARN_ON_USE (ftruncate, "ftruncate is unportable - "
Return BUF if successful, or NULL if the directory couldn't be determined
or SIZE was too small.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/getcwd.html>.
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/getcwd.html>.
Additionally, the gnulib module 'getcwd' guarantees the following GNU
extension: If BUF is NULL, an array is allocated with 'malloc'; the array
is SIZE bytes long, unless SIZE == 0, in which case it is as big as
@ -815,7 +833,7 @@ _GL_WARN_ON_USE (gethostname, "gethostname is unportable - "
/* Returns the user's login name, or NULL if it cannot be found. Upon error,
returns NULL with errno set.
See <http://www.opengroup.org/susv3xsh/getlogin.html>.
See <https://pubs.opengroup.org/onlinepubs/9699919799/functions/getlogin.html>.
Most programs don't need to use this function, because the information is
available through environment variables:
@ -844,7 +862,7 @@ _GL_WARN_ON_USE (getlogin, "getlogin is unportable - "
the case that the login name cannot be found but no specific error is
provided (this case is hopefully rare but is left open by the POSIX spec).
See <http://www.opengroup.org/susv3xsh/getlogin.html>.
See <https://pubs.opengroup.org/onlinepubs/9699919799/functions/getlogin.html>.
Most programs don't need to use this function, because the information is
available through environment variables:
@ -1079,7 +1097,7 @@ _GL_WARN_ON_USE (isatty, "isatty has portability problems on native Windows - "
to GID (if GID is not -1). Do not follow symbolic links.
Return 0 if successful, otherwise -1 and errno set.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/lchown.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/lchown.html>. */
# if @REPLACE_LCHOWN@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef lchown
@ -1109,7 +1127,7 @@ _GL_WARN_ON_USE (lchown, "lchown is unportable to pre-POSIX.1-2001 systems - "
/* Create a new hard link for an existing file.
Return 0 if successful, otherwise -1 and errno set.
See POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/link.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/link.html>. */
# if @REPLACE_LINK@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# define link rpl_link
@ -1175,7 +1193,7 @@ _GL_WARN_ON_USE (linkat, "linkat is unportable - "
/* Set the offset of FD relative to SEEK_SET, SEEK_CUR, or SEEK_END.
Return the new offset if successful, otherwise -1 and errno set.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/lseek.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/lseek.html>. */
# if @REPLACE_LSEEK@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# define lseek rpl_lseek
@ -1247,7 +1265,7 @@ _GL_WARN_ON_USE (pipe2, "pipe2 is unportable - "
Return the number of bytes placed into BUF if successful, otherwise
set errno and return -1. 0 indicates EOF.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/pread.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/pread.html>. */
# if @REPLACE_PREAD@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef pread
@ -1282,7 +1300,7 @@ _GL_WARN_ON_USE (pread, "pread is unportable - "
Return the number of bytes written if successful, otherwise
set errno and return -1. 0 indicates nothing written. See the
POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/pwrite.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/pwrite.html>. */
# if @REPLACE_PWRITE@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef pwrite
@ -1315,7 +1333,7 @@ _GL_WARN_ON_USE (pwrite, "pwrite is unportable - "
#if @GNULIB_READ@
/* Read up to COUNT bytes from file descriptor FD into the buffer starting
at BUF. See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/read.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/read.html>. */
# if @REPLACE_READ@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef read
@ -1339,7 +1357,7 @@ _GL_CXXALIASWARN (read);
bytes of it into BUF. Return the number of bytes placed into BUF if
successful, otherwise -1 and errno set.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>. */
# if @REPLACE_READLINK@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# define readlink rpl_readlink
@ -1449,7 +1467,7 @@ _GL_WARN_ON_USE (sethostname, "sethostname is unportable - "
/* Pause the execution of the current thread for N seconds.
Returns the number of seconds left to sleep.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/sleep.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/sleep.html>. */
# if @REPLACE_SLEEP@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef sleep
@ -1533,7 +1551,7 @@ _GL_WARN_ON_USE (symlinkat, "symlinkat is not portable - "
/* Change the size of the file designated by FILENAME to become equal to LENGTH.
Return 0 if successful, otherwise -1 and errno set.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/truncate.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/truncate.html>. */
# if @REPLACE_TRUNCATE@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef truncate
@ -1640,7 +1658,7 @@ _GL_WARN_ON_USE (unlinkat, "unlinkat is not portable - "
/* Pause the execution of the current thread for N microseconds.
Returns 0 on completion, or -1 on range error.
See the POSIX:2001 specification
<http://www.opengroup.org/susv3xsh/usleep.html>. */
<https://pubs.opengroup.org/onlinepubs/009695399/functions/usleep.html>. */
# if @REPLACE_USLEEP@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef usleep
@ -1667,7 +1685,7 @@ _GL_WARN_ON_USE (usleep, "usleep is unportable - "
#if @GNULIB_WRITE@
/* Write up to COUNT bytes starting at BUF to file descriptor FD.
See the POSIX:2008 specification
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/write.html>. */
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/write.html>. */
# if @REPLACE_WRITE@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef write

View file

@ -1,4 +1,4 @@
# canonicalize.m4 serial 30
# canonicalize.m4 serial 31
dnl Copyright (C) 2003-2007, 2009-2019 Free Software Foundation, Inc.
@ -117,8 +117,8 @@ AC_DEFUN([gl_FUNC_REALPATH_WORKS],
*-musl*) gl_cv_func_realpath_works="guessing yes" ;;
# Guess no on native Windows.
mingw*) gl_cv_func_realpath_works="guessing no" ;;
# If we don't know, assume the worst.
*) gl_cv_func_realpath_works="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_realpath_works="$gl_cross_guess_normal" ;;
esac
])
rm -rf conftest.a conftest.d

View file

@ -32,7 +32,7 @@ AC_DEFUN([gl_EXTERN_INLINE],
https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
DragonFly; see
http://muscles.dragonflybsd.org/bulk/bleeding-edge-potential/latest-per-pkg/ah-tty-0.3.12.log
http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log
FreeBSD; see:
https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html

View file

@ -1,4 +1,4 @@
# serial 15
# serial 16
# Configure fcntl.h.
dnl Copyright (C) 2006-2007, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
@ -37,6 +37,7 @@ AC_DEFUN([gl_FCNTL_MODULE_INDICATOR],
AC_DEFUN([gl_FCNTL_H_DEFAULTS],
[
GNULIB_CREAT=0; AC_SUBST([GNULIB_CREAT])
GNULIB_FCNTL=0; AC_SUBST([GNULIB_FCNTL])
GNULIB_NONBLOCKING=0; AC_SUBST([GNULIB_NONBLOCKING])
GNULIB_OPEN=0; AC_SUBST([GNULIB_OPEN])
@ -44,6 +45,7 @@ AC_DEFUN([gl_FCNTL_H_DEFAULTS],
dnl Assume proper GNU behavior unless another module says otherwise.
HAVE_FCNTL=1; AC_SUBST([HAVE_FCNTL])
HAVE_OPENAT=1; AC_SUBST([HAVE_OPENAT])
REPLACE_CREAT=0; AC_SUBST([REPLACE_CREAT])
REPLACE_FCNTL=0; AC_SUBST([REPLACE_FCNTL])
REPLACE_OPEN=0; AC_SUBST([REPLACE_OPEN])
REPLACE_OPENAT=0; AC_SUBST([REPLACE_OPENAT])

View file

@ -1,4 +1,4 @@
# serial 11
# serial 12
# See if we need to provide fdopendir.
dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
@ -49,8 +49,8 @@ DIR *fdopendir (int);
*-gnu*) gl_cv_func_fdopendir_works="guessing yes" ;;
# Guess yes on musl systems.
*-musl*) gl_cv_func_fdopendir_works="guessing yes" ;;
# If we don't know, assume the worst.
*) gl_cv_func_fdopendir_works="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_fdopendir_works="$gl_cross_guess_normal" ;;
esac
])])
case "$gl_cv_func_fdopendir_works" in

View file

@ -1,4 +1,4 @@
# serial 22
# serial 23
dnl From Jim Meyering.
dnl A wrapper around AC_FUNC_GETGROUPS.
@ -9,8 +9,6 @@ dnl A wrapper around AC_FUNC_GETGROUPS.
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
m4_version_prereq([2.70], [] ,[
# This is taken from the following Autoconf patch:
# https://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=7fbb553727ed7e0e689a17594b58559ecf3ea6e9
AC_DEFUN([AC_FUNC_GETGROUPS],
@ -44,8 +42,8 @@ AC_DEFUN([AC_FUNC_GETGROUPS],
*-gnu* | gnu*) ac_cv_func_getgroups_works="guessing yes" ;;
# Guess yes on musl systems.
*-musl*) ac_cv_func_getgroups_works="guessing yes" ;;
# If we don't know, assume the worst.
*) ac_cv_func_getgroups_works="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) ac_cv_func_getgroups_works="$gl_cross_guess_normal" ;;
esac
])
])
@ -61,8 +59,6 @@ AC_DEFUN([AC_FUNC_GETGROUPS],
LIBS=$ac_save_LIBS
])# AC_FUNC_GETGROUPS
])
AC_DEFUN([gl_FUNC_GETGROUPS],
[
AC_REQUIRE([AC_TYPE_GETGROUPS])
@ -99,8 +95,8 @@ AC_DEFUN([gl_FUNC_GETGROUPS],
*-gnu* | gnu*) gl_cv_func_getgroups_works="guessing yes" ;;
# Guess yes on musl systems.
*-musl*) gl_cv_func_getgroups_works="guessing yes" ;;
# If we don't know, assume the worst.
*) gl_cv_func_getgroups_works="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_getgroups_works="$gl_cross_guess_normal" ;;
esac
])])
case "$gl_cv_func_getgroups_works" in

View file

@ -1,4 +1,4 @@
# getopt.m4 serial 46
# getopt.m4 serial 47
dnl Copyright (C) 2002-2006, 2008-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@ -302,8 +302,10 @@ dnl is ambiguous with environment values that contain newlines.
]])],
[gl_cv_func_getopt_gnu=yes],
[gl_cv_func_getopt_gnu=no],
[dnl Cross compiling. Assume the worst, even on glibc platforms.
gl_cv_func_getopt_gnu="guessing no"
[dnl Cross compiling.
dnl Assume the worst, even on glibc platforms.
dnl But obey --enable-cross-guesses.
gl_cv_func_getopt_gnu="$gl_cross_guess_normal"
])
case $gl_had_POSIXLY_CORRECT in
exported) ;;

View file

@ -1,4 +1,4 @@
# serial 26
# serial 27
# Copyright (C) 2001-2003, 2005, 2007, 2009-2019 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
@ -109,8 +109,8 @@ AC_DEFUN([gl_FUNC_GETTIMEOFDAY_CLOBBER],
*-musl*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
# Guess no on native Windows.
mingw*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
# If we don't know, assume the worst.
*) gl_cv_func_gettimeofday_clobber="guessing yes" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_gettimeofday_clobber="$gl_cross_guess_inverted" ;;
esac
])])

View file

@ -1,4 +1,4 @@
# gnulib-common.m4 serial 44
# gnulib-common.m4 serial 45
dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@ -94,7 +94,7 @@ AC_DEFUN([gl_COMMON_BODY], [
invoked from such signal handlers. Such functions have some restrictions:
* All functions that it calls should be marked _GL_ASYNC_SAFE as well,
or should be listed as async-signal-safe in POSIX
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
section 2.4.3. Note that malloc(), sprintf(), and fwrite(), in
particular, are NOT async-signal-safe.
* All memory locations (variables and struct fields) that these functions
@ -115,6 +115,33 @@ AC_DEFUN([gl_COMMON_BODY], [
errno. */
#define _GL_ASYNC_SAFE
])
dnl Hint which direction to take regarding cross-compilation guesses:
dnl When a user installs a program on a platform they are not intimately
dnl familiar with, --enable-cross-guesses=conservative is the appropriate
dnl choice. It implements the "If we don't know, assume the worst" principle.
dnl However, when an operating system developer (on a platform which is not
dnl yet known to gnulib) builds packages for their platform, they want to
dnl expose, not hide, possible platform bugs; in this case,
dnl --enable-cross-guesses=risky is the appropriate choice.
dnl Sets the variables
dnl gl_cross_guess_normal (to be used when 'yes' is good and 'no' is bad),
dnl gl_cross_guess_inverted (to be used when 'no' is good and 'yes' is bad).
AC_ARG_ENABLE([cross-guesses],
[AS_HELP_STRING([--enable-cross-guesses={conservative|risky}],
[specify policy for cross-compilation guesses])],
[if test "x$enableval" != xconservative && test "x$enableval" != xrisky; then
AC_MSG_WARN([invalid argument supplied to --enable-cross-guesses])
enableval=conservative
fi
gl_cross_guesses="$enableval"],
[gl_cross_guesses=conservative])
if test $gl_cross_guesses = risky; then
gl_cross_guess_normal="guessing yes"
gl_cross_guess_inverted="guessing no"
else
gl_cross_guess_normal="guessing no"
gl_cross_guess_inverted="guessing yes"
fi
dnl Preparation for running test programs:
dnl Tell glibc to write diagnostics from -D_FORTIFY_SOURCE=2 to stderr, not
dnl to /dev/tty, so they can be redirected to log files. Such diagnostics

View file

@ -1104,6 +1104,7 @@ AC_DEFUN([gl_FILE_LIST], [
m4/nstrftime.m4
m4/off_t.m4
m4/open-cloexec.m4
m4/open-slash.m4
m4/open.m4
m4/pathmax.m4
m4/pipe2.m4

View file

@ -56,7 +56,7 @@ rm -rf conftest*[]dnl
# By default, many hosts won't let programs access large files;
# one must use special compiler options to get large-file access to work.
# For more details about this brain damage please see:
# http://www.unix-systems.org/version2/whatsnew/lfs20mar.html
# http://www.unix.org/version2/whatsnew/lfs20mar.html
AC_DEFUN([AC_SYS_LARGEFILE],
[AC_ARG_ENABLE(largefile,
[ --disable-largefile omit support for large files])

View file

@ -1,4 +1,4 @@
# serial 32
# serial 33
# Copyright (C) 1997-2001, 2003-2019 Free Software Foundation, Inc.
#
@ -63,8 +63,8 @@ AC_DEFUN([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK],
# Guess no on native Windows.
gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
*)
# If we don't know, assume the worst.
gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
gl_cv_func_lstat_dereferences_slashed_symlink="$gl_cross_guess_normal" ;;
esac
])
rm -f conftest.sym conftest.file

View file

@ -1,4 +1,4 @@
# memmem.m4 serial 25
# memmem.m4 serial 26
dnl Copyright (C) 2002-2004, 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@ -68,7 +68,7 @@ AC_DEFUN([gl_FUNC_MEMMEM_SIMPLE],
#endif
],
[gl_cv_func_memmem_works_always="guessing yes"],
[gl_cv_func_memmem_works_always="guessing no"])
[gl_cv_func_memmem_works_always="$gl_cross_guess_normal"])
])
])
case "$gl_cv_func_memmem_works_always" in
@ -138,7 +138,7 @@ static void quit (int sig) { _exit (sig + 128); }
#endif
],
[gl_cv_func_memmem_works_fast="guessing yes"],
[gl_cv_func_memmem_works_fast="guessing no"])
[gl_cv_func_memmem_works_fast="$gl_cross_guess_normal"])
])
])
case "$gl_cv_func_memmem_works_fast" in

View file

@ -1,4 +1,4 @@
# serial 30
# serial 31
dnl Copyright (C) 2002-2003, 2005-2007, 2009-2019 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
@ -247,7 +247,7 @@ main ()
[case "$host_os" in
# Guess no on native Windows.
mingw*) gl_cv_func_working_mktime="guessing no" ;;
*) gl_cv_func_working_mktime="guessing no" ;;
*) gl_cv_func_working_mktime="$gl_cross_guess_normal" ;;
esac
])
])

View file

@ -53,7 +53,7 @@ nocrash_init (void)
/* Allocate a port on which the thread shall listen for exceptions. */
if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port)
== KERN_SUCCESS) {
/* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */
/* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */
if (mach_port_insert_right (self, our_exception_port, our_exception_port,
MACH_MSG_TYPE_MAKE_SEND)
== KERN_SUCCESS) {
@ -72,7 +72,7 @@ nocrash_init (void)
for a particular thread. This has the effect that when our exception
port gets the message, the thread specific exception port has already
been asked, and we don't need to bother about it.
See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */
See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */
task_set_exception_ports (self, mask, our_exception_port,
EXCEPTION_DEFAULT, MACHINE_THREAD_STATE);
}

59
m4/open-slash.m4 Normal file
View file

@ -0,0 +1,59 @@
# open-slash.m4 serial 1
dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl Tests whether open() and creat() recognize a trailing slash.
dnl Sets gl_cv_func_open_slash.
AC_DEFUN([gl_OPEN_TRAILING_SLASH_BUG],
[
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
dnl open("foo/") should not create a file when the file name has a
dnl trailing slash. FreeBSD only has the problem on symlinks.
AC_CHECK_FUNCS_ONCE([lstat])
AC_CACHE_CHECK([whether open recognizes a trailing slash],
[gl_cv_func_open_slash],
[# Assume that if we have lstat, we can also check symlinks.
if test $ac_cv_func_lstat = yes; then
touch conftest.tmp
ln -s conftest.tmp conftest.lnk
fi
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <fcntl.h>
#if HAVE_UNISTD_H
# include <unistd.h>
#endif
int main ()
{
int result = 0;
#if HAVE_LSTAT
if (open ("conftest.lnk/", O_RDONLY) != -1)
result |= 1;
#endif
if (open ("conftest.sl/", O_CREAT, 0600) >= 0)
result |= 2;
return result;
}]])],
[gl_cv_func_open_slash=yes],
[gl_cv_func_open_slash=no],
[
changequote(,)dnl
case "$host_os" in
freebsd* | aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*)
gl_cv_func_open_slash="guessing no" ;;
*)
gl_cv_func_open_slash="guessing yes" ;;
esac
changequote([,])dnl
])
rm -f conftest.sl conftest.tmp conftest.lnk
])
case "$gl_cv_func_open_slash" in
*no)
AC_DEFINE([OPEN_TRAILING_SLASH_BUG], [1],
[Define to 1 if open() fails to recognize a trailing slash.])
;;
esac
])

View file

@ -19,48 +19,9 @@ AC_DEFUN([gl_FUNC_OPEN],
if test "$gl_cv_macro_O_CLOEXEC" != yes; then
REPLACE_OPEN=1
fi
AC_CACHE_CHECK([whether open recognizes a trailing slash],
[gl_cv_func_open_slash],
[# Assume that if we have lstat, we can also check symlinks.
if test $ac_cv_func_lstat = yes; then
touch conftest.tmp
ln -s conftest.tmp conftest.lnk
fi
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <fcntl.h>
#if HAVE_UNISTD_H
# include <unistd.h>
#endif
int main ()
{
int result = 0;
#if HAVE_LSTAT
if (open ("conftest.lnk/", O_RDONLY) != -1)
result |= 1;
#endif
if (open ("conftest.sl/", O_CREAT, 0600) >= 0)
result |= 2;
return result;
}]])],
[gl_cv_func_open_slash=yes],
[gl_cv_func_open_slash=no],
[
changequote(,)dnl
case "$host_os" in
freebsd* | aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*)
gl_cv_func_open_slash="guessing no" ;;
*)
gl_cv_func_open_slash="guessing yes" ;;
esac
changequote([,])dnl
])
rm -f conftest.sl conftest.tmp conftest.lnk
])
gl_OPEN_TRAILING_SLASH_BUG
case "$gl_cv_func_open_slash" in
*no)
AC_DEFINE([OPEN_TRAILING_SLASH_BUG], [1],
[Define to 1 if open() fails to recognize a trailing slash.])
REPLACE_OPEN=1
;;
esac

View file

@ -1,4 +1,4 @@
# pselect.m4 serial 7
# pselect.m4 serial 8
dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@ -55,8 +55,8 @@ AC_DEFUN([gl_FUNC_PSELECT],
linux-* | linux) gl_cv_func_pselect_detects_ebadf="guessing yes" ;;
# Guess yes on glibc systems.
*-gnu* | gnu*) gl_cv_func_pselect_detects_ebadf="guessing yes" ;;
# If we don't know, assume the worst.
*) gl_cv_func_pselect_detects_ebadf="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_pselect_detects_ebadf="$gl_cross_guess_normal" ;;
esac
])
])

View file

@ -1,4 +1,4 @@
# putenv.m4 serial 23
# putenv.m4 serial 24
dnl Copyright (C) 2002-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@ -40,8 +40,8 @@ AC_DEFUN([gl_FUNC_PUTENV],
*-musl*) gl_cv_func_svid_putenv="guessing yes" ;;
# Guess no on native Windows.
mingw*) gl_cv_func_svid_putenv="guessing no" ;;
# If we don't know, assume the worst.
*) gl_cv_func_svid_putenv="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_svid_putenv="$gl_cross_guess_normal" ;;
esac
])
])

View file

@ -1,4 +1,4 @@
# readlink.m4 serial 14
# readlink.m4 serial 15
dnl Copyright (C) 2003, 2007, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@ -38,8 +38,8 @@ AC_DEFUN([gl_FUNC_READLINK],
linux-* | linux) gl_cv_func_readlink_works="guessing yes" ;;
# Guess yes on glibc systems.
*-gnu* | gnu*) gl_cv_func_readlink_works="guessing yes" ;;
# If we don't know, assume the worst.
*) gl_cv_func_readlink_works="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_readlink_works="$gl_cross_guess_normal" ;;
esac
])
rm -f conftest.link conftest.lnk2])

View file

@ -1,4 +1,4 @@
# serial 68
# serial 69
# Copyright (C) 1996-2001, 2003-2019 Free Software Foundation, Inc.
#
@ -243,8 +243,8 @@ AC_DEFUN([gl_REGEX],
[case "$host_os" in
# Guess no on native Windows.
mingw*) gl_cv_func_re_compile_pattern_working="guessing no" ;;
# Otherwise, assume it is not working.
*) gl_cv_func_re_compile_pattern_working="guessing no" ;;
# Otherwise obey --enable-cross-guesses.
*) gl_cv_func_re_compile_pattern_working="$gl_cross_guess_normal" ;;
esac
])
])

View file

@ -1,4 +1,4 @@
# serial 8
# serial 9
# See if we need to provide symlink replacement.
dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
@ -40,8 +40,8 @@ AC_DEFUN([gl_FUNC_SYMLINK],
linux-* | linux) gl_cv_func_symlink_works="guessing yes" ;;
# Guess yes on glibc systems.
*-gnu* | gnu*) gl_cv_func_symlink_works="guessing yes" ;;
# If we don't know, assume the worst.
*) gl_cv_func_symlink_works="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_symlink_works="$gl_cross_guess_normal" ;;
esac
])
rm -f conftest.f conftest.link conftest.lnk2])

View file

@ -1,4 +1,4 @@
# unistd_h.m4 serial 75
# unistd_h.m4 serial 76
dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@ -41,9 +41,9 @@ AC_DEFUN([gl_UNISTD_H],
# include <io.h>
# endif
#endif
]], [chdir chown dup dup2 dup3 environ euidaccess faccessat fchdir fchownat
fdatasync fsync ftruncate getcwd getdomainname getdtablesize getgroups
gethostname getlogin getlogin_r getpagesize getpass
]], [access chdir chown dup dup2 dup3 environ euidaccess faccessat fchdir
fchownat fdatasync fsync ftruncate getcwd getdomainname getdtablesize
getgroups gethostname getlogin getlogin_r getpagesize getpass
getusershell setusershell endusershell
group_member isatty lchown link linkat lseek pipe pipe2 pread pwrite
readlink readlinkat rmdir sethostname sleep symlink symlinkat
@ -61,6 +61,7 @@ AC_DEFUN([gl_UNISTD_MODULE_INDICATOR],
AC_DEFUN([gl_UNISTD_H_DEFAULTS],
[
GNULIB_ACCESS=0; AC_SUBST([GNULIB_ACCESS])
GNULIB_CHDIR=0; AC_SUBST([GNULIB_CHDIR])
GNULIB_CHOWN=0; AC_SUBST([GNULIB_CHOWN])
GNULIB_CLOSE=0; AC_SUBST([GNULIB_CLOSE])
@ -159,6 +160,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
HAVE_DECL_TTYNAME_R=1; AC_SUBST([HAVE_DECL_TTYNAME_R])
HAVE_OS_H=0; AC_SUBST([HAVE_OS_H])
HAVE_SYS_PARAM_H=0; AC_SUBST([HAVE_SYS_PARAM_H])
REPLACE_ACCESS=0; AC_SUBST([REPLACE_ACCESS])
REPLACE_CHOWN=0; AC_SUBST([REPLACE_CHOWN])
REPLACE_CLOSE=0; AC_SUBST([REPLACE_CLOSE])
REPLACE_DUP=0; AC_SUBST([REPLACE_DUP])

View file

@ -3,7 +3,7 @@ dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl serial 9
dnl serial 10
AC_DEFUN([gl_UTIMENS],
[
@ -35,8 +35,8 @@ AC_DEFUN([gl_UTIMENS],
linux-* | linux) gl_cv_func_futimesat_works="guessing yes" ;;
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_futimesat_works="guessing yes" ;;
# If we don't know, assume the worst.
*) gl_cv_func_futimesat_works="guessing no" ;;
# If we don't know, obey --enable-cross-guesses.
*) gl_cv_func_futimesat_works="$gl_cross_guess_normal" ;;
esac
])
rm -f conftest.file])

View file

@ -1,5 +1,5 @@
# Detect some bugs in glibc's implementation of utimes.
# serial 6
# serial 7
dnl Copyright (C) 2003-2005, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
@ -147,7 +147,7 @@ main ()
*-musl*) gl_cv_func_working_utimes="guessing yes" ;;
# Guess no on native Windows.
mingw*) gl_cv_func_working_utimes="guessing no" ;;
*) gl_cv_func_working_utimes="guessing no" ;;
*) gl_cv_func_working_utimes="$gl_cross_guess_normal" ;;
esac
])
])