gnulib: sync from upstream

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
Giuseppe Scrivano 2019-07-22 13:02:57 +02:00
parent d0b363eaa7
commit 5653543fcc
No known key found for this signature in database
GPG Key ID: E4730F97F60286ED
26 changed files with 288 additions and 240 deletions

View File

@ -1,6 +1,6 @@
## DO NOT EDIT! GENERATED AUTOMATICALLY! ## DO NOT EDIT! GENERATED AUTOMATICALLY!
## Process this file with automake to produce Makefile.in. ## Process this file with automake to produce Makefile.in.
# Copyright (C) 2002-2017 Free Software Foundation, Inc. # Copyright (C) 2002-2019 Free Software Foundation, Inc.
# #
# This file is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
@ -13,7 +13,7 @@
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this file. If not, see <http://www.gnu.org/licenses/>. # along with this file. If not, see <https://www.gnu.org/licenses/>.
# #
# As a special exception to the GNU General Public License, # As a special exception to the GNU General Public License,
# this file may be distributed as part of a program that # this file may be distributed as part of a program that
@ -21,9 +21,20 @@
# the same distribution terms as the rest of that program. # the same distribution terms as the rest of that program.
# #
# Generated by gnulib-tool. # Generated by gnulib-tool.
# Reproduce by: gnulib-tool --import --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=. --no-conditional-dependencies --no-libtool --macro-prefix=gl hash # Reproduce by:
# gnulib-tool --import \
# --lib=libgnu \
# --source-base=lib \
# --m4-base=m4 \
# --doc-base=doc \
# --tests-base=tests \
# --aux-dir=. \
# --no-conditional-dependencies \
# --no-libtool \
# --macro-prefix=gl \
# hash
AUTOMAKE_OPTIONS = 1.9.6 gnits AUTOMAKE_OPTIONS = 1.11 gnits
SUBDIRS = SUBDIRS =
noinst_HEADERS = noinst_HEADERS =

View File

@ -1,5 +1,5 @@
/* bitrotate.h - Rotate bits in integers /* bitrotate.h - Rotate bits in integers
Copyright (C) 2008-2017 Free Software Foundation, Inc. Copyright (C) 2008-2019 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -12,7 +12,7 @@
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <https://www.gnu.org/licenses/>. */
/* Written by Simon Josefsson <simon@josefsson.org>, 2008. */ /* Written by Simon Josefsson <simon@josefsson.org>, 2008. */
@ -95,7 +95,8 @@ rotr_sz (size_t x, int n)
BITROTATE_INLINE uint16_t BITROTATE_INLINE uint16_t
rotl16 (uint16_t x, int n) rotl16 (uint16_t x, int n)
{ {
return ((x << n) | (x >> (16 - n))) & UINT16_MAX; return (((unsigned int) x << n) | ((unsigned int) x >> (16 - n)))
& UINT16_MAX;
} }
/* Given an unsigned 16-bit argument X, return the value corresponding /* Given an unsigned 16-bit argument X, return the value corresponding
@ -106,7 +107,8 @@ rotl16 (uint16_t x, int n)
BITROTATE_INLINE uint16_t BITROTATE_INLINE uint16_t
rotr16 (uint16_t x, int n) rotr16 (uint16_t x, int n)
{ {
return ((x >> n) | (x << (16 - n))) & UINT16_MAX; return (((unsigned int) x >> n) | ((unsigned int) x << (16 - n)))
& UINT16_MAX;
} }
/* Given an unsigned 8-bit argument X, return the value corresponding /* Given an unsigned 8-bit argument X, return the value corresponding
@ -117,7 +119,7 @@ rotr16 (uint16_t x, int n)
BITROTATE_INLINE uint8_t BITROTATE_INLINE uint8_t
rotl8 (uint8_t x, int n) rotl8 (uint8_t x, int n)
{ {
return ((x << n) | (x >> (8 - n))) & UINT8_MAX; return (((unsigned int) x << n) | ((unsigned int) x >> (8 - n))) & UINT8_MAX;
} }
/* Given an unsigned 8-bit argument X, return the value corresponding /* Given an unsigned 8-bit argument X, return the value corresponding
@ -128,7 +130,7 @@ rotl8 (uint8_t x, int n)
BITROTATE_INLINE uint8_t BITROTATE_INLINE uint8_t
rotr8 (uint8_t x, int n) rotr8 (uint8_t x, int n)
{ {
return ((x >> n) | (x << (8 - n))) & UINT8_MAX; return (((unsigned int) x >> n) | ((unsigned int) x << (8 - n))) & UINT8_MAX;
} }
_GL_INLINE_HEADER_END _GL_INLINE_HEADER_END

View File

@ -1,6 +1,6 @@
/* hash - hashing table processing. /* hash - hashing table processing.
Copyright (C) 1998-2004, 2006-2007, 2009-2017 Free Software Foundation, Inc. Copyright (C) 1998-2004, 2006-2007, 2009-2019 Free Software Foundation, Inc.
Written by Jim Meyering, 1992. Written by Jim Meyering, 1992.
@ -15,7 +15,7 @@
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <https://www.gnu.org/licenses/>. */
/* A generic hash table package. */ /* A generic hash table package. */

View File

@ -1,5 +1,5 @@
/* hash - hashing table processing. /* hash - hashing table processing.
Copyright (C) 1998-1999, 2001, 2003, 2009-2017 Free Software Foundation, Copyright (C) 1998-1999, 2001, 2003, 2009-2019 Free Software Foundation,
Inc. Inc.
Written by Jim Meyering <meyering@ascend.com>, 1998. Written by Jim Meyering <meyering@ascend.com>, 1998.
@ -14,7 +14,7 @@
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <https://www.gnu.org/licenses/>. */
/* A generic hash table package. */ /* A generic hash table package. */

View File

@ -1,6 +1,6 @@
/* A GNU-like <limits.h>. /* A GNU-like <limits.h>.
Copyright 2016-2017 Free Software Foundation, Inc. Copyright 2016-2019 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License modify it under the terms of the GNU General Public License
@ -13,7 +13,7 @@
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program; if not, see <http://www.gnu.org/licenses/>. */ along with this program; if not, see <https://www.gnu.org/licenses/>. */
#ifndef _@GUARD_PREFIX@_LIMITS_H #ifndef _@GUARD_PREFIX@_LIMITS_H
@ -28,15 +28,32 @@
#ifndef _@GUARD_PREFIX@_LIMITS_H #ifndef _@GUARD_PREFIX@_LIMITS_H
#define _@GUARD_PREFIX@_LIMITS_H #define _@GUARD_PREFIX@_LIMITS_H
/* For HP-UX 11.31. */ #ifndef LLONG_MIN
#if defined LONG_LONG_MIN && !defined LLONG_MIN # if defined LONG_LONG_MIN /* HP-UX 11.31 */
# define LLONG_MIN LONG_LONG_MIN # define LLONG_MIN LONG_LONG_MIN
# elif defined LONGLONG_MIN /* IRIX 6.5 */
# define LLONG_MIN LONGLONG_MIN
# elif defined __GNUC__
# define LLONG_MIN (- __LONG_LONG_MAX__ - 1LL)
# endif
#endif #endif
#if defined LONG_LONG_MAX && !defined LLONG_MAX #ifndef LLONG_MAX
# define LLONG_MAX LONG_LONG_MAX # if defined LONG_LONG_MAX /* HP-UX 11.31 */
# define LLONG_MAX LONG_LONG_MAX
# elif defined LONGLONG_MAX /* IRIX 6.5 */
# define LLONG_MAX LONGLONG_MAX
# elif defined __GNUC__
# define LLONG_MAX __LONG_LONG_MAX__
# endif
#endif #endif
#if defined ULONG_LONG_MAX && !defined ULLONG_MAX #ifndef ULLONG_MAX
# define ULLONG_MAX ULONG_LONG_MAX # if defined ULONG_LONG_MAX /* HP-UX 11.31 */
# define ULLONG_MAX ULONG_LONG_MAX
# elif defined ULONGLONG_MAX /* IRIX 6.5 */
# define ULLONG_MAX ULONGLONG_MAX
# elif defined __GNUC__
# define ULLONG_MAX (__LONG_LONG_MAX__ * 2ULL + 1ULL)
# endif
#endif #endif
/* The number of usable bits in an unsigned or signed integer type /* The number of usable bits in an unsigned or signed integer type
@ -53,6 +70,19 @@
#define _GL_COB8(n) (_GL_COB4 ((n) >> 4) + _GL_COB4 (n)) #define _GL_COB8(n) (_GL_COB4 ((n) >> 4) + _GL_COB4 (n))
#define _GL_COB4(n) (!!((n) & 8) + !!((n) & 4) + !!((n) & 2) + !!((n) & 1)) #define _GL_COB4(n) (!!((n) & 8) + !!((n) & 4) + !!((n) & 2) + !!((n) & 1))
#ifndef WORD_BIT
/* Assume 'int' is 32 bits wide. */
# define WORD_BIT 32
#endif
#ifndef LONG_BIT
/* Assume 'long' is 32 or 64 bits wide. */
# if LONG_MAX == INT_MAX
# define LONG_BIT 32
# else
# define LONG_BIT 64
# endif
#endif
/* Macros specified by ISO/IEC TS 18661-1:2014. */ /* Macros specified by ISO/IEC TS 18661-1:2014. */
#if (! defined ULLONG_WIDTH \ #if (! defined ULLONG_WIDTH \

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2001-2003, 2006-2017 Free Software Foundation, Inc. /* Copyright (C) 2001-2003, 2006-2019 Free Software Foundation, Inc.
Written by Bruno Haible <haible@clisp.cons.org>, 2001. Written by Bruno Haible <haible@clisp.cons.org>, 2001.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
@ -12,7 +12,7 @@
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program; if not, see <http://www.gnu.org/licenses/>. */ along with this program; if not, see <https://www.gnu.org/licenses/>. */
#ifndef _GL_STDBOOL_H #ifndef _GL_STDBOOL_H
#define _GL_STDBOOL_H #define _GL_STDBOOL_H
@ -82,9 +82,9 @@ typedef bool _Bool;
/* If @HAVE__BOOL@: /* If @HAVE__BOOL@:
Some HP-UX cc and AIX IBM C compiler versions have compiler bugs when Some HP-UX cc and AIX IBM C compiler versions have compiler bugs when
the built-in _Bool type is used. See the built-in _Bool type is used. See
http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html
http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html
http://lists.gnu.org/archive/html/bug-coreutils/2005-10/msg00086.html https://lists.gnu.org/r/bug-coreutils/2005-10/msg00086.html
Similar bugs are likely with other compilers as well; this file Similar bugs are likely with other compilers as well; this file
wouldn't be used if <stdbool.h> was working. wouldn't be used if <stdbool.h> was working.
So we override the _Bool type. So we override the _Bool type.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2001-2002, 2004-2017 Free Software Foundation, Inc. /* Copyright (C) 2001-2002, 2004-2019 Free Software Foundation, Inc.
Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood. Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood.
This file is part of gnulib. This file is part of gnulib.
@ -13,7 +13,7 @@
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program; if not, see <http://www.gnu.org/licenses/>. */ along with this program; if not, see <https://www.gnu.org/licenses/>. */
/* /*
* ISO C 99 <stdint.h> for platforms that lack it. * ISO C 99 <stdint.h> for platforms that lack it.

View File

@ -1,6 +1,6 @@
/* Provide a more complete sys/types.h. /* Provide a more complete sys/types.h.
Copyright (C) 2011-2017 Free Software Foundation, Inc. Copyright (C) 2011-2019 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -13,13 +13,24 @@
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program; if not, see <http://www.gnu.org/licenses/>. */ along with this program; if not, see <https://www.gnu.org/licenses/>. */
#if __GNUC__ >= 3 #if __GNUC__ >= 3
@PRAGMA_SYSTEM_HEADER@ @PRAGMA_SYSTEM_HEADER@
#endif #endif
@PRAGMA_COLUMNS@ @PRAGMA_COLUMNS@
#if defined _WIN32 && !defined __CYGWIN__ \
&& (defined __need_off_t || defined __need___off64_t \
|| defined __need_ssize_t || defined __need_time_t)
/* Special invocation convention inside mingw header files. */
#@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@
#else
/* Normal invocation convention. */
#ifndef _@GUARD_PREFIX@_SYS_TYPES_H #ifndef _@GUARD_PREFIX@_SYS_TYPES_H
/* The include_next requires a split double-inclusion guard. */ /* The include_next requires a split double-inclusion guard. */
@ -86,10 +97,10 @@ typedef unsigned long long int rpl_ino_t;
/* MSVC 9 defines size_t in <stddef.h>, not in <sys/types.h>. */ /* MSVC 9 defines size_t in <stddef.h>, not in <sys/types.h>. */
/* But avoid namespace pollution on glibc systems. */ /* But avoid namespace pollution on glibc systems. */
#if ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) \ #if (defined _WIN32 && ! defined __CYGWIN__) && ! defined __GLIBC__
&& ! defined __GLIBC__
# include <stddef.h> # include <stddef.h>
#endif #endif
#endif /* _@GUARD_PREFIX@_SYS_TYPES_H */ #endif /* _@GUARD_PREFIX@_SYS_TYPES_H */
#endif /* _@GUARD_PREFIX@_SYS_TYPES_H */ #endif /* _@GUARD_PREFIX@_SYS_TYPES_H */
#endif /* __need_XXX */

View File

@ -1,6 +1,6 @@
/* xalloc-oversized.h -- memory allocation size checking /* xalloc-oversized.h -- memory allocation size checking
Copyright (C) 1990-2000, 2003-2004, 2006-2017 Free Software Foundation, Inc. Copyright (C) 1990-2000, 2003-2004, 2006-2019 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -13,7 +13,7 @@
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <https://www.gnu.org/licenses/>. */
#ifndef XALLOC_OVERSIZED_H_ #ifndef XALLOC_OVERSIZED_H_
#define XALLOC_OVERSIZED_H_ #define XALLOC_OVERSIZED_H_

View File

@ -1,5 +1,5 @@
# 00gnulib.m4 serial 3 # 00gnulib.m4 serial 3
dnl Copyright (C) 2009-2017 Free Software Foundation, Inc. dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.

View File

@ -1,5 +1,5 @@
# absolute-header.m4 serial 16 # absolute-header.m4 serial 16
dnl Copyright (C) 2006-2017 Free Software Foundation, Inc. dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.

View File

@ -1,6 +1,6 @@
dnl 'extern inline' a la ISO C99. dnl 'extern inline' a la ISO C99.
dnl Copyright 2012-2017 Free Software Foundation, Inc. dnl Copyright 2012-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
@ -11,7 +11,7 @@ AC_DEFUN([gl_EXTERN_INLINE],
[/* Please see the Gnulib manual for how to use these macros. [/* Please see the Gnulib manual for how to use these macros.
Suppress extern inline with HP-UX cc, as it appears to be broken; see Suppress extern inline with HP-UX cc, as it appears to be broken; see
<http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>. <https://lists.gnu.org/r/bug-texinfo/2013-02/msg00030.html>.
Suppress extern inline with Sun C in standards-conformance mode, as it Suppress extern inline with Sun C in standards-conformance mode, as it
mishandles inline functions that call each other. E.g., for 'inline void f mishandles inline functions that call each other. E.g., for 'inline void f
@ -25,20 +25,32 @@ AC_DEFUN([gl_EXTERN_INLINE],
if isdigit is mistakenly implemented via a static inline function, if isdigit is mistakenly implemented via a static inline function,
a program containing an extern inline function that calls isdigit a program containing an extern inline function that calls isdigit
may not work since the C standard prohibits extern inline functions may not work since the C standard prohibits extern inline functions
from calling static functions. This bug is known to occur on: from calling static functions (ISO C 99 section 6.7.4.(3).
This bug is known to occur on:
OS X 10.8 and earlier; see: OS X 10.8 and earlier; see:
http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
DragonFly; see DragonFly; see
http://muscles.dragonflybsd.org/bulk/bleeding-edge-potential/latest-per-pkg/ah-tty-0.3.12.log http://muscles.dragonflybsd.org/bulk/bleeding-edge-potential/latest-per-pkg/ah-tty-0.3.12.log
FreeBSD; see: FreeBSD; see:
http://lists.gnu.org/archive/html/bug-gnulib/2014-07/msg00104.html https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html
OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
for clang but remains for g++; see <http://trac.macports.org/ticket/41033>. for clang but remains for g++; see <https://trac.macports.org/ticket/41033>.
Assume DragonFly and FreeBSD will be similar. */ Assume DragonFly and FreeBSD will be similar.
GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
inline semantics, unless -fgnu89-inline is used. It defines a macro
__GNUC_STDC_INLINE__ to indicate this situation or a macro
__GNUC_GNU_INLINE__ to indicate the opposite situation.
GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline
semantics but warns, unless -fgnu89-inline is used:
warning: C99 inline functions are not supported; using GNU89
warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute
It defines a macro __GNUC_GNU_INLINE__ to indicate this situation.
*/
#if (((defined __APPLE__ && defined __MACH__) \ #if (((defined __APPLE__ && defined __MACH__) \
|| defined __DragonFly__ || defined __FreeBSD__) \ || defined __DragonFly__ || defined __FreeBSD__) \
&& (defined __header_inline \ && (defined __header_inline \

View File

@ -1,4 +1,4 @@
# Copyright (C) 2002-2017 Free Software Foundation, Inc. # Copyright (C) 2002-2019 Free Software Foundation, Inc.
# #
# This file is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
@ -11,7 +11,7 @@
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this file. If not, see <http://www.gnu.org/licenses/>. # along with this file. If not, see <https://www.gnu.org/licenses/>.
# #
# As a special exception to the GNU General Public License, # As a special exception to the GNU General Public License,
# this file may be distributed as part of a program that # this file may be distributed as part of a program that
@ -27,7 +27,17 @@
# Specification in the form of a command-line invocation: # Specification in the form of a command-line invocation:
# gnulib-tool --import --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=. --no-conditional-dependencies --no-libtool --macro-prefix=gl hash # gnulib-tool --import \
# --lib=libgnu \
# --source-base=lib \
# --m4-base=m4 \
# --doc-base=doc \
# --tests-base=tests \
# --aux-dir=. \
# --no-conditional-dependencies \
# --no-libtool \
# --macro-prefix=gl \
# hash
# Specification in the form of a few gnulib-tool.m4 macro invocations: # Specification in the form of a few gnulib-tool.m4 macro invocations:
gl_LOCAL_DIR([]) gl_LOCAL_DIR([])

View File

@ -1,9 +1,11 @@
# gnulib-common.m4 serial 38 # gnulib-common.m4 serial 44
dnl Copyright (C) 2007-2017 Free Software Foundation, Inc. dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
AC_PREREQ([2.62])
# gl_COMMON # gl_COMMON
# is expanded unconditionally through gnulib-tool magic. # is expanded unconditionally through gnulib-tool magic.
AC_DEFUN([gl_COMMON], [ AC_DEFUN([gl_COMMON], [
@ -14,12 +16,18 @@ AC_DEFUN([gl_COMMON], [
AC_DEFUN([gl_COMMON_BODY], [ AC_DEFUN([gl_COMMON_BODY], [
AH_VERBATIM([_Noreturn], AH_VERBATIM([_Noreturn],
[/* The _Noreturn keyword of C11. */ [/* The _Noreturn keyword of C11. */
#if ! (defined _Noreturn \ #ifndef _Noreturn
|| (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__)) # if (defined __cplusplus \
# if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \ && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
|| 0x5110 <= __SUNPRO_C) || (defined _MSC_VER && 1900 <= _MSC_VER)))
# define _Noreturn [[noreturn]]
# elif ((!defined __cplusplus || defined __clang__) \
&& (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
|| 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
/* _Noreturn works as-is. */
# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
# define _Noreturn __attribute__ ((__noreturn__)) # define _Noreturn __attribute__ ((__noreturn__))
# elif defined _MSC_VER && 1200 <= _MSC_VER # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
# define _Noreturn __declspec (noreturn) # define _Noreturn __declspec (noreturn)
# else # else
# define _Noreturn # define _Noreturn
@ -72,6 +80,40 @@ AC_DEFUN([gl_COMMON_BODY], [
#else #else
# define _GL_ATTRIBUTE_CONST /* empty */ # define _GL_ATTRIBUTE_CONST /* empty */
#endif #endif
/* The __malloc__ attribute was added in gcc 3. */
#if 3 <= __GNUC__
# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
#else
# define _GL_ATTRIBUTE_MALLOC /* empty */
#endif
])
AH_VERBATIM([async_safe],
[/* The _GL_ASYNC_SAFE marker should be attached to functions that are
signal handlers (for signals other than SIGABRT, SIGPIPE) or can be
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>
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
access must be marked 'volatile'. This holds for both read and write
accesses. Otherwise the compiler might optimize away stores to and
reads from such locations that occur in the program, depending on its
data flow analysis. For example, when the program contains a loop
that is intended to inspect a variable set from within a signal handler
while (!signal_occurred)
;
the compiler is allowed to transform this into an endless loop if the
variable 'signal_occurred' is not declared 'volatile'.
Additionally, recall that:
* A signal handler should not modify errno (except if it is a handler
for a fatal signal and ends by raising the same signal again, thus
provoking the termination of the process). If it invokes a function
that may clobber errno, it needs to save and restore the value of
errno. */
#define _GL_ASYNC_SAFE
]) ])
dnl Preparation for running test programs: dnl Preparation for running test programs:
dnl Tell glibc to write diagnostics from -D_FORTIFY_SOURCE=2 to stderr, not dnl Tell glibc to write diagnostics from -D_FORTIFY_SOURCE=2 to stderr, not
@ -207,13 +249,6 @@ AC_DEFUN([gl_FEATURES_H],
AC_SUBST([HAVE_FEATURES_H]) AC_SUBST([HAVE_FEATURES_H])
]) ])
# m4_foreach_w
# is a backport of autoconf-2.59c's m4_foreach_w.
# Remove this macro when we can assume autoconf >= 2.60.
m4_ifndef([m4_foreach_w],
[m4_define([m4_foreach_w],
[m4_foreach([$1], m4_split(m4_normalize([$2]), [ ]), [$3])])])
# AS_VAR_IF(VAR, VALUE, [IF-MATCH], [IF-NOT-MATCH]) # AS_VAR_IF(VAR, VALUE, [IF-MATCH], [IF-NOT-MATCH])
# ---------------------------------------------------- # ----------------------------------------------------
# Backport of autoconf-2.63b's macro. # Backport of autoconf-2.63b's macro.
@ -226,15 +261,14 @@ m4_ifndef([AS_VAR_IF],
# Modifies the value of the shell variable CC in an attempt to make $CC # Modifies the value of the shell variable CC in an attempt to make $CC
# understand ISO C99 source code. # understand ISO C99 source code.
# This is like AC_PROG_CC_C99, except that # This is like AC_PROG_CC_C99, except that
# - AC_PROG_CC_C99 did not exist in Autoconf versions < 2.60,
# - AC_PROG_CC_C99 does not mix well with AC_PROG_CC_STDC # - AC_PROG_CC_C99 does not mix well with AC_PROG_CC_STDC
# <http://lists.gnu.org/archive/html/bug-gnulib/2011-09/msg00367.html>, # <https://lists.gnu.org/r/bug-gnulib/2011-09/msg00367.html>,
# but many more packages use AC_PROG_CC_STDC than AC_PROG_CC_C99 # but many more packages use AC_PROG_CC_STDC than AC_PROG_CC_C99
# <http://lists.gnu.org/archive/html/bug-gnulib/2011-09/msg00441.html>. # <https://lists.gnu.org/r/bug-gnulib/2011-09/msg00441.html>.
# Remaining problems: # Remaining problems:
# - When AC_PROG_CC_STDC is invoked twice, it adds the C99 enabling options # - When AC_PROG_CC_STDC is invoked twice, it adds the C99 enabling options
# to CC twice # to CC twice
# <http://lists.gnu.org/archive/html/bug-gnulib/2011-09/msg00431.html>. # <https://lists.gnu.org/r/bug-gnulib/2011-09/msg00431.html>.
# - AC_PROG_CC_STDC is likely to change now that C11 is an ISO standard. # - AC_PROG_CC_STDC is likely to change now that C11 is an ISO standard.
AC_DEFUN([gl_PROG_CC_C99], AC_DEFUN([gl_PROG_CC_C99],
[ [
@ -315,25 +349,6 @@ Amsterdam
AC_SUBST([RANLIB]) AC_SUBST([RANLIB])
]) ])
# AC_PROG_MKDIR_P
# is a backport of autoconf-2.60's AC_PROG_MKDIR_P, with a fix
# for interoperability with automake-1.9.6 from autoconf-2.62.
# Remove this macro when we can assume autoconf >= 2.62 or
# autoconf >= 2.60 && automake >= 1.10.
# AC_AUTOCONF_VERSION was introduced in 2.62, so use that as the witness.
m4_ifndef([AC_AUTOCONF_VERSION],[
m4_ifdef([AC_PROG_MKDIR_P], [
dnl For automake-1.9.6 && autoconf < 2.62: Ensure MKDIR_P is AC_SUBSTed.
m4_define([AC_PROG_MKDIR_P],
m4_defn([AC_PROG_MKDIR_P])[
AC_SUBST([MKDIR_P])])], [
dnl For autoconf < 2.60: Backport of AC_PROG_MKDIR_P.
AC_DEFUN_ONCE([AC_PROG_MKDIR_P],
[AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake
MKDIR_P='$(mkdir_p)'
AC_SUBST([MKDIR_P])])])
])
# AC_C_RESTRICT # AC_C_RESTRICT
# This definition is copied from post-2.69 Autoconf and overrides the # This definition is copied from post-2.69 Autoconf and overrides the
# AC_C_RESTRICT macro from autoconf 2.60..2.69. It can be removed # AC_C_RESTRICT macro from autoconf 2.60..2.69. It can be removed
@ -347,16 +362,16 @@ AC_DEFUN([AC_C_RESTRICT],
for ac_kw in __restrict __restrict__ _Restrict restrict; do for ac_kw in __restrict __restrict__ _Restrict restrict; do
AC_COMPILE_IFELSE( AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM( [AC_LANG_PROGRAM(
[[typedef int *int_ptr; [[typedef int *int_ptr;
int foo (int_ptr $ac_kw ip) { return ip[0]; } int foo (int_ptr $ac_kw ip) { return ip[0]; }
int bar (int [$ac_kw]); /* Catch GCC bug 14050. */ int bar (int [$ac_kw]); /* Catch GCC bug 14050. */
int bar (int ip[$ac_kw]) { return ip[0]; } int bar (int ip[$ac_kw]) { return ip[0]; }
]], ]],
[[int s[1]; [[int s[1];
int *$ac_kw t = s; int *$ac_kw t = s;
t[0] = 0; t[0] = 0;
return foo (t) + bar (t); return foo (t) + bar (t);
]])], ]])],
[ac_cv_c_restrict=$ac_kw]) [ac_cv_c_restrict=$ac_kw])
test "$ac_cv_c_restrict" != no && break test "$ac_cv_c_restrict" != no && break
done done
@ -407,61 +422,3 @@ AC_DEFUN([gl_CACHE_VAL_SILENT],
# AS_VAR_COPY was added in autoconf 2.63b # AS_VAR_COPY was added in autoconf 2.63b
m4_define_default([AS_VAR_COPY], m4_define_default([AS_VAR_COPY],
[AS_LITERAL_IF([$1[]$2], [$1=$$2], [eval $1=\$$2])]) [AS_LITERAL_IF([$1[]$2], [$1=$$2], [eval $1=\$$2])])
# AC_PROG_SED was added in autoconf 2.59b
m4_ifndef([AC_PROG_SED],
[AC_DEFUN([AC_PROG_SED],
[AC_CACHE_CHECK([for a sed that does not truncate output], ac_cv_path_SED,
[dnl ac_script should not contain more than 99 commands (for HP-UX sed),
dnl but more than about 7000 bytes, to catch a limit in Solaris 8 /usr/ucb/sed.
ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
for ac_i in 1 2 3 4 5 6 7; do
ac_script="$ac_script$as_nl$ac_script"
done
echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
AS_UNSET([ac_script])
if test -z "$SED"; then
ac_path_SED_found=false
_AS_PATH_WALK([], [
for ac_prog in sed gsed; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
AS_EXECUTABLE_P(["$ac_path_SED"]) || continue
case `"$ac_path_SED" --version 2>&1` in
*GNU*) ac_cv_path_SED=$ac_path_SED ac_path_SED_found=:;;
*)
ac_count=0
_AS_ECHO_N([0123456789]) >conftest.in
while :
do
cat conftest.in conftest.in >conftest.tmp
mv conftest.tmp conftest.in
cp conftest.in conftest.nl
echo >> conftest.nl
"$ac_path_SED" -f conftest.sed <conftest.nl >conftest.out 2>/dev/null || break
diff conftest.out conftest.nl >/dev/null 2>&1 || break
ac_count=`expr $ac_count + 1`
if test $ac_count -gt ${ac_path_SED_max-0}; then
# Best so far, but keep looking for better
ac_cv_path_SED=$ac_path_SED
ac_path_SED_max=$ac_count
fi
test $ac_count -gt 10 && break
done
rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
esac
$ac_path_SED_found && break 3
done
done])
if test -z "$ac_cv_path_SED"; then
AC_ERROR([no acceptable sed could be found in \$PATH])
fi
else
ac_cv_path_SED=$SED
fi
])
SED="$ac_cv_path_SED"
AC_SUBST([SED])dnl
rm -f conftest.sed
])
])

View File

@ -1,5 +1,5 @@
# DO NOT EDIT! GENERATED AUTOMATICALLY! # DO NOT EDIT! GENERATED AUTOMATICALLY!
# Copyright (C) 2002-2017 Free Software Foundation, Inc. # Copyright (C) 2002-2019 Free Software Foundation, Inc.
# #
# This file is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
@ -12,7 +12,7 @@
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this file. If not, see <http://www.gnu.org/licenses/>. # along with this file. If not, see <https://www.gnu.org/licenses/>.
# #
# As a special exception to the GNU General Public License, # As a special exception to the GNU General Public License,
# this file may be distributed as part of a program that # this file may be distributed as part of a program that

View File

@ -1,5 +1,5 @@
# gnulib-tool.m4 serial 2 # gnulib-tool.m4 serial 2
dnl Copyright (C) 2004-2005, 2009-2017 Free Software Foundation, Inc. dnl Copyright (C) 2004-2005, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.

View File

@ -1,5 +1,5 @@
# include_next.m4 serial 24 # include_next.m4 serial 24
dnl Copyright (C) 2006-2017 Free Software Foundation, Inc. dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.

View File

@ -1,6 +1,6 @@
dnl Check whether limits.h has needed features. dnl Check whether limits.h has needed features.
dnl Copyright 2016-2017 Free Software Foundation, Inc. dnl Copyright 2016-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
@ -11,14 +11,18 @@ AC_DEFUN_ONCE([gl_LIMITS_H],
[ [
gl_CHECK_NEXT_HEADERS([limits.h]) gl_CHECK_NEXT_HEADERS([limits.h])
AC_CACHE_CHECK([whether limits.h has ULLONG_WIDTH etc.], AC_CACHE_CHECK([whether limits.h has LLONG_MAX, WORD_BIT, ULLONG_WIDTH etc.],
[gl_cv_header_limits_width], [gl_cv_header_limits_width],
[AC_COMPILE_IFELSE( [AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM([[#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ [AC_LANG_PROGRAM(
#define __STDC_WANT_IEC_60559_BFP_EXT__ 1 [[#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
#endif #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
#include <limits.h> #endif
int ullw = ULLONG_WIDTH;]])], #include <limits.h>
long long llm = LLONG_MAX;
int wb = WORD_BIT;
int ullw = ULLONG_WIDTH;
]])],
[gl_cv_header_limits_width=yes], [gl_cv_header_limits_width=yes],
[gl_cv_header_limits_width=no])]) [gl_cv_header_limits_width=no])])
if test "$gl_cv_header_limits_width" = yes; then if test "$gl_cv_header_limits_width" = yes; then
@ -29,3 +33,11 @@ AC_DEFUN_ONCE([gl_LIMITS_H],
AC_SUBST([LIMITS_H]) AC_SUBST([LIMITS_H])
AM_CONDITIONAL([GL_GENERATE_LIMITS_H], [test -n "$LIMITS_H"]) AM_CONDITIONAL([GL_GENERATE_LIMITS_H], [test -n "$LIMITS_H"])
]) ])
dnl Unconditionally enables the replacement of <limits.h>.
AC_DEFUN([gl_REPLACE_LIMITS_H],
[
AC_REQUIRE([gl_LIMITS_H])
LIMITS_H='limits.h'
AM_CONDITIONAL([GL_GENERATE_LIMITS_H], [test -n "$LIMITS_H"])
])

View File

@ -1,14 +1,15 @@
# longlong.m4 serial 17 # longlong.m4 serial 18
dnl Copyright (C) 1999-2007, 2009-2017 Free Software Foundation, Inc. dnl Copyright (C) 1999-2007, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
dnl From Paul Eggert. dnl From Paul Eggert.
AC_PREREQ([2.62])
# Define HAVE_LONG_LONG_INT if 'long long int' works. # Define HAVE_LONG_LONG_INT if 'long long int' works.
# This fixes a bug in Autoconf 2.61, and can be faster # This can be faster than what's in Autoconf 2.62 through 2.68.
# than what's in Autoconf 2.62 through 2.68.
# Note: If the type 'long long int' exists but is only 32 bits large # Note: If the type 'long long int' exists but is only 32 bits large
# (as on some very old compilers), HAVE_LONG_LONG_INT will not be # (as on some very old compilers), HAVE_LONG_LONG_INT will not be
@ -56,8 +57,7 @@ AC_DEFUN([AC_TYPE_LONG_LONG_INT],
]) ])
# Define HAVE_UNSIGNED_LONG_LONG_INT if 'unsigned long long int' works. # Define HAVE_UNSIGNED_LONG_LONG_INT if 'unsigned long long int' works.
# This fixes a bug in Autoconf 2.61, and can be faster # This can be faster than what's in Autoconf 2.62 through 2.68.
# than what's in Autoconf 2.62 through 2.68.
# Note: If the type 'unsigned long long int' exists but is only 32 bits # Note: If the type 'unsigned long long int' exists but is only 32 bits
# large (as on some very old compilers), AC_TYPE_UNSIGNED_LONG_LONG_INT # large (as on some very old compilers), AC_TYPE_UNSIGNED_LONG_LONG_INT

View File

@ -1,5 +1,5 @@
# multiarch.m4 serial 7 # multiarch.m4 serial 7
dnl Copyright (C) 2008-2017 Free Software Foundation, Inc. dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.

View File

@ -1,5 +1,5 @@
# off_t.m4 serial 1 # off_t.m4 serial 1
dnl Copyright (C) 2012-2017 Free Software Foundation, Inc. dnl Copyright (C) 2012-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.

View File

@ -1,5 +1,5 @@
# ssize_t.m4 serial 5 (gettext-0.18.2) # ssize_t.m4 serial 5 (gettext-0.18.2)
dnl Copyright (C) 2001-2003, 2006, 2010-2017 Free Software Foundation, Inc. dnl Copyright (C) 2001-2003, 2006, 2010-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.

View File

@ -1,6 +1,6 @@
# Check for stdbool.h that conforms to C99. # Check for stdbool.h that conforms to C99.
dnl Copyright (C) 2002-2006, 2009-2017 Free Software Foundation, Inc. dnl Copyright (C) 2002-2006, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
@ -87,8 +87,8 @@ AC_DEFUN([AC_CHECK_HEADER_STDBOOL],
char o[sizeof n == m * sizeof n[0] ? 1 : -1]; char o[sizeof n == m * sizeof n[0] ? 1 : -1];
char p[-1 - (Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; char p[-1 - (Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1];
/* Catch a bug in an HP-UX C compiler. See /* Catch a bug in an HP-UX C compiler. See
http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html
http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html
*/ */
Bool q = true; Bool q = true;
Bool *pq = &q; Bool *pq = &q;

View File

@ -1,5 +1,5 @@
# stdint.m4 serial 50 # stdint.m4 serial 53
dnl Copyright (C) 2001-2017 Free Software Foundation, Inc. dnl Copyright (C) 2001-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
@ -7,9 +7,12 @@ dnl with or without modifications, as long as this notice is preserved.
dnl From Paul Eggert and Bruno Haible. dnl From Paul Eggert and Bruno Haible.
dnl Test whether <stdint.h> is supported or must be substituted. dnl Test whether <stdint.h> is supported or must be substituted.
AC_PREREQ([2.61])
AC_DEFUN_ONCE([gl_STDINT_H], AC_DEFUN_ONCE([gl_STDINT_H],
[ [
AC_PREREQ([2.59])dnl AC_PREREQ([2.59])dnl
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_REQUIRE([gl_LIMITS_H]) AC_REQUIRE([gl_LIMITS_H])
AC_REQUIRE([gt_TYPE_WINT_T]) AC_REQUIRE([gt_TYPE_WINT_T])
@ -288,8 +291,12 @@ static const char *macro_values[] =
]])], ]])],
[gl_cv_header_working_stdint_h=yes], [gl_cv_header_working_stdint_h=yes],
[], [],
[dnl When cross-compiling, assume it works. [case "$host_os" in
gl_cv_header_working_stdint_h=yes # Guess yes on native Windows.
mingw*) gl_cv_header_working_stdint_h="guessing yes" ;;
# In general, assume it works.
*) gl_cv_header_working_stdint_h="guessing yes" ;;
esac
]) ])
]) ])
]) ])
@ -299,15 +306,16 @@ static const char *macro_values[] =
HAVE_SYS_BITYPES_H=0 HAVE_SYS_BITYPES_H=0
HAVE_SYS_INTTYPES_H=0 HAVE_SYS_INTTYPES_H=0
STDINT_H=stdint.h STDINT_H=stdint.h
if test "$gl_cv_header_working_stdint_h" = yes; then case "$gl_cv_header_working_stdint_h" in
HAVE_C99_STDINT_H=1 *yes)
dnl Now see whether the system <stdint.h> works without HAVE_C99_STDINT_H=1
dnl __STDC_CONSTANT_MACROS/__STDC_LIMIT_MACROS defined. dnl Now see whether the system <stdint.h> works without
AC_CACHE_CHECK([whether stdint.h predates C++11], dnl __STDC_CONSTANT_MACROS/__STDC_LIMIT_MACROS defined.
[gl_cv_header_stdint_predates_cxx11_h], AC_CACHE_CHECK([whether stdint.h predates C++11],
[gl_cv_header_stdint_predates_cxx11_h=yes [gl_cv_header_stdint_predates_cxx11_h],
AC_COMPILE_IFELSE([ [gl_cv_header_stdint_predates_cxx11_h=yes
AC_LANG_PROGRAM([[ AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */ #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
#include <stdint.h> #include <stdint.h>
] ]
@ -315,49 +323,50 @@ gl_STDINT_INCLUDES
[ [
intmax_t im = INTMAX_MAX; intmax_t im = INTMAX_MAX;
int32_t i32 = INT32_C (0x7fffffff); int32_t i32 = INT32_C (0x7fffffff);
]])], ]])],
[gl_cv_header_stdint_predates_cxx11_h=no])]) [gl_cv_header_stdint_predates_cxx11_h=no])])
if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then
AC_DEFINE([__STDC_CONSTANT_MACROS], [1], AC_DEFINE([__STDC_CONSTANT_MACROS], [1],
[Define to 1 if the system <stdint.h> predates C++11.]) [Define to 1 if the system <stdint.h> predates C++11.])
AC_DEFINE([__STDC_LIMIT_MACROS], [1], AC_DEFINE([__STDC_LIMIT_MACROS], [1],
[Define to 1 if the system <stdint.h> predates C++11.]) [Define to 1 if the system <stdint.h> predates C++11.])
fi fi
AC_CACHE_CHECK([whether stdint.h has UINTMAX_WIDTH etc.], AC_CACHE_CHECK([whether stdint.h has UINTMAX_WIDTH etc.],
[gl_cv_header_stdint_width], [gl_cv_header_stdint_width],
[gl_cv_header_stdint_width=no [gl_cv_header_stdint_width=no
AC_COMPILE_IFELSE( AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM([[ [AC_LANG_PROGRAM([[
/* Work if build is not clean. */ /* Work if build is not clean. */
#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1
#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ #ifndef __STDC_WANT_IEC_60559_BFP_EXT__
#define __STDC_WANT_IEC_60559_BFP_EXT__ 1 #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
#endif #endif
#include <stdint.h> #include <stdint.h>
]gl_STDINT_INCLUDES[ ]gl_STDINT_INCLUDES[
int iw = UINTMAX_WIDTH; int iw = UINTMAX_WIDTH;
]])], ]])],
[gl_cv_header_stdint_width=yes])]) [gl_cv_header_stdint_width=yes])])
if test "$gl_cv_header_stdint_width" = yes; then if test "$gl_cv_header_stdint_width" = yes; then
STDINT_H= STDINT_H=
fi fi
else ;;
dnl Check for <sys/inttypes.h>, and for *)
dnl <sys/bitypes.h> (used in Linux libc4 >= 4.6.7 and libc5). dnl Check for <sys/inttypes.h>, and for
AC_CHECK_HEADERS([sys/inttypes.h sys/bitypes.h]) dnl <sys/bitypes.h> (used in Linux libc4 >= 4.6.7 and libc5).
if test $ac_cv_header_sys_inttypes_h = yes; then AC_CHECK_HEADERS([sys/inttypes.h sys/bitypes.h])
HAVE_SYS_INTTYPES_H=1 if test $ac_cv_header_sys_inttypes_h = yes; then
fi HAVE_SYS_INTTYPES_H=1
if test $ac_cv_header_sys_bitypes_h = yes; then fi
HAVE_SYS_BITYPES_H=1 if test $ac_cv_header_sys_bitypes_h = yes; then
fi HAVE_SYS_BITYPES_H=1
gl_STDINT_TYPE_PROPERTIES fi
fi gl_STDINT_TYPE_PROPERTIES
;;
esac
dnl The substitute stdint.h needs the substitute limit.h's _GL_INTEGER_WIDTH. dnl The substitute stdint.h needs the substitute limit.h's _GL_INTEGER_WIDTH.
LIMITS_H=limits.h gl_REPLACE_LIMITS_H
AM_CONDITIONAL([GL_GENERATE_LIMITS_H], [test -n "$LIMITS_H"])
AC_SUBST([HAVE_C99_STDINT_H]) AC_SUBST([HAVE_C99_STDINT_H])
AC_SUBST([HAVE_SYS_BITYPES_H]) AC_SUBST([HAVE_SYS_BITYPES_H])
@ -533,9 +542,3 @@ AC_DEFUN([gl_STDINT_TYPE_PROPERTIES],
BITSIZEOF_WINT_T=32 BITSIZEOF_WINT_T=32
fi fi
]) ])
dnl Autoconf >= 2.61 has AC_COMPUTE_INT built-in.
dnl Remove this when we can assume autoconf >= 2.61.
m4_ifdef([AC_COMPUTE_INT], [], [
AC_DEFUN([AC_COMPUTE_INT], [_AC_COMPUTE_INT([$2],[$1],[$3],[$4])])
])

View File

@ -1,5 +1,5 @@
# sys_types_h.m4 serial 8 # sys_types_h.m4 serial 9
dnl Copyright (C) 2011-2017 Free Software Foundation, Inc. dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.
@ -35,12 +35,12 @@ AC_DEFUN([gl_SYS_TYPES_H_DEFAULTS],
]) ])
# This works around a buggy version in autoconf <= 2.69. # This works around a buggy version in autoconf <= 2.69.
# See <https://lists.gnu.org/archive/html/autoconf/2016-08/msg00014.html> # See <https://lists.gnu.org/r/autoconf/2016-08/msg00014.html>
m4_version_prereq([2.70], [], [ m4_version_prereq([2.70], [], [
# This is taken from the following Autoconf patch: # This is taken from the following Autoconf patch:
# http://git.sv.gnu.org/cgit/autoconf.git/commit/?id=e17a30e98 # https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=e17a30e987d7ee695fb4294a82d987ec3dc9b974
m4_undefine([AC_HEADER_MAJOR]) m4_undefine([AC_HEADER_MAJOR])
AC_DEFUN([AC_HEADER_MAJOR], AC_DEFUN([AC_HEADER_MAJOR],

View File

@ -1,5 +1,5 @@
# wint_t.m4 serial 7 # wint_t.m4 serial 7
dnl Copyright (C) 2003, 2007-2017 Free Software Foundation, Inc. dnl Copyright (C) 2003, 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it, dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved. dnl with or without modifications, as long as this notice is preserved.