summaryrefslogtreecommitdiff
path: root/macros/texinfo/texinfo/tp/Texinfo/XS
diff options
context:
space:
mode:
Diffstat (limited to 'macros/texinfo/texinfo/tp/Texinfo/XS')
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.am41
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.in586
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.c42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.xs2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/README55
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/TestXS.pm4
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.c183
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.xs14
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/aclocal.m495
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/compile6
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/config.in415
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/config.rpath6
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/configure10194
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/configure.ac97
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.am81
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.in153
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/alloca.in.h19
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/arg-nonnull.h4
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asnprintf.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asprintf.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/attribute.h218
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/c++defs.h29
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/errno.in.h2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float+.h2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.in.h8
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getdelim.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getline.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/inttypes.in.h1002
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/itold.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/limits.in.h25
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.valgrind2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.c6
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.h14
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.c26
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.h2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.c7
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.valgrind2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/size_max.h2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stddef.in.h59
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdint.in.h84
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdio.in.h543
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.valgrind2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/string.in.h190
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strndup.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strnlen.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/sys_types.in.h2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.c423
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.h25
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasprintf.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/verify.h73
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/warn-on-use.h46
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/wchar.in.h396
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/xsize.h25
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/00gnulib.m4107
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/absolute-header.m412
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/alloca.m438
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/errno_h.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/exponentd.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extensions.m4174
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extern-inline.m44
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/float_h.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getdelim.m47
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getline.m46
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4461
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m418
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/host-cpu-c-abi.m449
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/iconv.m467
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/include_next.m436
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/intmax_t.m416
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes.m4165
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes_h.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-ld.m46
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-link.m4169
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-prefix.m4206
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/limits-h.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/longlong.m4113
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/memchr.m474
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/mmap-anon.m48
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/multiarch.m469
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/off_t.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/printf.m4117
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/rawmemchr.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/size_max.m48
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/ssize_t.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stddef_h.m420
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint.m451
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint_h.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdio_h.m419
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strchrnul.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/string_h.m499
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strndup.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strnlen.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/sys_types_h.m424
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasnprintf.m417
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasprintf.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/warn-on-use.m416
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_h.m4118
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_t.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wint_t.m439
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/xsize.m42
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/zzgnulib.m423
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parser-5556.pm7078
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.c17
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.pm75
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.xs3
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.c56
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.h3
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/close.c23
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.awk5
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.c15
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.txt744
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_ids.h8
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.c6
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.h7
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/conf.h5
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.c4
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.h7
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.c9
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.h7
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.c9
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.h15
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.c7
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.h6
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.awk5
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.h3
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/end_line.c45
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.c26
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.h8
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/extra.c4
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.c43
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.h5
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.c4
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.h5
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.c140
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.h5
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.h7
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.c28
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.h11
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/menus.c2
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.c79
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.h14
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/separator.c51
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.c6
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.h11
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.c12
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.h5
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree_types.h12
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/xspara.c160
-rw-r--r--macros/texinfo/texinfo/tp/Texinfo/XS/xspara.h2
154 files changed, 12017 insertions, 14409 deletions
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.am b/macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.am
index d62ca68dc6..999fda1ff5 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.am
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.am
@@ -1,6 +1,6 @@
# Makefile.am for XS modules
#
-# Copyright 2015-2019 Free Software Foundation, Inc.
+# Copyright 2015-2020 Free Software Foundation, Inc.
#
# This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without
@@ -38,7 +38,7 @@ PERL_INC = $(PERL_CONF_archlibexp)/CORE
XSUBPPARGS = -typemap $(PERL_CONF_privlibexp)/ExtUtils/typemap
.xs.c:
- $(XSUBPP) $(XSUBPPARGS) $< > $*.xsc && mv $*.xsc $*.c
+ $(XSUBPP) $(XSUBPPARGS) $< > $*.xsc && mv $*.xsc $(srcdir)/$*.c
EXTRA_DIST += TestXS.pm
@@ -61,14 +61,7 @@ MiscXS_la_SOURCES = MiscXS.c misc.c miscxs.h ppport.h
install-data-hook:
rm -f $(DESTDIR)$(xsdir)/TestXS*
-CLEANFILES += TestXS.c
-EXTRA_DIST += TestXS.xs
-
-CLEANFILES += XSParagraph.c
-EXTRA_DIST += XSParagraph.xs
-
-CLEANFILES += MiscXS.c
-EXTRA_DIST += MiscXS.xs
+EXTRA_DIST += TestXS.xs XSParagraph.xs MiscXS.xs
AM_CFLAGS = $(PERL_CONF_ccflags) $(PERL_CONF_optimize)
@@ -97,7 +90,7 @@ XSParagraph_la_LDFLAGS = $(AM_LDFLAGS) $(LTLIBINTL) $(LTLIBICONV)
p=parsetexi
modulesdir = $(pkgdatadir)/Texinfo/XS/parsetexi
-dist_modules_DATA = $p/Parsetexi.pm
+dist_modules_DATA = $(p)/Parsetexi.pm
if HAVE_ICONV
xs_LTLIBRARIES += Parsetexi.la
@@ -147,30 +140,30 @@ Parsetexi_la_SOURCES= parsetexi/Parsetexi.c \
parsetexi/errors.h \
parsetexi/counter.c \
parsetexi/counter.h
-EXTRA_DIST += $p/command_data.c
+EXTRA_DIST += $(p)/command_data.c
-EXTRA_DIST += $p/Parsetexi.xs
+EXTRA_DIST += $(p)/Parsetexi.xs
Parsetexi_la_LIBADD = $(top_builddir)/gnulib/lib/libgnu.la
Parsetexi_la_LDFLAGS = $(AM_LDFLAGS) $(LTLIBINTL) $(LTLIBICONV)
+# To locate include files under out-of-source builds.
+Parsetexi_la_CPPFLAGS = -I$(srcdir)/parsetexi $(AM_CPPFLAGS)
+
BUILT_SOURCES=parsetexi/element_types.c \
parsetexi/element_types.h \
parsetexi/command_data.c \
parsetexi/command_ids.h
# Need to be distributed
-EXTRA_DIST+=$p/element_types.txt $p/element_types.awk \
- $p/command_data.txt $p/command_data.awk
-
-# For reference
-EXTRA_DIST+=$p/Parser-5556.pm
+EXTRA_DIST+=$(p)/element_types.txt $(p)/element_types.awk \
+ $(p)/command_data.txt $(p)/command_data.awk
-$(srcdir)/$p/element_types.c $(srcdir)/$p/element_types.h: $p/element_types.txt $p/element_types.awk
- awk -v srcdir=$(srcdir)/$p -f $(srcdir)/$p/element_types.awk \
- $(srcdir)/$p/element_types.txt
+$(srcdir)/$(p)/element_types.c $(srcdir)/$(p)/element_types.h: $(p)/element_types.txt $(p)/element_types.awk
+ $(GAWK) -v srcdir=$(srcdir)/$(p) -f $(srcdir)/$(p)/element_types.awk \
+ $(srcdir)/$(p)/element_types.txt
-$(srcdir)/$p/command_data.c $(srcdir)/$p/command_ids.h: $p/command_data.txt $p/command_data.awk
- awk -v srcdir=$(srcdir)/$p -f $(srcdir)/$p/command_data.awk \
- $(srcdir)/$p/command_data.txt
+$(srcdir)/$(p)/command_data.c $(srcdir)/$(p)/command_ids.h: $(p)/command_data.txt $(p)/command_data.awk
+ $(GAWK) -v srcdir=$(srcdir)/$(p) -f $(srcdir)/$(p)/command_data.awk \
+ $(srcdir)/$(p)/command_data.txt
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.in b/macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.in
index 6567246745..b5dbcb5ae8 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.in
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.3 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -109,13 +109,13 @@ am__aclocal_m4_deps = $(top_srcdir)/gnulib/m4/00gnulib.m4 \
$(top_srcdir)/gnulib/m4/iconv.m4 \
$(top_srcdir)/gnulib/m4/include_next.m4 \
$(top_srcdir)/gnulib/m4/intmax_t.m4 \
+ $(top_srcdir)/gnulib/m4/inttypes.m4 \
$(top_srcdir)/gnulib/m4/inttypes_h.m4 \
$(top_srcdir)/gnulib/m4/lib-ld.m4 \
$(top_srcdir)/gnulib/m4/lib-link.m4 \
$(top_srcdir)/gnulib/m4/lib-prefix.m4 \
$(top_srcdir)/gnulib/m4/libtool.m4 \
$(top_srcdir)/gnulib/m4/limits-h.m4 \
- $(top_srcdir)/gnulib/m4/longlong.m4 \
$(top_srcdir)/gnulib/m4/ltoptions.m4 \
$(top_srcdir)/gnulib/m4/ltsugar.m4 \
$(top_srcdir)/gnulib/m4/ltversion.m4 \
@@ -145,7 +145,8 @@ am__aclocal_m4_deps = $(top_srcdir)/gnulib/m4/00gnulib.m4 \
$(top_srcdir)/gnulib/m4/wchar_h.m4 \
$(top_srcdir)/gnulib/m4/wchar_t.m4 \
$(top_srcdir)/gnulib/m4/wint_t.m4 \
- $(top_srcdir)/gnulib/m4/xsize.m4 $(top_srcdir)/configure.ac
+ $(top_srcdir)/gnulib/m4/xsize.m4 \
+ $(top_srcdir)/gnulib/m4/zzgnulib.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
@@ -194,17 +195,27 @@ am__v_lt_0 = --silent
am__v_lt_1 =
Parsetexi_la_DEPENDENCIES = $(top_builddir)/gnulib/lib/libgnu.la
am__dirstamp = $(am__leading_dot)dirstamp
-am_Parsetexi_la_OBJECTS = parsetexi/Parsetexi.lo parsetexi/api.lo \
- parsetexi/parser.lo parsetexi/element_types.lo \
- parsetexi/commands.lo parsetexi/input.lo parsetexi/tree.lo \
- parsetexi/close.lo parsetexi/text.lo parsetexi/conf.lo \
- parsetexi/context_stack.lo parsetexi/debug.lo \
- parsetexi/convert.lo parsetexi/end_line.lo \
- parsetexi/separator.lo parsetexi/multitable.lo \
- parsetexi/indices.lo parsetexi/macro.lo \
- parsetexi/handle_commands.lo parsetexi/def.lo \
- parsetexi/extra.lo parsetexi/menus.lo parsetexi/labels.lo \
- parsetexi/errors.lo parsetexi/counter.lo
+am_Parsetexi_la_OBJECTS = parsetexi/Parsetexi_la-Parsetexi.lo \
+ parsetexi/Parsetexi_la-api.lo parsetexi/Parsetexi_la-parser.lo \
+ parsetexi/Parsetexi_la-element_types.lo \
+ parsetexi/Parsetexi_la-commands.lo \
+ parsetexi/Parsetexi_la-input.lo parsetexi/Parsetexi_la-tree.lo \
+ parsetexi/Parsetexi_la-close.lo parsetexi/Parsetexi_la-text.lo \
+ parsetexi/Parsetexi_la-conf.lo \
+ parsetexi/Parsetexi_la-context_stack.lo \
+ parsetexi/Parsetexi_la-debug.lo \
+ parsetexi/Parsetexi_la-convert.lo \
+ parsetexi/Parsetexi_la-end_line.lo \
+ parsetexi/Parsetexi_la-separator.lo \
+ parsetexi/Parsetexi_la-multitable.lo \
+ parsetexi/Parsetexi_la-indices.lo \
+ parsetexi/Parsetexi_la-macro.lo \
+ parsetexi/Parsetexi_la-handle_commands.lo \
+ parsetexi/Parsetexi_la-def.lo parsetexi/Parsetexi_la-extra.lo \
+ parsetexi/Parsetexi_la-menus.lo \
+ parsetexi/Parsetexi_la-labels.lo \
+ parsetexi/Parsetexi_la-errors.lo \
+ parsetexi/Parsetexi_la-counter.lo
Parsetexi_la_OBJECTS = $(am_Parsetexi_la_OBJECTS)
Parsetexi_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
@@ -238,24 +249,31 @@ am__maybe_remake_depfiles = depfiles
am__depfiles_remade = ./$(DEPDIR)/MiscXS.Plo ./$(DEPDIR)/TestXS.Plo \
./$(DEPDIR)/XSParagraph.Plo ./$(DEPDIR)/misc.Plo \
./$(DEPDIR)/text.Plo ./$(DEPDIR)/xspara.Plo \
- parsetexi/$(DEPDIR)/Parsetexi.Plo parsetexi/$(DEPDIR)/api.Plo \
- parsetexi/$(DEPDIR)/close.Plo parsetexi/$(DEPDIR)/commands.Plo \
- parsetexi/$(DEPDIR)/conf.Plo \
- parsetexi/$(DEPDIR)/context_stack.Plo \
- parsetexi/$(DEPDIR)/convert.Plo \
- parsetexi/$(DEPDIR)/counter.Plo parsetexi/$(DEPDIR)/debug.Plo \
- parsetexi/$(DEPDIR)/def.Plo \
- parsetexi/$(DEPDIR)/element_types.Plo \
- parsetexi/$(DEPDIR)/end_line.Plo \
- parsetexi/$(DEPDIR)/errors.Plo parsetexi/$(DEPDIR)/extra.Plo \
- parsetexi/$(DEPDIR)/handle_commands.Plo \
- parsetexi/$(DEPDIR)/indices.Plo parsetexi/$(DEPDIR)/input.Plo \
- parsetexi/$(DEPDIR)/labels.Plo parsetexi/$(DEPDIR)/macro.Plo \
- parsetexi/$(DEPDIR)/menus.Plo \
- parsetexi/$(DEPDIR)/multitable.Plo \
- parsetexi/$(DEPDIR)/parser.Plo \
- parsetexi/$(DEPDIR)/separator.Plo parsetexi/$(DEPDIR)/text.Plo \
- parsetexi/$(DEPDIR)/tree.Plo
+ parsetexi/$(DEPDIR)/Parsetexi_la-Parsetexi.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-api.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-close.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-commands.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-conf.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-context_stack.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-convert.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-counter.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-debug.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-def.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-element_types.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-end_line.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-errors.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-extra.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-handle_commands.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-indices.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-input.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-labels.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-macro.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-menus.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-multitable.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-parser.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-separator.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-text.Plo \
+ parsetexi/$(DEPDIR)/Parsetexi_la-tree.Plo
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -301,8 +319,8 @@ am__recursive_targets = \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
cscope distdir distdir-am dist dist-all distcheck
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
- $(LISP)config.in
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
+ config.in
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
@@ -323,9 +341,9 @@ ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.in README \
- compile config.guess config.rpath config.sub depcomp \
- install-sh ltmain.sh missing
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.in compile \
+ config.guess config.rpath config.sub depcomp install-sh \
+ ltmain.sh missing
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@@ -364,6 +382,8 @@ am__relativize = \
DIST_ARCHIVES = $(distdir).tar.gz
GZIP_ENV = --best
DIST_TARGETS = dist-gzip
+# Exists only to be overridden by the user if desired.
+AM_DISTCHECK_DVI_TARGET = dvi
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
@@ -410,6 +430,7 @@ ERRNO_H = @ERRNO_H@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
FLOAT_H = @FLOAT_H@
+GAWK = @GAWK@
GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
@@ -441,6 +462,8 @@ GNULIB_GETC = @GNULIB_GETC@
GNULIB_GETCHAR = @GNULIB_GETCHAR@
GNULIB_GETDELIM = @GNULIB_GETDELIM@
GNULIB_GETLINE = @GNULIB_GETLINE@
+GNULIB_IMAXABS = @GNULIB_IMAXABS@
+GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
GNULIB_MBRLEN = @GNULIB_MBRLEN@
GNULIB_MBRTOWC = @GNULIB_MBRTOWC@
GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@
@@ -460,6 +483,15 @@ GNULIB_MBSSEP = @GNULIB_MBSSEP@
GNULIB_MBSSPN = @GNULIB_MBSSPN@
GNULIB_MBSSTR = @GNULIB_MBSSTR@
GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@
+GNULIB_MDA_FCLOSEALL = @GNULIB_MDA_FCLOSEALL@
+GNULIB_MDA_FDOPEN = @GNULIB_MDA_FDOPEN@
+GNULIB_MDA_FILENO = @GNULIB_MDA_FILENO@
+GNULIB_MDA_GETW = @GNULIB_MDA_GETW@
+GNULIB_MDA_MEMCCPY = @GNULIB_MDA_MEMCCPY@
+GNULIB_MDA_PUTW = @GNULIB_MDA_PUTW@
+GNULIB_MDA_STRDUP = @GNULIB_MDA_STRDUP@
+GNULIB_MDA_TEMPNAM = @GNULIB_MDA_TEMPNAM@
+GNULIB_MDA_WCSDUP = @GNULIB_MDA_WCSDUP@
GNULIB_MEMCHR = @GNULIB_MEMCHR@
GNULIB_MEMMEM = @GNULIB_MEMMEM@
GNULIB_MEMPCPY = @GNULIB_MEMPCPY@
@@ -480,6 +512,8 @@ GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_SCANF = @GNULIB_SCANF@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
@@ -490,6 +524,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
GNULIB_STRDUP = @GNULIB_STRDUP@
GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
GNULIB_STRNCAT = @GNULIB_STRNCAT@
GNULIB_STRNDUP = @GNULIB_STRNDUP@
@@ -498,7 +533,9 @@ GNULIB_STRPBRK = @GNULIB_STRPBRK@
GNULIB_STRSEP = @GNULIB_STRSEP@
GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
+GNULIB_STRTOIMAX = @GNULIB_STRTOIMAX@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_VASPRINTF = @GNULIB_VASPRINTF@
@@ -544,17 +581,21 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
GNULIB_WMEMSET = @GNULIB_WMEMSET@
GREP = @GREP@
HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
+HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
+HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@
@@ -564,8 +605,11 @@ HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@
HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@
HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@
HAVE_DECL_STRSIGNAL = @HAVE_DECL_STRSIGNAL@
+HAVE_DECL_STRTOIMAX = @HAVE_DECL_STRTOIMAX@
HAVE_DECL_STRTOK_R = @HAVE_DECL_STRTOK_R@
+HAVE_DECL_STRTOUMAX = @HAVE_DECL_STRTOUMAX@
HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
HAVE_DPRINTF = @HAVE_DPRINTF@
@@ -575,8 +619,8 @@ HAVE_FFSL = @HAVE_FFSL@
HAVE_FFSLL = @HAVE_FFSLL@
HAVE_FSEEKO = @HAVE_FSEEKO@
HAVE_FTELLO = @HAVE_FTELLO@
+HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
HAVE_MBRLEN = @HAVE_MBRLEN@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
@@ -584,12 +628,13 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
-HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_PCLOSE = @HAVE_PCLOSE@
HAVE_POPEN = @HAVE_POPEN@
HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@
HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@
@@ -598,13 +643,13 @@ HAVE_STPCPY = @HAVE_STPCPY@
HAVE_STPNCPY = @HAVE_STPNCPY@
HAVE_STRCASESTR = @HAVE_STRCASESTR@
HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
HAVE_VASPRINTF = @HAVE_VASPRINTF@
HAVE_VDPRINTF = @HAVE_VDPRINTF@
HAVE_WCHAR_H = @HAVE_WCHAR_H@
@@ -641,6 +686,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
HAVE_WMEMCMP = @HAVE_WMEMCMP@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
HAVE_WMEMSET = @HAVE_WMEMSET@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
@@ -649,6 +695,8 @@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INT32_MAX_LT_INTMAX_MAX = @INT32_MAX_LT_INTMAX_MAX@
+INT64_MAX_EQ_LONG_MAX = @INT64_MAX_EQ_LONG_MAX@
INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
LD = @LD@
@@ -673,6 +721,7 @@ MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
+NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = @NEXT_AS_FIRST_DIRECTIVE_LIMITS_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@
@@ -682,6 +731,7 @@ NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
+NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LIMITS_H = @NEXT_LIMITS_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDINT_H = @NEXT_STDINT_H@
@@ -719,6 +769,7 @@ PERL_EXT_LDFLAGS = @PERL_EXT_LDFLAGS@
POSUB = @POSUB@
PRAGMA_COLUMNS = @PRAGMA_COLUMNS@
PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@
+PRIPTR_PREFIX = @PRIPTR_PREFIX@
PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@
RANLIB = @RANLIB@
REPLACE_BTOWC = @REPLACE_BTOWC@
@@ -726,6 +777,7 @@ REPLACE_DPRINTF = @REPLACE_DPRINTF@
REPLACE_FCLOSE = @REPLACE_FCLOSE@
REPLACE_FDOPEN = @REPLACE_FDOPEN@
REPLACE_FFLUSH = @REPLACE_FFLUSH@
+REPLACE_FFSLL = @REPLACE_FFSLL@
REPLACE_FOPEN = @REPLACE_FOPEN@
REPLACE_FPRINTF = @REPLACE_FPRINTF@
REPLACE_FPURGE = @REPLACE_FPURGE@
@@ -762,13 +814,16 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
REPLACE_STRDUP = @REPLACE_STRDUP@
REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
REPLACE_STRNCAT = @REPLACE_STRNCAT@
REPLACE_STRNDUP = @REPLACE_STRNDUP@
REPLACE_STRNLEN = @REPLACE_STRNLEN@
REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
+REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_VASPRINTF = @REPLACE_VASPRINTF@
REPLACE_VDPRINTF = @REPLACE_VDPRINTF@
@@ -780,6 +835,7 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
REPLACE_WCTOB = @REPLACE_WCTOB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
@@ -791,6 +847,8 @@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
+UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
@@ -863,7 +921,7 @@ top_srcdir = @top_srcdir@
# Makefile.am for XS modules
#
-# Copyright 2015-2019 Free Software Foundation, Inc.
+# Copyright 2015-2020 Free Software Foundation, Inc.
#
# This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without
@@ -876,12 +934,10 @@ top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign subdir-objects
# Need to be distributed
-
-# For reference
EXTRA_DIST = gnulib/m4/gnulib-cache.m4 TestXS.pm TestXS.xs \
- XSParagraph.xs MiscXS.xs $p/command_data.c $p/Parsetexi.xs \
- $p/element_types.txt $p/element_types.awk $p/command_data.txt \
- $p/command_data.awk $p/Parser-5556.pm
+ XSParagraph.xs MiscXS.xs $(p)/command_data.c $(p)/Parsetexi.xs \
+ $(p)/element_types.txt $(p)/element_types.awk \
+ $(p)/command_data.txt $(p)/command_data.awk
######################## Gnulib ################################
@@ -895,7 +951,7 @@ PERL_INC = $(PERL_CONF_archlibexp)/CORE
XSUBPPARGS = -typemap $(PERL_CONF_privlibexp)/ExtUtils/typemap
# -------------------------------------------------------
-CLEANFILES = TestXS.c XSParagraph.c MiscXS.c
+CLEANFILES =
xs_LTLIBRARIES = XSParagraph.la TestXS.la MiscXS.la $(am__append_1)
XSParagraph_la_SOURCES = XSParagraph.c xspara.c xspara.h \
text.c text.h ppport.h
@@ -915,7 +971,7 @@ XSParagraph_la_LDFLAGS = $(AM_LDFLAGS) $(LTLIBINTL) $(LTLIBICONV)
########################## parsetexi
p = parsetexi
modulesdir = $(pkgdatadir)/Texinfo/XS/parsetexi
-dist_modules_DATA = $p/Parsetexi.pm
+dist_modules_DATA = $(p)/Parsetexi.pm
Parsetexi_la_SOURCES = parsetexi/Parsetexi.c \
parsetexi/api.c \
parsetexi/api.h \
@@ -963,6 +1019,9 @@ Parsetexi_la_SOURCES = parsetexi/Parsetexi.c \
Parsetexi_la_LIBADD = $(top_builddir)/gnulib/lib/libgnu.la
Parsetexi_la_LDFLAGS = $(AM_LDFLAGS) $(LTLIBINTL) $(LTLIBICONV)
+
+# To locate include files under out-of-source builds.
+Parsetexi_la_CPPFLAGS = -I$(srcdir)/parsetexi $(AM_CPPFLAGS)
BUILT_SOURCES = parsetexi/element_types.c \
parsetexi/element_types.h \
parsetexi/command_data.c \
@@ -1065,55 +1124,55 @@ parsetexi/$(am__dirstamp):
parsetexi/$(DEPDIR)/$(am__dirstamp):
@$(MKDIR_P) parsetexi/$(DEPDIR)
@: > parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/Parsetexi.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-Parsetexi.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/api.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-api.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/parser.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-parser.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/element_types.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-element_types.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/commands.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-commands.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/input.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-input.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/tree.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-tree.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/close.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-close.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/text.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-text.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/conf.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-conf.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/context_stack.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-context_stack.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/debug.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-debug.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/convert.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-convert.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/end_line.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-end_line.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/separator.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-separator.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/multitable.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-multitable.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/indices.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-indices.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/macro.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-macro.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/handle_commands.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-handle_commands.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/def.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-def.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/extra.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-extra.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/menus.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-menus.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/labels.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-labels.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/errors.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-errors.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
-parsetexi/counter.lo: parsetexi/$(am__dirstamp) \
+parsetexi/Parsetexi_la-counter.lo: parsetexi/$(am__dirstamp) \
parsetexi/$(DEPDIR)/$(am__dirstamp)
Parsetexi.la: $(Parsetexi_la_OBJECTS) $(Parsetexi_la_DEPENDENCIES) $(EXTRA_Parsetexi_la_DEPENDENCIES)
@@ -1139,31 +1198,31 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/misc.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xspara.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/api.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/close.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/commands.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/conf.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/context_stack.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/convert.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/counter.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/debug.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/def.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/element_types.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/end_line.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/errors.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/extra.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/handle_commands.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/indices.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/input.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/labels.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/macro.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/menus.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/multitable.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/parser.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/separator.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/text.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/tree.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-Parsetexi.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-api.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-close.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-commands.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-conf.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-context_stack.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-convert.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-counter.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-debug.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-def.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-element_types.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-end_line.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-errors.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-extra.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-handle_commands.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-indices.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-input.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-labels.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-macro.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-menus.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-multitable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-parser.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-separator.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-text.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@parsetexi/$(DEPDIR)/Parsetexi_la-tree.Plo@am__quote@ # am--include-marker
$(am__depfiles_remade):
@$(MKDIR_P) $(@D)
@@ -1195,6 +1254,181 @@ am--depfiles: $(am__depfiles_remade)
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
+parsetexi/Parsetexi_la-Parsetexi.lo: parsetexi/Parsetexi.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-Parsetexi.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-Parsetexi.Tpo -c -o parsetexi/Parsetexi_la-Parsetexi.lo `test -f 'parsetexi/Parsetexi.c' || echo '$(srcdir)/'`parsetexi/Parsetexi.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-Parsetexi.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-Parsetexi.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/Parsetexi.c' object='parsetexi/Parsetexi_la-Parsetexi.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-Parsetexi.lo `test -f 'parsetexi/Parsetexi.c' || echo '$(srcdir)/'`parsetexi/Parsetexi.c
+
+parsetexi/Parsetexi_la-api.lo: parsetexi/api.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-api.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-api.Tpo -c -o parsetexi/Parsetexi_la-api.lo `test -f 'parsetexi/api.c' || echo '$(srcdir)/'`parsetexi/api.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-api.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-api.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/api.c' object='parsetexi/Parsetexi_la-api.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-api.lo `test -f 'parsetexi/api.c' || echo '$(srcdir)/'`parsetexi/api.c
+
+parsetexi/Parsetexi_la-parser.lo: parsetexi/parser.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-parser.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-parser.Tpo -c -o parsetexi/Parsetexi_la-parser.lo `test -f 'parsetexi/parser.c' || echo '$(srcdir)/'`parsetexi/parser.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-parser.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-parser.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/parser.c' object='parsetexi/Parsetexi_la-parser.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-parser.lo `test -f 'parsetexi/parser.c' || echo '$(srcdir)/'`parsetexi/parser.c
+
+parsetexi/Parsetexi_la-element_types.lo: parsetexi/element_types.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-element_types.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-element_types.Tpo -c -o parsetexi/Parsetexi_la-element_types.lo `test -f 'parsetexi/element_types.c' || echo '$(srcdir)/'`parsetexi/element_types.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-element_types.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-element_types.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/element_types.c' object='parsetexi/Parsetexi_la-element_types.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-element_types.lo `test -f 'parsetexi/element_types.c' || echo '$(srcdir)/'`parsetexi/element_types.c
+
+parsetexi/Parsetexi_la-commands.lo: parsetexi/commands.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-commands.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-commands.Tpo -c -o parsetexi/Parsetexi_la-commands.lo `test -f 'parsetexi/commands.c' || echo '$(srcdir)/'`parsetexi/commands.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-commands.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-commands.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/commands.c' object='parsetexi/Parsetexi_la-commands.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-commands.lo `test -f 'parsetexi/commands.c' || echo '$(srcdir)/'`parsetexi/commands.c
+
+parsetexi/Parsetexi_la-input.lo: parsetexi/input.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-input.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-input.Tpo -c -o parsetexi/Parsetexi_la-input.lo `test -f 'parsetexi/input.c' || echo '$(srcdir)/'`parsetexi/input.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-input.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-input.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/input.c' object='parsetexi/Parsetexi_la-input.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-input.lo `test -f 'parsetexi/input.c' || echo '$(srcdir)/'`parsetexi/input.c
+
+parsetexi/Parsetexi_la-tree.lo: parsetexi/tree.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-tree.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-tree.Tpo -c -o parsetexi/Parsetexi_la-tree.lo `test -f 'parsetexi/tree.c' || echo '$(srcdir)/'`parsetexi/tree.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-tree.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-tree.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/tree.c' object='parsetexi/Parsetexi_la-tree.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-tree.lo `test -f 'parsetexi/tree.c' || echo '$(srcdir)/'`parsetexi/tree.c
+
+parsetexi/Parsetexi_la-close.lo: parsetexi/close.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-close.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-close.Tpo -c -o parsetexi/Parsetexi_la-close.lo `test -f 'parsetexi/close.c' || echo '$(srcdir)/'`parsetexi/close.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-close.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-close.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/close.c' object='parsetexi/Parsetexi_la-close.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-close.lo `test -f 'parsetexi/close.c' || echo '$(srcdir)/'`parsetexi/close.c
+
+parsetexi/Parsetexi_la-text.lo: parsetexi/text.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-text.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-text.Tpo -c -o parsetexi/Parsetexi_la-text.lo `test -f 'parsetexi/text.c' || echo '$(srcdir)/'`parsetexi/text.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-text.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-text.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/text.c' object='parsetexi/Parsetexi_la-text.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-text.lo `test -f 'parsetexi/text.c' || echo '$(srcdir)/'`parsetexi/text.c
+
+parsetexi/Parsetexi_la-conf.lo: parsetexi/conf.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-conf.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-conf.Tpo -c -o parsetexi/Parsetexi_la-conf.lo `test -f 'parsetexi/conf.c' || echo '$(srcdir)/'`parsetexi/conf.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-conf.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-conf.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/conf.c' object='parsetexi/Parsetexi_la-conf.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-conf.lo `test -f 'parsetexi/conf.c' || echo '$(srcdir)/'`parsetexi/conf.c
+
+parsetexi/Parsetexi_la-context_stack.lo: parsetexi/context_stack.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-context_stack.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-context_stack.Tpo -c -o parsetexi/Parsetexi_la-context_stack.lo `test -f 'parsetexi/context_stack.c' || echo '$(srcdir)/'`parsetexi/context_stack.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-context_stack.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-context_stack.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/context_stack.c' object='parsetexi/Parsetexi_la-context_stack.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-context_stack.lo `test -f 'parsetexi/context_stack.c' || echo '$(srcdir)/'`parsetexi/context_stack.c
+
+parsetexi/Parsetexi_la-debug.lo: parsetexi/debug.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-debug.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-debug.Tpo -c -o parsetexi/Parsetexi_la-debug.lo `test -f 'parsetexi/debug.c' || echo '$(srcdir)/'`parsetexi/debug.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-debug.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-debug.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/debug.c' object='parsetexi/Parsetexi_la-debug.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-debug.lo `test -f 'parsetexi/debug.c' || echo '$(srcdir)/'`parsetexi/debug.c
+
+parsetexi/Parsetexi_la-convert.lo: parsetexi/convert.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-convert.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-convert.Tpo -c -o parsetexi/Parsetexi_la-convert.lo `test -f 'parsetexi/convert.c' || echo '$(srcdir)/'`parsetexi/convert.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-convert.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-convert.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/convert.c' object='parsetexi/Parsetexi_la-convert.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-convert.lo `test -f 'parsetexi/convert.c' || echo '$(srcdir)/'`parsetexi/convert.c
+
+parsetexi/Parsetexi_la-end_line.lo: parsetexi/end_line.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-end_line.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-end_line.Tpo -c -o parsetexi/Parsetexi_la-end_line.lo `test -f 'parsetexi/end_line.c' || echo '$(srcdir)/'`parsetexi/end_line.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-end_line.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-end_line.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/end_line.c' object='parsetexi/Parsetexi_la-end_line.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-end_line.lo `test -f 'parsetexi/end_line.c' || echo '$(srcdir)/'`parsetexi/end_line.c
+
+parsetexi/Parsetexi_la-separator.lo: parsetexi/separator.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-separator.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-separator.Tpo -c -o parsetexi/Parsetexi_la-separator.lo `test -f 'parsetexi/separator.c' || echo '$(srcdir)/'`parsetexi/separator.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-separator.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-separator.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/separator.c' object='parsetexi/Parsetexi_la-separator.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-separator.lo `test -f 'parsetexi/separator.c' || echo '$(srcdir)/'`parsetexi/separator.c
+
+parsetexi/Parsetexi_la-multitable.lo: parsetexi/multitable.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-multitable.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-multitable.Tpo -c -o parsetexi/Parsetexi_la-multitable.lo `test -f 'parsetexi/multitable.c' || echo '$(srcdir)/'`parsetexi/multitable.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-multitable.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-multitable.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/multitable.c' object='parsetexi/Parsetexi_la-multitable.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-multitable.lo `test -f 'parsetexi/multitable.c' || echo '$(srcdir)/'`parsetexi/multitable.c
+
+parsetexi/Parsetexi_la-indices.lo: parsetexi/indices.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-indices.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-indices.Tpo -c -o parsetexi/Parsetexi_la-indices.lo `test -f 'parsetexi/indices.c' || echo '$(srcdir)/'`parsetexi/indices.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-indices.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-indices.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/indices.c' object='parsetexi/Parsetexi_la-indices.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-indices.lo `test -f 'parsetexi/indices.c' || echo '$(srcdir)/'`parsetexi/indices.c
+
+parsetexi/Parsetexi_la-macro.lo: parsetexi/macro.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-macro.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-macro.Tpo -c -o parsetexi/Parsetexi_la-macro.lo `test -f 'parsetexi/macro.c' || echo '$(srcdir)/'`parsetexi/macro.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-macro.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-macro.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/macro.c' object='parsetexi/Parsetexi_la-macro.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-macro.lo `test -f 'parsetexi/macro.c' || echo '$(srcdir)/'`parsetexi/macro.c
+
+parsetexi/Parsetexi_la-handle_commands.lo: parsetexi/handle_commands.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-handle_commands.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-handle_commands.Tpo -c -o parsetexi/Parsetexi_la-handle_commands.lo `test -f 'parsetexi/handle_commands.c' || echo '$(srcdir)/'`parsetexi/handle_commands.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-handle_commands.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-handle_commands.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/handle_commands.c' object='parsetexi/Parsetexi_la-handle_commands.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-handle_commands.lo `test -f 'parsetexi/handle_commands.c' || echo '$(srcdir)/'`parsetexi/handle_commands.c
+
+parsetexi/Parsetexi_la-def.lo: parsetexi/def.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-def.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-def.Tpo -c -o parsetexi/Parsetexi_la-def.lo `test -f 'parsetexi/def.c' || echo '$(srcdir)/'`parsetexi/def.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-def.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-def.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/def.c' object='parsetexi/Parsetexi_la-def.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-def.lo `test -f 'parsetexi/def.c' || echo '$(srcdir)/'`parsetexi/def.c
+
+parsetexi/Parsetexi_la-extra.lo: parsetexi/extra.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-extra.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-extra.Tpo -c -o parsetexi/Parsetexi_la-extra.lo `test -f 'parsetexi/extra.c' || echo '$(srcdir)/'`parsetexi/extra.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-extra.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-extra.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/extra.c' object='parsetexi/Parsetexi_la-extra.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-extra.lo `test -f 'parsetexi/extra.c' || echo '$(srcdir)/'`parsetexi/extra.c
+
+parsetexi/Parsetexi_la-menus.lo: parsetexi/menus.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-menus.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-menus.Tpo -c -o parsetexi/Parsetexi_la-menus.lo `test -f 'parsetexi/menus.c' || echo '$(srcdir)/'`parsetexi/menus.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-menus.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-menus.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/menus.c' object='parsetexi/Parsetexi_la-menus.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-menus.lo `test -f 'parsetexi/menus.c' || echo '$(srcdir)/'`parsetexi/menus.c
+
+parsetexi/Parsetexi_la-labels.lo: parsetexi/labels.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-labels.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-labels.Tpo -c -o parsetexi/Parsetexi_la-labels.lo `test -f 'parsetexi/labels.c' || echo '$(srcdir)/'`parsetexi/labels.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-labels.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-labels.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/labels.c' object='parsetexi/Parsetexi_la-labels.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-labels.lo `test -f 'parsetexi/labels.c' || echo '$(srcdir)/'`parsetexi/labels.c
+
+parsetexi/Parsetexi_la-errors.lo: parsetexi/errors.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-errors.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-errors.Tpo -c -o parsetexi/Parsetexi_la-errors.lo `test -f 'parsetexi/errors.c' || echo '$(srcdir)/'`parsetexi/errors.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-errors.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-errors.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/errors.c' object='parsetexi/Parsetexi_la-errors.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-errors.lo `test -f 'parsetexi/errors.c' || echo '$(srcdir)/'`parsetexi/errors.c
+
+parsetexi/Parsetexi_la-counter.lo: parsetexi/counter.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT parsetexi/Parsetexi_la-counter.lo -MD -MP -MF parsetexi/$(DEPDIR)/Parsetexi_la-counter.Tpo -c -o parsetexi/Parsetexi_la-counter.lo `test -f 'parsetexi/counter.c' || echo '$(srcdir)/'`parsetexi/counter.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parsetexi/$(DEPDIR)/Parsetexi_la-counter.Tpo parsetexi/$(DEPDIR)/Parsetexi_la-counter.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parsetexi/counter.c' object='parsetexi/Parsetexi_la-counter.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(Parsetexi_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o parsetexi/Parsetexi_la-counter.lo `test -f 'parsetexi/counter.c' || echo '$(srcdir)/'`parsetexi/counter.c
+
mostlyclean-libtool:
-rm -f *.lo
@@ -1415,6 +1649,10 @@ dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)
+dist-zstd: distdir
+ tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+ $(am__post_remove_distdir)
+
dist-tarZ: distdir
@echo WARNING: "Support for distribution archives compressed with" \
"legacy program 'compress' is deprecated." >&2
@@ -1457,6 +1695,8 @@ distcheck: dist
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
+ *.tar.zst*) \
+ zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
esac
chmod -R a-w $(distdir)
chmod u+w $(distdir)
@@ -1472,7 +1712,7 @@ distcheck: dist
$(DISTCHECK_CONFIGURE_FLAGS) \
--srcdir=../.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
+ && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
@@ -1534,7 +1774,8 @@ installdirs-am:
done
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-recursive
-install-exec: install-exec-recursive
+install-exec: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
@@ -1580,31 +1821,31 @@ distclean: distclean-recursive
-rm -f ./$(DEPDIR)/misc.Plo
-rm -f ./$(DEPDIR)/text.Plo
-rm -f ./$(DEPDIR)/xspara.Plo
- -rm -f parsetexi/$(DEPDIR)/Parsetexi.Plo
- -rm -f parsetexi/$(DEPDIR)/api.Plo
- -rm -f parsetexi/$(DEPDIR)/close.Plo
- -rm -f parsetexi/$(DEPDIR)/commands.Plo
- -rm -f parsetexi/$(DEPDIR)/conf.Plo
- -rm -f parsetexi/$(DEPDIR)/context_stack.Plo
- -rm -f parsetexi/$(DEPDIR)/convert.Plo
- -rm -f parsetexi/$(DEPDIR)/counter.Plo
- -rm -f parsetexi/$(DEPDIR)/debug.Plo
- -rm -f parsetexi/$(DEPDIR)/def.Plo
- -rm -f parsetexi/$(DEPDIR)/element_types.Plo
- -rm -f parsetexi/$(DEPDIR)/end_line.Plo
- -rm -f parsetexi/$(DEPDIR)/errors.Plo
- -rm -f parsetexi/$(DEPDIR)/extra.Plo
- -rm -f parsetexi/$(DEPDIR)/handle_commands.Plo
- -rm -f parsetexi/$(DEPDIR)/indices.Plo
- -rm -f parsetexi/$(DEPDIR)/input.Plo
- -rm -f parsetexi/$(DEPDIR)/labels.Plo
- -rm -f parsetexi/$(DEPDIR)/macro.Plo
- -rm -f parsetexi/$(DEPDIR)/menus.Plo
- -rm -f parsetexi/$(DEPDIR)/multitable.Plo
- -rm -f parsetexi/$(DEPDIR)/parser.Plo
- -rm -f parsetexi/$(DEPDIR)/separator.Plo
- -rm -f parsetexi/$(DEPDIR)/text.Plo
- -rm -f parsetexi/$(DEPDIR)/tree.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-Parsetexi.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-api.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-close.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-commands.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-conf.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-context_stack.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-convert.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-counter.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-debug.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-def.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-element_types.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-end_line.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-errors.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-extra.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-handle_commands.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-indices.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-input.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-labels.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-macro.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-menus.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-multitable.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-parser.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-separator.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-text.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-tree.Plo
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-hdr distclean-libtool distclean-tags
@@ -1659,31 +1900,31 @@ maintainer-clean: maintainer-clean-recursive
-rm -f ./$(DEPDIR)/misc.Plo
-rm -f ./$(DEPDIR)/text.Plo
-rm -f ./$(DEPDIR)/xspara.Plo
- -rm -f parsetexi/$(DEPDIR)/Parsetexi.Plo
- -rm -f parsetexi/$(DEPDIR)/api.Plo
- -rm -f parsetexi/$(DEPDIR)/close.Plo
- -rm -f parsetexi/$(DEPDIR)/commands.Plo
- -rm -f parsetexi/$(DEPDIR)/conf.Plo
- -rm -f parsetexi/$(DEPDIR)/context_stack.Plo
- -rm -f parsetexi/$(DEPDIR)/convert.Plo
- -rm -f parsetexi/$(DEPDIR)/counter.Plo
- -rm -f parsetexi/$(DEPDIR)/debug.Plo
- -rm -f parsetexi/$(DEPDIR)/def.Plo
- -rm -f parsetexi/$(DEPDIR)/element_types.Plo
- -rm -f parsetexi/$(DEPDIR)/end_line.Plo
- -rm -f parsetexi/$(DEPDIR)/errors.Plo
- -rm -f parsetexi/$(DEPDIR)/extra.Plo
- -rm -f parsetexi/$(DEPDIR)/handle_commands.Plo
- -rm -f parsetexi/$(DEPDIR)/indices.Plo
- -rm -f parsetexi/$(DEPDIR)/input.Plo
- -rm -f parsetexi/$(DEPDIR)/labels.Plo
- -rm -f parsetexi/$(DEPDIR)/macro.Plo
- -rm -f parsetexi/$(DEPDIR)/menus.Plo
- -rm -f parsetexi/$(DEPDIR)/multitable.Plo
- -rm -f parsetexi/$(DEPDIR)/parser.Plo
- -rm -f parsetexi/$(DEPDIR)/separator.Plo
- -rm -f parsetexi/$(DEPDIR)/text.Plo
- -rm -f parsetexi/$(DEPDIR)/tree.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-Parsetexi.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-api.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-close.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-commands.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-conf.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-context_stack.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-convert.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-counter.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-debug.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-def.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-element_types.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-end_line.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-errors.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-extra.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-handle_commands.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-indices.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-input.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-labels.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-macro.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-menus.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-multitable.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-parser.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-separator.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-text.Plo
+ -rm -f parsetexi/$(DEPDIR)/Parsetexi_la-tree.Plo
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
@@ -1703,33 +1944,34 @@ ps-am:
uninstall-am: uninstall-dist_modulesDATA uninstall-xsLTLIBRARIES
.MAKE: $(am__recursive_targets) all check install install-am \
- install-data-am install-strip
+ install-data-am install-exec install-strip
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--depfiles am--refresh check check-am clean clean-cscope \
clean-generic clean-libtool clean-xsLTLIBRARIES cscope \
cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
- distcheck distclean distclean-compile distclean-generic \
- distclean-hdr distclean-libtool distclean-tags distcleancheck \
- distdir distuninstallcheck dvi dvi-am html html-am info \
- info-am install install-am install-data install-data-am \
- install-data-hook install-dist_modulesDATA install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip install-xsLTLIBRARIES installcheck \
- installcheck-am installdirs installdirs-am maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags tags-am uninstall uninstall-am uninstall-dist_modulesDATA \
+ dist-zstd distcheck distclean distclean-compile \
+ distclean-generic distclean-hdr distclean-libtool \
+ distclean-tags distcleancheck distdir distuninstallcheck dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-data-hook \
+ install-dist_modulesDATA install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ install-xsLTLIBRARIES installcheck installcheck-am installdirs \
+ installdirs-am maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
+ uninstall-am uninstall-dist_modulesDATA \
uninstall-xsLTLIBRARIES
.PRECIOUS: Makefile
.xs.c:
- $(XSUBPP) $(XSUBPPARGS) $< > $*.xsc && mv $*.xsc $*.c
+ $(XSUBPP) $(XSUBPPARGS) $< > $*.xsc && mv $*.xsc $(srcdir)/$*.c
# TestXS.la has to be included in xs_LIBRARIES, and not noinst_LIBRARIES,
# otherwise dynamic libraries aren't built (a libtool bug). Work around
@@ -1740,13 +1982,13 @@ install-data-hook:
@HOST_NEEDS_NO_UNDEFINED_TRUE@ # `(gnulib)Libtool and Windows'. The -L and -l options after it show
@HOST_NEEDS_NO_UNDEFINED_TRUE@ # where to find the undefined symbols.
-$(srcdir)/$p/element_types.c $(srcdir)/$p/element_types.h: $p/element_types.txt $p/element_types.awk
- awk -v srcdir=$(srcdir)/$p -f $(srcdir)/$p/element_types.awk \
- $(srcdir)/$p/element_types.txt
+$(srcdir)/$(p)/element_types.c $(srcdir)/$(p)/element_types.h: $(p)/element_types.txt $(p)/element_types.awk
+ $(GAWK) -v srcdir=$(srcdir)/$(p) -f $(srcdir)/$(p)/element_types.awk \
+ $(srcdir)/$(p)/element_types.txt
-$(srcdir)/$p/command_data.c $(srcdir)/$p/command_ids.h: $p/command_data.txt $p/command_data.awk
- awk -v srcdir=$(srcdir)/$p -f $(srcdir)/$p/command_data.awk \
- $(srcdir)/$p/command_data.txt
+$(srcdir)/$(p)/command_data.c $(srcdir)/$(p)/command_ids.h: $(p)/command_data.txt $(p)/command_data.awk
+ $(GAWK) -v srcdir=$(srcdir)/$(p) -f $(srcdir)/$(p)/command_data.awk \
+ $(srcdir)/$(p)/command_data.txt
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.c b/macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.c
index 4847171b07..9cc34ce0c1 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.c
@@ -166,8 +166,8 @@ S_croak_xs_usage(const CV *const cv, const char *const params)
#line 168 "MiscXS.c"
-XS_EUPXS(XS_Texinfo__MiscXSXS_abort_empty_line); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__MiscXSXS_abort_empty_line)
+XS_EUPXS(XS_Texinfo__MiscXS_abort_empty_line); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__MiscXS_abort_empty_line)
{
dVAR; dXSARGS;
if (items < 2)
@@ -189,7 +189,7 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_abort_empty_line)
}
else{
Perl_croak_nocontext("%s: %s is not a HASH reference",
- "Texinfo::MiscXSXS::abort_empty_line",
+ "Texinfo::MiscXS::abort_empty_line",
"self");
}
} STMT_END
@@ -203,7 +203,7 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_abort_empty_line)
}
else{
Perl_croak_nocontext("%s: %s is not a HASH reference",
- "Texinfo::MiscXSXS::abort_empty_line",
+ "Texinfo::MiscXS::abort_empty_line",
"current");
}
} STMT_END
@@ -222,8 +222,8 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_abort_empty_line)
}
-XS_EUPXS(XS_Texinfo__MiscXSXS_merge_text); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__MiscXSXS_merge_text)
+XS_EUPXS(XS_Texinfo__MiscXS_merge_text); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__MiscXS_merge_text)
{
dVAR; dXSARGS;
if (items != 3)
@@ -243,7 +243,7 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_merge_text)
}
else{
Perl_croak_nocontext("%s: %s is not a HASH reference",
- "Texinfo::MiscXSXS::merge_text",
+ "Texinfo::MiscXS::merge_text",
"self");
}
} STMT_END
@@ -257,7 +257,7 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_merge_text)
}
else{
Perl_croak_nocontext("%s: %s is not a HASH reference",
- "Texinfo::MiscXSXS::merge_text",
+ "Texinfo::MiscXS::merge_text",
"current");
}
} STMT_END
@@ -275,8 +275,8 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_merge_text)
}
-XS_EUPXS(XS_Texinfo__MiscXSXS_process_text); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__MiscXSXS_process_text)
+XS_EUPXS(XS_Texinfo__MiscXS_process_text); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__MiscXS_process_text)
{
dVAR; dXSARGS;
if (items != 1)
@@ -308,8 +308,8 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_process_text)
}
-XS_EUPXS(XS_Texinfo__MiscXSXS_unicode_text); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__MiscXSXS_unicode_text)
+XS_EUPXS(XS_Texinfo__MiscXS_unicode_text); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__MiscXS_unicode_text)
{
dVAR; dXSARGS;
if (items < 1)
@@ -349,8 +349,8 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_unicode_text)
}
-XS_EUPXS(XS_Texinfo__MiscXSXS_parse_texi_regex); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__MiscXSXS_parse_texi_regex)
+XS_EUPXS(XS_Texinfo__MiscXS_parse_texi_regex); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__MiscXS_parse_texi_regex)
{
dVAR; dXSARGS;
if (items != 1)
@@ -399,8 +399,8 @@ XS_EUPXS(XS_Texinfo__MiscXSXS_parse_texi_regex)
#ifdef __cplusplus
extern "C"
#endif
-XS_EXTERNAL(boot_Texinfo__MiscXSXS); /* prototype to pass -Wmissing-prototypes */
-XS_EXTERNAL(boot_Texinfo__MiscXSXS)
+XS_EXTERNAL(boot_Texinfo__MiscXS); /* prototype to pass -Wmissing-prototypes */
+XS_EXTERNAL(boot_Texinfo__MiscXS)
{
#if PERL_VERSION_LE(5, 21, 5)
dVAR; dXSARGS;
@@ -424,11 +424,11 @@ XS_EXTERNAL(boot_Texinfo__MiscXSXS)
# endif
#endif
- newXS_deffile("Texinfo::MiscXSXS::abort_empty_line", XS_Texinfo__MiscXSXS_abort_empty_line);
- newXS_deffile("Texinfo::MiscXSXS::merge_text", XS_Texinfo__MiscXSXS_merge_text);
- newXS_deffile("Texinfo::MiscXSXS::process_text", XS_Texinfo__MiscXSXS_process_text);
- newXS_deffile("Texinfo::MiscXSXS::unicode_text", XS_Texinfo__MiscXSXS_unicode_text);
- newXS_deffile("Texinfo::MiscXSXS::parse_texi_regex", XS_Texinfo__MiscXSXS_parse_texi_regex);
+ newXS_deffile("Texinfo::MiscXS::abort_empty_line", XS_Texinfo__MiscXS_abort_empty_line);
+ newXS_deffile("Texinfo::MiscXS::merge_text", XS_Texinfo__MiscXS_merge_text);
+ newXS_deffile("Texinfo::MiscXS::process_text", XS_Texinfo__MiscXS_process_text);
+ newXS_deffile("Texinfo::MiscXS::unicode_text", XS_Texinfo__MiscXS_unicode_text);
+ newXS_deffile("Texinfo::MiscXS::parse_texi_regex", XS_Texinfo__MiscXS_parse_texi_regex);
#if PERL_VERSION_LE(5, 21, 5)
# if PERL_VERSION_GE(5, 9, 0)
if (PL_unitcheckav)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.xs b/macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.xs
index 15c4174b8a..04e9454c5c 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.xs
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/MiscXS.xs
@@ -11,7 +11,7 @@
#include "miscxs.h"
-MODULE = Texinfo::MiscXSXS PACKAGE = Texinfo::MiscXSXS PREFIX = xs_
+MODULE = Texinfo::MiscXS PACKAGE = Texinfo::MiscXS PREFIX = xs_
# Copyright 2016 Free Software Foundation, Inc.
#
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/README b/macros/texinfo/texinfo/tp/Texinfo/XS/README
deleted file mode 100644
index 22515dd4f8..0000000000
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/README
+++ /dev/null
@@ -1,55 +0,0 @@
-This is an experimental XS module to implement the functionality of
-Texinfo::Convert::Paragraph.
-
-Instructions for using this module
-----------------------------------
-
-Uncomment the lines in tp/Texinfo/Convert/Plaintext.pm that use this
-module.
-
-Caution: if you run an installed "makeinfo" from within the "tp/"
-directory, it is likely to use the modules underneath "tp/", and not the
-installed modules.
-
-Debugging with gdb
-------------------
-
-To debug with gdb, create a .gdbinit file like the following:
-
-dir Texinfo/Convert/XSParagraph/mylib
-r texi2any
-
-Run
-
-export PERL5LIB=Texinfo/Convert/XSParagraph/lib:Texinfo/Convert/XSParagraph/blib/arch/auto/XSParagraph"
-
-at the command line.
-
-Run gdb as "gdb `which perl`". The .gdbinit file will load the symbols
-from the source files. Then you can do e.g.
-
-b xspara_end_line
-
-in gdb. Run with "r texi2any (options)", for example,
-"r texi2any ../doc/info-stnd.texi".
-
-
-Issues
-------
-
-* Do we need to support more than one paragraph formatter at once? It
-depends on what the calling code in Plaintext.pm does.
-If this was necessary, the functions in XSParagraph.xs can call
-xspara_set_state to make sure that the right paragraph state is used.
-
-* Effect of changing locale. At initialization, xspara_hello tries to
-switch to a UTF-8 locale, so that the C standard library multibyte
-functions operate on the UTF-8 data correctly. Could this break
-anything for the running Perl instance?
-
-* Check that we correctly imitate variables being "undefined" in Perl.
-
-* Check where space doubling at an end of a sentence is done - it is
-done in a couple of places depending on some conditions, but the logic
-of this isn't clear to me.
-
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/TestXS.pm b/macros/texinfo/texinfo/tp/Texinfo/XS/TestXS.pm
index 72c6831f3e..b08e61eedc 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/TestXS.pm
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/TestXS.pm
@@ -1,4 +1,4 @@
-# Copyright 2014, 2015, 2016, 2018 Free Software Foundation, Inc.
+# Copyright 2014-2019 Free Software Foundation, Inc.
#
# 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
@@ -24,9 +24,9 @@ BEGIN {
Texinfo::XSLoader::init (
"TestXS",
- "TestXS",
undef,
"TestXS",
+ undef,
0);
}
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.c b/macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.c
index 219786f714..bac13d44e5 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.c
@@ -166,8 +166,8 @@ S_croak_xs_usage(const CV *const cv, const char *const params)
#line 168 "XSParagraph.c"
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_init); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_init)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_init); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_init)
{
dVAR; dXSARGS;
if (items != 2)
@@ -187,8 +187,8 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_init)
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_set_state); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_set_state)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_set_state); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_set_state)
{
dVAR; dXSARGS;
if (items != 1)
@@ -203,8 +203,8 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_set_state)
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_new); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_new)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_new); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_new)
{
dVAR; dXSARGS;
if (items < 1)
@@ -213,12 +213,11 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_new)
SV * class = ST(0)
;
#line 49 "XSParagraph.xs"
- HV *pkg;
HV *conf = 0;
int id;
-#line 220 "XSParagraph.c"
+#line 219 "XSParagraph.c"
SV * RETVAL;
-#line 53 "XSParagraph.xs"
+#line 52 "XSParagraph.xs"
items--;
if (items > 0)
{
@@ -227,11 +226,10 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_new)
}
id = xspara_new (conf);
- /* Create a blessed integer, which the other functions
+ /* Create an integer, which the other functions
need as their first argument. */
- pkg = gv_stashpv ("Texinfo::Convert::XSParagraph::XSParagraph", 0);
RETVAL = newSViv (id);
-#line 235 "XSParagraph.c"
+#line 233 "XSParagraph.c"
RETVAL = sv_2mortal(RETVAL);
ST(0) = RETVAL;
}
@@ -239,8 +237,8 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_new)
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_end_line_count); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_end_line_count)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_end_line_count); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_end_line_count)
{
dVAR; dXSARGS;
if (items != 1)
@@ -250,18 +248,18 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_end_line_count)
;
int RETVAL;
dXSTARG;
-#line 73 "XSParagraph.xs"
+#line 71 "XSParagraph.xs"
xspara_set_state (paragraph);
RETVAL = xspara_end_line_count ();
-#line 257 "XSParagraph.c"
+#line 255 "XSParagraph.c"
XSprePUSH; PUSHi((IV)RETVAL);
}
XSRETURN(1);
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph__end_line); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph__end_line)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph__end_line); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph__end_line)
{
dVAR; dXSARGS;
if (items != 1)
@@ -269,17 +267,17 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph__end_line)
{
SV * paragraph = ST(0)
;
-#line 82 "XSParagraph.xs"
+#line 80 "XSParagraph.xs"
xspara_set_state (paragraph);
xspara__end_line ();
-#line 276 "XSParagraph.c"
+#line 274 "XSParagraph.c"
}
XSRETURN_EMPTY;
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_end_line); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_end_line)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_end_line); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_end_line)
{
dVAR; dXSARGS;
if (items != 1)
@@ -289,18 +287,18 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_end_line)
;
char * RETVAL;
dXSTARG;
-#line 89 "XSParagraph.xs"
+#line 87 "XSParagraph.xs"
xspara_set_state (paragraph);
RETVAL = xspara_end_line ();
-#line 296 "XSParagraph.c"
+#line 294 "XSParagraph.c"
sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG;
}
XSRETURN(1);
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_get_pending); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_get_pending)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_get_pending); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_get_pending)
{
dVAR; dXSARGS;
if (items != 1)
@@ -310,18 +308,18 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_get_pending)
;
char * RETVAL;
dXSTARG;
-#line 98 "XSParagraph.xs"
+#line 96 "XSParagraph.xs"
xspara_set_state (paragraph);
RETVAL = xspara_get_pending ();
-#line 317 "XSParagraph.c"
+#line 315 "XSParagraph.c"
sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG;
}
XSRETURN(1);
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_pending_word); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_pending_word)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_add_pending_word); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_add_pending_word)
{
dVAR; dXSARGS;
if (items < 1)
@@ -329,12 +327,12 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_pending_word)
{
SV * paragraph = ST(0)
;
-#line 108 "XSParagraph.xs"
+#line 106 "XSParagraph.xs"
int add_spaces = 0;
char *retval;
-#line 336 "XSParagraph.c"
+#line 334 "XSParagraph.c"
SV * RETVAL;
-#line 111 "XSParagraph.xs"
+#line 109 "XSParagraph.xs"
items -= 1;
if (items > 0)
{
@@ -348,7 +346,7 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_pending_word)
RETVAL = newSVpv (retval, 0);
SvUTF8_on (RETVAL);
-#line 352 "XSParagraph.c"
+#line 350 "XSParagraph.c"
RETVAL = sv_2mortal(RETVAL);
ST(0) = RETVAL;
}
@@ -356,8 +354,8 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_pending_word)
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_end); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_end)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_end); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_end)
{
dVAR; dXSARGS;
if (items != 1)
@@ -365,17 +363,17 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_end)
{
SV * paragraph = ST(0)
;
-#line 131 "XSParagraph.xs"
+#line 129 "XSParagraph.xs"
char *retval;
-#line 371 "XSParagraph.c"
+#line 369 "XSParagraph.c"
SV * RETVAL;
-#line 133 "XSParagraph.xs"
+#line 131 "XSParagraph.xs"
xspara_set_state (paragraph);
retval = xspara_end ();
RETVAL = newSVpv (retval, 0);
SvUTF8_on (RETVAL);
-#line 379 "XSParagraph.c"
+#line 377 "XSParagraph.c"
RETVAL = sv_2mortal(RETVAL);
ST(0) = RETVAL;
}
@@ -383,8 +381,8 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_end)
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_text); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_text)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_add_text); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_add_text)
{
dVAR; dXSARGS;
if (items != 2)
@@ -394,12 +392,12 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_text)
;
SV * text_in = ST(1)
;
-#line 147 "XSParagraph.xs"
+#line 145 "XSParagraph.xs"
char *text;
char *retval;
-#line 401 "XSParagraph.c"
+#line 399 "XSParagraph.c"
SV * RETVAL;
-#line 150 "XSParagraph.xs"
+#line 148 "XSParagraph.xs"
/* Always convert the input to UTF8 with sv_utf8_upgrade, so we can
process it properly in xspara_add_next. */
if (!SvUTF8 (text_in))
@@ -413,7 +411,7 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_text)
RETVAL = newSVpv (retval, 0);
SvUTF8_on (RETVAL);
-#line 417 "XSParagraph.c"
+#line 415 "XSParagraph.c"
RETVAL = sv_2mortal(RETVAL);
ST(0) = RETVAL;
}
@@ -421,8 +419,8 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_text)
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_next); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_next)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_add_next); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_add_next)
{
dVAR; dXSARGS;
if (items < 2)
@@ -432,15 +430,15 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_next)
;
SV * text_in = ST(1)
;
-#line 171 "XSParagraph.xs"
+#line 169 "XSParagraph.xs"
char *text;
STRLEN text_len;
char *retval;
SV *arg_in;
int transparent = 0;
-#line 442 "XSParagraph.c"
+#line 440 "XSParagraph.c"
SV * RETVAL;
-#line 177 "XSParagraph.xs"
+#line 175 "XSParagraph.xs"
items -= 2;
if (items > 0)
{
@@ -462,7 +460,7 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_next)
RETVAL = newSVpv (retval, 0);
SvUTF8_on (RETVAL);
-#line 466 "XSParagraph.c"
+#line 464 "XSParagraph.c"
RETVAL = sv_2mortal(RETVAL);
ST(0) = RETVAL;
}
@@ -470,8 +468,8 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_next)
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_remove_end_sentence); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_remove_end_sentence)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_remove_end_sentence); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_remove_end_sentence)
{
dVAR; dXSARGS;
if (items != 1)
@@ -479,17 +477,17 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_remove_end_sentence)
{
SV * paragraph = ST(0)
;
-#line 206 "XSParagraph.xs"
+#line 204 "XSParagraph.xs"
xspara_set_state (paragraph);
xspara_remove_end_sentence ();
-#line 486 "XSParagraph.c"
+#line 484 "XSParagraph.c"
}
XSRETURN_EMPTY;
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_end_sentence); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_end_sentence)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_add_end_sentence); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_add_end_sentence)
{
dVAR; dXSARGS;
if (items != 2)
@@ -499,22 +497,22 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_add_end_sentence)
;
SV * value = ST(1)
;
-#line 214 "XSParagraph.xs"
+#line 212 "XSParagraph.xs"
int intvalue = 0;
-#line 505 "XSParagraph.c"
-#line 216 "XSParagraph.xs"
+#line 503 "XSParagraph.c"
+#line 214 "XSParagraph.xs"
if (SvOK(value))
intvalue = (int)SvIV(value);
xspara_set_state (paragraph);
xspara_add_end_sentence (intvalue);
-#line 511 "XSParagraph.c"
+#line 509 "XSParagraph.c"
}
XSRETURN_EMPTY;
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_allow_end_sentence); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_allow_end_sentence)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_allow_end_sentence); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_allow_end_sentence)
{
dVAR; dXSARGS;
if (items != 1)
@@ -522,17 +520,17 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_allow_end_sentence)
{
SV * paragraph = ST(0)
;
-#line 225 "XSParagraph.xs"
+#line 223 "XSParagraph.xs"
xspara_set_state (paragraph);
xspara_allow_end_sentence ();
-#line 529 "XSParagraph.c"
+#line 527 "XSParagraph.c"
}
XSRETURN_EMPTY;
}
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_set_space_protection); /* prototype to pass -Wmissing-prototypes */
-XS_EUPXS(XS_Texinfo__XS__XSParagraph_set_space_protection)
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_set_space_protection); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Convert__Paragraph_set_space_protection)
{
dVAR; dXSARGS;
if (items < 2)
@@ -542,17 +540,15 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_set_space_protection)
;
SV * space_protection_in = ST(1)
;
-#line 236 "XSParagraph.xs"
+#line 234 "XSParagraph.xs"
int space_protection = -1;
int ignore_columns = -1;
int keep_end_lines = -1;
int french_spacing = -1;
int double_width_no_break = -1;
SV *arg_in;
-#line 553 "XSParagraph.c"
- char * RETVAL;
- dXSTARG;
-#line 243 "XSParagraph.xs"
+#line 551 "XSParagraph.c"
+#line 241 "XSParagraph.xs"
if (SvOK(space_protection_in))
space_protection = (int)SvIV(space_protection_in);
/* Get optional arguments from stack. */
@@ -587,20 +583,19 @@ XS_EUPXS(XS_Texinfo__XS__XSParagraph_set_space_protection)
}
xspara_set_state (paragraph);
- RETVAL = xspara_set_space_protection
+ xspara_set_space_protection
(space_protection, ignore_columns, keep_end_lines,
french_spacing, double_width_no_break);
-#line 594 "XSParagraph.c"
- sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG;
+#line 590 "XSParagraph.c"
}
- XSRETURN(1);
+ XSRETURN_EMPTY;
}
#ifdef __cplusplus
extern "C"
#endif
-XS_EXTERNAL(boot_Texinfo__XS__XSParagraph); /* prototype to pass -Wmissing-prototypes */
-XS_EXTERNAL(boot_Texinfo__XS__XSParagraph)
+XS_EXTERNAL(boot_Texinfo__Convert__Paragraph); /* prototype to pass -Wmissing-prototypes */
+XS_EXTERNAL(boot_Texinfo__Convert__Paragraph)
{
#if PERL_VERSION_LE(5, 21, 5)
dVAR; dXSARGS;
@@ -624,21 +619,21 @@ XS_EXTERNAL(boot_Texinfo__XS__XSParagraph)
# endif
#endif
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::init", XS_Texinfo__XS__XSParagraph_init, file, "$$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::set_state", XS_Texinfo__XS__XSParagraph_set_state, file, "$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::new", XS_Texinfo__XS__XSParagraph_new, file, "$;@");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::end_line_count", XS_Texinfo__XS__XSParagraph_end_line_count, file, "$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::_end_line", XS_Texinfo__XS__XSParagraph__end_line, file, "$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::end_line", XS_Texinfo__XS__XSParagraph_end_line, file, "$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::get_pending", XS_Texinfo__XS__XSParagraph_get_pending, file, "$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::add_pending_word", XS_Texinfo__XS__XSParagraph_add_pending_word, file, "$;@");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::end", XS_Texinfo__XS__XSParagraph_end, file, "$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::add_text", XS_Texinfo__XS__XSParagraph_add_text, file, "$$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::add_next", XS_Texinfo__XS__XSParagraph_add_next, file, "$$;@");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::remove_end_sentence", XS_Texinfo__XS__XSParagraph_remove_end_sentence, file, "$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::add_end_sentence", XS_Texinfo__XS__XSParagraph_add_end_sentence, file, "$$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::allow_end_sentence", XS_Texinfo__XS__XSParagraph_allow_end_sentence, file, "$");
- (void)newXSproto_portable("Texinfo::XS::XSParagraph::set_space_protection", XS_Texinfo__XS__XSParagraph_set_space_protection, file, "$$;@");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::init", XS_Texinfo__Convert__Paragraph_init, file, "$$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::set_state", XS_Texinfo__Convert__Paragraph_set_state, file, "$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::new", XS_Texinfo__Convert__Paragraph_new, file, "$;@");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::end_line_count", XS_Texinfo__Convert__Paragraph_end_line_count, file, "$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::_end_line", XS_Texinfo__Convert__Paragraph__end_line, file, "$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::end_line", XS_Texinfo__Convert__Paragraph_end_line, file, "$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::get_pending", XS_Texinfo__Convert__Paragraph_get_pending, file, "$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::add_pending_word", XS_Texinfo__Convert__Paragraph_add_pending_word, file, "$;@");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::end", XS_Texinfo__Convert__Paragraph_end, file, "$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::add_text", XS_Texinfo__Convert__Paragraph_add_text, file, "$$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::add_next", XS_Texinfo__Convert__Paragraph_add_next, file, "$$;@");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::remove_end_sentence", XS_Texinfo__Convert__Paragraph_remove_end_sentence, file, "$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::add_end_sentence", XS_Texinfo__Convert__Paragraph_add_end_sentence, file, "$$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::allow_end_sentence", XS_Texinfo__Convert__Paragraph_allow_end_sentence, file, "$");
+ (void)newXSproto_portable("Texinfo::Convert::Paragraph::set_space_protection", XS_Texinfo__Convert__Paragraph_set_space_protection, file, "$$;@");
#if PERL_VERSION_LE(5, 21, 5)
# if PERL_VERSION_GE(5, 9, 0)
if (PL_unitcheckav)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.xs b/macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.xs
index 5a0b117e09..9c17032cdf 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.xs
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/XSParagraph.xs
@@ -11,9 +11,9 @@
#include "xspara.h"
-MODULE = Texinfo::XS::XSParagraph PACKAGE = Texinfo::XS::XSParagraph PREFIX = xspara_
+MODULE = Texinfo::Convert::Paragraph PACKAGE = Texinfo::Convert::Paragraph PREFIX = xspara_
-# Copyright 2010-2019 Free Software Foundation, Inc.
+# Copyright 2010-2020 Free Software Foundation, Inc.
#
# 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
@@ -46,7 +46,6 @@ SV *
xspara_new (class, ...)
SV * class
PREINIT:
- HV *pkg;
HV *conf = 0;
int id;
CODE:
@@ -58,9 +57,8 @@ xspara_new (class, ...)
}
id = xspara_new (conf);
- /* Create a blessed integer, which the other functions
+ /* Create an integer, which the other functions
need as their first argument. */
- pkg = gv_stashpv ("Texinfo::Convert::XSParagraph::XSParagraph", 0);
RETVAL = newSViv (id);
OUTPUT:
RETVAL
@@ -228,7 +226,7 @@ xspara_allow_end_sentence (paragraph)
# Optional parameters are IGNORE_COLUMNS, KEEP_END_LINES, FRENCHSPACING,
# DOUBLE_WIDTH_NO_BREAK.
# Pass them to the C function as -1 if not given or undef.
-char *
+void
xspara_set_space_protection (paragraph, space_protection_in, ...)
SV *paragraph
SV * space_protection_in
@@ -274,9 +272,7 @@ xspara_set_space_protection (paragraph, space_protection_in, ...)
}
xspara_set_state (paragraph);
- RETVAL = xspara_set_space_protection
+ xspara_set_space_protection
(space_protection, ignore_columns, keep_end_lines,
french_spacing, double_width_no_break);
- OUTPUT:
- RETVAL
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/aclocal.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/aclocal.m4
index 4eb69bb7f4..ab685d5c44 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/aclocal.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/aclocal.m4
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.3 -*- Autoconf -*-
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,24 +14,24 @@
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
-[m4_warning([this file was generated for autoconf 2.69.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,
+[m4_warning([this file was generated for autoconf 2.71.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
-# intlmacosx.m4 serial 6 (gettext-0.20)
-dnl Copyright (C) 2004-2014, 2016, 2019 Free Software Foundation, Inc.
+# intlmacosx.m4 serial 8 (gettext-0.20.2)
+dnl Copyright (C) 2004-2014, 2016, 2019-2020 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
dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
+dnl the GNU General Public License or the GNU Lesser General Public
dnl License but which still want to provide support for the GNU gettext
dnl functionality.
dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
+dnl by the GNU Lesser General Public License, and the rest of the GNU
dnl gettext package is covered by the GNU General Public License.
dnl They are *not* in the public domain.
@@ -55,21 +55,15 @@ AC_DEFUN([gt_INTL_MACOSX],
AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], [1],
[Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in the CoreFoundation framework.])
fi
- dnl Check for API introduced in Mac OS X 10.5.
- AC_CACHE_CHECK([for CFLocaleCopyCurrent], [gt_cv_func_CFLocaleCopyCurrent],
- [gt_save_LIBS="$LIBS"
- LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <CoreFoundation/CFLocale.h>]],
- [[CFLocaleCopyCurrent();]])],
- [gt_cv_func_CFLocaleCopyCurrent=yes],
- [gt_cv_func_CFLocaleCopyCurrent=no])
- LIBS="$gt_save_LIBS"])
- if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
- AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], [1],
- [Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the CoreFoundation framework.])
- fi
+ dnl Don't check for the API introduced in Mac OS X 10.5, CFLocaleCopyCurrent,
+ dnl because in macOS 10.13.4 it has the following behaviour:
+ dnl When two or more languages are specified in the
+ dnl "System Preferences > Language & Region > Preferred Languages" panel,
+ dnl it returns en_CC where CC is the territory (even when English is not among
+ dnl the preferred languages!). What we want instead is what
+ dnl CFLocaleCopyCurrent returned in earlier macOS releases and what
+ dnl CFPreferencesCopyAppValue still returns, namely ll_CC where ll is the
+ dnl first among the preferred languages and CC is the territory.
AC_CACHE_CHECK([for CFLocaleCopyPreferredLanguages], [gt_cv_func_CFLocaleCopyPreferredLanguages],
[gt_save_LIBS="$LIBS"
LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
@@ -86,14 +80,13 @@ AC_DEFUN([gt_INTL_MACOSX],
fi
INTL_MACOSX_LIBS=
if test $gt_cv_func_CFPreferencesCopyAppValue = yes \
- || test $gt_cv_func_CFLocaleCopyCurrent = yes \
|| test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then
INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
fi
AC_SUBST([INTL_MACOSX_LIBS])
])
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -108,7 +101,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION],
[am__api_version='1.16'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.3], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
@@ -124,14 +117,14 @@ m4_define([_AM_AUTOCONF_VERSION], [])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.3])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -183,7 +176,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -214,7 +207,7 @@ AC_CONFIG_COMMANDS_PRE(
Usually this means the macro was only invoked conditionally.]])
fi])])
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -405,7 +398,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -444,7 +437,9 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
done
if test $am_rc -ne 0; then
AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
- for automatic dependency tracking. Try re-running configure with the
+ for automatic dependency tracking. If GNU make was not used, consider
+ re-running the configure script with MAKE="gmake" (or whatever is
+ necessary). You can also try re-running configure with the
'--disable-dependency-tracking' option to at least be able to build
the package (albeit without support for automatic dependency tracking).])
fi
@@ -471,7 +466,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
# Do all the work for Automake. -*- Autoconf -*-
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -668,7 +663,7 @@ for _am_header in $config_headers :; do
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -689,7 +684,7 @@ if test x"${install_sh+set}" != xset; then
fi
AC_SUBST([install_sh])])
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -710,7 +705,7 @@ AC_SUBST([am__leading_dot])])
# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -753,7 +748,7 @@ AC_SUBST([am__quote])])
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -774,12 +769,7 @@ AC_DEFUN([AM_MISSING_HAS_RUN],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
AC_REQUIRE_AUX_FILE([missing])dnl
if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
+ MISSING="\${SHELL} '$am_aux_dir/missing'"
fi
# Use eval to expand $SHELL
if eval "$MISSING --is-lightweight"; then
@@ -792,7 +782,7 @@ fi
# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -821,7 +811,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -868,7 +858,7 @@ AC_LANG_POP([C])])
# For backward compatibility.
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -887,7 +877,7 @@ AC_DEFUN([AM_RUN_LOG],
# Check to make sure that the build environment is sane. -*- Autoconf -*-
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -968,7 +958,7 @@ AC_CONFIG_COMMANDS_PRE(
rm -f conftest.file
])
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1028,7 +1018,7 @@ AC_SUBST([AM_BACKSLASH])dnl
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
])
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1056,7 +1046,7 @@ fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1075,7 +1065,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1223,13 +1213,13 @@ m4_include([gnulib/m4/host-cpu-c-abi.m4])
m4_include([gnulib/m4/iconv.m4])
m4_include([gnulib/m4/include_next.m4])
m4_include([gnulib/m4/intmax_t.m4])
+m4_include([gnulib/m4/inttypes.m4])
m4_include([gnulib/m4/inttypes_h.m4])
m4_include([gnulib/m4/lib-ld.m4])
m4_include([gnulib/m4/lib-link.m4])
m4_include([gnulib/m4/lib-prefix.m4])
m4_include([gnulib/m4/libtool.m4])
m4_include([gnulib/m4/limits-h.m4])
-m4_include([gnulib/m4/longlong.m4])
m4_include([gnulib/m4/ltoptions.m4])
m4_include([gnulib/m4/ltsugar.m4])
m4_include([gnulib/m4/ltversion.m4])
@@ -1261,3 +1251,4 @@ m4_include([gnulib/m4/wchar_h.m4])
m4_include([gnulib/m4/wchar_t.m4])
m4_include([gnulib/m4/wint_t.m4])
m4_include([gnulib/m4/xsize.m4])
+m4_include([gnulib/m4/zzgnulib.m4])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/compile b/macros/texinfo/texinfo/tp/Texinfo/XS/compile
index 99e50524b3..23fcba0113 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/compile
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/compile
@@ -3,7 +3,7 @@
scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
@@ -53,7 +53,7 @@ func_file_conv ()
MINGW*)
file_conv=mingw
;;
- CYGWIN*)
+ CYGWIN* | MSYS*)
file_conv=cygwin
;;
*)
@@ -67,7 +67,7 @@ func_file_conv ()
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
- cygwin/*)
+ cygwin/* | msys/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/config.in b/macros/texinfo/texinfo/tp/Texinfo/XS/config.in
index f884481900..6e7072a7b4 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/config.in
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/config.in
@@ -18,12 +18,7 @@
/* Define to the number of bits in type 'wint_t'. */
#undef BITSIZEOF_WINT_T
-/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
- systems. This function is required for `alloca.c' support on those systems.
- */
-#undef CRAY_STACKSEG_END
-
-/* Define to 1 if using `alloca.c'. */
+/* Define to 1 if using 'alloca.c'. */
#undef C_ALLOCA
/* Define as the bit index in the word where to find bit 0 of the exponent of
@@ -77,17 +72,12 @@
may be supplied by this distribution. */
#undef HAVE_ALLOCA
-/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
- */
+/* Define to 1 if <alloca.h> works. */
#undef HAVE_ALLOCA_H
/* Define to 1 if you have the <bp-sym.h> header file. */
#undef HAVE_BP_SYM_H
-/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the
- CoreFoundation framework. */
-#undef HAVE_CFLOCALECOPYCURRENT
-
/* Define to 1 if you have the Mac OS X function
CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */
#undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES
@@ -103,6 +93,10 @@
*/
#undef HAVE_DCGETTEXT
+/* Define to 1 if you have the declaration of `fcloseall', and to 0 if you
+ don't. */
+#undef HAVE_DECL_FCLOSEALL
+
/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
don't. */
#undef HAVE_DECL_GETC_UNLOCKED
@@ -123,6 +117,10 @@
don't. */
#undef HAVE_DECL_STRNLEN
+/* Define to 1 if you have the declaration of `wcsdup', and to 0 if you don't.
+ */
+#undef HAVE_DECL_WCSDUP
+
/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you
don't. */
#undef HAVE_DECL__SNPRINTF
@@ -171,8 +169,8 @@
/* Define to 1 if you have the `mbrtowc' function. */
#undef HAVE_MBRTOWC
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
+/* Define to 1 if you have the <minix/config.h> header file. */
+#undef HAVE_MINIX_CONFIG_H
/* Define to 1 if you have the `mprotect' function. */
#undef HAVE_MPROTECT
@@ -197,6 +195,10 @@
buffer had been large enough. */
#undef HAVE_SNPRINTF_RETVAL_C99
+/* Define if the string produced by the snprintf function is always NUL
+ terminated. */
+#undef HAVE_SNPRINTF_TRUNCATION_C99
+
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
@@ -204,6 +206,9 @@
uintmax_t. */
#undef HAVE_STDINT_H_WITH_UINTMAX
+/* Define to 1 if you have the <stdio.h> header file. */
+#undef HAVE_STDIO_H
+
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
@@ -332,7 +337,9 @@
STACK_DIRECTION = 0 => direction of growth unknown */
#undef STACK_DIRECTION
-/* Define to 1 if you have the ANSI C header files. */
+/* Define to 1 if all of the C90 standard headers exist (not just the ones
+ required in a freestanding environment). This macro is provided for
+ backward compatibility; new code need not use it. */
#undef STDC_HEADERS
/* Enable extensions on AIX 3, Interix. */
@@ -343,19 +350,44 @@
#ifndef _DARWIN_C_SOURCE
# undef _DARWIN_C_SOURCE
#endif
+/* Enable general extensions on Solaris. */
+#ifndef __EXTENSIONS__
+# undef __EXTENSIONS__
+#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
-/* Enable NetBSD extensions on NetBSD. */
+/* Enable X/Open compliant socket functions that do not require linking
+ with -lxnet on HP-UX 11.11. */
+#ifndef _HPUX_ALT_XOPEN_SOCKET_API
+# undef _HPUX_ALT_XOPEN_SOCKET_API
+#endif
+/* Identify the host operating system as Minix.
+ This macro does not affect the system headers' behavior.
+ A future release of Autoconf may stop defining this macro. */
+#ifndef _MINIX
+# undef _MINIX
+#endif
+/* Enable general extensions on NetBSD.
+ Enable NetBSD compatibility extensions on Minix. */
#ifndef _NETBSD_SOURCE
# undef _NETBSD_SOURCE
#endif
-/* Enable OpenBSD extensions on NetBSD. */
+/* Enable OpenBSD compatibility extensions on NetBSD.
+ Oddly enough, this does nothing on OpenBSD. */
#ifndef _OPENBSD_SOURCE
# undef _OPENBSD_SOURCE
#endif
-/* Enable threading extensions on Solaris. */
+/* Define to 1 if needed for POSIX-compatible behavior. */
+#ifndef _POSIX_SOURCE
+# undef _POSIX_SOURCE
+#endif
+/* Define to 2 if needed for POSIX-compatible behavior. */
+#ifndef _POSIX_1_SOURCE
+# undef _POSIX_1_SOURCE
+#endif
+/* Enable POSIX-compatible threading on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
@@ -391,21 +423,11 @@
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
-/* Enable X/Open extensions if necessary. HP-UX 11.11 defines
- mbstate_t only if _XOPEN_SOURCE is defined to 500, regardless of
- whether compiling with -Ae or -D_HPUX_SOURCE=1. */
+/* Enable X/Open extensions. Define to 500 only if necessary
+ to make mbstate_t available. */
#ifndef _XOPEN_SOURCE
# undef _XOPEN_SOURCE
#endif
-/* Enable X/Open compliant socket functions that do not require linking
- with -lxnet on HP-UX 11.11. */
-#ifndef _HPUX_ALT_XOPEN_SOCKET_API
-# undef _HPUX_ALT_XOPEN_SOCKET_API
-#endif
-/* Enable general extensions on Solaris. */
-#ifndef __EXTENSIONS__
-# undef __EXTENSIONS__
-#endif
/* Version number of package */
@@ -431,23 +453,40 @@
# endif
#endif
-/* Define to 1 if on MINIX. */
-#undef _MINIX
+/* True if the compiler says it groks GNU C version MAJOR.MINOR. */
+#if defined __GNUC__ && defined __GNUC_MINOR__
+# define _GL_GNUC_PREREQ(major, minor) \
+ ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
+#else
+# define _GL_GNUC_PREREQ(major, minor) 0
+#endif
+
-/* Define to 1 to make NetBSD features available. MINIX 3 needs this. */
-#undef _NETBSD_SOURCE
+/* Define to enable the declarations of ISO C 11 types and functions. */
+#undef _ISOC11_SOURCE
/* The _Noreturn keyword of C11. */
#ifndef _Noreturn
# if (defined __cplusplus \
&& ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
- || (defined _MSC_VER && 1900 <= _MSC_VER)))
+ || (defined _MSC_VER && 1900 <= _MSC_VER)) \
+ && 0)
+ /* [[noreturn]] is not practically usable, because with it the syntax
+ extern _Noreturn void func (...);
+ would not be valid; such a declaration would only be valid with 'extern'
+ and '_Noreturn' swapped, or without the 'extern' keyword. However, some
+ AIX system header files and several gnulib header files use precisely
+ this syntax with 'extern'. */
# define _Noreturn [[noreturn]]
# elif ((!defined __cplusplus || defined __clang__) \
- && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
- || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
+ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
+ || (!defined __STRICT_ANSI__ \
+ && (_GL_GNUC_PREREQ (4, 7) \
+ || (defined __apple_build_version__ \
+ ? 6000000 <= __apple_build_version__ \
+ : 3 < __clang_major__ + (5 <= __clang_minor__))))))
/* _Noreturn works as-is. */
-# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
+# elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
# define _Noreturn __attribute__ ((__noreturn__))
# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
# define _Noreturn __declspec (noreturn)
@@ -457,13 +496,6 @@
#endif
-/* Define to 2 if the system does not provide POSIX.1 features except with
- this defined. */
-#undef _POSIX_1_SOURCE
-
-/* Define to 1 if you need to in order for 'stat' and other things to work. */
-#undef _POSIX_SOURCE
-
/* For standard stat data types on VMS. */
#undef _USE_STD_STAT
@@ -478,7 +510,7 @@
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
@@ -500,6 +532,218 @@
#define _GL_ASYNC_SAFE
+/* Attributes. */
+#if (defined __has_attribute \
+ && (!defined __clang_minor__ \
+ || 3 < __clang_major__ + (5 <= __clang_minor__)))
+# define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
+#else
+# define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
+# define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
+# define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
+# define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
+# define _GL_ATTR_diagnose_if 0
+# define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
+# define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
+# define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
+# ifdef _ICC
+# define _GL_ATTR_may_alias 0
+# else
+# define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
+# endif
+# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
+# define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
+# define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
+# define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
+# define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
+# define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
+# define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
+# define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
+# define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
+#endif
+
+
+#if _GL_HAS_ATTRIBUTE (alloc_size)
+# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
+#else
+# define _GL_ATTRIBUTE_ALLOC_SIZE(args)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (always_inline)
+# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
+#else
+# define _GL_ATTRIBUTE_ALWAYS_INLINE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (artificial)
+# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
+#else
+# define _GL_ATTRIBUTE_ARTIFICIAL
+#endif
+
+/* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
+ <https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
+ Also, Oracle Studio 12.6 requires 'cold' not '__cold__'. */
+#if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
+# ifndef __SUNPRO_C
+# define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
+# else
+# define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
+# endif
+#else
+# define _GL_ATTRIBUTE_COLD
+#endif
+
+#if _GL_HAS_ATTRIBUTE (const)
+# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
+#else
+# define _GL_ATTRIBUTE_CONST
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
+#elif _GL_HAS_ATTRIBUTE (deprecated)
+# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
+#else
+# define _GL_ATTRIBUTE_DEPRECATED
+#endif
+
+#if _GL_HAS_ATTRIBUTE (error)
+# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
+# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
+#elif _GL_HAS_ATTRIBUTE (diagnose_if)
+# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
+# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
+#else
+# define _GL_ATTRIBUTE_ERROR(msg)
+# define _GL_ATTRIBUTE_WARNING(msg)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (externally_visible)
+# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
+#else
+# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
+#endif
+
+/* FALLTHROUGH is special, because it always expands to something. */
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
+#elif _GL_HAS_ATTRIBUTE (fallthrough)
+# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
+#else
+# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (format)
+# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+#else
+# define _GL_ATTRIBUTE_FORMAT(spec)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (leaf)
+# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
+#else
+# define _GL_ATTRIBUTE_LEAF
+#endif
+
+/* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK. */
+#if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
+# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
+#else
+# define _GL_ATTRIBUTE_MAY_ALIAS
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
+#elif _GL_HAS_ATTRIBUTE (unused)
+# define _GL_ATTRIBUTE_MAYBE_UNUSED __attribute__ ((__unused__))
+#else
+# define _GL_ATTRIBUTE_MAYBE_UNUSED
+#endif
+/* Earlier spellings of this macro. */
+#define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
+#define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
+
+#if _GL_HAS_ATTRIBUTE (malloc)
+# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
+#else
+# define _GL_ATTRIBUTE_MALLOC
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
+#elif _GL_HAS_ATTRIBUTE (warn_unused_result)
+# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
+#else
+# define _GL_ATTRIBUTE_NODISCARD
+#endif
+
+#if _GL_HAS_ATTRIBUTE (noinline)
+# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
+#else
+# define _GL_ATTRIBUTE_NOINLINE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (nonnull)
+# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
+#else
+# define _GL_ATTRIBUTE_NONNULL(args)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (nonstring)
+# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
+#else
+# define _GL_ATTRIBUTE_NONSTRING
+#endif
+
+/* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead. */
+
+#if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
+# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
+#else
+# define _GL_ATTRIBUTE_NOTHROW
+#endif
+
+#if _GL_HAS_ATTRIBUTE (packed)
+# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
+#else
+# define _GL_ATTRIBUTE_PACKED
+#endif
+
+#if _GL_HAS_ATTRIBUTE (pure)
+# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+#else
+# define _GL_ATTRIBUTE_PURE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (returns_nonnull)
+# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
+#else
+# define _GL_ATTRIBUTE_RETURNS_NONNULL
+#endif
+
+#if _GL_HAS_ATTRIBUTE (sentinel)
+# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
+#else
+# define _GL_ATTRIBUTE_SENTINEL(pos)
+#endif
+
+
+/* To support C++ as well as C, use _GL_UNUSED_LABEL with trailing ';'. */
+#if !defined __cplusplus || _GL_GNUC_PREREQ (4, 5)
+# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_MAYBE_UNUSED
+#else
+# define _GL_UNUSED_LABEL
+#endif
+
+
/* 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
@@ -524,7 +768,7 @@
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
@@ -617,10 +861,26 @@
# define __GNUC_STDC_INLINE__ 1
#endif
+/* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
+ n1 and n2 are expressions without side effects, that evaluate to real
+ numbers (excluding NaN).
+ It returns
+ 1 if n1 > n2
+ 0 if n1 == n2
+ -1 if n1 < n2
+ The naïve code (n1 > n2 ? 1 : n1 < n2 ? -1 : 0) produces a conditional
+ jump with nearly all GCC versions up to GCC 10.
+ This variant (n1 < n2 ? -1 : n1 > n2) produces a conditional with many
+ GCC versions up to GCC 9.
+ The better code (n1 > n2) - (n1 < n2) from Hacker's Delight § 2-9
+ avoids conditional jumps in all GCC versions >= 3.4. */
+#define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
+
+
/* Define to `int' if <sys/types.h> does not define. */
#undef mode_t
-/* Define to `int' if <sys/types.h> does not define. */
+/* Define as a signed integer type capable of holding a process identifier. */
#undef pid_t
/* Define as the type of the result of subtracting two pointers, if the system
@@ -629,14 +889,15 @@
/* Define to the equivalent of the C99 'restrict' keyword, or to
nothing if this is not supported. Do not define if restrict is
- supported directly. */
+ supported only directly. */
#undef restrict
-/* Work around a bug in Sun C++: it does not support _Restrict or
- __restrict__, even though the corresponding Sun C compiler ends up with
- "#define restrict _Restrict" or "#define restrict __restrict__" in the
- previous line. Perhaps some future version of Sun C++ will work with
- restrict; if so, hopefully it defines __RESTRICT like Sun C does. */
-#if defined __SUNPRO_CC && !defined __RESTRICT
+/* Work around a bug in older versions of Sun C++, which did not
+ #define __restrict__ or support _Restrict or __restrict__
+ even though the corresponding Sun C compiler ended up with
+ "#define restrict _Restrict" or "#define restrict __restrict__"
+ in the previous line. This workaround can be removed once
+ we assume Oracle Developer Studio 12.5 (2016) or later. */
+#if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
# define _Restrict
# define __restrict__
#endif
@@ -646,47 +907,3 @@
/* Define as a signed type of the same size as size_t. */
#undef ssize_t
-
-/* Define as a marker that can be attached to declarations that might not
- be used. This helps to reduce warnings, such as from
- GCC -Wunused-parameter. */
-#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-# define _GL_UNUSED __attribute__ ((__unused__))
-#else
-# define _GL_UNUSED
-#endif
-/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name
- is a misnomer outside of parameter lists. */
-#define _UNUSED_PARAMETER_ _GL_UNUSED
-
-/* gcc supports the "unused" attribute on possibly unused labels, and
- g++ has since version 4.5. Note to support C++ as well as C,
- _GL_UNUSED_LABEL should be used with a trailing ; */
-#if !defined __cplusplus || __GNUC__ > 4 \
- || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)
-# define _GL_UNUSED_LABEL _GL_UNUSED
-#else
-# define _GL_UNUSED_LABEL
-#endif
-
-/* The __pure__ attribute was added in gcc 2.96. */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
-#else
-# define _GL_ATTRIBUTE_PURE /* empty */
-#endif
-
-/* The __const__ attribute was added in gcc 2.95. */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
-# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
-#else
-# define _GL_ATTRIBUTE_CONST /* empty */
-#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
-
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/config.rpath b/macros/texinfo/texinfo/tp/Texinfo/XS/config.rpath
index be202c1a9e..4b7dc49c26 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/config.rpath
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/config.rpath
@@ -2,7 +2,7 @@
# Output a system dependent set of variables, describing how to set the
# run time search path of shared libraries in an executable.
#
-# Copyright 1996-2019 Free Software Foundation, Inc.
+# Copyright 1996-2021 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
#
@@ -371,7 +371,7 @@ else
hardcode_direct=yes
hardcode_minus_L=yes
;;
- freebsd* | dragonfly*)
+ freebsd* | dragonfly* | midnightbsd*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
@@ -547,7 +547,7 @@ case "$host_os" in
freebsd[23].*)
library_names_spec='$libname$shrext$versuffix'
;;
- freebsd* | dragonfly*)
+ freebsd* | dragonfly* | midnightbsd*)
library_names_spec='$libname$shrext'
;;
gnu*)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/configure b/macros/texinfo/texinfo/tp/Texinfo/XS/configure
index 892ad6dc17..6b1cdbec48 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/configure
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/configure
@@ -1,9 +1,10 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for texinfo 0.
+# Generated by GNU Autoconf 2.71 for texinfo 0.
#
#
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
+# Inc.
#
#
# This configure script is free software; the Free Software Foundation
@@ -14,14 +15,16 @@
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
-else
+else $as_nop
case `(set -o) 2>/dev/null` in #(
*posix*) :
set -o posix ;; #(
@@ -31,46 +34,46 @@ esac
fi
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
as_nl='
'
export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
+IFS=" "" $as_nl"
+
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi
+if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2) ; then :; else exec 2>/dev/null; fi
# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
PATH_SEPARATOR=:
(PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
(PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
@@ -79,13 +82,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
fi
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
# Find who we are. Look in the path if we contain no directory separator.
as_myself=
case $0 in #((
@@ -94,8 +90,12 @@ case $0 in #((
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ test -r "$as_dir$0" && as_myself=$as_dir$0 && break
done
IFS=$as_save_IFS
@@ -107,30 +107,10 @@ if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
exit 1
fi
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
# Use a proper internal environment variable to ensure we don't fall
# into an infinite loop, continuously re-executing ourselves.
@@ -152,20 +132,22 @@ esac
exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
# Admittedly, this is quite paranoid, since all the known shells bail
# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
fi
# We don't want this to propagate to other subprocesses.
{ _as_can_reexec=; unset _as_can_reexec;}
if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+ as_bourne_compatible="as_nop=:
+if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
# is contrary to our usage. Disable this feature.
alias -g '\${1+\"\$@\"}'='\"\$@\"'
setopt NO_GLOB_SUBST
-else
+else \$as_nop
case \`(set -o) 2>/dev/null\` in #(
*posix*) :
set -o posix ;; #(
@@ -185,12 +167,15 @@ as_fn_success || { exitcode=1; echo as_fn_success failed.; }
as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+if ( set x; as_fn_ret_success y && test x = \"\$1\" )
+then :
-else
+else \$as_nop
exitcode=1; echo positional parameters were not saved.
fi
test x\$exitcode = x0 || exit 1
+blah=\$(echo \$(echo blah))
+test x\"\$blah\" = xblah || exit 1
test -x / || exit 1"
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
@@ -205,30 +190,38 @@ test \$(( 1 + 1 )) = 2 || exit 1
PATH=/empty FPATH=/empty; export PATH FPATH
test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
|| test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"
- if (eval "$as_required") 2>/dev/null; then :
+ if (eval "$as_required") 2>/dev/null
+then :
as_have_required=yes
-else
+else $as_nop
as_have_required=no
fi
- if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+ if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null
+then :
-else
+else $as_nop
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
as_found=false
for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
as_found=:
case $as_dir in #(
/*)
for as_base in sh bash ksh sh5; do
# Try only shells that exist, to save several forks.
- as_shell=$as_dir/$as_base
+ as_shell=$as_dir$as_base
if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
CONFIG_SHELL=$as_shell as_have_required=yes
- if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null
+then :
break 2
fi
fi
@@ -236,14 +229,21 @@ fi
esac
as_found=false
done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
- CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+ if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+ as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
+ CONFIG_SHELL=$SHELL as_have_required=yes
+fi
+fi
- if test "x$CONFIG_SHELL" != x; then :
+ if test "x$CONFIG_SHELL" != x
+then :
export CONFIG_SHELL
# We cannot yet assume a decent shell, so we have to provide a
# neutralization value for shells without unset; and this also
@@ -261,18 +261,19 @@ esac
exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
# Admittedly, this is quite paranoid, since all the known shells bail
# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
exit 255
fi
- if test x$as_have_required = xno; then :
- $as_echo "$0: This script requires a shell more modern than all"
- $as_echo "$0: the shells that I found on your system."
- if test x${ZSH_VERSION+set} = xset ; then
- $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
- $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+ if test x$as_have_required = xno
+then :
+ printf "%s\n" "$0: This script requires a shell more modern than all"
+ printf "%s\n" "$0: the shells that I found on your system."
+ if test ${ZSH_VERSION+y} ; then
+ printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+ printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later."
else
- $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
+ printf "%s\n" "$0: Please tell bug-autoconf@gnu.org about your system,
$0: including any error possibly output before this
$0: message. Then install a modern shell, or manually run
$0: the script under such a shell if you do have one."
@@ -299,6 +300,7 @@ as_fn_unset ()
}
as_unset=as_fn_unset
+
# as_fn_set_status STATUS
# -----------------------
# Set $? to STATUS, without forking.
@@ -316,6 +318,14 @@ as_fn_exit ()
as_fn_set_status $1
exit $1
} # as_fn_exit
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+ return $?
+}
+as_nop=as_fn_nop
# as_fn_mkdir_p
# -------------
@@ -330,7 +340,7 @@ as_fn_mkdir_p ()
as_dirs=
while :; do
case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
*) as_qdir=$as_dir;;
esac
as_dirs="'$as_qdir' $as_dirs"
@@ -339,7 +349,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_dir" : 'X\(//\)[^/]' \| \
X"$as_dir" : 'X\(//\)$' \| \
X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -378,12 +388,13 @@ as_fn_executable_p ()
# advantage of any shell optimizations that allow amortized linear growth over
# repeated appends, instead of the typical quadratic growth present in naive
# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
eval 'as_fn_append ()
{
eval $1+=\$2
}'
-else
+else $as_nop
as_fn_append ()
{
eval $1=\$$1\$2
@@ -395,18 +406,27 @@ fi # as_fn_append
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
}'
-else
+else $as_nop
as_fn_arith ()
{
as_val=`expr "$@" || test $? -eq 1`
}
fi # as_fn_arith
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+ return $?
+}
+as_nop=as_fn_nop
# as_fn_error STATUS ERROR [LINENO LOG_FD]
# ----------------------------------------
@@ -418,9 +438,9 @@ as_fn_error ()
as_status=$1; test $as_status -eq 0 && as_status=1
if test "$4"; then
as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
fi
- $as_echo "$as_me: error: $2" >&2
+ printf "%s\n" "$as_me: error: $2" >&2
as_fn_exit $as_status
} # as_fn_error
@@ -447,7 +467,7 @@ as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
@@ -491,7 +511,7 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
s/-\n.*//
' >$as_me.lineno &&
chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+ { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
# If we had to re-execute with $CONFIG_SHELL, we're ensured to have
# already done that, so ensure we don't try to do so again and fall
@@ -505,6 +525,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
exit
}
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
ECHO_C= ECHO_N= ECHO_T=
case `echo -n x` in #(((((
-n*)
@@ -518,6 +542,13 @@ case `echo -n x` in #(((((
ECHO_N='-n';;
esac
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n. New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
+
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
rm -f conf$$.dir/conf$$.file
@@ -594,43 +625,38 @@ PACKAGE_URL=''
# Factoring default headers for most tests.
ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
+#include <stddef.h>
+#ifdef HAVE_STDIO_H
+# include <stdio.h>
#endif
-#ifdef STDC_HEADERS
+#ifdef HAVE_STDLIB_H
# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-# endif
#endif
#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-# include <memory.h>
-# endif
# include <string.h>
#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
#ifdef HAVE_INTTYPES_H
# include <inttypes.h>
#endif
#ifdef HAVE_STDINT_H
# include <stdint.h>
#endif
+#ifdef HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#endif"
+ac_header_c_list=
gt_needs=
-ac_func_list=
-ac_header_list=
+ac_func_c_list=
ac_subst_vars='gltests_LTLIBOBJS
gltests_LIBOBJS
gl_LTLIBOBJS
@@ -639,17 +665,6 @@ am__EXEEXT_FALSE
am__EXEEXT_TRUE
LTLIBOBJS
LIBOBJS
-PERL_CONF_privlibexp
-PERL_CONF_archlibexp
-PERL_CONF_libperl
-PERL_CONF_ccdlflags
-PERL_CONF_optimize
-PERL_CONF_cccdlflags
-PERL_CONF_ccflags
-PERL_EXT_CC
-PERL_EXT_LDFLAGS
-PERL_EXT_CPPFLAGS
-PERL_EXT_CFLAGS
HAVE_ICONV_FALSE
HAVE_ICONV_TRUE
HOST_NEEDS_NO_UNDEFINED_FALSE
@@ -676,6 +691,7 @@ HAVE_CRTDEFS_H
HAVE_WINT_T
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H
NEXT_WCHAR_H
+REPLACE_WCSTOK
REPLACE_WCSFTIME
REPLACE_WCSWIDTH
REPLACE_WCWIDTH
@@ -691,6 +707,7 @@ REPLACE_WCTOB
REPLACE_BTOWC
REPLACE_MBSTATE_T
HAVE_DECL_WCWIDTH
+HAVE_DECL_WCSDUP
HAVE_DECL_WCTOB
HAVE_WCSFTIME
HAVE_WCSWIDTH
@@ -717,6 +734,7 @@ HAVE_WCSCPY
HAVE_WCSNLEN
HAVE_WCSLEN
HAVE_WMEMSET
+HAVE_WMEMPCPY
HAVE_WMEMMOVE
HAVE_WMEMCPY
HAVE_WMEMCMP
@@ -730,6 +748,7 @@ HAVE_MBRLEN
HAVE_MBRTOWC
HAVE_MBSINIT
HAVE_BTOWC
+GNULIB_MDA_WCSDUP
GNULIB_WCSFTIME
GNULIB_WCSWIDTH
GNULIB_WCSTOK
@@ -755,6 +774,7 @@ GNULIB_WCSCPY
GNULIB_WCSNLEN
GNULIB_WCSLEN
GNULIB_WMEMSET
+GNULIB_WMEMPCPY
GNULIB_WMEMMOVE
GNULIB_WMEMCPY
GNULIB_WMEMCMP
@@ -779,34 +799,6 @@ NEXT_AS_FIRST_DIRECTIVE_STRING_H
NEXT_STRING_H
NEXT_AS_FIRST_DIRECTIVE_STDIO_H
NEXT_STDIO_H
-GL_GENERATE_STDINT_H_FALSE
-GL_GENERATE_STDINT_H_TRUE
-STDINT_H
-HAVE_SYS_INTTYPES_H
-HAVE_SYS_BITYPES_H
-HAVE_C99_STDINT_H
-WINT_T_SUFFIX
-WCHAR_T_SUFFIX
-SIG_ATOMIC_T_SUFFIX
-SIZE_T_SUFFIX
-PTRDIFF_T_SUFFIX
-HAVE_SIGNED_WINT_T
-HAVE_SIGNED_WCHAR_T
-HAVE_SIGNED_SIG_ATOMIC_T
-BITSIZEOF_WINT_T
-BITSIZEOF_WCHAR_T
-BITSIZEOF_SIG_ATOMIC_T
-BITSIZEOF_SIZE_T
-BITSIZEOF_PTRDIFF_T
-HAVE_STDINT_H
-NEXT_AS_FIRST_DIRECTIVE_STDINT_H
-NEXT_STDINT_H
-HAVE_SYS_TYPES_H
-HAVE_INTTYPES_H
-HAVE_WCHAR_H
-HAVE_UNSIGNED_LONG_LONG_INT
-HAVE_LONG_LONG_INT
-GNULIB_OVERRIDES_WINT_T
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H
NEXT_STDDEF_H
GL_GENERATE_STDDEF_H_FALSE
@@ -815,9 +807,9 @@ STDDEF_H
HAVE_WCHAR_T
HAVE_MAX_ALIGN_T
REPLACE_NULL
-APPLE_UNIVERSAL_BUILD
UNDEFINE_STRTOK_R
REPLACE_STRSIGNAL
+REPLACE_STRERRORNAME_NP
REPLACE_STRERROR_R
REPLACE_STRERROR
REPLACE_STRTOK_R
@@ -831,8 +823,12 @@ REPLACE_STRCHRNUL
REPLACE_STPNCPY
REPLACE_MEMMEM
REPLACE_MEMCHR
+REPLACE_FFSLL
HAVE_STRVERSCMP
HAVE_DECL_STRSIGNAL
+HAVE_SIGDESCR_NP
+HAVE_SIGABBREV_NP
+HAVE_STRERRORNAME_NP
HAVE_DECL_STRERROR_R
HAVE_DECL_STRTOK_R
HAVE_STRCASESTR
@@ -848,13 +844,17 @@ HAVE_RAWMEMCHR
HAVE_DECL_MEMRCHR
HAVE_MEMPCPY
HAVE_DECL_MEMMEM
-HAVE_MEMCHR
HAVE_FFSLL
HAVE_FFSL
HAVE_EXPLICIT_BZERO
+GNULIB_MDA_STRDUP
+GNULIB_MDA_MEMCCPY
HAVE_MBSLEN
GNULIB_STRVERSCMP
GNULIB_STRSIGNAL
+GNULIB_SIGDESCR_NP
+GNULIB_SIGABBREV_NP
+GNULIB_STRERRORNAME_NP
GNULIB_STRERROR_R
GNULIB_STRERROR
GNULIB_MBSTOK_R
@@ -891,6 +891,51 @@ GNULIB_MEMCHR
GNULIB_FFSLL
GNULIB_FFSL
GNULIB_EXPLICIT_BZERO
+NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H
+NEXT_INTTYPES_H
+UINT64_MAX_EQ_ULONG_MAX
+UINT32_MAX_LT_UINTMAX_MAX
+PRIPTR_PREFIX
+INT64_MAX_EQ_LONG_MAX
+INT32_MAX_LT_INTMAX_MAX
+REPLACE_STRTOUMAX
+REPLACE_STRTOIMAX
+HAVE_IMAXDIV_T
+HAVE_DECL_STRTOUMAX
+HAVE_DECL_STRTOIMAX
+HAVE_DECL_IMAXDIV
+HAVE_DECL_IMAXABS
+GNULIB_STRTOUMAX
+GNULIB_STRTOIMAX
+GNULIB_IMAXDIV
+GNULIB_IMAXABS
+GL_GENERATE_STDINT_H_FALSE
+GL_GENERATE_STDINT_H_TRUE
+STDINT_H
+HAVE_SYS_INTTYPES_H
+HAVE_SYS_BITYPES_H
+HAVE_C99_STDINT_H
+WINT_T_SUFFIX
+WCHAR_T_SUFFIX
+SIG_ATOMIC_T_SUFFIX
+SIZE_T_SUFFIX
+PTRDIFF_T_SUFFIX
+HAVE_SIGNED_WINT_T
+HAVE_SIGNED_WCHAR_T
+HAVE_SIGNED_SIG_ATOMIC_T
+BITSIZEOF_WINT_T
+BITSIZEOF_WCHAR_T
+BITSIZEOF_SIG_ATOMIC_T
+BITSIZEOF_SIZE_T
+BITSIZEOF_PTRDIFF_T
+APPLE_UNIVERSAL_BUILD
+HAVE_STDINT_H
+NEXT_AS_FIRST_DIRECTIVE_STDINT_H
+NEXT_STDINT_H
+HAVE_SYS_TYPES_H
+HAVE_INTTYPES_H
+HAVE_WCHAR_H
+GNULIB_OVERRIDES_WINT_T
GL_GENERATE_LIMITS_H_FALSE
GL_GENERATE_LIMITS_H_TRUE
LIMITS_H
@@ -944,6 +989,13 @@ HAVE_DECL_GETDELIM
HAVE_DECL_FTELLO
HAVE_DECL_FSEEKO
HAVE_DECL_FPURGE
+HAVE_DECL_FCLOSEALL
+GNULIB_MDA_TEMPNAM
+GNULIB_MDA_PUTW
+GNULIB_MDA_GETW
+GNULIB_MDA_FILENO
+GNULIB_MDA_FDOPEN
+GNULIB_MDA_FCLOSEALL
GNULIB_VSPRINTF_POSIX
GNULIB_VSNPRINTF
GNULIB_VPRINTF_POSIX
@@ -1025,6 +1077,7 @@ ALLOCA_H
ALLOCA
GL_COND_LIBTOOL_FALSE
GL_COND_LIBTOOL_TRUE
+GAWK
XSUBPP
POSUB
LTLIBINTL
@@ -1033,14 +1086,6 @@ INTLLIBS
LTLIBICONV
LIBICONV
INTL_MACOSX_LIBS
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
XGETTEXT_EXTRA_OPTIONS
MSGMERGE
XGETTEXT_015
@@ -1058,6 +1103,14 @@ AR
EGREP
GREP
CPP
+host_os
+host_vendor
+host_cpu
+host
+build_os
+build_vendor
+build_cpu
+build
am__fastdepCC_FALSE
am__fastdepCC_TRUE
CCDEPMODE
@@ -1074,8 +1127,19 @@ CPPFLAGS
LDFLAGS
CFLAGS
CC
+PERL_CONF_privlibexp
+PERL_CONF_archlibexp
+PERL_CONF_libperl
+PERL_CONF_ccdlflags
+PERL_CONF_optimize
+PERL_CONF_cccdlflags
+PERL_CONF_ccflags
PERL_CONF_cc
PERL
+PERL_EXT_CC
+PERL_EXT_LDFLAGS
+PERL_EXT_CPPFLAGS
+PERL_EXT_CFLAGS
AM_BACKSLASH
AM_DEFAULT_VERBOSITY
AM_DEFAULT_V
@@ -1154,6 +1218,7 @@ with_gnu_ld
enable_rpath
with_libiconv_prefix
with_libintl_prefix
+enable_cross_guesses
enable_static
enable_shared
with_pic
@@ -1165,17 +1230,17 @@ enable_libtool_lock
ac_precious_vars='build_alias
host_alias
target_alias
+PERL_EXT_CFLAGS
+PERL_EXT_CPPFLAGS
+PERL_EXT_LDFLAGS
+PERL_EXT_CC
CC
CFLAGS
LDFLAGS
LIBS
CPPFLAGS
CPP
-LT_SYS_LIBRARY_PATH
-PERL_EXT_CFLAGS
-PERL_EXT_CPPFLAGS
-PERL_EXT_LDFLAGS
-PERL_EXT_CC'
+LT_SYS_LIBRARY_PATH'
# Initialize some variables set by options.
@@ -1244,8 +1309,6 @@ do
*) ac_optarg=yes ;;
esac
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
case $ac_dashdash$ac_option in
--)
ac_dashdash=yes ;;
@@ -1286,9 +1349,9 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
+ as_fn_error $? "invalid feature name: \`$ac_useropt'"
ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
*"
"enable_$ac_useropt"
@@ -1312,9 +1375,9 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
+ as_fn_error $? "invalid feature name: \`$ac_useropt'"
ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
*"
"enable_$ac_useropt"
@@ -1525,9 +1588,9 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
+ as_fn_error $? "invalid package name: \`$ac_useropt'"
ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
*"
"with_$ac_useropt"
@@ -1541,9 +1604,9 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
+ as_fn_error $? "invalid package name: \`$ac_useropt'"
ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
*"
"with_$ac_useropt"
@@ -1587,9 +1650,9 @@ Try \`$0 --help' for more information"
*)
# FIXME: should be removed in autoconf 3.0.
- $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+ printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+ printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2
: "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
;;
@@ -1605,7 +1668,7 @@ if test -n "$ac_unrecognized_opts"; then
case $enable_option_checking in
no) ;;
fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
- *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+ *) printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
esac
fi
@@ -1669,7 +1732,7 @@ $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_myself" : 'X\(//\)[^/]' \| \
X"$as_myself" : 'X\(//\)$' \| \
X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
+printf "%s\n" X"$as_myself" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -1814,6 +1877,8 @@ Optional Features:
speeds up one-time build
--disable-nls do not use Native Language Support
--disable-rpath do not hardcode runtime library paths
+ --enable-cross-guesses={conservative|risky}
+ specify policy for cross-compilation guesses
--enable-static[=PKGS] build static libraries [default=no]
--enable-shared[=PKGS] build shared libraries [default=yes]
--enable-fast-install[=PKGS]
@@ -1838,6 +1903,13 @@ Optional Packages:
compiler's sysroot if not specified).
Some influential environment variables:
+ PERL_EXT_CFLAGS
+ Compiler flags for a Perl extension
+ PERL_EXT_CPPFLAGS
+ C preprocessor flags for a Perl extension
+ PERL_EXT_LDFLAGS
+ Linker flags for a Perl extension
+ PERL_EXT_CC Compiler for a Perl extension
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
@@ -1848,13 +1920,6 @@ Some influential environment variables:
CPP C preprocessor
LT_SYS_LIBRARY_PATH
User-defined run-time library search path.
- PERL_EXT_CFLAGS
- Compiler flags for a Perl extension
- PERL_EXT_CPPFLAGS
- C preprocessor flags for a Perl extension
- PERL_EXT_LDFLAGS
- Linker flags for a Perl extension
- PERL_EXT_CC Compiler for a Perl extension
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
@@ -1875,9 +1940,9 @@ if test "$ac_init_help" = "recursive"; then
case "$ac_dir" in
.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
# A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
case $ac_top_builddir_sub in
"") ac_top_builddir_sub=. ac_top_build_prefix= ;;
*) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -1905,7 +1970,8 @@ esac
ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
cd "$ac_dir" || { ac_status=$?; continue; }
- # Check for guested configure.
+ # Check for configure.gnu first; this name is used for a wrapper for
+ # Metaconfig's "Configure" on case-insensitive file systems.
if test -f "$ac_srcdir/configure.gnu"; then
echo &&
$SHELL "$ac_srcdir/configure.gnu" --help=recursive
@@ -1913,7 +1979,7 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
echo &&
$SHELL "$ac_srcdir/configure" --help=recursive
else
- $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+ printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2
fi || ac_status=$?
cd "$ac_pwd" || { ac_status=$?; break; }
done
@@ -1923,9 +1989,9 @@ test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
texinfo configure 0
-generated by GNU Autoconf 2.69
+generated by GNU Autoconf 2.71
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
@@ -1942,14 +2008,14 @@ fi
ac_fn_c_try_compile ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
+ rm -f conftest.$ac_objext conftest.beam
if { { ac_try="$ac_compile"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_compile") 2>conftest.err
ac_status=$?
if test -s conftest.err; then
@@ -1957,14 +2023,15 @@ $as_echo "$ac_try_echo"; } >&5
cat conftest.er1 >&5
mv -f conftest.er1 conftest.err
fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
+ } && test -s conftest.$ac_objext
+then :
ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+ printf "%s\n" "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
@@ -1974,6 +2041,39 @@ fi
} # ac_fn_c_try_compile
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$3=yes"
+else $as_nop
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_compile
+
# ac_fn_c_try_cpp LINENO
# ----------------------
# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
@@ -1986,7 +2086,7 @@ case "(($ac_try" in
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
ac_status=$?
if test -s conftest.err; then
@@ -1994,14 +2094,15 @@ $as_echo "$ac_try_echo"; } >&5
cat conftest.er1 >&5
mv -f conftest.er1 conftest.err
fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } > conftest.i && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
- }; then :
+ }
+then :
ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+ printf "%s\n" "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
@@ -2011,180 +2112,20 @@ fi
} # ac_fn_c_try_cpp
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval \${$3+:} false; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_header_compiler=yes
-else
- ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- ac_header_preproc=yes
-else
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
- yes:no: )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
- no:yes:* )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
-esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_mongrel
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
- ac_retval=0
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=$ac_status
-fi
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_compile
-
# ac_fn_c_try_link LINENO
# -----------------------
# Try to link conftest.$ac_ext, and return whether this succeeded.
ac_fn_c_try_link ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
+ rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext
if { { ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_link") 2>conftest.err
ac_status=$?
if test -s conftest.err; then
@@ -2192,17 +2133,18 @@ $as_echo "$ac_try_echo"; } >&5
cat conftest.er1 >&5
mv -f conftest.er1 conftest.err
fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
test -x conftest$ac_exeext
- }; then :
+ }
+then :
ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+ printf "%s\n" "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
@@ -2217,6 +2159,49 @@ fi
} # ac_fn_c_try_link
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that
+# executables *can* be run.
+ac_fn_c_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+then :
+ ac_retval=0
+else $as_nop
+ printf "%s\n" "$as_me: program exited with status $ac_status" >&5
+ printf "%s\n" "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
# -------------------------------------------
# Tests whether TYPE exists after having included INCLUDES, setting cache
@@ -2224,17 +2209,18 @@ fi
ac_fn_c_check_type ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
eval "$3=no"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
if (sizeof ($2))
return 0;
@@ -2242,12 +2228,13 @@ if (sizeof ($2))
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
if (sizeof (($2)))
return 0;
@@ -2255,89 +2242,23 @@ if (sizeof (($2)))
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
-else
+else $as_nop
eval "$3=yes"
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_type
-# ac_fn_c_check_func LINENO FUNC VAR
-# ----------------------------------
-# Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $2 innocuous_$2
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $2 (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $2
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int
-main ()
-{
-return $2 ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_func
-
# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
# --------------------------------------------
# Tries to find the compile-time value of EXPR in a program that includes
@@ -2352,7 +2273,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) >= 0)];
test_array [0] = 0;
@@ -2362,14 +2283,15 @@ return test_array [0];
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_lo=0 ac_mid=0
while :; do
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) <= $ac_mid)];
test_array [0] = 0;
@@ -2379,9 +2301,10 @@ return test_array [0];
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_hi=$ac_mid; break
-else
+else $as_nop
as_fn_arith $ac_mid + 1 && ac_lo=$as_val
if test $ac_lo -le $ac_mid; then
ac_lo= ac_hi=
@@ -2389,14 +2312,14 @@ else
fi
as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
done
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) < 0)];
test_array [0] = 0;
@@ -2406,14 +2329,15 @@ return test_array [0];
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_hi=-1 ac_mid=-1
while :; do
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) >= $ac_mid)];
test_array [0] = 0;
@@ -2423,9 +2347,10 @@ return test_array [0];
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_lo=$ac_mid; break
-else
+else $as_nop
as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
if test $ac_mid -le $ac_hi; then
ac_lo= ac_hi=
@@ -2433,14 +2358,14 @@ else
fi
as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
done
-else
+else $as_nop
ac_lo= ac_hi=
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
# Binary search between lo and hi bounds.
while test "x$ac_lo" != "x$ac_hi"; do
as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
@@ -2448,7 +2373,7 @@ while test "x$ac_lo" != "x$ac_hi"; do
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) <= $ac_mid)];
test_array [0] = 0;
@@ -2458,12 +2383,13 @@ return test_array [0];
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_hi=$ac_mid
-else
+else $as_nop
as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
done
case $ac_lo in #((
?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
@@ -2473,12 +2399,12 @@ esac
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
+static long int longval (void) { return $2; }
+static unsigned long int ulongval (void) { return $2; }
#include <stdio.h>
#include <stdlib.h>
int
-main ()
+main (void)
{
FILE *f = fopen ("conftest.val", "w");
@@ -2506,9 +2432,10 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
+else $as_nop
ac_retval=1
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -2521,25 +2448,32 @@ rm -f conftest.val
} # ac_fn_c_compute_int
-# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
-# ---------------------------------------------
+# ac_fn_check_decl LINENO SYMBOL VAR INCLUDES EXTRA-OPTIONS FLAG-VAR
+# ------------------------------------------------------------------
# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
-# accordingly.
-ac_fn_c_check_decl ()
+# accordingly. Pass EXTRA-OPTIONS to the compiler, using FLAG-VAR.
+ac_fn_check_decl ()
{
+ ac_save_ac_compile="$ac_compile"
+ if test -n "$ac_compile_for_check_decl"; then
+ ac_compile="$ac_compile_for_check_decl"
+ fi
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
as_decl_name=`echo $2|sed 's/ *(.*//'`
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
+printf %s "checking whether $as_decl_name is declared... " >&6; }
+if eval test \${$3+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
-$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ eval ac_save_FLAGS=\$$6
+ as_fn_append $6 " $5"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
#ifndef $as_decl_name
#ifdef __cplusplus
@@ -2553,27 +2487,113 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$3=yes"
-else
+else $as_nop
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+ eval $6=\$ac_save_FLAGS
+
+fi
+eval ac_res=\$$3
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ ac_compile="$ac_save_ac_compile"
+
+} # ac_fn_check_decl
+
+# ac_fn_c_check_func LINENO FUNC VAR
+# ----------------------------------
+# Tests whether FUNC exists, setting the cache variable VAR accordingly
+ac_fn_c_check_func ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $2 innocuous_$2
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $2 (); below. */
+
+#include <limits.h>
+#undef $2
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $2 ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$2 || defined __stub___$2
+choke me
+#endif
+
+int
+main (void)
+{
+return $2 ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+ eval "$3=yes"
+else $as_nop
eval "$3=no"
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
+ conftest$ac_exeext conftest.$ac_ext
fi
eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-} # ac_fn_c_check_decl
+} # ac_fn_c_check_func
+ac_configure_args_raw=
+for ac_arg
+do
+ case $ac_arg in
+ *\'*)
+ ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ as_fn_append ac_configure_args_raw " '$ac_arg'"
+done
+
+case $ac_configure_args_raw in
+ *$as_nl*)
+ ac_safe_unquote= ;;
+ *)
+ ac_unsafe_z='|&;<>()$`\\"*?[ '' ' # This string ends in space, tab.
+ ac_unsafe_a="$ac_unsafe_z#~"
+ ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g"
+ ac_configure_args_raw=` printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;;
+esac
+
cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by texinfo $as_me 0, which was
-generated by GNU Autoconf 2.69. Invocation command line was
+generated by GNU Autoconf 2.71. Invocation command line was
- $ $0 $@
+ $ $0$ac_configure_args_raw
_ACEOF
exec 5>>config.log
@@ -2606,8 +2626,12 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ printf "%s\n" "PATH: $as_dir"
done
IFS=$as_save_IFS
@@ -2642,7 +2666,7 @@ do
| -silent | --silent | --silen | --sile | --sil)
continue ;;
*\'*)
- ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
case $ac_pass in
1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
@@ -2677,11 +2701,13 @@ done
# WARNING: Use '\'' to represent an apostrophe within the trap.
# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
trap 'exit_status=$?
+ # Sanitize IFS.
+ IFS=" "" $as_nl"
# Save into config.log some information that might help in debugging.
{
echo
- $as_echo "## ---------------- ##
+ printf "%s\n" "## ---------------- ##
## Cache variables. ##
## ---------------- ##"
echo
@@ -2692,8 +2718,8 @@ trap 'exit_status=$?
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+ *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
@@ -2717,7 +2743,7 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
)
echo
- $as_echo "## ----------------- ##
+ printf "%s\n" "## ----------------- ##
## Output variables. ##
## ----------------- ##"
echo
@@ -2725,14 +2751,14 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
do
eval ac_val=\$$ac_var
case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
esac
- $as_echo "$ac_var='\''$ac_val'\''"
+ printf "%s\n" "$ac_var='\''$ac_val'\''"
done | sort
echo
if test -n "$ac_subst_files"; then
- $as_echo "## ------------------- ##
+ printf "%s\n" "## ------------------- ##
## File substitutions. ##
## ------------------- ##"
echo
@@ -2740,15 +2766,15 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
do
eval ac_val=\$$ac_var
case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
esac
- $as_echo "$ac_var='\''$ac_val'\''"
+ printf "%s\n" "$ac_var='\''$ac_val'\''"
done | sort
echo
fi
if test -s confdefs.h; then
- $as_echo "## ----------- ##
+ printf "%s\n" "## ----------- ##
## confdefs.h. ##
## ----------- ##"
echo
@@ -2756,8 +2782,8 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
echo
fi
test "$ac_signal" != 0 &&
- $as_echo "$as_me: caught signal $ac_signal"
- $as_echo "$as_me: exit $exit_status"
+ printf "%s\n" "$as_me: caught signal $ac_signal"
+ printf "%s\n" "$as_me: exit $exit_status"
} >&5
rm -f core *.core core.conftest.* &&
rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
@@ -2771,63 +2797,48 @@ ac_signal=0
# confdefs.h avoids OS command line length limits that DEFS can exceed.
rm -f -r conftest* confdefs.h
-$as_echo "/* confdefs.h */" > confdefs.h
+printf "%s\n" "/* confdefs.h */" > confdefs.h
# Predefined preprocessor variables.
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
+printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
+printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
+printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
+printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h
# Let the site file select an alternate cache file if it wants to.
# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
if test -n "$CONFIG_SITE"; then
- # We do not want a PATH search for config.site.
- case $CONFIG_SITE in #((
- -*) ac_site_file1=./$CONFIG_SITE;;
- */*) ac_site_file1=$CONFIG_SITE;;
- *) ac_site_file1=./$CONFIG_SITE;;
- esac
+ ac_site_files="$CONFIG_SITE"
elif test "x$prefix" != xNONE; then
- ac_site_file1=$prefix/share/config.site
- ac_site_file2=$prefix/etc/config.site
+ ac_site_files="$prefix/share/config.site $prefix/etc/config.site"
else
- ac_site_file1=$ac_default_prefix/share/config.site
- ac_site_file2=$ac_default_prefix/etc/config.site
+ ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
+
+for ac_site_file in $ac_site_files
do
- test "x$ac_site_file" = xNONE && continue
- if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
+ case $ac_site_file in #(
+ */*) :
+ ;; #(
+ *) :
+ ac_site_file=./$ac_site_file ;;
+esac
+ if test -f "$ac_site_file" && test -r "$ac_site_file"; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
+printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
. "$ac_site_file" \
- || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+ || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "failed to load site script $ac_site_file
See \`config.log' for more details" "$LINENO" 5; }
fi
@@ -2837,31 +2848,446 @@ if test -r "$cache_file"; then
# Some versions of bash will fail to source /dev/null (special files
# actually), so we avoid doing that. DJGPP emulates it as a regular file.
if test /dev/null != "$cache_file" && test -f "$cache_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
+printf "%s\n" "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . "$cache_file";;
*) . "./$cache_file";;
esac
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
+printf "%s\n" "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
+# Test code for whether the C compiler supports C89 (global declarations)
+ac_c_conftest_c89_globals='
+/* Does the compiler advertise C89 conformance?
+ Do not test the value of __STDC__, because some compilers set it to 0
+ while being otherwise adequately conformant. */
+#if !defined __STDC__
+# error "Compiler does not advertise C89 conformance"
+#endif
+
+#include <stddef.h>
+#include <stdarg.h>
+struct stat;
+/* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
+struct buf { int x; };
+struct buf * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
+ function prototypes and stuff, but not \xHH hex character constants.
+ These do not provoke an error unfortunately, instead are silently treated
+ as an "x". The following induces an error, until -std is added to get
+ proper ANSI mode. Curiously \x00 != x always comes out true, for an
+ array size at least. It is necessary to write \x00 == 0 to get something
+ that is true only with -std. */
+int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+ inside strings and character constants. */
+#define FOO(x) '\''x'\''
+int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
+ int, int);'
+
+# Test code for whether the C compiler supports C89 (body of main).
+ac_c_conftest_c89_main='
+ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
+'
+
+# Test code for whether the C compiler supports C99 (global declarations)
+ac_c_conftest_c99_globals='
+// Does the compiler advertise C99 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
+# error "Compiler does not advertise C99 conformance"
+#endif
+
+#include <stdbool.h>
+extern int puts (const char *);
+extern int printf (const char *, ...);
+extern int dprintf (int, const char *, ...);
+extern void *malloc (size_t);
+
+// Check varargs macros. These examples are taken from C99 6.10.3.5.
+// dprintf is used instead of fprintf to avoid needing to declare
+// FILE and stderr.
+#define debug(...) dprintf (2, __VA_ARGS__)
+#define showlist(...) puts (#__VA_ARGS__)
+#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
+static void
+test_varargs_macros (void)
+{
+ int x = 1234;
+ int y = 5678;
+ debug ("Flag");
+ debug ("X = %d\n", x);
+ showlist (The first, second, and third items.);
+ report (x>y, "x is %d but y is %d", x, y);
+}
+
+// Check long long types.
+#define BIG64 18446744073709551615ull
+#define BIG32 4294967295ul
+#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
+#if !BIG_OK
+ #error "your preprocessor is broken"
+#endif
+#if BIG_OK
+#else
+ #error "your preprocessor is broken"
+#endif
+static long long int bignum = -9223372036854775807LL;
+static unsigned long long int ubignum = BIG64;
+
+struct incomplete_array
+{
+ int datasize;
+ double data[];
+};
+
+struct named_init {
+ int number;
+ const wchar_t *name;
+ double average;
+};
+
+typedef const char *ccp;
+
+static inline int
+test_restrict (ccp restrict text)
+{
+ // See if C++-style comments work.
+ // Iterate through items via the restricted pointer.
+ // Also check for declarations in for loops.
+ for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i)
+ continue;
+ return 0;
+}
+
+// Check varargs and va_copy.
+static bool
+test_varargs (const char *format, ...)
+{
+ va_list args;
+ va_start (args, format);
+ va_list args_copy;
+ va_copy (args_copy, args);
+
+ const char *str = "";
+ int number = 0;
+ float fnumber = 0;
+
+ while (*format)
+ {
+ switch (*format++)
+ {
+ case '\''s'\'': // string
+ str = va_arg (args_copy, const char *);
+ break;
+ case '\''d'\'': // int
+ number = va_arg (args_copy, int);
+ break;
+ case '\''f'\'': // float
+ fnumber = va_arg (args_copy, double);
+ break;
+ default:
+ break;
+ }
+ }
+ va_end (args_copy);
+ va_end (args);
+
+ return *str && number && fnumber;
+}
+'
+
+# Test code for whether the C compiler supports C99 (body of main).
+ac_c_conftest_c99_main='
+ // Check bool.
+ _Bool success = false;
+ success |= (argc != 0);
+
+ // Check restrict.
+ if (test_restrict ("String literal") == 0)
+ success = true;
+ char *restrict newvar = "Another string";
+
+ // Check varargs.
+ success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234);
+ test_varargs_macros ();
+
+ // Check flexible array members.
+ struct incomplete_array *ia =
+ malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
+ ia->datasize = 10;
+ for (int i = 0; i < ia->datasize; ++i)
+ ia->data[i] = i * 1.234;
+
+ // Check named initializers.
+ struct named_init ni = {
+ .number = 34,
+ .name = L"Test wide string",
+ .average = 543.34343,
+ };
+
+ ni.number = 58;
+
+ int dynamic_array[ni.number];
+ dynamic_array[0] = argv[0][0];
+ dynamic_array[ni.number - 1] = 543;
+
+ // work around unused variable warnings
+ ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\''
+ || dynamic_array[ni.number - 1] != 543);
+'
+
+# Test code for whether the C compiler supports C11 (global declarations)
+ac_c_conftest_c11_globals='
+// Does the compiler advertise C11 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L
+# error "Compiler does not advertise C11 conformance"
+#endif
+
+// Check _Alignas.
+char _Alignas (double) aligned_as_double;
+char _Alignas (0) no_special_alignment;
+extern char aligned_as_int;
+char _Alignas (0) _Alignas (int) aligned_as_int;
+
+// Check _Alignof.
+enum
+{
+ int_alignment = _Alignof (int),
+ int_array_alignment = _Alignof (int[100]),
+ char_alignment = _Alignof (char)
+};
+_Static_assert (0 < -_Alignof (int), "_Alignof is signed");
+
+// Check _Noreturn.
+int _Noreturn does_not_return (void) { for (;;) continue; }
+
+// Check _Static_assert.
+struct test_static_assert
+{
+ int x;
+ _Static_assert (sizeof (int) <= sizeof (long int),
+ "_Static_assert does not work in struct");
+ long int y;
+};
+
+// Check UTF-8 literals.
+#define u8 syntax error!
+char const utf8_literal[] = u8"happens to be ASCII" "another string";
+
+// Check duplicate typedefs.
+typedef long *long_ptr;
+typedef long int *long_ptr;
+typedef long_ptr long_ptr;
+
+// Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1.
+struct anonymous
+{
+ union {
+ struct { int i; int j; };
+ struct { int k; long int l; } w;
+ };
+ int m;
+} v1;
+'
+
+# Test code for whether the C compiler supports C11 (body of main).
+ac_c_conftest_c11_main='
+ _Static_assert ((offsetof (struct anonymous, i)
+ == offsetof (struct anonymous, w.k)),
+ "Anonymous union alignment botch");
+ v1.i = 2;
+ v1.w.k = 5;
+ ok |= v1.i != 5;
+'
+
+# Test code for whether the C compiler supports C11 (complete).
+ac_c_conftest_c11_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+${ac_c_conftest_c11_globals}
+
+int
+main (int argc, char **argv)
+{
+ int ok = 0;
+ ${ac_c_conftest_c89_main}
+ ${ac_c_conftest_c99_main}
+ ${ac_c_conftest_c11_main}
+ return ok;
+}
+"
+
+# Test code for whether the C compiler supports C99 (complete).
+ac_c_conftest_c99_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+
+int
+main (int argc, char **argv)
+{
+ int ok = 0;
+ ${ac_c_conftest_c89_main}
+ ${ac_c_conftest_c99_main}
+ return ok;
+}
+"
+
+# Test code for whether the C compiler supports C89 (complete).
+ac_c_conftest_c89_program="${ac_c_conftest_c89_globals}
+
+int
+main (int argc, char **argv)
+{
+ int ok = 0;
+ ${ac_c_conftest_c89_main}
+ return ok;
+}
+"
+
+as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H"
+as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H"
+as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H"
+as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H"
+as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H"
+as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H"
+as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H"
+as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H"
+as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H"
+as_fn_append ac_header_c_list " wchar.h wchar_h HAVE_WCHAR_H"
+as_fn_append ac_header_c_list " minix/config.h minix_config_h HAVE_MINIX_CONFIG_H"
gt_needs="$gt_needs "
-as_fn_append ac_func_list " getdelim"
-as_fn_append ac_header_list " limits.h"
-as_fn_append ac_header_list " sys/mman.h"
-as_fn_append ac_func_list " mprotect"
-as_fn_append ac_header_list " wchar.h"
-as_fn_append ac_header_list " stdint.h"
-as_fn_append ac_func_list " strndup"
-as_fn_append ac_func_list " vasnprintf"
-as_fn_append ac_header_list " features.h"
-as_fn_append ac_func_list " snprintf"
-as_fn_append ac_header_list " crtdefs.h"
+as_fn_append ac_func_c_list " getdelim HAVE_GETDELIM"
+as_fn_append ac_header_c_list " limits.h limits_h HAVE_LIMITS_H"
+as_fn_append ac_header_c_list " sys/mman.h sys_mman_h HAVE_SYS_MMAN_H"
+as_fn_append ac_func_c_list " mprotect HAVE_MPROTECT"
+as_fn_append ac_func_c_list " strndup HAVE_STRNDUP"
+as_fn_append ac_func_c_list " vasnprintf HAVE_VASNPRINTF"
+as_fn_append ac_header_c_list " features.h features_h HAVE_FEATURES_H"
+as_fn_append ac_func_c_list " snprintf HAVE_SNPRINTF"
+as_fn_append ac_header_c_list " crtdefs.h crtdefs_h HAVE_CRTDEFS_H"
+
+# Auxiliary files required by this configure script.
+ac_aux_files="ltmain.sh config.rpath config.guess config.sub compile missing install-sh"
+
+# Locations in which to look for auxiliary files.
+ac_aux_dir_candidates="${srcdir}${PATH_SEPARATOR}${srcdir}/..${PATH_SEPARATOR}${srcdir}/../.."
+
+# Search for a directory containing all of the required auxiliary files,
+# $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates.
+# If we don't find one directory that contains all the files we need,
+# we report the set of missing files from the *first* directory in
+# $ac_aux_dir_candidates and give up.
+ac_missing_aux_files=""
+ac_first_candidate=:
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
+for as_dir in $ac_aux_dir_candidates
+do
+ IFS=$as_save_IFS
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ as_found=:
+
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: trying $as_dir" >&5
+ ac_aux_dir_found=yes
+ ac_install_sh=
+ for ac_aux in $ac_aux_files
+ do
+ # As a special case, if "install-sh" is required, that requirement
+ # can be satisfied by any of "install-sh", "install.sh", or "shtool",
+ # and $ac_install_sh is set appropriately for whichever one is found.
+ if test x"$ac_aux" = x"install-sh"
+ then
+ if test -f "${as_dir}install-sh"; then
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}install-sh found" >&5
+ ac_install_sh="${as_dir}install-sh -c"
+ elif test -f "${as_dir}install.sh"; then
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}install.sh found" >&5
+ ac_install_sh="${as_dir}install.sh -c"
+ elif test -f "${as_dir}shtool"; then
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}shtool found" >&5
+ ac_install_sh="${as_dir}shtool install -c"
+ else
+ ac_aux_dir_found=no
+ if $ac_first_candidate; then
+ ac_missing_aux_files="${ac_missing_aux_files} install-sh"
+ else
+ break
+ fi
+ fi
+ else
+ if test -f "${as_dir}${ac_aux}"; then
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}${ac_aux} found" >&5
+ else
+ ac_aux_dir_found=no
+ if $ac_first_candidate; then
+ ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}"
+ else
+ break
+ fi
+ fi
+ fi
+ done
+ if test "$ac_aux_dir_found" = yes; then
+ ac_aux_dir="$as_dir"
+ break
+ fi
+ ac_first_candidate=false
+
+ as_found=false
+done
+IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+ as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5
+fi
+
+
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+if test -f "${ac_aux_dir}config.guess"; then
+ ac_config_guess="$SHELL ${ac_aux_dir}config.guess"
+fi
+if test -f "${ac_aux_dir}config.sub"; then
+ ac_config_sub="$SHELL ${ac_aux_dir}config.sub"
+fi
+if test -f "$ac_aux_dir/configure"; then
+ ac_configure="$SHELL ${ac_aux_dir}configure"
+fi
+
# Check that the precious variables saved in the cache have kept the same
# value.
ac_cache_corrupted=false
@@ -2872,12 +3298,12 @@ for ac_var in $ac_precious_vars; do
eval ac_new_val=\$ac_env_${ac_var}_value
case $ac_old_set,$ac_new_set in
set,)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
*)
@@ -2886,24 +3312,24 @@ $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_old_val_w=`echo x $ac_old_val`
ac_new_val_w=`echo x $ac_new_val`
if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
ac_cache_corrupted=:
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+printf "%s\n" "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
eval $ac_var=\$ac_old_val
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
-$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
-$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
+printf "%s\n" "$as_me: former value: \`$ac_old_val'" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
+printf "%s\n" "$as_me: current value: \`$ac_new_val'" >&2;}
fi;;
esac
# Pass precious variables to config.status.
if test "$ac_new_set" = set; then
case $ac_new_val in
- *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
*) ac_arg=$ac_var=$ac_new_val ;;
esac
case " $ac_configure_args " in
@@ -2913,11 +3339,12 @@ $as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
fi
done
if $ac_cache_corrupted; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
+printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;}
+ as_fn_error $? "run \`${MAKE-make} distclean' and/or \`rm $cache_file'
+ and start over" "$LINENO" 5
fi
## -------------------- ##
## Main body of script. ##
@@ -2932,36 +3359,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
am__api_version='1.16'
-ac_aux_dir=
-for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
- if test -f "$ac_dir/install-sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f "$ac_dir/install.sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f "$ac_dir/shtool"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
-# Find a good install program. We prefer a C program (faster),
+ # Find a good install program. We prefer a C program (faster),
# so one script is as good as another. But avoid the broken or
# incompatible versions:
# SysV /etc/install, /usr/sbin/install
@@ -2975,20 +3375,25 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
# OS/2's system install, which has a completely different semantic
# ./install, which can be erroneously created by make from ./install.sh.
# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
+printf %s "checking for a BSD-compatible install... " >&6; }
if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+if test ${ac_cv_path_install+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
- ./ | .// | /[cC]/* | \
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ # Account for fact that we put trailing slashes in our PATH walk.
+case $as_dir in #((
+ ./ | /[cC]/* | \
/etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
/usr/ucb/* ) ;;
@@ -2998,13 +3403,13 @@ case $as_dir/ in #((
# by default.
for ac_prog in ginstall scoinst install; do
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then
if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
:
elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# program-specific install script used by HP pwplus--don't use.
:
else
@@ -3012,12 +3417,12 @@ case $as_dir/ in #((
echo one > conftest.one
echo two > conftest.two
mkdir conftest.dir
- if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+ if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" &&
test -s conftest.one && test -s conftest.two &&
test -s conftest.dir/conftest.one &&
test -s conftest.dir/conftest.two
then
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c"
break 3
fi
fi
@@ -3033,7 +3438,7 @@ IFS=$as_save_IFS
rm -rf conftest.one conftest.two conftest.dir
fi
- if test "${ac_cv_path_install+set}" = set; then
+ if test ${ac_cv_path_install+y}; then
INSTALL=$ac_cv_path_install
else
# As a last resort, use the slow shell script. Don't cache a
@@ -3043,8 +3448,8 @@ fi
INSTALL=$ac_install_sh
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
+printf "%s\n" "$INSTALL" >&6; }
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
# It thinks the first close brace ends the variable substitution.
@@ -3054,8 +3459,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
+printf %s "checking whether build environment is sane... " >&6; }
# Reject unsafe characters in $srcdir or the absolute working directory
# name. Accept space and tab only in the latter.
am_lf='
@@ -3109,8 +3514,8 @@ else
as_fn_error $? "newly created file is older than distributed files!
Check your system clock" "$LINENO" 5
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
# If we didn't sleep, we still need to ensure time stamps of config.status and
# generated files are strictly newer.
am_sleep_pid=
@@ -3129,26 +3534,23 @@ test "$program_suffix" != NONE &&
# Double any \ or $.
# By default was `s,x,x', remove it if useless.
ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
+program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"`
+
# Expand $ac_aux_dir to an absolute path.
am_aux_dir=`cd "$ac_aux_dir" && pwd`
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
+
+ if test x"${MISSING+set}" != xset; then
+ MISSING="\${SHELL} '$am_aux_dir/missing'"
fi
# Use eval to expand $SHELL
if eval "$MISSING --is-lightweight"; then
am_missing_run="$MISSING "
else
am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+printf "%s\n" "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
fi
if test x"${install_sh+set}" != xset; then
@@ -3168,11 +3570,12 @@ if test "$cross_compiling" != no; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_STRIP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$STRIP"; then
ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
else
@@ -3180,11 +3583,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3195,11 +3602,11 @@ fi
fi
STRIP=$ac_cv_prog_STRIP
if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+printf "%s\n" "$STRIP" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -3208,11 +3615,12 @@ if test -z "$ac_cv_prog_STRIP"; then
ac_ct_STRIP=$STRIP
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_STRIP"; then
ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
else
@@ -3220,11 +3628,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3235,11 +3647,11 @@ fi
fi
ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+printf "%s\n" "$ac_ct_STRIP" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_STRIP" = x; then
@@ -3247,8 +3659,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
STRIP=$ac_ct_STRIP
@@ -3260,25 +3672,31 @@ fi
fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a race-free mkdir -p" >&5
+printf %s "checking for a race-free mkdir -p... " >&6; }
if test -z "$MKDIR_P"; then
- if ${ac_cv_path_mkdir+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ if test ${ac_cv_path_mkdir+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_prog in mkdir gmkdir; do
for ac_exec_ext in '' $ac_executable_extensions; do
- as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
- case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
- 'mkdir (GNU coreutils) '* | \
- 'mkdir (coreutils) '* | \
+ as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext" || continue
+ case `"$as_dir$ac_prog$ac_exec_ext" --version 2>&1` in #(
+ 'mkdir ('*'coreutils) '* | \
+ 'BusyBox '* | \
'mkdir (fileutils) '4.1*)
- ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
+ ac_cv_path_mkdir=$as_dir$ac_prog$ac_exec_ext
break 3;;
esac
done
@@ -3289,7 +3707,7 @@ IFS=$as_save_IFS
fi
test -d ./--version && rmdir ./--version
- if test "${ac_cv_path_mkdir+set}" = set; then
+ if test ${ac_cv_path_mkdir+y}; then
MKDIR_P="$ac_cv_path_mkdir -p"
else
# As a last resort, use the slow shell script. Don't cache a
@@ -3299,18 +3717,19 @@ fi
MKDIR_P="$ac_install_sh -d"
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
+printf "%s\n" "$MKDIR_P" >&6; }
for ac_prog in gawk mawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AWK+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$AWK"; then
ac_cv_prog_AWK="$AWK" # Let the user override the test.
else
@@ -3318,11 +3737,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3333,24 +3756,25 @@ fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+printf "%s\n" "$AWK" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
test -n "$AWK" && break
done
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval test \${ac_cv_prog_make_${ac_make}_set+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat >conftest.make <<\_ACEOF
SHELL = /bin/sh
all:
@@ -3366,12 +3790,12 @@ esac
rm -f conftest.make
fi
if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
SET_MAKE=
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
SET_MAKE="MAKE=${MAKE-make}"
fi
@@ -3385,7 +3809,8 @@ fi
rmdir .tst 2>/dev/null
# Check whether --enable-silent-rules was given.
-if test "${enable_silent_rules+set}" = set; then :
+if test ${enable_silent_rules+y}
+then :
enableval=$enable_silent_rules;
fi
@@ -3395,12 +3820,13 @@ case $enable_silent_rules in # (((
*) AM_DEFAULT_VERBOSITY=1;;
esac
am_make=${MAKE-make}
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
-$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
-if ${am_cv_make_support_nested_variables+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if $as_echo 'TRUE=$(BAR$(V))
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+printf %s "checking whether $am_make supports nested variables... " >&6; }
+if test ${am_cv_make_support_nested_variables+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if printf "%s\n" 'TRUE=$(BAR$(V))
BAR0=false
BAR1=true
V=1
@@ -3412,8 +3838,8 @@ else
am_cv_make_support_nested_variables=no
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
-$as_echo "$am_cv_make_support_nested_variables" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+printf "%s\n" "$am_cv_make_support_nested_variables" >&6; }
if test $am_cv_make_support_nested_variables = yes; then
AM_V='$(V)'
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
@@ -3448,14 +3874,10 @@ fi
VERSION='0'
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
+printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
+printf "%s\n" "#define VERSION \"$VERSION\"" >>confdefs.h
# Some tools Automake needs.
@@ -3565,28 +3987,41 @@ fetch_conf ()
# Check whether --enable-perl-xs was given.
-if test "${enable_perl_xs+set}" = set; then :
+if test ${enable_perl_xs+y}
+then :
enableval=$enable_perl_xs; if test $enableval = 'no'; then
disable_xs=yes
else
disable_xs=no
fi
-else
+else $as_nop
disable_xs=no
fi
+# PERL_EXT_var are user variables for a Perl XS extension, allowing
+# configuring at the top-level with e.g.
+# "./configure CFLAGS='-g -O0' PERL_EXT_CFLAGS='-g'".
+# May be useful if the Perl interpreter was compiled with a
+# different compiler. Also in top-level configure.ac.
+
+
+
+
+
+
# See (automake)Conditional Subdirectories. Even if --disable-perl-xs
# is given, we still need to configure this directory minimally, so that
# "make dist" will work.
if test x$disable_xs != xyes; then
# Extract the first word of "perl", so it can be a program name with args.
set dummy perl; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PERL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PERL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
case $PERL in
[\\/]* | ?:[\\/]*)
ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
@@ -3596,11 +4031,15 @@ else
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ ac_cv_path_PERL="$as_dir$ac_word$ac_exec_ext"
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3612,47 +4051,123 @@ esac
fi
PERL=$ac_cv_path_PERL
if test -n "$PERL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
-$as_echo "$PERL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
+printf "%s\n" "$PERL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
- # PERL_EXT_var are user variables, allowing configuring at the top-level
- # with e.g. "./configure CFLAGS='-g -O0' PERL_EXT_CFLAGS='-g'".
-
if test -n "$PERL_EXT_CC" ; then
CC=$PERL_EXT_CC
else
# It's essential that we use the same compiler that was used to build
# Perl. Otherwise Perl's "config.h" will be incorrect. This overrides
# the check in AC_PROG_CC below.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking Perl configuration value cc" >&5
-$as_echo_n "checking Perl configuration value cc... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Perl configuration value cc" >&5
+printf %s "checking Perl configuration value cc... " >&6; }
fetch_conf cc
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
-$as_echo "$conf_value" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
+printf "%s\n" "$conf_value" >&6; }
PERL_CONF_cc=$conf_value
CC=$conf_value
fi
- # Override these variables set by configure at the top level, because
- # the compiler used in this subdirectory might be different. Change
- # these now so they are used in the gnulib checks.
-
- CFLAGS=$PERL_EXT_CFLAGS
- CPPFLAGS=$PERL_EXT_CPPFLAGS
- LDFLAGS=$PERL_EXT_LDFLAGS
-
# Wipe cache values in case -C was given at the top level
ac_cv_prog_CC= ; unset ac_cv_prog_CC
ac_cv_prog_ac_ct_CC= ; unset ac_cv_prog_ac_ct_CC
-fi
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Perl configuration value ccflags" >&5
+printf %s "checking Perl configuration value ccflags... " >&6; }
+ fetch_conf ccflags
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
+printf "%s\n" "$conf_value" >&6; }
+ PERL_CONF_ccflags=$conf_value
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Perl configuration value cccdlflags" >&5
+printf %s "checking Perl configuration value cccdlflags... " >&6; }
+ fetch_conf cccdlflags
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
+printf "%s\n" "$conf_value" >&6; }
+ PERL_CONF_cccdlflags=$conf_value
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Perl configuration value optimize" >&5
+printf %s "checking Perl configuration value optimize... " >&6; }
+ fetch_conf optimize
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
+printf "%s\n" "$conf_value" >&6; }
+ PERL_CONF_optimize=$conf_value
+
+
+
+
+ # flags for linking the extension, e.g. -rpath.
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Perl configuration value ccdlflags" >&5
+printf %s "checking Perl configuration value ccdlflags... " >&6; }
+ fetch_conf ccdlflags
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
+printf "%s\n" "$conf_value" >&6; }
+ PERL_CONF_ccdlflags=$conf_value
+
+
+
+ # Override these variables set by configure at the top level, because
+ # the compiler used in this subdirectory might be different.
+ # Change these now so they are used in the checks that follow.
+ CFLAGS="$PERL_EXT_CFLAGS $PERL_CONF_ccflags"
+ CPPFLAGS=$PERL_EXT_CPPFLAGS
+ LDFLAGS="$PERL_EXT_LDFLAGS $PERL_CONF_ccdlflags $PERL_CONF_cccdlflags"
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Perl configuration value libperl" >&5
+printf %s "checking Perl configuration value libperl... " >&6; }
+ fetch_conf libperl
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
+printf "%s\n" "$conf_value" >&6; }
+ PERL_CONF_libperl=$conf_value
+
+
+ # Change libperl.so into -lperl to indicate a library dependency to
+ # libtool.
+ # Special case for Cygwin to change e.g. cygperl5_22.dll into -lperl
+ PERL_CONF_libperl=`echo $PERL_CONF_libperl \
+ | sed -e 's/^lib/-l/' \
+ -e 's/\..*//' \
+ -e 's/^cygperl.*/-lperl/' `
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Perl configuration value archlibexp" >&5
+printf %s "checking Perl configuration value archlibexp... " >&6; }
+ fetch_conf archlibexp
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
+printf "%s\n" "$conf_value" >&6; }
+ PERL_CONF_archlibexp=$conf_value
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Perl configuration value privlibexp" >&5
+printf %s "checking Perl configuration value privlibexp... " >&6; }
+ fetch_conf privlibexp
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
+printf "%s\n" "$conf_value" >&6; }
+ PERL_CONF_privlibexp=$conf_value
+
+
+
+
+ ac_config_headers="$ac_config_headers config.h:config.in"
+
+fi # not disable_xs
+
+
+
+
+
+
+
+
+
+
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -3662,11 +4177,12 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
@@ -3674,11 +4190,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3689,11 +4209,11 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -3702,11 +4222,12 @@ if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_CC"; then
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
else
@@ -3714,11 +4235,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3729,11 +4254,11 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_CC" = x; then
@@ -3741,8 +4266,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
CC=$ac_ct_CC
@@ -3755,11 +4280,12 @@ if test -z "$CC"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
@@ -3767,11 +4293,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3782,11 +4312,11 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -3795,11 +4325,12 @@ fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
@@ -3808,15 +4339,19 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
fi
ac_cv_prog_CC="cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3832,18 +4367,18 @@ if test $ac_prog_rejected = yes; then
# However, it has the same basename, so the bogon will be chosen
# first if we set CC to just the basename; use the full file name.
shift
- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+ ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@"
fi
fi
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -3854,11 +4389,12 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
@@ -3866,11 +4402,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3881,11 +4421,11 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -3898,11 +4438,12 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_CC"; then
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
else
@@ -3910,11 +4451,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -3925,11 +4470,11 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -3941,34 +4486,138 @@ done
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+fi
+
+fi
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args.
+set dummy ${ac_tool_prefix}clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CC="${ac_tool_prefix}clang"
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
+else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "clang", so it can be a program name with args.
+set dummy clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CC="clang"
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
+else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
CC=$ac_ct_CC
fi
+else
+ CC="$ac_cv_prog_CC"
fi
fi
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "no acceptable C compiler found in \$PATH
See \`config.log' for more details" "$LINENO" 5; }
# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
set X $ac_compile
ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
+for ac_option in --version -v -V -qversion -version; do
{ { ac_try="$ac_compiler $ac_option >&5"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_compiler $ac_option >&5") 2>conftest.err
ac_status=$?
if test -s conftest.err; then
@@ -3978,7 +4627,7 @@ $as_echo "$ac_try_echo"; } >&5
cat conftest.er1 >&5
fi
rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }
done
@@ -3986,7 +4635,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
@@ -3998,9 +4647,9 @@ ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
# Try to create an executable without -o first, disregard a.out.
# It will help us diagnose broken compilers, and finding out an intuition
# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+printf %s "checking whether the C compiler works... " >&6; }
+ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
# The possible output files:
ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
@@ -4021,11 +4670,12 @@ case "(($ac_try" in
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_link_default") 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+then :
# Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
# in a Makefile. We should not override ac_cv_exeext if it was cached,
@@ -4042,7 +4692,7 @@ do
# certainly right.
break;;
*.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+ if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no;
then :; else
ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
fi
@@ -4058,44 +4708,46 @@ do
done
test "$ac_cv_exeext" = no && ac_cv_exeext=
-else
+else $as_nop
ac_file=''
fi
-if test -z "$ac_file"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
+if test -z "$ac_file"
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+printf "%s\n" "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error 77 "C compiler cannot create executables
See \`config.log' for more details" "$LINENO" 5; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
+else $as_nop
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+printf %s "checking for C compiler default output file name... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+printf "%s\n" "$ac_file" >&6; }
ac_exeext=$ac_cv_exeext
rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
+printf %s "checking for suffix of executables... " >&6; }
if { { ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_link") 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+then :
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
# work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -4109,15 +4761,15 @@ for ac_file in conftest.exe conftest conftest.*; do
* ) break;;
esac
done
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+else $as_nop
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot compute suffix of executables: cannot compile and link
See \`config.log' for more details" "$LINENO" 5; }
fi
rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
+printf "%s\n" "$ac_cv_exeext" >&6; }
rm -f conftest.$ac_ext
EXEEXT=$ac_cv_exeext
@@ -4126,7 +4778,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdio.h>
int
-main ()
+main (void)
{
FILE *f = fopen ("conftest.out", "w");
return ferror (f) || fclose (f) != 0;
@@ -4138,8 +4790,8 @@ _ACEOF
ac_clean_files="$ac_clean_files conftest.out"
# Check that the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+printf %s "checking whether we are cross compiling... " >&6; }
if test "$cross_compiling" != yes; then
{ { ac_try="$ac_link"
case "(($ac_try" in
@@ -4147,10 +4799,10 @@ case "(($ac_try" in
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_link") 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }
if { ac_try='./conftest$ac_cv_exeext'
{ { case "(($ac_try" in
@@ -4158,39 +4810,40 @@ $as_echo "$ac_try_echo"; } >&5
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_try") 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; }; then
cross_compiling=no
else
if test "$cross_compiling" = maybe; then
cross_compiling=yes
else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot run C compiled programs.
If you meant to cross compile, use \`--host'.
See \`config.log' for more details" "$LINENO" 5; }
fi
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+printf "%s\n" "$cross_compiling" >&6; }
rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
+printf %s "checking for suffix of object files... " >&6; }
+if test ${ac_cv_objext+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
@@ -4204,11 +4857,12 @@ case "(($ac_try" in
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
(eval "$ac_compile") 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+then :
for ac_file in conftest.o conftest.obj conftest.*; do
test -f "$ac_file" || continue;
case $ac_file in
@@ -4217,31 +4871,32 @@ $as_echo "$ac_try_echo"; } >&5
break;;
esac
done
-else
- $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+ printf "%s\n" "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot compute suffix of object files: cannot compile
See \`config.log' for more details" "$LINENO" 5; }
fi
rm -f conftest.$ac_cv_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
+printf "%s\n" "$ac_cv_objext" >&6; }
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5
+printf %s "checking whether the compiler supports GNU C... " >&6; }
+if test ${ac_cv_c_compiler_gnu+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
#ifndef __GNUC__
choke me
@@ -4251,29 +4906,33 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_compiler_gnu=yes
-else
+else $as_nop
ac_compiler_gnu=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; }
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
if test $ac_compiler_gnu = yes; then
GCC=yes
else
GCC=
fi
-ac_test_CFLAGS=${CFLAGS+set}
+ac_test_CFLAGS=${CFLAGS+y}
ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+printf %s "checking whether $CC accepts -g... " >&6; }
+if test ${ac_cv_prog_cc_g+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_save_c_werror_flag=$ac_c_werror_flag
ac_c_werror_flag=yes
ac_cv_prog_cc_g=no
@@ -4282,57 +4941,60 @@ else
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_prog_cc_g=yes
-else
+else $as_nop
CFLAGS=""
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
-else
+else $as_nop
ac_c_werror_flag=$ac_save_c_werror_flag
CFLAGS="-g"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_prog_cc_g=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
ac_c_werror_flag=$ac_save_c_werror_flag
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+printf "%s\n" "$ac_cv_prog_cc_g" >&6; }
+if test $ac_test_CFLAGS; then
CFLAGS=$ac_save_CFLAGS
elif test $ac_cv_prog_cc_g = yes; then
if test "$GCC" = yes; then
@@ -4347,94 +5009,144 @@ else
CFLAGS=
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_prog_cc_c89=no
+ac_prog_cc_stdc=no
+if test x$ac_prog_cc_stdc = xno
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5
+printf %s "checking for $CC option to enable C11 features... " >&6; }
+if test ${ac_cv_prog_cc_c11+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ac_cv_prog_cc_c11=no
ac_save_CC=$CC
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#include <stdarg.h>
-#include <stdio.h>
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
- char **p;
- int i;
-{
- return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
- char *s;
- va_list v;
- va_start (v,p);
- s = g (p, va_arg (v,int));
- va_end (v);
- return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
- function prototypes and stuff, but not '\xHH' hex character constants.
- These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std is added to get
- proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
- array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std. */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+$ac_c_conftest_c11_program
+_ACEOF
+for ac_arg in '' -std=gnu11
+do
+ CC="$ac_save_CC $ac_arg"
+ if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_prog_cc_c11=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+ test "x$ac_cv_prog_cc_c11" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
- inside strings and character constants. */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+if test "x$ac_cv_prog_cc_c11" = xno
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+ if test "x$ac_cv_prog_cc_c11" = x
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5
+printf "%s\n" "$ac_cv_prog_cc_c11" >&6; }
+ CC="$CC $ac_cv_prog_cc_c11"
+fi
+ ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11
+ ac_prog_cc_stdc=c11
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5
+printf %s "checking for $CC option to enable C99 features... " >&6; }
+if test ${ac_cv_prog_cc_c99+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ac_cv_prog_cc_c99=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$ac_c_conftest_c99_program
+_ACEOF
+for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99=
+do
+ CC="$ac_save_CC $ac_arg"
+ if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_prog_cc_c99=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+ test "x$ac_cv_prog_cc_c99" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
+if test "x$ac_cv_prog_cc_c99" = xno
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+ if test "x$ac_cv_prog_cc_c99" = x
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
+printf "%s\n" "$ac_cv_prog_cc_c99" >&6; }
+ CC="$CC $ac_cv_prog_cc_c99"
+fi
+ ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
+ ac_prog_cc_stdc=c99
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5
+printf %s "checking for $CC option to enable C89 features... " >&6; }
+if test ${ac_cv_prog_cc_c89+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$ac_c_conftest_c89_program
_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
- -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
+ if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_prog_cc_c89=$ac_arg
fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
test "x$ac_cv_prog_cc_c89" != "xno" && break
done
rm -f conftest.$ac_ext
CC=$ac_save_CC
-
fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
- x)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
- xno)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
- *)
- CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
+if test "x$ac_cv_prog_cc_c89" = xno
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+ if test "x$ac_cv_prog_cc_c89" = x
+then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+printf "%s\n" "$ac_cv_prog_cc_c89" >&6; }
+ CC="$CC $ac_cv_prog_cc_c89"
+fi
+ ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
+ ac_prog_cc_stdc=c89
+fi
fi
ac_ext=c
@@ -4443,21 +5155,23 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_ext=c
+
+ ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
-$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
-if ${am_cv_prog_cc_c_o+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+printf %s "checking whether $CC understands -c and -o together... " >&6; }
+if test ${am_cv_prog_cc_c_o+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
@@ -4485,8 +5199,8 @@ _ACEOF
rm -f core conftest*
unset am_i
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
-$as_echo "$am_cv_prog_cc_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+printf "%s\n" "$am_cv_prog_cc_c_o" >&6; }
if test "$am_cv_prog_cc_c_o" != yes; then
# Losing compiler, so override with the script.
# FIXME: It is wrong to rewrite CC.
@@ -4501,12 +5215,90 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler is clang" >&5
+printf %s "checking whether the compiler is clang... " >&6; }
+if test ${gl_cv_compiler_clang+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #ifdef __clang__
+ barfbarf
+ #endif
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_compiler_clang=no
+else $as_nop
+ gl_cv_compiler_clang=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_compiler_clang" >&5
+printf "%s\n" "$gl_cv_compiler_clang" >&6; }
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for compiler option needed when checking for declarations" >&5
+printf %s "checking for compiler option needed when checking for declarations... " >&6; }
+if test ${gl_cv_compiler_check_decl_option+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test $gl_cv_compiler_clang = yes; then
+ save_ac_compile="$ac_compile"
+ ac_compile="$ac_compile -Werror=implicit-function-declaration"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_compiler_check_decl_option='-Werror=implicit-function-declaration'
+else $as_nop
+ gl_cv_compiler_check_decl_option=none
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+ ac_compile="$save_ac_compile"
+ else
+ gl_cv_compiler_check_decl_option=none
+ fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_compiler_check_decl_option" >&5
+printf "%s\n" "$gl_cv_compiler_check_decl_option" >&6; }
+ if test "x$gl_cv_compiler_check_decl_option" != xnone; then
+ ac_compile_for_check_decl="$ac_compile $gl_cv_compiler_check_decl_option"
+ else
+ ac_compile_for_check_decl="$ac_compile"
+ fi
+
DEPDIR="${am__leading_dot}deps"
ac_config_commands="$ac_config_commands depfiles"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
-$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
+printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; }
cat > confinc.mk << 'END'
am__doit:
@echo this is the am__doit target >confinc.out
@@ -4542,11 +5334,12 @@ esac
fi
done
rm -f confinc.* confmf.*
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
-$as_echo "${_am_result}" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
+printf "%s\n" "${_am_result}" >&6; }
# Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
+if test ${enable_dependency_tracking+y}
+then :
enableval=$enable_dependency_tracking;
fi
@@ -4567,11 +5360,12 @@ fi
depcc="$CC" am_compiler_list=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+printf %s "checking dependency style of $depcc... " >&6; }
+if test ${am_cv_CC_dependencies_compiler_type+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
# We make a subdir and do the tests there. Otherwise we can end up
# making bogus files that we don't know about and never remove. For
@@ -4678,8 +5472,8 @@ else
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
+printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; }
CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
if
@@ -4695,45 +5489,298 @@ fi
+ac_header= ac_cache=
+for ac_item in $ac_header_c_list
+do
+ if test $ac_cache; then
+ ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default"
+ if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then
+ printf "%s\n" "#define $ac_item 1" >> confdefs.h
+ fi
+ ac_header= ac_cache=
+ elif test $ac_header; then
+ ac_cache=$ac_item
+ else
+ ac_header=$ac_item
+ fi
+done
+
+
+
+
+
+
+
+
+if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes
+then :
+
+printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
+
+fi
+
+
+
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
+printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; }
+if test ${ac_cv_safe_to_define___extensions__+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+# define __EXTENSIONS__ 1
+ $ac_includes_default
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_safe_to_define___extensions__=yes
+else $as_nop
+ ac_cv_safe_to_define___extensions__=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
+printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; }
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5
+printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; }
+if test ${ac_cv_should_define__xopen_source+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ac_cv_should_define__xopen_source=no
+ if test $ac_cv_header_wchar_h = yes
+then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #include <wchar.h>
+ mbstate_t x;
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #define _XOPEN_SOURCE 500
+ #include <wchar.h>
+ mbstate_t x;
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_should_define__xopen_source=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5
+printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; }
+
+ printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _DARWIN_C_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _GNU_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _HPUX_ALT_XOPEN_SOCKET_API 1" >>confdefs.h
+
+ printf "%s\n" "#define _NETBSD_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _OPENBSD_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_BFP_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_LIB_EXT2__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_MATH_SPEC_FUNCS__ 1" >>confdefs.h
+
+ printf "%s\n" "#define _TANDEM_SOURCE 1" >>confdefs.h
+
+ if test $ac_cv_header_minix_config_h = yes
+then :
+ MINIX=yes
+ printf "%s\n" "#define _MINIX 1" >>confdefs.h
+
+ printf "%s\n" "#define _POSIX_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h
+
+else $as_nop
+ MINIX=
+fi
+ if test $ac_cv_safe_to_define___extensions__ = yes
+then :
+ printf "%s\n" "#define __EXTENSIONS__ 1" >>confdefs.h
+
+fi
+ if test $ac_cv_should_define__xopen_source = yes
+then :
+ printf "%s\n" "#define _XOPEN_SOURCE 500" >>confdefs.h
+
+fi
+
+
+
+ # Make sure we can run config.sub.
+$SHELL "${ac_aux_dir}config.sub" sun4 >/dev/null 2>&1 ||
+ as_fn_error $? "cannot run $SHELL ${ac_aux_dir}config.sub" "$LINENO" 5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+printf %s "checking build system type... " >&6; }
+if test ${ac_cv_build+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+ ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"`
+test "x$ac_build_alias" = x &&
+ as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
+ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` ||
+ as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+printf "%s\n" "$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
+esac
+build=$ac_cv_build
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_build
+shift
+build_cpu=$1
+build_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+build_os=$*
+IFS=$ac_save_IFS
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+printf %s "checking host system type... " >&6; }
+if test ${ac_cv_host+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test "x$host_alias" = x; then
+ ac_cv_host=$ac_cv_build
+else
+ ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` ||
+ as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5
+fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+printf "%s\n" "$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
+esac
+host=$ac_cv_host
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_host
+shift
+host_cpu=$1
+host_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+host_os=$*
+IFS=$ac_save_IFS
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
+
+
+
+
+
+
+ case "$host_os" in
+ openbsd*)
+
+printf "%s\n" "#define _ISOC11_SOURCE 1" >>confdefs.h
+
+ ;;
+ esac
+
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+printf %s "checking how to run the C preprocessor... " >&6; }
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
fi
if test -z "$CPP"; then
- if ${ac_cv_prog_CPP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CPP needs to be expanded
- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+ if test ${ac_cv_prog_CPP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ # Double quotes because $CC needs to be expanded
+ for CPP in "$CC -E" "$CC -E -traditional-cpp" cpp /lib/cpp
do
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
do
# Use a header file that comes with gcc, so configuring glibc
# with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
+#include <limits.h>
Syntax error
_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
-else
+else $as_nop
# Broken: fails on valid input.
continue
fi
@@ -4745,10 +5792,11 @@ rm -f conftest.err conftest.i conftest.$ac_ext
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
# Broken: success on invalid input.
continue
-else
+else $as_nop
# Passes both tests.
ac_preproc_ok=:
break
@@ -4758,7 +5806,8 @@ rm -f conftest.err conftest.i conftest.$ac_ext
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
+if $ac_preproc_ok
+then :
break
fi
@@ -4770,29 +5819,24 @@ fi
else
ac_cv_prog_CPP=$CPP
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
+printf "%s\n" "$CPP" >&6; }
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
do
# Use a header file that comes with gcc, so configuring glibc
# with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
+#include <limits.h>
Syntax error
_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
-else
+else $as_nop
# Broken: fails on valid input.
continue
fi
@@ -4804,10 +5848,11 @@ rm -f conftest.err conftest.i conftest.$ac_ext
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
# Broken: success on invalid input.
continue
-else
+else $as_nop
# Passes both tests.
ac_preproc_ok=:
break
@@ -4817,11 +5862,12 @@ rm -f conftest.err conftest.i conftest.$ac_ext
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
+if $ac_preproc_ok
+then :
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+else $as_nop
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
See \`config.log' for more details" "$LINENO" 5; }
fi
@@ -4833,11 +5879,12 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+printf %s "checking for grep that handles long lines and -e... " >&6; }
+if test ${ac_cv_path_GREP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -z "$GREP"; then
ac_path_GREP_found=false
# Loop through the user's path and test for each of PROGNAME-LIST
@@ -4845,10 +5892,15 @@ else
for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_prog in grep ggrep
+ do
for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ ac_path_GREP="$as_dir$ac_prog$ac_exec_ext"
as_fn_executable_p "$ac_path_GREP" || continue
# Check for GNU ac_path_GREP and select it if it is found.
# Check for GNU $ac_path_GREP
@@ -4857,13 +5909,13 @@ case `"$ac_path_GREP" --version 2>&1` in
ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
*)
ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
+ printf %s 0123456789 >"conftest.in"
while :
do
cat "conftest.in" "conftest.in" >"conftest.tmp"
mv "conftest.tmp" "conftest.in"
cp "conftest.in" "conftest.nl"
- $as_echo 'GREP' >> "conftest.nl"
+ printf "%s\n" 'GREP' >> "conftest.nl"
"$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -4891,16 +5943,17 @@ else
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+printf "%s\n" "$ac_cv_path_GREP" >&6; }
GREP="$ac_cv_path_GREP"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+printf %s "checking for egrep... " >&6; }
+if test ${ac_cv_path_EGREP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
then ac_cv_path_EGREP="$GREP -E"
else
@@ -4911,10 +5964,15 @@ else
for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_prog in egrep
+ do
for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
as_fn_executable_p "$ac_path_EGREP" || continue
# Check for GNU ac_path_EGREP and select it if it is found.
# Check for GNU $ac_path_EGREP
@@ -4923,13 +5981,13 @@ case `"$ac_path_EGREP" --version 2>&1` in
ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
*)
ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
+ printf %s 0123456789 >"conftest.in"
while :
do
cat "conftest.in" "conftest.in" >"conftest.tmp"
mv "conftest.tmp" "conftest.in"
cp "conftest.in" "conftest.nl"
- $as_echo 'EGREP' >> "conftest.nl"
+ printf "%s\n" 'EGREP' >> "conftest.nl"
"$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -4958,288 +6016,20 @@ fi
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+printf "%s\n" "$ac_cv_path_EGREP" >&6; }
EGREP="$ac_cv_path_EGREP"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_header_stdc=yes
-else
- ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then :
- :
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
- (('a' <= (c) && (c) <= 'i') \
- || ('j' <= (c) && (c) <= 'r') \
- || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
- int i;
- for (i = 0; i < 256; i++)
- if (XOR (islower (i), ISLOWER (i))
- || toupper (i) != TOUPPER (i))
- return 2;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
- inttypes.h stdint.h unistd.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
- ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
-if test "x$ac_cv_header_minix_config_h" = xyes; then :
- MINIX=yes
-else
- MINIX=
-fi
-
-
- if test "$MINIX" = yes; then
-
-$as_echo "#define _POSIX_SOURCE 1" >>confdefs.h
-
-
-$as_echo "#define _POSIX_1_SOURCE 2" >>confdefs.h
-
-
-$as_echo "#define _MINIX 1" >>confdefs.h
-
-
-$as_echo "#define _NETBSD_SOURCE 1" >>confdefs.h
-
- fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
-$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; }
-if ${ac_cv_safe_to_define___extensions__+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-# define __EXTENSIONS__ 1
- $ac_includes_default
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_safe_to_define___extensions__=yes
-else
- ac_cv_safe_to_define___extensions__=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
-$as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
- test $ac_cv_safe_to_define___extensions__ = yes &&
- $as_echo "#define __EXTENSIONS__ 1" >>confdefs.h
-
- $as_echo "#define _ALL_SOURCE 1" >>confdefs.h
-
- $as_echo "#define _DARWIN_C_SOURCE 1" >>confdefs.h
-
- $as_echo "#define _GNU_SOURCE 1" >>confdefs.h
-
- $as_echo "#define _NETBSD_SOURCE 1" >>confdefs.h
-
- $as_echo "#define _OPENBSD_SOURCE 1" >>confdefs.h
-
- $as_echo "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
-
- $as_echo "#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1" >>confdefs.h
-
- $as_echo "#define __STDC_WANT_IEC_60559_BFP_EXT__ 1" >>confdefs.h
-
- $as_echo "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h
-
- $as_echo "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h
-
- $as_echo "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h
-
- $as_echo "#define __STDC_WANT_LIB_EXT2__ 1" >>confdefs.h
-
- $as_echo "#define __STDC_WANT_MATH_SPEC_FUNCS__ 1" >>confdefs.h
-
- $as_echo "#define _TANDEM_SOURCE 1" >>confdefs.h
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5
-$as_echo_n "checking whether _XOPEN_SOURCE should be defined... " >&6; }
-if ${ac_cv_should_define__xopen_source+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_should_define__xopen_source=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <wchar.h>
- mbstate_t x;
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #define _XOPEN_SOURCE 500
- #include <wchar.h>
- mbstate_t x;
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_should_define__xopen_source=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5
-$as_echo "$ac_cv_should_define__xopen_source" >&6; }
- test $ac_cv_should_define__xopen_source = yes &&
- $as_echo "#define _XOPEN_SOURCE 500" >>confdefs.h
-
- $as_echo "#define _HPUX_ALT_XOPEN_SOCKET_API 1" >>confdefs.h
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Minix Amsterdam compiler" >&5
-$as_echo_n "checking for Minix Amsterdam compiler... " >&6; }
-if ${gl_cv_c_amsterdam_compiler+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Minix Amsterdam compiler" >&5
+printf %s "checking for Minix Amsterdam compiler... " >&6; }
+if test ${gl_cv_c_amsterdam_compiler+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -5250,17 +6040,18 @@ Amsterdam
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Amsterdam" >/dev/null 2>&1; then :
+ $EGREP "Amsterdam" >/dev/null 2>&1
+then :
gl_cv_c_amsterdam_compiler=yes
-else
+else $as_nop
gl_cv_c_amsterdam_compiler=no
fi
-rm -f conftest*
+rm -rf conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_amsterdam_compiler" >&5
-$as_echo "$gl_cv_c_amsterdam_compiler" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_amsterdam_compiler" >&5
+printf "%s\n" "$gl_cv_c_amsterdam_compiler" >&6; }
if test $gl_cv_c_amsterdam_compiler = yes; then
if test -z "$AR"; then
@@ -5276,11 +6067,12 @@ $as_echo "$gl_cv_c_amsterdam_compiler" >&6; }
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AR+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$AR"; then
ac_cv_prog_AR="$AR" # Let the user override the test.
else
@@ -5288,11 +6080,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_AR="${ac_tool_prefix}ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -5303,11 +6099,11 @@ fi
fi
AR=$ac_cv_prog_AR
if test -n "$AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
+printf "%s\n" "$AR" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -5316,11 +6112,12 @@ if test -z "$ac_cv_prog_AR"; then
ac_ct_AR=$AR
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AR+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_AR+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_AR"; then
ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
else
@@ -5328,11 +6125,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_AR="ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -5343,11 +6144,11 @@ fi
fi
ac_ct_AR=$ac_cv_prog_ac_ct_AR
if test -n "$ac_ct_AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
+printf "%s\n" "$ac_ct_AR" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_AR" = x; then
@@ -5355,8 +6156,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
@@ -5378,11 +6179,12 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_RANLIB+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$RANLIB"; then
ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
else
@@ -5390,11 +6192,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -5405,11 +6211,11 @@ fi
fi
RANLIB=$ac_cv_prog_RANLIB
if test -n "$RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
+printf "%s\n" "$RANLIB" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -5418,11 +6224,12 @@ if test -z "$ac_cv_prog_RANLIB"; then
ac_ct_RANLIB=$RANLIB
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_RANLIB+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_RANLIB"; then
ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
else
@@ -5430,11 +6237,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -5445,11 +6256,11 @@ fi
fi
ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
if test -n "$ac_ct_RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
+printf "%s\n" "$ac_ct_RANLIB" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_RANLIB" = x; then
@@ -5457,8 +6268,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
RANLIB=$ac_ct_RANLIB
@@ -5479,6 +6290,8 @@ fi
# Code from module absolute-header:
# Code from module alloca-opt:
+ # Code from module attribute:
+ # Code from module c99:
# Code from module errno:
# Code from module extensions:
# Code from module extern-inline:
@@ -5488,6 +6301,7 @@ fi
# Code from module havelib:
# Code from module iconv:
# Code from module include_next:
+ # Code from module inttypes-incomplete:
# Code from module limits-h:
# Code from module memchr:
# Code from module multiarch:
@@ -5497,6 +6311,7 @@ fi
# Code from module snippet/c++defs:
# Code from module snippet/warn-on-use:
# Code from module ssize_t:
+ # Code from module std-gnu11:
# Code from module stddef:
# Code from module stdint:
# Code from module stdio:
@@ -5512,11 +6327,12 @@ fi
# Code from module xsize:
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
+printf %s "checking for a sed that does not truncate output... " >&6; }
+if test ${ac_cv_path_SED+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
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"
@@ -5530,10 +6346,15 @@ else
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in sed gsed; do
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ 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"
+ ac_path_SED="$as_dir$ac_prog$ac_exec_ext"
as_fn_executable_p "$ac_path_SED" || continue
# Check for GNU ac_path_SED and select it if it is found.
# Check for GNU $ac_path_SED
@@ -5542,13 +6363,13 @@ case `"$ac_path_SED" --version 2>&1` in
ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
*)
ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
+ printf %s 0123456789 >"conftest.in"
while :
do
cat "conftest.in" "conftest.in" >"conftest.tmp"
mv "conftest.tmp" "conftest.in"
cp "conftest.in" "conftest.nl"
- $as_echo '' >> "conftest.nl"
+ printf "%s\n" '' >> "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
as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -5576,23 +6397,24 @@ else
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
+printf "%s\n" "$ac_cv_path_SED" >&6; }
SED="$ac_cv_path_SED"
rm -f conftest.sed
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
-$as_echo_n "checking whether NLS is requested... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
+printf %s "checking whether NLS is requested... " >&6; }
# Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
+if test ${enable_nls+y}
+then :
enableval=$enable_nls; USE_NLS=$enableval
-else
+else $as_nop
USE_NLS=yes
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+printf "%s\n" "$USE_NLS" >&6; }
@@ -5631,11 +6453,12 @@ rm -f conf$$.file
# Extract the first word of "msgfmt", so it can be a program name with args.
set dummy msgfmt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGFMT+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_MSGFMT+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
case "$MSGFMT" in
[\\/]* | ?:[\\/]*)
ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
@@ -5663,20 +6486,21 @@ esac
fi
MSGFMT="$ac_cv_path_MSGFMT"
if test "$MSGFMT" != ":"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
-$as_echo "$MSGFMT" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
+printf "%s\n" "$MSGFMT" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
# Extract the first word of "gmsgfmt", so it can be a program name with args.
set dummy gmsgfmt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GMSGFMT+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_GMSGFMT+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
case $GMSGFMT in
[\\/]* | ?:[\\/]*)
ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
@@ -5686,11 +6510,15 @@ else
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ ac_cv_path_GMSGFMT="$as_dir$ac_word$ac_exec_ext"
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -5703,11 +6531,11 @@ esac
fi
GMSGFMT=$ac_cv_path_GMSGFMT
if test -n "$GMSGFMT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
-$as_echo "$GMSGFMT" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
+printf "%s\n" "$GMSGFMT" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -5753,11 +6581,12 @@ rm -f conf$$.file
# Extract the first word of "xgettext", so it can be a program name with args.
set dummy xgettext; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_XGETTEXT+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_XGETTEXT+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
case "$XGETTEXT" in
[\\/]* | ?:[\\/]*)
ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
@@ -5785,11 +6614,11 @@ esac
fi
XGETTEXT="$ac_cv_path_XGETTEXT"
if test "$XGETTEXT" != ":"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
-$as_echo "$XGETTEXT" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
+printf "%s\n" "$XGETTEXT" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
rm -f messages.po
@@ -5830,11 +6659,12 @@ rm -f conf$$.file
# Extract the first word of "msgmerge", so it can be a program name with args.
set dummy msgmerge; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGMERGE+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_MSGMERGE+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
case "$MSGMERGE" in
[\\/]* | ?:[\\/]*)
ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path.
@@ -5861,11 +6691,11 @@ esac
fi
MSGMERGE="$ac_cv_path_MSGMERGE"
if test "$MSGMERGE" != ":"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
-$as_echo "$MSGMERGE" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
+printf "%s\n" "$MSGMERGE" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -5894,83 +6724,13 @@ fi
eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
prefix="$acl_save_prefix"
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
- ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
- as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$host_alias" = x; then
- ac_cv_host=$ac_cv_build
-else
- ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
# Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
+if test ${with_gnu_ld+y}
+then :
withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
+else $as_nop
with_gnu_ld=no
fi
@@ -5988,25 +6748,26 @@ if test "${PATH_SEPARATOR+set}" != set; then
fi
if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld" >&5
-$as_echo_n "checking for ld... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld" >&5
+printf %s "checking for ld... " >&6; }
elif test "$GCC" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
+printf %s "checking for ld used by $CC... " >&6; }
elif test "$with_gnu_ld" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+printf %s "checking for GNU ld... " >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+printf %s "checking for non-GNU ld... " >&6; }
fi
if test -n "$LD"; then
# Let the user override the test with a path.
:
else
- if ${acl_cv_path_LD+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ if test ${acl_cv_path_LD+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
acl_cv_path_LD= # Final result of this test
ac_prog=ld # Program to search in $PATH
@@ -6068,14 +6829,15 @@ else
*-*-aix*)
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#if defined __powerpc64__ || defined _ARCH_PPC64
+#if defined __powerpc64__ || defined __LP64__
int ok;
#else
error fail
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
# The compiler produces 64-bit code. Add option '-b64' so that the
# linker groks 64-bit object files.
case "$acl_cv_path_LD " in
@@ -6084,7 +6846,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
esac
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
sparc64-*-netbsd*)
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -6096,9 +6858,10 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
-else
+else $as_nop
# The compiler produces 32-bit code. Add option '-m elf32_sparc'
# so that the linker groks 32-bit object files.
case "$acl_cv_path_LD " in
@@ -6107,7 +6870,7 @@ else
esac
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
esac
@@ -6116,18 +6879,19 @@ fi
LD="$acl_cv_path_LD"
fi
if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+printf "%s\n" "$LD" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${acl_cv_prog_gnu_ld+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+printf %s "checking if the linker ($LD) is GNU ld... " >&6; }
+if test ${acl_cv_prog_gnu_ld+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
# I'd rather use --version here, but apparently some GNU lds only accept -v.
case `$LD -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
@@ -6138,18 +6902,20 @@ case `$LD -v 2>&1 </dev/null` in
;;
esac
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
-$as_echo "$acl_cv_prog_gnu_ld" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
+printf "%s\n" "$acl_cv_prog_gnu_ld" >&6; }
with_gnu_ld=$acl_cv_prog_gnu_ld
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
-$as_echo_n "checking for shared library run path origin... " >&6; }
-if ${acl_cv_rpath+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
+printf %s "checking for shared library run path origin... " >&6; }
+if test ${acl_cv_rpath+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
@@ -6158,8 +6924,8 @@ else
acl_cv_rpath=done
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
-$as_echo "$acl_cv_rpath" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
+printf "%s\n" "$acl_cv_rpath" >&6; }
wl="$acl_cv_wl"
acl_libext="$acl_cv_libext"
acl_shlibext="$acl_cv_shlibext"
@@ -6170,31 +6936,61 @@ $as_echo "$acl_cv_rpath" >&6; }
acl_hardcode_direct="$acl_cv_hardcode_direct"
acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
# Check whether --enable-rpath was given.
-if test "${enable_rpath+set}" = set; then :
+if test ${enable_rpath+y}
+then :
enableval=$enable_rpath; :
-else
+else $as_nop
enable_rpath=yes
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5
-$as_echo_n "checking 32-bit host C ABI... " >&6; }
-if ${gl_cv_host_cpu_c_abi_32bit+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5
+printf %s "checking 32-bit host C ABI... " >&6; }
+if test ${gl_cv_host_cpu_c_abi_32bit+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$gl_cv_host_cpu_c_abi"; then
case "$gl_cv_host_cpu_c_abi" in
i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc)
gl_cv_host_cpu_c_abi_32bit=yes ;;
- *)
+ x86_64 | alpha | arm64 | hppa64 | ia64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 )
gl_cv_host_cpu_c_abi_32bit=no ;;
+ *)
+ gl_cv_host_cpu_c_abi_32bit=unknown ;;
esac
else
case "$host_cpu" in
- i[4567]86 )
+ # CPUs that only support a 32-bit ABI.
+ arc \
+ | bfin \
+ | cris* \
+ | csky \
+ | epiphany \
+ | ft32 \
+ | h8300 \
+ | m68k \
+ | microblaze | microblazeel \
+ | nds32 | nds32le | nds32be \
+ | nios2 | nios2eb | nios2el \
+ | or1k* \
+ | or32 \
+ | sh | sh1234 | sh1234elb \
+ | tic6x \
+ | xtensa* )
+ gl_cv_host_cpu_c_abi_32bit=yes
+ ;;
+
+ # CPUs that only support a 64-bit ABI.
+ alpha | alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] \
+ | mmix )
+ gl_cv_host_cpu_c_abi_32bit=no
+ ;;
+
+ i[34567]86 )
gl_cv_host_cpu_c_abi_32bit=yes
;;
@@ -6217,12 +7013,13 @@ else
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=no
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
arm* | aarch64 )
@@ -6241,12 +7038,13 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=no
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
hppa1.0 | hppa1.1 | hppa2.0* | hppa64 )
@@ -6261,12 +7059,13 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=no
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
ia64* )
@@ -6281,12 +7080,13 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=yes
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
mips* )
@@ -6301,12 +7101,13 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=no
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
powerpc* )
@@ -6318,19 +7119,20 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
# be generating 64-bit code.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#if defined __powerpc64__ || defined _ARCH_PPC64
+#if defined __powerpc64__ || defined __LP64__
int ok;
#else
error fail
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=no
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
rs6000 )
@@ -6349,12 +7151,13 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=no
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
s390* )
@@ -6369,12 +7172,13 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=no
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
sparc | sparc64 )
@@ -6389,23 +7193,24 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_host_cpu_c_abi_32bit=no
-else
+else $as_nop
gl_cv_host_cpu_c_abi_32bit=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
*)
- gl_cv_host_cpu_c_abi_32bit=no
+ gl_cv_host_cpu_c_abi_32bit=unknown
;;
esac
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5
-$as_echo "$gl_cv_host_cpu_c_abi_32bit" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5
+printf "%s\n" "$gl_cv_host_cpu_c_abi_32bit" >&6; }
HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit"
@@ -6413,90 +7218,156 @@ $as_echo "$gl_cv_host_cpu_c_abi_32bit" >&6; }
- case "$host_os" in
- solaris*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
-$as_echo_n "checking for 64-bit host... " >&6; }
-if ${gl_cv_solaris_64bit+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ELF binary format" >&5
+printf %s "checking for ELF binary format... " >&6; }
+if test ${gl_cv_elf+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#ifdef _LP64
- int ok;
- #else
- error fail
- #endif
+#ifdef __ELF__
+ Extensible Linking Format
+ #endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- gl_cv_solaris_64bit=yes
-else
- gl_cv_solaris_64bit=no
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "Extensible Linking Format" >/dev/null 2>&1
+then :
+ gl_cv_elf=yes
+else $as_nop
+ gl_cv_elf=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -rf conftest*
+
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5
-$as_echo "$gl_cv_solaris_64bit" >&6; };;
- esac
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_elf" >&5
+printf "%s\n" "$gl_cv_elf" >&6; }
+ if test $gl_cv_elf = yes; then
+ # Extract the ELF class of a file (5th byte) in decimal.
+ # Cf. https://en.wikipedia.org/wiki/Executable_and_Linkable_Format#File_header
+ if od -A x < /dev/null >/dev/null 2>/dev/null; then
+ # Use POSIX od.
+ func_elfclass ()
+ {
+ od -A n -t d1 -j 4 -N 1
+ }
+ else
+ # Use BSD hexdump.
+ func_elfclass ()
+ {
+ dd bs=1 count=1 skip=4 2>/dev/null | hexdump -e '1/1 "%3d "'
+ echo
+ }
+ fi
+ # Use 'expr', not 'test', to compare the values of func_elfclass, because on
+ # Solaris 11 OpenIndiana and Solaris 11 OmniOS, the result is 001 or 002,
+ # not 1 or 2.
+ case $HOST_CPU_C_ABI_32BIT in
+ yes)
+ # 32-bit ABI.
+ acl_is_expected_elfclass ()
+ {
+ expr "`func_elfclass | sed -e 's/[ ]//g'`" = 1 > /dev/null
+ }
+ ;;
+ no)
+ # 64-bit ABI.
+ acl_is_expected_elfclass ()
+ {
+ expr "`func_elfclass | sed -e 's/[ ]//g'`" = 2 > /dev/null
+ }
+ ;;
+ *)
+ # Unknown.
+ acl_is_expected_elfclass ()
+ {
+ :
+ }
+ ;;
+ esac
+ else
+ acl_is_expected_elfclass ()
+ {
+ :
+ }
+ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5
-$as_echo_n "checking for the common suffixes of directories in the library search path... " >&6; }
-if ${acl_cv_libdirstems+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- acl_libdirstem=lib
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5
+printf %s "checking for the common suffixes of directories in the library search path... " >&6; }
+if test ${acl_cv_libdirstems+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ acl_libdirstem=lib
acl_libdirstem2=
+ acl_libdirstem3=
case "$host_os" in
solaris*)
- if test $gl_cv_solaris_64bit = yes; then
- acl_libdirstem=lib/64
+ if test $HOST_CPU_C_ABI_32BIT = no; then
+ acl_libdirstem2=lib/64
case "$host_cpu" in
- sparc*) acl_libdirstem2=lib/sparcv9 ;;
- i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
+ sparc*) acl_libdirstem3=lib/sparcv9 ;;
+ i*86 | x86_64) acl_libdirstem3=lib/amd64 ;;
esac
fi
;;
*)
- if test "$HOST_CPU_C_ABI_32BIT" != yes; then
- searchpath=`(if test -f /usr/bin/gcc \
- && LC_ALL=C /usr/bin/gcc -print-search-dirs >/dev/null 2>/dev/null; then \
- LC_ALL=C /usr/bin/gcc -print-search-dirs; \
- else \
- LC_ALL=C $CC -print-search-dirs; \
- fi) 2>/dev/null \
- | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
- if test -n "$searchpath"; then
- acl_save_IFS="${IFS= }"; IFS=":"
- for searchdir in $searchpath; do
- if test -d "$searchdir"; then
- case "$searchdir" in
- */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
- */../ | */.. )
- # Better ignore directories of this form. They are misleading.
- ;;
- *) searchdir=`cd "$searchdir" && pwd`
- case "$searchdir" in
- */lib64 ) acl_libdirstem=lib64 ;;
- esac ;;
- esac
- fi
- done
- IFS="$acl_save_IFS"
+ searchpath=`(LC_ALL=C $CC $CPPFLAGS $CFLAGS -print-search-dirs) 2>/dev/null \
+ | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+ if test $HOST_CPU_C_ABI_32BIT != no; then
+ # 32-bit or unknown ABI.
+ if test -d /usr/lib32; then
+ acl_libdirstem2=lib32
+ fi
+ fi
+ if test $HOST_CPU_C_ABI_32BIT != yes; then
+ # 64-bit or unknown ABI.
+ if test -d /usr/lib64; then
+ acl_libdirstem3=lib64
+ fi
+ fi
+ if test -n "$searchpath"; then
+ acl_save_IFS="${IFS= }"; IFS=":"
+ for searchdir in $searchpath; do
+ if test -d "$searchdir"; then
+ case "$searchdir" in
+ */lib32/ | */lib32 ) acl_libdirstem2=lib32 ;;
+ */lib64/ | */lib64 ) acl_libdirstem3=lib64 ;;
+ */../ | */.. )
+ # Better ignore directories of this form. They are misleading.
+ ;;
+ *) searchdir=`cd "$searchdir" && pwd`
+ case "$searchdir" in
+ */lib32 ) acl_libdirstem2=lib32 ;;
+ */lib64 ) acl_libdirstem3=lib64 ;;
+ esac ;;
+ esac
+ fi
+ done
+ IFS="$acl_save_IFS"
+ if test $HOST_CPU_C_ABI_32BIT = yes; then
+ # 32-bit ABI.
+ acl_libdirstem3=
+ fi
+ if test $HOST_CPU_C_ABI_32BIT = no; then
+ # 64-bit ABI.
+ acl_libdirstem2=
fi
fi
;;
esac
test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
- acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2"
+ test -n "$acl_libdirstem3" || acl_libdirstem3="$acl_libdirstem"
+ acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2,$acl_libdirstem3"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5
-$as_echo "$acl_cv_libdirstems" >&6; }
- # Decompose acl_cv_libdirstems into acl_libdirstem and acl_libdirstem2.
- acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
- acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e '/,/s/.*,//'`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5
+printf "%s\n" "$acl_cv_libdirstems" >&6; }
+ acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
+ acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,//' -e 's/,.*//'`
+ acl_libdirstem3=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,[^,]*,//' -e 's/,.*//'`
@@ -6517,13 +7388,16 @@ $as_echo "$acl_cv_libdirstems" >&6; }
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
# Check whether --with-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then :
+if test ${with_libiconv_prefix+y}
+then :
withval=$with_libiconv_prefix;
if test "X$withval" = "Xno"; then
use_additional=no
@@ -6537,6 +7411,8 @@ if test "${with_libiconv_prefix+set}" = set; then :
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
@@ -6544,15 +7420,19 @@ if test "${with_libiconv_prefix+set}" = set; then :
else
additional_includedir="$withval/include"
additional_libdir="$withval/$acl_libdirstem"
- if test "$acl_libdirstem2" != "$acl_libdirstem" \
- && test ! -d "$withval/$acl_libdirstem"; then
- additional_libdir="$withval/$acl_libdirstem2"
- fi
+ additional_libdir2="$withval/$acl_libdirstem2"
+ additional_libdir3="$withval/$acl_libdirstem3"
fi
fi
fi
+ if test "X$additional_libdir2" = "X$additional_libdir"; then
+ additional_libdir2=
+ fi
+ if test "X$additional_libdir3" = "X$additional_libdir"; then
+ additional_libdir3=
+ fi
LIBICONV=
LTLIBICONV=
INCICONV=
@@ -6598,45 +7478,51 @@ fi
shrext=
fi
if test $use_additional = yes; then
- dir="$additional_libdir"
- if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext"
- else
- if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
- ver=`(cd "$dir" && \
- for f in "$libname$shrext".*; do echo "$f"; done \
- | sed -e "s,^$libname$shrext\\\\.,," \
- | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
- | sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext.$ver"
+ for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do
+ if test "X$found_dir" = "X"; then
+ eval dir=\$$additional_libdir_variable
+ if test -n "$dir"; then
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
+ else
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
+ fi
fi
- else
- eval library_names=\"$acl_library_names_spec\"
- for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
- found_so="$dir/$f"
- break
+ found_a="$dir/$libname.$acl_libext"
fi
- done
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
+ fi
+ fi
fi
fi
- fi
- if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
- found_dir="$dir"
- found_a="$dir/$libname.$acl_libext"
- fi
- fi
- if test "X$found_dir" != "X"; then
- if test -f "$dir/$libname.la"; then
- found_la="$dir/$libname.la"
- fi
- fi
+ done
fi
if test "X$found_dir" = "X"; then
for x in $LDFLAGS $LTLIBICONV; do
@@ -6653,7 +7539,7 @@ fi
-L*)
dir=`echo "X$x" | sed -e 's/^X-L//'`
if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
found_dir="$dir"
found_so="$dir/$libname$shrext"
else
@@ -6663,14 +7549,14 @@ fi
| sed -e "s,^$libname$shrext\\\\.,," \
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
| sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
found_dir="$dir"
found_so="$dir/$libname$shrext.$ver"
fi
else
eval library_names=\"$acl_library_names_spec\"
for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
found_dir="$dir"
found_so="$dir/$f"
break
@@ -6680,7 +7566,7 @@ fi
fi
fi
if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
found_a="$dir/$libname.$acl_libext"
fi
@@ -6702,7 +7588,8 @@ fi
if test "X$found_so" != "X"; then
if test "$enable_rpath" = no \
|| test "X$found_dir" = "X/usr/$acl_libdirstem" \
- || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
+ || test "X$found_dir" = "X/usr/$acl_libdirstem2" \
+ || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then
LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
else
haveit=
@@ -6781,6 +7668,13 @@ fi
fi
additional_includedir="$basedir/include"
;;
+ */$acl_libdirstem3 | */$acl_libdirstem3/)
+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'`
+ if test "$name" = 'iconv'; then
+ LIBICONV_PREFIX="$basedir"
+ fi
+ additional_includedir="$basedir/include"
+ ;;
esac
if test "X$additional_includedir" != "X"; then
if test "X$additional_includedir" != "X/usr/include"; then
@@ -6826,12 +7720,14 @@ fi
for dep in $dependency_libs; do
case "$dep" in
-L*)
- additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
- if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
- && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
+ dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
+ if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then
haveit=
- if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
- || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
+ if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then
if test -n "$GCC"; then
case $host_os in
linux* | gnu* | k*bsd*-gnu) haveit=yes;;
@@ -6850,14 +7746,14 @@ fi
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ LIBICONV="${LIBICONV}${LIBICONV:+ }-L$dependency_libdir"
fi
fi
haveit=
@@ -6871,14 +7767,14 @@ fi
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$dependency_libdir"
fi
fi
fi
@@ -6910,7 +7806,14 @@ fi
fi
;;
-l*)
- names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
+ dep=`echo "X$dep" | sed -e 's/^X-l//'`
+ if test "X$dep" != Xc \
+ || case $host_os in
+ linux* | gnu* | k*bsd*-gnu) false ;;
+ *) true ;;
+ esac; then
+ names_next_round="$names_next_round $dep"
+ fi
;;
*.la)
names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
@@ -6986,111 +7889,80 @@ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
-$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; }
-if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
+printf %s "checking for CFPreferencesCopyAppValue... " >&6; }
+if test ${gt_cv_func_CFPreferencesCopyAppValue+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
gt_save_LIBS="$LIBS"
LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <CoreFoundation/CFPreferences.h>
int
-main ()
+main (void)
{
CFPreferencesCopyAppValue(NULL, NULL)
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gt_cv_func_CFPreferencesCopyAppValue=yes
-else
+else $as_nop
gt_cv_func_CFPreferencesCopyAppValue=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS="$gt_save_LIBS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5
-$as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5
+printf "%s\n" "$gt_cv_func_CFPreferencesCopyAppValue" >&6; }
if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
-$as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h
-
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5
-$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; }
-if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- gt_save_LIBS="$LIBS"
- LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <CoreFoundation/CFLocale.h>
-int
-main ()
-{
-CFLocaleCopyCurrent();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gt_cv_func_CFLocaleCopyCurrent=yes
-else
- gt_cv_func_CFLocaleCopyCurrent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LIBS="$gt_save_LIBS"
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5
-$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; }
- if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
-
-$as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyPreferredLanguages" >&5
-$as_echo_n "checking for CFLocaleCopyPreferredLanguages... " >&6; }
-if ${gt_cv_func_CFLocaleCopyPreferredLanguages+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyPreferredLanguages" >&5
+printf %s "checking for CFLocaleCopyPreferredLanguages... " >&6; }
+if test ${gt_cv_func_CFLocaleCopyPreferredLanguages+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
gt_save_LIBS="$LIBS"
LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <CoreFoundation/CFLocale.h>
int
-main ()
+main (void)
{
CFLocaleCopyPreferredLanguages();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gt_cv_func_CFLocaleCopyPreferredLanguages=yes
-else
+else $as_nop
gt_cv_func_CFLocaleCopyPreferredLanguages=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS="$gt_save_LIBS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyPreferredLanguages" >&5
-$as_echo "$gt_cv_func_CFLocaleCopyPreferredLanguages" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyPreferredLanguages" >&5
+printf "%s\n" "$gt_cv_func_CFLocaleCopyPreferredLanguages" >&6; }
if test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then
-$as_echo "#define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1" >>confdefs.h
+printf "%s\n" "#define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1" >>confdefs.h
fi
INTL_MACOSX_LIBS=
if test $gt_cv_func_CFPreferencesCopyAppValue = yes \
- || test $gt_cv_func_CFLocaleCopyCurrent = yes \
|| test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then
INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
fi
@@ -7132,11 +8004,12 @@ typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
gt_expression_test_code=
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
-$as_echo_n "checking for GNU gettext in libc... " >&6; }
-if eval \${$gt_func_gnugettext_libc+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
+printf %s "checking for GNU gettext in libc... " >&6; }
+if eval test \${$gt_func_gnugettext_libc+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -7151,7 +8024,7 @@ extern int *_nl_domain_bindings;
$gt_revision_test_code
int
-main ()
+main (void)
{
bindtextdomain ("", "");
@@ -7161,17 +8034,18 @@ return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
eval "$gt_func_gnugettext_libc=yes"
-else
+else $as_nop
eval "$gt_func_gnugettext_libc=no"
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
fi
eval ac_res=\$$gt_func_gnugettext_libc
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
@@ -7204,11 +8078,12 @@ $as_echo "$ac_res" >&6; }
done
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
-$as_echo_n "checking for iconv... " >&6; }
-if ${am_cv_func_iconv+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
+printf %s "checking for iconv... " >&6; }
+if test ${am_cv_func_iconv+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
am_cv_func_iconv="no, consider installing GNU libiconv"
am_cv_lib_iconv=no
@@ -7219,7 +8094,7 @@ else
#include <iconv.h>
int
-main ()
+main (void)
{
iconv_t cd = iconv_open("","");
iconv(cd,NULL,NULL,NULL,NULL);
@@ -7228,10 +8103,11 @@ iconv_t cd = iconv_open("","");
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_func_iconv=yes
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
if test "$am_cv_func_iconv" != yes; then
am_save_LIBS="$LIBS"
@@ -7243,7 +8119,7 @@ rm -f core conftest.err conftest.$ac_objext \
#include <iconv.h>
int
-main ()
+main (void)
{
iconv_t cd = iconv_open("","");
iconv(cd,NULL,NULL,NULL,NULL);
@@ -7252,24 +8128,26 @@ iconv_t cd = iconv_open("","");
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_lib_iconv=yes
am_cv_func_iconv=yes
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS="$am_save_LIBS"
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
-$as_echo "$am_cv_func_iconv" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
+printf "%s\n" "$am_cv_func_iconv" >&6; }
if test "$am_cv_func_iconv" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
-$as_echo_n "checking for working iconv... " >&6; }
-if ${am_cv_func_iconv_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
+printf %s "checking for working iconv... " >&6; }
+if test ${am_cv_func_iconv_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
am_save_LIBS="$LIBS"
if test $am_cv_lib_iconv = yes; then
@@ -7277,12 +8155,13 @@ else
fi
am_cv_func_iconv_works=no
for ac_iconv_const in '' 'const'; do
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
*) am_cv_func_iconv_works="guessing yes" ;;
esac
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -7294,11 +8173,12 @@ else
#endif
int
-main ()
+main (void)
{
int result = 0;
- /* Test against AIX 5.1 bug: Failures are not distinguishable from successful
- returns. */
+ /* Test against AIX 5.1...7.2 bug: Failures are not distinguishable from
+ successful returns. This is even documented in
+ <https://www.ibm.com/support/knowledgecenter/ssw_aix_72/i_bostechref/iconv.html> */
{
iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
if (cd_utf8_to_88591 != (iconv_t)(-1))
@@ -7406,7 +8286,8 @@ int result = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
am_cv_func_iconv_works=yes
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -7418,8 +8299,8 @@ fi
LIBS="$am_save_LIBS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5
-$as_echo "$am_cv_func_iconv_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5
+printf "%s\n" "$am_cv_func_iconv_works" >&6; }
case "$am_cv_func_iconv_works" in
*no) am_func_iconv=no am_cv_lib_iconv=no ;;
*) am_func_iconv=yes ;;
@@ -7429,14 +8310,14 @@ $as_echo "$am_cv_func_iconv_works" >&6; }
fi
if test "$am_func_iconv" = yes; then
-$as_echo "#define HAVE_ICONV 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ICONV 1" >>confdefs.h
fi
if test "$am_cv_lib_iconv" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
-$as_echo_n "checking how to link with libiconv... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
-$as_echo "$LIBICONV" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
+printf %s "checking how to link with libiconv... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
+printf "%s\n" "$LIBICONV" >&6; }
else
CPPFLAGS="$am_save_CPPFLAGS"
LIBICONV=
@@ -7461,13 +8342,16 @@ $as_echo "$LIBICONV" >&6; }
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
# Check whether --with-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then :
+if test ${with_libintl_prefix+y}
+then :
withval=$with_libintl_prefix;
if test "X$withval" = "Xno"; then
use_additional=no
@@ -7481,6 +8365,8 @@ if test "${with_libintl_prefix+set}" = set; then :
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
@@ -7488,15 +8374,19 @@ if test "${with_libintl_prefix+set}" = set; then :
else
additional_includedir="$withval/include"
additional_libdir="$withval/$acl_libdirstem"
- if test "$acl_libdirstem2" != "$acl_libdirstem" \
- && test ! -d "$withval/$acl_libdirstem"; then
- additional_libdir="$withval/$acl_libdirstem2"
- fi
+ additional_libdir2="$withval/$acl_libdirstem2"
+ additional_libdir3="$withval/$acl_libdirstem3"
fi
fi
fi
+ if test "X$additional_libdir2" = "X$additional_libdir"; then
+ additional_libdir2=
+ fi
+ if test "X$additional_libdir3" = "X$additional_libdir"; then
+ additional_libdir3=
+ fi
LIBINTL=
LTLIBINTL=
INCINTL=
@@ -7542,45 +8432,51 @@ fi
shrext=
fi
if test $use_additional = yes; then
- dir="$additional_libdir"
- if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext"
- else
- if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
- ver=`(cd "$dir" && \
- for f in "$libname$shrext".*; do echo "$f"; done \
- | sed -e "s,^$libname$shrext\\\\.,," \
- | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
- | sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext.$ver"
+ for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do
+ if test "X$found_dir" = "X"; then
+ eval dir=\$$additional_libdir_variable
+ if test -n "$dir"; then
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
+ else
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
+ fi
fi
- else
- eval library_names=\"$acl_library_names_spec\"
- for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
- found_so="$dir/$f"
- break
+ found_a="$dir/$libname.$acl_libext"
fi
- done
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
+ fi
+ fi
fi
fi
- fi
- if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
- found_dir="$dir"
- found_a="$dir/$libname.$acl_libext"
- fi
- fi
- if test "X$found_dir" != "X"; then
- if test -f "$dir/$libname.la"; then
- found_la="$dir/$libname.la"
- fi
- fi
+ done
fi
if test "X$found_dir" = "X"; then
for x in $LDFLAGS $LTLIBINTL; do
@@ -7597,7 +8493,7 @@ fi
-L*)
dir=`echo "X$x" | sed -e 's/^X-L//'`
if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
found_dir="$dir"
found_so="$dir/$libname$shrext"
else
@@ -7607,14 +8503,14 @@ fi
| sed -e "s,^$libname$shrext\\\\.,," \
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
| sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
found_dir="$dir"
found_so="$dir/$libname$shrext.$ver"
fi
else
eval library_names=\"$acl_library_names_spec\"
for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
found_dir="$dir"
found_so="$dir/$f"
break
@@ -7624,7 +8520,7 @@ fi
fi
fi
if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
found_a="$dir/$libname.$acl_libext"
fi
@@ -7646,7 +8542,8 @@ fi
if test "X$found_so" != "X"; then
if test "$enable_rpath" = no \
|| test "X$found_dir" = "X/usr/$acl_libdirstem" \
- || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
+ || test "X$found_dir" = "X/usr/$acl_libdirstem2" \
+ || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then
LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
else
haveit=
@@ -7725,6 +8622,13 @@ fi
fi
additional_includedir="$basedir/include"
;;
+ */$acl_libdirstem3 | */$acl_libdirstem3/)
+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'`
+ if test "$name" = 'intl'; then
+ LIBINTL_PREFIX="$basedir"
+ fi
+ additional_includedir="$basedir/include"
+ ;;
esac
if test "X$additional_includedir" != "X"; then
if test "X$additional_includedir" != "X/usr/include"; then
@@ -7770,12 +8674,14 @@ fi
for dep in $dependency_libs; do
case "$dep" in
-L*)
- additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
- if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
- && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
+ dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
+ if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then
haveit=
- if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
- || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
+ if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then
if test -n "$GCC"; then
case $host_os in
linux* | gnu* | k*bsd*-gnu) haveit=yes;;
@@ -7794,14 +8700,14 @@ fi
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ LIBINTL="${LIBINTL}${LIBINTL:+ }-L$dependency_libdir"
fi
fi
haveit=
@@ -7815,14 +8721,14 @@ fi
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$dependency_libdir"
fi
fi
fi
@@ -7854,7 +8760,14 @@ fi
fi
;;
-l*)
- names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
+ dep=`echo "X$dep" | sed -e 's/^X-l//'`
+ if test "X$dep" != Xc \
+ || case $host_os in
+ linux* | gnu* | k*bsd*-gnu) false ;;
+ *) true ;;
+ esac; then
+ names_next_round="$names_next_round $dep"
+ fi
;;
*.la)
names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
@@ -7905,11 +8818,12 @@ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
-$as_echo_n "checking for GNU gettext in libintl... " >&6; }
-if eval \${$gt_func_gnugettext_libintl+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
+printf %s "checking for GNU gettext in libintl... " >&6; }
+if eval test \${$gt_func_gnugettext_libintl+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
gt_save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $INCINTL"
gt_save_LIBS="$LIBS"
@@ -7932,7 +8846,7 @@ const char *_nl_expand_alias (const char *);
$gt_revision_test_code
int
-main ()
+main (void)
{
bindtextdomain ("", "");
@@ -7942,12 +8856,13 @@ return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
eval "$gt_func_gnugettext_libintl=yes"
-else
+else $as_nop
eval "$gt_func_gnugettext_libintl=no"
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then
LIBS="$LIBS $LIBICONV"
@@ -7969,7 +8884,7 @@ const char *_nl_expand_alias (const char *);
$gt_revision_test_code
int
-main ()
+main (void)
{
bindtextdomain ("", "");
@@ -7979,21 +8894,22 @@ return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
LIBINTL="$LIBINTL $LIBICONV"
LTLIBINTL="$LTLIBINTL $LTLIBICONV"
eval "$gt_func_gnugettext_libintl=yes"
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
fi
CPPFLAGS="$gt_save_CPPFLAGS"
LIBS="$gt_save_LIBS"
fi
eval ac_res=\$$gt_func_gnugettext_libintl
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
fi
if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
@@ -8020,20 +8936,20 @@ $as_echo "$ac_res" >&6; }
if test "$gt_use_preinstalled_gnugettext" = "yes" \
|| test "$nls_cv_use_gnu_gettext" = "yes"; then
-$as_echo "#define ENABLE_NLS 1" >>confdefs.h
+printf "%s\n" "#define ENABLE_NLS 1" >>confdefs.h
else
USE_NLS=no
fi
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
-$as_echo_n "checking whether to use NLS... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
+printf %s "checking whether to use NLS... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+printf "%s\n" "$USE_NLS" >&6; }
if test "$USE_NLS" = "yes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
-$as_echo_n "checking where the gettext function comes from... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
+printf %s "checking where the gettext function comes from... " >&6; }
if test "$gt_use_preinstalled_gnugettext" = "yes"; then
if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
gt_source="external libintl"
@@ -8043,18 +8959,18 @@ $as_echo_n "checking where the gettext function comes from... " >&6; }
else
gt_source="included intl directory"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
-$as_echo "$gt_source" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
+printf "%s\n" "$gt_source" >&6; }
fi
if test "$USE_NLS" = "yes"; then
if test "$gt_use_preinstalled_gnugettext" = "yes"; then
if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
-$as_echo_n "checking how to link with libintl... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
-$as_echo "$LIBINTL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
+printf %s "checking how to link with libintl... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
+printf "%s\n" "$LIBINTL" >&6; }
for element in $INCINTL; do
haveit=
@@ -8081,10 +8997,10 @@ $as_echo "$LIBINTL" >&6; }
fi
-$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GETTEXT 1" >>confdefs.h
-$as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_DCGETTEXT 1" >>confdefs.h
fi
@@ -8104,38 +9020,64 @@ $as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h
XSUBPP=${XSUBPP-"${am_missing_run}xsubpp"}
+GAWK=${GAWK-"${am_missing_run}gawk"}
+
+
+
+
+ # Check whether --enable-cross-guesses was given.
+if test ${enable_cross_guesses+y}
+then :
+ enableval=$enable_cross_guesses; if test "x$enableval" != xconservative && test "x$enableval" != xrisky; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: invalid argument supplied to --enable-cross-guesses" >&5
+printf "%s\n" "$as_me: WARNING: invalid argument supplied to --enable-cross-guesses" >&2;}
+ enableval=conservative
+ fi
+ gl_cross_guesses="$enableval"
+else $as_nop
+ gl_cross_guesses=conservative
+fi
+
+ 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
LIBC_FATAL_STDERR_=1
export LIBC_FATAL_STDERR_
+
ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
+if test "x$ac_cv_type_size_t" = xyes
+then :
-else
+else $as_nop
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned int
-_ACEOF
+printf "%s\n" "#define size_t unsigned int" >>confdefs.h
fi
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
# for constant arguments. Useless!
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
-$as_echo_n "checking for working alloca.h... " >&6; }
-if ${ac_cv_working_alloca_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
+printf %s "checking for working alloca.h... " >&6; }
+if test ${ac_cv_working_alloca_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <alloca.h>
int
-main ()
+main (void)
{
char *p = (char *) alloca (2 * sizeof (int));
if (p) return 0;
@@ -8143,52 +9085,52 @@ char *p = (char *) alloca (2 * sizeof (int));
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_working_alloca_h=yes
-else
+else $as_nop
ac_cv_working_alloca_h=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
-$as_echo "$ac_cv_working_alloca_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
+printf "%s\n" "$ac_cv_working_alloca_h" >&6; }
if test $ac_cv_working_alloca_h = yes; then
-$as_echo "#define HAVE_ALLOCA_H 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ALLOCA_H 1" >>confdefs.h
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
-$as_echo_n "checking for alloca... " >&6; }
-if ${ac_cv_func_alloca_works+:} false; then :
- $as_echo_n "(cached) " >&6
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
+printf %s "checking for alloca... " >&6; }
+if test ${ac_cv_func_alloca_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test $ac_cv_working_alloca_h = yes; then
+ ac_cv_func_alloca_works=yes
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
+#include <stdlib.h>
+#include <stddef.h>
+#ifndef alloca
+# ifdef __GNUC__
+# define alloca __builtin_alloca
+# elif defined _MSC_VER
# include <malloc.h>
# define alloca _alloca
# else
-# ifdef HAVE_ALLOCA_H
-# include <alloca.h>
-# else
-# ifdef _AIX
- #pragma alloca
-# else
-# ifndef alloca /* predefined by HP cc +Olibcalls */
-void *alloca (size_t);
-# endif
-# endif
+# ifdef __cplusplus
+extern "C"
# endif
+void *alloca (size_t);
# endif
#endif
int
-main ()
+main (void)
{
char *p = (char *) alloca (1);
if (p) return 0;
@@ -8196,20 +9138,22 @@ char *p = (char *) alloca (1);
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_func_alloca_works=yes
-else
+else $as_nop
ac_cv_func_alloca_works=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
-$as_echo "$ac_cv_func_alloca_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
+printf "%s\n" "$ac_cv_func_alloca_works" >&6; }
+fi
if test $ac_cv_func_alloca_works = yes; then
-$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ALLOCA 1" >>confdefs.h
else
# The SVR3 libPW and SVR4 libucb both contain incompatible functions
@@ -8223,58 +9167,19 @@ else
ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
-$as_echo "#define C_ALLOCA 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
-$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "webecray" >/dev/null 2>&1; then :
- ac_cv_os_cray=yes
-else
- ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
-$as_echo "$ac_cv_os_cray" >&6; }
-if test $ac_cv_os_cray = yes; then
- for ac_func in _getb67 GETB67 getb67; do
- as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-
-cat >>confdefs.h <<_ACEOF
-#define CRAY_STACKSEG_END $ac_func
-_ACEOF
+printf "%s\n" "#define C_ALLOCA 1" >>confdefs.h
- break
-fi
- done
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
-$as_echo_n "checking stack direction for C alloca... " >&6; }
-if ${ac_cv_c_stack_direction+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
+printf %s "checking stack direction for C alloca... " >&6; }
+if test ${ac_cv_c_stack_direction+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test "$cross_compiling" = yes
+then :
ac_cv_c_stack_direction=0
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$ac_includes_default
@@ -8295,9 +9200,10 @@ main (int argc, char **argv)
return find_stack_direction (0, argc + !argv + 20) < 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_c_stack_direction=1
-else
+else $as_nop
ac_cv_c_stack_direction=-1
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -8305,22 +9211,21 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
-$as_echo "$ac_cv_c_stack_direction" >&6; }
-cat >>confdefs.h <<_ACEOF
-#define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
+printf "%s\n" "$ac_cv_c_stack_direction" >&6; }
+printf "%s\n" "#define STACK_DIRECTION $ac_cv_c_stack_direction" >>confdefs.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the preprocessor supports include_next" >&5
-$as_echo_n "checking whether the preprocessor supports include_next... " >&6; }
-if ${gl_cv_have_include_next+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the preprocessor supports include_next" >&5
+printf %s "checking whether the preprocessor supports include_next... " >&6; }
+if test ${gl_cv_have_include_next+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
rm -rf conftestd1a conftestd1b conftestd2
mkdir conftestd1a conftestd1b conftestd2
cat <<EOF > conftestd1a/conftest.h
@@ -8354,29 +9259,31 @@ EOF
/* end confdefs.h. */
#include <conftest.h>
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_have_include_next=yes
-else
+else $as_nop
CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1a -Iconftestd2"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <conftest.h>
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_have_include_next=buggy
-else
+else $as_nop
gl_cv_have_include_next=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
CPPFLAGS="$gl_save_CPPFLAGS"
rm -rf conftestd1a conftestd1b conftestd2
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_include_next" >&5
-$as_echo "$gl_cv_have_include_next" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_include_next" >&5
+printf "%s\n" "$gl_cv_have_include_next" >&6; }
PRAGMA_SYSTEM_HEADER=
if test $gl_cv_have_include_next = yes; then
INCLUDE_NEXT=include_next
@@ -8396,12 +9303,14 @@ $as_echo "$gl_cv_have_include_next" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether system header files limit the line length" >&5
-$as_echo_n "checking whether system header files limit the line length... " >&6; }
-if ${gl_cv_pragma_columns+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether source code line length is unlimited" >&5
+printf %s "checking whether source code line length is unlimited... " >&6; }
+if test ${gl_cv_source_line_length_unlimited+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef __TANDEM
@@ -8410,18 +9319,19 @@ choke me
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "choke me" >/dev/null 2>&1; then :
- gl_cv_pragma_columns=yes
-else
- gl_cv_pragma_columns=no
+ $EGREP "choke me" >/dev/null 2>&1
+then :
+ gl_cv_source_line_length_unlimited=no
+else $as_nop
+ gl_cv_source_line_length_unlimited=yes
fi
-rm -f conftest*
+rm -rf conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_pragma_columns" >&5
-$as_echo "$gl_cv_pragma_columns" >&6; }
- if test $gl_cv_pragma_columns = yes; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_source_line_length_unlimited" >&5
+printf "%s\n" "$gl_cv_source_line_length_unlimited" >&6; }
+ if test $gl_cv_source_line_length_unlimited = no; then
PRAGMA_COLUMNS="#pragma COLUMNS 10000"
else
PRAGMA_COLUMNS=
@@ -8430,11 +9340,12 @@ $as_echo "$gl_cv_pragma_columns" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for complete errno.h" >&5
-$as_echo_n "checking for complete errno.h... " >&6; }
-if ${gl_cv_header_errno_h_complete+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for complete errno.h" >&5
+printf %s "checking for complete errno.h... " >&6; }
+if test ${gl_cv_header_errno_h_complete+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -8494,17 +9405,18 @@ booboo
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "booboo" >/dev/null 2>&1; then :
+ $EGREP "booboo" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_complete=no
-else
+else $as_nop
gl_cv_header_errno_h_complete=yes
fi
-rm -f conftest*
+rm -rf conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_complete" >&5
-$as_echo "$gl_cv_header_errno_h_complete" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_complete" >&5
+printf "%s\n" "$gl_cv_header_errno_h_complete" >&6; }
if test $gl_cv_header_errno_h_complete = yes; then
ERRNO_H=''
else
@@ -8519,11 +9431,12 @@ $as_echo "$gl_cv_header_errno_h_complete" >&6; }
if test $gl_cv_have_include_next = yes; then
gl_cv_next_errno_h='<'errno.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <errno.h>" >&5
-$as_echo_n "checking absolute name of <errno.h>... " >&6; }
-if ${gl_cv_next_errno_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <errno.h>" >&5
+printf %s "checking absolute name of <errno.h>... " >&6; }
+if test ${gl_cv_next_errno_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
@@ -8562,8 +9475,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_errno_h" >&5
-$as_echo "$gl_cv_next_errno_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_errno_h" >&5
+printf "%s\n" "$gl_cv_next_errno_h" >&6; }
fi
NEXT_ERRNO_H=$gl_cv_next_errno_h
@@ -8592,11 +9505,12 @@ fi
if test -n "$ERRNO_H"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EMULTIHOP value" >&5
-$as_echo_n "checking for EMULTIHOP value... " >&6; }
-if ${gl_cv_header_errno_h_EMULTIHOP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for EMULTIHOP value" >&5
+printf %s "checking for EMULTIHOP value... " >&6; }
+if test ${gl_cv_header_errno_h_EMULTIHOP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -8608,12 +9522,13 @@ yes
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_EMULTIHOP=yes
-else
+else $as_nop
gl_cv_header_errno_h_EMULTIHOP=no
fi
-rm -f conftest*
+rm -rf conftest*
if test $gl_cv_header_errno_h_EMULTIHOP = no; then
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8627,10 +9542,11 @@ yes
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_EMULTIHOP=hidden
fi
-rm -f conftest*
+rm -rf conftest*
if test $gl_cv_header_errno_h_EMULTIHOP = hidden; then
if ac_fn_c_compute_int "$LINENO" "EMULTIHOP" "gl_cv_header_errno_h_EMULTIHOP" "
@@ -8639,7 +9555,8 @@ rm -f conftest*
/* The following two lines are a workaround against an autoconf-2.52 bug. */
#include <stdio.h>
#include <stdlib.h>
-"; then :
+"
+then :
fi
@@ -8647,8 +9564,8 @@ fi
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_EMULTIHOP" >&5
-$as_echo "$gl_cv_header_errno_h_EMULTIHOP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_EMULTIHOP" >&5
+printf "%s\n" "$gl_cv_header_errno_h_EMULTIHOP" >&6; }
case $gl_cv_header_errno_h_EMULTIHOP in
yes | no)
EMULTIHOP_HIDDEN=0; EMULTIHOP_VALUE=
@@ -8663,11 +9580,12 @@ $as_echo "$gl_cv_header_errno_h_EMULTIHOP" >&6; }
if test -n "$ERRNO_H"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ENOLINK value" >&5
-$as_echo_n "checking for ENOLINK value... " >&6; }
-if ${gl_cv_header_errno_h_ENOLINK+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ENOLINK value" >&5
+printf %s "checking for ENOLINK value... " >&6; }
+if test ${gl_cv_header_errno_h_ENOLINK+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -8679,12 +9597,13 @@ yes
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_ENOLINK=yes
-else
+else $as_nop
gl_cv_header_errno_h_ENOLINK=no
fi
-rm -f conftest*
+rm -rf conftest*
if test $gl_cv_header_errno_h_ENOLINK = no; then
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8698,10 +9617,11 @@ yes
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_ENOLINK=hidden
fi
-rm -f conftest*
+rm -rf conftest*
if test $gl_cv_header_errno_h_ENOLINK = hidden; then
if ac_fn_c_compute_int "$LINENO" "ENOLINK" "gl_cv_header_errno_h_ENOLINK" "
@@ -8710,7 +9630,8 @@ rm -f conftest*
/* The following two lines are a workaround against an autoconf-2.52 bug. */
#include <stdio.h>
#include <stdlib.h>
-"; then :
+"
+then :
fi
@@ -8718,8 +9639,8 @@ fi
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_ENOLINK" >&5
-$as_echo "$gl_cv_header_errno_h_ENOLINK" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_ENOLINK" >&5
+printf "%s\n" "$gl_cv_header_errno_h_ENOLINK" >&6; }
case $gl_cv_header_errno_h_ENOLINK in
yes | no)
ENOLINK_HIDDEN=0; ENOLINK_VALUE=
@@ -8734,11 +9655,12 @@ $as_echo "$gl_cv_header_errno_h_ENOLINK" >&6; }
if test -n "$ERRNO_H"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EOVERFLOW value" >&5
-$as_echo_n "checking for EOVERFLOW value... " >&6; }
-if ${gl_cv_header_errno_h_EOVERFLOW+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for EOVERFLOW value" >&5
+printf %s "checking for EOVERFLOW value... " >&6; }
+if test ${gl_cv_header_errno_h_EOVERFLOW+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -8750,12 +9672,13 @@ yes
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_EOVERFLOW=yes
-else
+else $as_nop
gl_cv_header_errno_h_EOVERFLOW=no
fi
-rm -f conftest*
+rm -rf conftest*
if test $gl_cv_header_errno_h_EOVERFLOW = no; then
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8769,10 +9692,11 @@ yes
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_EOVERFLOW=hidden
fi
-rm -f conftest*
+rm -rf conftest*
if test $gl_cv_header_errno_h_EOVERFLOW = hidden; then
if ac_fn_c_compute_int "$LINENO" "EOVERFLOW" "gl_cv_header_errno_h_EOVERFLOW" "
@@ -8781,7 +9705,8 @@ rm -f conftest*
/* The following two lines are a workaround against an autoconf-2.52 bug. */
#include <stdio.h>
#include <stdlib.h>
-"; then :
+"
+then :
fi
@@ -8789,8 +9714,8 @@ fi
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_EOVERFLOW" >&5
-$as_echo "$gl_cv_header_errno_h_EOVERFLOW" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_EOVERFLOW" >&5
+printf "%s\n" "$gl_cv_header_errno_h_EOVERFLOW" >&6; }
case $gl_cv_header_errno_h_EOVERFLOW in
yes | no)
EOVERFLOW_HIDDEN=0; EOVERFLOW_VALUE=
@@ -8861,7 +9786,14 @@ $as_echo "$gl_cv_header_errno_h_EOVERFLOW" >&6; }
GNULIB_VPRINTF_POSIX=0;
GNULIB_VSNPRINTF=0;
GNULIB_VSPRINTF_POSIX=0;
- HAVE_DECL_FPURGE=1;
+ GNULIB_MDA_FCLOSEALL=1;
+ GNULIB_MDA_FDOPEN=1;
+ GNULIB_MDA_FILENO=1;
+ GNULIB_MDA_GETW=1;
+ GNULIB_MDA_PUTW=1;
+ GNULIB_MDA_TEMPNAM=1;
+ HAVE_DECL_FCLOSEALL=1;
+ HAVE_DECL_FPURGE=1;
HAVE_DECL_FSEEKO=1;
HAVE_DECL_FTELLO=1;
HAVE_DECL_GETDELIM=1;
@@ -8910,44 +9842,116 @@ $as_echo "$gl_cv_header_errno_h_EOVERFLOW" >&6; }
REPLACE_VSNPRINTF=0;
REPLACE_VSPRINTF=0;
-ac_fn_c_check_decl "$LINENO" "getdelim" "ac_cv_have_decl_getdelim" "$ac_includes_default"
-if test "x$ac_cv_have_decl_getdelim" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
+printf %s "checking for $CC options needed to detect all undeclared functions... " >&6; }
+if test ${ac_cv_c_undeclared_builtin_options+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ac_save_CFLAGS=$CFLAGS
+ ac_cv_c_undeclared_builtin_options='cannot detect'
+ for ac_arg in '' -fno-builtin; do
+ CFLAGS="$ac_save_CFLAGS $ac_arg"
+ # This test program should *not* compile successfully.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_GETDELIM $ac_have_decl
+int
+main (void)
+{
+(void) strchr;
+ ;
+ return 0;
+}
_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+else $as_nop
+ # This test program should compile successfully.
+ # No library function is consistently available on
+ # freestanding implementations, so test against a dummy
+ # declaration. Include always-available headers on the
+ # off chance that they somehow elicit warnings.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <float.h>
+#include <limits.h>
+#include <stdarg.h>
+#include <stddef.h>
+extern void ac_decl (int, char *);
+int
+main (void)
+{
+(void) ac_decl (0, (char *) 0);
+ (void) ac_decl;
-
-
- for ac_func in $ac_func_list
-do :
- as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+ ;
+ return 0;
+}
_ACEOF
-
+if ac_fn_c_try_compile "$LINENO"
+then :
+ if test x"$ac_arg" = x
+then :
+ ac_cv_c_undeclared_builtin_options='none needed'
+else $as_nop
+ ac_cv_c_undeclared_builtin_options=$ac_arg
fi
-done
-
-
+ break
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+ done
+ CFLAGS=$ac_save_CFLAGS
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_undeclared_builtin_options" >&5
+printf "%s\n" "$ac_cv_c_undeclared_builtin_options" >&6; }
+ case $ac_cv_c_undeclared_builtin_options in #(
+ 'cannot detect') :
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot make $CC report undeclared builtins
+See \`config.log' for more details" "$LINENO" 5; } ;; #(
+ 'none needed') :
+ ac_c_undeclared_builtin_options='' ;; #(
+ *) :
+ ac_c_undeclared_builtin_options=$ac_cv_c_undeclared_builtin_options ;;
+esac
-ac_fn_c_check_decl "$LINENO" "getline" "ac_cv_have_decl_getline" "$ac_includes_default"
-if test "x$ac_cv_have_decl_getline" = xyes; then :
+ac_fn_check_decl "$LINENO" "getdelim" "ac_cv_have_decl_getdelim" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_getdelim" = xyes
+then :
ac_have_decl=1
-else
+else $as_nop
ac_have_decl=0
fi
+printf "%s\n" "#define HAVE_DECL_GETDELIM $ac_have_decl" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_GETLINE $ac_have_decl
-_ACEOF
+ac_func=
+for ac_item in $ac_func_c_list
+do
+ if test $ac_func; then
+ ac_fn_c_check_func "$LINENO" $ac_func ac_cv_func_$ac_func
+ if eval test \"x\$ac_cv_func_$ac_func\" = xyes; then
+ echo "#define $ac_item 1" >> confdefs.h
+ fi
+ ac_func=
+ else
+ ac_func=$ac_item
+ fi
+done
+ac_fn_check_decl "$LINENO" "getline" "ac_cv_have_decl_getline" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_getline" = xyes
+then :
+ ac_have_decl=1
+else $as_nop
+ ac_have_decl=0
+fi
+printf "%s\n" "#define HAVE_DECL_GETLINE $ac_have_decl" >>confdefs.h
@@ -8979,11 +9983,12 @@ _ACEOF
done
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
-$as_echo_n "checking for iconv... " >&6; }
-if ${am_cv_func_iconv+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
+printf %s "checking for iconv... " >&6; }
+if test ${am_cv_func_iconv+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
am_cv_func_iconv="no, consider installing GNU libiconv"
am_cv_lib_iconv=no
@@ -8994,7 +9999,7 @@ else
#include <iconv.h>
int
-main ()
+main (void)
{
iconv_t cd = iconv_open("","");
iconv(cd,NULL,NULL,NULL,NULL);
@@ -9003,10 +10008,11 @@ iconv_t cd = iconv_open("","");
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_func_iconv=yes
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
if test "$am_cv_func_iconv" != yes; then
am_save_LIBS="$LIBS"
@@ -9018,7 +10024,7 @@ rm -f core conftest.err conftest.$ac_objext \
#include <iconv.h>
int
-main ()
+main (void)
{
iconv_t cd = iconv_open("","");
iconv(cd,NULL,NULL,NULL,NULL);
@@ -9027,24 +10033,26 @@ iconv_t cd = iconv_open("","");
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_lib_iconv=yes
am_cv_func_iconv=yes
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS="$am_save_LIBS"
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
-$as_echo "$am_cv_func_iconv" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
+printf "%s\n" "$am_cv_func_iconv" >&6; }
if test "$am_cv_func_iconv" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
-$as_echo_n "checking for working iconv... " >&6; }
-if ${am_cv_func_iconv_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
+printf %s "checking for working iconv... " >&6; }
+if test ${am_cv_func_iconv_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
am_save_LIBS="$LIBS"
if test $am_cv_lib_iconv = yes; then
@@ -9052,12 +10060,13 @@ else
fi
am_cv_func_iconv_works=no
for ac_iconv_const in '' 'const'; do
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
*) am_cv_func_iconv_works="guessing yes" ;;
esac
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -9069,11 +10078,12 @@ else
#endif
int
-main ()
+main (void)
{
int result = 0;
- /* Test against AIX 5.1 bug: Failures are not distinguishable from successful
- returns. */
+ /* Test against AIX 5.1...7.2 bug: Failures are not distinguishable from
+ successful returns. This is even documented in
+ <https://www.ibm.com/support/knowledgecenter/ssw_aix_72/i_bostechref/iconv.html> */
{
iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
if (cd_utf8_to_88591 != (iconv_t)(-1))
@@ -9181,7 +10191,8 @@ int result = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
am_cv_func_iconv_works=yes
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -9193,8 +10204,8 @@ fi
LIBS="$am_save_LIBS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5
-$as_echo "$am_cv_func_iconv_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5
+printf "%s\n" "$am_cv_func_iconv_works" >&6; }
case "$am_cv_func_iconv_works" in
*no) am_func_iconv=no am_cv_lib_iconv=no ;;
*) am_func_iconv=yes ;;
@@ -9204,14 +10215,14 @@ $as_echo "$am_cv_func_iconv_works" >&6; }
fi
if test "$am_func_iconv" = yes; then
-$as_echo "#define HAVE_ICONV 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ICONV 1" >>confdefs.h
fi
if test "$am_cv_lib_iconv" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
-$as_echo_n "checking how to link with libiconv... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
-$as_echo "$LIBICONV" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
+printf %s "checking how to link with libiconv... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
+printf "%s\n" "$LIBICONV" >&6; }
else
CPPFLAGS="$am_save_CPPFLAGS"
LIBICONV=
@@ -9221,13 +10232,13 @@ $as_echo "$LIBICONV" >&6; }
if test "$am_cv_func_iconv" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv declaration" >&5
-$as_echo_n "checking for iconv declaration... " >&6; }
- if ${am_cv_proto_iconv+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether iconv is compatible with its POSIX signature" >&5
+printf %s "checking whether iconv is compatible with its POSIX signature... " >&6; }
+if test ${gl_cv_iconv_nonconst+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
@@ -9236,60 +10247,38 @@ extern
#ifdef __cplusplus
"C"
#endif
-#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus)
size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
-#else
-size_t iconv();
-#endif
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- am_cv_proto_iconv_arg1=""
-else
- am_cv_proto_iconv_arg1="const"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_iconv_nonconst=yes
+else $as_nop
+ gl_cv_iconv_nonconst=no
fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
- am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: result:
- $am_cv_proto_iconv" >&5
-$as_echo "
- $am_cv_proto_iconv" >&6; }
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_iconv_nonconst" >&5
+printf "%s\n" "$gl_cv_iconv_nonconst" >&6; }
else
- am_cv_proto_iconv_arg1=""
+ gl_cv_iconv_nonconst=yes
+ fi
+ if test $gl_cv_iconv_nonconst = yes; then
+ iconv_arg1=""
+ else
+ iconv_arg1="const"
fi
-cat >>confdefs.h <<_ACEOF
-#define ICONV_CONST $am_cv_proto_iconv_arg1
-_ACEOF
-
-
-
-
-
-
- for ac_header in $ac_header_list
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
+printf "%s\n" "#define ICONV_CONST $iconv_arg1" >>confdefs.h
-done
@@ -9306,11 +10295,12 @@ done
if test $gl_cv_have_include_next = yes; then
gl_cv_next_limits_h='<'limits.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <limits.h>" >&5
-$as_echo_n "checking absolute name of <limits.h>... " >&6; }
-if ${gl_cv_next_limits_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <limits.h>" >&5
+printf %s "checking absolute name of <limits.h>... " >&6; }
+if test ${gl_cv_next_limits_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test $ac_cv_header_limits_h = yes; then
@@ -9355,8 +10345,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_limits_h" >&5
-$as_echo "$gl_cv_next_limits_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_limits_h" >&5
+printf "%s\n" "$gl_cv_next_limits_h" >&6; }
fi
NEXT_LIMITS_H=$gl_cv_next_limits_h
@@ -9373,11 +10363,12 @@ $as_echo "$gl_cv_next_limits_h" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether limits.h has LLONG_MAX, WORD_BIT, ULLONG_WIDTH etc." >&5
-$as_echo_n "checking whether limits.h has LLONG_MAX, WORD_BIT, ULLONG_WIDTH etc.... " >&6; }
-if ${gl_cv_header_limits_width+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether limits.h has LLONG_MAX, WORD_BIT, ULLONG_WIDTH etc." >&5
+printf %s "checking whether limits.h has LLONG_MAX, WORD_BIT, ULLONG_WIDTH etc.... " >&6; }
+if test ${gl_cv_header_limits_width+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
@@ -9389,22 +10380,23 @@ else
int ullw = ULLONG_WIDTH;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_limits_width=yes
-else
+else $as_nop
gl_cv_header_limits_width=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_limits_width" >&5
-$as_echo "$gl_cv_header_limits_width" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_limits_width" >&5
+printf "%s\n" "$gl_cv_header_limits_width" >&6; }
if test "$gl_cv_header_limits_width" = yes; then
LIMITS_H=
else
@@ -9421,423 +10413,69 @@ fi
-
-
-
-
- GNULIB_EXPLICIT_BZERO=0;
- GNULIB_FFSL=0;
- GNULIB_FFSLL=0;
- GNULIB_MEMCHR=0;
- GNULIB_MEMMEM=0;
- GNULIB_MEMPCPY=0;
- GNULIB_MEMRCHR=0;
- GNULIB_RAWMEMCHR=0;
- GNULIB_STPCPY=0;
- GNULIB_STPNCPY=0;
- GNULIB_STRCHRNUL=0;
- GNULIB_STRDUP=0;
- GNULIB_STRNCAT=0;
- GNULIB_STRNDUP=0;
- GNULIB_STRNLEN=0;
- GNULIB_STRPBRK=0;
- GNULIB_STRSEP=0;
- GNULIB_STRSTR=0;
- GNULIB_STRCASESTR=0;
- GNULIB_STRTOK_R=0;
- GNULIB_MBSLEN=0;
- GNULIB_MBSNLEN=0;
- GNULIB_MBSCHR=0;
- GNULIB_MBSRCHR=0;
- GNULIB_MBSSTR=0;
- GNULIB_MBSCASECMP=0;
- GNULIB_MBSNCASECMP=0;
- GNULIB_MBSPCASECMP=0;
- GNULIB_MBSCASESTR=0;
- GNULIB_MBSCSPN=0;
- GNULIB_MBSPBRK=0;
- GNULIB_MBSSPN=0;
- GNULIB_MBSSEP=0;
- GNULIB_MBSTOK_R=0;
- GNULIB_STRERROR=0;
- GNULIB_STRERROR_R=0;
- GNULIB_STRSIGNAL=0;
- GNULIB_STRVERSCMP=0;
- HAVE_MBSLEN=0;
- HAVE_EXPLICIT_BZERO=1;
- HAVE_FFSL=1;
- HAVE_FFSLL=1;
- HAVE_MEMCHR=1;
- HAVE_DECL_MEMMEM=1;
- HAVE_MEMPCPY=1;
- HAVE_DECL_MEMRCHR=1;
- HAVE_RAWMEMCHR=1;
- HAVE_STPCPY=1;
- HAVE_STPNCPY=1;
- HAVE_STRCHRNUL=1;
- HAVE_DECL_STRDUP=1;
- HAVE_DECL_STRNDUP=1;
- HAVE_DECL_STRNLEN=1;
- HAVE_STRPBRK=1;
- HAVE_STRSEP=1;
- HAVE_STRCASESTR=1;
- HAVE_DECL_STRTOK_R=1;
- HAVE_DECL_STRERROR_R=1;
- HAVE_DECL_STRSIGNAL=1;
- HAVE_STRVERSCMP=1;
- REPLACE_MEMCHR=0;
- REPLACE_MEMMEM=0;
- REPLACE_STPNCPY=0;
- REPLACE_STRCHRNUL=0;
- REPLACE_STRDUP=0;
- REPLACE_STRNCAT=0;
- REPLACE_STRNDUP=0;
- REPLACE_STRNLEN=0;
- REPLACE_STRSTR=0;
- REPLACE_STRCASESTR=0;
- REPLACE_STRTOK_R=0;
- REPLACE_STRERROR=0;
- REPLACE_STRERROR_R=0;
- REPLACE_STRSIGNAL=0;
- UNDEFINE_STRTOK_R=0;
-
-
-
-
-
-
- # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it
- # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is
- # irrelevant for anonymous mappings.
- ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap"
-if test "x$ac_cv_func_mmap" = xyes; then :
- gl_have_mmap=yes
-else
- gl_have_mmap=no
-fi
-
-
- # Try to allow MAP_ANONYMOUS.
- gl_have_mmap_anonymous=no
- if test $gl_have_mmap = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MAP_ANONYMOUS" >&5
-$as_echo_n "checking for MAP_ANONYMOUS... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#include <sys/mman.h>
-#ifdef MAP_ANONYMOUS
- I cannot identify this map
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "I cannot identify this map" >/dev/null 2>&1; then :
- gl_have_mmap_anonymous=yes
-fi
-rm -f conftest*
-
- if test $gl_have_mmap_anonymous != yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#include <sys/mman.h>
-#ifdef MAP_ANON
- I cannot identify this map
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "I cannot identify this map" >/dev/null 2>&1; then :
-
-$as_echo "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h
-
- gl_have_mmap_anonymous=yes
-fi
-rm -f conftest*
-
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_have_mmap_anonymous" >&5
-$as_echo "$gl_have_mmap_anonymous" >&6; }
- if test $gl_have_mmap_anonymous = yes; then
-
-$as_echo "#define HAVE_MAP_ANONYMOUS 1" >>confdefs.h
-
- fi
- fi
-
-
-
-
-
-
- if test $HAVE_MEMCHR = 1; then
- # Detect platform-specific bugs in some versions of glibc:
- # memchr should not dereference anything with length 0
- # https://bugzilla.redhat.com/show_bug.cgi?id=499689
- # memchr should not dereference overestimated length after a match
- # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737
- # https://sourceware.org/bugzilla/show_bug.cgi?id=10162
- # memchr should cast the second argument to 'unsigned char'.
- # This bug exists in Android 4.3.
- # Assume that memchr works on platforms that lack mprotect.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether memchr works" >&5
-$as_echo_n "checking whether memchr works... " >&6; }
-if ${gl_cv_func_memchr_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- case "$host_os" in
- # Guess no on Android.
- linux*-android*) gl_cv_func_memchr_works="guessing no" ;;
- # Guess yes on native Windows.
- mingw*) gl_cv_func_memchr_works="guessing yes" ;;
- # Be pessimistic for now.
- *) gl_cv_func_memchr_works="guessing no" ;;
- esac
-
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#include <string.h>
-#if HAVE_SYS_MMAN_H
-# include <fcntl.h>
-# include <unistd.h>
-# include <sys/types.h>
-# include <sys/mman.h>
-# ifndef MAP_FILE
-# define MAP_FILE 0
-# endif
-#endif
-
-int
-main ()
-{
-
- int result = 0;
- char *fence = NULL;
-#if HAVE_SYS_MMAN_H && HAVE_MPROTECT
-# if HAVE_MAP_ANONYMOUS
- const int flags = MAP_ANONYMOUS | MAP_PRIVATE;
- const int fd = -1;
-# else /* !HAVE_MAP_ANONYMOUS */
- const int flags = MAP_FILE | MAP_PRIVATE;
- int fd = open ("/dev/zero", O_RDONLY, 0666);
- if (fd >= 0)
-# endif
- {
- int pagesize = getpagesize ();
- char *two_pages =
- (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE,
- flags, fd, 0);
- if (two_pages != (char *)(-1)
- && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0)
- fence = two_pages + pagesize;
- }
-#endif
- if (fence)
- {
- if (memchr (fence, 0, 0))
- result |= 1;
- strcpy (fence - 9, "12345678");
- if (memchr (fence - 9, 0, 79) != fence - 1)
- result |= 2;
- if (memchr (fence - 1, 0, 3) != fence - 1)
- result |= 4;
- }
- /* Test against bug on Android 4.3. */
- {
- char input[3];
- input[0] = 'a';
- input[1] = 'b';
- input[2] = 'c';
- if (memchr (input, 0x789abc00 | 'b', 3) != input + 1)
- result |= 8;
- }
- return result;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- gl_cv_func_memchr_works=yes
-else
- gl_cv_func_memchr_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_memchr_works" >&5
-$as_echo "$gl_cv_func_memchr_works" >&6; }
- case "$gl_cv_func_memchr_works" in
- *yes) ;;
- *) REPLACE_MEMCHR=1 ;;
- esac
- fi
-
-
- gl_cv_c_multiarch=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifndef __APPLE_CC__
- not a universal capable compiler
- #endif
- typedef int dummy;
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
- arch=
- prev=
- for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
- if test -n "$prev"; then
- case $word in
- i?86 | x86_64 | ppc | ppc64)
- if test -z "$arch" || test "$arch" = "$word"; then
- arch="$word"
- else
- gl_cv_c_multiarch=yes
- fi
- ;;
- esac
- prev=
- else
- if test "x$word" = "x-arch"; then
- prev=arch
- fi
- fi
- done
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- if test $gl_cv_c_multiarch = yes; then
- APPLE_UNIVERSAL_BUILD=1
- else
- APPLE_UNIVERSAL_BUILD=0
- fi
-
-
-
- REPLACE_NULL=0;
- HAVE_MAX_ALIGN_T=1;
- HAVE_WCHAR_T=1;
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wchar_t" >&5
-$as_echo_n "checking for wchar_t... " >&6; }
-if ${gt_cv_c_wchar_t+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stddef.h>
- wchar_t foo = (wchar_t)'\0';
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- gt_cv_c_wchar_t=yes
-else
- gt_cv_c_wchar_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_wchar_t" >&5
-$as_echo "$gt_cv_c_wchar_t" >&6; }
- if test $gt_cv_c_wchar_t = yes; then
-
-$as_echo "#define HAVE_WCHAR_T 1" >>confdefs.h
-
- fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wint_t" >&5
-$as_echo_n "checking for wint_t... " >&6; }
-if ${gt_cv_c_wint_t+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wint_t" >&5
+printf %s "checking for wint_t... " >&6; }
+if test ${gt_cv_c_wint_t+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be included
- before <wchar.h>. */
-#include <stddef.h>
-#include <stdio.h>
-#include <time.h>
#include <wchar.h>
wint_t foo = (wchar_t)'\0';
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gt_cv_c_wint_t=yes
-else
+else $as_nop
gt_cv_c_wint_t=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_wint_t" >&5
-$as_echo "$gt_cv_c_wint_t" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_wint_t" >&5
+printf "%s\n" "$gt_cv_c_wint_t" >&6; }
if test $gt_cv_c_wint_t = yes; then
-$as_echo "#define HAVE_WINT_T 1" >>confdefs.h
+printf "%s\n" "#define HAVE_WINT_T 1" >>confdefs.h
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wint_t is too small" >&5
-$as_echo_n "checking whether wint_t is too small... " >&6; }
-if ${gl_cv_type_wint_t_too_small+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether wint_t is large enough" >&5
+printf %s "checking whether wint_t is large enough... " >&6; }
+if test ${gl_cv_type_wint_t_large_enough+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-#if !(defined __GLIBC__ && !defined __UCLIBC__)
-# include <stddef.h>
-# include <stdio.h>
-# include <time.h>
-#endif
#include <wchar.h>
int verify[sizeof (wint_t) < sizeof (int) ? -1 : 1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- gl_cv_type_wint_t_too_small=no
-else
- gl_cv_type_wint_t_too_small=yes
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_type_wint_t_large_enough=yes
+else $as_nop
+ gl_cv_type_wint_t_large_enough=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wint_t_too_small" >&5
-$as_echo "$gl_cv_type_wint_t_too_small" >&6; }
- if test $gl_cv_type_wint_t_too_small = yes; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wint_t_large_enough" >&5
+printf "%s\n" "$gl_cv_type_wint_t_large_enough" >&6; }
+ if test $gl_cv_type_wint_t_large_enough = no; then
GNULIB_OVERRIDES_WINT_T=1
else
GNULIB_OVERRIDES_WINT_T=0
@@ -9848,120 +10486,55 @@ $as_echo "$gl_cv_type_wint_t_too_small" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long int" >&5
-$as_echo_n "checking for unsigned long long int... " >&6; }
-if ${ac_cv_type_unsigned_long_long_int+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_type_unsigned_long_long_int=yes
- if test "x${ac_cv_prog_cc_c99-no}" = xno; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler produces multi-arch binaries" >&5
+printf %s "checking whether the compiler produces multi-arch binaries... " >&6; }
+if test ${gl_cv_c_multiarch+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ gl_cv_c_multiarch=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+#ifndef __APPLE_CC__
+ not a universal capable compiler
+ #endif
+ typedef int dummy;
- /* For now, do not test the preprocessor; as of 2007 there are too many
- implementations with broken preprocessors. Perhaps this can
- be revisited in 2012. In the meantime, code should not expect
- #if to work with literals wider than 32 bits. */
- /* Test literals. */
- long long int ll = 9223372036854775807ll;
- long long int nll = -9223372036854775807LL;
- unsigned long long int ull = 18446744073709551615ULL;
- /* Test constant expressions. */
- typedef int a[((-9223372036854775807LL < 0 && 0 < 9223372036854775807ll)
- ? 1 : -1)];
- typedef int b[(18446744073709551615ULL <= (unsigned long long int) -1
- ? 1 : -1)];
- int i = 63;
-int
-main ()
-{
-/* Test availability of runtime routines for shift and division. */
- long long int llmax = 9223372036854775807ll;
- unsigned long long int ullmax = 18446744073709551615ull;
- return ((ll << 63) | (ll >> 63) | (ll < i) | (ll > i)
- | (llmax / ll) | (llmax % ll)
- | (ull << 63) | (ull >> 63) | (ull << i) | (ull >> i)
- | (ullmax / ull) | (ullmax % ull));
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-else
- ac_cv_type_unsigned_long_long_int=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_unsigned_long_long_int" >&5
-$as_echo "$ac_cv_type_unsigned_long_long_int" >&6; }
- if test $ac_cv_type_unsigned_long_long_int = yes; then
-
-$as_echo "#define HAVE_UNSIGNED_LONG_LONG_INT 1" >>confdefs.h
-
- fi
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long int" >&5
-$as_echo_n "checking for long long int... " >&6; }
-if ${ac_cv_type_long_long_int+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_type_long_long_int=yes
- if test "x${ac_cv_prog_cc_c99-no}" = xno; then
- ac_cv_type_long_long_int=$ac_cv_type_unsigned_long_long_int
- if test $ac_cv_type_long_long_int = yes; then
- if test "$cross_compiling" = yes; then :
- :
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <limits.h>
- #ifndef LLONG_MAX
- # define HALF \
- (1LL << (sizeof (long long int) * CHAR_BIT - 2))
- # define LLONG_MAX (HALF - 1 + HALF)
- #endif
-int
-main ()
-{
-long long int n = 1;
- int i;
- for (i = 0; ; i++)
- {
- long long int m = n << i;
- if (m >> i != n)
- return 1;
- if (LLONG_MAX / 2 < m)
- break;
- }
- return 0;
- ;
- return 0;
-}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+ arch=
+ prev=
+ for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
+ if test -n "$prev"; then
+ case $word in
+ i?86 | x86_64 | ppc | ppc64 | arm | arm64)
+ if test -z "$arch" || test "$arch" = "$word"; then
+ arch="$word"
+ else
+ gl_cv_c_multiarch=yes
+ fi
+ ;;
+ esac
+ prev=
+ else
+ if test "x$word" = "x-arch"; then
+ prev=arch
+ fi
+ fi
+ done
-else
- ac_cv_type_long_long_int=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
- fi
- fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_long_int" >&5
-$as_echo "$ac_cv_type_long_long_int" >&6; }
- if test $ac_cv_type_long_long_int = yes; then
-
-$as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
-
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_multiarch" >&5
+printf "%s\n" "$gl_cv_c_multiarch" >&6; }
+ if test $gl_cv_c_multiarch = yes; then
+ APPLE_UNIVERSAL_BUILD=1
+ else
+ APPLE_UNIVERSAL_BUILD=0
fi
@@ -9971,21 +10544,10 @@ $as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
-
- if test $ac_cv_type_long_long_int = yes; then
- HAVE_LONG_LONG_INT=1
- else
- HAVE_LONG_LONG_INT=0
- fi
-
-
- if test $ac_cv_type_unsigned_long_long_int = yes; then
- HAVE_UNSIGNED_LONG_LONG_INT=1
- else
- HAVE_UNSIGNED_LONG_LONG_INT=0
- fi
+printf "%s\n" "#define HAVE_UNSIGNED_LONG_LONG_INT 1" >>confdefs.h
@@ -9996,14 +10558,16 @@ $as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
fi
- if test $ac_cv_header_inttypes_h = yes; then
+
+ if test $ac_cv_header_inttypes_h = yes; then
HAVE_INTTYPES_H=1
else
HAVE_INTTYPES_H=0
fi
- if test $ac_cv_header_sys_types_h = yes; then
+
+ if test $ac_cv_header_sys_types_h = yes; then
HAVE_SYS_TYPES_H=1
else
HAVE_SYS_TYPES_H=0
@@ -10022,11 +10586,12 @@ $as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
if test $gl_cv_have_include_next = yes; then
gl_cv_next_stdint_h='<'stdint.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdint.h>" >&5
-$as_echo_n "checking absolute name of <stdint.h>... " >&6; }
-if ${gl_cv_next_stdint_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdint.h>" >&5
+printf %s "checking absolute name of <stdint.h>... " >&6; }
+if test ${gl_cv_next_stdint_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test $ac_cv_header_stdint_h = yes; then
@@ -10071,8 +10636,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdint_h" >&5
-$as_echo "$gl_cv_next_stdint_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdint_h" >&5
+printf "%s\n" "$gl_cv_next_stdint_h" >&6; }
fi
NEXT_STDINT_H=$gl_cv_next_stdint_h
@@ -10096,11 +10661,12 @@ $as_echo "$gl_cv_next_stdint_h" >&6; }
if test $ac_cv_header_stdint_h = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stdint.h conforms to C99" >&5
-$as_echo_n "checking whether stdint.h conforms to C99... " >&6; }
-if ${gl_cv_header_working_stdint_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stdint.h conforms to C99" >&5
+printf %s "checking whether stdint.h conforms to C99... " >&6; }
+if test ${gl_cv_header_working_stdint_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
gl_cv_header_working_stdint_h=no
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -10116,13 +10682,9 @@ else
#endif
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
@@ -10202,7 +10764,7 @@ uintmax_t j = UINTMAX_MAX;
/* Check that SIZE_MAX has the correct type, if possible. */
#if 201112 <= __STDC_VERSION__
int k = _Generic (SIZE_MAX, size_t: 0);
-#elif (2 <= __GNUC__ || defined __IBM__TYPEOF__ \
+#elif (2 <= __GNUC__ || 4 <= __clang_major__ || defined __IBM__TYPEOF__ \
|| (0x5110 <= __SUNPRO_C && !__STDC__))
extern size_t k;
extern __typeof__ (SIZE_MAX) k;
@@ -10269,15 +10831,17 @@ struct s {
};
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- if test "$cross_compiling" = yes; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on native Windows.
mingw*) gl_cv_header_working_stdint_h="guessing yes" ;;
@@ -10285,7 +10849,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
*) gl_cv_header_working_stdint_h="guessing yes" ;;
esac
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -10296,13 +10860,9 @@ else
#include <stdint.h>
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
@@ -10341,7 +10901,7 @@ static const char *macro_values[] =
};
int
-main ()
+main (void)
{
const char **mv;
@@ -10363,7 +10923,8 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_header_working_stdint_h=yes
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -10372,11 +10933,11 @@ fi
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdint_h" >&5
-$as_echo "$gl_cv_header_working_stdint_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdint_h" >&5
+printf "%s\n" "$gl_cv_header_working_stdint_h" >&6; }
fi
HAVE_C99_STDINT_H=0
@@ -10386,12 +10947,13 @@ $as_echo "$gl_cv_header_working_stdint_h" >&6; }
case "$gl_cv_header_working_stdint_h" in
*yes)
HAVE_C99_STDINT_H=1
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stdint.h predates C++11" >&5
-$as_echo_n "checking whether stdint.h predates C++11... " >&6; }
-if ${gl_cv_header_stdint_predates_cxx11_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- gl_cv_header_stdint_predates_cxx11_h=yes
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stdint.h works without ISO C predefines" >&5
+printf %s "checking whether stdint.h works without ISO C predefines... " >&6; }
+if test ${gl_cv_header_stdint_without_STDC_macros+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ gl_cv_header_stdint_without_STDC_macros=no
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -10400,13 +10962,9 @@ else
#include <stdint.h>
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
@@ -10415,34 +10973,37 @@ intmax_t im = INTMAX_MAX;
int32_t i32 = INT32_C (0x7fffffff);
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- gl_cv_header_stdint_predates_cxx11_h=no
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_header_stdint_without_STDC_macros=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_predates_cxx11_h" >&5
-$as_echo "$gl_cv_header_stdint_predates_cxx11_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_without_STDC_macros" >&5
+printf "%s\n" "$gl_cv_header_stdint_without_STDC_macros" >&6; }
- if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then
+ if test $gl_cv_header_stdint_without_STDC_macros = no; then
-$as_echo "#define __STDC_CONSTANT_MACROS 1" >>confdefs.h
+printf "%s\n" "#define __STDC_CONSTANT_MACROS 1" >>confdefs.h
-$as_echo "#define __STDC_LIMIT_MACROS 1" >>confdefs.h
+printf "%s\n" "#define __STDC_LIMIT_MACROS 1" >>confdefs.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stdint.h has UINTMAX_WIDTH etc." >&5
-$as_echo_n "checking whether stdint.h has UINTMAX_WIDTH etc.... " >&6; }
-if ${gl_cv_header_stdint_width+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stdint.h has UINTMAX_WIDTH etc." >&5
+printf %s "checking whether stdint.h has UINTMAX_WIDTH etc.... " >&6; }
+if test ${gl_cv_header_stdint_width+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
gl_cv_header_stdint_width=no
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -10454,50 +11015,47 @@ else
#endif
#include <stdint.h>
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
int iw = UINTMAX_WIDTH;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_stdint_width=yes
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_width" >&5
-$as_echo "$gl_cv_header_stdint_width" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_width" >&5
+printf "%s\n" "$gl_cv_header_stdint_width" >&6; }
if test "$gl_cv_header_stdint_width" = yes; then
STDINT_H=
fi
;;
*)
- for ac_header in sys/inttypes.h sys/bitypes.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+ ac_fn_c_check_header_compile "$LINENO" "sys/inttypes.h" "ac_cv_header_sys_inttypes_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_inttypes_h" = xyes
+then :
+ printf "%s\n" "#define HAVE_SYS_INTTYPES_H 1" >>confdefs.h
fi
+ac_fn_c_check_header_compile "$LINENO" "sys/bitypes.h" "ac_cv_header_sys_bitypes_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_bitypes_h" = xyes
+then :
+ printf "%s\n" "#define HAVE_SYS_BITYPES_H 1" >>confdefs.h
-done
+fi
if test $ac_cv_header_sys_inttypes_h = yes; then
HAVE_SYS_INTTYPES_H=1
@@ -10511,25 +11069,23 @@ done
for gltype in ptrdiff_t size_t ; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bit size of $gltype" >&5
-$as_echo_n "checking for bit size of $gltype... " >&6; }
-if eval \${gl_cv_bitsizeof_${gltype}+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for bit size of $gltype" >&5
+printf %s "checking for bit size of $gltype... " >&6; }
+if eval test \${gl_cv_bitsizeof_${gltype}+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" "
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
-#include <limits.h>"; then :
+#include <limits.h>"
+then :
-else
+else $as_nop
result=unknown
fi
@@ -10537,16 +11093,14 @@ fi
fi
eval ac_res=\$gl_cv_bitsizeof_${gltype}
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
eval result=\$gl_cv_bitsizeof_${gltype}
if test $result = unknown; then
result=0
fi
GLTYPE=`echo "$gltype" | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`
- cat >>confdefs.h <<_ACEOF
-#define BITSIZEOF_${GLTYPE} $result
-_ACEOF
+ printf "%s\n" "#define BITSIZEOF_${GLTYPE} $result" >>confdefs.h
eval BITSIZEOF_${GLTYPE}=\$result
done
@@ -10556,25 +11110,23 @@ _ACEOF
for gltype in sig_atomic_t wchar_t wint_t ; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bit size of $gltype" >&5
-$as_echo_n "checking for bit size of $gltype... " >&6; }
-if eval \${gl_cv_bitsizeof_${gltype}+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for bit size of $gltype" >&5
+printf %s "checking for bit size of $gltype... " >&6; }
+if eval test \${gl_cv_bitsizeof_${gltype}+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" "
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
-#include <limits.h>"; then :
+#include <limits.h>"
+then :
-else
+else $as_nop
result=unknown
fi
@@ -10582,16 +11134,14 @@ fi
fi
eval ac_res=\$gl_cv_bitsizeof_${gltype}
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
eval result=\$gl_cv_bitsizeof_${gltype}
if test $result = unknown; then
result=0
fi
GLTYPE=`echo "$gltype" | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`
- cat >>confdefs.h <<_ACEOF
-#define BITSIZEOF_${GLTYPE} $result
-_ACEOF
+ printf "%s\n" "#define BITSIZEOF_${GLTYPE} $result" >>confdefs.h
eval BITSIZEOF_${GLTYPE}=\$result
done
@@ -10600,51 +11150,47 @@ _ACEOF
for gltype in sig_atomic_t wchar_t wint_t ; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $gltype is signed" >&5
-$as_echo_n "checking whether $gltype is signed... " >&6; }
-if eval \${gl_cv_type_${gltype}_signed+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gltype is signed" >&5
+printf %s "checking whether $gltype is signed... " >&6; }
+if eval test \${gl_cv_type_${gltype}_signed+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
int verify[2 * (($gltype) -1 < ($gltype) 0) - 1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
result=yes
-else
+else $as_nop
result=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
eval gl_cv_type_${gltype}_signed=\$result
fi
eval ac_res=\$gl_cv_type_${gltype}_signed
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
eval result=\$gl_cv_type_${gltype}_signed
GLTYPE=`echo $gltype | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`
if test "$result" = yes; then
- cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGNED_${GLTYPE} 1
-_ACEOF
+ printf "%s\n" "#define HAVE_SIGNED_${GLTYPE} 1" >>confdefs.h
eval HAVE_SIGNED_${GLTYPE}=1
else
@@ -10659,11 +11205,12 @@ _ACEOF
for gltype in ptrdiff_t size_t ; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $gltype integer literal suffix" >&5
-$as_echo_n "checking for $gltype integer literal suffix... " >&6; }
-if eval \${gl_cv_type_${gltype}_suffix+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $gltype integer literal suffix" >&5
+printf %s "checking for $gltype integer literal suffix... " >&6; }
+if eval test \${gl_cv_type_${gltype}_suffix+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
eval gl_cv_type_${gltype}_suffix=no
eval result=\$gl_cv_type_${gltype}_signed
if test "$result" = yes; then
@@ -10685,44 +11232,39 @@ else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
extern $gltype foo;
extern $gltype1 foo;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval gl_cv_type_${gltype}_suffix=\$glsuf
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
eval result=\$gl_cv_type_${gltype}_suffix
test "$result" != no && break
done
fi
eval ac_res=\$gl_cv_type_${gltype}_suffix
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
GLTYPE=`echo $gltype | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`
eval result=\$gl_cv_type_${gltype}_suffix
test "$result" = no && result=
eval ${GLTYPE}_SUFFIX=\$result
- cat >>confdefs.h <<_ACEOF
-#define ${GLTYPE}_SUFFIX $result
-_ACEOF
+ printf "%s\n" "#define ${GLTYPE}_SUFFIX $result" >>confdefs.h
done
@@ -10731,11 +11273,12 @@ _ACEOF
for gltype in sig_atomic_t wchar_t wint_t ; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $gltype integer literal suffix" >&5
-$as_echo_n "checking for $gltype integer literal suffix... " >&6; }
-if eval \${gl_cv_type_${gltype}_suffix+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $gltype integer literal suffix" >&5
+printf %s "checking for $gltype integer literal suffix... " >&6; }
+if eval test \${gl_cv_type_${gltype}_suffix+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
eval gl_cv_type_${gltype}_suffix=no
eval result=\$gl_cv_type_${gltype}_signed
if test "$result" = yes; then
@@ -10757,44 +11300,39 @@ else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
extern $gltype foo;
extern $gltype1 foo;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval gl_cv_type_${gltype}_suffix=\$glsuf
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
eval result=\$gl_cv_type_${gltype}_suffix
test "$result" != no && break
done
fi
eval ac_res=\$gl_cv_type_${gltype}_suffix
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
GLTYPE=`echo $gltype | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`
eval result=\$gl_cv_type_${gltype}_suffix
test "$result" = no && result=
eval ${GLTYPE}_SUFFIX=\$result
- cat >>confdefs.h <<_ACEOF
-#define ${GLTYPE}_SUFFIX $result
-_ACEOF
+ printf "%s\n" "#define ${GLTYPE}_SUFFIX $result" >>confdefs.h
done
@@ -10833,51 +11371,71 @@ else
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
-$as_echo_n "checking for C/C++ restrict keyword... " >&6; }
-if ${ac_cv_c_restrict+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+
+ GNULIB_IMAXABS=0;
+ GNULIB_IMAXDIV=0;
+ GNULIB_STRTOIMAX=0;
+ GNULIB_STRTOUMAX=0;
+ HAVE_DECL_IMAXABS=1;
+ HAVE_DECL_IMAXDIV=1;
+ HAVE_DECL_STRTOIMAX=1;
+ HAVE_DECL_STRTOUMAX=1;
+ HAVE_IMAXDIV_T=1;
+ REPLACE_STRTOIMAX=0;
+ REPLACE_STRTOUMAX=0;
+ INT32_MAX_LT_INTMAX_MAX=1;
+ INT64_MAX_EQ_LONG_MAX='defined _LP64';
+ PRIPTR_PREFIX=__PRIPTR_PREFIX;
+ UINT32_MAX_LT_UINTMAX_MAX=1;
+ UINT64_MAX_EQ_ULONG_MAX='defined _LP64';
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
+printf %s "checking for C/C++ restrict keyword... " >&6; }
+if test ${ac_cv_c_restrict+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_cv_c_restrict=no
- # The order here caters to the fact that C++ does not require restrict.
- for ac_kw in __restrict __restrict__ _Restrict restrict; do
+ # Put '__restrict__' first, to avoid problems with glibc and non-GCC; see:
+ # https://lists.gnu.org/archive/html/bug-autoconf/2016-02/msg00006.html
+ # Put 'restrict' last, because C++ lacks it.
+ for ac_kw in __restrict__ __restrict _Restrict restrict; do
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
typedef int *int_ptr;
- int foo (int_ptr $ac_kw ip) { return ip[0]; }
- int bar (int [$ac_kw]); /* Catch GCC bug 14050. */
- int bar (int ip[$ac_kw]) { 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 ip[$ac_kw]) { return ip[0]; }
int
-main ()
+main (void)
{
int s[1];
- int *$ac_kw t = s;
- t[0] = 0;
- return foo (t) + bar (t);
+ int *$ac_kw t = s;
+ t[0] = 0;
+ return foo (t) + bar (t);
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_restrict=$ac_kw
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
test "$ac_cv_c_restrict" != no && break
done
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5
-$as_echo "$ac_cv_c_restrict" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5
+printf "%s\n" "$ac_cv_c_restrict" >&6; }
case $ac_cv_c_restrict in
restrict) ;;
- no) $as_echo "#define restrict /**/" >>confdefs.h
+ no) printf "%s\n" "#define restrict /**/" >>confdefs.h
;;
- *) cat >>confdefs.h <<_ACEOF
-#define restrict $ac_cv_c_restrict
-_ACEOF
+ *) printf "%s\n" "#define restrict $ac_cv_c_restrict" >>confdefs.h
;;
esac
@@ -10892,14 +11450,431 @@ _ACEOF
+
+
+
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_inttypes_h='<'inttypes.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <inttypes.h>" >&5
+printf %s "checking absolute name of <inttypes.h>... " >&6; }
+if test ${gl_cv_next_inttypes_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+
+ if test $ac_cv_header_inttypes_h = yes; then
+
+
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <inttypes.h>
+_ACEOF
+ case "$host_os" in
+ aix*) gl_absname_cpp="$ac_cpp -C" ;;
+ *) gl_absname_cpp="$ac_cpp" ;;
+ esac
+
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'inttypes.h' \
+ | sed -e "$gl_make_literal_regex_sed"`
+ gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
+ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
+ s|^/[^/]|//&|
+ p
+ q
+ }'
+
+ gl_cv_absolute_inttypes_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_inttypes_h
+ gl_cv_next_inttypes_h='"'$gl_header'"'
+ else
+ gl_cv_next_inttypes_h='<'inttypes.h'>'
+ fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_inttypes_h" >&5
+printf "%s\n" "$gl_cv_next_inttypes_h" >&6; }
+ fi
+ NEXT_INTTYPES_H=$gl_cv_next_inttypes_h
+
+ if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
+ gl_next_as_first_directive='<'inttypes.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_inttypes_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H=$gl_next_as_first_directive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it
+ # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is
+ # irrelevant for anonymous mappings.
+ ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap"
+if test "x$ac_cv_func_mmap" = xyes
+then :
+ gl_have_mmap=yes
+else $as_nop
+ gl_have_mmap=no
+fi
+
+
+ # Try to allow MAP_ANONYMOUS.
+ gl_have_mmap_anonymous=no
+ if test $gl_have_mmap = yes; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for MAP_ANONYMOUS" >&5
+printf %s "checking for MAP_ANONYMOUS... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/mman.h>
+#ifdef MAP_ANONYMOUS
+ I cannot identify this map
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
+ gl_have_mmap_anonymous=yes
+fi
+rm -rf conftest*
+
+ if test $gl_have_mmap_anonymous != yes; then
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/mman.h>
+#ifdef MAP_ANON
+ I cannot identify this map
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
+
+printf "%s\n" "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h
+
+ gl_have_mmap_anonymous=yes
+fi
+rm -rf conftest*
+
+ fi
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_have_mmap_anonymous" >&5
+printf "%s\n" "$gl_have_mmap_anonymous" >&6; }
+ if test $gl_have_mmap_anonymous = yes; then
+
+printf "%s\n" "#define HAVE_MAP_ANONYMOUS 1" >>confdefs.h
+
+ fi
+ fi
+
+
+
+
+ GNULIB_EXPLICIT_BZERO=0;
+ GNULIB_FFSL=0;
+ GNULIB_FFSLL=0;
+ GNULIB_MEMCHR=0;
+ GNULIB_MEMMEM=0;
+ GNULIB_MEMPCPY=0;
+ GNULIB_MEMRCHR=0;
+ GNULIB_RAWMEMCHR=0;
+ GNULIB_STPCPY=0;
+ GNULIB_STPNCPY=0;
+ GNULIB_STRCHRNUL=0;
+ GNULIB_STRDUP=0;
+ GNULIB_STRNCAT=0;
+ GNULIB_STRNDUP=0;
+ GNULIB_STRNLEN=0;
+ GNULIB_STRPBRK=0;
+ GNULIB_STRSEP=0;
+ GNULIB_STRSTR=0;
+ GNULIB_STRCASESTR=0;
+ GNULIB_STRTOK_R=0;
+ GNULIB_MBSLEN=0;
+ GNULIB_MBSNLEN=0;
+ GNULIB_MBSCHR=0;
+ GNULIB_MBSRCHR=0;
+ GNULIB_MBSSTR=0;
+ GNULIB_MBSCASECMP=0;
+ GNULIB_MBSNCASECMP=0;
+ GNULIB_MBSPCASECMP=0;
+ GNULIB_MBSCASESTR=0;
+ GNULIB_MBSCSPN=0;
+ GNULIB_MBSPBRK=0;
+ GNULIB_MBSSPN=0;
+ GNULIB_MBSSEP=0;
+ GNULIB_MBSTOK_R=0;
+ GNULIB_STRERROR=0;
+ GNULIB_STRERROR_R=0;
+ GNULIB_STRERRORNAME_NP=0;
+ GNULIB_SIGABBREV_NP=0;
+ GNULIB_SIGDESCR_NP=0;
+ GNULIB_STRSIGNAL=0;
+ GNULIB_STRVERSCMP=0;
+ HAVE_MBSLEN=0;
+ GNULIB_MDA_MEMCCPY=1;
+ GNULIB_MDA_STRDUP=1;
+ HAVE_EXPLICIT_BZERO=1;
+ HAVE_FFSL=1;
+ HAVE_FFSLL=1;
+ HAVE_DECL_MEMMEM=1;
+ HAVE_MEMPCPY=1;
+ HAVE_DECL_MEMRCHR=1;
+ HAVE_RAWMEMCHR=1;
+ HAVE_STPCPY=1;
+ HAVE_STPNCPY=1;
+ HAVE_STRCHRNUL=1;
+ HAVE_DECL_STRDUP=1;
+ HAVE_DECL_STRNDUP=1;
+ HAVE_DECL_STRNLEN=1;
+ HAVE_STRPBRK=1;
+ HAVE_STRSEP=1;
+ HAVE_STRCASESTR=1;
+ HAVE_DECL_STRTOK_R=1;
+ HAVE_DECL_STRERROR_R=1;
+ HAVE_STRERRORNAME_NP=1;
+ HAVE_SIGABBREV_NP=1;
+ HAVE_SIGDESCR_NP=1;
+ HAVE_DECL_STRSIGNAL=1;
+ HAVE_STRVERSCMP=1;
+ REPLACE_FFSLL=0;
+ REPLACE_MEMCHR=0;
+ REPLACE_MEMMEM=0;
+ REPLACE_STPNCPY=0;
+ REPLACE_STRCHRNUL=0;
+ REPLACE_STRDUP=0;
+ REPLACE_STRNCAT=0;
+ REPLACE_STRNDUP=0;
+ REPLACE_STRNLEN=0;
+ REPLACE_STRSTR=0;
+ REPLACE_STRCASESTR=0;
+ REPLACE_STRTOK_R=0;
+ REPLACE_STRERROR=0;
+ REPLACE_STRERROR_R=0;
+ REPLACE_STRERRORNAME_NP=0;
+ REPLACE_STRSIGNAL=0;
+ UNDEFINE_STRTOK_R=0;
+
+
+
+
+
+
+
+
+ # Detect platform-specific bugs in some versions of glibc:
+ # memchr should not dereference anything with length 0
+ # https://bugzilla.redhat.com/show_bug.cgi?id=499689
+ # memchr should not dereference overestimated length after a match
+ # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=10162
+ # memchr should cast the second argument to 'unsigned char'.
+ # This bug exists in Android 4.3.
+ # Assume that memchr works on platforms that lack mprotect.
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether memchr works" >&5
+printf %s "checking whether memchr works... " >&6; }
+if test ${gl_cv_func_memchr_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test "$cross_compiling" = yes
+then :
+ case "$host_os" in
+ # Guess no on Android.
+ linux*-android*) gl_cv_func_memchr_works="guessing no" ;;
+ # Guess yes on native Windows.
+ mingw*) gl_cv_func_memchr_works="guessing yes" ;;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_memchr_works="$gl_cross_guess_normal" ;;
+ esac
+
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <string.h>
+#if HAVE_SYS_MMAN_H
+# include <fcntl.h>
+# include <unistd.h>
+# include <sys/types.h>
+# include <sys/mman.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+
+int
+main (void)
+{
+
+ int result = 0;
+ char *fence = NULL;
+#if HAVE_SYS_MMAN_H && HAVE_MPROTECT
+# if HAVE_MAP_ANONYMOUS
+ const int flags = MAP_ANONYMOUS | MAP_PRIVATE;
+ const int fd = -1;
+# else /* !HAVE_MAP_ANONYMOUS */
+ const int flags = MAP_FILE | MAP_PRIVATE;
+ int fd = open ("/dev/zero", O_RDONLY, 0666);
+ if (fd >= 0)
+# endif
+ {
+ int pagesize = getpagesize ();
+ char *two_pages =
+ (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE,
+ flags, fd, 0);
+ if (two_pages != (char *)(-1)
+ && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0)
+ fence = two_pages + pagesize;
+ }
+#endif
+ if (fence)
+ {
+ /* Test against bugs on glibc systems. */
+ if (memchr (fence, 0, 0))
+ result |= 1;
+ strcpy (fence - 9, "12345678");
+ if (memchr (fence - 9, 0, 79) != fence - 1)
+ result |= 2;
+ if (memchr (fence - 1, 0, 3) != fence - 1)
+ result |= 4;
+ /* Test against bug on AIX 7.2. */
+ if (memchr (fence - 4, '6', 16) != fence - 4)
+ result |= 8;
+ }
+ /* Test against bug on Android 4.3. */
+ {
+ char input[3];
+ input[0] = 'a';
+ input[1] = 'b';
+ input[2] = 'c';
+ if (memchr (input, 0x789abc00 | 'b', 3) != input + 1)
+ result |= 16;
+ }
+ return result;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_memchr_works=yes
+else $as_nop
+ gl_cv_func_memchr_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_memchr_works" >&5
+printf "%s\n" "$gl_cv_func_memchr_works" >&6; }
+ case "$gl_cv_func_memchr_works" in
+ *yes) ;;
+ *) REPLACE_MEMCHR=1 ;;
+ esac
+
+
+ REPLACE_NULL=0;
+ HAVE_MAX_ALIGN_T=1;
+ HAVE_WCHAR_T=1;
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wchar_t" >&5
+printf %s "checking for wchar_t... " >&6; }
+if test ${gt_cv_c_wchar_t+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stddef.h>
+ wchar_t foo = (wchar_t)'\0';
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gt_cv_c_wchar_t=yes
+else $as_nop
+ gt_cv_c_wchar_t=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_wchar_t" >&5
+printf "%s\n" "$gt_cv_c_wchar_t" >&6; }
+ if test $gt_cv_c_wchar_t = yes; then
+
+printf "%s\n" "#define HAVE_WCHAR_T 1" >>confdefs.h
+
+ fi
+
+ac_fn_check_decl "$LINENO" "fcloseall" "ac_cv_have_decl_fcloseall" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_fcloseall" = xyes
+then :
+ ac_have_decl=1
+else $as_nop
+ ac_have_decl=0
+fi
+printf "%s\n" "#define HAVE_DECL_FCLOSEALL $ac_have_decl" >>confdefs.h
+
+
+
+
+
+
+
+
+
+
+
if test $gl_cv_have_include_next = yes; then
gl_cv_next_string_h='<'string.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <string.h>" >&5
-$as_echo_n "checking absolute name of <string.h>... " >&6; }
-if ${gl_cv_next_string_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <string.h>" >&5
+printf %s "checking absolute name of <string.h>... " >&6; }
+if test ${gl_cv_next_string_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
@@ -10938,8 +11913,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_string_h" >&5
-$as_echo "$gl_cv_next_string_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_string_h" >&5
+printf "%s\n" "$gl_cv_next_string_h" >&6; }
fi
NEXT_STRING_H=$gl_cv_next_string_h
@@ -10960,51 +11935,73 @@ $as_echo "$gl_cv_next_string_h" >&6; }
-ac_fn_c_check_decl "$LINENO" "strndup" "ac_cv_have_decl_strndup" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strndup" = xyes; then :
+
+
+ac_fn_check_decl "$LINENO" "strndup" "ac_cv_have_decl_strndup" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_strndup" = xyes
+then :
ac_have_decl=1
-else
+else $as_nop
ac_have_decl=0
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_STRNDUP $ac_have_decl
-_ACEOF
-
+printf "%s\n" "#define HAVE_DECL_STRNDUP $ac_have_decl" >>confdefs.h
-ac_fn_c_check_decl "$LINENO" "strnlen" "ac_cv_have_decl_strnlen" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strnlen" = xyes; then :
+ac_fn_check_decl "$LINENO" "strnlen" "ac_cv_have_decl_strnlen" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_strnlen" = xyes
+then :
ac_have_decl=1
-else
+else $as_nop
ac_have_decl=0
fi
+printf "%s\n" "#define HAVE_DECL_STRNLEN $ac_have_decl" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_STRNLEN $ac_have_decl
-_ACEOF
-ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
-if test "x$ac_cv_type_pid_t" = xyes; then :
+ ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default
+"
+if test "x$ac_cv_type_pid_t" = xyes
+then :
-else
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #if defined _WIN64 && !defined __CYGWIN__
+ LLP64
+ #endif
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
-cat >>confdefs.h <<_ACEOF
-#define pid_t int
_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_pid_type='int'
+else $as_nop
+ ac_pid_type='__int64'
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+
+printf "%s\n" "#define pid_t $ac_pid_type" >>confdefs.h
+
fi
+
ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default"
-if test "x$ac_cv_type_mode_t" = xyes; then :
+if test "x$ac_cv_type_mode_t" = xyes
+then :
-else
+else $as_nop
-cat >>confdefs.h <<_ACEOF
-#define mode_t int
-_ACEOF
+printf "%s\n" "#define mode_t int" >>confdefs.h
fi
@@ -11016,7 +12013,7 @@ fi
-$as_echo "#define _USE_STD_STAT 1" >>confdefs.h
+printf "%s\n" "#define _USE_STD_STAT 1" >>confdefs.h
@@ -11031,11 +12028,12 @@ $as_echo "#define _USE_STD_STAT 1" >>confdefs.h
if test $gl_cv_have_include_next = yes; then
gl_cv_next_sys_types_h='<'sys/types.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/types.h>" >&5
-$as_echo_n "checking absolute name of <sys/types.h>... " >&6; }
-if ${gl_cv_next_sys_types_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/types.h>" >&5
+printf %s "checking absolute name of <sys/types.h>... " >&6; }
+if test ${gl_cv_next_sys_types_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
@@ -11074,8 +12072,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_types_h" >&5
-$as_echo "$gl_cv_next_sys_types_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_types_h" >&5
+printf "%s\n" "$gl_cv_next_sys_types_h" >&6; }
fi
NEXT_SYS_TYPES_H=$gl_cv_next_sys_types_h
@@ -11107,8 +12105,6 @@ $as_echo "$gl_cv_next_sys_types_h" >&6; }
-
-
if test $ac_cv_header_features_h = yes; then
HAVE_FEATURES_H=1
else
@@ -11117,11 +12113,12 @@ $as_echo "$gl_cv_next_sys_types_h" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
-$as_echo_n "checking for inttypes.h... " >&6; }
-if ${gl_cv_header_inttypes_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
+printf %s "checking for inttypes.h... " >&6; }
+if test ${gl_cv_header_inttypes_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -11129,73 +12126,73 @@ else
#include <inttypes.h>
int
-main ()
+main (void)
{
uintmax_t i = (uintmax_t) -1; return !i;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_inttypes_h=yes
-else
+else $as_nop
gl_cv_header_inttypes_h=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_inttypes_h" >&5
-$as_echo "$gl_cv_header_inttypes_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_inttypes_h" >&5
+printf "%s\n" "$gl_cv_header_inttypes_h" >&6; }
if test $gl_cv_header_inttypes_h = yes; then
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INTTYPES_H_WITH_UINTMAX 1
-_ACEOF
+printf "%s\n" "#define HAVE_INTTYPES_H_WITH_UINTMAX 1" >>confdefs.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5
-$as_echo_n "checking for stdint.h... " >&6; }
-if ${gl_cv_header_stdint_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5
+printf %s "checking for stdint.h... " >&6; }
+if test ${gl_cv_header_stdint_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <stdint.h>
int
-main ()
+main (void)
{
uintmax_t i = (uintmax_t) -1; return !i;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_stdint_h=yes
-else
+else $as_nop
gl_cv_header_stdint_h=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_h" >&5
-$as_echo "$gl_cv_header_stdint_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_h" >&5
+printf "%s\n" "$gl_cv_header_stdint_h" >&6; }
if test $gl_cv_header_stdint_h = yes; then
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STDINT_H_WITH_UINTMAX 1
-_ACEOF
+printf "%s\n" "#define HAVE_STDINT_H_WITH_UINTMAX 1" >>confdefs.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5
-$as_echo_n "checking for intmax_t... " >&6; }
-if ${gt_cv_c_intmax_t+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5
+printf %s "checking for intmax_t... " >&6; }
+if test ${gt_cv_c_intmax_t+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -11209,46 +12206,43 @@ else
#endif
int
-main ()
+main (void)
{
intmax_t x = -1; return !x;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gt_cv_c_intmax_t=yes
-else
+else $as_nop
gt_cv_c_intmax_t=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_intmax_t" >&5
-$as_echo "$gt_cv_c_intmax_t" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_intmax_t" >&5
+printf "%s\n" "$gt_cv_c_intmax_t" >&6; }
if test $gt_cv_c_intmax_t = yes; then
-$as_echo "#define HAVE_INTMAX_T 1" >>confdefs.h
+printf "%s\n" "#define HAVE_INTMAX_T 1" >>confdefs.h
else
- test $ac_cv_type_long_long_int = yes \
- && ac_type='long long' \
- || ac_type='long'
-
-cat >>confdefs.h <<_ACEOF
-#define intmax_t $ac_type
-_ACEOF
+printf "%s\n" "#define intmax_t long long" >>confdefs.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'double'" >&5
-$as_echo_n "checking where to find the exponent in a 'double'... " >&6; }
-if ${gl_cv_cc_double_expbit0+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'double'" >&5
+printf %s "checking where to find the exponent in a 'double'... " >&6; }
+if test ${gl_cv_cc_double_expbit0+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -11259,14 +12253,16 @@ else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "mixed_endianness" >/dev/null 2>&1; then :
+ $EGREP "mixed_endianness" >/dev/null 2>&1
+then :
gl_cv_cc_double_expbit0="unknown"
-else
+else $as_nop
:
-if ${ac_cv_c_bigendian+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+if test ${ac_cv_c_bigendian+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_cv_c_bigendian=unknown
# See if we're dealing with a universal compiler.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -11277,7 +12273,8 @@ else
typedef int dummy;
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
# Check for potential -arch flags. It is not universal unless
# there are at least two -arch flags with different values.
@@ -11301,7 +12298,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
fi
done
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
if test $ac_cv_c_bigendian = unknown; then
# See if sys/param.h defines the BYTE_ORDER macro.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -11310,7 +12307,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#include <sys/param.h>
int
-main ()
+main (void)
{
#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
&& defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
@@ -11322,7 +12319,8 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
# It does; now see whether it defined to BIG_ENDIAN or not.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -11330,7 +12328,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
#include <sys/param.h>
int
-main ()
+main (void)
{
#if BYTE_ORDER != BIG_ENDIAN
not big endian
@@ -11340,14 +12338,15 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_bigendian=yes
-else
+else $as_nop
ac_cv_c_bigendian=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
if test $ac_cv_c_bigendian = unknown; then
# See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
@@ -11356,7 +12355,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
#include <limits.h>
int
-main ()
+main (void)
{
#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
bogus endian macros
@@ -11366,14 +12365,15 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
# It does; now see whether it defined to _BIG_ENDIAN or not.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <limits.h>
int
-main ()
+main (void)
{
#ifndef _BIG_ENDIAN
not big endian
@@ -11383,31 +12383,33 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_bigendian=yes
-else
+else $as_nop
ac_cv_c_bigendian=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
if test $ac_cv_c_bigendian = unknown; then
# Compile a test program.
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
# Try to guess by grepping values from an object file.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-short int ascii_mm[] =
+unsigned short int ascii_mm[] =
{ 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
- short int ascii_ii[] =
+ unsigned short int ascii_ii[] =
{ 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
int use_ascii (int i) {
return ascii_mm[i] + ascii_ii[i];
}
- short int ebcdic_ii[] =
+ unsigned short int ebcdic_ii[] =
{ 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
- short int ebcdic_mm[] =
+ unsigned short int ebcdic_mm[] =
{ 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
int use_ebcdic (int i) {
return ebcdic_mm[i] + ebcdic_ii[i];
@@ -11415,14 +12417,15 @@ short int ascii_mm[] =
extern int foo;
int
-main ()
+main (void)
{
return use_ascii (foo) == use_ebcdic (foo);
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
ac_cv_c_bigendian=yes
fi
@@ -11435,13 +12438,13 @@ if ac_fn_c_try_compile "$LINENO"; then :
fi
fi
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
/* Are we little or big endian? From Harbison&Steele. */
@@ -11457,9 +12460,10 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_c_bigendian=no
-else
+else $as_nop
ac_cv_c_bigendian=yes
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -11476,7 +12480,7 @@ fi
gl_cv_cc_double_expbit0="word 1 bit 20" ;; #(
universal)
-$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
+printf "%s\n" "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
;; #(
*)
@@ -11485,10 +12489,10 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
fi
-rm -f conftest*
+rm -rf conftest*
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -11556,9 +12560,10 @@ int main ()
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_cc_double_expbit0=`cat conftest.out`
-else
+else $as_nop
gl_cv_cc_double_expbit0="unknown"
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -11568,21 +12573,17 @@ fi
rm -f conftest.out
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_double_expbit0" >&5
-$as_echo "$gl_cv_cc_double_expbit0" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_double_expbit0" >&5
+printf "%s\n" "$gl_cv_cc_double_expbit0" >&6; }
case "$gl_cv_cc_double_expbit0" in
word*bit*)
word=`echo "$gl_cv_cc_double_expbit0" | sed -e 's/word //' -e 's/ bit.*//'`
bit=`echo "$gl_cv_cc_double_expbit0" | sed -e 's/word.*bit //'`
-cat >>confdefs.h <<_ACEOF
-#define DBL_EXPBIT0_WORD $word
-_ACEOF
+printf "%s\n" "#define DBL_EXPBIT0_WORD $word" >>confdefs.h
-cat >>confdefs.h <<_ACEOF
-#define DBL_EXPBIT0_BIT $bit
-_ACEOF
+printf "%s\n" "#define DBL_EXPBIT0_BIT $bit" >>confdefs.h
;;
esac
@@ -11594,14 +12595,15 @@ _ACEOF
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether snprintf returns a byte count as in C99" >&5
+printf %s "checking whether snprintf returns a byte count as in C99... " >&6; }
+if test ${gl_cv_func_snprintf_retval_c99+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf returns a byte count as in C99" >&5
-$as_echo_n "checking whether snprintf returns a byte count as in C99... " >&6; }
-if ${gl_cv_func_snprintf_retval_c99+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu* | gnu*) gl_cv_func_snprintf_retval_c99="guessing yes";;
@@ -11610,6 +12612,7 @@ else
# Guess yes on FreeBSD >= 5.
freebsd[1-4].*) gl_cv_func_snprintf_retval_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_snprintf_retval_c99="guessing yes";;
+ midnightbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";;
darwin*) gl_cv_func_snprintf_retval_c99="guessing yes";;
@@ -11641,19 +12644,20 @@ else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Known" >/dev/null 2>&1; then :
+ $EGREP "Known" >/dev/null 2>&1
+then :
gl_cv_func_snprintf_retval_c99="guessing yes"
-else
+else $as_nop
gl_cv_func_snprintf_retval_c99="guessing no"
fi
-rm -f conftest*
+rm -rf conftest*
;;
- # If we don't know, assume the worst.
- *) gl_cv_func_snprintf_retval_c99="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_snprintf_retval_c99="$gl_cross_guess_normal";;
esac
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -11686,9 +12690,10 @@ int main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_snprintf_retval_c99=yes
-else
+else $as_nop
gl_cv_func_snprintf_retval_c99=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -11697,44 +12702,177 @@ fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_retval_c99" >&5
-$as_echo "$gl_cv_func_snprintf_retval_c99" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_retval_c99" >&5
+printf "%s\n" "$gl_cv_func_snprintf_retval_c99" >&6; }
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether snprintf truncates the result as in C99" >&5
+printf %s "checking whether snprintf truncates the result as in C99... " >&6; }
+if test ${gl_cv_func_snprintf_truncation_c99+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test "$cross_compiling" = yes
+then :
+ case "$host_os" in
+ # Guess yes on glibc systems.
+ *-gnu* | gnu*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on FreeBSD >= 5.
+ freebsd[1-4].*) gl_cv_func_snprintf_truncation_c99="guessing no";;
+ freebsd* | kfreebsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ midnightbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on Mac OS X >= 10.3.
+ darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";;
+ darwin*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on OpenBSD >= 3.9.
+ openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*)
+ gl_cv_func_snprintf_truncation_c99="guessing no";;
+ openbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on Solaris >= 2.6.
+ solaris2.[0-5] | solaris2.[0-5].*)
+ gl_cv_func_snprintf_truncation_c99="guessing no";;
+ solaris*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on AIX >= 4.
+ aix[1-3]*) gl_cv_func_snprintf_truncation_c99="guessing no";;
+ aix*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on HP-UX >= 11.
+ hpux[7-9]* | hpux10*) gl_cv_func_snprintf_truncation_c99="guessing no";;
+ hpux*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on IRIX >= 6.5.
+ irix6.5) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on OSF/1 >= 5.
+ osf[3-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";;
+ osf*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on NetBSD >= 3.
+ netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*)
+ gl_cv_func_snprintf_truncation_c99="guessing no";;
+ netbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on BeOS.
+ beos*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess yes on Android.
+ linux*-android*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ # Guess no on native Windows.
+ mingw*) gl_cv_func_snprintf_truncation_c99="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_snprintf_truncation_c99="$gl_cross_guess_normal";;
+ esac
+
+else $as_nop
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- for ac_func in snprintf strnlen wcslen wcsnlen mbrtowc wcrtomb
-do :
- as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#include <stdio.h>
+#include <string.h>
+#if HAVE_SNPRINTF
+# define my_snprintf snprintf
+#else
+# include <stdarg.h>
+static int my_snprintf (char *buf, int size, const char *format, ...)
+{
+ va_list args;
+ int ret;
+ va_start (args, format);
+ ret = vsnprintf (buf, size, format, args);
+ va_end (args);
+ return ret;
+}
+#endif
+static char buf[100];
+int main ()
+{
+ strcpy (buf, "ABCDEF");
+ my_snprintf (buf, 3, "%d %d", 4567, 89);
+ if (memcmp (buf, "45\0DEF", 6) != 0)
+ return 1;
+ return 0;
+}
_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_snprintf_truncation_c99=yes
+else $as_nop
+ gl_cv_func_snprintf_truncation_c99=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
fi
-done
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_truncation_c99" >&5
+printf "%s\n" "$gl_cv_func_snprintf_truncation_c99" >&6; }
- ac_fn_c_check_decl "$LINENO" "_snprintf" "ac_cv_have_decl__snprintf" "#include <stdio.h>
-"
-if test "x$ac_cv_have_decl__snprintf" = xyes; then :
+
+
+
+
+ ac_fn_c_check_func "$LINENO" "snprintf" "ac_cv_func_snprintf"
+if test "x$ac_cv_func_snprintf" = xyes
+then :
+ printf "%s\n" "#define HAVE_SNPRINTF 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "strnlen" "ac_cv_func_strnlen"
+if test "x$ac_cv_func_strnlen" = xyes
+then :
+ printf "%s\n" "#define HAVE_STRNLEN 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "wcslen" "ac_cv_func_wcslen"
+if test "x$ac_cv_func_wcslen" = xyes
+then :
+ printf "%s\n" "#define HAVE_WCSLEN 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "wcsnlen" "ac_cv_func_wcsnlen"
+if test "x$ac_cv_func_wcsnlen" = xyes
+then :
+ printf "%s\n" "#define HAVE_WCSNLEN 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "mbrtowc" "ac_cv_func_mbrtowc"
+if test "x$ac_cv_func_mbrtowc" = xyes
+then :
+ printf "%s\n" "#define HAVE_MBRTOWC 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "wcrtomb" "ac_cv_func_wcrtomb"
+if test "x$ac_cv_func_wcrtomb" = xyes
+then :
+ printf "%s\n" "#define HAVE_WCRTOMB 1" >>confdefs.h
+
+fi
+
+ ac_fn_check_decl "$LINENO" "_snprintf" "ac_cv_have_decl__snprintf" "#include <stdio.h>
+" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl__snprintf" = xyes
+then :
ac_have_decl=1
-else
+else $as_nop
ac_have_decl=0
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL__SNPRINTF $ac_have_decl
-_ACEOF
+printf "%s\n" "#define HAVE_DECL__SNPRINTF $ac_have_decl" >>confdefs.h
case "$gl_cv_func_snprintf_retval_c99" in
*yes)
-$as_echo "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h
+printf "%s\n" "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h
+
+ ;;
+ esac
+
+ case "$gl_cv_func_snprintf_truncation_c99" in
+ *yes)
+
+printf "%s\n" "#define HAVE_SNPRINTF_TRUNCATION_C99 1" >>confdefs.h
;;
esac
@@ -11758,6 +12896,7 @@ $as_echo "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h
GNULIB_WMEMCMP=0;
GNULIB_WMEMCPY=0;
GNULIB_WMEMMOVE=0;
+ GNULIB_WMEMPCPY=0;
GNULIB_WMEMSET=0;
GNULIB_WCSLEN=0;
GNULIB_WCSNLEN=0;
@@ -11783,6 +12922,7 @@ $as_echo "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h
GNULIB_WCSTOK=0;
GNULIB_WCSWIDTH=0;
GNULIB_WCSFTIME=0;
+ GNULIB_MDA_WCSDUP=1;
HAVE_BTOWC=1;
HAVE_MBSINIT=1;
HAVE_MBRTOWC=1;
@@ -11796,6 +12936,7 @@ $as_echo "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h
HAVE_WMEMCMP=1;
HAVE_WMEMCPY=1;
HAVE_WMEMMOVE=1;
+ HAVE_WMEMPCPY=1;
HAVE_WMEMSET=1;
HAVE_WCSLEN=1;
HAVE_WCSNLEN=1;
@@ -11822,6 +12963,7 @@ $as_echo "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h
HAVE_WCSWIDTH=1;
HAVE_WCSFTIME=1;
HAVE_DECL_WCTOB=1;
+ HAVE_DECL_WCSDUP=1;
HAVE_DECL_WCWIDTH=1;
REPLACE_MBSTATE_T=0;
REPLACE_BTOWC=0;
@@ -11837,73 +12979,68 @@ $as_echo "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h
REPLACE_WCWIDTH=0;
REPLACE_WCSWIDTH=0;
REPLACE_WCSFTIME=0;
+ REPLACE_WCSTOK=0;
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether <wchar.h> uses 'inline' correctly" >&5
-$as_echo_n "checking whether <wchar.h> uses 'inline' correctly... " >&6; }
-if ${gl_cv_header_wchar_h_correct_inline+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether <wchar.h> uses 'inline' correctly" >&5
+printf %s "checking whether <wchar.h> uses 'inline' correctly... " >&6; }
+if test ${gl_cv_header_wchar_h_correct_inline+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
gl_cv_header_wchar_h_correct_inline=yes
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ case "$host_os" in
+ *-gnu* | gnu*)
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define wcstod renamed_wcstod
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-#include <stddef.h>
-#include <stdio.h>
-#include <time.h>
-#include <wchar.h>
-extern int zero (void);
-int main () { return zero(); }
+
+ #define wcstod renamed_wcstod
+ #include <wchar.h>
+ extern int zero (void);
+ int main () { return zero(); }
_ACEOF
- save_ac_compile="$ac_compile"
- ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/`
- if echo '#include "conftest.c"' >conftest1.c &&
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+ save_ac_compile="$ac_compile"
+ ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/`
+ if echo '#include "conftest.c"' >conftest1.c \
+ && { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define wcstod renamed_wcstod
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-#include <stddef.h>
-#include <stdio.h>
-#include <time.h>
-#include <wchar.h>
-int zero (void) { return 0; }
+
+ #define wcstod renamed_wcstod
+ #include <wchar.h>
+ int zero (void) { return 0; }
_ACEOF
- ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/`
- if echo '#include "conftest.c"' >conftest2.c &&
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+ ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/`
+ if echo '#include "conftest.c"' >conftest2.c \
+ && { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&5 2>&1; then
- :
- else
- gl_cv_header_wchar_h_correct_inline=no
+ if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&5 2>&1; then
+ :
+ else
+ gl_cv_header_wchar_h_correct_inline=no
+ fi
+ fi
fi
- fi
- fi
- ac_compile="$save_ac_compile"
- rm -f conftest12.c conftest12.$ac_objext conftest$ac_exeext
+ ac_compile="$save_ac_compile"
+ rm -f conftest12.c conftest12.$ac_objext conftest$ac_exeext
+ ;;
+ esac
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_wchar_h_correct_inline" >&5
-$as_echo "$gl_cv_header_wchar_h_correct_inline" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_wchar_h_correct_inline" >&5
+printf "%s\n" "$gl_cv_header_wchar_h_correct_inline" >&6; }
if test $gl_cv_header_wchar_h_correct_inline = no; then
as_fn_error $? "<wchar.h> cannot be used with this compiler ($CC $CFLAGS $CPPFLAGS).
This is a known interoperability problem of glibc <= 2.5 with gcc >= 4.3 in
@@ -11919,7 +13056,6 @@ Configuration aborted." "$LINENO" 5
-
if test $ac_cv_header_crtdefs_h = yes; then
HAVE_CRTDEFS_H=1
else
@@ -11947,6 +13083,7 @@ fi
+
gl_source_base='gnulib/lib'
@@ -11956,11 +13093,12 @@ fi
# Define an additional variable used in the Makefile substitution.
if test $ac_cv_working_alloca_h = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca as a compiler built-in" >&5
-$as_echo_n "checking for alloca as a compiler built-in... " >&6; }
-if ${gl_cv_rpl_alloca+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for alloca as a compiler built-in" >&5
+printf %s "checking for alloca as a compiler built-in... " >&6; }
+if test ${gl_cv_rpl_alloca+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -11971,20 +13109,21 @@ else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Need own alloca" >/dev/null 2>&1; then :
+ $EGREP "Need own alloca" >/dev/null 2>&1
+then :
gl_cv_rpl_alloca=yes
-else
+else $as_nop
gl_cv_rpl_alloca=no
fi
-rm -f conftest*
+rm -rf conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_rpl_alloca" >&5
-$as_echo "$gl_cv_rpl_alloca" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_rpl_alloca" >&5
+printf "%s\n" "$gl_cv_rpl_alloca" >&6; }
if test $gl_cv_rpl_alloca = yes; then
-$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ALLOCA 1" >>confdefs.h
ALLOCA_H=alloca.h
else
@@ -12038,12 +13177,13 @@ fi
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
-else
+else $as_nop
FLOAT_H=float.h
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
esac
;;
@@ -12064,13 +13204,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
REPLACE_ITOLD=0
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether conversion from 'int' to 'long double' works" >&5
-$as_echo_n "checking whether conversion from 'int' to 'long double' works... " >&6; }
-if ${gl_cv_func_itold_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- if test "$cross_compiling" = yes; then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether conversion from 'int' to 'long double' works" >&5
+printf %s "checking whether conversion from 'int' to 'long double' works... " >&6; }
+if test ${gl_cv_func_itold_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+
+ if test "$cross_compiling" = yes
+then :
case "$host" in
sparc*-*-linux*)
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12082,19 +13224,20 @@ else
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_itold_works="guessing no"
-else
+else $as_nop
gl_cv_func_itold_works="guessing yes"
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
;;
# Guess yes on native Windows.
mingw*) gl_cv_func_itold_works="guessing yes" ;;
*) gl_cv_func_itold_works="guessing yes" ;;
esac
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -12108,9 +13251,10 @@ int main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_itold_works=yes
-else
+else $as_nop
gl_cv_func_itold_works=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -12119,8 +13263,8 @@ fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_itold_works" >&5
-$as_echo "$gl_cv_func_itold_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_itold_works" >&5
+printf "%s\n" "$gl_cv_func_itold_works" >&6; }
case "$gl_cv_func_itold_works" in
*no)
REPLACE_ITOLD=1
@@ -12140,11 +13284,12 @@ $as_echo "$gl_cv_func_itold_works" >&6; }
if test $gl_cv_have_include_next = yes; then
gl_cv_next_float_h='<'float.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <float.h>" >&5
-$as_echo_n "checking absolute name of <float.h>... " >&6; }
-if ${gl_cv_next_float_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <float.h>" >&5
+printf %s "checking absolute name of <float.h>... " >&6; }
+if test ${gl_cv_next_float_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
@@ -12183,8 +13328,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_float_h" >&5
-$as_echo "$gl_cv_next_float_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_float_h" >&5
+printf "%s\n" "$gl_cv_next_float_h" >&6; }
fi
NEXT_FLOAT_H=$gl_cv_next_float_h
@@ -12246,13 +13391,15 @@ fi
if test $ac_cv_func_getdelim = yes; then
HAVE_GETDELIM=1
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working getdelim function" >&5
-$as_echo_n "checking for working getdelim function... " >&6; }
-if ${gl_cv_func_working_getdelim+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working getdelim function" >&5
+printf %s "checking for working getdelim function... " >&6; }
+if test ${gl_cv_func_working_getdelim+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -12265,19 +13412,20 @@ else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Lucky GNU user" >/dev/null 2>&1; then :
+ $EGREP "Lucky GNU user" >/dev/null 2>&1
+then :
gl_cv_func_working_getdelim="guessing yes"
-else
+else $as_nop
case "$host_os" in
*-musl*) gl_cv_func_working_getdelim="guessing yes" ;;
- *) gl_cv_func_working_getdelim="guessing no" ;;
+ *) gl_cv_func_working_getdelim="$gl_cross_guess_normal" ;;
esac
fi
-rm -f conftest*
+rm -rf conftest*
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -12297,6 +13445,7 @@ else
int len = getdelim (&line, &siz, '\n', in);
if (!(len == 4 && line && strcmp (line, "foo\n") == 0))
{ free (line); fclose (in); return 2; }
+ free (line);
}
{
/* Test result for a NULL buffer and a non-zero size.
@@ -12312,9 +13461,10 @@ else
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_working_getdelim=yes
-else
+else $as_nop
gl_cv_func_working_getdelim=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -12323,8 +13473,8 @@ fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_getdelim" >&5
-$as_echo "$gl_cv_func_working_getdelim" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_getdelim" >&5
+printf "%s\n" "$gl_cv_func_working_getdelim" >&6; }
case "$gl_cv_func_working_getdelim" in
*yes) ;;
*) REPLACE_GETDELIM=1 ;;
@@ -12349,28 +13499,27 @@ $as_echo "$gl_cv_func_working_getdelim" >&6; }
gl_LIBOBJS="$gl_LIBOBJS getdelim.$ac_objext"
- for ac_func in flockfile funlockfile
-do :
- as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+ ac_fn_c_check_func "$LINENO" "flockfile" "ac_cv_func_flockfile"
+if test "x$ac_cv_func_flockfile" = xyes
+then :
+ printf "%s\n" "#define HAVE_FLOCKFILE 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "funlockfile" "ac_cv_func_funlockfile"
+if test "x$ac_cv_func_funlockfile" = xyes
+then :
+ printf "%s\n" "#define HAVE_FUNLOCKFILE 1" >>confdefs.h
fi
-done
- ac_fn_c_check_decl "$LINENO" "getc_unlocked" "ac_cv_have_decl_getc_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_getc_unlocked" = xyes; then :
+ ac_fn_check_decl "$LINENO" "getc_unlocked" "ac_cv_have_decl_getc_unlocked" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_getc_unlocked" = xyes
+then :
ac_have_decl=1
-else
+else $as_nop
ac_have_decl=0
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_GETC_UNLOCKED $ac_have_decl
-_ACEOF
+printf "%s\n" "#define HAVE_DECL_GETC_UNLOCKED $ac_have_decl" >>confdefs.h
fi
@@ -12385,7 +13534,7 @@ _ACEOF
-$as_echo "#define GNULIB_TEST_GETDELIM 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_GETDELIM 1" >>confdefs.h
@@ -12398,20 +13547,23 @@ $as_echo "#define GNULIB_TEST_GETDELIM 1" >>confdefs.h
gl_getline_needs_run_time_check=no
ac_fn_c_check_func "$LINENO" "getline" "ac_cv_func_getline"
-if test "x$ac_cv_func_getline" = xyes; then :
+if test "x$ac_cv_func_getline" = xyes
+then :
gl_getline_needs_run_time_check=yes
-else
+else $as_nop
am_cv_func_working_getline=no
fi
if test $gl_getline_needs_run_time_check = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working getline function" >&5
-$as_echo_n "checking for working getline function... " >&6; }
-if ${am_cv_func_working_getline+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working getline function" >&5
+printf %s "checking for working getline function... " >&6; }
+if test ${am_cv_func_working_getline+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -12424,19 +13576,20 @@ else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Lucky GNU user" >/dev/null 2>&1; then :
+ $EGREP "Lucky GNU user" >/dev/null 2>&1
+then :
am_cv_func_working_getline="guessing yes"
-else
+else $as_nop
case "$host_os" in
*-musl*) am_cv_func_working_getline="guessing yes" ;;
- *) am_cv_func_working_getline="guessing no" ;;
+ *) am_cv_func_working_getline="$gl_cross_guess_normal" ;;
esac
fi
-rm -f conftest*
+rm -rf conftest*
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -12472,9 +13625,10 @@ else
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
am_cv_func_working_getline=yes
-else
+else $as_nop
am_cv_func_working_getline=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -12483,8 +13637,8 @@ fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_working_getline" >&5
-$as_echo "$am_cv_func_working_getline" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_working_getline" >&5
+printf "%s\n" "$am_cv_func_working_getline" >&6; }
fi
if test $ac_cv_have_decl_getline = no; then
@@ -12524,7 +13678,9 @@ $as_echo "$am_cv_func_working_getline" >&6; }
-$as_echo "#define GNULIB_TEST_GETLINE 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_GETLINE 1" >>confdefs.h
+
+
@@ -12532,7 +13688,7 @@ $as_echo "#define GNULIB_TEST_GETLINE 1" >>confdefs.h
- if test $HAVE_MEMCHR = 0 || test $REPLACE_MEMCHR = 1; then
+ if test $REPLACE_MEMCHR = 1; then
@@ -12544,18 +13700,13 @@ $as_echo "#define GNULIB_TEST_GETLINE 1" >>confdefs.h
gl_LIBOBJS="$gl_LIBOBJS memchr.$ac_objext"
- for ac_header in bp-sym.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "bp-sym.h" "ac_cv_header_bp_sym_h" "$ac_includes_default"
-if test "x$ac_cv_header_bp_sym_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_BP_SYM_H 1
-_ACEOF
+ ac_fn_c_check_header_compile "$LINENO" "bp-sym.h" "ac_cv_header_bp_sym_h" "$ac_includes_default"
+if test "x$ac_cv_header_bp_sym_h" = xyes
+then :
+ printf "%s\n" "#define HAVE_BP_SYM_H 1" >>confdefs.h
fi
-done
-
fi
@@ -12569,7 +13720,7 @@ done
-$as_echo "#define GNULIB_TEST_MEMCHR 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_MEMCHR 1" >>confdefs.h
@@ -12578,16 +13729,12 @@ $as_echo "#define GNULIB_TEST_MEMCHR 1" >>confdefs.h
- for ac_func in rawmemchr
-do :
ac_fn_c_check_func "$LINENO" "rawmemchr" "ac_cv_func_rawmemchr"
-if test "x$ac_cv_func_rawmemchr" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_RAWMEMCHR 1
-_ACEOF
+if test "x$ac_cv_func_rawmemchr" = xyes
+then :
+ printf "%s\n" "#define HAVE_RAWMEMCHR 1" >>confdefs.h
fi
-done
if test $ac_cv_func_rawmemchr = no; then
HAVE_RAWMEMCHR=0
@@ -12617,30 +13764,26 @@ done
-$as_echo "#define GNULIB_TEST_RAWMEMCHR 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_RAWMEMCHR 1" >>confdefs.h
- for ac_header in stdint.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdint_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_STDINT_H 1
-_ACEOF
+ ac_fn_c_check_header_compile "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdint_h" = xyes
+then :
+ printf "%s\n" "#define HAVE_STDINT_H 1" >>confdefs.h
fi
-done
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SIZE_MAX" >&5
-$as_echo_n "checking for SIZE_MAX... " >&6; }
-if ${gl_cv_size_max+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SIZE_MAX" >&5
+printf %s "checking for SIZE_MAX... " >&6; }
+if test ${gl_cv_size_max+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
- gl_cv_size_max=
+ gl_cv_size_max=no
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -12654,22 +13797,25 @@ Found it
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Found it" >/dev/null 2>&1; then :
+ $EGREP "Found it" >/dev/null 2>&1
+then :
gl_cv_size_max=yes
fi
-rm -f conftest*
+rm -rf conftest*
- if test -z "$gl_cv_size_max"; then
+ if test $gl_cv_size_max != yes; then
if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) * CHAR_BIT - 1" "size_t_bits_minus_1" "#include <stddef.h>
-#include <limits.h>"; then :
+#include <limits.h>"
+then :
-else
+else $as_nop
size_t_bits_minus_1=
fi
- if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) <= sizeof (unsigned int)" "fits_in_uint" "#include <stddef.h>"; then :
+ if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) <= sizeof (unsigned int)" "fits_in_uint" "#include <stddef.h>"
+then :
-else
+else $as_nop
fits_in_uint=
fi
@@ -12682,17 +13828,18 @@ fi
extern unsigned long foo;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
fits_in_uint=0
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
if test $fits_in_uint = 1; then
gl_cv_size_max="(((1U << $size_t_bits_minus_1) - 1) * 2 + 1)"
@@ -12705,28 +13852,27 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_size_max" >&5
-$as_echo "$gl_cv_size_max" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_size_max" >&5
+printf "%s\n" "$gl_cv_size_max" >&6; }
if test "$gl_cv_size_max" != yes; then
-cat >>confdefs.h <<_ACEOF
-#define SIZE_MAX $gl_cv_size_max
-_ACEOF
+printf "%s\n" "#define SIZE_MAX $gl_cv_size_max" >>confdefs.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5
-$as_echo_n "checking for ssize_t... " >&6; }
-if ${gt_cv_ssize_t+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5
+printf %s "checking for ssize_t... " >&6; }
+if test ${gt_cv_ssize_t+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
int
-main ()
+main (void)
{
int x = sizeof (ssize_t *) + sizeof (ssize_t);
return !x;
@@ -12734,58 +13880,71 @@ int x = sizeof (ssize_t *) + sizeof (ssize_t);
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gt_cv_ssize_t=yes
-else
+else $as_nop
gt_cv_ssize_t=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_ssize_t" >&5
-$as_echo "$gt_cv_ssize_t" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_ssize_t" >&5
+printf "%s\n" "$gt_cv_ssize_t" >&6; }
if test $gt_cv_ssize_t = no; then
-$as_echo "#define ssize_t int" >>confdefs.h
+printf "%s\n" "#define ssize_t int" >>confdefs.h
fi
+
+
+
STDDEF_H=
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for good max_align_t" >&5
-$as_echo_n "checking for good max_align_t... " >&6; }
-if ${gl_cv_type_max_align_t+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for good max_align_t" >&5
+printf %s "checking for good max_align_t... " >&6; }
+if test ${gl_cv_type_max_align_t+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stddef.h>
unsigned int s = sizeof (max_align_t);
- #if defined __GNUC__ || defined __IBM__ALIGNOF__
+ #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__
int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1];
int check2[2 * (__alignof__ (long double) <= __alignof__ (max_align_t)) - 1];
#endif
+ typedef struct { char a; max_align_t b; } max_helper;
+ typedef struct { char a; long b; } long_helper;
+ typedef struct { char a; double b; } double_helper;
+ typedef struct { char a; long double b; } long_double_helper;
+ int check3[2 * (offsetof (long_helper, b) <= offsetof (max_helper, b)) - 1];
+ int check4[2 * (offsetof (double_helper, b) <= offsetof (max_helper, b)) - 1];
+ int check5[2 * (offsetof (long_double_helper, b) <= offsetof (max_helper, b)) - 1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_type_max_align_t=yes
-else
+else $as_nop
gl_cv_type_max_align_t=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_max_align_t" >&5
-$as_echo "$gl_cv_type_max_align_t" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_max_align_t" >&5
+printf "%s\n" "$gl_cv_type_max_align_t" >&6; }
if test $gl_cv_type_max_align_t = no; then
HAVE_MAX_ALIGN_T=0
STDDEF_H=stddef.h
@@ -12796,33 +13955,35 @@ $as_echo "$gl_cv_type_max_align_t" >&6; }
STDDEF_H=stddef.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NULL can be used in arbitrary expressions" >&5
-$as_echo_n "checking whether NULL can be used in arbitrary expressions... " >&6; }
-if ${gl_cv_decl_null_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NULL can be used in arbitrary expressions" >&5
+printf %s "checking whether NULL can be used in arbitrary expressions... " >&6; }
+if test ${gl_cv_decl_null_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stddef.h>
int test[2 * (sizeof NULL == sizeof (void *)) -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_decl_null_works=yes
-else
+else $as_nop
gl_cv_decl_null_works=no
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_null_works" >&5
-$as_echo "$gl_cv_decl_null_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_null_works" >&5
+printf "%s\n" "$gl_cv_decl_null_works" >&6; }
if test $gl_cv_decl_null_works = no; then
REPLACE_NULL=1
STDDEF_H=stddef.h
@@ -12849,11 +14010,12 @@ fi
if test $gl_cv_have_include_next = yes; then
gl_cv_next_stddef_h='<'stddef.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <stddef.h>" >&5
-$as_echo_n "checking absolute name of <stddef.h>... " >&6; }
-if ${gl_cv_next_stddef_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stddef.h>" >&5
+printf %s "checking absolute name of <stddef.h>... " >&6; }
+if test ${gl_cv_next_stddef_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
@@ -12892,8 +14054,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stddef_h" >&5
-$as_echo "$gl_cv_next_stddef_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stddef_h" >&5
+printf "%s\n" "$gl_cv_next_stddef_h" >&6; }
fi
NEXT_STDDEF_H=$gl_cv_next_stddef_h
@@ -12914,7 +14076,7 @@ $as_echo "$gl_cv_next_stddef_h" >&6; }
- $as_echo "#define __USE_MINGW_ANSI_STDIO 1" >>confdefs.h
+ printf "%s\n" "#define __USE_MINGW_ANSI_STDIO 1" >>confdefs.h
@@ -12928,11 +14090,12 @@ $as_echo "$gl_cv_next_stddef_h" >&6; }
if test $gl_cv_have_include_next = yes; then
gl_cv_next_stdio_h='<'stdio.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdio.h>" >&5
-$as_echo_n "checking absolute name of <stdio.h>... " >&6; }
-if ${gl_cv_next_stdio_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdio.h>" >&5
+printf %s "checking absolute name of <stdio.h>... " >&6; }
+if test ${gl_cv_next_stdio_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
@@ -12971,8 +14134,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdio_h" >&5
-$as_echo "$gl_cv_next_stdio_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdio_h" >&5
+printf "%s\n" "$gl_cv_next_stdio_h" >&6; }
fi
NEXT_STDIO_H=$gl_cv_next_stdio_h
@@ -12989,11 +14152,12 @@ $as_echo "$gl_cv_next_stdio_h" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking which flavor of printf attribute matches inttypes macros" >&5
-$as_echo_n "checking which flavor of printf attribute matches inttypes macros... " >&6; }
-if ${gl_cv_func_printf_attribute_flavor+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which flavor of printf attribute matches inttypes macros" >&5
+printf %s "checking which flavor of printf attribute matches inttypes macros... " >&6; }
+if test ${gl_cv_func_printf_attribute_flavor+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -13009,42 +14173,39 @@ else
#endif
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_printf_attribute_flavor=system
-else
+else $as_nop
gl_cv_func_printf_attribute_flavor=gnu
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_attribute_flavor" >&5
-$as_echo "$gl_cv_func_printf_attribute_flavor" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_attribute_flavor" >&5
+printf "%s\n" "$gl_cv_func_printf_attribute_flavor" >&6; }
if test "$gl_cv_func_printf_attribute_flavor" = gnu; then
-$as_echo "#define GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU 1" >>confdefs.h
fi
GNULIB_FSCANF=1
-cat >>confdefs.h <<_ACEOF
-#define GNULIB_FSCANF 1
-_ACEOF
+printf "%s\n" "#define GNULIB_FSCANF 1" >>confdefs.h
GNULIB_SCANF=1
-cat >>confdefs.h <<_ACEOF
-#define GNULIB_SCANF 1
-_ACEOF
+printf "%s\n" "#define GNULIB_SCANF 1" >>confdefs.h
GNULIB_FGETC=1
@@ -13074,27 +14235,32 @@ _ACEOF
+ if test $ac_cv_have_decl_fcloseall = no; then
+ HAVE_DECL_FCLOSEALL=0
+ fi
+
+
+
+
- for ac_func in strchrnul
-do :
ac_fn_c_check_func "$LINENO" "strchrnul" "ac_cv_func_strchrnul"
-if test "x$ac_cv_func_strchrnul" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_STRCHRNUL 1
-_ACEOF
+if test "x$ac_cv_func_strchrnul" = xyes
+then :
+ printf "%s\n" "#define HAVE_STRCHRNUL 1" >>confdefs.h
fi
-done
if test $ac_cv_func_strchrnul = no; then
HAVE_STRCHRNUL=0
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strchrnul works" >&5
-$as_echo_n "checking whether strchrnul works... " >&6; }
-if ${gl_cv_func_strchrnul_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether strchrnul works" >&5
+printf %s "checking whether strchrnul works... " >&6; }
+if test ${gl_cv_func_strchrnul_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test "$cross_compiling" = yes
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -13109,22 +14275,23 @@ else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Lucky user" >/dev/null 2>&1; then :
+ $EGREP "Lucky user" >/dev/null 2>&1
+then :
gl_cv_func_strchrnul_works="guessing yes"
-else
+else $as_nop
gl_cv_func_strchrnul_works="guessing no"
fi
-rm -f conftest*
+rm -rf conftest*
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <string.h> /* for strchrnul */
int
-main ()
+main (void)
{
const char *buf = "a";
return strchrnul (buf, 'b') != buf + 1;
@@ -13133,9 +14300,10 @@ const char *buf = "a";
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_strchrnul_works=yes
-else
+else $as_nop
gl_cv_func_strchrnul_works=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -13144,8 +14312,8 @@ fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strchrnul_works" >&5
-$as_echo "$gl_cv_func_strchrnul_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strchrnul_works" >&5
+printf "%s\n" "$gl_cv_func_strchrnul_works" >&6; }
case "$gl_cv_func_strchrnul_works" in
*yes) ;;
*) REPLACE_STRCHRNUL=1 ;;
@@ -13176,7 +14344,7 @@ $as_echo "$gl_cv_func_strchrnul_works" >&6; }
-$as_echo "#define GNULIB_TEST_STRCHRNUL 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_STRCHRNUL 1" >>confdefs.h
@@ -13196,26 +14364,28 @@ $as_echo "#define GNULIB_TEST_STRCHRNUL 1" >>confdefs.h
if test $ac_cv_func_strndup = yes; then
HAVE_STRNDUP=1
# AIX 4.3.3, AIX 5.1 have a function that fails to add the terminating '\0'.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strndup" >&5
-$as_echo_n "checking for working strndup... " >&6; }
-if ${gl_cv_func_strndup_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working strndup" >&5
+printf %s "checking for working strndup... " >&6; }
+if test ${gl_cv_func_strndup_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test "$cross_compiling" = yes
+then :
case $host_os in
aix | aix[3-6]*) gl_cv_func_strndup_works="guessing no";;
*) gl_cv_func_strndup_works="guessing yes";;
esac
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <string.h>
#include <stdlib.h>
int
-main ()
+main (void)
{
#if !HAVE_DECL_STRNDUP
@@ -13237,9 +14407,10 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_strndup_works=yes
-else
+else $as_nop
gl_cv_func_strndup_works=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -13247,8 +14418,8 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strndup_works" >&5
-$as_echo "$gl_cv_func_strndup_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strndup_works" >&5
+printf "%s\n" "$gl_cv_func_strndup_works" >&6; }
case $gl_cv_func_strndup_works in
*no) REPLACE_STRNDUP=1 ;;
esac
@@ -13279,7 +14450,7 @@ $as_echo "$gl_cv_func_strndup_works" >&6; }
-$as_echo "#define GNULIB_TEST_STRNDUP 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_STRNDUP 1" >>confdefs.h
@@ -13293,23 +14464,25 @@ $as_echo "#define GNULIB_TEST_STRNDUP 1" >>confdefs.h
HAVE_DECL_STRNLEN=0
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strnlen" >&5
-$as_echo_n "checking for working strnlen... " >&6; }
-if ${ac_cv_func_strnlen_working+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working strnlen" >&5
+printf %s "checking for working strnlen... " >&6; }
+if test ${ac_cv_func_strnlen_working+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test "$cross_compiling" = yes
+then :
# Guess no on AIX systems, yes otherwise.
case "$host_os" in
aix*) ac_cv_func_strnlen_working=no;;
*) ac_cv_func_strnlen_working=yes;;
esac
-else
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
#define S "foobar"
@@ -13331,9 +14504,10 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_func_strnlen_working=yes
-else
+else $as_nop
ac_cv_func_strnlen_working=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -13341,8 +14515,8 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strnlen_working" >&5
-$as_echo "$ac_cv_func_strnlen_working" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strnlen_working" >&5
+printf "%s\n" "$ac_cv_func_strnlen_working" >&6; }
test $ac_cv_func_strnlen_working = no && :
@@ -13375,7 +14549,8 @@ test $ac_cv_func_strnlen_working = no && :
-$as_echo "#define GNULIB_TEST_STRNLEN 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_STRNLEN 1" >>confdefs.h
+
@@ -13428,7 +14603,7 @@ $as_echo "#define GNULIB_TEST_STRNLEN 1" >>confdefs.h
if test $ac_cv_func_vasnprintf = yes; then
-$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h
+printf "%s\n" "#define REPLACE_VASNPRINTF 1" >>confdefs.h
fi
@@ -13440,14 +14615,13 @@ $as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h
-
-
ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
+if test "x$ac_cv_type_ptrdiff_t" = xyes
+then :
-else
+else $as_nop
-$as_echo "#define ptrdiff_t long" >>confdefs.h
+printf "%s\n" "#define ptrdiff_t long" >>confdefs.h
fi
@@ -13461,16 +14635,12 @@ fi
fi
- for ac_func in vasprintf
-do :
ac_fn_c_check_func "$LINENO" "vasprintf" "ac_cv_func_vasprintf"
-if test "x$ac_cv_func_vasprintf" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_VASPRINTF 1
-_ACEOF
+if test "x$ac_cv_func_vasprintf" = xyes
+then :
+ printf "%s\n" "#define HAVE_VASPRINTF 1" >>confdefs.h
fi
-done
if test $ac_cv_func_vasprintf = no; then
@@ -13521,7 +14691,7 @@ done
-$as_echo "#define GNULIB_TEST_VASPRINTF 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_VASPRINTF 1" >>confdefs.h
@@ -13548,11 +14718,12 @@ $as_echo "#define GNULIB_TEST_VASPRINTF 1" >>confdefs.h
if test $gl_cv_have_include_next = yes; then
gl_cv_next_wchar_h='<'wchar.h'>'
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <wchar.h>" >&5
-$as_echo_n "checking absolute name of <wchar.h>... " >&6; }
-if ${gl_cv_next_wchar_h+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <wchar.h>" >&5
+printf %s "checking absolute name of <wchar.h>... " >&6; }
+if test ${gl_cv_next_wchar_h+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test $ac_cv_header_wchar_h = yes; then
@@ -13597,8 +14768,8 @@ _ACEOF
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wchar_h" >&5
-$as_echo "$gl_cv_next_wchar_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wchar_h" >&5
+printf "%s\n" "$gl_cv_next_wchar_h" >&6; }
fi
NEXT_WCHAR_H=$gl_cv_next_wchar_h
@@ -13639,17 +14810,30 @@ $as_echo "$gl_cv_next_wchar_h" >&6; }
- for ac_header in stdint.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdint_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_STDINT_H 1
-_ACEOF
+ ac_fn_check_decl "$LINENO" "wcsdup" "ac_cv_have_decl_wcsdup" "
+ #include <wchar.h>
+" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_wcsdup" = xyes
+then :
+ ac_have_decl=1
+else $as_nop
+ ac_have_decl=0
fi
+printf "%s\n" "#define HAVE_DECL_WCSDUP $ac_have_decl" >>confdefs.h
+
+ if test $ac_cv_have_decl_wcsdup = no; then
+ HAVE_DECL_WCSDUP=0
+ fi
+
-done
+
+ ac_fn_c_check_header_compile "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdint_h" = xyes
+then :
+ printf "%s\n" "#define HAVE_STDINT_H 1" >>confdefs.h
+
+fi
# End of code from modules
@@ -13673,6 +14857,7 @@ done
+
gl_source_base='tests'
gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS
@@ -13690,8 +14875,8 @@ done
case `pwd` in
*\ * | *\ *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+printf "%s\n" "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
esac
@@ -13711,6 +14896,7 @@ macro_revision='2.4.6'
+
ltmain=$ac_aux_dir/ltmain.sh
# Backslashify metacharacters that are still active within
@@ -13734,8 +14920,8 @@ ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
-$as_echo_n "checking how to print strings... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
+printf %s "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
@@ -13761,12 +14947,12 @@ func_echo_all ()
}
case $ECHO in
- printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
-$as_echo "printf" >&6; } ;;
- print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
-$as_echo "print -r" >&6; } ;;
- *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5
-$as_echo "cat" >&6; } ;;
+ printf*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: printf" >&5
+printf "%s\n" "printf" >&6; } ;;
+ print*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
+printf "%s\n" "print -r" >&6; } ;;
+ *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cat" >&5
+printf "%s\n" "cat" >&6; } ;;
esac
@@ -13782,11 +14968,12 @@ esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
+printf %s "checking for a sed that does not truncate output... " >&6; }
+if test ${ac_cv_path_SED+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
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"
@@ -13800,10 +14987,15 @@ else
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in sed gsed; do
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ 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"
+ ac_path_SED="$as_dir$ac_prog$ac_exec_ext"
as_fn_executable_p "$ac_path_SED" || continue
# Check for GNU ac_path_SED and select it if it is found.
# Check for GNU $ac_path_SED
@@ -13812,13 +15004,13 @@ case `"$ac_path_SED" --version 2>&1` in
ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
*)
ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
+ printf %s 0123456789 >"conftest.in"
while :
do
cat "conftest.in" "conftest.in" >"conftest.tmp"
mv "conftest.tmp" "conftest.in"
cp "conftest.in" "conftest.nl"
- $as_echo '' >> "conftest.nl"
+ printf "%s\n" '' >> "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
as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -13846,8 +15038,8 @@ else
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
+printf "%s\n" "$ac_cv_path_SED" >&6; }
SED="$ac_cv_path_SED"
rm -f conftest.sed
@@ -13864,11 +15056,12 @@ Xsed="$SED -e 1s/^X//"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if ${ac_cv_path_FGREP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
+printf %s "checking for fgrep... " >&6; }
+if test ${ac_cv_path_FGREP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
then ac_cv_path_FGREP="$GREP -F"
else
@@ -13879,10 +15072,15 @@ else
for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in fgrep; do
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_prog in fgrep
+ do
for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
+ ac_path_FGREP="$as_dir$ac_prog$ac_exec_ext"
as_fn_executable_p "$ac_path_FGREP" || continue
# Check for GNU ac_path_FGREP and select it if it is found.
# Check for GNU $ac_path_FGREP
@@ -13891,13 +15089,13 @@ case `"$ac_path_FGREP" --version 2>&1` in
ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
*)
ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
+ printf %s 0123456789 >"conftest.in"
while :
do
cat "conftest.in" "conftest.in" >"conftest.tmp"
mv "conftest.tmp" "conftest.in"
cp "conftest.in" "conftest.nl"
- $as_echo 'FGREP' >> "conftest.nl"
+ printf "%s\n" 'FGREP' >> "conftest.nl"
"$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -13926,8 +15124,8 @@ fi
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
+printf "%s\n" "$ac_cv_path_FGREP" >&6; }
FGREP="$ac_cv_path_FGREP"
@@ -13952,17 +15150,18 @@ test -z "$GREP" && GREP=grep
# Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
+if test ${with_gnu_ld+y}
+then :
withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
-else
+else $as_nop
with_gnu_ld=no
fi
ac_prog=ld
if test yes = "$GCC"; then
# Check if gcc -print-prog-name=ld gives a path.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
+printf %s "checking for ld used by $CC... " >&6; }
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return, which upsets mingw
@@ -13991,15 +15190,16 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
;;
esac
elif test yes = "$with_gnu_ld"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+printf %s "checking for GNU ld... " >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+printf %s "checking for non-GNU ld... " >&6; }
fi
-if ${lt_cv_path_LD+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+if test ${lt_cv_path_LD+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -z "$LD"; then
lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
for ac_dir in $PATH; do
@@ -14028,18 +15228,19 @@ fi
LD=$lt_cv_path_LD
if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+printf "%s\n" "$LD" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${lt_cv_prog_gnu_ld+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+printf %s "checking if the linker ($LD) is GNU ld... " >&6; }
+if test ${lt_cv_prog_gnu_ld+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
# I'd rather use --version here, but apparently some GNU lds only accept -v.
case `$LD -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
@@ -14050,8 +15251,8 @@ case `$LD -v 2>&1 </dev/null` in
;;
esac
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
+printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; }
with_gnu_ld=$lt_cv_prog_gnu_ld
@@ -14062,11 +15263,12 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if ${lt_cv_path_NM+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
+printf %s "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
+if test ${lt_cv_path_NM+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$NM"; then
# Let the user override the test.
lt_cv_path_NM=$NM
@@ -14116,8 +15318,8 @@ else
: ${lt_cv_path_NM=no}
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
+printf "%s\n" "$lt_cv_path_NM" >&6; }
if test no != "$lt_cv_path_NM"; then
NM=$lt_cv_path_NM
else
@@ -14130,11 +15332,12 @@ else
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DUMPBIN+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DUMPBIN+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$DUMPBIN"; then
ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
else
@@ -14142,11 +15345,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -14157,11 +15364,11 @@ fi
fi
DUMPBIN=$ac_cv_prog_DUMPBIN
if test -n "$DUMPBIN"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
+printf "%s\n" "$DUMPBIN" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -14174,11 +15381,12 @@ if test -z "$DUMPBIN"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DUMPBIN+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_DUMPBIN"; then
ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
else
@@ -14186,11 +15394,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -14201,11 +15413,11 @@ fi
fi
ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
if test -n "$ac_ct_DUMPBIN"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
+printf "%s\n" "$ac_ct_DUMPBIN" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -14217,8 +15429,8 @@ done
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
DUMPBIN=$ac_ct_DUMPBIN
@@ -14246,11 +15458,12 @@ test -z "$NM" && NM=nm
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if ${lt_cv_nm_interface+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
+printf %s "checking the name lister ($NM) interface... " >&6; }
+if test ${lt_cv_nm_interface+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_nm_interface="BSD nm"
echo "int some_variable = 0;" > conftest.$ac_ext
(eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)
@@ -14266,26 +15479,27 @@ else
fi
rm -f conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
+printf "%s\n" "$lt_cv_nm_interface" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
+printf %s "checking whether ln -s works... " >&6; }
LN_S=$as_ln_s
if test "$LN_S" = "ln -s"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
+printf "%s\n" "no, using $LN_S" >&6; }
fi
# find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if ${lt_cv_sys_max_cmd_len+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
+printf %s "checking the maximum length of command line arguments... " >&6; }
+if test ${lt_cv_sys_max_cmd_len+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
i=0
teststring=ABCD
@@ -14412,11 +15626,11 @@ else
fi
if test -n "$lt_cv_sys_max_cmd_len"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
+printf "%s\n" "$lt_cv_sys_max_cmd_len" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none" >&5
+printf "%s\n" "none" >&6; }
fi
max_cmd_len=$lt_cv_sys_max_cmd_len
@@ -14460,11 +15674,12 @@ esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
-$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-if ${lt_cv_to_host_file_cmd+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+printf %s "checking how to convert $build file names to $host format... " >&6; }
+if test ${lt_cv_to_host_file_cmd+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
case $host in
*-*-mingw* )
case $build in
@@ -14500,18 +15715,19 @@ esac
fi
to_host_file_cmd=$lt_cv_to_host_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
-$as_echo "$lt_cv_to_host_file_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
+printf "%s\n" "$lt_cv_to_host_file_cmd" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
-$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-if ${lt_cv_to_tool_file_cmd+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+printf %s "checking how to convert $build file names to toolchain format... " >&6; }
+if test ${lt_cv_to_tool_file_cmd+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
#assume ordinary cross tools, or native build.
lt_cv_to_tool_file_cmd=func_convert_file_noop
case $host in
@@ -14527,22 +15743,23 @@ esac
fi
to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
-$as_echo "$lt_cv_to_tool_file_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
+printf "%s\n" "$lt_cv_to_tool_file_cmd" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if ${lt_cv_ld_reload_flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
+printf %s "checking for $LD option to reload object files... " >&6; }
+if test ${lt_cv_ld_reload_flag+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_ld_reload_flag='-r'
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
+printf "%s\n" "$lt_cv_ld_reload_flag" >&6; }
reload_flag=$lt_cv_ld_reload_flag
case $reload_flag in
"" | " "*) ;;
@@ -14575,11 +15792,12 @@ esac
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OBJDUMP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$OBJDUMP"; then
ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
else
@@ -14587,11 +15805,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -14602,11 +15824,11 @@ fi
fi
OBJDUMP=$ac_cv_prog_OBJDUMP
if test -n "$OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
+printf "%s\n" "$OBJDUMP" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -14615,11 +15837,12 @@ if test -z "$ac_cv_prog_OBJDUMP"; then
ac_ct_OBJDUMP=$OBJDUMP
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OBJDUMP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_OBJDUMP"; then
ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
else
@@ -14627,11 +15850,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_OBJDUMP="objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -14642,11 +15869,11 @@ fi
fi
ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
if test -n "$ac_ct_OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
+printf "%s\n" "$ac_ct_OBJDUMP" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_OBJDUMP" = x; then
@@ -14654,8 +15881,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
OBJDUMP=$ac_ct_OBJDUMP
@@ -14674,11 +15901,12 @@ test -z "$OBJDUMP" && OBJDUMP=objdump
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if ${lt_cv_deplibs_check_method+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
+printf %s "checking how to recognize dependent libraries... " >&6; }
+if test ${lt_cv_deplibs_check_method+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
lt_cv_deplibs_check_method='unknown'
@@ -14874,8 +16102,8 @@ os2*)
esac
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
+printf "%s\n" "$lt_cv_deplibs_check_method" >&6; }
file_magic_glob=
want_nocaseglob=no
@@ -14919,11 +16147,12 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DLLTOOL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$DLLTOOL"; then
ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
else
@@ -14931,11 +16160,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -14946,11 +16179,11 @@ fi
fi
DLLTOOL=$ac_cv_prog_DLLTOOL
if test -n "$DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
+printf "%s\n" "$DLLTOOL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -14959,11 +16192,12 @@ if test -z "$ac_cv_prog_DLLTOOL"; then
ac_ct_DLLTOOL=$DLLTOOL
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DLLTOOL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_DLLTOOL"; then
ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
else
@@ -14971,11 +16205,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_DLLTOOL="dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -14986,11 +16224,11 @@ fi
fi
ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
if test -n "$ac_ct_DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
+printf "%s\n" "$ac_ct_DLLTOOL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_DLLTOOL" = x; then
@@ -14998,8 +16236,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
DLLTOOL=$ac_ct_DLLTOOL
@@ -15019,11 +16257,12 @@ test -z "$DLLTOOL" && DLLTOOL=dlltool
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
-$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+printf %s "checking how to associate runtime and link libraries... " >&6; }
+if test ${lt_cv_sharedlib_from_linklib_cmd+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_sharedlib_from_linklib_cmd='unknown'
case $host_os in
@@ -15046,8 +16285,8 @@ cygwin* | mingw* | pw32* | cegcc*)
esac
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
-$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
+printf "%s\n" "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
@@ -15062,11 +16301,12 @@ if test -n "$ac_tool_prefix"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AR+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$AR"; then
ac_cv_prog_AR="$AR" # Let the user override the test.
else
@@ -15074,11 +16314,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -15089,11 +16333,11 @@ fi
fi
AR=$ac_cv_prog_AR
if test -n "$AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
+printf "%s\n" "$AR" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -15106,11 +16350,12 @@ if test -z "$AR"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AR+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_AR+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_AR"; then
ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
else
@@ -15118,11 +16363,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_AR="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -15133,11 +16382,11 @@ fi
fi
ac_ct_AR=$ac_cv_prog_ac_ct_AR
if test -n "$ac_ct_AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
+printf "%s\n" "$ac_ct_AR" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -15149,8 +16398,8 @@ done
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
@@ -15170,30 +16419,32 @@ fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
-$as_echo_n "checking for archiver @FILE support... " >&6; }
-if ${lt_cv_ar_at_file+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+printf %s "checking for archiver @FILE support... " >&6; }
+if test ${lt_cv_ar_at_file+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_ar_at_file=no
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
echo conftest.$ac_objext > conftest.lst
lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
(eval $lt_ar_try) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }
if test 0 -eq "$ac_status"; then
# Ensure the archiver fails upon bogus file names.
@@ -15201,7 +16452,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
(eval $lt_ar_try) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }
if test 0 -ne "$ac_status"; then
lt_cv_ar_at_file=@
@@ -15210,11 +16461,11 @@ if ac_fn_c_try_compile "$LINENO"; then :
rm -f conftest.* libconftest.a
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
-$as_echo "$lt_cv_ar_at_file" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
+printf "%s\n" "$lt_cv_ar_at_file" >&6; }
if test no = "$lt_cv_ar_at_file"; then
archiver_list_spec=
@@ -15231,11 +16482,12 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_STRIP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$STRIP"; then
ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
else
@@ -15243,11 +16495,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -15258,11 +16514,11 @@ fi
fi
STRIP=$ac_cv_prog_STRIP
if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+printf "%s\n" "$STRIP" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -15271,11 +16527,12 @@ if test -z "$ac_cv_prog_STRIP"; then
ac_ct_STRIP=$STRIP
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_STRIP"; then
ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
else
@@ -15283,11 +16540,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -15298,11 +16559,11 @@ fi
fi
ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+printf "%s\n" "$ac_ct_STRIP" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_STRIP" = x; then
@@ -15310,8 +16571,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
STRIP=$ac_ct_STRIP
@@ -15330,11 +16591,12 @@ test -z "$STRIP" && STRIP=:
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_RANLIB+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$RANLIB"; then
ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
else
@@ -15342,11 +16604,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -15357,11 +16623,11 @@ fi
fi
RANLIB=$ac_cv_prog_RANLIB
if test -n "$RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
+printf "%s\n" "$RANLIB" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -15370,11 +16636,12 @@ if test -z "$ac_cv_prog_RANLIB"; then
ac_ct_RANLIB=$RANLIB
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_RANLIB+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_RANLIB"; then
ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
else
@@ -15382,11 +16649,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -15397,11 +16668,11 @@ fi
fi
ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
if test -n "$ac_ct_RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
+printf "%s\n" "$ac_ct_RANLIB" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_RANLIB" = x; then
@@ -15409,8 +16680,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
RANLIB=$ac_ct_RANLIB
@@ -15499,11 +16770,12 @@ compiler=$CC
# Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if ${lt_cv_sys_global_symbol_pipe+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
+printf %s "checking command to parse $NM output from $compiler object... " >&6; }
+if test ${lt_cv_sys_global_symbol_pipe+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
# These are sane defaults that work on at least a few old systems.
# [They come from Ultrix. What could be older than Ultrix?!! ;)]
@@ -15655,14 +16927,14 @@ _LT_EOF
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
# Now try to grab the symbols.
nlist=conftest.nm
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
(eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
@@ -15731,7 +17003,7 @@ _LT_EOF
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
(eval $ac_link) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && test -s conftest$ac_exeext; then
pipe_works=yes
fi
@@ -15766,11 +17038,11 @@ if test -z "$lt_cv_sys_global_symbol_pipe"; then
lt_cv_sys_global_symbol_to_cdecl=
fi
if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5
+printf "%s\n" "failed" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ok" >&5
+printf "%s\n" "ok" >&6; }
fi
# Response file support.
@@ -15816,13 +17088,14 @@ fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
-$as_echo_n "checking for sysroot... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+printf %s "checking for sysroot... " >&6; }
# Check whether --with-sysroot was given.
-if test "${with_sysroot+set}" = set; then :
+if test ${with_sysroot+y}
+then :
withval=$with_sysroot;
-else
+else $as_nop
with_sysroot=no
fi
@@ -15840,24 +17113,25 @@ case $with_sysroot in #(
no|'')
;; #(
*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
-$as_echo "$with_sysroot" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
+printf "%s\n" "$with_sysroot" >&6; }
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
;;
esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
-$as_echo "${lt_sysroot:-no}" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+printf "%s\n" "${lt_sysroot:-no}" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
-$as_echo_n "checking for a working dd... " >&6; }
-if ${ac_cv_path_lt_DD+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
+printf %s "checking for a working dd... " >&6; }
+if test ${ac_cv_path_lt_DD+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
printf 0123456789abcdef0123456789abcdef >conftest.i
cat conftest.i conftest.i >conftest2.i
: ${lt_DD:=$DD}
@@ -15868,10 +17142,15 @@ if test -z "$lt_DD"; then
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in dd; do
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_prog in dd
+ do
for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"
+ ac_path_lt_DD="$as_dir$ac_prog$ac_exec_ext"
as_fn_executable_p "$ac_path_lt_DD" || continue
if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
cmp -s conftest.i conftest.out \
@@ -15891,15 +17170,16 @@ fi
rm -f conftest.i conftest2.i conftest.out
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
-$as_echo "$ac_cv_path_lt_DD" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
+printf "%s\n" "$ac_cv_path_lt_DD" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
-$as_echo_n "checking how to truncate binary pipes... " >&6; }
-if ${lt_cv_truncate_bin+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
+printf %s "checking how to truncate binary pipes... " >&6; }
+if test ${lt_cv_truncate_bin+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
printf 0123456789abcdef0123456789abcdef >conftest.i
cat conftest.i conftest.i >conftest2.i
lt_cv_truncate_bin=
@@ -15910,8 +17190,8 @@ fi
rm -f conftest.i conftest2.i conftest.out
test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
-$as_echo "$lt_cv_truncate_bin" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
+printf "%s\n" "$lt_cv_truncate_bin" >&6; }
@@ -15934,7 +17214,8 @@ func_cc_basename ()
}
# Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
+if test ${enable_libtool_lock+y}
+then :
enableval=$enable_libtool_lock;
fi
@@ -15950,7 +17231,7 @@ ia64-*-hpux*)
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
case `/usr/bin/file conftest.$ac_objext` in
*ELF-32*)
@@ -15970,7 +17251,7 @@ ia64-*-hpux*)
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
if test yes = "$lt_cv_prog_gnu_ld"; then
case `/usr/bin/file conftest.$ac_objext` in
@@ -16008,7 +17289,7 @@ mips64*-*linux*)
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
emul=elf
case `/usr/bin/file conftest.$ac_objext` in
@@ -16049,7 +17330,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
case `/usr/bin/file conftest.o` in
*32-bit*)
@@ -16112,11 +17393,12 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
# On SCO OpenServer 5, we need -belf to get full-featured binaries.
SAVE_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -belf"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if ${lt_cv_cc_needs_belf+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
+printf %s "checking whether the C compiler needs -belf... " >&6; }
+if test ${lt_cv_cc_needs_belf+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -16127,19 +17409,20 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
lt_cv_cc_needs_belf=yes
-else
+else $as_nop
lt_cv_cc_needs_belf=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -16148,8 +17431,8 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
+printf "%s\n" "$lt_cv_cc_needs_belf" >&6; }
if test yes != "$lt_cv_cc_needs_belf"; then
# this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
CFLAGS=$SAVE_CFLAGS
@@ -16162,7 +17445,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
case `/usr/bin/file conftest.o` in
*64-bit*)
@@ -16199,11 +17482,12 @@ need_locks=$enable_libtool_lock
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
set dummy ${ac_tool_prefix}mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_MANIFEST_TOOL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$MANIFEST_TOOL"; then
ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
else
@@ -16211,11 +17495,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16226,11 +17514,11 @@ fi
fi
MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
if test -n "$MANIFEST_TOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
-$as_echo "$MANIFEST_TOOL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
+printf "%s\n" "$MANIFEST_TOOL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -16239,11 +17527,12 @@ if test -z "$ac_cv_prog_MANIFEST_TOOL"; then
ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
# Extract the first word of "mt", so it can be a program name with args.
set dummy mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_MANIFEST_TOOL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_MANIFEST_TOOL"; then
ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
else
@@ -16251,11 +17540,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16266,11 +17559,11 @@ fi
fi
ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
if test -n "$ac_ct_MANIFEST_TOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
-$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
+printf "%s\n" "$ac_ct_MANIFEST_TOOL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_MANIFEST_TOOL" = x; then
@@ -16278,8 +17571,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
@@ -16289,11 +17582,12 @@ else
fi
test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
-$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-if ${lt_cv_path_mainfest_tool+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+printf %s "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
+if test ${lt_cv_path_mainfest_tool+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_path_mainfest_tool=no
echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
$MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
@@ -16303,8 +17597,8 @@ else
fi
rm -f conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
-$as_echo "$lt_cv_path_mainfest_tool" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
+printf "%s\n" "$lt_cv_path_mainfest_tool" >&6; }
if test yes != "$lt_cv_path_mainfest_tool"; then
MANIFEST_TOOL=:
fi
@@ -16319,11 +17613,12 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DSYMUTIL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DSYMUTIL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$DSYMUTIL"; then
ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
else
@@ -16331,11 +17626,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16346,11 +17645,11 @@ fi
fi
DSYMUTIL=$ac_cv_prog_DSYMUTIL
if test -n "$DSYMUTIL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
+printf "%s\n" "$DSYMUTIL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -16359,11 +17658,12 @@ if test -z "$ac_cv_prog_DSYMUTIL"; then
ac_ct_DSYMUTIL=$DSYMUTIL
# Extract the first word of "dsymutil", so it can be a program name with args.
set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DSYMUTIL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_DSYMUTIL"; then
ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
else
@@ -16371,11 +17671,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16386,11 +17690,11 @@ fi
fi
ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
if test -n "$ac_ct_DSYMUTIL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
+printf "%s\n" "$ac_ct_DSYMUTIL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_DSYMUTIL" = x; then
@@ -16398,8 +17702,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
DSYMUTIL=$ac_ct_DSYMUTIL
@@ -16411,11 +17715,12 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_NMEDIT+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_NMEDIT+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$NMEDIT"; then
ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
else
@@ -16423,11 +17728,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16438,11 +17747,11 @@ fi
fi
NMEDIT=$ac_cv_prog_NMEDIT
if test -n "$NMEDIT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
+printf "%s\n" "$NMEDIT" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -16451,11 +17760,12 @@ if test -z "$ac_cv_prog_NMEDIT"; then
ac_ct_NMEDIT=$NMEDIT
# Extract the first word of "nmedit", so it can be a program name with args.
set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_NMEDIT+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_NMEDIT"; then
ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
else
@@ -16463,11 +17773,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_NMEDIT="nmedit"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16478,11 +17792,11 @@ fi
fi
ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
if test -n "$ac_ct_NMEDIT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
+printf "%s\n" "$ac_ct_NMEDIT" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_NMEDIT" = x; then
@@ -16490,8 +17804,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
NMEDIT=$ac_ct_NMEDIT
@@ -16503,11 +17817,12 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_LIPO+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_LIPO+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$LIPO"; then
ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
else
@@ -16515,11 +17830,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16530,11 +17849,11 @@ fi
fi
LIPO=$ac_cv_prog_LIPO
if test -n "$LIPO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
+printf "%s\n" "$LIPO" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -16543,11 +17862,12 @@ if test -z "$ac_cv_prog_LIPO"; then
ac_ct_LIPO=$LIPO
# Extract the first word of "lipo", so it can be a program name with args.
set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_LIPO+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_LIPO+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_LIPO"; then
ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
else
@@ -16555,11 +17875,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_LIPO="lipo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16570,11 +17894,11 @@ fi
fi
ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
if test -n "$ac_ct_LIPO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
+printf "%s\n" "$ac_ct_LIPO" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_LIPO" = x; then
@@ -16582,8 +17906,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
LIPO=$ac_ct_LIPO
@@ -16595,11 +17919,12 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OTOOL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$OTOOL"; then
ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
else
@@ -16607,11 +17932,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16622,11 +17951,11 @@ fi
fi
OTOOL=$ac_cv_prog_OTOOL
if test -n "$OTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
+printf "%s\n" "$OTOOL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -16635,11 +17964,12 @@ if test -z "$ac_cv_prog_OTOOL"; then
ac_ct_OTOOL=$OTOOL
# Extract the first word of "otool", so it can be a program name with args.
set dummy otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OTOOL+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_OTOOL"; then
ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
else
@@ -16647,11 +17977,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_OTOOL="otool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16662,11 +17996,11 @@ fi
fi
ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
if test -n "$ac_ct_OTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
+printf "%s\n" "$ac_ct_OTOOL" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_OTOOL" = x; then
@@ -16674,8 +18008,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
OTOOL=$ac_ct_OTOOL
@@ -16687,11 +18021,12 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL64+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OTOOL64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$OTOOL64"; then
ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
else
@@ -16699,11 +18034,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16714,11 +18053,11 @@ fi
fi
OTOOL64=$ac_cv_prog_OTOOL64
if test -n "$OTOOL64"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
+printf "%s\n" "$OTOOL64" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -16727,11 +18066,12 @@ if test -z "$ac_cv_prog_OTOOL64"; then
ac_ct_OTOOL64=$OTOOL64
# Extract the first word of "otool64", so it can be a program name with args.
set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OTOOL64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test -n "$ac_ct_OTOOL64"; then
ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
else
@@ -16739,11 +18079,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_OTOOL64="otool64"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -16754,11 +18098,11 @@ fi
fi
ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
if test -n "$ac_ct_OTOOL64"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
+printf "%s\n" "$ac_ct_OTOOL64" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
if test "x$ac_ct_OTOOL64" = x; then
@@ -16766,8 +18110,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
OTOOL64=$ac_ct_OTOOL64
@@ -16802,11 +18146,12 @@ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if ${lt_cv_apple_cc_single_mod+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
+printf %s "checking for -single_module linker flag... " >&6; }
+if test ${lt_cv_apple_cc_single_mod+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_apple_cc_single_mod=no
if test -z "$LT_MULTI_MODULE"; then
# By default we will add the -single_module flag. You can override
@@ -16835,14 +18180,15 @@ else
rm -f conftest.*
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
+printf "%s\n" "$lt_cv_apple_cc_single_mod" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if ${lt_cv_ld_exported_symbols_list+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
+printf %s "checking for -exported_symbols_list linker flag... " >&6; }
+if test ${lt_cv_ld_exported_symbols_list+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_ld_exported_symbols_list=no
save_LDFLAGS=$LDFLAGS
echo "_main" > conftest.sym
@@ -16851,31 +18197,33 @@ else
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
lt_cv_ld_exported_symbols_list=yes
-else
+else $as_nop
lt_cv_ld_exported_symbols_list=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LDFLAGS=$save_LDFLAGS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
+printf "%s\n" "$lt_cv_ld_exported_symbols_list" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
-$as_echo_n "checking for -force_load linker flag... " >&6; }
-if ${lt_cv_ld_force_load+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
+printf %s "checking for -force_load linker flag... " >&6; }
+if test ${lt_cv_ld_force_load+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_ld_force_load=no
cat > conftest.c << _LT_EOF
int forced_loaded() { return 2;}
@@ -16903,8 +18251,8 @@ _LT_EOF
rm -rf conftest.dSYM
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
-$as_echo "$lt_cv_ld_force_load" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
+printf "%s\n" "$lt_cv_ld_force_load" >&6; }
case $host_os in
rhapsody* | darwin1.[012])
_lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
@@ -16975,26 +18323,22 @@ func_munge_path_list ()
esac
}
-for ac_header in dlfcn.h
-do :
- ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
+ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
"
-if test "x$ac_cv_header_dlfcn_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_DLFCN_H 1
-_ACEOF
+if test "x$ac_cv_header_dlfcn_h" = xyes
+then :
+ printf "%s\n" "#define HAVE_DLFCN_H 1" >>confdefs.h
fi
-done
-
# Set options
# Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
+if test ${enable_static+y}
+then :
enableval=$enable_static; p=${PACKAGE-default}
case $enableval in
yes) enable_static=yes ;;
@@ -17012,7 +18356,7 @@ if test "${enable_static+set}" = set; then :
IFS=$lt_save_ifs
;;
esac
-else
+else $as_nop
enable_static=no
fi
@@ -17032,7 +18376,8 @@ fi
# Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
+if test ${enable_shared+y}
+then :
enableval=$enable_shared; p=${PACKAGE-default}
case $enableval in
yes) enable_shared=yes ;;
@@ -17050,7 +18395,7 @@ if test "${enable_shared+set}" = set; then :
IFS=$lt_save_ifs
;;
esac
-else
+else $as_nop
enable_shared=yes
fi
@@ -17065,7 +18410,8 @@ fi
# Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
+if test ${with_pic+y}
+then :
withval=$with_pic; lt_p=${PACKAGE-default}
case $withval in
yes|no) pic_mode=$withval ;;
@@ -17082,7 +18428,7 @@ if test "${with_pic+set}" = set; then :
IFS=$lt_save_ifs
;;
esac
-else
+else $as_nop
pic_mode=default
fi
@@ -17094,7 +18440,8 @@ fi
# Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
+if test ${enable_fast_install+y}
+then :
enableval=$enable_fast_install; p=${PACKAGE-default}
case $enableval in
yes) enable_fast_install=yes ;;
@@ -17112,7 +18459,7 @@ if test "${enable_fast_install+set}" = set; then :
IFS=$lt_save_ifs
;;
esac
-else
+else $as_nop
enable_fast_install=yes
fi
@@ -17126,11 +18473,12 @@ fi
shared_archive_member_spec=
case $host,$enable_shared in
power*-*-aix[5-9]*,yes)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
-$as_echo_n "checking which variant of shared library versioning to provide... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
+printf %s "checking which variant of shared library versioning to provide... " >&6; }
# Check whether --with-aix-soname was given.
-if test "${with_aix_soname+set}" = set; then :
+if test ${with_aix_soname+y}
+then :
withval=$with_aix_soname; case $withval in
aix|svr4|both)
;;
@@ -17139,18 +18487,19 @@ if test "${with_aix_soname+set}" = set; then :
;;
esac
lt_cv_with_aix_soname=$with_aix_soname
-else
- if ${lt_cv_with_aix_soname+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+else $as_nop
+ if test ${lt_cv_with_aix_soname+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_with_aix_soname=aix
fi
with_aix_soname=$lt_cv_with_aix_soname
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
-$as_echo "$with_aix_soname" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
+printf "%s\n" "$with_aix_soname" >&6; }
if test aix != "$with_aix_soname"; then
# For the AIX way of multilib, we name the shared archive member
# based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
@@ -17232,11 +18581,12 @@ if test -n "${ZSH_VERSION+set}"; then
setopt NO_GLOB_SUBST
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if ${lt_cv_objdir+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
+printf %s "checking for objdir... " >&6; }
+if test ${lt_cv_objdir+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
rm -f .libs 2>/dev/null
mkdir .libs 2>/dev/null
if test -d .libs; then
@@ -17247,17 +18597,15 @@ else
fi
rmdir .libs 2>/dev/null
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
+printf "%s\n" "$lt_cv_objdir" >&6; }
objdir=$lt_cv_objdir
-cat >>confdefs.h <<_ACEOF
-#define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
+printf "%s\n" "#define LT_OBJDIR \"$lt_cv_objdir/\"" >>confdefs.h
@@ -17303,11 +18651,12 @@ test -z "$MAGIC_CMD" && MAGIC_CMD=file
case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
+printf %s "checking for ${ac_tool_prefix}file... " >&6; }
+if test ${lt_cv_path_MAGIC_CMD+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
case $MAGIC_CMD in
[\\/*] | ?:[\\/]*)
lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
@@ -17356,11 +18705,11 @@ fi
MAGIC_CMD=$lt_cv_path_MAGIC_CMD
if test -n "$MAGIC_CMD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
+printf "%s\n" "$MAGIC_CMD" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -17369,11 +18718,12 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for file" >&5
+printf %s "checking for file... " >&6; }
+if test ${lt_cv_path_MAGIC_CMD+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
case $MAGIC_CMD in
[\\/*] | ?:[\\/]*)
lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
@@ -17422,11 +18772,11 @@ fi
MAGIC_CMD=$lt_cv_path_MAGIC_CMD
if test -n "$MAGIC_CMD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
+printf "%s\n" "$MAGIC_CMD" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
@@ -17511,11 +18861,12 @@ if test yes = "$GCC"; then
lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
+printf %s "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
+if test ${lt_cv_prog_compiler_rtti_exceptions+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_prog_compiler_rtti_exceptions=no
ac_outfile=conftest.$ac_objext
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -17546,8 +18897,8 @@ else
$RM conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
+printf "%s\n" "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then
lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
@@ -17904,26 +19255,28 @@ case $host_os in
;;
esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-if ${lt_cv_prog_compiler_pic+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+printf %s "checking for $compiler option to produce PIC... " >&6; }
+if test ${lt_cv_prog_compiler_pic+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
-$as_echo "$lt_cv_prog_compiler_pic" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; }
lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
#
# Check to make sure the PIC flag actually works.
#
if test -n "$lt_prog_compiler_pic"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if ${lt_cv_prog_compiler_pic_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
+printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
+if test ${lt_cv_prog_compiler_pic_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_prog_compiler_pic_works=no
ac_outfile=conftest.$ac_objext
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -17954,8 +19307,8 @@ else
$RM conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; }
if test yes = "$lt_cv_prog_compiler_pic_works"; then
case $lt_prog_compiler_pic in
@@ -17983,11 +19336,12 @@ fi
# Check to make sure the static flag actually works.
#
wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if ${lt_cv_prog_compiler_static_works+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
+printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
+if test ${lt_cv_prog_compiler_static_works+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_prog_compiler_static_works=no
save_LDFLAGS=$LDFLAGS
LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
@@ -18011,8 +19365,8 @@ else
LDFLAGS=$save_LDFLAGS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
+printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; }
if test yes = "$lt_cv_prog_compiler_static_works"; then
:
@@ -18026,11 +19380,12 @@ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_prog_compiler_c_o=no
$RM -r conftest 2>/dev/null
mkdir conftest
@@ -18073,19 +19428,20 @@ else
$RM conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_prog_compiler_c_o=no
$RM -r conftest 2>/dev/null
mkdir conftest
@@ -18128,8 +19484,8 @@ else
$RM conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }
@@ -18137,19 +19493,19 @@ $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
hard_links=nottested
if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then
# do not overwrite the value of need_locks provided by the user
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
+printf %s "checking if we can lock with hard links... " >&6; }
hard_links=yes
$RM conftest*
ln conftest.a conftest.b 2>/dev/null && hard_links=no
touch conftest.a
ln conftest.a conftest.b 2>&5 || hard_links=no
ln conftest.a conftest.b 2>/dev/null && hard_links=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
+printf "%s\n" "$hard_links" >&6; }
if test no = "$hard_links"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
+printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
need_locks=warn
fi
else
@@ -18161,8 +19517,8 @@ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
runpath_var=
allow_undefined_flag=
@@ -18720,21 +20076,23 @@ _LT_EOF
if test set = "${lt_cv_aix_libpath+set}"; then
aix_libpath=$lt_cv_aix_libpath
else
- if ${lt_cv_aix_libpath_+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ if test ${lt_cv_aix_libpath_+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
lt_aix_libpath_sed='
/Import File Strings/,/^$/ {
@@ -18749,7 +20107,7 @@ if ac_fn_c_try_link "$LINENO"; then :
lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
fi
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
if test -z "$lt_cv_aix_libpath_"; then
lt_cv_aix_libpath_=/usr/lib:/lib
@@ -18773,21 +20131,23 @@ fi
if test set = "${lt_cv_aix_libpath+set}"; then
aix_libpath=$lt_cv_aix_libpath
else
- if ${lt_cv_aix_libpath_+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ if test ${lt_cv_aix_libpath_+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
lt_aix_libpath_sed='
/Import File Strings/,/^$/ {
@@ -18802,7 +20162,7 @@ if ac_fn_c_try_link "$LINENO"; then :
lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
fi
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
if test -z "$lt_cv_aix_libpath_"; then
lt_cv_aix_libpath_=/usr/lib:/lib
@@ -19053,11 +20413,12 @@ fi
# Older versions of the 11.00 compiler do not understand -b yet
# (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
-$as_echo_n "checking if $CC understands -b... " >&6; }
-if ${lt_cv_prog_compiler__b+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
+printf %s "checking if $CC understands -b... " >&6; }
+if test ${lt_cv_prog_compiler__b+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_prog_compiler__b=no
save_LDFLAGS=$LDFLAGS
LDFLAGS="$LDFLAGS -b"
@@ -19081,8 +20442,8 @@ else
LDFLAGS=$save_LDFLAGS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
-$as_echo "$lt_cv_prog_compiler__b" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
+printf "%s\n" "$lt_cv_prog_compiler__b" >&6; }
if test yes = "$lt_cv_prog_compiler__b"; then
archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -19122,28 +20483,30 @@ fi
# work, assume that -exports_file does not work either and
# implicitly export all symbols.
# This should be the same for all languages, so no per-tag cache variable.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
-$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-if ${lt_cv_irix_exported_symbol+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+printf %s "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
+if test ${lt_cv_irix_exported_symbol+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
save_LDFLAGS=$LDFLAGS
LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int foo (void) { return 0; }
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
lt_cv_irix_exported_symbol=yes
-else
+else $as_nop
lt_cv_irix_exported_symbol=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LDFLAGS=$save_LDFLAGS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
-$as_echo "$lt_cv_irix_exported_symbol" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
+printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }
if test yes = "$lt_cv_irix_exported_symbol"; then
archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
fi
@@ -19424,8 +20787,8 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
+printf "%s\n" "$ld_shlibs" >&6; }
test no = "$ld_shlibs" && can_build_shared=no
with_gnu_ld=$with_gnu_ld
@@ -19461,18 +20824,19 @@ x|xyes)
# Test whether the compiler implicitly links with -lc since on some
# systems, -lgcc has to come before -lc. If gcc already passes -lc
# to ld, don't add -lc before -lgcc.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
-if ${lt_cv_archive_cmds_need_lc+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
+printf %s "checking whether -lc should be explicitly linked in... " >&6; }
+if test ${lt_cv_archive_cmds_need_lc+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
$RM conftest*
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } 2>conftest.err; then
soname=conftest
lib=conftest
@@ -19490,7 +20854,7 @@ else
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
(eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }
then
lt_cv_archive_cmds_need_lc=no
@@ -19504,8 +20868,8 @@ else
$RM conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
-$as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
+printf "%s\n" "$lt_cv_archive_cmds_need_lc" >&6; }
archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
;;
esac
@@ -19664,8 +21028,8 @@ esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
+printf %s "checking dynamic linker characteristics... " >&6; }
if test yes = "$GCC"; then
case $host_os in
@@ -20226,9 +21590,10 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
shlibpath_overrides_runpath=no
# Some binutils ld are patched to set DT_RUNPATH
- if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ if test ${lt_cv_shlibpath_overrides_runpath+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
lt_cv_shlibpath_overrides_runpath=no
save_LDFLAGS=$LDFLAGS
save_libdir=$libdir
@@ -20238,19 +21603,21 @@ else
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
+if ac_fn_c_try_link "$LINENO"
+then :
+ if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null
+then :
lt_cv_shlibpath_overrides_runpath=yes
fi
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LDFLAGS=$save_LDFLAGS
libdir=$save_libdir
@@ -20494,8 +21861,8 @@ uts4*)
dynamic_linker=no
;;
esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
+printf "%s\n" "$dynamic_linker" >&6; }
test no = "$dynamic_linker" && can_build_shared=no
variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
@@ -20616,8 +21983,8 @@ configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
+printf %s "checking how to hardcode library paths into programs... " >&6; }
hardcode_action=
if test -n "$hardcode_libdir_flag_spec" ||
test -n "$runpath_var" ||
@@ -20641,8 +22008,8 @@ else
# directories.
hardcode_action=unsupported
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
+printf "%s\n" "$hardcode_action" >&6; }
if test relink = "$hardcode_action" ||
test yes = "$inherit_rpath"; then
@@ -20686,11 +22053,12 @@ else
darwin*)
# if libdl is installed we need to link against it
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
+printf %s "checking for dlopen in -ldl... " >&6; }
+if test ${ac_cv_lib_dl_dlopen+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldl $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20699,32 +22067,31 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
char dlopen ();
int
-main ()
+main (void)
{
return dlopen ();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_lib_dl_dlopen=yes
-else
+else $as_nop
ac_cv_lib_dl_dlopen=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = xyes
+then :
lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
-else
+else $as_nop
lt_cv_dlopen=dyld
lt_cv_dlopen_libs=
@@ -20744,14 +22111,16 @@ fi
*)
ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = xyes; then :
+if test "x$ac_cv_func_shl_load" = xyes
+then :
lt_cv_dlopen=shl_load
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if ${ac_cv_lib_dld_shl_load+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+else $as_nop
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
+printf %s "checking for shl_load in -ldld... " >&6; }
+if test ${ac_cv_lib_dld_shl_load+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldld $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20760,41 +22129,42 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
char shl_load ();
int
-main ()
+main (void)
{
return shl_load ();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_lib_dld_shl_load=yes
-else
+else $as_nop
ac_cv_lib_dld_shl_load=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
+printf "%s\n" "$ac_cv_lib_dld_shl_load" >&6; }
+if test "x$ac_cv_lib_dld_shl_load" = xyes
+then :
lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld
-else
+else $as_nop
ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = xyes; then :
+if test "x$ac_cv_func_dlopen" = xyes
+then :
lt_cv_dlopen=dlopen
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+else $as_nop
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
+printf %s "checking for dlopen in -ldl... " >&6; }
+if test ${ac_cv_lib_dl_dlopen+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldl $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20803,37 +22173,37 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
char dlopen ();
int
-main ()
+main (void)
{
return dlopen ();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_lib_dl_dlopen=yes
-else
+else $as_nop
ac_cv_lib_dl_dlopen=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = xyes
+then :
lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if ${ac_cv_lib_svld_dlopen+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+else $as_nop
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
+printf %s "checking for dlopen in -lsvld... " >&6; }
+if test ${ac_cv_lib_svld_dlopen+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_check_lib_save_LIBS=$LIBS
LIBS="-lsvld $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20842,37 +22212,37 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
char dlopen ();
int
-main ()
+main (void)
{
return dlopen ();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_lib_svld_dlopen=yes
-else
+else $as_nop
ac_cv_lib_svld_dlopen=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_svld_dlopen" >&6; }
+if test "x$ac_cv_lib_svld_dlopen" = xyes
+then :
lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if ${ac_cv_lib_dld_dld_link+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+else $as_nop
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
+printf %s "checking for dld_link in -ldld... " >&6; }
+if test ${ac_cv_lib_dld_dld_link+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldld $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20881,30 +22251,29 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
char dld_link ();
int
-main ()
+main (void)
{
return dld_link ();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_lib_dld_dld_link=yes
-else
+else $as_nop
ac_cv_lib_dld_dld_link=no
fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
+printf "%s\n" "$ac_cv_lib_dld_dld_link" >&6; }
+if test "x$ac_cv_lib_dld_dld_link" = xyes
+then :
lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld
fi
@@ -20943,11 +22312,12 @@ fi
save_LIBS=$LIBS
LIBS="$lt_cv_dlopen_libs $LIBS"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
+printf %s "checking whether a program can dlopen itself... " >&6; }
+if test ${lt_cv_dlopen_self+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test yes = "$cross_compiling"; then :
lt_cv_dlopen_self=cross
else
@@ -21026,7 +22396,7 @@ _LT_EOF
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
(eval $ac_link) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
(./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
@@ -21044,16 +22414,17 @@ rm -fr conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
+printf "%s\n" "$lt_cv_dlopen_self" >&6; }
if test yes = "$lt_cv_dlopen_self"; then
wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self_static+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
+printf %s "checking whether a statically linked program can dlopen itself... " >&6; }
+if test ${lt_cv_dlopen_self_static+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
if test yes = "$cross_compiling"; then :
lt_cv_dlopen_self_static=cross
else
@@ -21132,7 +22503,7 @@ _LT_EOF
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
(eval $ac_link) 2>&5
ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
(./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
@@ -21150,8 +22521,8 @@ rm -fr conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
+printf "%s\n" "$lt_cv_dlopen_self_static" >&6; }
fi
CPPFLAGS=$save_CPPFLAGS
@@ -21189,13 +22560,13 @@ fi
striplib=
old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
+printf %s "checking whether stripping libraries is possible... " >&6; }
if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
test -z "$striplib" && striplib="$STRIP --strip-unneeded"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
else
# FIXME - insert some real tests, host_os isn't really good enough
case $host_os in
@@ -21203,16 +22574,16 @@ else
if test -n "$STRIP"; then
striplib="$STRIP -x"
old_striplib="$STRIP -S"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
fi
;;
*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
;;
esac
fi
@@ -21229,13 +22600,13 @@ fi
# Report what library types will actually be built
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
+printf %s "checking if libtool supports shared libraries... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
+printf "%s\n" "$can_build_shared" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
+printf %s "checking whether to build shared libraries... " >&6; }
test no = "$can_build_shared" && enable_shared=no
# On AIX, shared libraries and static libraries use the same namespace, and
@@ -21259,15 +22630,15 @@ $as_echo_n "checking whether to build shared libraries... " >&6; }
fi
;;
esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
+printf "%s\n" "$enable_shared" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
+printf %s "checking whether to build static libraries... " >&6; }
# Make sure either enable_shared or enable_static is yes.
test yes = "$enable_shared" || enable_static=yes
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
+printf "%s\n" "$enable_static" >&6; }
@@ -21304,9 +22675,13 @@ CC=$lt_save_CC
-# The above are still necessary for --disable-perl-xs even though they
-# aren't really used: otherwise, configure complains about undefined
-# variables.
+# Note that the above have to be outside the disable_xs block
+# otherwise it causes an error with configure.
+
+# Disable gnulib provision of "Microsoft deprecated alias" fdopen on
+# MS-Windows to prevent a clash with definitions in Perl header files
+GNULIB_MDA_FDOPEN=0
+
host_needs_no_undefined=no
case "$host" in *-mingw32 | *-mingw64 | *-msdosdjgpp | *-cygwin )
@@ -21330,85 +22705,11 @@ else
fi
-# User variables for a Perl XS extension, which may be different, for
-# example if the Perl interpreter being used was compiled with a
-# different compiler. Also in top-level configure.ac.
-
-
-
-
-
-if test x$disable_xs != xyes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking Perl configuration value ccflags" >&5
-$as_echo_n "checking Perl configuration value ccflags... " >&6; }
- fetch_conf ccflags
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
-$as_echo "$conf_value" >&6; }
- PERL_CONF_ccflags=$conf_value
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Perl configuration value cccdlflags" >&5
-$as_echo_n "checking Perl configuration value cccdlflags... " >&6; }
- fetch_conf cccdlflags
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
-$as_echo "$conf_value" >&6; }
- PERL_CONF_cccdlflags=$conf_value
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Perl configuration value optimize" >&5
-$as_echo_n "checking Perl configuration value optimize... " >&6; }
- fetch_conf optimize
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
-$as_echo "$conf_value" >&6; }
- PERL_CONF_optimize=$conf_value
-
-
-
-
- # flags for linking the extension, e.g. -rpath.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking Perl configuration value ccdlflags" >&5
-$as_echo_n "checking Perl configuration value ccdlflags... " >&6; }
- fetch_conf ccdlflags
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
-$as_echo "$conf_value" >&6; }
- PERL_CONF_ccdlflags=$conf_value
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking Perl configuration value libperl" >&5
-$as_echo_n "checking Perl configuration value libperl... " >&6; }
- fetch_conf libperl
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
-$as_echo "$conf_value" >&6; }
- PERL_CONF_libperl=$conf_value
-
-
- # Change libperl.so into -lperl to indicate a library dependency to
- # libtool.
- # Special case for Cygwin to change e.g. cygperl5_22.dll into -lperl
- PERL_CONF_libperl=`echo $PERL_CONF_libperl \
- | sed -e 's/^lib/-l/' \
- -e 's/\..*//' \
- -e 's/^cygperl.*/-lperl/' `
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking Perl configuration value archlibexp" >&5
-$as_echo_n "checking Perl configuration value archlibexp... " >&6; }
- fetch_conf archlibexp
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
-$as_echo "$conf_value" >&6; }
- PERL_CONF_archlibexp=$conf_value
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Perl configuration value privlibexp" >&5
-$as_echo_n "checking Perl configuration value privlibexp... " >&6; }
- fetch_conf privlibexp
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $conf_value" >&5
-$as_echo "$conf_value" >&6; }
- PERL_CONF_privlibexp=$conf_value
-
-
-
-
- ac_config_headers="$ac_config_headers config.h:config.in"
-
-fi # not disable_xs
+# Do not include Perl configuration values when outputting these variables
+CFLAGS=$PERL_EXT_CFLAGS
+CPPFLAGS=$PERL_EXT_CPPFLAGS
+LDFLAGS=$PERL_EXT_LDFLAGS
ac_config_files="$ac_config_files Makefile gnulib/lib/Makefile"
@@ -21439,8 +22740,8 @@ _ACEOF
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+ *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
@@ -21470,15 +22771,15 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
/^ac_cv_env_/b end
t clear
:clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+ s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/
t end
s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
:end' >>confcache
if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
if test -w "$cache_file"; then
if test "x$cache_file" != "x/dev/null"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
+printf "%s\n" "$as_me: updating cache $cache_file" >&6;}
if test ! -f "$cache_file" || test -h "$cache_file"; then
cat confcache >"$cache_file"
else
@@ -21492,8 +22793,8 @@ $as_echo "$as_me: updating cache $cache_file" >&6;}
fi
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
+printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;}
fi
fi
rm -f confcache
@@ -21510,7 +22811,7 @@ U=
for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
# 1. Remove the extension, and $U if already installed.
ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
- ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
+ ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"`
# 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
# will be set to the directory where LIBOBJS objects are built.
as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
@@ -21521,14 +22822,14 @@ LIBOBJS=$ac_libobjs
LTLIBOBJS=$ac_ltlibobjs
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
-$as_echo_n "checking that generated files are newer than configure... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
+printf %s "checking that generated files are newer than configure... " >&6; }
if test -n "$am_sleep_pid"; then
# Hide warnings about reused PIDs.
wait $am_sleep_pid 2>/dev/null
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
-$as_echo "done" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5
+printf "%s\n" "done" >&6; }
if test -n "$EXEEXT"; then
am__EXEEXT_TRUE=
am__EXEEXT_FALSE='#'
@@ -21565,10 +22866,6 @@ if test -z "${GL_GENERATE_LIMITS_H_TRUE}" && test -z "${GL_GENERATE_LIMITS_H_FAL
as_fn_error $? "conditional \"GL_GENERATE_LIMITS_H\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
-if test -z "${GL_GENERATE_STDDEF_H_TRUE}" && test -z "${GL_GENERATE_STDDEF_H_FALSE}"; then
- as_fn_error $? "conditional \"GL_GENERATE_STDDEF_H\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
if test -z "${GL_GENERATE_LIMITS_H_TRUE}" && test -z "${GL_GENERATE_LIMITS_H_FALSE}"; then
as_fn_error $? "conditional \"GL_GENERATE_LIMITS_H\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -21577,6 +22874,10 @@ if test -z "${GL_GENERATE_STDINT_H_TRUE}" && test -z "${GL_GENERATE_STDINT_H_FAL
as_fn_error $? "conditional \"GL_GENERATE_STDINT_H\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${GL_GENERATE_STDDEF_H_TRUE}" && test -z "${GL_GENERATE_STDDEF_H_FALSE}"; then
+ as_fn_error $? "conditional \"GL_GENERATE_STDDEF_H\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
gl_libobjs=
@@ -21623,8 +22924,8 @@ fi
ac_write_fail=0
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
+printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;}
as_write_fail=0
cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
#! $SHELL
@@ -21647,14 +22948,16 @@ cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
-else
+else $as_nop
case `(set -o) 2>/dev/null` in #(
*posix*) :
set -o posix ;; #(
@@ -21664,46 +22967,46 @@ esac
fi
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
as_nl='
'
export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
+IFS=" "" $as_nl"
+
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi
+if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2) ; then :; else exec 2>/dev/null; fi
# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
PATH_SEPARATOR=:
(PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
(PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
@@ -21712,13 +23015,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
fi
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
# Find who we are. Look in the path if we contain no directory separator.
as_myself=
case $0 in #((
@@ -21727,8 +23023,12 @@ case $0 in #((
for as_dir in $PATH
do
IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ test -r "$as_dir$0" && as_myself=$as_dir$0 && break
done
IFS=$as_save_IFS
@@ -21740,30 +23040,10 @@ if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
exit 1
fi
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
# as_fn_error STATUS ERROR [LINENO LOG_FD]
@@ -21776,13 +23056,14 @@ as_fn_error ()
as_status=$1; test $as_status -eq 0 && as_status=1
if test "$4"; then
as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
fi
- $as_echo "$as_me: error: $2" >&2
+ printf "%s\n" "$as_me: error: $2" >&2
as_fn_exit $as_status
} # as_fn_error
+
# as_fn_set_status STATUS
# -----------------------
# Set $? to STATUS, without forking.
@@ -21809,18 +23090,20 @@ as_fn_unset ()
{ eval $1=; unset $1;}
}
as_unset=as_fn_unset
+
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
# advantage of any shell optimizations that allow amortized linear growth over
# repeated appends, instead of the typical quadratic growth present in naive
# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
eval 'as_fn_append ()
{
eval $1+=\$2
}'
-else
+else $as_nop
as_fn_append ()
{
eval $1=\$$1\$2
@@ -21832,12 +23115,13 @@ fi # as_fn_append
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
}'
-else
+else $as_nop
as_fn_arith ()
{
as_val=`expr "$@" || test $? -eq 1`
@@ -21868,7 +23152,7 @@ as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
@@ -21890,6 +23174,10 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
ECHO_C= ECHO_N= ECHO_T=
case `echo -n x` in #(((((
-n*)
@@ -21903,6 +23191,12 @@ case `echo -n x` in #(((((
ECHO_N='-n';;
esac
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n. New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
rm -f conf$$.dir/conf$$.file
@@ -21944,7 +23238,7 @@ as_fn_mkdir_p ()
as_dirs=
while :; do
case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
*) as_qdir=$as_dir;;
esac
as_dirs="'$as_qdir' $as_dirs"
@@ -21953,7 +23247,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_dir" : 'X\(//\)[^/]' \| \
X"$as_dir" : 'X\(//\)$' \| \
X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -22016,7 +23310,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# values after options handling.
ac_log="
This file was extended by texinfo $as_me 0, which was
-generated by GNU Autoconf 2.69. Invocation command line was
+generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -22078,14 +23372,16 @@ $config_commands
Report bugs to the package provider."
_ACEOF
+ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"`
+ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"`
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
+ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
texinfo config.status 0
-configured by $0, generated by GNU Autoconf 2.69,
+configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
@@ -22125,15 +23421,15 @@ do
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
ac_cs_recheck=: ;;
--version | --versio | --versi | --vers | --ver | --ve | --v | -V )
- $as_echo "$ac_cs_version"; exit ;;
+ printf "%s\n" "$ac_cs_version"; exit ;;
--config | --confi | --conf | --con | --co | --c )
- $as_echo "$ac_cs_config"; exit ;;
+ printf "%s\n" "$ac_cs_config"; exit ;;
--debug | --debu | --deb | --de | --d | -d )
debug=: ;;
--file | --fil | --fi | --f )
$ac_shift
case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
'') as_fn_error $? "missing file argument" ;;
esac
as_fn_append CONFIG_FILES " '$ac_optarg'"
@@ -22141,7 +23437,7 @@ do
--header | --heade | --head | --hea )
$ac_shift
case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
as_fn_append CONFIG_HEADERS " '$ac_optarg'"
ac_need_defaults=false;;
@@ -22150,7 +23446,7 @@ do
as_fn_error $? "ambiguous option: \`$1'
Try \`$0 --help' for more information.";;
--help | --hel | -h )
- $as_echo "$ac_cs_usage"; exit ;;
+ printf "%s\n" "$ac_cs_usage"; exit ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil | --si | --s)
ac_cs_silent=: ;;
@@ -22178,7 +23474,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
shift
- \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+ \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6
CONFIG_SHELL='$SHELL'
export CONFIG_SHELL
exec "\$@"
@@ -22192,7 +23488,7 @@ exec 5>>config.log
sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
- $as_echo "$ac_log"
+ printf "%s\n" "$ac_log"
} >&5
_ACEOF
@@ -22500,10 +23796,10 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
for ac_config_target in $ac_config_targets
do
case $ac_config_target in
+ "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:config.in" ;;
"depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
"po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;;
"libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
- "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:config.in" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"gnulib/lib/Makefile") CONFIG_FILES="$CONFIG_FILES gnulib/lib/Makefile" ;;
@@ -22517,9 +23813,9 @@ done
# We use the long form for the default assignment because of an extremely
# bizarre bug on SunOS 4.1.3.
if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
- test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
- test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+ test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files
+ test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers
+ test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands
fi
# Have a temporary directory for convenience. Make it in the build tree
@@ -22855,7 +24151,7 @@ do
esac ||
as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
esac
- case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+ case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
as_fn_append ac_file_inputs " '$ac_f'"
done
@@ -22863,17 +24159,17 @@ do
# use $as_me), people would be surprised to read:
# /* config.h. Generated by config.status. */
configure_input='Generated from '`
- $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+ printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
`' by configure.'
if test x"$ac_file" != x-; then
configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
+printf "%s\n" "$as_me: creating $ac_file" >&6;}
fi
# Neutralize special characters interpreted by sed in replacement strings.
case $configure_input in #(
*\&* | *\|* | *\\* )
- ac_sed_conf_input=`$as_echo "$configure_input" |
+ ac_sed_conf_input=`printf "%s\n" "$configure_input" |
sed 's/[\\\\&|]/\\\\&/g'`;; #(
*) ac_sed_conf_input=$configure_input;;
esac
@@ -22890,7 +24186,7 @@ $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$ac_file" : 'X\(//\)[^/]' \| \
X"$ac_file" : 'X\(//\)$' \| \
X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
+printf "%s\n" X"$ac_file" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -22914,9 +24210,9 @@ $as_echo X"$ac_file" |
case "$ac_dir" in
.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
# A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
case $ac_top_builddir_sub in
"") ac_top_builddir_sub=. ac_top_build_prefix= ;;
*) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -22978,8 +24274,8 @@ ac_sed_dataroot='
case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
*datarootdir*) ac_datarootdir_seen=yes;;
*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_datarootdir_hack='
@@ -23023,9 +24319,9 @@ test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
{ ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
{ ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
"$ac_tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined" >&2;}
rm -f "$ac_tmp/stdin"
@@ -23041,20 +24337,20 @@ which seems to be undefined. Please make sure it is defined" >&2;}
#
if test x"$ac_file" != x-; then
{
- $as_echo "/* $configure_input */" \
+ printf "%s\n" "/* $configure_input */" >&1 \
&& eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
} >"$ac_tmp/config.h" \
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
+printf "%s\n" "$as_me: $ac_file is unchanged" >&6;}
else
rm -f "$ac_file"
mv "$ac_tmp/config.h" "$ac_file" \
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
fi
else
- $as_echo "/* $configure_input */" \
+ printf "%s\n" "/* $configure_input */" >&1 \
&& eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
|| as_fn_error $? "could not create -" "$LINENO" 5
fi
@@ -23074,7 +24370,7 @@ $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$_am_arg" : 'X\(//\)[^/]' \| \
X"$_am_arg" : 'X\(//\)$' \| \
X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$_am_arg" |
+printf "%s\n" X"$_am_arg" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -23094,8 +24390,8 @@ $as_echo X"$_am_arg" |
s/.*/./; q'`/stamp-h$_am_stamp_count
;;
- :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
+ :C) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
+printf "%s\n" "$as_me: executing $ac_file commands" >&6;}
;;
esac
@@ -23121,7 +24417,7 @@ esac
for am_mf
do
# Strip MF so we end up with the name of the file.
- am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`
+ am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'`
# Check whether this is an Automake generated Makefile which includes
# dependency-tracking related rules and includes.
# Grep'ing the whole file directly is not great: AIX grep has a line
@@ -23133,7 +24429,7 @@ $as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$am_mf" : 'X\(//\)[^/]' \| \
X"$am_mf" : 'X\(//\)$' \| \
X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$am_mf" |
+printf "%s\n" X"$am_mf" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -23155,7 +24451,7 @@ $as_echo X"$am_mf" |
$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
X"$am_mf" : 'X\(//\)$' \| \
X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$am_mf" |
+printf "%s\n" X/"$am_mf" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
@@ -23180,10 +24476,12 @@ $as_echo X/"$am_mf" |
(exit $ac_status); } || am_rc=$?
done
if test $am_rc -ne 0; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "Something went wrong bootstrapping makefile fragments
- for automatic dependency tracking. Try re-running configure with the
+ for automatic dependency tracking. If GNU make was not used, consider
+ re-running the configure script with MAKE=\"gmake\" (or whatever is
+ necessary). You can also try re-running configure with the
'--disable-dependency-tracking' option to at least be able to build
the package (albeit without support for automatic dependency tracking).
See \`config.log' for more details" "$LINENO" 5; }
@@ -23836,6 +25134,7 @@ _LT_EOF
esac
+
ltmain=$ac_aux_dir/ltmain.sh
@@ -23885,7 +25184,8 @@ if test "$no_create" != yes; then
$ac_cs_success || as_fn_exit 1
fi
if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
fi
+
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/configure.ac b/macros/texinfo/texinfo/tp/Texinfo/XS/configure.ac
index 932e20f746..ce73f272cc 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/configure.ac
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/configure.ac
@@ -1,6 +1,6 @@
-# configure.ac for XSParagraph
+# configure.ac for XS modules
#
-# Copyright 2015-2019 Free Software Foundation, Inc.
+# Copyright 2015-2020 Free Software Foundation, Inc.
#
# This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without
@@ -48,7 +48,7 @@ AC_DEFUN([lookup_perl_conf_values],
])
AC_ARG_ENABLE([perl-xs],
- AC_HELP_STRING([--enable-perl-xs],
+ AS_HELP_STRING([--enable-perl-xs],
[build Perl XS modules for speed (default: yes)]),
[if test $enableval = 'no'; then
disable_xs=yes
@@ -57,15 +57,23 @@ AC_ARG_ENABLE([perl-xs],
fi],
[disable_xs=no])
+# PERL_EXT_var are user variables for a Perl XS extension, allowing
+# configuring at the top-level with e.g.
+# "./configure CFLAGS='-g -O0' PERL_EXT_CFLAGS='-g'".
+# May be useful if the Perl interpreter was compiled with a
+# different compiler. Also in top-level configure.ac.
+
+AC_ARG_VAR([PERL_EXT_CFLAGS], [Compiler flags for a Perl extension])
+AC_ARG_VAR([PERL_EXT_CPPFLAGS], [C preprocessor flags for a Perl extension])
+AC_ARG_VAR([PERL_EXT_LDFLAGS], [Linker flags for a Perl extension])
+AC_ARG_VAR([PERL_EXT_CC], [Compiler for a Perl extension])
+
# See (automake)Conditional Subdirectories. Even if --disable-perl-xs
# is given, we still need to configure this directory minimally, so that
# "make dist" will work.
if test x$disable_xs != xyes; then
AC_PATH_PROG([PERL], [perl])
- # PERL_EXT_var are user variables, allowing configuring at the top-level
- # with e.g. "./configure CFLAGS='-g -O0' PERL_EXT_CFLAGS='-g'".
-
if test -n "$PERL_EXT_CC" ; then
CC=$PERL_EXT_CC
else
@@ -76,18 +84,36 @@ if test x$disable_xs != xyes; then
CC=$conf_value
fi
- # Override these variables set by configure at the top level, because
- # the compiler used in this subdirectory might be different. Change
- # these now so they are used in the gnulib checks.
-
- CFLAGS=$PERL_EXT_CFLAGS
- CPPFLAGS=$PERL_EXT_CPPFLAGS
- LDFLAGS=$PERL_EXT_LDFLAGS
-
# Wipe cache values in case -C was given at the top level
ac_cv_prog_CC= ; unset ac_cv_prog_CC
ac_cv_prog_ac_ct_CC= ; unset ac_cv_prog_ac_ct_CC
-fi
+
+ lookup_perl_conf_values([[ccflags], [cccdlflags], [optimize]])
+
+ # flags for linking the extension, e.g. -rpath.
+ lookup_perl_conf([ccdlflags])
+
+ # Override these variables set by configure at the top level, because
+ # the compiler used in this subdirectory might be different.
+ # Change these now so they are used in the checks that follow.
+ CFLAGS="$PERL_EXT_CFLAGS $PERL_CONF_ccflags"
+ CPPFLAGS=$PERL_EXT_CPPFLAGS
+ LDFLAGS="$PERL_EXT_LDFLAGS $PERL_CONF_ccdlflags $PERL_CONF_cccdlflags"
+
+ lookup_perl_conf([libperl])
+ # Change libperl.so into -lperl to indicate a library dependency to
+ # libtool.
+ # Special case for Cygwin to change e.g. cygperl5_22.dll into -lperl
+ PERL_CONF_libperl=`echo $PERL_CONF_libperl \
+ | sed -e 's/^lib/-l/' \
+ -e 's/\..*//' \
+ -e 's/^cygperl.*/-lperl/' `
+
+ lookup_perl_conf_values([[archlibexp], [privlibexp]])
+
+ AC_CONFIG_HEADERS([config.h:config.in])
+fi # not disable_xs
+
AC_PROG_CC
@@ -95,14 +121,19 @@ gl_EARLY
AM_GNU_GETTEXT([external])
AM_MISSING_PROG([XSUBPP], [xsubpp])
+AM_MISSING_PROG([GAWK], [gawk])
gl_INIT
LT_INIT([disable-static])
-# The above are still necessary for --disable-perl-xs even though they
-# aren't really used: otherwise, configure complains about undefined
-# variables.
+# Note that the above have to be outside the disable_xs block
+# otherwise it causes an error with configure.
+
+# Disable gnulib provision of "Microsoft deprecated alias" fdopen on
+# MS-Windows to prevent a clash with definitions in Perl header files
+GNULIB_MDA_FDOPEN=0
+
host_needs_no_undefined=no
case "$host" in *-mingw32 | *-mingw64 | *-msdosdjgpp | *-cygwin )
@@ -114,33 +145,11 @@ AM_CONDITIONAL([HOST_NEEDS_NO_UNDEFINED],
AM_CONDITIONAL([HAVE_ICONV],
[test "x$am_func_iconv" = "xyes"])
-# User variables for a Perl XS extension, which may be different, for
-# example if the Perl interpreter being used was compiled with a
-# different compiler. Also in top-level configure.ac.
-AC_ARG_VAR([PERL_EXT_CFLAGS], [Compiler flags for a Perl extension])
-AC_ARG_VAR([PERL_EXT_CPPFLAGS], [C preprocessor flags for a Perl extension])
-AC_ARG_VAR([PERL_EXT_LDFLAGS], [Linker flags for a Perl extension])
-AC_ARG_VAR([PERL_EXT_CC], [Compiler for a Perl extension])
-if test x$disable_xs != xyes; then
- lookup_perl_conf_values([[ccflags], [cccdlflags], [optimize]])
-
- # flags for linking the extension, e.g. -rpath.
- lookup_perl_conf([ccdlflags])
-
- lookup_perl_conf([libperl])
- # Change libperl.so into -lperl to indicate a library dependency to
- # libtool.
- # Special case for Cygwin to change e.g. cygperl5_22.dll into -lperl
- PERL_CONF_libperl=`echo $PERL_CONF_libperl \
- | sed -e 's/^lib/-l/' \
- -e 's/\..*//' \
- -e 's/^cygperl.*/-lperl/' `
-
- lookup_perl_conf_values([[archlibexp], [privlibexp]])
-
- AC_CONFIG_HEADERS([config.h:config.in])
-fi # not disable_xs
+# Do not include Perl configuration values when outputting these variables
+CFLAGS=$PERL_EXT_CFLAGS
+CPPFLAGS=$PERL_EXT_CPPFLAGS
+LDFLAGS=$PERL_EXT_LDFLAGS
AC_CONFIG_FILES([Makefile gnulib/lib/Makefile])
AC_OUTPUT
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.am b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.am
index 64a9e93e54..54c88013a6 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.am
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.am
@@ -1,6 +1,6 @@
## DO NOT EDIT! GENERATED AUTOMATICALLY!
## Process this file with automake to produce Makefile.in.
-# Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2021 Free Software Foundation, Inc.
#
# 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
@@ -72,7 +72,7 @@ libgnu_la_LDFLAGS += $(LTLIBICONV)
# Use this preprocessor expression to decide whether #include_next works.
# Do not rely on a 'configure'-time test for this, since the expression
# might appear in an installed header, which is used by some other compiler.
-HAVE_INCLUDE_NEXT = (__GNUC__ || 60000000 <= __DECC_VER)
+HAVE_INCLUDE_NEXT = (__GNUC__ || __clang__ || 60000000 <= __DECC_VER)
## end gnulib module absolute-header
@@ -99,6 +99,13 @@ EXTRA_DIST += alloca.in.h
## end gnulib module alloca-opt
+## begin gnulib module attribute
+
+
+EXTRA_DIST += attribute.h
+
+## end gnulib module attribute
+
## begin gnulib module errno
BUILT_SOURCES += $(ERRNO_H)
@@ -189,6 +196,49 @@ EXTRA_DIST += $(top_srcdir)/./config.rpath
## end gnulib module havelib
+## begin gnulib module inttypes-incomplete
+
+BUILT_SOURCES += inttypes.h
+
+# We need the following in order to create <inttypes.h> when the system
+# doesn't have one that works with the given compiler.
+inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H)
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_INTTYPES_H''@|$(NEXT_INTTYPES_H)|g' \
+ -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \
+ -e 's/@''PRIPTR_PREFIX''@/$(PRIPTR_PREFIX)/g' \
+ -e 's/@''GNULIB_IMAXABS''@/$(GNULIB_IMAXABS)/g' \
+ -e 's/@''GNULIB_IMAXDIV''@/$(GNULIB_IMAXDIV)/g' \
+ -e 's/@''GNULIB_STRTOIMAX''@/$(GNULIB_STRTOIMAX)/g' \
+ -e 's/@''GNULIB_STRTOUMAX''@/$(GNULIB_STRTOUMAX)/g' \
+ -e 's/@''HAVE_DECL_IMAXABS''@/$(HAVE_DECL_IMAXABS)/g' \
+ -e 's/@''HAVE_DECL_IMAXDIV''@/$(HAVE_DECL_IMAXDIV)/g' \
+ -e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \
+ -e 's/@''HAVE_DECL_STRTOUMAX''@/$(HAVE_DECL_STRTOUMAX)/g' \
+ -e 's/@''HAVE_IMAXDIV_T''@/$(HAVE_IMAXDIV_T)/g' \
+ -e 's/@''REPLACE_STRTOIMAX''@/$(REPLACE_STRTOIMAX)/g' \
+ -e 's/@''REPLACE_STRTOUMAX''@/$(REPLACE_STRTOUMAX)/g' \
+ -e 's/@''INT32_MAX_LT_INTMAX_MAX''@/$(INT32_MAX_LT_INTMAX_MAX)/g' \
+ -e 's/@''INT64_MAX_EQ_LONG_MAX''@/$(INT64_MAX_EQ_LONG_MAX)/g' \
+ -e 's/@''UINT32_MAX_LT_UINTMAX_MAX''@/$(UINT32_MAX_LT_UINTMAX_MAX)/g' \
+ -e 's/@''UINT64_MAX_EQ_ULONG_MAX''@/$(UINT64_MAX_EQ_ULONG_MAX)/g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ < $(srcdir)/inttypes.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+MOSTLYCLEANFILES += inttypes.h inttypes.h-t
+
+EXTRA_DIST += inttypes.in.h
+
+## end gnulib module inttypes-incomplete
+
## begin gnulib module limits-h
BUILT_SOURCES += $(LIMITS_H)
@@ -330,8 +380,6 @@ stdint.h: stdint.in.h $(top_builddir)/config.status
-e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \
-e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \
-e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \
- -e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \
- -e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \
-e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \
-e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \
-e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \
@@ -427,8 +475,15 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's/@''GNULIB_VPRINTF_POSIX''@/$(GNULIB_VPRINTF_POSIX)/g' \
-e 's/@''GNULIB_VSNPRINTF''@/$(GNULIB_VSNPRINTF)/g' \
-e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GNULIB_VSPRINTF_POSIX)/g' \
+ -e 's/@''GNULIB_MDA_FCLOSEALL''@/$(GNULIB_MDA_FCLOSEALL)/g' \
+ -e 's/@''GNULIB_MDA_FDOPEN''@/$(GNULIB_MDA_FDOPEN)/g' \
+ -e 's/@''GNULIB_MDA_FILENO''@/$(GNULIB_MDA_FILENO)/g' \
+ -e 's/@''GNULIB_MDA_GETW''@/$(GNULIB_MDA_GETW)/g' \
+ -e 's/@''GNULIB_MDA_PUTW''@/$(GNULIB_MDA_PUTW)/g' \
+ -e 's/@''GNULIB_MDA_TEMPNAM''@/$(GNULIB_MDA_TEMPNAM)/g' \
< $(srcdir)/stdio.in.h | \
- sed -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
+ sed -e 's|@''HAVE_DECL_FCLOSEALL''@|$(HAVE_DECL_FCLOSEALL)|g' \
+ -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
-e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \
-e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \
-e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \
@@ -547,14 +602,18 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's/@''GNULIB_STRTOK_R''@/$(GNULIB_STRTOK_R)/g' \
-e 's/@''GNULIB_STRERROR''@/$(GNULIB_STRERROR)/g' \
-e 's/@''GNULIB_STRERROR_R''@/$(GNULIB_STRERROR_R)/g' \
+ -e 's/@''GNULIB_STRERRORNAME_NP''@/$(GNULIB_STRERRORNAME_NP)/g' \
+ -e 's/@''GNULIB_SIGABBREV_NP''@/$(GNULIB_SIGABBREV_NP)/g' \
+ -e 's/@''GNULIB_SIGDESCR_NP''@/$(GNULIB_SIGDESCR_NP)/g' \
-e 's/@''GNULIB_STRSIGNAL''@/$(GNULIB_STRSIGNAL)/g' \
-e 's/@''GNULIB_STRVERSCMP''@/$(GNULIB_STRVERSCMP)/g' \
+ -e 's/@''GNULIB_MDA_MEMCCPY''@/$(GNULIB_MDA_MEMCCPY)/g' \
+ -e 's/@''GNULIB_MDA_STRDUP''@/$(GNULIB_MDA_STRDUP)/g' \
< $(srcdir)/string.in.h | \
sed -e 's|@''HAVE_EXPLICIT_BZERO''@|$(HAVE_EXPLICIT_BZERO)|g' \
-e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \
-e 's|@''HAVE_FFSLL''@|$(HAVE_FFSLL)|g' \
-e 's|@''HAVE_MBSLEN''@|$(HAVE_MBSLEN)|g' \
- -e 's|@''HAVE_MEMCHR''@|$(HAVE_MEMCHR)|g' \
-e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \
-e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \
-e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \
@@ -570,8 +629,12 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \
-e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \
-e 's|@''HAVE_DECL_STRERROR_R''@|$(HAVE_DECL_STRERROR_R)|g' \
+ -e 's|@''HAVE_STRERRORNAME_NP''@|$(HAVE_STRERRORNAME_NP)|g' \
+ -e 's|@''HAVE_SIGABBREV_NP''@|$(HAVE_SIGABBREV_NP)|g' \
+ -e 's|@''HAVE_SIGDESCR_NP''@|$(HAVE_SIGDESCR_NP)|g' \
-e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \
-e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \
+ -e 's|@''REPLACE_FFSLL''@|$(REPLACE_FFSLL)|g' \
-e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \
-e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \
-e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \
@@ -585,6 +648,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \
-e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \
-e 's|@''REPLACE_STRERROR_R''@|$(REPLACE_STRERROR_R)|g' \
+ -e 's|@''REPLACE_STRERRORNAME_NP''@|$(REPLACE_STRERRORNAME_NP)|g' \
-e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \
-e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -701,6 +765,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's/@''GNULIB_WMEMCMP''@/$(GNULIB_WMEMCMP)/g' \
-e 's/@''GNULIB_WMEMCPY''@/$(GNULIB_WMEMCPY)/g' \
-e 's/@''GNULIB_WMEMMOVE''@/$(GNULIB_WMEMMOVE)/g' \
+ -e 's/@''GNULIB_WMEMPCPY''@/$(GNULIB_WMEMPCPY)/g' \
-e 's/@''GNULIB_WMEMSET''@/$(GNULIB_WMEMSET)/g' \
-e 's/@''GNULIB_WCSLEN''@/$(GNULIB_WCSLEN)/g' \
-e 's/@''GNULIB_WCSNLEN''@/$(GNULIB_WCSNLEN)/g' \
@@ -726,6 +791,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's/@''GNULIB_WCSTOK''@/$(GNULIB_WCSTOK)/g' \
-e 's/@''GNULIB_WCSWIDTH''@/$(GNULIB_WCSWIDTH)/g' \
-e 's/@''GNULIB_WCSFTIME''@/$(GNULIB_WCSFTIME)/g' \
+ -e 's/@''GNULIB_MDA_WCSDUP''@/$(GNULIB_MDA_WCSDUP)/g' \
< $(srcdir)/wchar.in.h | \
sed -e 's|@''HAVE_WINT_T''@|$(HAVE_WINT_T)|g' \
-e 's|@''HAVE_BTOWC''@|$(HAVE_BTOWC)|g' \
@@ -741,6 +807,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's|@''HAVE_WMEMCMP''@|$(HAVE_WMEMCMP)|g' \
-e 's|@''HAVE_WMEMCPY''@|$(HAVE_WMEMCPY)|g' \
-e 's|@''HAVE_WMEMMOVE''@|$(HAVE_WMEMMOVE)|g' \
+ -e 's|@''HAVE_WMEMPCPY''@|$(HAVE_WMEMPCPY)|g' \
-e 's|@''HAVE_WMEMSET''@|$(HAVE_WMEMSET)|g' \
-e 's|@''HAVE_WCSLEN''@|$(HAVE_WCSLEN)|g' \
-e 's|@''HAVE_WCSNLEN''@|$(HAVE_WCSNLEN)|g' \
@@ -767,6 +834,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's|@''HAVE_WCSWIDTH''@|$(HAVE_WCSWIDTH)|g' \
-e 's|@''HAVE_WCSFTIME''@|$(HAVE_WCSFTIME)|g' \
-e 's|@''HAVE_DECL_WCTOB''@|$(HAVE_DECL_WCTOB)|g' \
+ -e 's|@''HAVE_DECL_WCSDUP''@|$(HAVE_DECL_WCSDUP)|g' \
-e 's|@''HAVE_DECL_WCWIDTH''@|$(HAVE_DECL_WCWIDTH)|g' \
| \
sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \
@@ -783,6 +851,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \
-e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \
-e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \
+ -e 's|@''REPLACE_WCSTOK''@|$(REPLACE_WCSTOK)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
-e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
-e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.in b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.in
index df001f36d1..d1c3c4fcce 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.in
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.3 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,7 +14,7 @@
@SET_MAKE@
-# Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2021 Free Software Foundation, Inc.
#
# 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
@@ -147,13 +147,13 @@ am__aclocal_m4_deps = $(top_srcdir)/gnulib/m4/00gnulib.m4 \
$(top_srcdir)/gnulib/m4/iconv.m4 \
$(top_srcdir)/gnulib/m4/include_next.m4 \
$(top_srcdir)/gnulib/m4/intmax_t.m4 \
+ $(top_srcdir)/gnulib/m4/inttypes.m4 \
$(top_srcdir)/gnulib/m4/inttypes_h.m4 \
$(top_srcdir)/gnulib/m4/lib-ld.m4 \
$(top_srcdir)/gnulib/m4/lib-link.m4 \
$(top_srcdir)/gnulib/m4/lib-prefix.m4 \
$(top_srcdir)/gnulib/m4/libtool.m4 \
$(top_srcdir)/gnulib/m4/limits-h.m4 \
- $(top_srcdir)/gnulib/m4/longlong.m4 \
$(top_srcdir)/gnulib/m4/ltoptions.m4 \
$(top_srcdir)/gnulib/m4/ltsugar.m4 \
$(top_srcdir)/gnulib/m4/ltversion.m4 \
@@ -183,7 +183,8 @@ am__aclocal_m4_deps = $(top_srcdir)/gnulib/m4/00gnulib.m4 \
$(top_srcdir)/gnulib/m4/wchar_h.m4 \
$(top_srcdir)/gnulib/m4/wchar_t.m4 \
$(top_srcdir)/gnulib/m4/wint_t.m4 \
- $(top_srcdir)/gnulib/m4/xsize.m4 $(top_srcdir)/configure.ac
+ $(top_srcdir)/gnulib/m4/xsize.m4 \
+ $(top_srcdir)/gnulib/m4/zzgnulib.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \
@@ -360,6 +361,7 @@ ERRNO_H = @ERRNO_H@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
FLOAT_H = @FLOAT_H@
+GAWK = @GAWK@
GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
@@ -391,6 +393,8 @@ GNULIB_GETC = @GNULIB_GETC@
GNULIB_GETCHAR = @GNULIB_GETCHAR@
GNULIB_GETDELIM = @GNULIB_GETDELIM@
GNULIB_GETLINE = @GNULIB_GETLINE@
+GNULIB_IMAXABS = @GNULIB_IMAXABS@
+GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
GNULIB_MBRLEN = @GNULIB_MBRLEN@
GNULIB_MBRTOWC = @GNULIB_MBRTOWC@
GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@
@@ -410,6 +414,15 @@ GNULIB_MBSSEP = @GNULIB_MBSSEP@
GNULIB_MBSSPN = @GNULIB_MBSSPN@
GNULIB_MBSSTR = @GNULIB_MBSSTR@
GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@
+GNULIB_MDA_FCLOSEALL = @GNULIB_MDA_FCLOSEALL@
+GNULIB_MDA_FDOPEN = @GNULIB_MDA_FDOPEN@
+GNULIB_MDA_FILENO = @GNULIB_MDA_FILENO@
+GNULIB_MDA_GETW = @GNULIB_MDA_GETW@
+GNULIB_MDA_MEMCCPY = @GNULIB_MDA_MEMCCPY@
+GNULIB_MDA_PUTW = @GNULIB_MDA_PUTW@
+GNULIB_MDA_STRDUP = @GNULIB_MDA_STRDUP@
+GNULIB_MDA_TEMPNAM = @GNULIB_MDA_TEMPNAM@
+GNULIB_MDA_WCSDUP = @GNULIB_MDA_WCSDUP@
GNULIB_MEMCHR = @GNULIB_MEMCHR@
GNULIB_MEMMEM = @GNULIB_MEMMEM@
GNULIB_MEMPCPY = @GNULIB_MEMPCPY@
@@ -430,6 +443,8 @@ GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_SCANF = @GNULIB_SCANF@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
@@ -440,6 +455,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
GNULIB_STRDUP = @GNULIB_STRDUP@
GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
GNULIB_STRNCAT = @GNULIB_STRNCAT@
GNULIB_STRNDUP = @GNULIB_STRNDUP@
@@ -448,7 +464,9 @@ GNULIB_STRPBRK = @GNULIB_STRPBRK@
GNULIB_STRSEP = @GNULIB_STRSEP@
GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
+GNULIB_STRTOIMAX = @GNULIB_STRTOIMAX@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_VASPRINTF = @GNULIB_VASPRINTF@
@@ -494,17 +512,21 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
GNULIB_WMEMSET = @GNULIB_WMEMSET@
GREP = @GREP@
HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
+HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
+HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@
@@ -514,8 +536,11 @@ HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@
HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@
HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@
HAVE_DECL_STRSIGNAL = @HAVE_DECL_STRSIGNAL@
+HAVE_DECL_STRTOIMAX = @HAVE_DECL_STRTOIMAX@
HAVE_DECL_STRTOK_R = @HAVE_DECL_STRTOK_R@
+HAVE_DECL_STRTOUMAX = @HAVE_DECL_STRTOUMAX@
HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
HAVE_DPRINTF = @HAVE_DPRINTF@
@@ -525,8 +550,8 @@ HAVE_FFSL = @HAVE_FFSL@
HAVE_FFSLL = @HAVE_FFSLL@
HAVE_FSEEKO = @HAVE_FSEEKO@
HAVE_FTELLO = @HAVE_FTELLO@
+HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
HAVE_MBRLEN = @HAVE_MBRLEN@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
@@ -534,12 +559,13 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
-HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_PCLOSE = @HAVE_PCLOSE@
HAVE_POPEN = @HAVE_POPEN@
HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@
HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@
@@ -548,13 +574,13 @@ HAVE_STPCPY = @HAVE_STPCPY@
HAVE_STPNCPY = @HAVE_STPNCPY@
HAVE_STRCASESTR = @HAVE_STRCASESTR@
HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
HAVE_VASPRINTF = @HAVE_VASPRINTF@
HAVE_VDPRINTF = @HAVE_VDPRINTF@
HAVE_WCHAR_H = @HAVE_WCHAR_H@
@@ -591,6 +617,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
HAVE_WMEMCMP = @HAVE_WMEMCMP@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
HAVE_WMEMSET = @HAVE_WMEMSET@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
@@ -599,6 +626,8 @@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INT32_MAX_LT_INTMAX_MAX = @INT32_MAX_LT_INTMAX_MAX@
+INT64_MAX_EQ_LONG_MAX = @INT64_MAX_EQ_LONG_MAX@
INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
LD = @LD@
@@ -623,6 +652,7 @@ MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
+NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = @NEXT_AS_FIRST_DIRECTIVE_LIMITS_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@
@@ -632,6 +662,7 @@ NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
+NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LIMITS_H = @NEXT_LIMITS_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDINT_H = @NEXT_STDINT_H@
@@ -669,6 +700,7 @@ PERL_EXT_LDFLAGS = @PERL_EXT_LDFLAGS@
POSUB = @POSUB@
PRAGMA_COLUMNS = @PRAGMA_COLUMNS@
PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@
+PRIPTR_PREFIX = @PRIPTR_PREFIX@
PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@
RANLIB = @RANLIB@
REPLACE_BTOWC = @REPLACE_BTOWC@
@@ -676,6 +708,7 @@ REPLACE_DPRINTF = @REPLACE_DPRINTF@
REPLACE_FCLOSE = @REPLACE_FCLOSE@
REPLACE_FDOPEN = @REPLACE_FDOPEN@
REPLACE_FFLUSH = @REPLACE_FFLUSH@
+REPLACE_FFSLL = @REPLACE_FFSLL@
REPLACE_FOPEN = @REPLACE_FOPEN@
REPLACE_FPRINTF = @REPLACE_FPRINTF@
REPLACE_FPURGE = @REPLACE_FPURGE@
@@ -712,13 +745,16 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
REPLACE_STRDUP = @REPLACE_STRDUP@
REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
REPLACE_STRNCAT = @REPLACE_STRNCAT@
REPLACE_STRNDUP = @REPLACE_STRNDUP@
REPLACE_STRNLEN = @REPLACE_STRNLEN@
REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
+REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_VASPRINTF = @REPLACE_VASPRINTF@
REPLACE_VDPRINTF = @REPLACE_VDPRINTF@
@@ -730,6 +766,7 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
REPLACE_WCTOB = @REPLACE_WCTOB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
@@ -741,6 +778,8 @@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
+UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
@@ -815,22 +854,24 @@ SUBDIRS =
noinst_HEADERS =
noinst_LIBRARIES =
noinst_LTLIBRARIES = libgnu.la
-EXTRA_DIST = alloca.in.h errno.in.h float.c float.in.h itold.c \
- getdelim.c getline.c $(top_srcdir)/./config.rpath limits.in.h \
- memchr.c memchr.valgrind rawmemchr.c rawmemchr.valgrind \
- arg-nonnull.h c++defs.h warn-on-use.h stddef.in.h stdint.in.h \
- stdio.in.h strchrnul.c strchrnul.valgrind string.in.h \
- strndup.c strnlen.c sys_types.in.h asnprintf.c float+.h \
- printf-args.c printf-args.h printf-parse.c printf-parse.h \
- vasnprintf.c vasnprintf.h asprintf.c vasprintf.c verify.h \
- wchar.in.h
-BUILT_SOURCES = $(ALLOCA_H) $(ERRNO_H) $(FLOAT_H) $(LIMITS_H) \
- $(STDDEF_H) $(STDINT_H) stdio.h string.h sys/types.h wchar.h
+EXTRA_DIST = alloca.in.h attribute.h errno.in.h float.c float.in.h \
+ itold.c getdelim.c getline.c $(top_srcdir)/./config.rpath \
+ inttypes.in.h limits.in.h memchr.c memchr.valgrind rawmemchr.c \
+ rawmemchr.valgrind arg-nonnull.h c++defs.h warn-on-use.h \
+ stddef.in.h stdint.in.h stdio.in.h strchrnul.c \
+ strchrnul.valgrind string.in.h strndup.c strnlen.c \
+ sys_types.in.h asnprintf.c float+.h printf-args.c \
+ printf-args.h printf-parse.c printf-parse.h vasnprintf.c \
+ vasnprintf.h asprintf.c vasprintf.c verify.h wchar.in.h
+BUILT_SOURCES = $(ALLOCA_H) $(ERRNO_H) $(FLOAT_H) inttypes.h \
+ $(LIMITS_H) $(STDDEF_H) $(STDINT_H) stdio.h string.h \
+ sys/types.h wchar.h
SUFFIXES =
MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t errno.h \
- errno.h-t float.h float.h-t limits.h limits.h-t stddef.h \
- stddef.h-t stdint.h stdint.h-t stdio.h stdio.h-t string.h \
- string.h-t sys/types.h sys/types.h-t wchar.h wchar.h-t
+ errno.h-t float.h float.h-t inttypes.h inttypes.h-t limits.h \
+ limits.h-t stddef.h stddef.h-t stdint.h stdint.h-t stdio.h \
+ stdio.h-t string.h string.h-t sys/types.h sys/types.h-t \
+ wchar.h wchar.h-t
MOSTLYCLEANDIRS =
CLEANFILES =
DISTCLEANFILES =
@@ -850,7 +891,7 @@ libgnu_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined $(LTLIBICONV)
# Use this preprocessor expression to decide whether #include_next works.
# Do not rely on a 'configure'-time test for this, since the expression
# might appear in an installed header, which is used by some other compiler.
-HAVE_INCLUDE_NEXT = (__GNUC__ || 60000000 <= __DECC_VER)
+HAVE_INCLUDE_NEXT = (__GNUC__ || __clang__ || 60000000 <= __DECC_VER)
# Because this Makefile snippet defines a variable used by other
# gnulib Makefile snippets, it must be present in all makefiles that
@@ -1139,7 +1180,8 @@ installdirs: installdirs-recursive
installdirs-am:
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-recursive
-install-exec: install-exec-recursive
+install-exec: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
@@ -1275,7 +1317,7 @@ ps-am:
uninstall-am:
.MAKE: $(am__recursive_targets) all check install install-am \
- install-strip
+ install-exec install-strip
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--depfiles check check-am clean clean-generic clean-libtool \
@@ -1345,6 +1387,40 @@ uninstall-am:
@GL_GENERATE_FLOAT_H_FALSE@float.h: $(top_builddir)/config.status
@GL_GENERATE_FLOAT_H_FALSE@ rm -f $@
+# We need the following in order to create <inttypes.h> when the system
+# doesn't have one that works with the given compiler.
+inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H)
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_INTTYPES_H''@|$(NEXT_INTTYPES_H)|g' \
+ -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \
+ -e 's/@''PRIPTR_PREFIX''@/$(PRIPTR_PREFIX)/g' \
+ -e 's/@''GNULIB_IMAXABS''@/$(GNULIB_IMAXABS)/g' \
+ -e 's/@''GNULIB_IMAXDIV''@/$(GNULIB_IMAXDIV)/g' \
+ -e 's/@''GNULIB_STRTOIMAX''@/$(GNULIB_STRTOIMAX)/g' \
+ -e 's/@''GNULIB_STRTOUMAX''@/$(GNULIB_STRTOUMAX)/g' \
+ -e 's/@''HAVE_DECL_IMAXABS''@/$(HAVE_DECL_IMAXABS)/g' \
+ -e 's/@''HAVE_DECL_IMAXDIV''@/$(HAVE_DECL_IMAXDIV)/g' \
+ -e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \
+ -e 's/@''HAVE_DECL_STRTOUMAX''@/$(HAVE_DECL_STRTOUMAX)/g' \
+ -e 's/@''HAVE_IMAXDIV_T''@/$(HAVE_IMAXDIV_T)/g' \
+ -e 's/@''REPLACE_STRTOIMAX''@/$(REPLACE_STRTOIMAX)/g' \
+ -e 's/@''REPLACE_STRTOUMAX''@/$(REPLACE_STRTOUMAX)/g' \
+ -e 's/@''INT32_MAX_LT_INTMAX_MAX''@/$(INT32_MAX_LT_INTMAX_MAX)/g' \
+ -e 's/@''INT64_MAX_EQ_LONG_MAX''@/$(INT64_MAX_EQ_LONG_MAX)/g' \
+ -e 's/@''UINT32_MAX_LT_UINTMAX_MAX''@/$(UINT32_MAX_LT_UINTMAX_MAX)/g' \
+ -e 's/@''UINT64_MAX_EQ_ULONG_MAX''@/$(UINT64_MAX_EQ_ULONG_MAX)/g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ < $(srcdir)/inttypes.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+
# We need the following in order to create <limits.h> when the system
# doesn't have one that is compatible with GNU.
@GL_GENERATE_LIMITS_H_TRUE@limits.h: limits.in.h $(top_builddir)/config.status
@@ -1397,8 +1473,6 @@ uninstall-am:
@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \
@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \
@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \
-@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \
-@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \
@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \
@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \
@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \
@@ -1483,8 +1557,15 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's/@''GNULIB_VPRINTF_POSIX''@/$(GNULIB_VPRINTF_POSIX)/g' \
-e 's/@''GNULIB_VSNPRINTF''@/$(GNULIB_VSNPRINTF)/g' \
-e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GNULIB_VSPRINTF_POSIX)/g' \
+ -e 's/@''GNULIB_MDA_FCLOSEALL''@/$(GNULIB_MDA_FCLOSEALL)/g' \
+ -e 's/@''GNULIB_MDA_FDOPEN''@/$(GNULIB_MDA_FDOPEN)/g' \
+ -e 's/@''GNULIB_MDA_FILENO''@/$(GNULIB_MDA_FILENO)/g' \
+ -e 's/@''GNULIB_MDA_GETW''@/$(GNULIB_MDA_GETW)/g' \
+ -e 's/@''GNULIB_MDA_PUTW''@/$(GNULIB_MDA_PUTW)/g' \
+ -e 's/@''GNULIB_MDA_TEMPNAM''@/$(GNULIB_MDA_TEMPNAM)/g' \
< $(srcdir)/stdio.in.h | \
- sed -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
+ sed -e 's|@''HAVE_DECL_FCLOSEALL''@|$(HAVE_DECL_FCLOSEALL)|g' \
+ -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
-e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \
-e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \
-e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \
@@ -1585,14 +1666,18 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's/@''GNULIB_STRTOK_R''@/$(GNULIB_STRTOK_R)/g' \
-e 's/@''GNULIB_STRERROR''@/$(GNULIB_STRERROR)/g' \
-e 's/@''GNULIB_STRERROR_R''@/$(GNULIB_STRERROR_R)/g' \
+ -e 's/@''GNULIB_STRERRORNAME_NP''@/$(GNULIB_STRERRORNAME_NP)/g' \
+ -e 's/@''GNULIB_SIGABBREV_NP''@/$(GNULIB_SIGABBREV_NP)/g' \
+ -e 's/@''GNULIB_SIGDESCR_NP''@/$(GNULIB_SIGDESCR_NP)/g' \
-e 's/@''GNULIB_STRSIGNAL''@/$(GNULIB_STRSIGNAL)/g' \
-e 's/@''GNULIB_STRVERSCMP''@/$(GNULIB_STRVERSCMP)/g' \
+ -e 's/@''GNULIB_MDA_MEMCCPY''@/$(GNULIB_MDA_MEMCCPY)/g' \
+ -e 's/@''GNULIB_MDA_STRDUP''@/$(GNULIB_MDA_STRDUP)/g' \
< $(srcdir)/string.in.h | \
sed -e 's|@''HAVE_EXPLICIT_BZERO''@|$(HAVE_EXPLICIT_BZERO)|g' \
-e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \
-e 's|@''HAVE_FFSLL''@|$(HAVE_FFSLL)|g' \
-e 's|@''HAVE_MBSLEN''@|$(HAVE_MBSLEN)|g' \
- -e 's|@''HAVE_MEMCHR''@|$(HAVE_MEMCHR)|g' \
-e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \
-e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \
-e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \
@@ -1608,8 +1693,12 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \
-e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \
-e 's|@''HAVE_DECL_STRERROR_R''@|$(HAVE_DECL_STRERROR_R)|g' \
+ -e 's|@''HAVE_STRERRORNAME_NP''@|$(HAVE_STRERRORNAME_NP)|g' \
+ -e 's|@''HAVE_SIGABBREV_NP''@|$(HAVE_SIGABBREV_NP)|g' \
+ -e 's|@''HAVE_SIGDESCR_NP''@|$(HAVE_SIGDESCR_NP)|g' \
-e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \
-e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \
+ -e 's|@''REPLACE_FFSLL''@|$(REPLACE_FFSLL)|g' \
-e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \
-e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \
-e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \
@@ -1623,6 +1712,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \
-e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \
-e 's|@''REPLACE_STRERROR_R''@|$(REPLACE_STRERROR_R)|g' \
+ -e 's|@''REPLACE_STRERRORNAME_NP''@|$(REPLACE_STRERRORNAME_NP)|g' \
-e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \
-e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -1678,6 +1768,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's/@''GNULIB_WMEMCMP''@/$(GNULIB_WMEMCMP)/g' \
-e 's/@''GNULIB_WMEMCPY''@/$(GNULIB_WMEMCPY)/g' \
-e 's/@''GNULIB_WMEMMOVE''@/$(GNULIB_WMEMMOVE)/g' \
+ -e 's/@''GNULIB_WMEMPCPY''@/$(GNULIB_WMEMPCPY)/g' \
-e 's/@''GNULIB_WMEMSET''@/$(GNULIB_WMEMSET)/g' \
-e 's/@''GNULIB_WCSLEN''@/$(GNULIB_WCSLEN)/g' \
-e 's/@''GNULIB_WCSNLEN''@/$(GNULIB_WCSNLEN)/g' \
@@ -1703,6 +1794,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's/@''GNULIB_WCSTOK''@/$(GNULIB_WCSTOK)/g' \
-e 's/@''GNULIB_WCSWIDTH''@/$(GNULIB_WCSWIDTH)/g' \
-e 's/@''GNULIB_WCSFTIME''@/$(GNULIB_WCSFTIME)/g' \
+ -e 's/@''GNULIB_MDA_WCSDUP''@/$(GNULIB_MDA_WCSDUP)/g' \
< $(srcdir)/wchar.in.h | \
sed -e 's|@''HAVE_WINT_T''@|$(HAVE_WINT_T)|g' \
-e 's|@''HAVE_BTOWC''@|$(HAVE_BTOWC)|g' \
@@ -1718,6 +1810,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's|@''HAVE_WMEMCMP''@|$(HAVE_WMEMCMP)|g' \
-e 's|@''HAVE_WMEMCPY''@|$(HAVE_WMEMCPY)|g' \
-e 's|@''HAVE_WMEMMOVE''@|$(HAVE_WMEMMOVE)|g' \
+ -e 's|@''HAVE_WMEMPCPY''@|$(HAVE_WMEMPCPY)|g' \
-e 's|@''HAVE_WMEMSET''@|$(HAVE_WMEMSET)|g' \
-e 's|@''HAVE_WCSLEN''@|$(HAVE_WCSLEN)|g' \
-e 's|@''HAVE_WCSNLEN''@|$(HAVE_WCSNLEN)|g' \
@@ -1744,6 +1837,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's|@''HAVE_WCSWIDTH''@|$(HAVE_WCSWIDTH)|g' \
-e 's|@''HAVE_WCSFTIME''@|$(HAVE_WCSFTIME)|g' \
-e 's|@''HAVE_DECL_WCTOB''@|$(HAVE_DECL_WCTOB)|g' \
+ -e 's|@''HAVE_DECL_WCSDUP''@|$(HAVE_DECL_WCSDUP)|g' \
-e 's|@''HAVE_DECL_WCWIDTH''@|$(HAVE_DECL_WCWIDTH)|g' \
| \
sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \
@@ -1760,6 +1854,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \
-e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \
-e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \
+ -e 's|@''REPLACE_WCSTOK''@|$(REPLACE_WCSTOK)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
-e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
-e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/alloca.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/alloca.in.h
index a581d58f83..0a6137e037 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/alloca.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/alloca.in.h
@@ -1,6 +1,6 @@
/* Memory allocation on the stack.
- Copyright (C) 1995, 1999, 2001-2004, 2006-2019 Free Software Foundation,
+ Copyright (C) 1995, 1999, 2001-2004, 2006-2021 Free Software Foundation,
Inc.
This program is free software; you can redistribute it and/or modify it
@@ -35,13 +35,16 @@
*/
#ifndef alloca
-# ifdef __GNUC__
- /* Some version of mingw have an <alloca.h> that causes trouble when
- included after 'alloca' gets defined as a macro. As a workaround, include
- this <alloca.h> first and define 'alloca' as a macro afterwards. */
-# if (defined _WIN32 && ! defined __CYGWIN__) && @HAVE_ALLOCA_H@
-# include_next <alloca.h>
-# endif
+ /* Some version of mingw have an <alloca.h> that causes trouble when
+ included after 'alloca' gets defined as a macro. As a workaround,
+ include this <alloca.h> first and define 'alloca' as a macro afterwards
+ if needed. */
+# if defined __GNUC__ && (defined _WIN32 && ! defined __CYGWIN__) && @HAVE_ALLOCA_H@
+# include_next <alloca.h>
+# endif
+#endif
+#ifndef alloca
+# if defined __GNUC__ || (__clang_major__ >= 4)
# define alloca __builtin_alloca
# elif defined _AIX
# define alloca __alloca
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/arg-nonnull.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/arg-nonnull.h
index ad8c26c225..5b81b50a87 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/arg-nonnull.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/arg-nonnull.h
@@ -1,5 +1,5 @@
/* A C macro for declaring that specific arguments must not be NULL.
- Copyright (C) 2009-2019 Free Software Foundation, Inc.
+ Copyright (C) 2009-2021 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
@@ -18,7 +18,7 @@
that the values passed as arguments n, ..., m must be non-NULL pointers.
n = 1 stands for the first argument, n = 2 for the second argument etc. */
#ifndef _GL_ARG_NONNULL
-# if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || __GNUC__ > 3
+# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || defined __clang__
# define _GL_ARG_NONNULL(params) __attribute__ ((__nonnull__ params))
# else
# define _GL_ARG_NONNULL(params)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asnprintf.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asnprintf.c
index d2a8c09720..4848443683 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asnprintf.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asnprintf.c
@@ -1,5 +1,5 @@
/* Formatted output to strings.
- Copyright (C) 1999, 2002, 2006, 2009-2019 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002, 2006, 2009-2021 Free Software Foundation, Inc.
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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asprintf.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asprintf.c
index 6cbd062929..891e8b8241 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asprintf.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/asprintf.c
@@ -1,5 +1,5 @@
/* Formatted output to strings.
- Copyright (C) 1999, 2002, 2006-2007, 2009-2019 Free Software Foundation,
+ Copyright (C) 1999, 2002, 2006-2007, 2009-2021 Free Software Foundation,
Inc.
This program is free software; you can redistribute it and/or modify
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/attribute.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/attribute.h
new file mode 100644
index 0000000000..82245279eb
--- /dev/null
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/attribute.h
@@ -0,0 +1,218 @@
+/* ATTRIBUTE_* macros for using attributes in GCC and similar compilers
+
+ Copyright 2020-2021 Free Software Foundation, Inc.
+
+ 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 the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
+
+/* Written by Paul Eggert. */
+
+/* Provide public ATTRIBUTE_* names for the private _GL_ATTRIBUTE_*
+ macros used within Gnulib. */
+
+/* These attributes can be placed in two ways:
+ - At the start of a declaration (i.e. even before storage-class
+ specifiers!); then they apply to all entities that are declared
+ by the declaration.
+ - Immediately after the name of an entity being declared by the
+ declaration; then they apply to that entity only. */
+
+#ifndef _GL_ATTRIBUTE_H
+#define _GL_ATTRIBUTE_H
+
+
+/* This file defines two types of attributes:
+ * C2X standard attributes. These have macro names that do not begin with
+ 'ATTRIBUTE_'.
+ * Selected GCC attributes; see:
+ https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html
+ https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attributes.html
+ https://gcc.gnu.org/onlinedocs/gcc/Common-Type-Attributes.html
+ These names begin with 'ATTRIBUTE_' to avoid name clashes. */
+
+
+/* =============== Attributes for specific kinds of functions =============== */
+
+/* Attributes for functions that should not be used. */
+
+/* Warn if the entity is used. */
+/* Applies to:
+ - function, variable,
+ - struct, union, struct/union member,
+ - enumeration, enumeration item,
+ - typedef,
+ in C++ also: namespace, class, template specialization. */
+#define DEPRECATED _GL_ATTRIBUTE_DEPRECATED
+
+/* If a function call is not optimized way, warn with MSG. */
+/* Applies to: functions. */
+#define ATTRIBUTE_WARNING(msg) _GL_ATTRIBUTE_WARNING (msg)
+
+/* If a function call is not optimized way, report an error with MSG. */
+/* Applies to: functions. */
+#define ATTRIBUTE_ERROR(msg) _GL_ATTRIBUTE_ERROR (msg)
+
+
+/* Attributes for memory-allocating functions. */
+
+/* The function returns a pointer to freshly allocated memory. */
+/* Applies to: functions. */
+#define ATTRIBUTE_MALLOC _GL_ATTRIBUTE_MALLOC
+
+/* ATTRIBUTE_ALLOC_SIZE ((N)) - The Nth argument of the function
+ is the size of the returned memory block.
+ ATTRIBUTE_ALLOC_SIZE ((M, N)) - Multiply the Mth and Nth arguments
+ to determine the size of the returned memory block. */
+/* Applies to: function, pointer to function, function types. */
+#define ATTRIBUTE_ALLOC_SIZE(args) _GL_ATTRIBUTE_ALLOC_SIZE (args)
+
+
+/* Attributes for variadic functions. */
+
+/* The variadic function expects a trailing NULL argument.
+ ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99).
+ ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL. */
+/* Applies to: functions. */
+#define ATTRIBUTE_SENTINEL(pos) _GL_ATTRIBUTE_SENTINEL (pos)
+
+
+/* ================== Attributes for compiler diagnostics ================== */
+
+/* Attributes that help the compiler diagnose programmer mistakes.
+ Some of them may also help for some compiler optimizations. */
+
+/* ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK)) -
+ The STRING-INDEXth function argument is a format string of style
+ ARCHETYPE, which is one of:
+ printf, gnu_printf
+ scanf, gnu_scanf,
+ strftime, gnu_strftime,
+ strfmon,
+ or the same thing prefixed and suffixed with '__'.
+ If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK
+ are suitable for the format string. */
+/* Applies to: functions. */
+#define ATTRIBUTE_FORMAT(spec) _GL_ATTRIBUTE_FORMAT (spec)
+
+/* ATTRIBUTE_NONNULL ((N1, N2,...)) - Arguments N1, N2,... must not be NULL.
+ ATTRIBUTE_NONNULL () - All pointer arguments must not be null. */
+/* Applies to: functions. */
+#define ATTRIBUTE_NONNULL(args) _GL_ATTRIBUTE_NONNULL (args)
+
+/* The function's return value is a non-NULL pointer. */
+/* Applies to: functions. */
+#define ATTRIBUTE_RETURNS_NONNULL _GL_ATTRIBUTE_RETURNS_NONNULL
+
+/* Warn if the caller does not use the return value,
+ unless the caller uses something like ignore_value. */
+/* Applies to: function, enumeration, class. */
+#define NODISCARD _GL_ATTRIBUTE_NODISCARD
+
+
+/* Attributes that disable false alarms when the compiler diagnoses
+ programmer "mistakes". */
+
+/* Do not warn if the entity is not used. */
+/* Applies to:
+ - function, variable,
+ - struct, union, struct/union member,
+ - enumeration, enumeration item,
+ - typedef,
+ in C++ also: class. */
+#define MAYBE_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
+
+/* The contents of a character array is not meant to be NUL-terminated. */
+/* Applies to: struct/union members and variables that are arrays of element
+ type '[[un]signed] char'. */
+#define ATTRIBUTE_NONSTRING _GL_ATTRIBUTE_NONSTRING
+
+/* Do not warn if control flow falls through to the immediately
+ following 'case' or 'default' label. */
+/* Applies to: Empty statement (;), inside a 'switch' statement. */
+#define FALLTHROUGH _GL_ATTRIBUTE_FALLTHROUGH
+
+
+/* ================== Attributes for debugging information ================== */
+
+/* Attributes regarding debugging information emitted by the compiler. */
+
+/* Omit the function from stack traces when debugging. */
+/* Applies to: function. */
+#define ATTRIBUTE_ARTIFICIAL _GL_ATTRIBUTE_ARTIFICIAL
+
+/* Make the entity visible to debuggers etc., even with '-fwhole-program'. */
+/* Applies to: functions, variables. */
+#define ATTRIBUTE_EXTERNALLY_VISIBLE _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
+
+
+/* ========== Attributes that mainly direct compiler optimizations ========== */
+
+/* The function does not throw exceptions. */
+/* Applies to: functions. */
+#define ATTRIBUTE_NOTHROW _GL_ATTRIBUTE_NOTHROW
+
+/* Do not inline the function. */
+/* Applies to: functions. */
+#define ATTRIBUTE_NOINLINE _GL_ATTRIBUTE_NOINLINE
+
+/* Always inline the function, and report an error if the compiler
+ cannot inline. */
+/* Applies to: function. */
+#define ATTRIBUTE_ALWAYS_INLINE _GL_ATTRIBUTE_ALWAYS_INLINE
+
+/* It is OK for a compiler to omit duplicate calls with the same arguments.
+ This attribute is safe for a function that neither depends on
+ nor affects observable state, and always returns exactly once -
+ e.g., does not loop forever, and does not call longjmp.
+ (This attribute is stricter than ATTRIBUTE_PURE.) */
+/* Applies to: functions. */
+#define ATTRIBUTE_CONST _GL_ATTRIBUTE_CONST
+
+/* It is OK for a compiler to omit duplicate calls with the same
+ arguments if observable state is not changed between calls.
+ This attribute is safe for a function that does not affect
+ observable state, and always returns exactly once.
+ (This attribute is looser than ATTRIBUTE_CONST.) */
+/* Applies to: functions. */
+#define ATTRIBUTE_PURE _GL_ATTRIBUTE_PURE
+
+/* The function is rarely executed. */
+/* Applies to: functions. */
+#define ATTRIBUTE_COLD _GL_ATTRIBUTE_COLD
+
+/* If called from some other compilation unit, the function executes
+ code from that unit only by return or by exception handling,
+ letting the compiler optimize that unit more aggressively. */
+/* Applies to: functions. */
+#define ATTRIBUTE_LEAF _GL_ATTRIBUTE_LEAF
+
+/* For struct members: The member has the smallest possible alignment.
+ For struct, union, class: All members have the smallest possible alignment,
+ minimizing the memory required. */
+/* Applies to: struct members, struct, union,
+ in C++ also: class. */
+#define ATTRIBUTE_PACKED _GL_ATTRIBUTE_PACKED
+
+
+/* ================ Attributes that make invalid code valid ================ */
+
+/* Attributes that prevent fatal compiler optimizations for code that is not
+ fully ISO C compliant. */
+
+/* Pointers to the type may point to the same storage as pointers to
+ other types, thus disabling strict aliasing optimization. */
+/* Applies to: types. */
+#define ATTRIBUTE_MAY_ALIAS _GL_ATTRIBUTE_MAY_ALIAS
+
+
+#endif /* _GL_ATTRIBUTE_H */
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/c++defs.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/c++defs.h
index 87d0716723..39df1bc76b 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/c++defs.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/c++defs.h
@@ -1,5 +1,5 @@
/* C++ compatible function declaration macros.
- Copyright (C) 2010-2019 Free Software Foundation, Inc.
+ Copyright (C) 2010-2021 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
@@ -146,6 +146,16 @@
_GL_EXTERN_C int _gl_cxxalias_dummy
#endif
+/* _GL_CXXALIAS_MDA (func, rettype, parameters);
+ is to be used when func is a Microsoft deprecated alias, on native Windows.
+ It declares a C++ alias called GNULIB_NAMESPACE::func
+ that redirects to _func, if GNULIB_NAMESPACE is defined.
+ Example:
+ _GL_CXXALIAS_MDA (open, int, (const char *filename, int flags, ...));
+ */
+#define _GL_CXXALIAS_MDA(func,rettype,parameters) \
+ _GL_CXXALIAS_RPL_1 (func, _##func, rettype, parameters)
+
/* _GL_CXXALIAS_RPL_CAST_1 (func, rpl_func, rettype, parameters);
is like _GL_CXXALIAS_RPL_1 (func, rpl_func, rettype, parameters);
except that the C function rpl_func may have a slightly different
@@ -171,6 +181,14 @@
_GL_EXTERN_C int _gl_cxxalias_dummy
#endif
+/* _GL_CXXALIAS_MDA_CAST (func, rettype, parameters);
+ is like _GL_CXXALIAS_MDA (func, rettype, parameters);
+ except that the C function func may have a slightly different declaration.
+ A cast is used to silence the "invalid conversion" error that would
+ otherwise occur. */
+#define _GL_CXXALIAS_MDA_CAST(func,rettype,parameters) \
+ _GL_CXXALIAS_RPL_CAST_1 (func, _##func, rettype, parameters)
+
/* _GL_CXXALIAS_SYS (func, rettype, parameters);
declares a C++ alias called GNULIB_NAMESPACE::func
that redirects to the system provided function func, if GNULIB_NAMESPACE
@@ -268,7 +286,7 @@
_GL_CXXALIASWARN_2 (func, namespace)
/* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
we enable the warning only when not optimizing. */
-# if !__OPTIMIZE__
+# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
# define _GL_CXXALIASWARN_2(func,namespace) \
_GL_WARN_ON_USE (func, \
"The symbol ::" #func " refers to the system function. " \
@@ -296,14 +314,11 @@
_GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace)
/* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
we enable the warning only when not optimizing. */
-# if !__OPTIMIZE__
+# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \
- _GL_WARN_ON_USE_CXX (func, rettype, parameters_and_attributes, \
+ _GL_WARN_ON_USE_CXX (func, rettype, rettype, parameters_and_attributes, \
"The symbol ::" #func " refers to the system function. " \
"Use " #namespace "::" #func " instead.")
-# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING
-# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \
- extern __typeof__ (func) func
# else
# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \
_GL_EXTERN_C int _gl_cxxalias_dummy
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/errno.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/errno.in.h
index 3bd27f1cc9..c6ab4e88e1 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/errno.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/errno.in.h
@@ -1,6 +1,6 @@
/* A POSIX-like <errno.h>.
- Copyright (C) 2008-2019 Free Software Foundation, Inc.
+ Copyright (C) 2008-2021 Free Software Foundation, Inc.
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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float+.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float+.h
index 5af861f7ae..97c0b0aa25 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float+.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float+.h
@@ -1,5 +1,5 @@
/* Supplemental information about the floating-point formats.
- Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2007.
This program is free software; you can redistribute it and/or modify
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.c
index 8872deb592..6ef47a440e 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.c
@@ -1,5 +1,5 @@
/* Auxiliary definitions for <float.h>.
- Copyright (C) 2011-2019 Free Software Foundation, Inc.
+ Copyright (C) 2011-2021 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2011.
This program is free software: you can redistribute it and/or modify
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.in.h
index ba094a8ef5..d2ac0cd26f 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/float.in.h
@@ -1,6 +1,6 @@
/* A correct <float.h>.
- Copyright (C) 2007-2019 Free Software Foundation, Inc.
+ Copyright (C) 2007-2021 Free Software Foundation, Inc.
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
@@ -93,11 +93,14 @@
extern const long double LDBL_MAX;
Unfortunately, this is not a constant expression. */
+# if !GNULIB_defined_long_double_union
union gl_long_double_union
{
struct { unsigned int lo; unsigned int hi; unsigned int exponent; } xd;
long double ld;
};
+# define GNULIB_defined_long_double_union 1
+# endif
extern const union gl_long_double_union gl_LDBL_MAX;
# define LDBL_MAX (gl_LDBL_MAX.ld)
/* Minimum e such that 10^e is in the range of normalized numbers. */
@@ -146,11 +149,14 @@ extern const union gl_long_double_union gl_LDBL_MAX;
Unfortunately, this is not a constant expression, and the latter expression
does not work well when GCC is optimizing.. */
+# if !GNULIB_defined_long_double_union
union gl_long_double_union
{
struct { double hi; double lo; } dd;
long double ld;
};
+# define GNULIB_defined_long_double_union 1
+# endif
extern const union gl_long_double_union gl_LDBL_MAX;
# define LDBL_MAX (gl_LDBL_MAX.ld)
#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getdelim.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getdelim.c
index 528678c252..4bebc004da 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getdelim.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getdelim.c
@@ -1,5 +1,5 @@
/* getdelim.c --- Implementation of replacement getdelim function.
- Copyright (C) 1994, 1996-1998, 2001, 2003, 2005-2019 Free Software
+ Copyright (C) 1994, 1996-1998, 2001, 2003, 2005-2021 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getline.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getline.c
index 40882fb218..a72cb18044 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getline.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/getline.c
@@ -1,5 +1,5 @@
/* getline.c --- Implementation of replacement getline function.
- Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc.
+ Copyright (C) 2005-2007, 2009-2021 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/inttypes.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/inttypes.in.h
new file mode 100644
index 0000000000..e9ee500e3e
--- /dev/null
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/inttypes.in.h
@@ -0,0 +1,1002 @@
+/* Copyright (C) 2006-2021 Free Software Foundation, Inc.
+ Written by Paul Eggert, Bruno Haible, Derek Price.
+ This file is part of gnulib.
+
+ 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
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
+
+/*
+ * ISO C 99 <inttypes.h> for platforms that lack it.
+ * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/inttypes.h.html>
+ */
+
+#if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+#endif
+@PRAGMA_COLUMNS@
+
+/* Include the original <inttypes.h> if it exists, and if this file
+ has not been included yet or if this file includes gnulib stdint.h
+ which in turn includes this file.
+ The include_next requires a split double-inclusion guard. */
+#if ! defined INTTYPES_H || defined _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H
+# if @HAVE_INTTYPES_H@
+
+ /* Some pre-C++11 <stdint.h> implementations need this. */
+# if defined __cplusplus && ! defined __STDC_FORMAT_MACROS
+# define __STDC_FORMAT_MACROS 1
+# endif
+
+# @INCLUDE_NEXT@ @NEXT_INTTYPES_H@
+
+# define _GL_FINISHED_INCLUDING_SYSTEM_INTTYPES_H
+# endif
+#endif
+
+#if ! defined INTTYPES_H && ! defined _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H
+#define INTTYPES_H
+
+/* Include <stdint.h> or the gnulib replacement.
+ But avoid namespace pollution on glibc systems. */
+#ifndef __GLIBC__
+# include <stdint.h>
+#endif
+/* Get CHAR_BIT, INT_MAX, LONG_MAX, etc. */
+#include <limits.h>
+/* On mingw, __USE_MINGW_ANSI_STDIO only works if <stdio.h> is also included */
+#if defined _WIN32 && ! defined __CYGWIN__
+# include <stdio.h>
+#endif
+
+#if !(INT_MAX == 0x7fffffff && INT_MIN + INT_MAX == -1)
+# error "This file assumes that 'int' is 32-bit two's complement. Please report your platform and compiler to <bug-gnulib@gnu.org>."
+#endif
+
+/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
+
+/* The definition of _GL_ARG_NONNULL is copied here. */
+
+/* The definition of _GL_WARN_ON_USE is copied here. */
+
+/* 7.8.1 Macros for format specifiers */
+
+#if defined _TNS_R_TARGET
+ /* Tandem NonStop R series and compatible platforms released before
+ July 2005 support %Ld but not %lld. */
+# define _LONG_LONG_FORMAT_PREFIX "L"
+#else
+# define _LONG_LONG_FORMAT_PREFIX "ll"
+#endif
+
+#if !defined PRId8
+# ifdef INT8_MAX
+# define PRId8 "d"
+# endif
+#endif
+#if !defined PRIi8
+# ifdef INT8_MAX
+# define PRIi8 "i"
+# endif
+#endif
+#if !defined PRIo8
+# ifdef UINT8_MAX
+# define PRIo8 "o"
+# endif
+#endif
+#if !defined PRIu8
+# ifdef UINT8_MAX
+# define PRIu8 "u"
+# endif
+#endif
+#if !defined PRIx8
+# ifdef UINT8_MAX
+# define PRIx8 "x"
+# endif
+#endif
+#if !defined PRIX8
+# ifdef UINT8_MAX
+# define PRIX8 "X"
+# endif
+#endif
+#if !defined PRId16
+# ifdef INT16_MAX
+# define PRId16 "d"
+# endif
+#endif
+#if !defined PRIi16
+# ifdef INT16_MAX
+# define PRIi16 "i"
+# endif
+#endif
+#if !defined PRIo16
+# ifdef UINT16_MAX
+# define PRIo16 "o"
+# endif
+#endif
+#if !defined PRIu16
+# ifdef UINT16_MAX
+# define PRIu16 "u"
+# endif
+#endif
+#if !defined PRIx16
+# ifdef UINT16_MAX
+# define PRIx16 "x"
+# endif
+#endif
+#if !defined PRIX16
+# ifdef UINT16_MAX
+# define PRIX16 "X"
+# endif
+#endif
+#if !defined PRId32
+# ifdef INT32_MAX
+# define PRId32 "d"
+# endif
+#endif
+#if !defined PRIi32
+# ifdef INT32_MAX
+# define PRIi32 "i"
+# endif
+#endif
+#if !defined PRIo32
+# ifdef UINT32_MAX
+# define PRIo32 "o"
+# endif
+#endif
+#if !defined PRIu32
+# ifdef UINT32_MAX
+# define PRIu32 "u"
+# endif
+#endif
+#if !defined PRIx32
+# ifdef UINT32_MAX
+# define PRIx32 "x"
+# endif
+#endif
+#if !defined PRIX32
+# ifdef UINT32_MAX
+# define PRIX32 "X"
+# endif
+#endif
+#ifdef INT64_MAX
+# if (@APPLE_UNIVERSAL_BUILD@ ? defined _LP64 : @INT64_MAX_EQ_LONG_MAX@)
+# define _PRI64_PREFIX "l"
+# elif defined _MSC_VER || defined __MINGW32__
+# define _PRI64_PREFIX "I64"
+# elif LONG_MAX >> 30 == 1
+# define _PRI64_PREFIX _LONG_LONG_FORMAT_PREFIX
+# endif
+# if !defined PRId64
+# define PRId64 _PRI64_PREFIX "d"
+# endif
+# if !defined PRIi64
+# define PRIi64 _PRI64_PREFIX "i"
+# endif
+#endif
+#ifdef UINT64_MAX
+# if (@APPLE_UNIVERSAL_BUILD@ ? defined _LP64 : @UINT64_MAX_EQ_ULONG_MAX@)
+# define _PRIu64_PREFIX "l"
+# elif defined _MSC_VER || defined __MINGW32__
+# define _PRIu64_PREFIX "I64"
+# elif ULONG_MAX >> 31 == 1
+# define _PRIu64_PREFIX _LONG_LONG_FORMAT_PREFIX
+# endif
+# if !defined PRIo64
+# define PRIo64 _PRIu64_PREFIX "o"
+# endif
+# if !defined PRIu64
+# define PRIu64 _PRIu64_PREFIX "u"
+# endif
+# if !defined PRIx64
+# define PRIx64 _PRIu64_PREFIX "x"
+# endif
+# if !defined PRIX64
+# define PRIX64 _PRIu64_PREFIX "X"
+# endif
+#endif
+
+#if !defined PRIdLEAST8
+# define PRIdLEAST8 "d"
+#endif
+#if !defined PRIiLEAST8
+# define PRIiLEAST8 "i"
+#endif
+#if !defined PRIoLEAST8
+# define PRIoLEAST8 "o"
+#endif
+#if !defined PRIuLEAST8
+# define PRIuLEAST8 "u"
+#endif
+#if !defined PRIxLEAST8
+# define PRIxLEAST8 "x"
+#endif
+#if !defined PRIXLEAST8
+# define PRIXLEAST8 "X"
+#endif
+#if !defined PRIdLEAST16
+# define PRIdLEAST16 "d"
+#endif
+#if !defined PRIiLEAST16
+# define PRIiLEAST16 "i"
+#endif
+#if !defined PRIoLEAST16
+# define PRIoLEAST16 "o"
+#endif
+#if !defined PRIuLEAST16
+# define PRIuLEAST16 "u"
+#endif
+#if !defined PRIxLEAST16
+# define PRIxLEAST16 "x"
+#endif
+#if !defined PRIXLEAST16
+# define PRIXLEAST16 "X"
+#endif
+#if !defined PRIdLEAST32
+# define PRIdLEAST32 "d"
+#endif
+#if !defined PRIiLEAST32
+# define PRIiLEAST32 "i"
+#endif
+#if !defined PRIoLEAST32
+# define PRIoLEAST32 "o"
+#endif
+#if !defined PRIuLEAST32
+# define PRIuLEAST32 "u"
+#endif
+#if !defined PRIxLEAST32
+# define PRIxLEAST32 "x"
+#endif
+#if !defined PRIXLEAST32
+# define PRIXLEAST32 "X"
+#endif
+#ifdef INT64_MAX
+# if !defined PRIdLEAST64
+# define PRIdLEAST64 PRId64
+# endif
+# if !defined PRIiLEAST64
+# define PRIiLEAST64 PRIi64
+# endif
+#endif
+#ifdef UINT64_MAX
+# if !defined PRIoLEAST64
+# define PRIoLEAST64 PRIo64
+# endif
+# if !defined PRIuLEAST64
+# define PRIuLEAST64 PRIu64
+# endif
+# if !defined PRIxLEAST64
+# define PRIxLEAST64 PRIx64
+# endif
+# if !defined PRIXLEAST64
+# define PRIXLEAST64 PRIX64
+# endif
+#endif
+
+#if !defined PRIdFAST8
+# if INT_FAST8_MAX > INT32_MAX
+# define PRIdFAST8 PRId64
+# else
+# define PRIdFAST8 "d"
+# endif
+#endif
+#if !defined PRIiFAST8
+# if INT_FAST8_MAX > INT32_MAX
+# define PRIiFAST8 PRIi64
+# else
+# define PRIiFAST8 "i"
+# endif
+#endif
+#if !defined PRIoFAST8
+# if UINT_FAST8_MAX > UINT32_MAX
+# define PRIoFAST8 PRIo64
+# else
+# define PRIoFAST8 "o"
+# endif
+#endif
+#if !defined PRIuFAST8
+# if UINT_FAST8_MAX > UINT32_MAX
+# define PRIuFAST8 PRIu64
+# else
+# define PRIuFAST8 "u"
+# endif
+#endif
+#if !defined PRIxFAST8
+# if UINT_FAST8_MAX > UINT32_MAX
+# define PRIxFAST8 PRIx64
+# else
+# define PRIxFAST8 "x"
+# endif
+#endif
+#if !defined PRIXFAST8
+# if UINT_FAST8_MAX > UINT32_MAX
+# define PRIXFAST8 PRIX64
+# else
+# define PRIXFAST8 "X"
+# endif
+#endif
+#if !defined PRIdFAST16
+# if INT_FAST16_MAX > INT32_MAX
+# define PRIdFAST16 PRId64
+# else
+# define PRIdFAST16 "d"
+# endif
+#endif
+#if !defined PRIiFAST16
+# if INT_FAST16_MAX > INT32_MAX
+# define PRIiFAST16 PRIi64
+# else
+# define PRIiFAST16 "i"
+# endif
+#endif
+#if !defined PRIoFAST16
+# if UINT_FAST16_MAX > UINT32_MAX
+# define PRIoFAST16 PRIo64
+# else
+# define PRIoFAST16 "o"
+# endif
+#endif
+#if !defined PRIuFAST16
+# if UINT_FAST16_MAX > UINT32_MAX
+# define PRIuFAST16 PRIu64
+# else
+# define PRIuFAST16 "u"
+# endif
+#endif
+#if !defined PRIxFAST16
+# if UINT_FAST16_MAX > UINT32_MAX
+# define PRIxFAST16 PRIx64
+# else
+# define PRIxFAST16 "x"
+# endif
+#endif
+#if !defined PRIXFAST16
+# if UINT_FAST16_MAX > UINT32_MAX
+# define PRIXFAST16 PRIX64
+# else
+# define PRIXFAST16 "X"
+# endif
+#endif
+#if !defined PRIdFAST32
+# if INT_FAST32_MAX > INT32_MAX
+# define PRIdFAST32 PRId64
+# else
+# define PRIdFAST32 "d"
+# endif
+#endif
+#if !defined PRIiFAST32
+# if INT_FAST32_MAX > INT32_MAX
+# define PRIiFAST32 PRIi64
+# else
+# define PRIiFAST32 "i"
+# endif
+#endif
+#if !defined PRIoFAST32
+# if UINT_FAST32_MAX > UINT32_MAX
+# define PRIoFAST32 PRIo64
+# else
+# define PRIoFAST32 "o"
+# endif
+#endif
+#if !defined PRIuFAST32
+# if UINT_FAST32_MAX > UINT32_MAX
+# define PRIuFAST32 PRIu64
+# else
+# define PRIuFAST32 "u"
+# endif
+#endif
+#if !defined PRIxFAST32
+# if UINT_FAST32_MAX > UINT32_MAX
+# define PRIxFAST32 PRIx64
+# else
+# define PRIxFAST32 "x"
+# endif
+#endif
+#if !defined PRIXFAST32
+# if UINT_FAST32_MAX > UINT32_MAX
+# define PRIXFAST32 PRIX64
+# else
+# define PRIXFAST32 "X"
+# endif
+#endif
+#ifdef INT64_MAX
+# if !defined PRIdFAST64
+# define PRIdFAST64 PRId64
+# endif
+# if !defined PRIiFAST64
+# define PRIiFAST64 PRIi64
+# endif
+#endif
+#ifdef UINT64_MAX
+# if !defined PRIoFAST64
+# define PRIoFAST64 PRIo64
+# endif
+# if !defined PRIuFAST64
+# define PRIuFAST64 PRIu64
+# endif
+# if !defined PRIxFAST64
+# define PRIxFAST64 PRIx64
+# endif
+# if !defined PRIXFAST64
+# define PRIXFAST64 PRIX64
+# endif
+#endif
+
+#if !defined PRIdMAX
+# if @INT32_MAX_LT_INTMAX_MAX@
+# define PRIdMAX PRId64
+# else
+# define PRIdMAX "ld"
+# endif
+#endif
+#if !defined PRIiMAX
+# if @INT32_MAX_LT_INTMAX_MAX@
+# define PRIiMAX PRIi64
+# else
+# define PRIiMAX "li"
+# endif
+#endif
+#if !defined PRIoMAX
+# if @UINT32_MAX_LT_UINTMAX_MAX@
+# define PRIoMAX PRIo64
+# else
+# define PRIoMAX "lo"
+# endif
+#endif
+#if !defined PRIuMAX
+# if @UINT32_MAX_LT_UINTMAX_MAX@
+# define PRIuMAX PRIu64
+# else
+# define PRIuMAX "lu"
+# endif
+#endif
+#if !defined PRIxMAX
+# if @UINT32_MAX_LT_UINTMAX_MAX@
+# define PRIxMAX PRIx64
+# else
+# define PRIxMAX "lx"
+# endif
+#endif
+#if !defined PRIXMAX
+# if @UINT32_MAX_LT_UINTMAX_MAX@
+# define PRIXMAX PRIX64
+# else
+# define PRIXMAX "lX"
+# endif
+#endif
+
+#if !defined PRIdPTR
+# ifdef INTPTR_MAX
+# define PRIdPTR @PRIPTR_PREFIX@ "d"
+# endif
+#endif
+#if !defined PRIiPTR
+# ifdef INTPTR_MAX
+# define PRIiPTR @PRIPTR_PREFIX@ "i"
+# endif
+#endif
+#if !defined PRIoPTR
+# ifdef UINTPTR_MAX
+# define PRIoPTR @PRIPTR_PREFIX@ "o"
+# endif
+#endif
+#if !defined PRIuPTR
+# ifdef UINTPTR_MAX
+# define PRIuPTR @PRIPTR_PREFIX@ "u"
+# endif
+#endif
+#if !defined PRIxPTR
+# ifdef UINTPTR_MAX
+# define PRIxPTR @PRIPTR_PREFIX@ "x"
+# endif
+#endif
+#if !defined PRIXPTR
+# ifdef UINTPTR_MAX
+# define PRIXPTR @PRIPTR_PREFIX@ "X"
+# endif
+#endif
+
+#if !defined SCNd8
+# ifdef INT8_MAX
+# define SCNd8 "hhd"
+# endif
+#endif
+#if !defined SCNi8
+# ifdef INT8_MAX
+# define SCNi8 "hhi"
+# endif
+#endif
+#if !defined SCNo8
+# ifdef UINT8_MAX
+# define SCNo8 "hho"
+# endif
+#endif
+#if !defined SCNu8
+# ifdef UINT8_MAX
+# define SCNu8 "hhu"
+# endif
+#endif
+#if !defined SCNx8
+# ifdef UINT8_MAX
+# define SCNx8 "hhx"
+# endif
+#endif
+#if !defined SCNd16
+# ifdef INT16_MAX
+# define SCNd16 "hd"
+# endif
+#endif
+#if !defined SCNi16
+# ifdef INT16_MAX
+# define SCNi16 "hi"
+# endif
+#endif
+#if !defined SCNo16
+# ifdef UINT16_MAX
+# define SCNo16 "ho"
+# endif
+#endif
+#if !defined SCNu16
+# ifdef UINT16_MAX
+# define SCNu16 "hu"
+# endif
+#endif
+#if !defined SCNx16
+# ifdef UINT16_MAX
+# define SCNx16 "hx"
+# endif
+#endif
+#if !defined SCNd32
+# ifdef INT32_MAX
+# define SCNd32 "d"
+# endif
+#endif
+#if !defined SCNi32
+# ifdef INT32_MAX
+# define SCNi32 "i"
+# endif
+#endif
+#if !defined SCNo32
+# ifdef UINT32_MAX
+# define SCNo32 "o"
+# endif
+#endif
+#if !defined SCNu32
+# ifdef UINT32_MAX
+# define SCNu32 "u"
+# endif
+#endif
+#if !defined SCNx32
+# ifdef UINT32_MAX
+# define SCNx32 "x"
+# endif
+#endif
+#ifdef INT64_MAX
+# if (@APPLE_UNIVERSAL_BUILD@ ? defined _LP64 : @INT64_MAX_EQ_LONG_MAX@)
+# define _SCN64_PREFIX "l"
+# elif defined _MSC_VER || defined __MINGW32__
+# define _SCN64_PREFIX "I64"
+# elif LONG_MAX >> 30 == 1
+# define _SCN64_PREFIX _LONG_LONG_FORMAT_PREFIX
+# endif
+# if !defined SCNd64
+# define SCNd64 _SCN64_PREFIX "d"
+# endif
+# if !defined SCNi64
+# define SCNi64 _SCN64_PREFIX "i"
+# endif
+#endif
+#ifdef UINT64_MAX
+# if (@APPLE_UNIVERSAL_BUILD@ ? defined _LP64 : @UINT64_MAX_EQ_ULONG_MAX@)
+# define _SCNu64_PREFIX "l"
+# elif defined _MSC_VER || defined __MINGW32__
+# define _SCNu64_PREFIX "I64"
+# elif ULONG_MAX >> 31 == 1
+# define _SCNu64_PREFIX _LONG_LONG_FORMAT_PREFIX
+# endif
+# if !defined SCNo64
+# define SCNo64 _SCNu64_PREFIX "o"
+# endif
+# if !defined SCNu64
+# define SCNu64 _SCNu64_PREFIX "u"
+# endif
+# if !defined SCNx64
+# define SCNx64 _SCNu64_PREFIX "x"
+# endif
+#endif
+
+#if !defined SCNdLEAST8
+# define SCNdLEAST8 "hhd"
+#endif
+#if !defined SCNiLEAST8
+# define SCNiLEAST8 "hhi"
+#endif
+#if !defined SCNoLEAST8
+# define SCNoLEAST8 "hho"
+#endif
+#if !defined SCNuLEAST8
+# define SCNuLEAST8 "hhu"
+#endif
+#if !defined SCNxLEAST8
+# define SCNxLEAST8 "hhx"
+#endif
+#if !defined SCNdLEAST16
+# define SCNdLEAST16 "hd"
+#endif
+#if !defined SCNiLEAST16
+# define SCNiLEAST16 "hi"
+#endif
+#if !defined SCNoLEAST16
+# define SCNoLEAST16 "ho"
+#endif
+#if !defined SCNuLEAST16
+# define SCNuLEAST16 "hu"
+#endif
+#if !defined SCNxLEAST16
+# define SCNxLEAST16 "hx"
+#endif
+#if !defined SCNdLEAST32
+# define SCNdLEAST32 "d"
+#endif
+#if !defined SCNiLEAST32
+# define SCNiLEAST32 "i"
+#endif
+#if !defined SCNoLEAST32
+# define SCNoLEAST32 "o"
+#endif
+#if !defined SCNuLEAST32
+# define SCNuLEAST32 "u"
+#endif
+#if !defined SCNxLEAST32
+# define SCNxLEAST32 "x"
+#endif
+#ifdef INT64_MAX
+# if !defined SCNdLEAST64
+# define SCNdLEAST64 SCNd64
+# endif
+# if !defined SCNiLEAST64
+# define SCNiLEAST64 SCNi64
+# endif
+#endif
+#ifdef UINT64_MAX
+# if !defined SCNoLEAST64
+# define SCNoLEAST64 SCNo64
+# endif
+# if !defined SCNuLEAST64
+# define SCNuLEAST64 SCNu64
+# endif
+# if !defined SCNxLEAST64
+# define SCNxLEAST64 SCNx64
+# endif
+#endif
+
+#if !defined SCNdFAST8
+# if INT_FAST8_MAX > INT32_MAX
+# define SCNdFAST8 SCNd64
+# elif INT_FAST8_MAX == 0x7fff
+# define SCNdFAST8 "hd"
+# elif INT_FAST8_MAX == 0x7f
+# define SCNdFAST8 "hhd"
+# else
+# define SCNdFAST8 "d"
+# endif
+#endif
+#if !defined SCNiFAST8
+# if INT_FAST8_MAX > INT32_MAX
+# define SCNiFAST8 SCNi64
+# elif INT_FAST8_MAX == 0x7fff
+# define SCNiFAST8 "hi"
+# elif INT_FAST8_MAX == 0x7f
+# define SCNiFAST8 "hhi"
+# else
+# define SCNiFAST8 "i"
+# endif
+#endif
+#if !defined SCNoFAST8
+# if UINT_FAST8_MAX > UINT32_MAX
+# define SCNoFAST8 SCNo64
+# elif UINT_FAST8_MAX == 0xffff
+# define SCNoFAST8 "ho"
+# elif UINT_FAST8_MAX == 0xff
+# define SCNoFAST8 "hho"
+# else
+# define SCNoFAST8 "o"
+# endif
+#endif
+#if !defined SCNuFAST8
+# if UINT_FAST8_MAX > UINT32_MAX
+# define SCNuFAST8 SCNu64
+# elif UINT_FAST8_MAX == 0xffff
+# define SCNuFAST8 "hu"
+# elif UINT_FAST8_MAX == 0xff
+# define SCNuFAST8 "hhu"
+# else
+# define SCNuFAST8 "u"
+# endif
+#endif
+#if !defined SCNxFAST8
+# if UINT_FAST8_MAX > UINT32_MAX
+# define SCNxFAST8 SCNx64
+# elif UINT_FAST8_MAX == 0xffff
+# define SCNxFAST8 "hx"
+# elif UINT_FAST8_MAX == 0xff
+# define SCNxFAST8 "hhx"
+# else
+# define SCNxFAST8 "x"
+# endif
+#endif
+#if !defined SCNdFAST16
+# if INT_FAST16_MAX > INT32_MAX
+# define SCNdFAST16 SCNd64
+# elif INT_FAST16_MAX == 0x7fff
+# define SCNdFAST16 "hd"
+# else
+# define SCNdFAST16 "d"
+# endif
+#endif
+#if !defined SCNiFAST16
+# if INT_FAST16_MAX > INT32_MAX
+# define SCNiFAST16 SCNi64
+# elif INT_FAST16_MAX == 0x7fff
+# define SCNiFAST16 "hi"
+# else
+# define SCNiFAST16 "i"
+# endif
+#endif
+#if !defined SCNoFAST16
+# if UINT_FAST16_MAX > UINT32_MAX
+# define SCNoFAST16 SCNo64
+# elif UINT_FAST16_MAX == 0xffff
+# define SCNoFAST16 "ho"
+# else
+# define SCNoFAST16 "o"
+# endif
+#endif
+#if !defined SCNuFAST16
+# if UINT_FAST16_MAX > UINT32_MAX
+# define SCNuFAST16 SCNu64
+# elif UINT_FAST16_MAX == 0xffff
+# define SCNuFAST16 "hu"
+# else
+# define SCNuFAST16 "u"
+# endif
+#endif
+#if !defined SCNxFAST16
+# if UINT_FAST16_MAX > UINT32_MAX
+# define SCNxFAST16 SCNx64
+# elif UINT_FAST16_MAX == 0xffff
+# define SCNxFAST16 "hx"
+# else
+# define SCNxFAST16 "x"
+# endif
+#endif
+#if !defined SCNdFAST32
+# if INT_FAST32_MAX > INT32_MAX
+# define SCNdFAST32 SCNd64
+# else
+# define SCNdFAST32 "d"
+# endif
+#endif
+#if !defined SCNiFAST32
+# if INT_FAST32_MAX > INT32_MAX
+# define SCNiFAST32 SCNi64
+# else
+# define SCNiFAST32 "i"
+# endif
+#endif
+#if !defined SCNoFAST32
+# if UINT_FAST32_MAX > UINT32_MAX
+# define SCNoFAST32 SCNo64
+# else
+# define SCNoFAST32 "o"
+# endif
+#endif
+#if !defined SCNuFAST32
+# if UINT_FAST32_MAX > UINT32_MAX
+# define SCNuFAST32 SCNu64
+# else
+# define SCNuFAST32 "u"
+# endif
+#endif
+#if !defined SCNxFAST32
+# if UINT_FAST32_MAX > UINT32_MAX
+# define SCNxFAST32 SCNx64
+# else
+# define SCNxFAST32 "x"
+# endif
+#endif
+#ifdef INT64_MAX
+# if !defined SCNdFAST64
+# define SCNdFAST64 SCNd64
+# endif
+# if !defined SCNiFAST64
+# define SCNiFAST64 SCNi64
+# endif
+#endif
+#ifdef UINT64_MAX
+# if !defined SCNoFAST64
+# define SCNoFAST64 SCNo64
+# endif
+# if !defined SCNuFAST64
+# define SCNuFAST64 SCNu64
+# endif
+# if !defined SCNxFAST64
+# define SCNxFAST64 SCNx64
+# endif
+#endif
+
+#if !defined SCNdMAX
+# if @INT32_MAX_LT_INTMAX_MAX@
+# define SCNdMAX SCNd64
+# else
+# define SCNdMAX "ld"
+# endif
+#endif
+#if !defined SCNiMAX
+# if @INT32_MAX_LT_INTMAX_MAX@
+# define SCNiMAX SCNi64
+# else
+# define SCNiMAX "li"
+# endif
+#endif
+#if !defined SCNoMAX
+# if @UINT32_MAX_LT_UINTMAX_MAX@
+# define SCNoMAX SCNo64
+# else
+# define SCNoMAX "lo"
+# endif
+#endif
+#if !defined SCNuMAX
+# if @UINT32_MAX_LT_UINTMAX_MAX@
+# define SCNuMAX SCNu64
+# else
+# define SCNuMAX "lu"
+# endif
+#endif
+#if !defined SCNxMAX
+# if @UINT32_MAX_LT_UINTMAX_MAX@
+# define SCNxMAX SCNx64
+# else
+# define SCNxMAX "lx"
+# endif
+#endif
+
+#if !defined SCNdPTR
+# ifdef INTPTR_MAX
+# define SCNdPTR @PRIPTR_PREFIX@ "d"
+# endif
+#endif
+#if !defined SCNiPTR
+# ifdef INTPTR_MAX
+# define SCNiPTR @PRIPTR_PREFIX@ "i"
+# endif
+#endif
+#if !defined SCNoPTR
+# ifdef UINTPTR_MAX
+# define SCNoPTR @PRIPTR_PREFIX@ "o"
+# endif
+#endif
+#if !defined SCNuPTR
+# ifdef UINTPTR_MAX
+# define SCNuPTR @PRIPTR_PREFIX@ "u"
+# endif
+#endif
+#if !defined SCNxPTR
+# ifdef UINTPTR_MAX
+# define SCNxPTR @PRIPTR_PREFIX@ "x"
+# endif
+#endif
+
+/* 7.8.2 Functions for greatest-width integer types */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if @GNULIB_IMAXABS@
+# if !@HAVE_DECL_IMAXABS@
+extern intmax_t imaxabs (intmax_t);
+# endif
+#elif defined GNULIB_POSIXCHECK
+# undef imaxabs
+# if HAVE_RAW_DECL_IMAXABS
+_GL_WARN_ON_USE (imaxabs, "imaxabs is unportable - "
+ "use gnulib module imaxabs for portability");
+# endif
+#endif
+
+#if @GNULIB_IMAXDIV@
+# if !@HAVE_IMAXDIV_T@
+# if !GNULIB_defined_imaxdiv_t
+typedef struct { intmax_t quot; intmax_t rem; } imaxdiv_t;
+# define GNULIB_defined_imaxdiv_t 1
+# endif
+# endif
+# if !@HAVE_DECL_IMAXDIV@
+extern imaxdiv_t imaxdiv (intmax_t, intmax_t);
+# endif
+#elif defined GNULIB_POSIXCHECK
+# undef imaxdiv
+# if HAVE_RAW_DECL_IMAXDIV
+_GL_WARN_ON_USE (imaxdiv, "imaxdiv is unportable - "
+ "use gnulib module imaxdiv for portability");
+# endif
+#endif
+
+#if @GNULIB_STRTOIMAX@
+# if @REPLACE_STRTOIMAX@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef strtoimax
+# define strtoimax rpl_strtoimax
+# endif
+_GL_FUNCDECL_RPL (strtoimax, intmax_t,
+ (const char *restrict, char **restrict, int)
+ _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (strtoimax, intmax_t,
+ (const char *restrict, char **restrict, int));
+# else
+# if !@HAVE_DECL_STRTOIMAX@
+# undef strtoimax
+_GL_FUNCDECL_SYS (strtoimax, intmax_t,
+ (const char *restrict, char **restrict, int)
+ _GL_ARG_NONNULL ((1)));
+# endif
+_GL_CXXALIAS_SYS (strtoimax, intmax_t,
+ (const char *restrict, char **restrict, int));
+# endif
+_GL_CXXALIASWARN (strtoimax);
+#elif defined GNULIB_POSIXCHECK
+# undef strtoimax
+# if HAVE_RAW_DECL_STRTOIMAX
+_GL_WARN_ON_USE (strtoimax, "strtoimax is unportable - "
+ "use gnulib module strtoimax for portability");
+# endif
+#endif
+
+#if @GNULIB_STRTOUMAX@
+# if @REPLACE_STRTOUMAX@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef strtoumax
+# define strtoumax rpl_strtoumax
+# endif
+_GL_FUNCDECL_RPL (strtoumax, uintmax_t,
+ (const char *restrict, char **restrict, int)
+ _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (strtoumax, uintmax_t,
+ (const char *restrict, char **restrict, int));
+# else
+# if !@HAVE_DECL_STRTOUMAX@
+# undef strtoumax
+_GL_FUNCDECL_SYS (strtoumax, uintmax_t,
+ (const char *restrict, char **restrict, int)
+ _GL_ARG_NONNULL ((1)));
+# endif
+_GL_CXXALIAS_SYS (strtoumax, uintmax_t,
+ (const char *restrict, char **restrict, int));
+# endif
+_GL_CXXALIASWARN (strtoumax);
+#elif defined GNULIB_POSIXCHECK
+# undef strtoumax
+# if HAVE_RAW_DECL_STRTOUMAX
+_GL_WARN_ON_USE (strtoumax, "strtoumax is unportable - "
+ "use gnulib module strtoumax for portability");
+# endif
+#endif
+
+/* Don't bother defining or declaring wcstoimax and wcstoumax, since
+ wide-character functions like this are hardly ever useful. */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* !defined INTTYPES_H && !defined _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H */
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/itold.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/itold.c
index bca01eb569..9a6682d485 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/itold.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/itold.c
@@ -1,5 +1,5 @@
/* Replacement for 'int' to 'long double' conversion routine.
- Copyright (C) 2011-2019 Free Software Foundation, Inc.
+ Copyright (C) 2011-2021 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2011.
This program is free software: you can redistribute it and/or modify
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/limits.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/limits.in.h
index 39750b38d1..076ab9ef54 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/limits.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/limits.in.h
@@ -1,6 +1,6 @@
/* A GNU-like <limits.h>.
- Copyright 2016-2019 Free Software Foundation, Inc.
+ Copyright 2016-2021 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@@ -15,16 +15,32 @@
You should have received a copy of the GNU General Public License
along with this program; if not, see <https://www.gnu.org/licenses/>. */
-#ifndef _@GUARD_PREFIX@_LIMITS_H
-
#if __GNUC__ >= 3
@PRAGMA_SYSTEM_HEADER@
#endif
@PRAGMA_COLUMNS@
-/* The include_next requires a split double-inclusion guard. */
+#if defined _GL_ALREADY_INCLUDING_LIMITS_H
+/* Special invocation convention:
+ On Haiku/x86_64, we have a sequence of nested includes
+ <limits.h> -> <syslimits.h> -> <limits.h>.
+ In this situation, LONG_MAX and INT_MAX are not yet defined,
+ therefore we should not attempt to define LONG_BIT. */
+
#@INCLUDE_NEXT@ @NEXT_LIMITS_H@
+#else
+/* Normal invocation convention. */
+
+#ifndef _@GUARD_PREFIX@_LIMITS_H
+
+# define _GL_ALREADY_INCLUDING_LIMITS_H
+
+/* The include_next requires a split double-inclusion guard. */
+# @INCLUDE_NEXT@ @NEXT_LIMITS_H@
+
+# undef _GL_ALREADY_INCLUDING_LIMITS_H
+
#ifndef _@GUARD_PREFIX@_LIMITS_H
#define _@GUARD_PREFIX@_LIMITS_H
@@ -102,3 +118,4 @@
#endif /* _@GUARD_PREFIX@_LIMITS_H */
#endif /* _@GUARD_PREFIX@_LIMITS_H */
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.c
index 4e0c5f9de9..cacaf1853f 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1993, 1996-1997, 1999-2000, 2003-2004, 2006, 2008-2019
+/* Copyright (C) 1991, 1993, 1996-1997, 1999-2000, 2003-2004, 2006, 2008-2021
Free Software Foundation, Inc.
Based on strlen implementation by Torbjorn Granlund (tege@sics.se),
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.valgrind b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.valgrind
index 1d60e29bac..c0a53db61d 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.valgrind
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/memchr.valgrind
@@ -1,6 +1,6 @@
# Suppress a valgrind message about use of uninitialized memory in memchr().
-# Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2021 Free Software Foundation, Inc.
#
# 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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.c
index e45cfbede1..606adf6323 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.c
@@ -1,5 +1,5 @@
/* Decomposed printf argument list.
- Copyright (C) 1999, 2002-2003, 2005-2007, 2009-2019 Free Software
+ Copyright (C) 1999, 2002-2003, 2005-2007, 2009-2021 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
@@ -65,14 +65,12 @@ PRINTF_FETCHARGS (va_list args, arguments *a)
case TYPE_ULONGINT:
ap->a.a_ulongint = va_arg (args, unsigned long int);
break;
-#if HAVE_LONG_LONG_INT
case TYPE_LONGLONGINT:
ap->a.a_longlongint = va_arg (args, long long int);
break;
case TYPE_ULONGLONGINT:
ap->a.a_ulonglongint = va_arg (args, unsigned long long int);
break;
-#endif
case TYPE_DOUBLE:
ap->a.a_double = va_arg (args, double);
break;
@@ -135,11 +133,9 @@ PRINTF_FETCHARGS (va_list args, arguments *a)
case TYPE_COUNT_LONGINT_POINTER:
ap->a.a_count_longint_pointer = va_arg (args, long int *);
break;
-#if HAVE_LONG_LONG_INT
case TYPE_COUNT_LONGLONGINT_POINTER:
ap->a.a_count_longlongint_pointer = va_arg (args, long long int *);
break;
-#endif
#if ENABLE_UNISTDIO
/* The unistdio extensions. */
case TYPE_U8_STRING:
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.h
index 866cba04d8..c0db483a56 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-args.h
@@ -1,5 +1,5 @@
/* Decomposed printf argument list.
- Copyright (C) 1999, 2002-2003, 2006-2007, 2011-2019 Free Software
+ Copyright (C) 1999, 2002-2003, 2006-2007, 2011-2021 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
@@ -57,10 +57,8 @@ typedef enum
TYPE_UINT,
TYPE_LONGINT,
TYPE_ULONGINT,
-#if HAVE_LONG_LONG_INT
TYPE_LONGLONGINT,
TYPE_ULONGLONGINT,
-#endif
TYPE_DOUBLE,
TYPE_LONGDOUBLE,
TYPE_CHAR,
@@ -75,10 +73,8 @@ typedef enum
TYPE_COUNT_SCHAR_POINTER,
TYPE_COUNT_SHORT_POINTER,
TYPE_COUNT_INT_POINTER,
- TYPE_COUNT_LONGINT_POINTER
-#if HAVE_LONG_LONG_INT
-, TYPE_COUNT_LONGLONGINT_POINTER
-#endif
+ TYPE_COUNT_LONGINT_POINTER,
+ TYPE_COUNT_LONGLONGINT_POINTER
#if ENABLE_UNISTDIO
/* The unistdio extensions. */
, TYPE_U8_STRING
@@ -101,10 +97,8 @@ typedef struct
unsigned int a_uint;
long int a_longint;
unsigned long int a_ulongint;
-#if HAVE_LONG_LONG_INT
long long int a_longlongint;
unsigned long long int a_ulonglongint;
-#endif
float a_float;
double a_double;
long double a_longdouble;
@@ -121,9 +115,7 @@ typedef struct
short * a_count_short_pointer;
int * a_count_int_pointer;
long int * a_count_longint_pointer;
-#if HAVE_LONG_LONG_INT
long long int * a_count_longlongint_pointer;
-#endif
#if ENABLE_UNISTDIO
/* The unistdio extensions. */
const uint8_t * a_u8_string;
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.c
index 8596fd5f30..fe3481b68b 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.c
@@ -1,5 +1,5 @@
/* Formatted output to strings.
- Copyright (C) 1999-2000, 2002-2003, 2006-2019 Free Software Foundation, Inc.
+ Copyright (C) 1999-2000, 2002-2003, 2006-2021 Free Software Foundation, Inc.
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
@@ -447,14 +447,12 @@ PRINTF_PARSE (const CHAR_T *format, DIRECTIVES *d, arguments *a)
switch (c)
{
case 'd': case 'i':
-#if HAVE_LONG_LONG_INT
- /* If 'long long' exists and is larger than 'long': */
+ /* If 'long long' is larger than 'long': */
if (flags >= 16 || (flags & 4))
type = TYPE_LONGLONGINT;
else
-#endif
- /* If 'long long' exists and is the same as 'long', we parse
- "lld" into TYPE_LONGINT. */
+ /* If 'long long' is the same as 'long', we parse "lld" into
+ TYPE_LONGINT. */
if (flags >= 8)
type = TYPE_LONGINT;
else if (flags & 2)
@@ -465,14 +463,12 @@ PRINTF_PARSE (const CHAR_T *format, DIRECTIVES *d, arguments *a)
type = TYPE_INT;
break;
case 'o': case 'u': case 'x': case 'X':
-#if HAVE_LONG_LONG_INT
- /* If 'long long' exists and is larger than 'long': */
+ /* If 'unsigned long long' is larger than 'unsigned long': */
if (flags >= 16 || (flags & 4))
type = TYPE_ULONGLONGINT;
else
-#endif
- /* If 'unsigned long long' exists and is the same as
- 'unsigned long', we parse "llu" into TYPE_ULONGINT. */
+ /* If 'unsigned long long' is the same as 'unsigned long', we
+ parse "llu" into TYPE_ULONGINT. */
if (flags >= 8)
type = TYPE_ULONGINT;
else if (flags & 2)
@@ -525,14 +521,12 @@ PRINTF_PARSE (const CHAR_T *format, DIRECTIVES *d, arguments *a)
type = TYPE_POINTER;
break;
case 'n':
-#if HAVE_LONG_LONG_INT
- /* If 'long long' exists and is larger than 'long': */
+ /* If 'long long' is larger than 'long': */
if (flags >= 16 || (flags & 4))
type = TYPE_COUNT_LONGLONGINT_POINTER;
else
-#endif
- /* If 'long long' exists and is the same as 'long', we parse
- "lln" into TYPE_COUNT_LONGINT_POINTER. */
+ /* If 'long long' is the same as 'long', we parse "lln" into
+ TYPE_COUNT_LONGINT_POINTER. */
if (flags >= 8)
type = TYPE_COUNT_LONGINT_POINTER;
else if (flags & 2)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.h
index 746bb3fe0f..e7d0f82c87 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/printf-parse.h
@@ -1,5 +1,5 @@
/* Parse printf format string.
- Copyright (C) 1999, 2002-2003, 2005, 2007, 2010-2019 Free Software
+ Copyright (C) 1999, 2002-2003, 2005, 2007, 2010-2021 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.c
index 7df61512fc..f4d50304b5 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.c
@@ -1,5 +1,5 @@
/* Searching in a string.
- Copyright (C) 2008-2019 Free Software Foundation, Inc.
+ Copyright (C) 2008-2021 Free Software Foundation, Inc.
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
@@ -19,6 +19,9 @@
/* Specification. */
#include <string.h>
+/* A function definition is only needed if HAVE_RAWMEMCHR is not defined. */
+#if !HAVE_RAWMEMCHR
+
/* Find the first occurrence of C in S. */
void *
rawmemchr (const void *s, int c_in)
@@ -134,3 +137,5 @@ rawmemchr (const void *s, int c_in)
char_ptr++;
return (void *) char_ptr;
}
+
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.valgrind b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.valgrind
index 3d91a7271d..087d5e4178 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.valgrind
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/rawmemchr.valgrind
@@ -1,6 +1,6 @@
# Suppress a valgrind message about use of uninitialized memory in rawmemchr().
-# Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2021 Free Software Foundation, Inc.
#
# 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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/size_max.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/size_max.h
index e265fb9726..16cfa09684 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/size_max.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/size_max.h
@@ -1,5 +1,5 @@
/* size_max.h -- declare SIZE_MAX through system headers
- Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc.
+ Copyright (C) 2005-2006, 2009-2021 Free Software Foundation, Inc.
Written by Simon Josefsson.
This program is free software; you can redistribute it and/or modify
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stddef.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stddef.in.h
index 5aad1210df..d878b9d883 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stddef.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stddef.in.h
@@ -1,6 +1,6 @@
/* A substitute for POSIX 2008 <stddef.h>, for platforms that have issues.
- Copyright (C) 2009-2019 Free Software Foundation, Inc.
+ Copyright (C) 2009-2021 Free Software Foundation, Inc.
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
@@ -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
@@ -42,6 +42,13 @@
# define _GL_STDDEF_WINT_T
# endif
# @INCLUDE_NEXT@ @NEXT_STDDEF_H@
+ /* On TinyCC, make sure that the macros that indicate the special invocation
+ convention get undefined. */
+# undef __need_wchar_t
+# undef __need_size_t
+# undef __need_ptrdiff_t
+# undef __need_NULL
+# undef __need_wint_t
# endif
#else
@@ -49,6 +56,23 @@
# ifndef _@GUARD_PREFIX@_STDDEF_H
+/* On AIX 7.2, with xlc in 64-bit mode, <stddef.h> defines max_align_t to a
+ type with alignment 4, but 'long' has alignment 8. */
+# if defined _AIX && defined __LP64__
+# if !GNULIB_defined_max_align_t
+# ifdef _MAX_ALIGN_T
+/* /usr/include/stddef.h has already defined max_align_t. Override it. */
+typedef long rpl_max_align_t;
+# define max_align_t rpl_max_align_t
+# else
+/* Prevent /usr/include/stddef.h from defining max_align_t. */
+typedef long max_align_t;
+# define _MAX_ALIGN_T
+# endif
+# define GNULIB_defined_max_align_t 1
+# endif
+# endif
+
/* The include_next requires a split double-inclusion guard. */
# @INCLUDE_NEXT@ @NEXT_STDDEF_H@
@@ -83,20 +107,28 @@
/* Some platforms lack max_align_t. The check for _GCC_MAX_ALIGN_T is
a hack in case the configure-time test was done with g++ even though
- we are currently compiling with gcc. */
-#if ! (@HAVE_MAX_ALIGN_T@ || defined _GCC_MAX_ALIGN_T)
-# if !GNULIB_defined_max_align_t
+ we are currently compiling with gcc.
+ On MSVC, max_align_t is defined only in C++ mode, after <cstddef> was
+ included. Its definition is good since it has an alignment of 8 (on x86
+ and x86_64).
+ Similarly on OS/2 kLIBC. */
+#if (defined _MSC_VER || (defined __KLIBC__ && !defined __LIBCN__)) \
+ && defined __cplusplus
+# include <cstddef>
+#else
+# if ! (@HAVE_MAX_ALIGN_T@ || (defined _GCC_MAX_ALIGN_T && !defined __clang__))
+# if !GNULIB_defined_max_align_t
/* On the x86, the maximum storage alignment of double, long, etc. is 4,
but GCC's C11 ABI for x86 says that max_align_t has an alignment of 8,
and the C11 standard allows this. Work around this problem by
using __alignof__ (which returns 8 for double) rather than _Alignof
(which returns 4), and align each union member accordingly. */
-# ifdef __GNUC__
-# define _GL_STDDEF_ALIGNAS(type) \
- __attribute__ ((__aligned__ (__alignof__ (type))))
-# else
-# define _GL_STDDEF_ALIGNAS(type) /* */
-# endif
+# if defined __GNUC__ || (__clang_major__ >= 4)
+# define _GL_STDDEF_ALIGNAS(type) \
+ __attribute__ ((__aligned__ (__alignof__ (type))))
+# else
+# define _GL_STDDEF_ALIGNAS(type) /* */
+# endif
typedef union
{
char *__p _GL_STDDEF_ALIGNAS (char *);
@@ -104,8 +136,9 @@ typedef union
long double __ld _GL_STDDEF_ALIGNAS (long double);
long int __i _GL_STDDEF_ALIGNAS (long int);
} rpl_max_align_t;
-# define max_align_t rpl_max_align_t
-# define GNULIB_defined_max_align_t 1
+# define max_align_t rpl_max_align_t
+# define GNULIB_defined_max_align_t 1
+# endif
# endif
#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdint.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdint.in.h
index 21dd8d23e3..7a8f27cef7 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdint.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdint.in.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2002, 2004-2019 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2002, 2004-2021 Free Software Foundation, Inc.
Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood.
This file is part of gnulib.
@@ -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
@@ -188,7 +188,7 @@ typedef long int gl_int64_t;
typedef __int64 gl_int64_t;
# define int64_t gl_int64_t
# define GL_INT64_T
-# elif @HAVE_LONG_LONG_INT@
+# else
# undef int64_t
typedef long long int gl_int64_t;
# define int64_t gl_int64_t
@@ -209,7 +209,7 @@ typedef unsigned long int gl_uint64_t;
typedef unsigned __int64 gl_uint64_t;
# define uint64_t gl_uint64_t
# define GL_UINT64_T
-# elif @HAVE_UNSIGNED_LONG_LONG_INT@
+# else
# undef uint64_t
typedef unsigned long long int gl_uint64_t;
# define uint64_t gl_uint64_t
@@ -299,16 +299,25 @@ typedef gl_uint_fast32_t gl_uint_fast16_t;
/* 7.18.1.4. Integer types capable of holding object pointers */
-/* kLIBC's stdint.h defines _INTPTR_T_DECLARED and needs its own
+/* kLIBC's <stdint.h> defines _INTPTR_T_DECLARED and needs its own
definitions of intptr_t and uintptr_t (which use int and unsigned)
- to avoid clashes with declarations of system functions like sbrk. */
-# ifndef _INTPTR_T_DECLARED
-# undef intptr_t
-# undef uintptr_t
+ to avoid clashes with declarations of system functions like sbrk.
+ Similarly, MinGW WSL-5.4.1 <stdint.h> needs its own intptr_t and
+ uintptr_t to avoid conflicting declarations of system functions like
+ _findclose in <io.h>. */
+# if !((defined __KLIBC__ && defined _INTPTR_T_DECLARED) \
+ || defined __MINGW32__)
+# undef intptr_t
+# undef uintptr_t
+# ifdef _WIN64
+typedef long long int gl_intptr_t;
+typedef unsigned long long int gl_uintptr_t;
+# else
typedef long int gl_intptr_t;
typedef unsigned long int gl_uintptr_t;
-# define intptr_t gl_intptr_t
-# define uintptr_t gl_uintptr_t
+# endif
+# define intptr_t gl_intptr_t
+# define uintptr_t gl_uintptr_t
# endif
/* 7.18.1.5. Greatest-width integer types */
@@ -323,7 +332,7 @@ typedef unsigned long int gl_uintptr_t;
# ifndef INTMAX_MAX
# undef INTMAX_C
# undef intmax_t
-# if @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
+# if LONG_MAX >> 30 == 1
typedef long long int gl_intmax_t;
# define intmax_t gl_intmax_t
# elif defined GL_INT64_T
@@ -337,7 +346,7 @@ typedef long int gl_intmax_t;
# ifndef UINTMAX_MAX
# undef UINTMAX_C
# undef uintmax_t
-# if @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
+# if ULONG_MAX >> 31 == 1
typedef unsigned long long int gl_uintmax_t;
# define uintmax_t gl_uintmax_t
# elif defined GL_UINT64_T
@@ -485,9 +494,15 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
# undef INTPTR_MIN
# undef INTPTR_MAX
# undef UINTPTR_MAX
-# define INTPTR_MIN LONG_MIN
-# define INTPTR_MAX LONG_MAX
-# define UINTPTR_MAX ULONG_MAX
+# ifdef _WIN64
+# define INTPTR_MIN LLONG_MIN
+# define INTPTR_MAX LLONG_MAX
+# define UINTPTR_MAX ULLONG_MAX
+# else
+# define INTPTR_MIN LONG_MIN
+# define INTPTR_MAX LONG_MAX
+# define UINTPTR_MAX ULONG_MAX
+# endif
/* 7.18.2.5. Limits of greatest-width integer types */
@@ -564,11 +579,6 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
<wchar.h> -> <stdio.h> -> <getopt.h> -> <stdlib.h>, and the latter includes
<stdint.h> and assumes its types are already defined. */
# if @HAVE_WCHAR_H@ && ! (defined WCHAR_MIN && defined WCHAR_MAX)
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-# include <stddef.h>
-# include <stdio.h>
-# include <time.h>
# define _GL_JUST_INCLUDE_SYSTEM_WCHAR_H
# include <wchar.h>
# undef _GL_JUST_INCLUDE_SYSTEM_WCHAR_H
@@ -586,17 +596,21 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
_STDINT_MAX (@HAVE_SIGNED_WCHAR_T@, @BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@)
/* wint_t limits */
-# undef WINT_MIN
-# undef WINT_MAX
-# if @HAVE_SIGNED_WINT_T@
-# define WINT_MIN \
- _STDINT_SIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
-# else
-# define WINT_MIN \
- _STDINT_UNSIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
+/* If gnulib's <wchar.h> or <wctype.h> overrides wint_t, @WINT_T_SUFFIX@ is not
+ accurate, therefore use the definitions from above. */
+# if !@GNULIB_OVERRIDES_WINT_T@
+# undef WINT_MIN
+# undef WINT_MAX
+# if @HAVE_SIGNED_WINT_T@
+# define WINT_MIN \
+ _STDINT_SIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
+# else
+# define WINT_MIN \
+ _STDINT_UNSIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
+# endif
+# define WINT_MAX \
+ _STDINT_MAX (@HAVE_SIGNED_WINT_T@, @BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
# endif
-# define WINT_MAX \
- _STDINT_MAX (@HAVE_SIGNED_WINT_T@, @BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
/* 7.18.4. Macros for integer constants */
@@ -627,21 +641,21 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
# define INT64_C(x) x##L
# elif defined _MSC_VER
# define INT64_C(x) x##i64
-# elif @HAVE_LONG_LONG_INT@
+# else
# define INT64_C(x) x##LL
# endif
# if ULONG_MAX >> 31 >> 31 >> 1 == 1
# define UINT64_C(x) x##UL
# elif defined _MSC_VER
# define UINT64_C(x) x##ui64
-# elif @HAVE_UNSIGNED_LONG_LONG_INT@
+# else
# define UINT64_C(x) x##ULL
# endif
/* 7.18.4.2. Macros for greatest-width integer constants */
# ifndef INTMAX_C
-# if @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
+# if LONG_MAX >> 30 == 1
# define INTMAX_C(x) x##LL
# elif defined GL_INT64_T
# define INTMAX_C(x) INT64_C(x)
@@ -651,7 +665,7 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
# endif
# ifndef UINTMAX_C
-# if @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
+# if ULONG_MAX >> 31 == 1
# define UINTMAX_C(x) x##ULL
# elif defined GL_UINT64_T
# define UINTMAX_C(x) UINT64_C(x)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdio.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdio.in.h
index 4a8aa55528..a930840505 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdio.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/stdio.in.h
@@ -1,6 +1,6 @@
/* A GNU-like <stdio.h>.
- Copyright (C) 2004, 2007-2019 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2007-2021 Free Software Foundation, Inc.
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
@@ -62,35 +62,51 @@
We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because
gnulib and libintl do '#define printf __printf__' when they override
the 'printf' function. */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+#ifndef _GL_ATTRIBUTE_FORMAT
+# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) || defined __clang__
+# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+# else
+# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */
+# endif
+#endif
+
+/* An __attribute__ __format__ specifier for a function that takes a format
+ string and arguments, where the format string directives are the ones
+ standardized by ISO C99 and POSIX.
+ _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD */
+/* __gnu_printf__ is supported in GCC >= 4.4. */
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
+# define _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD __gnu_printf__
#else
-# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */
+# define _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD __printf__
#endif
-/* _GL_ATTRIBUTE_FORMAT_PRINTF
+/* An __attribute__ __format__ specifier for a function that takes a format
+ string and arguments, where the format string directives are the ones of the
+ system printf(), rather than the ones standardized by ISO C99 and POSIX.
+ _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM */
+/* On mingw, Gnulib sets __USE_MINGW_ANSI_STDIO in order to get closer to
+ the standards. The macro GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU indicates
+ whether this change is effective. On older mingw, it is not. */
+#if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
+# define _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD
+#else
+# define _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM __printf__
+#endif
+
+/* _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD
indicates to GCC that the function takes a format string and arguments,
where the format string directives are the ones standardized by ISO C99
and POSIX. */
-#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
-# define _GL_ATTRIBUTE_FORMAT_PRINTF(formatstring_parameter, first_argument) \
- _GL_ATTRIBUTE_FORMAT ((__gnu_printf__, formatstring_parameter, first_argument))
-#else
-# define _GL_ATTRIBUTE_FORMAT_PRINTF(formatstring_parameter, first_argument) \
- _GL_ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument))
-#endif
+#define _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD(formatstring_parameter, first_argument) \
+ _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, formatstring_parameter, first_argument))
-/* _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM is like _GL_ATTRIBUTE_FORMAT_PRINTF,
+/* _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM is like _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD,
except that it indicates to GCC that the supported format string directives
are the ones of the system printf(), rather than the ones standardized by
ISO C99 and POSIX. */
-#if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
-# define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
- _GL_ATTRIBUTE_FORMAT_PRINTF (formatstring_parameter, first_argument)
-#else
-# define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
- _GL_ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument))
-#endif
+#define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
+ _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM, formatstring_parameter, first_argument))
/* _GL_ATTRIBUTE_FORMAT_SCANF
indicates to GCC that the function takes a format string and arguments,
@@ -171,17 +187,17 @@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# define dprintf rpl_dprintf
# endif
-_GL_FUNCDECL_RPL (dprintf, int, (int fd, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+_GL_FUNCDECL_RPL (dprintf, int, (int fd, const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
_GL_ARG_NONNULL ((2)));
-_GL_CXXALIAS_RPL (dprintf, int, (int fd, const char *format, ...));
+_GL_CXXALIAS_RPL (dprintf, int, (int fd, const char *restrict format, ...));
# else
# if !@HAVE_DPRINTF@
-_GL_FUNCDECL_SYS (dprintf, int, (int fd, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+_GL_FUNCDECL_SYS (dprintf, int, (int fd, const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
_GL_ARG_NONNULL ((2)));
# endif
-_GL_CXXALIAS_SYS (dprintf, int, (int fd, const char *format, ...));
+_GL_CXXALIAS_SYS (dprintf, int, (int fd, const char *restrict format, ...));
# endif
_GL_CXXALIASWARN (dprintf);
#elif defined GNULIB_POSIXCHECK
@@ -203,7 +219,9 @@ _GL_CXXALIAS_RPL (fclose, int, (FILE *stream));
# else
_GL_CXXALIAS_SYS (fclose, int, (FILE *stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fclose);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef fclose
/* Assume fclose is always declared. */
@@ -211,6 +229,31 @@ _GL_WARN_ON_USE (fclose, "fclose is not always POSIX compliant - "
"use gnulib module fclose for portable POSIX compliance");
#endif
+#if @GNULIB_MDA_FCLOSEALL@
+/* On native Windows, map 'fcloseall' to '_fcloseall', so that -loldnames is
+ not required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::fcloseall on all platforms that have
+ it. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef fcloseall
+# define fcloseall _fcloseall
+# endif
+_GL_CXXALIAS_MDA (fcloseall, int, (void));
+# else
+# if @HAVE_DECL_FCLOSEALL@
+# if defined __FreeBSD__
+_GL_CXXALIAS_SYS (fcloseall, void, (void));
+# else
+_GL_CXXALIAS_SYS (fcloseall, int, (void));
+# endif
+# endif
+# endif
+# if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_FCLOSEALL@
+_GL_CXXALIASWARN (fcloseall);
+# endif
+#endif
+
#if @GNULIB_FDOPEN@
# if @REPLACE_FDOPEN@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -220,6 +263,12 @@ _GL_WARN_ON_USE (fclose, "fclose is not always POSIX compliant - "
_GL_FUNCDECL_RPL (fdopen, FILE *, (int fd, const char *mode)
_GL_ARG_NONNULL ((2)));
_GL_CXXALIAS_RPL (fdopen, FILE *, (int fd, const char *mode));
+# elif defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef fdopen
+# define fdopen _fdopen
+# endif
+_GL_CXXALIAS_MDA (fdopen, FILE *, (int fd, const char *mode));
# else
_GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode));
# endif
@@ -229,6 +278,20 @@ _GL_CXXALIASWARN (fdopen);
/* Assume fdopen is always declared. */
_GL_WARN_ON_USE (fdopen, "fdopen on native Windows platforms is not POSIX compliant - "
"use gnulib module fdopen for portability");
+#elif @GNULIB_MDA_FDOPEN@
+/* On native Windows, map 'fdopen' to '_fdopen', so that -loldnames is not
+ required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::fdopen always. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef fdopen
+# define fdopen _fdopen
+# endif
+_GL_CXXALIAS_MDA (fdopen, FILE *, (int fd, const char *mode));
+# else
+_GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode));
+# endif
+_GL_CXXALIASWARN (fdopen);
#endif
#if @GNULIB_FFLUSH@
@@ -247,7 +310,9 @@ _GL_CXXALIAS_RPL (fflush, int, (FILE *gl_stream));
# else
_GL_CXXALIAS_SYS (fflush, int, (FILE *gl_stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fflush);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef fflush
/* Assume fflush is always declared. */
@@ -266,7 +331,9 @@ _GL_CXXALIAS_RPL (fgetc, int, (FILE *stream));
# else
_GL_CXXALIAS_SYS (fgetc, int, (FILE *stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fgetc);
+# endif
#endif
#if @GNULIB_FGETS@
@@ -275,13 +342,34 @@ _GL_CXXALIASWARN (fgetc);
# undef fgets
# define fgets rpl_fgets
# endif
-_GL_FUNCDECL_RPL (fgets, char *, (char *s, int n, FILE *stream)
- _GL_ARG_NONNULL ((1, 3)));
-_GL_CXXALIAS_RPL (fgets, char *, (char *s, int n, FILE *stream));
+_GL_FUNCDECL_RPL (fgets, char *,
+ (char *restrict s, int n, FILE *restrict stream)
+ _GL_ARG_NONNULL ((1, 3)));
+_GL_CXXALIAS_RPL (fgets, char *,
+ (char *restrict s, int n, FILE *restrict stream));
# else
-_GL_CXXALIAS_SYS (fgets, char *, (char *s, int n, FILE *stream));
+_GL_CXXALIAS_SYS (fgets, char *,
+ (char *restrict s, int n, FILE *restrict stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fgets);
+# endif
+#endif
+
+#if @GNULIB_MDA_FILENO@
+/* On native Windows, map 'fileno' to '_fileno', so that -loldnames is not
+ required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::fileno always. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef fileno
+# define fileno _fileno
+# endif
+_GL_CXXALIAS_MDA (fileno, int, (FILE *restrict stream));
+# else
+_GL_CXXALIAS_SYS (fileno, int, (FILE *restrict stream));
+# endif
+_GL_CXXALIASWARN (fileno);
#endif
#if @GNULIB_FOPEN@
@@ -290,13 +378,18 @@ _GL_CXXALIASWARN (fgets);
# undef fopen
# define fopen rpl_fopen
# endif
-_GL_FUNCDECL_RPL (fopen, FILE *, (const char *filename, const char *mode)
- _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (fopen, FILE *, (const char *filename, const char *mode));
+_GL_FUNCDECL_RPL (fopen, FILE *,
+ (const char *restrict filename, const char *restrict mode)
+ _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (fopen, FILE *,
+ (const char *restrict filename, const char *restrict mode));
# else
-_GL_CXXALIAS_SYS (fopen, FILE *, (const char *filename, const char *mode));
+_GL_CXXALIAS_SYS (fopen, FILE *,
+ (const char *restrict filename, const char *restrict mode));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fopen);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef fopen
/* Assume fopen is always declared. */
@@ -312,19 +405,25 @@ _GL_WARN_ON_USE (fopen, "fopen on native Windows platforms is not POSIX complian
# endif
# define GNULIB_overrides_fprintf 1
# if @GNULIB_FPRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@
-_GL_FUNCDECL_RPL (fprintf, int, (FILE *fp, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
- _GL_ARG_NONNULL ((1, 2)));
+_GL_FUNCDECL_RPL (fprintf, int,
+ (FILE *restrict fp, const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
+ _GL_ARG_NONNULL ((1, 2)));
# else
-_GL_FUNCDECL_RPL (fprintf, int, (FILE *fp, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 3)
- _GL_ARG_NONNULL ((1, 2)));
+_GL_FUNCDECL_RPL (fprintf, int,
+ (FILE *restrict fp, const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 3)
+ _GL_ARG_NONNULL ((1, 2)));
# endif
-_GL_CXXALIAS_RPL (fprintf, int, (FILE *fp, const char *format, ...));
+_GL_CXXALIAS_RPL (fprintf, int,
+ (FILE *restrict fp, const char *restrict format, ...));
# else
-_GL_CXXALIAS_SYS (fprintf, int, (FILE *fp, const char *format, ...));
+_GL_CXXALIAS_SYS (fprintf, int,
+ (FILE *restrict fp, const char *restrict format, ...));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fprintf);
+# endif
#endif
#if !@GNULIB_FPRINTF_POSIX@ && defined GNULIB_POSIXCHECK
# if !GNULIB_overrides_fprintf
@@ -375,7 +474,9 @@ _GL_CXXALIAS_RPL (fputc, int, (int c, FILE *stream));
# else
_GL_CXXALIAS_SYS (fputc, int, (int c, FILE *stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fputc);
+# endif
#endif
#if @GNULIB_FPUTS@
@@ -384,13 +485,18 @@ _GL_CXXALIASWARN (fputc);
# undef fputs
# define fputs rpl_fputs
# endif
-_GL_FUNCDECL_RPL (fputs, int, (const char *string, FILE *stream)
- _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (fputs, int, (const char *string, FILE *stream));
+_GL_FUNCDECL_RPL (fputs, int,
+ (const char *restrict string, FILE *restrict stream)
+ _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (fputs, int,
+ (const char *restrict string, FILE *restrict stream));
# else
-_GL_CXXALIAS_SYS (fputs, int, (const char *string, FILE *stream));
+_GL_CXXALIAS_SYS (fputs, int,
+ (const char *restrict string, FILE *restrict stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fputs);
+# endif
#endif
#if @GNULIB_FREAD@
@@ -399,13 +505,21 @@ _GL_CXXALIASWARN (fputs);
# undef fread
# define fread rpl_fread
# endif
-_GL_FUNCDECL_RPL (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream)
- _GL_ARG_NONNULL ((4)));
-_GL_CXXALIAS_RPL (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream));
+_GL_FUNCDECL_RPL (fread, size_t,
+ (void *restrict ptr, size_t s, size_t n,
+ FILE *restrict stream)
+ _GL_ARG_NONNULL ((4)));
+_GL_CXXALIAS_RPL (fread, size_t,
+ (void *restrict ptr, size_t s, size_t n,
+ FILE *restrict stream));
# else
-_GL_CXXALIAS_SYS (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream));
+_GL_CXXALIAS_SYS (fread, size_t,
+ (void *restrict ptr, size_t s, size_t n,
+ FILE *restrict stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fread);
+# endif
#endif
#if @GNULIB_FREOPEN@
@@ -415,15 +529,20 @@ _GL_CXXALIASWARN (fread);
# define freopen rpl_freopen
# endif
_GL_FUNCDECL_RPL (freopen, FILE *,
- (const char *filename, const char *mode, FILE *stream)
+ (const char *restrict filename, const char *restrict mode,
+ FILE *restrict stream)
_GL_ARG_NONNULL ((2, 3)));
_GL_CXXALIAS_RPL (freopen, FILE *,
- (const char *filename, const char *mode, FILE *stream));
+ (const char *restrict filename, const char *restrict mode,
+ FILE *restrict stream));
# else
_GL_CXXALIAS_SYS (freopen, FILE *,
- (const char *filename, const char *mode, FILE *stream));
+ (const char *restrict filename, const char *restrict mode,
+ FILE *restrict stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (freopen);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef freopen
/* Assume freopen is always declared. */
@@ -438,14 +557,19 @@ _GL_WARN_ON_USE (freopen,
# undef fscanf
# define fscanf rpl_fscanf
# endif
-_GL_FUNCDECL_RPL (fscanf, int, (FILE *stream, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (2, 3)
- _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (fscanf, int, (FILE *stream, const char *format, ...));
+_GL_FUNCDECL_RPL (fscanf, int,
+ (FILE *restrict stream, const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (2, 3)
+ _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (fscanf, int,
+ (FILE *restrict stream, const char *restrict format, ...));
# else
-_GL_CXXALIAS_SYS (fscanf, int, (FILE *stream, const char *format, ...));
+_GL_CXXALIAS_SYS (fscanf, int,
+ (FILE *restrict stream, const char *restrict format, ...));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fscanf);
+# endif
#endif
@@ -496,7 +620,9 @@ _GL_CXXALIAS_RPL (fseek, int, (FILE *fp, long offset, int whence));
# else
_GL_CXXALIAS_SYS (fseek, int, (FILE *fp, long offset, int whence));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fseek);
+# endif
#endif
#if @GNULIB_FSEEKO@
@@ -559,7 +685,9 @@ _GL_CXXALIAS_RPL (ftell, long, (FILE *fp));
# else
_GL_CXXALIAS_SYS (ftell, long, (FILE *fp));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (ftell);
+# endif
#endif
#if @GNULIB_FTELLO@
@@ -608,13 +736,16 @@ _GL_WARN_ON_USE (ftell, "ftell cannot handle files larger than 4 GB "
# define fwrite rpl_fwrite
# endif
_GL_FUNCDECL_RPL (fwrite, size_t,
- (const void *ptr, size_t s, size_t n, FILE *stream)
+ (const void *restrict ptr, size_t s, size_t n,
+ FILE *restrict stream)
_GL_ARG_NONNULL ((1, 4)));
_GL_CXXALIAS_RPL (fwrite, size_t,
- (const void *ptr, size_t s, size_t n, FILE *stream));
+ (const void *restrict ptr, size_t s, size_t n,
+ FILE *restrict stream));
# else
_GL_CXXALIAS_SYS (fwrite, size_t,
- (const void *ptr, size_t s, size_t n, FILE *stream));
+ (const void *restrict ptr, size_t s, size_t n,
+ FILE *restrict stream));
/* Work around bug 11959 when fortifying glibc 2.4 through 2.15
<https://sourceware.org/bugzilla/show_bug.cgi?id=11959>,
@@ -639,7 +770,9 @@ extern size_t __REDIRECT (rpl_fwrite_unlocked,
# define fwrite_unlocked rpl_fwrite_unlocked
# endif
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (fwrite);
+# endif
#endif
#if @GNULIB_GETC@
@@ -653,7 +786,9 @@ _GL_CXXALIAS_RPL_1 (getc, rpl_fgetc, int, (FILE *stream));
# else
_GL_CXXALIAS_SYS (getc, int, (FILE *stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (getc);
+# endif
#endif
#if @GNULIB_GETCHAR@
@@ -667,7 +802,9 @@ _GL_CXXALIAS_RPL (getchar, int, (void));
# else
_GL_CXXALIAS_SYS (getchar, int, (void));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (getchar);
+# endif
#endif
#if @GNULIB_GETDELIM@
@@ -683,22 +820,26 @@ _GL_CXXALIASWARN (getchar);
# define getdelim rpl_getdelim
# endif
_GL_FUNCDECL_RPL (getdelim, ssize_t,
- (char **lineptr, size_t *linesize, int delimiter,
- FILE *stream)
+ (char **restrict lineptr, size_t *restrict linesize,
+ int delimiter,
+ FILE *restrict stream)
_GL_ARG_NONNULL ((1, 2, 4)));
_GL_CXXALIAS_RPL (getdelim, ssize_t,
- (char **lineptr, size_t *linesize, int delimiter,
- FILE *stream));
+ (char **restrict lineptr, size_t *restrict linesize,
+ int delimiter,
+ FILE *restrict stream));
# else
# if !@HAVE_DECL_GETDELIM@
_GL_FUNCDECL_SYS (getdelim, ssize_t,
- (char **lineptr, size_t *linesize, int delimiter,
- FILE *stream)
+ (char **restrict lineptr, size_t *restrict linesize,
+ int delimiter,
+ FILE *restrict stream)
_GL_ARG_NONNULL ((1, 2, 4)));
# endif
_GL_CXXALIAS_SYS (getdelim, ssize_t,
- (char **lineptr, size_t *linesize, int delimiter,
- FILE *stream));
+ (char **restrict lineptr, size_t *restrict linesize,
+ int delimiter,
+ FILE *restrict stream));
# endif
_GL_CXXALIASWARN (getdelim);
#elif defined GNULIB_POSIXCHECK
@@ -722,18 +863,22 @@ _GL_WARN_ON_USE (getdelim, "getdelim is unportable - "
# define getline rpl_getline
# endif
_GL_FUNCDECL_RPL (getline, ssize_t,
- (char **lineptr, size_t *linesize, FILE *stream)
+ (char **restrict lineptr, size_t *restrict linesize,
+ FILE *restrict stream)
_GL_ARG_NONNULL ((1, 2, 3)));
_GL_CXXALIAS_RPL (getline, ssize_t,
- (char **lineptr, size_t *linesize, FILE *stream));
+ (char **restrict lineptr, size_t *restrict linesize,
+ FILE *restrict stream));
# else
# if !@HAVE_DECL_GETLINE@
_GL_FUNCDECL_SYS (getline, ssize_t,
- (char **lineptr, size_t *linesize, FILE *stream)
+ (char **restrict lineptr, size_t *restrict linesize,
+ FILE *restrict stream)
_GL_ARG_NONNULL ((1, 2, 3)));
# endif
_GL_CXXALIAS_SYS (getline, ssize_t,
- (char **lineptr, size_t *linesize, FILE *stream));
+ (char **restrict lineptr, size_t *restrict linesize,
+ FILE *restrict stream));
# endif
# if @HAVE_DECL_GETLINE@
_GL_CXXALIASWARN (getline);
@@ -754,6 +899,22 @@ _GL_WARN_ON_USE (getline, "getline is unportable - "
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#endif
+#if @GNULIB_MDA_GETW@
+/* On native Windows, map 'getw' to '_getw', so that -loldnames is not
+ required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::getw always. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef getw
+# define getw _getw
+# endif
+_GL_CXXALIAS_MDA (getw, int, (FILE *restrict stream));
+# else
+_GL_CXXALIAS_SYS (getw, int, (FILE *restrict stream));
+# endif
+_GL_CXXALIASWARN (getw);
+#endif
+
#if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@
struct obstack;
/* Grow an obstack with formatted output. Return the number of
@@ -767,7 +928,7 @@ struct obstack;
# endif
_GL_FUNCDECL_RPL (obstack_printf, int,
(struct obstack *obs, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
_GL_ARG_NONNULL ((1, 2)));
_GL_CXXALIAS_RPL (obstack_printf, int,
(struct obstack *obs, const char *format, ...));
@@ -775,7 +936,7 @@ _GL_CXXALIAS_RPL (obstack_printf, int,
# if !@HAVE_DECL_OBSTACK_PRINTF@
_GL_FUNCDECL_SYS (obstack_printf, int,
(struct obstack *obs, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
_GL_ARG_NONNULL ((1, 2)));
# endif
_GL_CXXALIAS_SYS (obstack_printf, int,
@@ -788,7 +949,7 @@ _GL_CXXALIASWARN (obstack_printf);
# endif
_GL_FUNCDECL_RPL (obstack_vprintf, int,
(struct obstack *obs, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
_GL_ARG_NONNULL ((1, 2)));
_GL_CXXALIAS_RPL (obstack_vprintf, int,
(struct obstack *obs, const char *format, va_list args));
@@ -796,7 +957,7 @@ _GL_CXXALIAS_RPL (obstack_vprintf, int,
# if !@HAVE_DECL_OBSTACK_PRINTF@
_GL_FUNCDECL_SYS (obstack_vprintf, int,
(struct obstack *obs, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
_GL_ARG_NONNULL ((1, 2)));
# endif
_GL_CXXALIAS_SYS (obstack_vprintf, int,
@@ -832,7 +993,9 @@ _GL_CXXALIAS_RPL (perror, void, (const char *string));
# else
_GL_CXXALIAS_SYS (perror, void, (const char *string));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (perror);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef perror
/* Assume perror is always declared. */
@@ -868,21 +1031,21 @@ _GL_WARN_ON_USE (popen, "popen is buggy on some platforms - "
#if @GNULIB_PRINTF_POSIX@ || @GNULIB_PRINTF@
# if (@GNULIB_PRINTF_POSIX@ && @REPLACE_PRINTF@) \
|| (@GNULIB_PRINTF@ && @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@))
-# if defined __GNUC__
+# if defined __GNUC__ || defined __clang__
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
/* Don't break __attribute__((format(printf,M,N))). */
# define printf __printf__
# endif
# if @GNULIB_PRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@
_GL_FUNCDECL_RPL_1 (__printf__, int,
- (const char *format, ...)
+ (const char *restrict format, ...)
__asm__ (@ASM_SYMBOL_PREFIX@
_GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_printf))
- _GL_ATTRIBUTE_FORMAT_PRINTF (1, 2)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 2)
_GL_ARG_NONNULL ((1)));
# else
_GL_FUNCDECL_RPL_1 (__printf__, int,
- (const char *format, ...)
+ (const char *restrict format, ...)
__asm__ (@ASM_SYMBOL_PREFIX@
_GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_printf))
_GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (1, 2)
@@ -894,16 +1057,18 @@ _GL_CXXALIAS_RPL_1 (printf, __printf__, int, (const char *format, ...));
# define printf rpl_printf
# endif
_GL_FUNCDECL_RPL (printf, int,
- (const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (1, 2)
+ (const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 2)
_GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (printf, int, (const char *format, ...));
+_GL_CXXALIAS_RPL (printf, int, (const char *restrict format, ...));
# endif
# define GNULIB_overrides_printf 1
# else
-_GL_CXXALIAS_SYS (printf, int, (const char *format, ...));
+_GL_CXXALIAS_SYS (printf, int, (const char *restrict format, ...));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (printf);
+# endif
#endif
#if !@GNULIB_PRINTF_POSIX@ && defined GNULIB_POSIXCHECK
# if !GNULIB_overrides_printf
@@ -926,7 +1091,9 @@ _GL_CXXALIAS_RPL_1 (putc, rpl_fputc, int, (int c, FILE *stream));
# else
_GL_CXXALIAS_SYS (putc, int, (int c, FILE *stream));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (putc);
+# endif
#endif
#if @GNULIB_PUTCHAR@
@@ -940,7 +1107,9 @@ _GL_CXXALIAS_RPL (putchar, int, (int c));
# else
_GL_CXXALIAS_SYS (putchar, int, (int c));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (putchar);
+# endif
#endif
#if @GNULIB_PUTS@
@@ -954,7 +1123,25 @@ _GL_CXXALIAS_RPL (puts, int, (const char *string));
# else
_GL_CXXALIAS_SYS (puts, int, (const char *string));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (puts);
+# endif
+#endif
+
+#if @GNULIB_MDA_PUTW@
+/* On native Windows, map 'putw' to '_putw', so that -loldnames is not
+ required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::putw always. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef putw
+# define putw _putw
+# endif
+_GL_CXXALIAS_MDA (putw, int, (int w, FILE *restrict stream));
+# else
+_GL_CXXALIAS_SYS (putw, int, (int w, FILE *restrict stream));
+# endif
+_GL_CXXALIASWARN (putw);
#endif
#if @GNULIB_REMOVE@
@@ -968,7 +1155,9 @@ _GL_CXXALIAS_RPL (remove, int, (const char *name));
# else
_GL_CXXALIAS_SYS (remove, int, (const char *name));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (remove);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef remove
/* Assume remove is always declared. */
@@ -991,7 +1180,9 @@ _GL_CXXALIAS_RPL (rename, int,
_GL_CXXALIAS_SYS (rename, int,
(const char *old_filename, const char *new_filename));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (rename);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef rename
/* Assume rename is always declared. */
@@ -1030,33 +1221,35 @@ _GL_WARN_ON_USE (renameat, "renameat is not portable - "
#if @GNULIB_SCANF@
# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@
-# if defined __GNUC__
+# if defined __GNUC__ || defined __clang__
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef scanf
/* Don't break __attribute__((format(scanf,M,N))). */
# define scanf __scanf__
# endif
_GL_FUNCDECL_RPL_1 (__scanf__, int,
- (const char *format, ...)
+ (const char *restrict format, ...)
__asm__ (@ASM_SYMBOL_PREFIX@
_GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_scanf))
_GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 2)
_GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL_1 (scanf, __scanf__, int, (const char *format, ...));
+_GL_CXXALIAS_RPL_1 (scanf, __scanf__, int, (const char *restrict format, ...));
# else
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef scanf
# define scanf rpl_scanf
# endif
-_GL_FUNCDECL_RPL (scanf, int, (const char *format, ...)
+_GL_FUNCDECL_RPL (scanf, int, (const char *restrict format, ...)
_GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 2)
_GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (scanf, int, (const char *format, ...));
+_GL_CXXALIAS_RPL (scanf, int, (const char *restrict format, ...));
# endif
# else
-_GL_CXXALIAS_SYS (scanf, int, (const char *format, ...));
+_GL_CXXALIAS_SYS (scanf, int, (const char *restrict format, ...));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (scanf);
+# endif
#endif
#if @GNULIB_SNPRINTF@
@@ -1065,22 +1258,28 @@ _GL_CXXALIASWARN (scanf);
# define snprintf rpl_snprintf
# endif
_GL_FUNCDECL_RPL (snprintf, int,
- (char *str, size_t size, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (3, 4)
+ (char *restrict str, size_t size,
+ const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 4)
_GL_ARG_NONNULL ((3)));
_GL_CXXALIAS_RPL (snprintf, int,
- (char *str, size_t size, const char *format, ...));
+ (char *restrict str, size_t size,
+ const char *restrict format, ...));
# else
# if !@HAVE_DECL_SNPRINTF@
_GL_FUNCDECL_SYS (snprintf, int,
- (char *str, size_t size, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (3, 4)
+ (char *restrict str, size_t size,
+ const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 4)
_GL_ARG_NONNULL ((3)));
# endif
_GL_CXXALIAS_SYS (snprintf, int,
- (char *str, size_t size, const char *format, ...));
+ (char *restrict str, size_t size,
+ const char *restrict format, ...));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (snprintf);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef snprintf
# if HAVE_RAW_DECL_SNPRINTF
@@ -1103,14 +1302,19 @@ _GL_WARN_ON_USE (snprintf, "snprintf is unportable - "
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# define sprintf rpl_sprintf
# endif
-_GL_FUNCDECL_RPL (sprintf, int, (char *str, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
- _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (sprintf, int, (char *str, const char *format, ...));
+_GL_FUNCDECL_RPL (sprintf, int,
+ (char *restrict str, const char *restrict format, ...)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
+ _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (sprintf, int,
+ (char *restrict str, const char *restrict format, ...));
# else
-_GL_CXXALIAS_SYS (sprintf, int, (char *str, const char *format, ...));
+_GL_CXXALIAS_SYS (sprintf, int,
+ (char *restrict str, const char *restrict format, ...));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (sprintf);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef sprintf
/* Assume sprintf is always declared. */
@@ -1119,6 +1323,22 @@ _GL_WARN_ON_USE (sprintf, "sprintf is not always POSIX compliant - "
"POSIX compliance");
#endif
+#if @GNULIB_MDA_TEMPNAM@
+/* On native Windows, map 'tempnam' to '_tempnam', so that -loldnames is not
+ required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::tempnam always. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef tempnam
+# define tempnam _tempnam
+# endif
+_GL_CXXALIAS_MDA (tempnam, char *, (const char *dir, const char *prefix));
+# else
+_GL_CXXALIAS_SYS (tempnam, char *, (const char *dir, const char *prefix));
+# endif
+_GL_CXXALIASWARN (tempnam);
+#endif
+
#if @GNULIB_TMPFILE@
# if @REPLACE_TMPFILE@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -1129,7 +1349,9 @@ _GL_CXXALIAS_RPL (tmpfile, FILE *, (void));
# else
_GL_CXXALIAS_SYS (tmpfile, FILE *, (void));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (tmpfile);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef tmpfile
# if HAVE_RAW_DECL_TMPFILE
@@ -1149,7 +1371,7 @@ _GL_WARN_ON_USE (tmpfile, "tmpfile is not usable on mingw - "
# endif
_GL_FUNCDECL_RPL (asprintf, int,
(char **result, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
_GL_ARG_NONNULL ((1, 2)));
_GL_CXXALIAS_RPL (asprintf, int,
(char **result, const char *format, ...));
@@ -1157,7 +1379,7 @@ _GL_CXXALIAS_RPL (asprintf, int,
# if !@HAVE_VASPRINTF@
_GL_FUNCDECL_SYS (asprintf, int,
(char **result, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
_GL_ARG_NONNULL ((1, 2)));
# endif
_GL_CXXALIAS_SYS (asprintf, int,
@@ -1170,7 +1392,7 @@ _GL_CXXALIASWARN (asprintf);
# endif
_GL_FUNCDECL_RPL (vasprintf, int,
(char **result, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
_GL_ARG_NONNULL ((1, 2)));
_GL_CXXALIAS_RPL (vasprintf, int,
(char **result, const char *format, va_list args));
@@ -1178,7 +1400,7 @@ _GL_CXXALIAS_RPL (vasprintf, int,
# if !@HAVE_VASPRINTF@
_GL_FUNCDECL_SYS (vasprintf, int,
(char **result, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
_GL_ARG_NONNULL ((1, 2)));
# endif
_GL_CXXALIAS_SYS (vasprintf, int,
@@ -1192,22 +1414,27 @@ _GL_CXXALIASWARN (vasprintf);
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# define vdprintf rpl_vdprintf
# endif
-_GL_FUNCDECL_RPL (vdprintf, int, (int fd, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
- _GL_ARG_NONNULL ((2)));
-_GL_CXXALIAS_RPL (vdprintf, int, (int fd, const char *format, va_list args));
+_GL_FUNCDECL_RPL (vdprintf, int,
+ (int fd, const char *restrict format, va_list args)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (vdprintf, int,
+ (int fd, const char *restrict format, va_list args));
# else
# if !@HAVE_VDPRINTF@
-_GL_FUNCDECL_SYS (vdprintf, int, (int fd, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
- _GL_ARG_NONNULL ((2)));
+_GL_FUNCDECL_SYS (vdprintf, int,
+ (int fd, const char *restrict format, va_list args)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
+ _GL_ARG_NONNULL ((2)));
# endif
/* Need to cast, because on Solaris, the third parameter will likely be
__va_list args. */
_GL_CXXALIAS_SYS_CAST (vdprintf, int,
- (int fd, const char *format, va_list args));
+ (int fd, const char *restrict format, va_list args));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (vdprintf);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef vdprintf
# if HAVE_RAW_DECL_VDPRINTF
@@ -1224,23 +1451,32 @@ _GL_WARN_ON_USE (vdprintf, "vdprintf is unportable - "
# endif
# define GNULIB_overrides_vfprintf 1
# if @GNULIB_VFPRINTF_POSIX@
-_GL_FUNCDECL_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
- _GL_ARG_NONNULL ((1, 2)));
+_GL_FUNCDECL_RPL (vfprintf, int,
+ (FILE *restrict fp,
+ const char *restrict format, va_list args)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
+ _GL_ARG_NONNULL ((1, 2)));
# else
-_GL_FUNCDECL_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 0)
- _GL_ARG_NONNULL ((1, 2)));
+_GL_FUNCDECL_RPL (vfprintf, int,
+ (FILE *restrict fp,
+ const char *restrict format, va_list args)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 0)
+ _GL_ARG_NONNULL ((1, 2)));
# endif
-_GL_CXXALIAS_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args));
+_GL_CXXALIAS_RPL (vfprintf, int,
+ (FILE *restrict fp,
+ const char *restrict format, va_list args));
# else
/* Need to cast, because on Solaris, the third parameter is
__va_list args
and GCC's fixincludes did not change this to __gnuc_va_list. */
_GL_CXXALIAS_SYS_CAST (vfprintf, int,
- (FILE *fp, const char *format, va_list args));
+ (FILE *restrict fp,
+ const char *restrict format, va_list args));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (vfprintf);
+# endif
#endif
#if !@GNULIB_VFPRINTF_POSIX@ && defined GNULIB_POSIXCHECK
# if !GNULIB_overrides_vfprintf
@@ -1259,16 +1495,21 @@ _GL_WARN_ON_USE (vfprintf, "vfprintf is not always POSIX compliant - "
# define vfscanf rpl_vfscanf
# endif
_GL_FUNCDECL_RPL (vfscanf, int,
- (FILE *stream, const char *format, va_list args)
+ (FILE *restrict stream,
+ const char *restrict format, va_list args)
_GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (2, 0)
_GL_ARG_NONNULL ((1, 2)));
_GL_CXXALIAS_RPL (vfscanf, int,
- (FILE *stream, const char *format, va_list args));
+ (FILE *restrict stream,
+ const char *restrict format, va_list args));
# else
_GL_CXXALIAS_SYS (vfscanf, int,
- (FILE *stream, const char *format, va_list args));
+ (FILE *restrict stream,
+ const char *restrict format, va_list args));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (vfscanf);
+# endif
#endif
#if @GNULIB_VPRINTF_POSIX@ || @GNULIB_VPRINTF@
@@ -1279,22 +1520,25 @@ _GL_CXXALIASWARN (vfscanf);
# endif
# define GNULIB_overrides_vprintf 1
# if @GNULIB_VPRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@
-_GL_FUNCDECL_RPL (vprintf, int, (const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (1, 0)
+_GL_FUNCDECL_RPL (vprintf, int, (const char *restrict format, va_list args)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 0)
_GL_ARG_NONNULL ((1)));
# else
-_GL_FUNCDECL_RPL (vprintf, int, (const char *format, va_list args)
+_GL_FUNCDECL_RPL (vprintf, int, (const char *restrict format, va_list args)
_GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (1, 0)
_GL_ARG_NONNULL ((1)));
# endif
-_GL_CXXALIAS_RPL (vprintf, int, (const char *format, va_list args));
+_GL_CXXALIAS_RPL (vprintf, int, (const char *restrict format, va_list args));
# else
/* Need to cast, because on Solaris, the second parameter is
__va_list args
and GCC's fixincludes did not change this to __gnuc_va_list. */
-_GL_CXXALIAS_SYS_CAST (vprintf, int, (const char *format, va_list args));
+_GL_CXXALIAS_SYS_CAST (vprintf, int,
+ (const char *restrict format, va_list args));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (vprintf);
+# endif
#endif
#if !@GNULIB_VPRINTF_POSIX@ && defined GNULIB_POSIXCHECK
# if !GNULIB_overrides_vprintf
@@ -1312,14 +1556,16 @@ _GL_WARN_ON_USE (vprintf, "vprintf is not always POSIX compliant - "
# undef vscanf
# define vscanf rpl_vscanf
# endif
-_GL_FUNCDECL_RPL (vscanf, int, (const char *format, va_list args)
+_GL_FUNCDECL_RPL (vscanf, int, (const char *restrict format, va_list args)
_GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 0)
_GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (vscanf, int, (const char *format, va_list args));
+_GL_CXXALIAS_RPL (vscanf, int, (const char *restrict format, va_list args));
# else
-_GL_CXXALIAS_SYS (vscanf, int, (const char *format, va_list args));
+_GL_CXXALIAS_SYS (vscanf, int, (const char *restrict format, va_list args));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (vscanf);
+# endif
#endif
#if @GNULIB_VSNPRINTF@
@@ -1328,22 +1574,28 @@ _GL_CXXALIASWARN (vscanf);
# define vsnprintf rpl_vsnprintf
# endif
_GL_FUNCDECL_RPL (vsnprintf, int,
- (char *str, size_t size, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0)
+ (char *restrict str, size_t size,
+ const char *restrict format, va_list args)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 0)
_GL_ARG_NONNULL ((3)));
_GL_CXXALIAS_RPL (vsnprintf, int,
- (char *str, size_t size, const char *format, va_list args));
+ (char *restrict str, size_t size,
+ const char *restrict format, va_list args));
# else
# if !@HAVE_DECL_VSNPRINTF@
_GL_FUNCDECL_SYS (vsnprintf, int,
- (char *str, size_t size, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0)
+ (char *restrict str, size_t size,
+ const char *restrict format, va_list args)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 0)
_GL_ARG_NONNULL ((3)));
# endif
_GL_CXXALIAS_SYS (vsnprintf, int,
- (char *str, size_t size, const char *format, va_list args));
+ (char *restrict str, size_t size,
+ const char *restrict format, va_list args));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (vsnprintf);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef vsnprintf
# if HAVE_RAW_DECL_VSNPRINTF
@@ -1358,19 +1610,24 @@ _GL_WARN_ON_USE (vsnprintf, "vsnprintf is unportable - "
# define vsprintf rpl_vsprintf
# endif
_GL_FUNCDECL_RPL (vsprintf, int,
- (char *str, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+ (char *restrict str,
+ const char *restrict format, va_list args)
+ _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
_GL_ARG_NONNULL ((1, 2)));
_GL_CXXALIAS_RPL (vsprintf, int,
- (char *str, const char *format, va_list args));
+ (char *restrict str,
+ const char *restrict format, va_list args));
# else
/* Need to cast, because on Solaris, the third parameter is
__va_list args
and GCC's fixincludes did not change this to __gnuc_va_list. */
_GL_CXXALIAS_SYS_CAST (vsprintf, int,
- (char *str, const char *format, va_list args));
+ (char *restrict str,
+ const char *restrict format, va_list args));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (vsprintf);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef vsprintf
/* Assume vsprintf is always declared. */
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.c
index 0f5dd81407..3fed52a53e 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.c
@@ -1,5 +1,5 @@
/* Searching in a string.
- Copyright (C) 2003, 2007-2019 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2007-2021 Free Software Foundation, Inc.
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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.valgrind b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.valgrind
index 781d037b0e..c71fd1544f 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.valgrind
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strchrnul.valgrind
@@ -1,6 +1,6 @@
# Suppress a valgrind message about use of uninitialized memory in strchrnul().
-# Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2021 Free Software Foundation, Inc.
#
# 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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/string.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/string.in.h
index 4a9292f74a..c76c1820b3 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/string.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/string.in.h
@@ -1,6 +1,6 @@
/* A GNU-like <string.h>.
- Copyright (C) 1995-1996, 2001-2019 Free Software Foundation, Inc.
+ Copyright (C) 1995-1996, 2001-2021 Free Software Foundation, Inc.
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
@@ -54,10 +54,12 @@
/* The __attribute__ feature is available in gcc versions 2.5 and later.
The attribute __pure__ was added in gcc 2.96. */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
-#else
-# define _GL_ATTRIBUTE_PURE /* empty */
+#ifndef _GL_ATTRIBUTE_PURE
+# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__
+# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+# else
+# define _GL_ATTRIBUTE_PURE /* empty */
+# endif
#endif
/* NetBSD 5.0 declares strsignal in <unistd.h>, not in <string.h>. */
@@ -67,6 +69,14 @@
# include <unistd.h>
#endif
+/* AIX 7.2 declares ffsl and ffsll in <strings.h>, not in <string.h>. */
+/* But in any case avoid namespace pollution on glibc systems. */
+#if ((@GNULIB_FFSL@ || @GNULIB_FFSLL@ || defined GNULIB_POSIXCHECK) \
+ && defined _AIX) \
+ && ! defined __GLIBC__
+# include <strings.h>
+#endif
+
/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
/* The definition of _GL_ARG_NONNULL is copied here. */
@@ -108,10 +118,18 @@ _GL_WARN_ON_USE (ffsl, "ffsl is not portable - use the ffsl module");
/* Find the index of the least-significant set bit. */
#if @GNULIB_FFSLL@
-# if !@HAVE_FFSLL@
+# if @REPLACE_FFSLL@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# define ffsll rpl_ffsll
+# endif
+_GL_FUNCDECL_RPL (ffsll, int, (long long int i));
+_GL_CXXALIAS_RPL (ffsll, int, (long long int i));
+# else
+# if !@HAVE_FFSLL@
_GL_FUNCDECL_SYS (ffsll, int, (long long int i));
-# endif
+# endif
_GL_CXXALIAS_SYS (ffsll, int, (long long int i));
+# endif
_GL_CXXALIASWARN (ffsll);
#elif defined GNULIB_POSIXCHECK
# undef ffsll
@@ -121,10 +139,30 @@ _GL_WARN_ON_USE (ffsll, "ffsll is not portable - use the ffsll module");
#endif
+#if @GNULIB_MDA_MEMCCPY@
+/* On native Windows, map 'memccpy' to '_memccpy', so that -loldnames is not
+ required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::memccpy always. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef memccpy
+# define memccpy _memccpy
+# endif
+_GL_CXXALIAS_MDA (memccpy, void *,
+ (void *dest, const void *src, int c, size_t n));
+# else
+_GL_CXXALIAS_SYS (memccpy, void *,
+ (void *dest, const void *src, int c, size_t n));
+# endif
+_GL_CXXALIASWARN (memccpy);
+#endif
+
+
/* Return the first instance of C within N bytes of S, or NULL. */
#if @GNULIB_MEMCHR@
# if @REPLACE_MEMCHR@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef memchr
# define memchr rpl_memchr
# endif
_GL_FUNCDECL_RPL (memchr, void *, (void const *__s, int __c, size_t __n)
@@ -132,11 +170,6 @@ _GL_FUNCDECL_RPL (memchr, void *, (void const *__s, int __c, size_t __n)
_GL_ARG_NONNULL ((1)));
_GL_CXXALIAS_RPL (memchr, void *, (void const *__s, int __c, size_t __n));
# else
-# if ! @HAVE_MEMCHR@
-_GL_FUNCDECL_SYS (memchr, void *, (void const *__s, int __c, size_t __n)
- _GL_ATTRIBUTE_PURE
- _GL_ARG_NONNULL ((1)));
-# endif
/* On some systems, this function is defined as an overloaded function:
extern "C" { const void * std::memchr (const void *, int, size_t); }
extern "C++" { void * std::memchr (void *, int, size_t); } */
@@ -149,7 +182,7 @@ _GL_CXXALIAS_SYS_CAST2 (memchr,
_GL_CXXALIASWARN1 (memchr, void *, (void *__s, int __c, size_t __n));
_GL_CXXALIASWARN1 (memchr, void const *,
(void const *__s, int __c, size_t __n));
-# else
+# elif __GLIBC__ >= 2
_GL_CXXALIASWARN (memchr);
# endif
#elif defined GNULIB_POSIXCHECK
@@ -332,9 +365,11 @@ _GL_WARN_ON_USE (stpncpy, "stpncpy is unportable - "
GB18030 and the character to be searched is a digit. */
# undef strchr
/* Assume strchr is always declared. */
-_GL_WARN_ON_USE (strchr, "strchr cannot work correctly on character strings "
- "in some multibyte locales - "
- "use mbschr if you care about internationalization");
+_GL_WARN_ON_USE_CXX (strchr,
+ const char *, char *, (const char *, int),
+ "strchr cannot work correctly on character strings "
+ "in some multibyte locales - "
+ "use mbschr if you care about internationalization");
#endif
/* Find the first occurrence of C in S or the final NUL byte. */
@@ -385,6 +420,12 @@ _GL_WARN_ON_USE (strchrnul, "strchrnul is unportable - "
# endif
_GL_FUNCDECL_RPL (strdup, char *, (char const *__s) _GL_ARG_NONNULL ((1)));
_GL_CXXALIAS_RPL (strdup, char *, (char const *__s));
+# elif defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef strdup
+# define strdup _strdup
+# endif
+_GL_CXXALIAS_MDA (strdup, char *, (char const *__s));
# else
# if defined __cplusplus && defined GNULIB_NAMESPACE && defined strdup
/* strdup exists as a function and as a macro. Get rid of the macro. */
@@ -402,6 +443,23 @@ _GL_CXXALIASWARN (strdup);
_GL_WARN_ON_USE (strdup, "strdup is unportable - "
"use gnulib module strdup for portability");
# endif
+#elif @GNULIB_MDA_STRDUP@
+/* On native Windows, map 'creat' to '_creat', so that -loldnames is not
+ required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::creat always. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef strdup
+# define strdup _strdup
+# endif
+_GL_CXXALIAS_MDA (strdup, char *, (char const *__s));
+# else
+# if defined __cplusplus && defined GNULIB_NAMESPACE && defined strdup
+# undef strdup
+# endif
+_GL_CXXALIAS_SYS (strdup, char *, (char const *__s));
+# endif
+_GL_CXXALIASWARN (strdup);
#endif
/* Append no more than N characters from SRC onto DEST. */
@@ -411,13 +469,18 @@ _GL_WARN_ON_USE (strdup, "strdup is unportable - "
# undef strncat
# define strncat rpl_strncat
# endif
-_GL_FUNCDECL_RPL (strncat, char *, (char *dest, const char *src, size_t n)
- _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (strncat, char *, (char *dest, const char *src, size_t n));
+_GL_FUNCDECL_RPL (strncat, char *,
+ (char *restrict dest, const char *restrict src, size_t n)
+ _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (strncat, char *,
+ (char *restrict dest, const char *restrict src, size_t n));
# else
-_GL_CXXALIAS_SYS (strncat, char *, (char *dest, const char *src, size_t n));
+_GL_CXXALIAS_SYS (strncat, char *,
+ (char *restrict dest, const char *restrict src, size_t n));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (strncat);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef strncat
# if HAVE_RAW_DECL_STRNCAT
@@ -512,7 +575,7 @@ _GL_CXXALIAS_SYS_CAST2 (strpbrk,
_GL_CXXALIASWARN1 (strpbrk, char *, (char *__s, char const *__accept));
_GL_CXXALIASWARN1 (strpbrk, char const *,
(char const *__s, char const *__accept));
-# else
+# elif __GLIBC__ >= 2
_GL_CXXALIASWARN (strpbrk);
# endif
# if defined GNULIB_POSIXCHECK
@@ -521,15 +584,19 @@ _GL_CXXALIASWARN (strpbrk);
locale encoding is GB18030 and one of the characters to be searched is a
digit. */
# undef strpbrk
-_GL_WARN_ON_USE (strpbrk, "strpbrk cannot work correctly on character strings "
- "in multibyte locales - "
- "use mbspbrk if you care about internationalization");
+_GL_WARN_ON_USE_CXX (strpbrk,
+ const char *, char *, (const char *, const char *),
+ "strpbrk cannot work correctly on character strings "
+ "in multibyte locales - "
+ "use mbspbrk if you care about internationalization");
# endif
#elif defined GNULIB_POSIXCHECK
# undef strpbrk
# if HAVE_RAW_DECL_STRPBRK
-_GL_WARN_ON_USE (strpbrk, "strpbrk is unportable - "
- "use gnulib module strpbrk for portability");
+_GL_WARN_ON_USE_CXX (strpbrk,
+ const char *, char *, (const char *, const char *),
+ "strpbrk is unportable - "
+ "use gnulib module strpbrk for portability");
# endif
#endif
@@ -548,9 +615,11 @@ _GL_WARN_ON_USE (strspn, "strspn cannot work correctly on character strings "
GB18030 and the character to be searched is a digit. */
# undef strrchr
/* Assume strrchr is always declared. */
-_GL_WARN_ON_USE (strrchr, "strrchr cannot work correctly on character strings "
- "in some multibyte locales - "
- "use mbsrchr if you care about internationalization");
+_GL_WARN_ON_USE_CXX (strrchr,
+ const char *, char *, (const char *, int),
+ "strrchr cannot work correctly on character strings "
+ "in some multibyte locales - "
+ "use mbsrchr if you care about internationalization");
#endif
/* Search the next delimiter (char listed in DELIM) starting at *STRINGP.
@@ -614,7 +683,7 @@ _GL_CXXALIAS_SYS_CAST2 (strstr,
_GL_CXXALIASWARN1 (strstr, char *, (char *haystack, const char *needle));
_GL_CXXALIASWARN1 (strstr, const char *,
(const char *haystack, const char *needle));
-# else
+# elif __GLIBC__ >= 2
_GL_CXXALIASWARN (strstr);
# endif
#elif defined GNULIB_POSIXCHECK
@@ -693,7 +762,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.
@@ -964,7 +1033,8 @@ _GL_EXTERN_C char * mbssep (char **stringp, const char *delim)
Caveat: The identity of the delimiting character is lost.
See also mbssep(). */
-_GL_EXTERN_C char * mbstok_r (char *string, const char *delim, char **save_ptr)
+_GL_EXTERN_C char * mbstok_r (char *restrict string, const char *delim,
+ char **save_ptr)
_GL_ARG_NONNULL ((2, 3));
#endif
@@ -980,7 +1050,9 @@ _GL_CXXALIAS_RPL (strerror, char *, (int));
# else
_GL_CXXALIAS_SYS (strerror, char *, (int));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (strerror);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef strerror
/* Assume strerror is always declared. */
@@ -1017,6 +1089,60 @@ _GL_WARN_ON_USE (strerror_r, "strerror_r is unportable - "
# endif
#endif
+/* Return the name of the system error code ERRNUM. */
+#if @GNULIB_STRERRORNAME_NP@
+# if @REPLACE_STRERRORNAME_NP@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef strerrorname_np
+# define strerrorname_np rpl_strerrorname_np
+# endif
+_GL_FUNCDECL_RPL (strerrorname_np, const char *, (int errnum));
+_GL_CXXALIAS_RPL (strerrorname_np, const char *, (int errnum));
+# else
+# if !@HAVE_STRERRORNAME_NP@
+_GL_FUNCDECL_SYS (strerrorname_np, const char *, (int errnum));
+# endif
+_GL_CXXALIAS_SYS (strerrorname_np, const char *, (int errnum));
+# endif
+_GL_CXXALIASWARN (strerrorname_np);
+#elif defined GNULIB_POSIXCHECK
+# undef strerrorname_np
+# if HAVE_RAW_DECL_STRERRORNAME_NP
+_GL_WARN_ON_USE (strerrorname_np, "strerrorname_np is unportable - "
+ "use gnulib module strerrorname_np for portability");
+# endif
+#endif
+
+/* Return an abbreviation string for the signal number SIG. */
+#if @GNULIB_SIGABBREV_NP@
+# if ! @HAVE_SIGABBREV_NP@
+_GL_FUNCDECL_SYS (sigabbrev_np, const char *, (int sig));
+# endif
+_GL_CXXALIAS_SYS (sigabbrev_np, const char *, (int sig));
+_GL_CXXALIASWARN (sigabbrev_np);
+#elif defined GNULIB_POSIXCHECK
+# undef sigabbrev_np
+# if HAVE_RAW_DECL_SIGABBREV_NP
+_GL_WARN_ON_USE (sigabbrev_np, "sigabbrev_np is unportable - "
+ "use gnulib module sigabbrev_np for portability");
+# endif
+#endif
+
+/* Return an English description string for the signal number SIG. */
+#if @GNULIB_SIGDESCR_NP@
+# if ! @HAVE_SIGDESCR_NP@
+_GL_FUNCDECL_SYS (sigdescr_np, const char *, (int sig));
+# endif
+_GL_CXXALIAS_SYS (sigdescr_np, const char *, (int sig));
+_GL_CXXALIASWARN (sigdescr_np);
+#elif defined GNULIB_POSIXCHECK
+# undef sigdescr_np
+# if HAVE_RAW_DECL_SIGDESCR_NP
+_GL_WARN_ON_USE (sigdescr_np, "sigdescr_np is unportable - "
+ "use gnulib module sigdescr_np for portability");
+# endif
+#endif
+
#if @GNULIB_STRSIGNAL@
# if @REPLACE_STRSIGNAL@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strndup.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strndup.c
index 5b74828469..09dec62bbe 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strndup.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strndup.c
@@ -1,6 +1,6 @@
/* A replacement function, for systems that lack strndup.
- Copyright (C) 1996-1998, 2001-2003, 2005-2007, 2009-2019 Free Software
+ Copyright (C) 1996-1998, 2001-2003, 2005-2007, 2009-2021 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strnlen.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strnlen.c
index 9fb663509a..c27a0392c2 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strnlen.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/strnlen.c
@@ -1,5 +1,5 @@
/* Find the length of STRING, but scan at most MAXLEN characters.
- Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc.
+ Copyright (C) 2005-2007, 2009-2021 Free Software Foundation, Inc.
Written by Simon Josefsson.
This program is free software; you can redistribute it and/or modify
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/sys_types.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/sys_types.in.h
index 237e2068cf..654e80335f 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/sys_types.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/sys_types.in.h
@@ -1,6 +1,6 @@
/* Provide a more complete sys/types.h.
- Copyright (C) 2011-2019 Free Software Foundation, Inc.
+ Copyright (C) 2011-2021 Free Software Foundation, Inc.
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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.c
index b3854e3ef9..f9124fa716 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.c
@@ -1,5 +1,5 @@
/* vsprintf with automatic memory allocation.
- Copyright (C) 1999, 2002-2019 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002-2021 Free Software Foundation, Inc.
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
@@ -41,7 +41,14 @@
DCHAR_CONV_FROM_ENCODING A function to convert from char[] to DCHAR[].
DCHAR_IS_UINT8_T Set to 1 if DCHAR_T is uint8_t.
DCHAR_IS_UINT16_T Set to 1 if DCHAR_T is uint16_t.
- DCHAR_IS_UINT32_T Set to 1 if DCHAR_T is uint32_t. */
+ DCHAR_IS_UINT32_T Set to 1 if DCHAR_T is uint32_t.
+ ENABLE_UNISTDIO Set to 1 to enable the unistdio extensions.
+ ENABLE_WCHAR_FALLBACK Set to 1 to avoid EILSEQ during conversion of wide
+ characters (wchar_t) and wide character strings
+ (wchar_t[]) to multibyte sequences. The fallback is the
+ hexadecimal escape syntax (\unnnn or \Unnnnnnnn) or,
+ if wchar_t is not Unicode encoded, \wnnnn or \Wnnnnnnnn.
+ */
/* Tell glibc's <stdio.h> to provide a prototype for snprintf().
This must come before <config.h> because <config.h> may include
@@ -87,6 +94,7 @@
/* Checked size_t computations. */
#include "xsize.h"
+#include "attribute.h"
#include "verify.h"
#if (NEED_PRINTF_DOUBLE || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL
@@ -118,14 +126,6 @@
# include "fpucw.h"
#endif
-#ifndef FALLTHROUGH
-# if __GNUC__ < 7
-# define FALLTHROUGH ((void) 0)
-# else
-# define FALLTHROUGH __attribute__ ((__fallthrough__))
-# endif
-#endif
-
/* Default parameters. */
#ifndef VASNPRINTF
# if WIDE_CHAR_VERSION
@@ -277,6 +277,74 @@ local_wcsnlen (const wchar_t *s, size_t maxlen)
# endif
#endif
+#if (((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL) || ENABLE_WCHAR_FALLBACK) && HAVE_WCHAR_T) || (ENABLE_WCHAR_FALLBACK && HAVE_WINT_T)) && !WIDE_CHAR_VERSION
+# if ENABLE_WCHAR_FALLBACK
+static size_t
+wctomb_fallback (char *s, wchar_t wc)
+{
+ static char hex[16] = "0123456789ABCDEF";
+
+ s[0] = '\\';
+ if (sizeof (wchar_t) > 2 && wc > 0xffff)
+ {
+# if __STDC_ISO_10646__ || (__GLIBC__ >= 2) || (defined _WIN32 || defined __CYGWIN__)
+ s[1] = 'U';
+# else
+ s[1] = 'W';
+# endif
+ s[2] = hex[(wc & 0xf0000000U) >> 28];
+ s[3] = hex[(wc & 0xf000000U) >> 24];
+ s[4] = hex[(wc & 0xf00000U) >> 20];
+ s[5] = hex[(wc & 0xf0000U) >> 16];
+ s[6] = hex[(wc & 0xf000U) >> 12];
+ s[7] = hex[(wc & 0xf00U) >> 8];
+ s[8] = hex[(wc & 0xf0U) >> 4];
+ s[9] = hex[wc & 0xfU];
+ return 10;
+ }
+ else
+ {
+# if __STDC_ISO_10646__ || (__GLIBC__ >= 2) || (defined _WIN32 || defined __CYGWIN__)
+ s[1] = 'u';
+# else
+ s[1] = 'w';
+# endif
+ s[2] = hex[(wc & 0xf000U) >> 12];
+ s[3] = hex[(wc & 0xf00U) >> 8];
+ s[4] = hex[(wc & 0xf0U) >> 4];
+ s[5] = hex[wc & 0xfU];
+ return 6;
+ }
+}
+# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
+static size_t
+local_wcrtomb (char *s, wchar_t wc, mbstate_t *ps)
+{
+ size_t count = wcrtomb (s, wc, ps);
+ if (count == (size_t)(-1))
+ count = wctomb_fallback (s, wc);
+ return count;
+}
+# else
+static int
+local_wctomb (char *s, wchar_t wc)
+{
+ int count = wctomb (s, wc);
+ if (count < 0)
+ count = wctomb_fallback (s, wc);
+ return count;
+}
+# define local_wcrtomb(S, WC, PS) local_wctomb ((S), (WC))
+# endif
+# else
+# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
+# define local_wcrtomb(S, WC, PS) wcrtomb ((S), (WC), (PS))
+# else
+# define local_wcrtomb(S, WC, PS) wctomb ((S), (WC))
+# endif
+# endif
+#endif
+
#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE) && !defined IN_LIBINTL
/* Determine the decimal-point character according to the current locale. */
# ifndef decimal_point_char_defined
@@ -565,7 +633,8 @@ divide (mpn_t a, mpn_t b, mpn_t *q)
mp_limb_t msd = b_ptr[b_len - 1]; /* = b[n-1], > 0 */
/* Determine s = GMP_LIMB_BITS - integer_length (msd).
Code copied from gnulib's integer_length.c. */
-# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
+# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) \
+ || (__clang_major__ >= 4)
s = __builtin_clz (msd);
# else
# if defined DBL_EXPBIT0_WORD && defined DBL_EXPBIT0_BIT
@@ -1553,16 +1622,13 @@ MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion,
switch (conversion)
{
case 'd': case 'i': case 'u':
-# if HAVE_LONG_LONG_INT
if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT)
tmp_length =
(unsigned int) (sizeof (unsigned long long) * CHAR_BIT
* 0.30103 /* binary -> decimal */
)
+ 1; /* turn floor into ceil */
- else
-# endif
- if (type == TYPE_LONGINT || type == TYPE_ULONGINT)
+ else if (type == TYPE_LONGINT || type == TYPE_ULONGINT)
tmp_length =
(unsigned int) (sizeof (unsigned long) * CHAR_BIT
* 0.30103 /* binary -> decimal */
@@ -1583,16 +1649,13 @@ MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion,
break;
case 'o':
-# if HAVE_LONG_LONG_INT
if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT)
tmp_length =
(unsigned int) (sizeof (unsigned long long) * CHAR_BIT
* 0.333334 /* binary -> octal */
)
+ 1; /* turn floor into ceil */
- else
-# endif
- if (type == TYPE_LONGINT || type == TYPE_ULONGINT)
+ else if (type == TYPE_LONGINT || type == TYPE_ULONGINT)
tmp_length =
(unsigned int) (sizeof (unsigned long) * CHAR_BIT
* 0.333334 /* binary -> octal */
@@ -1611,16 +1674,13 @@ MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion,
break;
case 'x': case 'X':
-# if HAVE_LONG_LONG_INT
if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT)
tmp_length =
(unsigned int) (sizeof (unsigned long long) * CHAR_BIT
* 0.25 /* binary -> hexadecimal */
)
+ 1; /* turn floor into ceil */
- else
-# endif
- if (type == TYPE_LONGINT || type == TYPE_ULONGINT)
+ else if (type == TYPE_LONGINT || type == TYPE_ULONGINT)
tmp_length =
(unsigned int) (sizeof (unsigned long) * CHAR_BIT
* 0.25 /* binary -> hexadecimal */
@@ -1686,7 +1746,13 @@ MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion,
case 'c':
# if HAVE_WINT_T && !WIDE_CHAR_VERSION
if (type == TYPE_WIDE_CHAR)
- tmp_length = MB_CUR_MAX;
+ {
+ tmp_length = MB_CUR_MAX;
+# if ENABLE_WCHAR_FALLBACK
+ if (tmp_length < (sizeof (wchar_t) > 2 ? 10 : 6))
+ tmp_length = (sizeof (wchar_t) > 2 ? 10 : 6);
+# endif
+ }
else
# endif
tmp_length = 1;
@@ -1939,11 +2005,9 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
case TYPE_COUNT_LONGINT_POINTER:
*a.arg[dp->arg_index].a.a_count_longint_pointer = length;
break;
-#if HAVE_LONG_LONG_INT
case TYPE_COUNT_LONGLONGINT_POINTER:
*a.arg[dp->arg_index].a.a_count_longlongint_pointer = length;
break;
-#endif
default:
abort ();
}
@@ -2405,7 +2469,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
}
}
#endif
-#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL)) && HAVE_WCHAR_T
+#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL) || ENABLE_WCHAR_FALLBACK) && HAVE_WCHAR_T
else if (dp->conversion == 's'
# if WIDE_CHAR_VERSION
&& a.arg[dp->arg_index].type != TYPE_WIDE_STRING
@@ -2680,11 +2744,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
if (*arg_end == 0)
/* Found the terminating null wide character. */
break;
-# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
- count = wcrtomb (cbuf, *arg_end, &state);
-# else
- count = wctomb (cbuf, *arg_end);
-# endif
+ count = local_wcrtomb (cbuf, *arg_end, &state);
if (count < 0)
{
/* Cannot convert. */
@@ -2725,11 +2785,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
if (*arg_end == 0)
/* Found the terminating null wide character. */
break;
-# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
- count = wcrtomb (cbuf, *arg_end, &state);
-# else
- count = wctomb (cbuf, *arg_end);
-# endif
+ count = local_wcrtomb (cbuf, *arg_end, &state);
if (count < 0)
{
/* Cannot convert. */
@@ -2774,11 +2830,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
if (*arg == 0)
abort ();
-# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
- count = wcrtomb (cbuf, *arg, &state);
-# else
- count = wctomb (cbuf, *arg);
-# endif
+ count = local_wcrtomb (cbuf, *arg, &state);
if (count <= 0)
/* Inconsistency. */
abort ();
@@ -2855,11 +2907,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
if (*arg == 0)
abort ();
-# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
- count = wcrtomb (cbuf, *arg, &state);
-# else
- count = wctomb (cbuf, *arg);
-# endif
+ count = local_wcrtomb (cbuf, *arg, &state);
if (count <= 0)
/* Inconsistency. */
abort ();
@@ -2884,11 +2932,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
if (*arg == 0)
abort ();
-# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
- count = wcrtomb (cbuf, *arg, &state);
-# else
- count = wctomb (cbuf, *arg);
-# endif
+ count = local_wcrtomb (cbuf, *arg, &state);
if (count <= 0)
{
/* Cannot convert. */
@@ -2924,6 +2968,210 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
# endif
}
#endif
+#if ENABLE_WCHAR_FALLBACK && HAVE_WINT_T && !WIDE_CHAR_VERSION
+ else if (dp->conversion == 'c'
+ && a.arg[dp->arg_index].type == TYPE_WIDE_CHAR)
+ {
+ /* Implement the 'lc' directive ourselves, in order to provide
+ the fallback that avoids EILSEQ. */
+ int flags = dp->flags;
+ int has_width;
+ size_t width;
+
+ has_width = 0;
+ width = 0;
+ if (dp->width_start != dp->width_end)
+ {
+ if (dp->width_arg_index != ARG_NONE)
+ {
+ int arg;
+
+ if (!(a.arg[dp->width_arg_index].type == TYPE_INT))
+ abort ();
+ arg = a.arg[dp->width_arg_index].a.a_int;
+ width = arg;
+ if (arg < 0)
+ {
+ /* "A negative field width is taken as a '-' flag
+ followed by a positive field width." */
+ flags |= FLAG_LEFT;
+ width = -width;
+ }
+ }
+ else
+ {
+ const FCHAR_T *digitp = dp->width_start;
+
+ do
+ width = xsum (xtimes (width, 10), *digitp++ - '0');
+ while (digitp != dp->width_end);
+ }
+ has_width = 1;
+ }
+
+ /* %lc in vasnprintf. See the specification of fprintf. */
+ {
+ wchar_t arg = (wchar_t) a.arg[dp->arg_index].a.a_wide_char;
+ size_t characters;
+# if !DCHAR_IS_TCHAR
+ /* This code assumes that TCHAR_T is 'char'. */
+ verify (sizeof (TCHAR_T) == 1);
+ TCHAR_T tmpsrc[64]; /* Assume MB_CUR_MAX <= 64. */
+ DCHAR_T *tmpdst;
+ size_t tmpdst_len;
+# endif
+ size_t w;
+
+# if DCHAR_IS_TCHAR
+ if (has_width)
+# endif
+ {
+ /* Count the number of bytes. */
+ characters = 0;
+ if (arg != 0)
+ {
+ char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */
+ int count;
+# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
+ mbstate_t state;
+ memset (&state, '\0', sizeof (mbstate_t));
+# endif
+
+ count = local_wcrtomb (cbuf, arg, &state);
+ if (count < 0)
+ /* Inconsistency. */
+ abort ();
+ characters = count;
+ }
+ }
+# if DCHAR_IS_TCHAR
+ else
+ {
+ /* The number of bytes doesn't matter. */
+ characters = 0;
+ }
+# endif
+
+# if !DCHAR_IS_TCHAR
+ /* Convert the string into a piece of temporary memory. */
+ if (characters > 0) /* implies arg != 0 */
+ {
+ char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */
+ int count;
+# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
+ mbstate_t state;
+ memset (&state, '\0', sizeof (mbstate_t));
+# endif
+
+ count = local_wcrtomb (cbuf, arg, &state);
+ if (count <= 0)
+ /* Inconsistency. */
+ abort ();
+ memcpy (tmpsrc, cbuf, count);
+ }
+
+ /* Convert from TCHAR_T[] to DCHAR_T[]. */
+ tmpdst =
+ DCHAR_CONV_FROM_ENCODING (locale_charset (),
+ iconveh_question_mark,
+ tmpsrc, characters,
+ NULL,
+ NULL, &tmpdst_len);
+ if (tmpdst == NULL)
+ {
+ int saved_errno = errno;
+ if (!(result == resultbuf || result == NULL))
+ free (result);
+ if (buf_malloced != NULL)
+ free (buf_malloced);
+ CLEANUP ();
+ errno = saved_errno;
+ return NULL;
+ }
+# endif
+
+ if (has_width)
+ {
+# if ENABLE_UNISTDIO
+ /* Outside POSIX, it's preferable to compare the width
+ against the number of _characters_ of the converted
+ value. */
+ w = DCHAR_MBSNLEN (result + length, characters);
+# else
+ /* The width is compared against the number of _bytes_
+ of the converted value, says POSIX. */
+ w = characters;
+# endif
+ }
+ else
+ /* w doesn't matter. */
+ w = 0;
+
+ if (w < width && !(dp->flags & FLAG_LEFT))
+ {
+ size_t n = width - w;
+ ENSURE_ALLOCATION (xsum (length, n));
+ DCHAR_SET (result + length, ' ', n);
+ length += n;
+ }
+
+# if DCHAR_IS_TCHAR
+ if (has_width)
+ {
+ /* We know the number of bytes in advance. */
+ ENSURE_ALLOCATION (xsum (length, characters));
+ if (characters > 0) /* implies arg != 0 */
+ {
+ int count;
+# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
+ mbstate_t state;
+ memset (&state, '\0', sizeof (mbstate_t));
+# endif
+
+ count = local_wcrtomb (result + length, arg, &state);
+ if (count <= 0)
+ /* Inconsistency. */
+ abort ();
+ length += count;
+ }
+ }
+ else
+ {
+ if (arg != 0)
+ {
+ char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */
+ int count;
+# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t
+ mbstate_t state;
+ memset (&state, '\0', sizeof (mbstate_t));
+# endif
+
+ count = local_wcrtomb (cbuf, arg, &state);
+ if (count <= 0)
+ /* Inconsistency. */
+ abort ();
+ ENSURE_ALLOCATION (xsum (length, count));
+ memcpy (result + length, cbuf, count);
+ length += count;
+ }
+ }
+# else
+ ENSURE_ALLOCATION (xsum (length, tmpdst_len));
+ DCHAR_CPY (result + length, tmpdst, tmpdst_len);
+ free (tmpdst);
+ length += tmpdst_len;
+# endif
+
+ if (w < width && (dp->flags & FLAG_LEFT))
+ {
+ size_t n = width - w;
+ ENSURE_ALLOCATION (xsum (length, n));
+ DCHAR_SET (result + length, ' ', n);
+ length += n;
+ }
+ }
+ }
+#endif
#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE) && !defined IN_LIBINTL
else if ((dp->conversion == 'a' || dp->conversion == 'A')
# if !(NEED_PRINTF_DIRECTIVE_A || (NEED_PRINTF_LONG_DOUBLE && NEED_PRINTF_DOUBLE))
@@ -4835,17 +5083,15 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
switch (type)
{
-#if HAVE_LONG_LONG_INT
case TYPE_LONGLONGINT:
case TYPE_ULONGLONGINT:
-# if defined _WIN32 && ! defined __CYGWIN__
+#if defined _WIN32 && ! defined __CYGWIN__
*fbp++ = 'I';
*fbp++ = '6';
*fbp++ = '4';
break;
-# else
+#else
*fbp++ = 'l';
-# endif
#endif
FALLTHROUGH;
case TYPE_LONGINT:
@@ -4871,39 +5117,32 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
#endif
*fbp = dp->conversion;
#if USE_SNPRINTF
-# if ! (((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) \
- && !defined __UCLIBC__) \
- || (defined __APPLE__ && defined __MACH__) \
- || defined __ANDROID__ \
- || (defined _WIN32 && ! defined __CYGWIN__))
- fbp[1] = '%';
- fbp[2] = 'n';
- fbp[3] = '\0';
-# else
- /* On glibc2 systems from glibc >= 2.3 - probably also older
- ones - we know that snprintf's return value conforms to
- ISO C 99: the tests gl_SNPRINTF_RETVAL_C99 and
- gl_SNPRINTF_TRUNCATION_C99 pass.
- Therefore we can avoid using %n in this situation.
- On glibc2 systems from 2004-10-18 or newer, the use of %n
- in format strings in writable memory may crash the program
- (if compiled with _FORTIFY_SOURCE=2), so we should avoid it
- in this situation. */
- /* On Mac OS X 10.3 or newer, we know that snprintf's return
- value conforms to ISO C 99: the tests gl_SNPRINTF_RETVAL_C99
- and gl_SNPRINTF_TRUNCATION_C99 pass.
- Therefore we can avoid using %n in this situation.
- On Mac OS X 10.13 or newer, the use of %n in format strings
- in writable memory by default crashes the program, so we
- should avoid it in this situation. */
- /* On Android, we know that snprintf's return value conforms to
- ISO C 99: the tests gl_SNPRINTF_RETVAL_C99 and
- gl_SNPRINTF_TRUNCATION_C99 pass.
- Therefore we can avoid using %n in this situation.
- Starting on 2018-03-07, the use of %n in format strings
- produces a fatal error (see
- <https://android.googlesource.com/platform/bionic/+/41398d03b7e8e0dfb951660ae713e682e9fc0336>),
- so we should avoid it. */
+# if ((HAVE_SNPRINTF_RETVAL_C99 && HAVE_SNPRINTF_TRUNCATION_C99) \
+ || ((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) \
+ && !defined __UCLIBC__) \
+ || (defined __APPLE__ && defined __MACH__) \
+ || defined __ANDROID__ \
+ || (defined _WIN32 && ! defined __CYGWIN__))
+ /* On systems where we know that snprintf's return value
+ conforms to ISO C 99 (HAVE_SNPRINTF_RETVAL_C99) and that
+ snprintf always produces NUL-terminated strings
+ (HAVE_SNPRINTF_TRUNCATION_C99), it is possible to avoid
+ using %n. And it is desirable to do so, because more and
+ more platforms no longer support %n, for "security reasons".
+ In particular, the following platforms:
+ - On glibc2 systems from 2004-10-18 or newer, the use of
+ %n in format strings in writable memory may crash the
+ program (if compiled with _FORTIFY_SOURCE=2).
+ - On Mac OS X 10.13 or newer, the use of %n in format
+ strings in writable memory by default crashes the
+ program.
+ - On Android, starting on 2018-03-07, the use of %n in
+ format strings produces a fatal error (see
+ <https://android.googlesource.com/platform/bionic/+/41398d03b7e8e0dfb951660ae713e682e9fc0336>).
+ On these platforms, HAVE_SNPRINTF_RETVAL_C99 and
+ HAVE_SNPRINTF_TRUNCATION_C99 are 1. We have listed them
+ explicitly in the condition above, in case of cross-
+ compilation (just to be sure). */
/* On native Windows systems (such as mingw), we can avoid using
%n because:
- Although the gl_SNPRINTF_TRUNCATION_C99 test fails,
@@ -4920,6 +5159,10 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
<https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/set-printf-count-output>
So we should avoid %n in this situation. */
fbp[1] = '\0';
+# else /* AIX <= 5.1, HP-UX, IRIX, OSF/1, Solaris <= 9, BeOS */
+ fbp[1] = '%';
+ fbp[2] = 'n';
+ fbp[3] = '\0';
# endif
#else
fbp[1] = '\0';
@@ -5063,7 +5306,6 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
SNPRINTF_BUF (arg);
}
break;
-#if HAVE_LONG_LONG_INT
case TYPE_LONGLONGINT:
{
long long int arg = a.arg[dp->arg_index].a.a_longlongint;
@@ -5076,7 +5318,6 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
SNPRINTF_BUF (arg);
}
break;
-#endif
case TYPE_DOUBLE:
{
double arg = a.arg[dp->arg_index].a.a_double;
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.h
index 5b192b21e9..863bde9816 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasnprintf.h
@@ -1,5 +1,5 @@
/* vsprintf with automatic memory allocation.
- Copyright (C) 2002-2004, 2007-2019 Free Software Foundation, Inc.
+ Copyright (C) 2002-2004, 2007-2021 Free Software Foundation, Inc.
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
@@ -23,17 +23,8 @@
/* Get size_t. */
#include <stddef.h>
-/* The __attribute__ feature is available in gcc versions 2.5 and later.
- The __-protected variants of the attributes 'format' and 'printf' are
- accepted by gcc versions 2.6.4 (effectively 2.7) and later.
- We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because
- gnulib and libintl do '#define printf __printf__' when they override
- the 'printf' function. */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
-#else
-# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */
-#endif
+/* Get _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD. */
+#include <stdio.h>
#ifdef __cplusplus
extern "C" {
@@ -67,10 +58,12 @@ extern "C" {
# define asnprintf rpl_asnprintf
# define vasnprintf rpl_vasnprintf
#endif
-extern char * asnprintf (char *resultbuf, size_t *lengthp, const char *format, ...)
- _GL_ATTRIBUTE_FORMAT ((__printf__, 3, 4));
-extern char * vasnprintf (char *resultbuf, size_t *lengthp, const char *format, va_list args)
- _GL_ATTRIBUTE_FORMAT ((__printf__, 3, 0));
+extern char * asnprintf (char *restrict resultbuf, size_t *lengthp,
+ const char *format, ...)
+ _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 3, 4));
+extern char * vasnprintf (char *restrict resultbuf, size_t *lengthp,
+ const char *format, va_list args)
+ _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 3, 0));
#ifdef __cplusplus
}
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasprintf.c b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasprintf.c
index f5857ca1d2..df1a2c2a2f 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasprintf.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/vasprintf.c
@@ -1,5 +1,5 @@
/* Formatted output to strings.
- Copyright (C) 1999, 2002, 2006-2019 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002, 2006-2021 Free Software Foundation, Inc.
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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/verify.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/verify.h
index afdc1ad81f..65514c34b9 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/verify.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/verify.h
@@ -1,6 +1,6 @@
/* Compile-time assert-like macros.
- Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc.
+ Copyright (C) 2005-2006, 2009-2021 Free Software Foundation, Inc.
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
@@ -22,12 +22,10 @@
/* Define _GL_HAVE__STATIC_ASSERT to 1 if _Static_assert (R, DIAGNOSTIC)
- works as per C11. This is supported by GCC 4.6.0 and later, in C
- mode.
+ works as per C11. This is supported by GCC 4.6.0+ and by clang 4+.
Define _GL_HAVE__STATIC_ASSERT1 to 1 if _Static_assert (R) works as
- per C2X, and define _GL_HAVE_STATIC_ASSERT1 if static_assert (R)
- works as per C++17. This is supported by GCC 9.1 and later.
+ per C2X. This is supported by GCC 9.1+.
Support compilers claiming conformance to the relevant standard,
and also support GCC when not pedantic. If we were willing to slow
@@ -35,17 +33,14 @@
since this affects only the quality of diagnostics, why bother? */
#ifndef __cplusplus
# if (201112L <= __STDC_VERSION__ \
- || (!defined __STRICT_ANSI__ && 4 < __GNUC__ + (6 <= __GNUC_MINOR__)))
+ || (!defined __STRICT_ANSI__ \
+ && (4 < __GNUC__ + (6 <= __GNUC_MINOR__) || 4 <= __clang_major__)))
# define _GL_HAVE__STATIC_ASSERT 1
# endif
# if (202000L <= __STDC_VERSION__ \
|| (!defined __STRICT_ANSI__ && 9 <= __GNUC__))
# define _GL_HAVE__STATIC_ASSERT1 1
# endif
-#else
-# if 201703L <= __cplusplus || 9 <= __GNUC__
-# define _GL_HAVE_STATIC_ASSERT1 1
-# endif
#endif
/* FreeBSD 9.1 <sys/cdefs.h>, included by <stddef.h> and lots of other
@@ -212,7 +207,9 @@ template <int w>
Unfortunately, unlike C11, this implementation must appear as an
ordinary declaration, and cannot appear inside struct { ... }. */
-#if defined _GL_HAVE__STATIC_ASSERT
+#if 200410 <= __cpp_static_assert
+# define _GL_VERIFY(R, DIAGNOSTIC, ...) static_assert (R, DIAGNOSTIC)
+#elif defined _GL_HAVE__STATIC_ASSERT
# define _GL_VERIFY(R, DIAGNOSTIC, ...) _Static_assert (R, DIAGNOSTIC)
#else
# define _GL_VERIFY(R, DIAGNOSTIC, ...) \
@@ -226,13 +223,29 @@ template <int w>
# define _Static_assert(...) \
_GL_VERIFY (__VA_ARGS__, "static assertion failed", -)
# endif
-# if !defined _GL_HAVE_STATIC_ASSERT1 && !defined static_assert
+# if __cpp_static_assert < 201411 && !defined static_assert
# define static_assert _Static_assert /* C11 requires this #define. */
# endif
#endif
/* @assert.h omit start@ */
+#if 3 < __GNUC__ + (3 < __GNUC_MINOR__ + (4 <= __GNUC_PATCHLEVEL__))
+# define _GL_HAS_BUILTIN_TRAP 1
+#elif defined __has_builtin
+# define _GL_HAS_BUILTIN_TRAP __has_builtin (__builtin_trap)
+#else
+# define _GL_HAS_BUILTIN_TRAP 0
+#endif
+
+#if 4 < __GNUC__ + (5 <= __GNUC_MINOR__)
+# define _GL_HAS_BUILTIN_UNREACHABLE 1
+#elif defined __has_builtin
+# define _GL_HAS_BUILTIN_UNREACHABLE __has_builtin (__builtin_unreachable)
+#else
+# define _GL_HAS_BUILTIN_UNREACHABLE 0
+#endif
+
/* Each of these macros verifies that its argument R is nonzero. To
be portable, R should be an integer constant expression. Unlike
assert (R), there is no run-time overhead.
@@ -260,24 +273,34 @@ template <int w>
# define verify(R) _GL_VERIFY (R, "verify (" #R ")", -)
#endif
-#ifndef __has_builtin
-# define __has_builtin(x) 0
-#endif
-
/* Assume that R always holds. Behavior is undefined if R is false,
- fails to evaluate, or has side effects. Although assuming R can
- help a compiler generate better code or diagnostics, performance
- can suffer if R uses hard-to-optimize features such as function
- calls not inlined by the compiler. */
+ fails to evaluate, or has side effects.
+
+ 'assume (R)' is a directive from the programmer telling the
+ compiler that R is true so the compiler needn't generate code to
+ test R. This is why 'assume' is in verify.h: it's related to
+ static checking (in this case, static checking done by the
+ programmer), not dynamic checking.
+
+ 'assume (R)' can affect compilation of all the code, not just code
+ that happens to be executed after the assume (R) is "executed".
+ For example, if the code mistakenly does 'assert (R); assume (R);'
+ the compiler is entitled to optimize away the 'assert (R)'.
+
+ Although assuming R can help a compiler generate better code or
+ diagnostics, performance can suffer if R uses hard-to-optimize
+ features such as function calls not inlined by the compiler.
+
+ Avoid Clang's __builtin_assume, as it breaks GNU Emacs master
+ as of 2020-08-23T21:09:49Z!eggert@cs.ucla.edu; see
+ <https://bugs.gnu.org/43152#71>. It's not known whether this breakage
+ is a Clang bug or an Emacs bug; play it safe for now. */
-#if (__has_builtin (__builtin_unreachable) \
- || 4 < __GNUC__ + (5 <= __GNUC_MINOR__))
+#if _GL_HAS_BUILTIN_UNREACHABLE
# define assume(R) ((R) ? (void) 0 : __builtin_unreachable ())
#elif 1200 <= _MSC_VER
# define assume(R) __assume (R)
-#elif ((defined GCC_LINT || defined lint) \
- && (__has_builtin (__builtin_trap) \
- || 3 < __GNUC__ + (3 < __GNUC_MINOR__ + (4 <= __GNUC_PATCHLEVEL__))))
+#elif (defined GCC_LINT || defined lint) && _GL_HAS_BUILTIN_TRAP
/* Doing it this way helps various packages when configured with
--enable-gcc-warnings, which compiles with -Dlint. It's nicer
when 'assume' silences warnings even with older GCCs. */
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/warn-on-use.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/warn-on-use.h
index 7d11a15691..5d5b17f05b 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/warn-on-use.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/warn-on-use.h
@@ -1,5 +1,5 @@
/* A C macro for emitting warnings if a function is used.
- Copyright (C) 2010-2019 Free Software Foundation, Inc.
+ Copyright (C) 2010-2021 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
@@ -87,6 +87,13 @@
extern __typeof__ (function) function __attribute__ ((__warning__ (message)))
# define _GL_WARN_ON_USE_ATTRIBUTE(message) \
__attribute__ ((__warning__ (message)))
+# elif __clang_major__ >= 4
+/* Another compiler attribute is available in clang. */
+# define _GL_WARN_ON_USE(function, message) \
+extern __typeof__ (function) function \
+ __attribute__ ((__diagnose_if__ (1, message, "warning")))
+# define _GL_WARN_ON_USE_ATTRIBUTE(message) \
+ __attribute__ ((__diagnose_if__ (1, message, "warning")))
# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING
/* Verify the existence of the function. */
# define _GL_WARN_ON_USE(function, message) \
@@ -99,24 +106,35 @@ _GL_WARN_EXTERN_C int _gl_warn_on_use
# endif
#endif
-/* _GL_WARN_ON_USE_CXX (function, rettype, parameters_and_attributes, "string")
- is like _GL_WARN_ON_USE (function, "string"), except that the function is
- declared with the given prototype, consisting of return type, parameters,
- and attributes.
+/* _GL_WARN_ON_USE_CXX (function, rettype_gcc, rettype_clang, parameters_and_attributes, "message")
+ is like _GL_WARN_ON_USE (function, "message"), except that in C++ mode the
+ function is declared with the given prototype, consisting of return type,
+ parameters, and attributes.
This variant is useful for overloaded functions in C++. _GL_WARN_ON_USE does
not work in this case. */
#ifndef _GL_WARN_ON_USE_CXX
-# if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__)
-# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \
-extern rettype function parameters_and_attributes \
- __attribute__ ((__warning__ (msg)))
-# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING
+# if !defined __cplusplus
+# define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
+ _GL_WARN_ON_USE (function, msg)
+# else
+# if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__)
+/* A compiler attribute is available in gcc versions 4.3.0 and later. */
+# define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
+extern rettype_gcc function parameters_and_attributes \
+ __attribute__ ((__warning__ (msg)))
+# elif __clang_major__ >= 4
+/* Another compiler attribute is available in clang. */
+# define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
+extern rettype_clang function parameters_and_attributes \
+ __attribute__ ((__diagnose_if__ (1, msg, "warning")))
+# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING
/* Verify the existence of the function. */
-# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \
-extern rettype function parameters_and_attributes
-# else /* Unsupported. */
-# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \
+# define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
+extern rettype_gcc function parameters_and_attributes
+# else /* Unsupported. */
+# define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
_GL_WARN_EXTERN_C int _gl_warn_on_use
+# endif
# endif
#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/wchar.in.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/wchar.in.h
index 17d569129c..cdda6806bd 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/wchar.in.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/wchar.in.h
@@ -1,6 +1,6 @@
/* A substitute for ISO C99 <wchar.h>, for platforms that have issues.
- Copyright (C) 2007-2019 Free Software Foundation, Inc.
+ Copyright (C) 2007-2021 Free Software Foundation, Inc.
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
@@ -19,7 +19,7 @@
/*
* ISO C 99 <wchar.h> for platforms that have issues.
- * <http://www.opengroup.org/susv3xbd/wchar.h.html>
+ * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/wchar.h.html>
*
* For now, this just ensures proper prerequisite inclusion order and
* the declaration of wcwidth().
@@ -33,7 +33,8 @@
#if (((defined __need_mbstate_t || defined __need_wint_t) \
&& !defined __MINGW32__) \
|| (defined __hpux \
- && ((defined _INTTYPES_INCLUDED && !defined strtoimax) \
+ && ((defined _INTTYPES_INCLUDED \
+ && !defined _GL_FINISHED_INCLUDING_SYSTEM_INTTYPES_H) \
|| defined _GL_JUST_INCLUDE_SYSTEM_WCHAR_H)) \
|| (defined __MINGW32__ && defined __STRING_H_SOURCED__) \
|| defined _GL_ALREADY_INCLUDING_WCHAR_H)
@@ -64,20 +65,12 @@
# include <features.h> /* for __GLIBC__ */
#endif
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>.
- In some builds of uClibc, <wchar.h> is nonexistent and wchar_t is defined
+/* In some builds of uClibc, <wchar.h> is nonexistent and wchar_t is defined
by <stddef.h>.
But avoid namespace pollution on glibc systems. */
#if !(defined __GLIBC__ && !defined __UCLIBC__)
# include <stddef.h>
#endif
-#ifndef __GLIBC__
-# include <stdio.h>
-# include <time.h>
-#endif
/* Include the original <wchar.h> if it exists.
Some builds of uClibc lack it. */
@@ -93,10 +86,12 @@
/* The __attribute__ feature is available in gcc versions 2.5 and later.
The attribute __pure__ was added in gcc 2.96. */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
-#else
-# define _GL_ATTRIBUTE_PURE /* empty */
+#ifndef _GL_ATTRIBUTE_PURE
+# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__
+# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+# else
+# define _GL_ATTRIBUTE_PURE /* empty */
+# endif
#endif
/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
@@ -137,12 +132,16 @@ typedef unsigned int rpl_wint_t;
/* Override mbstate_t if it is too small.
On IRIX 6.5, sizeof (mbstate_t) == 1, which is not sufficient for
- implementing mbrtowc for encodings like UTF-8. */
-#if !(@HAVE_MBSINIT@ && @HAVE_MBRTOWC@) || @REPLACE_MBSTATE_T@
+ implementing mbrtowc for encodings like UTF-8.
+ On AIX and MSVC, mbrtowc needs to be overridden, but mbstate_t exists and is
+ large enough and overriding it would cause problems in C++ mode. */
+#if !(((defined _WIN32 && !defined __CYGWIN__) || @HAVE_MBSINIT@) && @HAVE_MBRTOWC@) || @REPLACE_MBSTATE_T@
# if !GNULIB_defined_mbstate_t
+# if !(defined _AIX || defined _MSC_VER)
typedef int rpl_mbstate_t;
-# undef mbstate_t
-# define mbstate_t rpl_mbstate_t
+# undef mbstate_t
+# define mbstate_t rpl_mbstate_t
+# endif
# define GNULIB_defined_mbstate_t 1
# endif
#endif
@@ -161,9 +160,12 @@ _GL_CXXALIAS_RPL (btowc, wint_t, (int c));
# if !@HAVE_BTOWC@
_GL_FUNCDECL_SYS (btowc, wint_t, (int c) _GL_ATTRIBUTE_PURE);
# endif
-_GL_CXXALIAS_SYS (btowc, wint_t, (int c));
+/* Need to cast, because on mingw, the return type is 'unsigned short'. */
+_GL_CXXALIAS_SYS_CAST (btowc, wint_t, (int c));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (btowc);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef btowc
# if HAVE_RAW_DECL_BTOWC
@@ -189,7 +191,9 @@ _GL_FUNCDECL_SYS (wctob, int, (wint_t wc) _GL_ATTRIBUTE_PURE);
# endif
_GL_CXXALIAS_SYS (wctob, int, (wint_t wc));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wctob);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wctob
# if HAVE_RAW_DECL_WCTOB
@@ -214,7 +218,9 @@ _GL_FUNCDECL_SYS (mbsinit, int, (const mbstate_t *ps));
# endif
_GL_CXXALIAS_SYS (mbsinit, int, (const mbstate_t *ps));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (mbsinit);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef mbsinit
# if HAVE_RAW_DECL_MBSINIT
@@ -232,18 +238,24 @@ _GL_WARN_ON_USE (mbsinit, "mbsinit is unportable - "
# define mbrtowc rpl_mbrtowc
# endif
_GL_FUNCDECL_RPL (mbrtowc, size_t,
- (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps));
+ (wchar_t *restrict pwc, const char *restrict s, size_t n,
+ mbstate_t *restrict ps));
_GL_CXXALIAS_RPL (mbrtowc, size_t,
- (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps));
+ (wchar_t *restrict pwc, const char *restrict s, size_t n,
+ mbstate_t *restrict ps));
# else
# if !@HAVE_MBRTOWC@
_GL_FUNCDECL_SYS (mbrtowc, size_t,
- (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps));
+ (wchar_t *restrict pwc, const char *restrict s, size_t n,
+ mbstate_t *restrict ps));
# endif
_GL_CXXALIAS_SYS (mbrtowc, size_t,
- (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps));
+ (wchar_t *restrict pwc, const char *restrict s, size_t n,
+ mbstate_t *restrict ps));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (mbrtowc);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef mbrtowc
# if HAVE_RAW_DECL_MBRTOWC
@@ -260,15 +272,21 @@ _GL_WARN_ON_USE (mbrtowc, "mbrtowc is unportable - "
# undef mbrlen
# define mbrlen rpl_mbrlen
# endif
-_GL_FUNCDECL_RPL (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps));
-_GL_CXXALIAS_RPL (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps));
+_GL_FUNCDECL_RPL (mbrlen, size_t,
+ (const char *restrict s, size_t n, mbstate_t *restrict ps));
+_GL_CXXALIAS_RPL (mbrlen, size_t,
+ (const char *restrict s, size_t n, mbstate_t *restrict ps));
# else
# if !@HAVE_MBRLEN@
-_GL_FUNCDECL_SYS (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps));
+_GL_FUNCDECL_SYS (mbrlen, size_t,
+ (const char *restrict s, size_t n, mbstate_t *restrict ps));
# endif
-_GL_CXXALIAS_SYS (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps));
+_GL_CXXALIAS_SYS (mbrlen, size_t,
+ (const char *restrict s, size_t n, mbstate_t *restrict ps));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (mbrlen);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef mbrlen
# if HAVE_RAW_DECL_MBRLEN
@@ -286,22 +304,30 @@ _GL_WARN_ON_USE (mbrlen, "mbrlen is unportable - "
# define mbsrtowcs rpl_mbsrtowcs
# endif
_GL_FUNCDECL_RPL (mbsrtowcs, size_t,
- (wchar_t *dest, const char **srcp, size_t len, mbstate_t *ps)
+ (wchar_t *restrict dest,
+ const char **restrict srcp, size_t len,
+ mbstate_t *restrict ps)
_GL_ARG_NONNULL ((2)));
_GL_CXXALIAS_RPL (mbsrtowcs, size_t,
- (wchar_t *dest, const char **srcp, size_t len,
- mbstate_t *ps));
+ (wchar_t *restrict dest,
+ const char **restrict srcp, size_t len,
+ mbstate_t *restrict ps));
# else
# if !@HAVE_MBSRTOWCS@
_GL_FUNCDECL_SYS (mbsrtowcs, size_t,
- (wchar_t *dest, const char **srcp, size_t len, mbstate_t *ps)
+ (wchar_t *restrict dest,
+ const char **restrict srcp, size_t len,
+ mbstate_t *restrict ps)
_GL_ARG_NONNULL ((2)));
# endif
_GL_CXXALIAS_SYS (mbsrtowcs, size_t,
- (wchar_t *dest, const char **srcp, size_t len,
- mbstate_t *ps));
+ (wchar_t *restrict dest,
+ const char **restrict srcp, size_t len,
+ mbstate_t *restrict ps));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (mbsrtowcs);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef mbsrtowcs
# if HAVE_RAW_DECL_MBSRTOWCS
@@ -319,22 +345,26 @@ _GL_WARN_ON_USE (mbsrtowcs, "mbsrtowcs is unportable - "
# define mbsnrtowcs rpl_mbsnrtowcs
# endif
_GL_FUNCDECL_RPL (mbsnrtowcs, size_t,
- (wchar_t *dest, const char **srcp, size_t srclen, size_t len,
- mbstate_t *ps)
+ (wchar_t *restrict dest,
+ const char **restrict srcp, size_t srclen, size_t len,
+ mbstate_t *restrict ps)
_GL_ARG_NONNULL ((2)));
_GL_CXXALIAS_RPL (mbsnrtowcs, size_t,
- (wchar_t *dest, const char **srcp, size_t srclen, size_t len,
- mbstate_t *ps));
+ (wchar_t *restrict dest,
+ const char **restrict srcp, size_t srclen, size_t len,
+ mbstate_t *restrict ps));
# else
# if !@HAVE_MBSNRTOWCS@
_GL_FUNCDECL_SYS (mbsnrtowcs, size_t,
- (wchar_t *dest, const char **srcp, size_t srclen, size_t len,
- mbstate_t *ps)
+ (wchar_t *restrict dest,
+ const char **restrict srcp, size_t srclen, size_t len,
+ mbstate_t *restrict ps)
_GL_ARG_NONNULL ((2)));
# endif
_GL_CXXALIAS_SYS (mbsnrtowcs, size_t,
- (wchar_t *dest, const char **srcp, size_t srclen, size_t len,
- mbstate_t *ps));
+ (wchar_t *restrict dest,
+ const char **restrict srcp, size_t srclen, size_t len,
+ mbstate_t *restrict ps));
# endif
_GL_CXXALIASWARN (mbsnrtowcs);
#elif defined GNULIB_POSIXCHECK
@@ -353,15 +383,21 @@ _GL_WARN_ON_USE (mbsnrtowcs, "mbsnrtowcs is unportable - "
# undef wcrtomb
# define wcrtomb rpl_wcrtomb
# endif
-_GL_FUNCDECL_RPL (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps));
-_GL_CXXALIAS_RPL (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps));
+_GL_FUNCDECL_RPL (wcrtomb, size_t,
+ (char *restrict s, wchar_t wc, mbstate_t *restrict ps));
+_GL_CXXALIAS_RPL (wcrtomb, size_t,
+ (char *restrict s, wchar_t wc, mbstate_t *restrict ps));
# else
# if !@HAVE_WCRTOMB@
-_GL_FUNCDECL_SYS (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps));
+_GL_FUNCDECL_SYS (wcrtomb, size_t,
+ (char *restrict s, wchar_t wc, mbstate_t *restrict ps));
# endif
-_GL_CXXALIAS_SYS (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps));
+_GL_CXXALIAS_SYS (wcrtomb, size_t,
+ (char *restrict s, wchar_t wc, mbstate_t *restrict ps));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcrtomb);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcrtomb
# if HAVE_RAW_DECL_WCRTOMB
@@ -379,22 +415,30 @@ _GL_WARN_ON_USE (wcrtomb, "wcrtomb is unportable - "
# define wcsrtombs rpl_wcsrtombs
# endif
_GL_FUNCDECL_RPL (wcsrtombs, size_t,
- (char *dest, const wchar_t **srcp, size_t len, mbstate_t *ps)
+ (char *restrict dest, const wchar_t **restrict srcp,
+ size_t len,
+ mbstate_t *restrict ps)
_GL_ARG_NONNULL ((2)));
_GL_CXXALIAS_RPL (wcsrtombs, size_t,
- (char *dest, const wchar_t **srcp, size_t len,
- mbstate_t *ps));
+ (char *restrict dest, const wchar_t **restrict srcp,
+ size_t len,
+ mbstate_t *restrict ps));
# else
# if !@HAVE_WCSRTOMBS@
_GL_FUNCDECL_SYS (wcsrtombs, size_t,
- (char *dest, const wchar_t **srcp, size_t len, mbstate_t *ps)
+ (char *restrict dest, const wchar_t **restrict srcp,
+ size_t len,
+ mbstate_t *restrict ps)
_GL_ARG_NONNULL ((2)));
# endif
_GL_CXXALIAS_SYS (wcsrtombs, size_t,
- (char *dest, const wchar_t **srcp, size_t len,
- mbstate_t *ps));
+ (char *restrict dest, const wchar_t **restrict srcp,
+ size_t len,
+ mbstate_t *restrict ps));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsrtombs);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcsrtombs
# if HAVE_RAW_DECL_WCSRTOMBS
@@ -412,24 +456,34 @@ _GL_WARN_ON_USE (wcsrtombs, "wcsrtombs is unportable - "
# define wcsnrtombs rpl_wcsnrtombs
# endif
_GL_FUNCDECL_RPL (wcsnrtombs, size_t,
- (char *dest, const wchar_t **srcp, size_t srclen, size_t len,
- mbstate_t *ps)
+ (char *restrict dest,
+ const wchar_t **restrict srcp, size_t srclen,
+ size_t len,
+ mbstate_t *restrict ps)
_GL_ARG_NONNULL ((2)));
_GL_CXXALIAS_RPL (wcsnrtombs, size_t,
- (char *dest, const wchar_t **srcp, size_t srclen, size_t len,
- mbstate_t *ps));
+ (char *restrict dest,
+ const wchar_t **restrict srcp, size_t srclen,
+ size_t len,
+ mbstate_t *restrict ps));
# else
-# if !@HAVE_WCSNRTOMBS@
+# if !@HAVE_WCSNRTOMBS@ || (defined __cplusplus && defined __sun)
_GL_FUNCDECL_SYS (wcsnrtombs, size_t,
- (char *dest, const wchar_t **srcp, size_t srclen, size_t len,
- mbstate_t *ps)
+ (char *restrict dest,
+ const wchar_t **restrict srcp, size_t srclen,
+ size_t len,
+ mbstate_t *restrict ps)
_GL_ARG_NONNULL ((2)));
# endif
_GL_CXXALIAS_SYS (wcsnrtombs, size_t,
- (char *dest, const wchar_t **srcp, size_t srclen, size_t len,
- mbstate_t *ps));
+ (char *restrict dest,
+ const wchar_t **restrict srcp, size_t srclen,
+ size_t len,
+ mbstate_t *restrict ps));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsnrtombs);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcsnrtombs
# if HAVE_RAW_DECL_WCSNRTOMBS
@@ -455,7 +509,9 @@ _GL_FUNCDECL_SYS (wcwidth, int, (wchar_t) _GL_ATTRIBUTE_PURE);
# endif
_GL_CXXALIAS_SYS (wcwidth, int, (wchar_t));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcwidth);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcwidth
# if HAVE_RAW_DECL_WCWIDTH
@@ -484,7 +540,7 @@ _GL_CXXALIAS_SYS_CAST2 (wmemchr,
_GL_CXXALIASWARN1 (wmemchr, wchar_t *, (wchar_t *s, wchar_t c, size_t n));
_GL_CXXALIASWARN1 (wmemchr, const wchar_t *,
(const wchar_t *s, wchar_t c, size_t n));
-# else
+# elif __GLIBC__ >= 2
_GL_CXXALIASWARN (wmemchr);
# endif
#elif defined GNULIB_POSIXCHECK
@@ -505,7 +561,9 @@ _GL_FUNCDECL_SYS (wmemcmp, int,
# endif
_GL_CXXALIAS_SYS (wmemcmp, int,
(const wchar_t *s1, const wchar_t *s2, size_t n));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wmemcmp);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wmemcmp
# if HAVE_RAW_DECL_WMEMCMP
@@ -519,11 +577,15 @@ _GL_WARN_ON_USE (wmemcmp, "wmemcmp is unportable - "
#if @GNULIB_WMEMCPY@
# if !@HAVE_WMEMCPY@
_GL_FUNCDECL_SYS (wmemcpy, wchar_t *,
- (wchar_t *dest, const wchar_t *src, size_t n));
+ (wchar_t *restrict dest,
+ const wchar_t *restrict src, size_t n));
# endif
_GL_CXXALIAS_SYS (wmemcpy, wchar_t *,
- (wchar_t *dest, const wchar_t *src, size_t n));
+ (wchar_t *restrict dest,
+ const wchar_t *restrict src, size_t n));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wmemcpy);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wmemcpy
# if HAVE_RAW_DECL_WMEMCPY
@@ -542,7 +604,9 @@ _GL_FUNCDECL_SYS (wmemmove, wchar_t *,
# endif
_GL_CXXALIAS_SYS (wmemmove, wchar_t *,
(wchar_t *dest, const wchar_t *src, size_t n));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wmemmove);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wmemmove
# if HAVE_RAW_DECL_WMEMMOVE
@@ -552,13 +616,38 @@ _GL_WARN_ON_USE (wmemmove, "wmemmove is unportable - "
#endif
+/* Copy N wide characters of SRC to DEST.
+ Return pointer to wide characters after the last written wide character. */
+#if @GNULIB_WMEMPCPY@
+# if !@HAVE_WMEMPCPY@
+_GL_FUNCDECL_SYS (wmempcpy, wchar_t *,
+ (wchar_t *restrict dest,
+ const wchar_t *restrict src, size_t n));
+# endif
+_GL_CXXALIAS_SYS (wmempcpy, wchar_t *,
+ (wchar_t *restrict dest,
+ const wchar_t *restrict src, size_t n));
+# if __GLIBC__ >= 2
+_GL_CXXALIASWARN (wmempcpy);
+# endif
+#elif defined GNULIB_POSIXCHECK
+# undef wmempcpy
+# if HAVE_RAW_DECL_WMEMPCPY
+_GL_WARN_ON_USE (wmempcpy, "wmempcpy is unportable - "
+ "use gnulib module wmempcpy for portability");
+# endif
+#endif
+
+
/* Set N wide characters of S to C. */
#if @GNULIB_WMEMSET@
# if !@HAVE_WMEMSET@
_GL_FUNCDECL_SYS (wmemset, wchar_t *, (wchar_t *s, wchar_t c, size_t n));
# endif
_GL_CXXALIAS_SYS (wmemset, wchar_t *, (wchar_t *s, wchar_t c, size_t n));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wmemset);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wmemset
# if HAVE_RAW_DECL_WMEMSET
@@ -574,7 +663,9 @@ _GL_WARN_ON_USE (wmemset, "wmemset is unportable - "
_GL_FUNCDECL_SYS (wcslen, size_t, (const wchar_t *s) _GL_ATTRIBUTE_PURE);
# endif
_GL_CXXALIAS_SYS (wcslen, size_t, (const wchar_t *s));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcslen);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcslen
# if HAVE_RAW_DECL_WCSLEN
@@ -604,10 +695,14 @@ _GL_WARN_ON_USE (wcsnlen, "wcsnlen is unportable - "
/* Copy SRC to DEST. */
#if @GNULIB_WCSCPY@
# if !@HAVE_WCSCPY@
-_GL_FUNCDECL_SYS (wcscpy, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_FUNCDECL_SYS (wcscpy, wchar_t *,
+ (wchar_t *restrict dest, const wchar_t *restrict src));
# endif
-_GL_CXXALIAS_SYS (wcscpy, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_CXXALIAS_SYS (wcscpy, wchar_t *,
+ (wchar_t *restrict dest, const wchar_t *restrict src));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcscpy);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcscpy
# if HAVE_RAW_DECL_WCSCPY
@@ -620,9 +715,11 @@ _GL_WARN_ON_USE (wcscpy, "wcscpy is unportable - "
/* Copy SRC to DEST, returning the address of the terminating L'\0' in DEST. */
#if @GNULIB_WCPCPY@
# if !@HAVE_WCPCPY@
-_GL_FUNCDECL_SYS (wcpcpy, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_FUNCDECL_SYS (wcpcpy, wchar_t *,
+ (wchar_t *restrict dest, const wchar_t *restrict src));
# endif
-_GL_CXXALIAS_SYS (wcpcpy, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_CXXALIAS_SYS (wcpcpy, wchar_t *,
+ (wchar_t *restrict dest, const wchar_t *restrict src));
_GL_CXXALIASWARN (wcpcpy);
#elif defined GNULIB_POSIXCHECK
# undef wcpcpy
@@ -637,11 +734,15 @@ _GL_WARN_ON_USE (wcpcpy, "wcpcpy is unportable - "
#if @GNULIB_WCSNCPY@
# if !@HAVE_WCSNCPY@
_GL_FUNCDECL_SYS (wcsncpy, wchar_t *,
- (wchar_t *dest, const wchar_t *src, size_t n));
+ (wchar_t *restrict dest,
+ const wchar_t *restrict src, size_t n));
# endif
_GL_CXXALIAS_SYS (wcsncpy, wchar_t *,
- (wchar_t *dest, const wchar_t *src, size_t n));
+ (wchar_t *restrict dest,
+ const wchar_t *restrict src, size_t n));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsncpy);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcsncpy
# if HAVE_RAW_DECL_WCSNCPY
@@ -656,10 +757,12 @@ _GL_WARN_ON_USE (wcsncpy, "wcsncpy is unportable - "
#if @GNULIB_WCPNCPY@
# if !@HAVE_WCPNCPY@
_GL_FUNCDECL_SYS (wcpncpy, wchar_t *,
- (wchar_t *dest, const wchar_t *src, size_t n));
+ (wchar_t *restrict dest,
+ const wchar_t *restrict src, size_t n));
# endif
_GL_CXXALIAS_SYS (wcpncpy, wchar_t *,
- (wchar_t *dest, const wchar_t *src, size_t n));
+ (wchar_t *restrict dest,
+ const wchar_t *restrict src, size_t n));
_GL_CXXALIASWARN (wcpncpy);
#elif defined GNULIB_POSIXCHECK
# undef wcpncpy
@@ -673,10 +776,14 @@ _GL_WARN_ON_USE (wcpncpy, "wcpncpy is unportable - "
/* Append SRC onto DEST. */
#if @GNULIB_WCSCAT@
# if !@HAVE_WCSCAT@
-_GL_FUNCDECL_SYS (wcscat, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_FUNCDECL_SYS (wcscat, wchar_t *,
+ (wchar_t *restrict dest, const wchar_t *restrict src));
# endif
-_GL_CXXALIAS_SYS (wcscat, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_CXXALIAS_SYS (wcscat, wchar_t *,
+ (wchar_t *restrict dest, const wchar_t *restrict src));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcscat);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcscat
# if HAVE_RAW_DECL_WCSCAT
@@ -690,11 +797,15 @@ _GL_WARN_ON_USE (wcscat, "wcscat is unportable - "
#if @GNULIB_WCSNCAT@
# if !@HAVE_WCSNCAT@
_GL_FUNCDECL_SYS (wcsncat, wchar_t *,
- (wchar_t *dest, const wchar_t *src, size_t n));
+ (wchar_t *restrict dest, const wchar_t *restrict src,
+ size_t n));
# endif
_GL_CXXALIAS_SYS (wcsncat, wchar_t *,
- (wchar_t *dest, const wchar_t *src, size_t n));
+ (wchar_t *restrict dest, const wchar_t *restrict src,
+ size_t n));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsncat);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcsncat
# if HAVE_RAW_DECL_WCSNCAT
@@ -711,7 +822,9 @@ _GL_FUNCDECL_SYS (wcscmp, int, (const wchar_t *s1, const wchar_t *s2)
_GL_ATTRIBUTE_PURE);
# endif
_GL_CXXALIAS_SYS (wcscmp, int, (const wchar_t *s1, const wchar_t *s2));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcscmp);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcscmp
# if HAVE_RAW_DECL_WCSCMP
@@ -730,7 +843,9 @@ _GL_FUNCDECL_SYS (wcsncmp, int,
# endif
_GL_CXXALIAS_SYS (wcsncmp, int,
(const wchar_t *s1, const wchar_t *s2, size_t n));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsncmp);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcsncmp
# if HAVE_RAW_DECL_WCSNCMP
@@ -783,7 +898,9 @@ _GL_WARN_ON_USE (wcsncasecmp, "wcsncasecmp is unportable - "
_GL_FUNCDECL_SYS (wcscoll, int, (const wchar_t *s1, const wchar_t *s2));
# endif
_GL_CXXALIAS_SYS (wcscoll, int, (const wchar_t *s1, const wchar_t *s2));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcscoll);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcscoll
# if HAVE_RAW_DECL_WCSCOLL
@@ -798,10 +915,14 @@ _GL_WARN_ON_USE (wcscoll, "wcscoll is unportable - "
original strings. */
#if @GNULIB_WCSXFRM@
# if !@HAVE_WCSXFRM@
-_GL_FUNCDECL_SYS (wcsxfrm, size_t, (wchar_t *s1, const wchar_t *s2, size_t n));
+_GL_FUNCDECL_SYS (wcsxfrm, size_t,
+ (wchar_t *restrict s1, const wchar_t *restrict s2, size_t n));
# endif
-_GL_CXXALIAS_SYS (wcsxfrm, size_t, (wchar_t *s1, const wchar_t *s2, size_t n));
+_GL_CXXALIAS_SYS (wcsxfrm, size_t,
+ (wchar_t *restrict s1, const wchar_t *restrict s2, size_t n));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsxfrm);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcsxfrm
# if HAVE_RAW_DECL_WCSXFRM
@@ -813,10 +934,18 @@ _GL_WARN_ON_USE (wcsxfrm, "wcsxfrm is unportable - "
/* Duplicate S, returning an identical malloc'd string. */
#if @GNULIB_WCSDUP@
-# if !@HAVE_WCSDUP@
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef wcsdup
+# define wcsdup _wcsdup
+# endif
+_GL_CXXALIAS_MDA (wcsdup, wchar_t *, (const wchar_t *s));
+# else
+# if !@HAVE_WCSDUP@
_GL_FUNCDECL_SYS (wcsdup, wchar_t *, (const wchar_t *s));
-# endif
+# endif
_GL_CXXALIAS_SYS (wcsdup, wchar_t *, (const wchar_t *s));
+# endif
_GL_CXXALIASWARN (wcsdup);
#elif defined GNULIB_POSIXCHECK
# undef wcsdup
@@ -824,6 +953,25 @@ _GL_CXXALIASWARN (wcsdup);
_GL_WARN_ON_USE (wcsdup, "wcsdup is unportable - "
"use gnulib module wcsdup for portability");
# endif
+#elif @GNULIB_MDA_WCSDUP@
+/* On native Windows, map 'wcsdup' to '_wcsdup', so that -loldnames is not
+ required. In C++ with GNULIB_NAMESPACE, avoid differences between
+ platforms by defining GNULIB_NAMESPACE::wcsdup always. */
+# if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef wcsdup
+# define wcsdup _wcsdup
+# endif
+_GL_CXXALIAS_MDA (wcsdup, wchar_t *, (const wchar_t *s));
+# else
+_GL_FUNCDECL_SYS (wcsdup, wchar_t *, (const wchar_t *s));
+# if @HAVE_DECL_WCSDUP@
+_GL_CXXALIAS_SYS (wcsdup, wchar_t *, (const wchar_t *s));
+# endif
+# endif
+# if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_WCSDUP@
+_GL_CXXALIASWARN (wcsdup);
+# endif
#endif
@@ -845,7 +993,7 @@ _GL_CXXALIAS_SYS_CAST2 (wcschr,
&& (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
_GL_CXXALIASWARN1 (wcschr, wchar_t *, (wchar_t *wcs, wchar_t wc));
_GL_CXXALIASWARN1 (wcschr, const wchar_t *, (const wchar_t *wcs, wchar_t wc));
-# else
+# elif __GLIBC__ >= 2
_GL_CXXALIASWARN (wcschr);
# endif
#elif defined GNULIB_POSIXCHECK
@@ -875,7 +1023,7 @@ _GL_CXXALIAS_SYS_CAST2 (wcsrchr,
&& (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
_GL_CXXALIASWARN1 (wcsrchr, wchar_t *, (wchar_t *wcs, wchar_t wc));
_GL_CXXALIASWARN1 (wcsrchr, const wchar_t *, (const wchar_t *wcs, wchar_t wc));
-# else
+# elif __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsrchr);
# endif
#elif defined GNULIB_POSIXCHECK
@@ -895,7 +1043,9 @@ _GL_FUNCDECL_SYS (wcscspn, size_t, (const wchar_t *wcs, const wchar_t *reject)
_GL_ATTRIBUTE_PURE);
# endif
_GL_CXXALIAS_SYS (wcscspn, size_t, (const wchar_t *wcs, const wchar_t *reject));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcscspn);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcscspn
# if HAVE_RAW_DECL_WCSCSPN
@@ -913,7 +1063,9 @@ _GL_FUNCDECL_SYS (wcsspn, size_t, (const wchar_t *wcs, const wchar_t *accept)
_GL_ATTRIBUTE_PURE);
# endif
_GL_CXXALIAS_SYS (wcsspn, size_t, (const wchar_t *wcs, const wchar_t *accept));
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsspn);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcsspn
# if HAVE_RAW_DECL_WCSSPN
@@ -944,7 +1096,7 @@ _GL_CXXALIASWARN1 (wcspbrk, wchar_t *,
(wchar_t *wcs, const wchar_t *accept));
_GL_CXXALIASWARN1 (wcspbrk, const wchar_t *,
(const wchar_t *wcs, const wchar_t *accept));
-# else
+# elif __GLIBC__ >= 2
_GL_CXXALIASWARN (wcspbrk);
# endif
#elif defined GNULIB_POSIXCHECK
@@ -960,7 +1112,8 @@ _GL_WARN_ON_USE (wcspbrk, "wcspbrk is unportable - "
#if @GNULIB_WCSSTR@
# if !@HAVE_WCSSTR@
_GL_FUNCDECL_SYS (wcsstr, wchar_t *,
- (const wchar_t *haystack, const wchar_t *needle)
+ (const wchar_t *restrict haystack,
+ const wchar_t *restrict needle)
_GL_ATTRIBUTE_PURE);
# endif
/* On some systems, this function is defined as an overloaded function:
@@ -969,15 +1122,19 @@ _GL_FUNCDECL_SYS (wcsstr, wchar_t *,
wchar_t * std::wcsstr (wchar_t *, const wchar_t *);
} */
_GL_CXXALIAS_SYS_CAST2 (wcsstr,
- wchar_t *, (const wchar_t *, const wchar_t *),
- const wchar_t *, (const wchar_t *, const wchar_t *));
+ wchar_t *,
+ (const wchar_t *restrict, const wchar_t *restrict),
+ const wchar_t *,
+ (const wchar_t *restrict, const wchar_t *restrict));
# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \
&& (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
_GL_CXXALIASWARN1 (wcsstr, wchar_t *,
- (wchar_t *haystack, const wchar_t *needle));
+ (wchar_t *restrict haystack,
+ const wchar_t *restrict needle));
_GL_CXXALIASWARN1 (wcsstr, const wchar_t *,
- (const wchar_t *haystack, const wchar_t *needle));
-# else
+ (const wchar_t *restrict haystack,
+ const wchar_t *restrict needle));
+# elif __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsstr);
# endif
#elif defined GNULIB_POSIXCHECK
@@ -991,13 +1148,30 @@ _GL_WARN_ON_USE (wcsstr, "wcsstr is unportable - "
/* Divide WCS into tokens separated by characters in DELIM. */
#if @GNULIB_WCSTOK@
-# if !@HAVE_WCSTOK@
+# if @REPLACE_WCSTOK@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef wcstok
+# define wcstok rpl_wcstok
+# endif
+_GL_FUNCDECL_RPL (wcstok, wchar_t *,
+ (wchar_t *restrict wcs, const wchar_t *restrict delim,
+ wchar_t **restrict ptr));
+_GL_CXXALIAS_RPL (wcstok, wchar_t *,
+ (wchar_t *restrict wcs, const wchar_t *restrict delim,
+ wchar_t **restrict ptr));
+# else
+# if !@HAVE_WCSTOK@
_GL_FUNCDECL_SYS (wcstok, wchar_t *,
- (wchar_t *wcs, const wchar_t *delim, wchar_t **ptr));
-# endif
+ (wchar_t *restrict wcs, const wchar_t *restrict delim,
+ wchar_t **restrict ptr));
+# endif
_GL_CXXALIAS_SYS (wcstok, wchar_t *,
- (wchar_t *wcs, const wchar_t *delim, wchar_t **ptr));
+ (wchar_t *restrict wcs, const wchar_t *restrict delim,
+ wchar_t **restrict ptr));
+# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcstok);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcstok
# if HAVE_RAW_DECL_WCSTOK
@@ -1025,7 +1199,9 @@ _GL_FUNCDECL_SYS (wcswidth, int, (const wchar_t *s, size_t n)
# endif
_GL_CXXALIAS_SYS (wcswidth, int, (const wchar_t *s, size_t n));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcswidth);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcswidth
# if HAVE_RAW_DECL_WCSWIDTH
@@ -1036,28 +1212,38 @@ _GL_WARN_ON_USE (wcswidth, "wcswidth is unportable - "
/* Convert *TP to a date and time wide string. See
- <http://pubs.opengroup.org/onlinepubs/9699919799/functions/wcsftime.html>. */
+ <https://pubs.opengroup.org/onlinepubs/9699919799/functions/wcsftime.html>. */
#if @GNULIB_WCSFTIME@
# if @REPLACE_WCSFTIME@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# undef wcsftime
# define wcsftime rpl_wcsftime
# endif
-_GL_FUNCDECL_RPL (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize,
- const wchar_t *__fmt, const struct tm *__tp)
- _GL_ARG_NONNULL ((1, 3, 4)));
-_GL_CXXALIAS_RPL (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize,
- const wchar_t *__fmt, const struct tm *__tp));
+_GL_FUNCDECL_RPL (wcsftime, size_t,
+ (wchar_t *restrict __buf, size_t __bufsize,
+ const wchar_t *restrict __fmt,
+ const struct tm *restrict __tp)
+ _GL_ARG_NONNULL ((1, 3, 4)));
+_GL_CXXALIAS_RPL (wcsftime, size_t,
+ (wchar_t *restrict __buf, size_t __bufsize,
+ const wchar_t *restrict __fmt,
+ const struct tm *restrict __tp));
# else
# if !@HAVE_WCSFTIME@
-_GL_FUNCDECL_SYS (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize,
- const wchar_t *__fmt, const struct tm *__tp)
- _GL_ARG_NONNULL ((1, 3, 4)));
+_GL_FUNCDECL_SYS (wcsftime, size_t,
+ (wchar_t *restrict __buf, size_t __bufsize,
+ const wchar_t *restrict __fmt,
+ const struct tm *restrict __tp)
+ _GL_ARG_NONNULL ((1, 3, 4)));
# endif
-_GL_CXXALIAS_SYS (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize,
- const wchar_t *__fmt, const struct tm *__tp));
+_GL_CXXALIAS_SYS (wcsftime, size_t,
+ (wchar_t *restrict __buf, size_t __bufsize,
+ const wchar_t *restrict __fmt,
+ const struct tm *restrict __tp));
# endif
+# if __GLIBC__ >= 2
_GL_CXXALIASWARN (wcsftime);
+# endif
#elif defined GNULIB_POSIXCHECK
# undef wcsftime
# if HAVE_RAW_DECL_WCSFTIME
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/xsize.h b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/xsize.h
index ecfd478dcd..b69bafc3a4 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/xsize.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/lib/xsize.h
@@ -1,6 +1,6 @@
/* xsize.h -- Checked size_t computations.
- Copyright (C) 2003, 2008-2019 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2008-2021 Free Software Foundation, Inc.
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
@@ -27,6 +27,9 @@
# include <stdint.h>
#endif
+/* Get ATTRIBUTE_PURE. */
+#include "attribute.h"
+
#ifndef _GL_INLINE_HEADER_BEGIN
#error "Please include config.h first."
#endif
@@ -56,10 +59,7 @@ _GL_INLINE_HEADER_BEGIN
((N) <= SIZE_MAX ? (size_t) (N) : SIZE_MAX)
/* Sum of two sizes, with overflow check. */
-XSIZE_INLINE size_t
-#if __GNUC__ >= 3
-__attribute__ ((__pure__))
-#endif
+XSIZE_INLINE size_t ATTRIBUTE_PURE
xsum (size_t size1, size_t size2)
{
size_t sum = size1 + size2;
@@ -67,30 +67,21 @@ xsum (size_t size1, size_t size2)
}
/* Sum of three sizes, with overflow check. */
-XSIZE_INLINE size_t
-#if __GNUC__ >= 3
-__attribute__ ((__pure__))
-#endif
+XSIZE_INLINE size_t ATTRIBUTE_PURE
xsum3 (size_t size1, size_t size2, size_t size3)
{
return xsum (xsum (size1, size2), size3);
}
/* Sum of four sizes, with overflow check. */
-XSIZE_INLINE size_t
-#if __GNUC__ >= 3
-__attribute__ ((__pure__))
-#endif
+XSIZE_INLINE size_t ATTRIBUTE_PURE
xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
{
return xsum (xsum (xsum (size1, size2), size3), size4);
}
/* Maximum of two sizes, with overflow check. */
-XSIZE_INLINE size_t
-#if __GNUC__ >= 3
-__attribute__ ((__pure__))
-#endif
+XSIZE_INLINE size_t ATTRIBUTE_PURE
xmax (size_t size1, size_t size2)
{
/* No explicit check is needed here, because for any n:
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/00gnulib.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/00gnulib.m4
index e3e0fb6daa..9ba1743e65 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/00gnulib.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/00gnulib.m4
@@ -1,43 +1,82 @@
-# 00gnulib.m4 serial 3
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# 00gnulib.m4 serial 8
+dnl Copyright (C) 2009-2021 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 This file must be named something that sorts before all other
-dnl gnulib-provided .m4 files. It is needed until such time as we can
-dnl assume Autoconf 2.64, with its improved AC_DEFUN_ONCE and
-dnl m4_divert semantics.
+dnl gnulib-provided .m4 files. It is needed until the clang fix has
+dnl been included in Autoconf.
-# Until autoconf 2.63, handling of the diversion stack required m4_init
-# to be called first; but this does not happen with aclocal. Wrapping
-# the entire execution in another layer of the diversion stack fixes this.
-# Worse, prior to autoconf 2.62, m4_wrap depended on the underlying m4
-# for whether it was FIFO or LIFO; in order to properly balance with
-# m4_init, we need to undo our push just before anything wrapped within
-# the m4_init body. The way to ensure this is to wrap both sides of
-# m4_init with a one-shot macro that does the pop at the right time.
-m4_ifndef([_m4_divert_diversion],
-[m4_divert_push([KILL])
-m4_define([gl_divert_fixup], [m4_divert_pop()m4_define([$0])])
-m4_define([m4_init],
- [gl_divert_fixup()]m4_defn([m4_init])[gl_divert_fixup()])])
-
-
-# AC_DEFUN_ONCE([NAME], VALUE)
-# ----------------------------
-# Define NAME to expand to VALUE on the first use (whether by direct
-# expansion, or by AC_REQUIRE), and to nothing on all subsequent uses.
-# Avoid bugs in AC_REQUIRE in Autoconf 2.63 and earlier. This
-# definition is slower than the version in Autoconf 2.64, because it
-# can only use interfaces that existed since 2.59; but it achieves the
-# same effect. Quoting is necessary to avoid confusing Automake.
-m4_version_prereq([2.63.263], [],
-[m4_define([AC][_DEFUN_ONCE],
- [AC][_DEFUN([$1],
- [AC_REQUIRE([_gl_DEFUN_ONCE([$1])],
- [m4_indir([_gl_DEFUN_ONCE([$1])])])])]dnl
-[AC][_DEFUN([_gl_DEFUN_ONCE([$1])], [$2])])])
+# The following definitions arrange to use a compiler option
+# -Werror=implicit-function-declaration in AC_CHECK_DECL, when the
+# compiler is clang. Without it, clang implicitly declares "known"
+# library functions in C mode, but not in C++ mode, which would cause
+# Gnulib to omit a declaration and thus later produce an error in C++
+# mode. As of clang 9.0, these "known" functions are identified through
+# LIBBUILTIN invocations in the LLVM source file
+# llvm/tools/clang/include/clang/Basic/Builtins.def.
+# It's not possible to AC_REQUIRE the extra tests from AC_CHECK_DECL,
+# because AC_CHECK_DECL, like other Autoconf built-ins, is not supposed
+# to AC_REQUIRE anything: some configure.ac files have their first
+# AC_CHECK_DECL executed conditionally. Therefore append the extra tests
+# to AC_PROG_CC.
+AC_DEFUN([gl_COMPILER_CLANG],
+[
+dnl AC_REQUIRE([AC_PROG_CC])
+ AC_CACHE_CHECK([whether the compiler is clang],
+ [gl_cv_compiler_clang],
+ [dnl Use _AC_COMPILE_IFELSE instead of AC_EGREP_CPP, to avoid error
+ dnl "circular dependency of AC_LANG_COMPILER(C)" if AC_PROG_CC has
+ dnl not yet been invoked.
+ _AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[
+ #ifdef __clang__
+ barfbarf
+ #endif
+ ]],[[]])
+ ],
+ [gl_cv_compiler_clang=no],
+ [gl_cv_compiler_clang=yes])
+ ])
+])
+AC_DEFUN([gl_COMPILER_PREPARE_CHECK_DECL],
+[
+dnl AC_REQUIRE([AC_PROG_CC])
+dnl AC_REQUIRE([gl_COMPILER_CLANG])
+ AC_CACHE_CHECK([for compiler option needed when checking for declarations],
+ [gl_cv_compiler_check_decl_option],
+ [if test $gl_cv_compiler_clang = yes; then
+ dnl Test whether the compiler supports the option
+ dnl '-Werror=implicit-function-declaration'.
+ save_ac_compile="$ac_compile"
+ ac_compile="$ac_compile -Werror=implicit-function-declaration"
+ dnl Use _AC_COMPILE_IFELSE instead of AC_COMPILE_IFELSE, to avoid a
+ dnl warning "AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS".
+ _AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],[[]])],
+ [gl_cv_compiler_check_decl_option='-Werror=implicit-function-declaration'],
+ [gl_cv_compiler_check_decl_option=none])
+ ac_compile="$save_ac_compile"
+ else
+ gl_cv_compiler_check_decl_option=none
+ fi
+ ])
+ if test "x$gl_cv_compiler_check_decl_option" != xnone; then
+ ac_compile_for_check_decl="$ac_compile $gl_cv_compiler_check_decl_option"
+ else
+ ac_compile_for_check_decl="$ac_compile"
+ fi
+])
+dnl Redefine _AC_CHECK_DECL_BODY so that it references ac_compile_for_check_decl
+dnl instead of ac_compile. If, for whatever reason, the override of AC_PROG_CC
+dnl in zzgnulib.m4 is inactive, use the original ac_compile.
+m4_define([_AC_CHECK_DECL_BODY],
+[ ac_save_ac_compile="$ac_compile"
+ if test -n "$ac_compile_for_check_decl"; then
+ ac_compile="$ac_compile_for_check_decl"
+ fi]
+m4_defn([_AC_CHECK_DECL_BODY])[ ac_compile="$ac_save_ac_compile"
+])
# gl_00GNULIB
# -----------
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/absolute-header.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/absolute-header.m4
index a8f2cba173..52d80d0428 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/absolute-header.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/absolute-header.m4
@@ -1,5 +1,5 @@
-# absolute-header.m4 serial 16
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+# absolute-header.m4 serial 17
+dnl Copyright (C) 2006-2021 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.
@@ -22,23 +22,21 @@ dnl From Derek Price.
AC_DEFUN([gl_ABSOLUTE_HEADER],
[AC_REQUIRE([AC_CANONICAL_HOST])
AC_LANG_PREPROC_REQUIRE()dnl
-dnl FIXME: gl_absolute_header and ac_header_exists must be used unquoted
-dnl until we can assume autoconf 2.64 or newer.
m4_foreach_w([gl_HEADER_NAME], [$1],
[AS_VAR_PUSHDEF([gl_absolute_header],
[gl_cv_absolute_]m4_defn([gl_HEADER_NAME]))dnl
AC_CACHE_CHECK([absolute name of <]m4_defn([gl_HEADER_NAME])[>],
- m4_defn([gl_absolute_header]),
+ [gl_absolute_header],
[AS_VAR_PUSHDEF([ac_header_exists],
[ac_cv_header_]m4_defn([gl_HEADER_NAME]))dnl
AC_CHECK_HEADERS_ONCE(m4_defn([gl_HEADER_NAME]))dnl
- if test AS_VAR_GET(ac_header_exists) = yes; then
+ if test AS_VAR_GET([ac_header_exists]) = yes; then
gl_ABSOLUTE_HEADER_ONE(m4_defn([gl_HEADER_NAME]))
fi
AS_VAR_POPDEF([ac_header_exists])dnl
])dnl
AC_DEFINE_UNQUOTED(AS_TR_CPP([ABSOLUTE_]m4_defn([gl_HEADER_NAME])),
- ["AS_VAR_GET(gl_absolute_header)"],
+ ["AS_VAR_GET([gl_absolute_header])"],
[Define this to an absolute name of <]m4_defn([gl_HEADER_NAME])[>.])
AS_VAR_POPDEF([gl_absolute_header])dnl
])dnl
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/alloca.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/alloca.m4
index 29bd289b02..ba2f679d8e 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/alloca.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/alloca.m4
@@ -1,5 +1,5 @@
-# alloca.m4 serial 15
-dnl Copyright (C) 2002-2004, 2006-2007, 2009-2019 Free Software Foundation,
+# alloca.m4 serial 20
+dnl Copyright (C) 2002-2004, 2006-2007, 2009-2021 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -50,13 +50,13 @@ AC_DEFUN([gl_FUNC_ALLOCA],
# STACK_DIRECTION is already handled by AC_FUNC_ALLOCA.
AC_DEFUN([gl_PREREQ_ALLOCA], [:])
-# This works around a bug in autoconf <= 2.68.
-# See <https://lists.gnu.org/r/bug-gnulib/2011-06/msg00277.html>.
+m4_version_prereq([2.70], [], [
-m4_version_prereq([2.69], [] ,[
-
-# This is taken from the following Autoconf patch:
-# https://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=6cd9f12520b0d6f76d3230d7565feba1ecf29497
+# This works around a bug in autoconf <= 2.68 and has simplifications
+# from 2.70. See:
+# https://lists.gnu.org/r/bug-gnulib/2011-06/msg00277.html
+# https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=6cd9f12520b0d6f76d3230d7565feba1ecf29497
+# https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=15edf7fd8094fd14a89d9891dd72a9624762597a
# _AC_LIBOBJ_ALLOCA
# -----------------
@@ -72,26 +72,6 @@ AC_LIBSOURCES(alloca.c)
AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext])dnl
AC_DEFINE(C_ALLOCA, 1, [Define to 1 if using 'alloca.c'.])
-AC_CACHE_CHECK(whether 'alloca.c' needs Cray hooks, ac_cv_os_cray,
-[AC_EGREP_CPP(webecray,
-[#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-], ac_cv_os_cray=yes, ac_cv_os_cray=no)])
-if test $ac_cv_os_cray = yes; then
- for ac_func in _getb67 GETB67 getb67; do
- AC_CHECK_FUNC($ac_func,
- [AC_DEFINE_UNQUOTED(CRAY_STACKSEG_END, $ac_func,
- [Define to one of '_getb67', 'GETB67',
- 'getb67' for Cray-2 and Cray-YMP
- systems. This function is required for
- 'alloca.c' support on those systems.])
- break])
- done
-fi
-
AC_CACHE_CHECK([stack direction for C alloca],
[ac_cv_c_stack_direction],
[AC_RUN_IFELSE([AC_LANG_SOURCE(
@@ -122,7 +102,7 @@ AH_VERBATIM([STACK_DIRECTION],
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])dnl
+#undef STACK_DIRECTION])dnl
AC_DEFINE_UNQUOTED(STACK_DIRECTION, $ac_cv_c_stack_direction)
])# _AC_LIBOBJ_ALLOCA
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/errno_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/errno_h.m4
index 2388854e05..51dfe92938 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/errno_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/errno_h.m4
@@ -1,5 +1,5 @@
# errno_h.m4 serial 13
-dnl Copyright (C) 2004, 2006, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2004, 2006, 2008-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/exponentd.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/exponentd.m4
index 90870dfa40..fb136f4774 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/exponentd.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/exponentd.m4
@@ -1,5 +1,5 @@
# exponentd.m4 serial 3
-dnl Copyright (C) 2007-2008, 2010-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2008, 2010-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extensions.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extensions.m4
index fd1ce817f0..5792a9557a 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extensions.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extensions.m4
@@ -1,14 +1,19 @@
-# serial 18 -*- Autoconf -*-
+# serial 22 -*- Autoconf -*-
# Enable extensions on systems that normally disable them.
-# Copyright (C) 2003, 2006-2019 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2006-2021 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
+dnl Define to empty for the benefit of Autoconf 2.69 and earlier, so that
+dnl AC_USE_SYSTEM_EXTENSIONS (below) can be used unchanged from Autoconf 2.70+.
+m4_ifndef([AC_CHECK_INCLUDES_DEFAULT],
+ [AC_DEFUN([AC_CHECK_INCLUDES_DEFAULT], [])])
+
# This definition of AC_USE_SYSTEM_EXTENSIONS is stolen from git
# Autoconf. Perhaps we can remove this once we can assume Autoconf
-# 2.70 or later everywhere, but since Autoconf mutates rapidly
+# is recent-enough everywhere, but since Autoconf mutates rapidly
# enough in this area it's likely we'll need to redefine
# AC_USE_SYSTEM_EXTENSIONS for quite some time.
@@ -26,36 +31,27 @@
# its dependencies. This will ensure that the gl_USE_SYSTEM_EXTENSIONS
# invocation occurs in gl_EARLY, not in gl_INIT.
+m4_version_prereq([2.70.1], [], [
+
# AC_USE_SYSTEM_EXTENSIONS
# ------------------------
# Enable extensions on systems that normally disable them,
# typically due to standards-conformance issues.
-#
-# Remember that #undef in AH_VERBATIM gets replaced with #define by
-# AC_DEFINE. The goal here is to define all known feature-enabling
-# macros, then, if reports of conflicts are made, disable macros that
-# cause problems on some platforms (such as __EXTENSIONS__).
+# We unconditionally define as many of the known feature-enabling
+# as possible, reserving conditional behavior for macros that are
+# known to cause problems on some platforms (such as __EXTENSIONS__).
AC_DEFUN_ONCE([AC_USE_SYSTEM_EXTENSIONS],
-[AC_BEFORE([$0], [AC_COMPILE_IFELSE])dnl
+[AC_BEFORE([$0], [AC_PREPROC_IFELSE])dnl
+AC_BEFORE([$0], [AC_COMPILE_IFELSE])dnl
+AC_BEFORE([$0], [AC_LINK_IFELSE])dnl
AC_BEFORE([$0], [AC_RUN_IFELSE])dnl
-
- AC_CHECK_HEADER([minix/config.h], [MINIX=yes], [MINIX=])
- if test "$MINIX" = yes; then
- AC_DEFINE([_POSIX_SOURCE], [1],
- [Define to 1 if you need to in order for 'stat' and other
- things to work.])
- AC_DEFINE([_POSIX_1_SOURCE], [2],
- [Define to 2 if the system does not provide POSIX.1 features
- except with this defined.])
- AC_DEFINE([_MINIX], [1],
- [Define to 1 if on MINIX.])
- AC_DEFINE([_NETBSD_SOURCE], [1],
- [Define to 1 to make NetBSD features available. MINIX 3 needs this.])
- fi
-
+AC_BEFORE([$0], [AC_CHECK_INCLUDES_DEFAULT])dnl
+dnl #undef in AH_VERBATIM gets replaced with #define by AC_DEFINE.
dnl Use a different key than __EXTENSIONS__, as that name broke existing
dnl configure.ac when using autoheader 2.62.
- AH_VERBATIM([USE_SYSTEM_EXTENSIONS],
+dnl The macros below are in alphabetical order ignoring leading _ or __
+dnl prefixes.
+AH_VERBATIM([USE_SYSTEM_EXTENSIONS],
[/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
@@ -64,19 +60,44 @@ dnl configure.ac when using autoheader 2.62.
#ifndef _DARWIN_C_SOURCE
# undef _DARWIN_C_SOURCE
#endif
+/* Enable general extensions on Solaris. */
+#ifndef __EXTENSIONS__
+# undef __EXTENSIONS__
+#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
-/* Enable NetBSD extensions on NetBSD. */
+/* Enable X/Open compliant socket functions that do not require linking
+ with -lxnet on HP-UX 11.11. */
+#ifndef _HPUX_ALT_XOPEN_SOCKET_API
+# undef _HPUX_ALT_XOPEN_SOCKET_API
+#endif
+/* Identify the host operating system as Minix.
+ This macro does not affect the system headers' behavior.
+ A future release of Autoconf may stop defining this macro. */
+#ifndef _MINIX
+# undef _MINIX
+#endif
+/* Enable general extensions on NetBSD.
+ Enable NetBSD compatibility extensions on Minix. */
#ifndef _NETBSD_SOURCE
# undef _NETBSD_SOURCE
#endif
-/* Enable OpenBSD extensions on NetBSD. */
+/* Enable OpenBSD compatibility extensions on NetBSD.
+ Oddly enough, this does nothing on OpenBSD. */
#ifndef _OPENBSD_SOURCE
# undef _OPENBSD_SOURCE
#endif
-/* Enable threading extensions on Solaris. */
+/* Define to 1 if needed for POSIX-compatible behavior. */
+#ifndef _POSIX_SOURCE
+# undef _POSIX_SOURCE
+#endif
+/* Define to 2 if needed for POSIX-compatible behavior. */
+#ifndef _POSIX_1_SOURCE
+# undef _POSIX_1_SOURCE
+#endif
+/* Enable POSIX-compatible threading on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
@@ -112,22 +133,19 @@ dnl configure.ac when using autoheader 2.62.
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
-/* Enable X/Open extensions if necessary. HP-UX 11.11 defines
- mbstate_t only if _XOPEN_SOURCE is defined to 500, regardless of
- whether compiling with -Ae or -D_HPUX_SOURCE=1. */
+/* Enable X/Open extensions. Define to 500 only if necessary
+ to make mbstate_t available. */
#ifndef _XOPEN_SOURCE
# undef _XOPEN_SOURCE
#endif
-/* Enable X/Open compliant socket functions that do not require linking
- with -lxnet on HP-UX 11.11. */
-#ifndef _HPUX_ALT_XOPEN_SOCKET_API
-# undef _HPUX_ALT_XOPEN_SOCKET_API
-#endif
-/* Enable general extensions on Solaris. */
-#ifndef __EXTENSIONS__
-# undef __EXTENSIONS__
-#endif
-])
+])dnl
+
+ AC_REQUIRE([AC_CHECK_INCLUDES_DEFAULT])dnl
+ _AC_CHECK_HEADER_ONCE([wchar.h])
+ _AC_CHECK_HEADER_ONCE([minix/config.h])
+
+dnl Defining __EXTENSIONS__ may break the system headers on some systems.
+dnl (FIXME: Which ones?)
AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__],
[ac_cv_safe_to_define___extensions__],
[AC_COMPILE_IFELSE(
@@ -136,11 +154,33 @@ dnl configure.ac when using autoheader 2.62.
]AC_INCLUDES_DEFAULT])],
[ac_cv_safe_to_define___extensions__=yes],
[ac_cv_safe_to_define___extensions__=no])])
- test $ac_cv_safe_to_define___extensions__ = yes &&
- AC_DEFINE([__EXTENSIONS__])
+
+dnl HP-UX 11.11 defines mbstate_t only if _XOPEN_SOURCE is defined to
+dnl 500, regardless of whether compiling with -Ae or -D_HPUX_SOURCE=1.
+dnl But defining _XOPEN_SOURCE may turn *off* extensions on platforms
+dnl not covered by turn-on-extensions macros (notably Dragonfly, Free,
+dnl and OpenBSD, which don't have any equivalent of _NETBSD_SOURCE) so
+dnl it should only be defined when necessary.
+ AC_CACHE_CHECK([whether _XOPEN_SOURCE should be defined],
+ [ac_cv_should_define__xopen_source],
+ [ac_cv_should_define__xopen_source=no
+ AS_IF([test $ac_cv_header_wchar_h = yes],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[
+ #include <wchar.h>
+ mbstate_t x;]])],
+ [],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[
+ #define _XOPEN_SOURCE 500
+ #include <wchar.h>
+ mbstate_t x;]])],
+ [ac_cv_should_define__xopen_source=yes])])])])
+
AC_DEFINE([_ALL_SOURCE])
AC_DEFINE([_DARWIN_C_SOURCE])
AC_DEFINE([_GNU_SOURCE])
+ AC_DEFINE([_HPUX_ALT_XOPEN_SOCKET_API])
AC_DEFINE([_NETBSD_SOURCE])
AC_DEFINE([_OPENBSD_SOURCE])
AC_DEFINE([_POSIX_PTHREAD_SEMANTICS])
@@ -152,24 +192,18 @@ dnl configure.ac when using autoheader 2.62.
AC_DEFINE([__STDC_WANT_LIB_EXT2__])
AC_DEFINE([__STDC_WANT_MATH_SPEC_FUNCS__])
AC_DEFINE([_TANDEM_SOURCE])
- AC_CACHE_CHECK([whether _XOPEN_SOURCE should be defined],
- [ac_cv_should_define__xopen_source],
- [ac_cv_should_define__xopen_source=no
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[
- #include <wchar.h>
- mbstate_t x;]])],
- [],
- [AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[
- #define _XOPEN_SOURCE 500
- #include <wchar.h>
- mbstate_t x;]])],
- [ac_cv_should_define__xopen_source=yes])])])
- test $ac_cv_should_define__xopen_source = yes &&
- AC_DEFINE([_XOPEN_SOURCE], [500])
- AC_DEFINE([_HPUX_ALT_XOPEN_SOCKET_API])
+ AS_IF([test $ac_cv_header_minix_config_h = yes],
+ [MINIX=yes
+ AC_DEFINE([_MINIX])
+ AC_DEFINE([_POSIX_SOURCE])
+ AC_DEFINE([_POSIX_1_SOURCE], [2])],
+ [MINIX=])
+ AS_IF([test $ac_cv_safe_to_define___extensions__ = yes],
+ [AC_DEFINE([__EXTENSIONS__])])
+ AS_IF([test $ac_cv_should_define__xopen_source = yes],
+ [AC_DEFINE([_XOPEN_SOURCE], [500])])
])# AC_USE_SYSTEM_EXTENSIONS
+])
# gl_USE_SYSTEM_EXTENSIONS
# ------------------------
@@ -177,13 +211,17 @@ dnl configure.ac when using autoheader 2.62.
# typically due to standards-conformance issues.
AC_DEFUN_ONCE([gl_USE_SYSTEM_EXTENSIONS],
[
- dnl Require this macro before AC_USE_SYSTEM_EXTENSIONS.
- dnl gnulib does not need it. But if it gets required by third-party macros
- dnl after AC_USE_SYSTEM_EXTENSIONS is required, autoconf 2.62..2.63 emit a
- dnl warning: "AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS".
- dnl Note: We can do this only for one of the macros AC_AIX, AC_GNU_SOURCE,
- dnl AC_MINIX. If people still use AC_AIX or AC_MINIX, they are out of luck.
- AC_REQUIRE([AC_GNU_SOURCE])
-
AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
+
+ dnl On OpenBSD 6.8 with GCC, the include files contain a couple of
+ dnl definitions that are only activated with an explicit -D_ISOC11_SOURCE.
+ dnl That's because this version of GCC (4.2.1) supports the option
+ dnl '-std=gnu99' but not the option '-std=gnu11'.
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ case "$host_os" in
+ openbsd*)
+ AC_DEFINE([_ISOC11_SOURCE], [1],
+ [Define to enable the declarations of ISO C 11 types and functions.])
+ ;;
+ esac
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extern-inline.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extern-inline.m4
index ec9f2218bf..a2acf126c8 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extern-inline.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/extern-inline.m4
@@ -1,6 +1,6 @@
dnl 'extern inline' a la ISO C99.
-dnl Copyright 2012-2019 Free Software Foundation, Inc.
+dnl Copyright 2012-2021 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.
@@ -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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/float_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/float_h.m4
index 1cd28a0bd2..ba38a28901 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/float_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/float_h.m4
@@ -1,5 +1,5 @@
# float_h.m4 serial 12
-dnl Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2007, 2009-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getdelim.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getdelim.m4
index e77c37966c..244a731925 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getdelim.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getdelim.m4
@@ -1,6 +1,6 @@
-# getdelim.m4 serial 13
+# getdelim.m4 serial 15
-dnl Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2005-2007, 2009-2021 Free Software Foundation, Inc.
dnl
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -42,6 +42,7 @@ AC_DEFUN([gl_FUNC_GETDELIM],
int len = getdelim (&line, &siz, '\n', in);
if (!(len == 4 && line && strcmp (line, "foo\n") == 0))
{ free (line); fclose (in); return 2; }
+ free (line);
}
{
/* Test result for a NULL buffer and a non-zero size.
@@ -72,7 +73,7 @@ AC_DEFUN([gl_FUNC_GETDELIM],
[gl_cv_func_working_getdelim="guessing yes"],
[case "$host_os" in
*-musl*) gl_cv_func_working_getdelim="guessing yes" ;;
- *) gl_cv_func_working_getdelim="guessing no" ;;
+ *) gl_cv_func_working_getdelim="$gl_cross_guess_normal" ;;
esac
])
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getline.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getline.m4
index 32f771c10f..58b27c73f0 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getline.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/getline.m4
@@ -1,6 +1,6 @@
-# getline.m4 serial 29
+# getline.m4 serial 30
-dnl Copyright (C) 1998-2003, 2005-2007, 2009-2019 Free Software Foundation,
+dnl Copyright (C) 1998-2003, 2005-2007, 2009-2021 Free Software Foundation,
dnl Inc.
dnl
dnl This file is free software; the Free Software Foundation
@@ -80,7 +80,7 @@ AC_DEFUN([gl_FUNC_GETLINE],
[am_cv_func_working_getline="guessing yes"],
[case "$host_os" in
*-musl*) am_cv_func_working_getline="guessing yes" ;;
- *) am_cv_func_working_getline="guessing no" ;;
+ *) am_cv_func_working_getline="$gl_cross_guess_normal" ;;
esac
])
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4
index de932226b2..d3b666cbea 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4
@@ -1,4 +1,4 @@
-# Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2021 Free Software Foundation, Inc.
#
# 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
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4
index 57b94ed532..f2eff10de6 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4
@@ -1,5 +1,5 @@
-# gnulib-common.m4 serial 44
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# gnulib-common.m4 serial 63
+dnl Copyright (C) 2007-2021 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.
@@ -12,20 +12,41 @@ AC_DEFUN([gl_COMMON], [
dnl Use AC_REQUIRE here, so that the code is expanded once only.
AC_REQUIRE([gl_00GNULIB])
AC_REQUIRE([gl_COMMON_BODY])
+ AC_REQUIRE([gl_ZZGNULIB])
])
AC_DEFUN([gl_COMMON_BODY], [
+ AH_VERBATIM([_GL_GNUC_PREREQ],
+[/* True if the compiler says it groks GNU C version MAJOR.MINOR. */
+#if defined __GNUC__ && defined __GNUC_MINOR__
+# define _GL_GNUC_PREREQ(major, minor) \
+ ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
+#else
+# define _GL_GNUC_PREREQ(major, minor) 0
+#endif
+])
AH_VERBATIM([_Noreturn],
[/* The _Noreturn keyword of C11. */
#ifndef _Noreturn
# if (defined __cplusplus \
&& ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
- || (defined _MSC_VER && 1900 <= _MSC_VER)))
+ || (defined _MSC_VER && 1900 <= _MSC_VER)) \
+ && 0)
+ /* [[noreturn]] is not practically usable, because with it the syntax
+ extern _Noreturn void func (...);
+ would not be valid; such a declaration would only be valid with 'extern'
+ and '_Noreturn' swapped, or without the 'extern' keyword. However, some
+ AIX system header files and several gnulib header files use precisely
+ this syntax with 'extern'. */
# define _Noreturn [[noreturn]]
# elif ((!defined __cplusplus || defined __clang__) \
- && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
- || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
+ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
+ || (!defined __STRICT_ANSI__ \
+ && (_GL_GNUC_PREREQ (4, 7) \
+ || (defined __apple_build_version__ \
+ ? 6000000 <= __apple_build_version__ \
+ : 3 < __clang_major__ + (5 <= __clang_minor__))))))
/* _Noreturn works as-is. */
-# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
+# elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
# define _Noreturn __attribute__ ((__noreturn__))
# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
# define _Noreturn __declspec (noreturn)
@@ -44,48 +65,218 @@ AC_DEFUN([gl_COMMON_BODY], [
#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
# define __GNUC_STDC_INLINE__ 1
#endif])
- AH_VERBATIM([unused_parameter],
-[/* Define as a marker that can be attached to declarations that might not
- be used. This helps to reduce warnings, such as from
- GCC -Wunused-parameter. */
-#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-# define _GL_UNUSED __attribute__ ((__unused__))
+ AH_VERBATIM([attribute],
+[/* Attributes. */
+#if (defined __has_attribute \
+ && (!defined __clang_minor__ \
+ || 3 < __clang_major__ + (5 <= __clang_minor__)))
+# define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
#else
-# define _GL_UNUSED
+# define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
+# define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
+# define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
+# define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
+# define _GL_ATTR_diagnose_if 0
+# define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
+# define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
+# define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
+# ifdef _ICC
+# define _GL_ATTR_may_alias 0
+# else
+# define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
+# endif
+# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
+# define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
+# define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
+# define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
+# define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
+# define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
+# define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
+# define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
+# define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
#endif
-/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name
- is a misnomer outside of parameter lists. */
-#define _UNUSED_PARAMETER_ _GL_UNUSED
-
-/* gcc supports the "unused" attribute on possibly unused labels, and
- g++ has since version 4.5. Note to support C++ as well as C,
- _GL_UNUSED_LABEL should be used with a trailing ; */
-#if !defined __cplusplus || __GNUC__ > 4 \
- || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)
-# define _GL_UNUSED_LABEL _GL_UNUSED
+
+]dnl There is no _GL_ATTRIBUTE_ALIGNED; use stdalign's _Alignas instead.
+[
+#if _GL_HAS_ATTRIBUTE (alloc_size)
+# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
#else
-# define _GL_UNUSED_LABEL
+# define _GL_ATTRIBUTE_ALLOC_SIZE(args)
#endif
-/* The __pure__ attribute was added in gcc 2.96. */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+#if _GL_HAS_ATTRIBUTE (always_inline)
+# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
+#else
+# define _GL_ATTRIBUTE_ALWAYS_INLINE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (artificial)
+# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
+#else
+# define _GL_ATTRIBUTE_ARTIFICIAL
+#endif
+
+/* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
+ <https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
+ Also, Oracle Studio 12.6 requires 'cold' not '__cold__'. */
+#if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
+# ifndef __SUNPRO_C
+# define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
+# else
+# define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
+# endif
#else
-# define _GL_ATTRIBUTE_PURE /* empty */
+# define _GL_ATTRIBUTE_COLD
#endif
-/* The __const__ attribute was added in gcc 2.95. */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
+#if _GL_HAS_ATTRIBUTE (const)
# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
#else
-# define _GL_ATTRIBUTE_CONST /* empty */
+# define _GL_ATTRIBUTE_CONST
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
+#elif _GL_HAS_ATTRIBUTE (deprecated)
+# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
+#else
+# define _GL_ATTRIBUTE_DEPRECATED
+#endif
+
+#if _GL_HAS_ATTRIBUTE (error)
+# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
+# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
+#elif _GL_HAS_ATTRIBUTE (diagnose_if)
+# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
+# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
+#else
+# define _GL_ATTRIBUTE_ERROR(msg)
+# define _GL_ATTRIBUTE_WARNING(msg)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (externally_visible)
+# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
+#else
+# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
+#endif
+
+/* FALLTHROUGH is special, because it always expands to something. */
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
+#elif _GL_HAS_ATTRIBUTE (fallthrough)
+# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
+#else
+# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (format)
+# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+#else
+# define _GL_ATTRIBUTE_FORMAT(spec)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (leaf)
+# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
+#else
+# define _GL_ATTRIBUTE_LEAF
+#endif
+
+/* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK. */
+#if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
+# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
+#else
+# define _GL_ATTRIBUTE_MAY_ALIAS
#endif
-/* The __malloc__ attribute was added in gcc 3. */
-#if 3 <= __GNUC__
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
+#elif _GL_HAS_ATTRIBUTE (unused)
+# define _GL_ATTRIBUTE_MAYBE_UNUSED __attribute__ ((__unused__))
+#else
+# define _GL_ATTRIBUTE_MAYBE_UNUSED
+#endif
+/* Earlier spellings of this macro. */
+#define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
+#define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
+
+#if _GL_HAS_ATTRIBUTE (malloc)
# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
#else
-# define _GL_ATTRIBUTE_MALLOC /* empty */
+# define _GL_ATTRIBUTE_MALLOC
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
+#elif _GL_HAS_ATTRIBUTE (warn_unused_result)
+# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
+#else
+# define _GL_ATTRIBUTE_NODISCARD
+#endif
+
+#if _GL_HAS_ATTRIBUTE (noinline)
+# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
+#else
+# define _GL_ATTRIBUTE_NOINLINE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (nonnull)
+# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
+#else
+# define _GL_ATTRIBUTE_NONNULL(args)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (nonstring)
+# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
+#else
+# define _GL_ATTRIBUTE_NONSTRING
+#endif
+
+/* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead. */
+
+#if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
+# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
+#else
+# define _GL_ATTRIBUTE_NOTHROW
+#endif
+
+#if _GL_HAS_ATTRIBUTE (packed)
+# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
+#else
+# define _GL_ATTRIBUTE_PACKED
+#endif
+
+#if _GL_HAS_ATTRIBUTE (pure)
+# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+#else
+# define _GL_ATTRIBUTE_PURE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (returns_nonnull)
+# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
+#else
+# define _GL_ATTRIBUTE_RETURNS_NONNULL
+#endif
+
+#if _GL_HAS_ATTRIBUTE (sentinel)
+# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
+#else
+# define _GL_ATTRIBUTE_SENTINEL(pos)
+#endif
+
+]dnl There is no _GL_ATTRIBUTE_VISIBILITY; see m4/visibility.m4 instead.
+[
+/* To support C++ as well as C, use _GL_UNUSED_LABEL with trailing ';'. */
+#if !defined __cplusplus || _GL_GNUC_PREREQ (4, 5)
+# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_MAYBE_UNUSED
+#else
+# define _GL_UNUSED_LABEL
#endif
])
AH_VERBATIM([async_safe],
@@ -94,7 +285,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 +306,49 @@ AC_DEFUN([gl_COMMON_BODY], [
errno. */
#define _GL_ASYNC_SAFE
])
+ AH_VERBATIM([micro_optimizations],
+[/* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
+ n1 and n2 are expressions without side effects, that evaluate to real
+ numbers (excluding NaN).
+ It returns
+ 1 if n1 > n2
+ 0 if n1 == n2
+ -1 if n1 < n2
+ The naïve code (n1 > n2 ? 1 : n1 < n2 ? -1 : 0) produces a conditional
+ jump with nearly all GCC versions up to GCC 10.
+ This variant (n1 < n2 ? -1 : n1 > n2) produces a conditional with many
+ GCC versions up to GCC 9.
+ The better code (n1 > n2) - (n1 < n2) from Hacker's Delight § 2-9
+ avoids conditional jumps in all GCC versions >= 3.4. */
+#define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
+])
+ 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
@@ -249,34 +483,20 @@ AC_DEFUN([gl_FEATURES_H],
AC_SUBST([HAVE_FEATURES_H])
])
-# AS_VAR_IF(VAR, VALUE, [IF-MATCH], [IF-NOT-MATCH])
-# ----------------------------------------------------
-# Backport of autoconf-2.63b's macro.
-# Remove this macro when we can assume autoconf >= 2.64.
-m4_ifndef([AS_VAR_IF],
-[m4_define([AS_VAR_IF],
-[AS_IF([test x"AS_VAR_GET([$1])" = x""$2], [$3], [$4])])])
-
# gl_PROG_CC_C99
# Modifies the value of the shell variable CC in an attempt to make $CC
# understand ISO C99 source code.
-# This is like AC_PROG_CC_C99, except that
-# - AC_PROG_CC_C99 does not mix well with AC_PROG_CC_STDC
-# <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
-# <https://lists.gnu.org/r/bug-gnulib/2011-09/msg00441.html>.
-# Remaining problems:
-# - When AC_PROG_CC_STDC is invoked twice, it adds the C99 enabling options
-# to CC twice
-# <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_DEFUN([gl_PROG_CC_C99],
[
- dnl Change that version number to the minimum Autoconf version that supports
- dnl mixing AC_PROG_CC_C99 calls with AC_PROG_CC_STDC calls.
- m4_version_prereq([9.0],
- [AC_REQUIRE([AC_PROG_CC_C99])],
- [AC_REQUIRE([AC_PROG_CC_STDC])])
+ dnl Just use AC_PROG_CC_C99.
+ dnl When AC_PROG_CC_C99 and AC_PROG_CC_STDC are used together, the substituted
+ dnl value of CC will contain the C99 enabling options twice. But this is only
+ dnl a cosmetic problem.
+ dnl With Autoconf >= 2.70, use AC_PROG_CC since it implies AC_PROG_CC_C99;
+ dnl this avoids a "warning: The macro `AC_PROG_CC_C99' is obsolete."
+ m4_version_prereq([2.70],
+ [AC_REQUIRE([AC_PROG_CC])],
+ [AC_REQUIRE([AC_PROG_CC_C99])])
])
# gl_PROG_AR_RANLIB
@@ -350,16 +570,16 @@ Amsterdam
])
# AC_C_RESTRICT
-# 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
-# once autoconf >= 2.70 can be assumed. It's painful to check version
-# numbers, and in practice this macro is more up-to-date than Autoconf
-# is, so override Autoconf unconditionally.
+# This definition is copied from post-2.70 Autoconf and overrides the
+# AC_C_RESTRICT macro from autoconf 2.60..2.70.
+m4_version_prereq([2.70.1], [], [
AC_DEFUN([AC_C_RESTRICT],
[AC_CACHE_CHECK([for C/C++ restrict keyword], [ac_cv_c_restrict],
[ac_cv_c_restrict=no
- # The order here caters to the fact that C++ does not require restrict.
- for ac_kw in __restrict __restrict__ _Restrict restrict; do
+ # Put '__restrict__' first, to avoid problems with glibc and non-GCC; see:
+ # https://lists.gnu.org/archive/html/bug-autoconf/2016-02/msg00006.html
+ # Put 'restrict' last, because C++ lacks it.
+ for ac_kw in __restrict__ __restrict _Restrict restrict; do
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[[typedef int *int_ptr;
@@ -379,14 +599,15 @@ AC_DEFUN([AC_C_RESTRICT],
AH_VERBATIM([restrict],
[/* Define to the equivalent of the C99 'restrict' keyword, or to
nothing if this is not supported. Do not define if restrict is
- supported directly. */
+ supported only directly. */
#undef restrict
-/* Work around a bug in Sun C++: it does not support _Restrict or
- __restrict__, even though the corresponding Sun C compiler ends up with
- "#define restrict _Restrict" or "#define restrict __restrict__" in the
- previous line. Perhaps some future version of Sun C++ will work with
- restrict; if so, hopefully it defines __RESTRICT like Sun C does. */
-#if defined __SUNPRO_CC && !defined __RESTRICT
+/* Work around a bug in older versions of Sun C++, which did not
+ #define __restrict__ or support _Restrict or __restrict__
+ even though the corresponding Sun C compiler ended up with
+ "#define restrict _Restrict" or "#define restrict __restrict__"
+ in the previous line. This workaround can be removed once
+ we assume Oracle Developer Studio 12.5 (2016) or later. */
+#if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
# define _Restrict
# define __restrict__
#endif])
@@ -396,6 +617,7 @@ AC_DEFUN([AC_C_RESTRICT],
*) AC_DEFINE_UNQUOTED([restrict], [$ac_cv_c_restrict]) ;;
esac
])# AC_C_RESTRICT
+])
# gl_BIGENDIAN
# is like AC_C_BIGENDIAN, except that it can be AC_REQUIREd.
@@ -406,6 +628,22 @@ AC_DEFUN([gl_BIGENDIAN],
AC_C_BIGENDIAN
])
+# A temporary file descriptor.
+# Must be less than 10, because dash 0.5.8 does not support redirections
+# with multi-digit file descriptors.
+m4_define([GL_TMP_FD], 9)
+
+# gl_SILENT(command)
+# executes command, but without the normal configure output.
+# This is useful when you want to invoke AC_CACHE_CHECK (or AC_CHECK_FUNC etc.)
+# inside another AC_CACHE_CHECK.
+AC_DEFUN([gl_SILENT],
+[
+ exec GL_TMP_FD>&AS_MESSAGE_FD AS_MESSAGE_FD>/dev/null
+ $1
+ exec AS_MESSAGE_FD>&GL_TMP_FD GL_TMP_FD>&-
+])
+
# gl_CACHE_VAL_SILENT(cache-id, command-to-set-it)
# is like AC_CACHE_VAL(cache-id, command-to-set-it), except that it does not
# output a spurious "(cached)" mark in the midst of other configure output.
@@ -413,12 +651,77 @@ AC_DEFUN([gl_BIGENDIAN],
# by an AC_MSG_CHECKING/AC_MSG_RESULT pair.
AC_DEFUN([gl_CACHE_VAL_SILENT],
[
- saved_as_echo_n="$as_echo_n"
- as_echo_n=':'
- AC_CACHE_VAL([$1], [$2])
- as_echo_n="$saved_as_echo_n"
+ gl_SILENT([
+ AC_CACHE_VAL([$1], [$2])
+ ])
])
-# AS_VAR_COPY was added in autoconf 2.63b
-m4_define_default([AS_VAR_COPY],
-[AS_LITERAL_IF([$1[]$2], [$1=$$2], [eval $1=\$$2])])
+dnl Expands to some code for use in .c programs that, on native Windows, defines
+dnl the Microsoft deprecated alias function names to the underscore-prefixed
+dnl actual function names. With this macro, these function names are available
+dnl without linking with '-loldnames' and without generating warnings.
+dnl Usage: Use it after all system header files are included.
+dnl #include <...>
+dnl #include <...>
+dnl ]GL_MDA_DEFINES[
+dnl ...
+AC_DEFUN([GL_MDA_DEFINES],[
+AC_REQUIRE([_GL_MDA_DEFINES])
+[$gl_mda_defines]
+])
+AC_DEFUN([_GL_MDA_DEFINES],
+[gl_mda_defines='
+#if defined _WIN32 && !defined __CYGWIN__
+#define access _access
+#define chdir _chdir
+#define chmod _chmod
+#define close _close
+#define creat _creat
+#define dup _dup
+#define dup2 _dup2
+#define ecvt _ecvt
+#define execl _execl
+#define execle _execle
+#define execlp _execlp
+#define execv _execv
+#define execve _execve
+#define execvp _execvp
+#define execvpe _execvpe
+#define fcloseall _fcloseall
+#define fcvt _fcvt
+#define fdopen _fdopen
+#define fileno _fileno
+#define gcvt _gcvt
+#define getcwd _getcwd
+#define getpid _getpid
+#define getw _getw
+#define isatty _isatty
+#define j0 _j0
+#define j1 _j1
+#define jn _jn
+#define lfind _lfind
+#define lsearch _lsearch
+#define lseek _lseek
+#define memccpy _memccpy
+#define mkdir _mkdir
+#define mktemp _mktemp
+#define open _open
+#define putenv _putenv
+#define putw _putw
+#define read _read
+#define rmdir _rmdir
+#define strdup _strdup
+#define swab _swab
+#define tempnam _tempnam
+#define tzset _tzset
+#define umask _umask
+#define unlink _unlink
+#define utime _utime
+#define wcsdup _wcsdup
+#define write _write
+#define y0 _y0
+#define y1 _y1
+#define yn _yn
+#endif
+'
+])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4
index a1d2424307..fdf523bcb8 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4
@@ -1,5 +1,5 @@
# DO NOT EDIT! GENERATED AUTOMATICALLY!
-# Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2021 Free Software Foundation, Inc.
#
# 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
@@ -44,6 +44,8 @@ AC_DEFUN([gl_EARLY],
# Code from module absolute-header:
# Code from module alloca-opt:
+ # Code from module attribute:
+ # Code from module c99:
# Code from module errno:
# Code from module extensions:
# Code from module extern-inline:
@@ -53,6 +55,7 @@ AC_DEFUN([gl_EARLY],
# Code from module havelib:
# Code from module iconv:
# Code from module include_next:
+ # Code from module inttypes-incomplete:
# Code from module limits-h:
# Code from module memchr:
# Code from module multiarch:
@@ -62,6 +65,7 @@ AC_DEFUN([gl_EARLY],
# Code from module snippet/c++defs:
# Code from module snippet/warn-on-use:
# Code from module ssize_t:
+ # Code from module std-gnu11:
# Code from module stddef:
# Code from module stdint:
# Code from module stdio:
@@ -113,12 +117,14 @@ AC_DEFUN([gl_INIT],
gl_PREREQ_GETLINE
fi
gl_STDIO_MODULE_INDICATOR([getline])
+ AC_DEFUN([gl_HAVE_MODULE_HAVELIB])
AM_ICONV
m4_ifdef([gl_ICONV_MODULE_INDICATOR],
[gl_ICONV_MODULE_INDICATOR([iconv])])
+ gl_INTTYPES_INCOMPLETE
gl_LIMITS_H
gl_FUNC_MEMCHR
- if test $HAVE_MEMCHR = 0 || test $REPLACE_MEMCHR = 1; then
+ if test $REPLACE_MEMCHR = 1; then
AC_LIBOBJ([memchr])
gl_PREREQ_MEMCHR
fi
@@ -155,6 +161,7 @@ AC_DEFUN([gl_INIT],
gl_STRING_MODULE_INDICATOR([strnlen])
gl_SYS_TYPES_H
AC_PROG_MKDIR_P
+ AC_REQUIRE([AC_C_RESTRICT])
gl_FUNC_VASNPRINTF
gl_FUNC_VASPRINTF
gl_STDIO_MODULE_INDICATOR([vasprintf])
@@ -304,6 +311,7 @@ AC_DEFUN([gl_FILE_LIST], [
lib/arg-nonnull.h
lib/asnprintf.c
lib/asprintf.c
+ lib/attribute.h
lib/c++defs.h
lib/errno.in.h
lib/float+.h
@@ -311,6 +319,7 @@ AC_DEFUN([gl_FILE_LIST], [
lib/float.in.h
lib/getdelim.c
lib/getline.c
+ lib/inttypes.in.h
lib/itold.c
lib/limits.in.h
lib/memchr.c
@@ -354,21 +363,23 @@ AC_DEFUN([gl_FILE_LIST], [
m4/iconv.m4
m4/include_next.m4
m4/intmax_t.m4
+ m4/inttypes.m4
m4/inttypes_h.m4
m4/lib-ld.m4
m4/lib-link.m4
m4/lib-prefix.m4
m4/limits-h.m4
- m4/longlong.m4
m4/math_h.m4
m4/memchr.m4
m4/mmap-anon.m4
m4/multiarch.m4
m4/off_t.m4
+ m4/pid_t.m4
m4/printf.m4
m4/rawmemchr.m4
m4/size_max.m4
m4/ssize_t.m4
+ m4/std-gnu11.m4
m4/stddef_h.m4
m4/stdint.m4
m4/stdint_h.m4
@@ -385,4 +396,5 @@ AC_DEFUN([gl_FILE_LIST], [
m4/wchar_t.m4
m4/wint_t.m4
m4/xsize.m4
+ m4/zzgnulib.m4
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/host-cpu-c-abi.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/host-cpu-c-abi.m4
index 4407296d08..64e28b1d34 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/host-cpu-c-abi.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/host-cpu-c-abi.m4
@@ -1,5 +1,5 @@
-# host-cpu-c-abi.m4 serial 11
-dnl Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# host-cpu-c-abi.m4 serial 14
+dnl Copyright (C) 2002-2021 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.
@@ -55,7 +55,7 @@ AC_DEFUN([gl_HOST_CPU_C_ABI],
[case "$host_cpu" in
changequote(,)dnl
- i[4567]86 )
+ i[34567]86 )
changequote([,])dnl
gl_cv_host_cpu_c_abi=i386
;;
@@ -211,7 +211,7 @@ changequote([,])dnl
# be generating 64-bit code.
AC_COMPILE_IFELSE(
[AC_LANG_SOURCE(
- [[#if defined __powerpc64__ || defined _ARCH_PPC64
+ [[#if defined __powerpc64__ || defined __LP64__
int ok;
#else
error fail
@@ -457,7 +457,8 @@ EOF
dnl Sets the HOST_CPU_C_ABI_32BIT variable to 'yes' if the C language ABI
-dnl (application binary interface) is a 32-bit one, or to 'no' otherwise.
+dnl (application binary interface) is a 32-bit one, to 'no' if it is a 64-bit
+dnl one, or to 'unknown' if unknown.
dnl This is a simplified variant of gl_HOST_CPU_C_ABI.
AC_DEFUN([gl_HOST_CPU_C_ABI_32BIT],
[
@@ -467,14 +468,44 @@ AC_DEFUN([gl_HOST_CPU_C_ABI_32BIT],
case "$gl_cv_host_cpu_c_abi" in
i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc)
gl_cv_host_cpu_c_abi_32bit=yes ;;
- *)
+ x86_64 | alpha | arm64 | hppa64 | ia64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 )
gl_cv_host_cpu_c_abi_32bit=no ;;
+ *)
+ gl_cv_host_cpu_c_abi_32bit=unknown ;;
esac
else
case "$host_cpu" in
+ # CPUs that only support a 32-bit ABI.
+ arc \
+ | bfin \
+ | cris* \
+ | csky \
+ | epiphany \
+ | ft32 \
+ | h8300 \
+ | m68k \
+ | microblaze | microblazeel \
+ | nds32 | nds32le | nds32be \
+ | nios2 | nios2eb | nios2el \
+ | or1k* \
+ | or32 \
+ | sh | sh[1234] | sh[1234]e[lb] \
+ | tic6x \
+ | xtensa* )
+ gl_cv_host_cpu_c_abi_32bit=yes
+ ;;
+
+ # CPUs that only support a 64-bit ABI.
changequote(,)dnl
- i[4567]86 )
+ alpha | alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] \
+ | mmix )
+changequote([,])dnl
+ gl_cv_host_cpu_c_abi_32bit=no
+ ;;
+
+changequote(,)dnl
+ i[34567]86 )
changequote([,])dnl
gl_cv_host_cpu_c_abi_32bit=yes
;;
@@ -574,7 +605,7 @@ changequote([,])dnl
# be generating 64-bit code.
AC_COMPILE_IFELSE(
[AC_LANG_SOURCE(
- [[#if defined __powerpc64__ || defined _ARCH_PPC64
+ [[#if defined __powerpc64__ || defined __LP64__
int ok;
#else
error fail
@@ -634,7 +665,7 @@ changequote([,])dnl
;;
*)
- gl_cv_host_cpu_c_abi_32bit=no
+ gl_cv_host_cpu_c_abi_32bit=unknown
;;
esac
fi
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/iconv.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/iconv.m4
index a285e9daa5..d0e61de260 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/iconv.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/iconv.m4
@@ -1,5 +1,5 @@
-# iconv.m4 serial 21
-dnl Copyright (C) 2000-2002, 2007-2014, 2016-2019 Free Software Foundation,
+# iconv.m4 serial 24
+dnl Copyright (C) 2000-2002, 2007-2014, 2016-2021 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -7,6 +7,12 @@ dnl with or without modifications, as long as this notice is preserved.
dnl From Bruno Haible.
+AC_PREREQ([2.64])
+
+dnl Note: AM_ICONV is documented in the GNU gettext manual
+dnl <https://www.gnu.org/software/gettext/manual/html_node/AM_005fICONV.html>.
+dnl Don't make changes that are incompatible with that documentation!
+
AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
[
dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
@@ -86,8 +92,9 @@ AC_DEFUN([AM_ICONV_LINK],
#endif
]],
[[int result = 0;
- /* Test against AIX 5.1 bug: Failures are not distinguishable from successful
- returns. */
+ /* Test against AIX 5.1...7.2 bug: Failures are not distinguishable from
+ successful returns. This is even documented in
+ <https://www.ibm.com/support/knowledgecenter/ssw_aix_72/i_bostechref/iconv.html> */
{
iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
if (cd_utf8_to_88591 != (iconv_t)(-1))
@@ -225,8 +232,7 @@ AC_DEFUN([AM_ICONV_LINK],
AC_SUBST([LTLIBICONV])
])
-dnl Define AM_ICONV using AC_DEFUN_ONCE for Autoconf >= 2.64, in order to
-dnl avoid warnings like
+dnl Define AM_ICONV using AC_DEFUN_ONCE, in order to avoid warnings like
dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required".
dnl This is tricky because of the way 'aclocal' is implemented:
dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN.
@@ -234,54 +240,43 @@ dnl Otherwise aclocal's initial scan pass would miss the macro definition.
dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions.
dnl Otherwise aclocal would emit many "Use of uninitialized value $1"
dnl warnings.
-m4_define([gl_iconv_AC_DEFUN],
- m4_version_prereq([2.64],
- [[AC_DEFUN_ONCE(
- [$1], [$2])]],
- [m4_ifdef([gl_00GNULIB],
- [[AC_DEFUN_ONCE(
- [$1], [$2])]],
- [[AC_DEFUN(
- [$1], [$2])]])]))
-gl_iconv_AC_DEFUN([AM_ICONV],
+AC_DEFUN_ONCE([AM_ICONV],
[
AM_ICONV_LINK
if test "$am_cv_func_iconv" = yes; then
- AC_MSG_CHECKING([for iconv declaration])
- AC_CACHE_VAL([am_cv_proto_iconv], [
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[
+ AC_CACHE_CHECK([whether iconv is compatible with its POSIX signature],
+ [gl_cv_iconv_nonconst],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
#include <stdlib.h>
#include <iconv.h>
extern
#ifdef __cplusplus
"C"
#endif
-#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus)
size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
-#else
-size_t iconv();
-#endif
- ]],
- [[]])],
- [am_cv_proto_iconv_arg1=""],
- [am_cv_proto_iconv_arg1="const"])
- am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"])
- am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
- AC_MSG_RESULT([
- $am_cv_proto_iconv])
+ ]],
+ [[]])],
+ [gl_cv_iconv_nonconst=yes],
+ [gl_cv_iconv_nonconst=no])
+ ])
else
dnl When compiling GNU libiconv on a system that does not have iconv yet,
dnl pick the POSIX compliant declaration without 'const'.
- am_cv_proto_iconv_arg1=""
+ gl_cv_iconv_nonconst=yes
+ fi
+ if test $gl_cv_iconv_nonconst = yes; then
+ iconv_arg1=""
+ else
+ iconv_arg1="const"
fi
- AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1],
+ AC_DEFINE_UNQUOTED([ICONV_CONST], [$iconv_arg1],
[Define as const if the declaration of iconv() needs const.])
dnl Also substitute ICONV_CONST in the gnulib generated <iconv.h>.
m4_ifdef([gl_ICONV_H_DEFAULTS],
[AC_REQUIRE([gl_ICONV_H_DEFAULTS])
- if test -n "$am_cv_proto_iconv_arg1"; then
+ if test $gl_cv_iconv_nonconst != yes; then
ICONV_CONST="const"
fi
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/include_next.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/include_next.m4
index 86eb2c97c9..bdd542bc64 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/include_next.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/include_next.m4
@@ -1,5 +1,5 @@
-# include_next.m4 serial 24
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+# include_next.m4 serial 26
+dnl Copyright (C) 2006-2021 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.
@@ -106,19 +106,21 @@ dnl We intentionally avoid using AC_LANG_SOURCE here.
AC_SUBST([INCLUDE_NEXT])
AC_SUBST([INCLUDE_NEXT_AS_FIRST_DIRECTIVE])
AC_SUBST([PRAGMA_SYSTEM_HEADER])
- AC_CACHE_CHECK([whether system header files limit the line length],
- [gl_cv_pragma_columns],
- [dnl HP NonStop systems, which define __TANDEM, have this misfeature.
- AC_EGREP_CPP([choke me],
+
+ dnl HP NonStop systems, which define __TANDEM, limit the line length
+ dnl after including some system header files.
+ AC_CACHE_CHECK([whether source code line length is unlimited],
+ [gl_cv_source_line_length_unlimited],
+ [AC_EGREP_CPP([choke me],
[
#ifdef __TANDEM
choke me
#endif
],
- [gl_cv_pragma_columns=yes],
- [gl_cv_pragma_columns=no])
+ [gl_cv_source_line_length_unlimited=no],
+ [gl_cv_source_line_length_unlimited=yes])
])
- if test $gl_cv_pragma_columns = yes; then
+ if test $gl_cv_source_line_length_unlimited = no; then
PRAGMA_COLUMNS="#pragma COLUMNS 10000"
else
PRAGMA_COLUMNS=
@@ -176,42 +178,40 @@ AC_DEFUN([gl_NEXT_HEADERS_INTERNAL],
[AC_CHECK_HEADERS_ONCE([$1])
])
-dnl FIXME: gl_next_header and gl_header_exists must be used unquoted
-dnl until we can assume autoconf 2.64 or newer.
m4_foreach_w([gl_HEADER_NAME], [$1],
[AS_VAR_PUSHDEF([gl_next_header],
[gl_cv_next_]m4_defn([gl_HEADER_NAME]))
if test $gl_cv_have_include_next = yes; then
- AS_VAR_SET(gl_next_header, ['<'gl_HEADER_NAME'>'])
+ AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>'])
else
AC_CACHE_CHECK(
[absolute name of <]m4_defn([gl_HEADER_NAME])[>],
- m4_defn([gl_next_header]),
+ [gl_next_header],
[m4_if([$2], [check],
[AS_VAR_PUSHDEF([gl_header_exists],
[ac_cv_header_]m4_defn([gl_HEADER_NAME]))
- if test AS_VAR_GET(gl_header_exists) = yes; then
+ if test AS_VAR_GET([gl_header_exists]) = yes; then
AS_VAR_POPDEF([gl_header_exists])
])
gl_ABSOLUTE_HEADER_ONE(gl_HEADER_NAME)
AS_VAR_COPY([gl_header], [gl_cv_absolute_]AS_TR_SH(gl_HEADER_NAME))
- AS_VAR_SET(gl_next_header, ['"'$gl_header'"'])
+ AS_VAR_SET([gl_next_header], ['"'$gl_header'"'])
m4_if([$2], [check],
[else
- AS_VAR_SET(gl_next_header, ['<'gl_HEADER_NAME'>'])
+ AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>'])
fi
])
])
fi
AC_SUBST(
AS_TR_CPP([NEXT_]m4_defn([gl_HEADER_NAME])),
- [AS_VAR_GET(gl_next_header)])
+ [AS_VAR_GET([gl_next_header])])
if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
# INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
gl_next_as_first_directive='<'gl_HEADER_NAME'>'
else
# INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
- gl_next_as_first_directive=AS_VAR_GET(gl_next_header)
+ gl_next_as_first_directive=AS_VAR_GET([gl_next_header])
fi
AC_SUBST(
AS_TR_CPP([NEXT_AS_FIRST_DIRECTIVE_]m4_defn([gl_HEADER_NAME])),
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/intmax_t.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/intmax_t.m4
index 5ded16e3c5..63c4b415d4 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/intmax_t.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/intmax_t.m4
@@ -1,5 +1,5 @@
-# intmax_t.m4 serial 8
-dnl Copyright (C) 1997-2004, 2006-2007, 2009-2019 Free Software Foundation,
+# intmax_t.m4 serial 9
+dnl Copyright (C) 1997-2004, 2006-2007, 2009-2021 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -19,11 +19,7 @@ AC_DEFUN([gl_AC_TYPE_INTMAX_T],
AC_REQUIRE([gl_AC_HEADER_INTTYPES_H])
AC_REQUIRE([gl_AC_HEADER_STDINT_H])
if test $gl_cv_header_inttypes_h = no && test $gl_cv_header_stdint_h = no; then
- AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
- test $ac_cv_type_long_long_int = yes \
- && ac_type='long long' \
- || ac_type='long'
- AC_DEFINE_UNQUOTED([intmax_t], [$ac_type],
+ AC_DEFINE_UNQUOTED([intmax_t], [long long],
[Define to long or long long if <inttypes.h> and <stdint.h> don't define.])
else
AC_DEFINE([HAVE_INTMAX_T], [1],
@@ -57,11 +53,7 @@ AC_DEFUN([gt_AC_TYPE_INTMAX_T],
AC_DEFINE([HAVE_INTMAX_T], [1],
[Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>.])
else
- AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
- test $ac_cv_type_long_long_int = yes \
- && ac_type='long long' \
- || ac_type='long'
- AC_DEFINE_UNQUOTED([intmax_t], [$ac_type],
+ AC_DEFINE_UNQUOTED([intmax_t], [long long],
[Define to long or long long if <stdint.h> and <inttypes.h> don't define.])
fi
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes.m4
new file mode 100644
index 0000000000..f56e94a888
--- /dev/null
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes.m4
@@ -0,0 +1,165 @@
+# inttypes.m4 serial 32
+dnl Copyright (C) 2006-2021 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 From Derek Price, Bruno Haible.
+dnl Test whether <inttypes.h> is supported or must be substituted.
+
+AC_DEFUN([gl_INTTYPES_H],
+[
+ AC_REQUIRE([gl_INTTYPES_INCOMPLETE])
+ gl_INTTYPES_PRI_SCN
+])
+
+AC_DEFUN_ONCE([gl_INTTYPES_INCOMPLETE],
+[
+ AC_REQUIRE([gl_STDINT_H])
+ AC_CHECK_HEADERS_ONCE([inttypes.h])
+
+ dnl Override <inttypes.h> always, so that the portability warnings work.
+ AC_REQUIRE([gl_INTTYPES_H_DEFAULTS])
+ gl_CHECK_NEXT_HEADERS([inttypes.h])
+
+ AC_REQUIRE([gl_MULTIARCH])
+
+ dnl Check for declarations of anything we want to poison if the
+ dnl corresponding gnulib module is not in use.
+ gl_WARN_ON_USE_PREPARE([[#include <inttypes.h>
+ ]], [imaxabs imaxdiv strtoimax strtoumax])
+
+ AC_REQUIRE([AC_C_RESTRICT])
+])
+
+# Ensure that the PRI* and SCN* macros are defined appropriately.
+AC_DEFUN([gl_INTTYPES_PRI_SCN],
+[
+ PRIPTR_PREFIX=
+ if test -n "$STDINT_H"; then
+ dnl Using the gnulib <stdint.h>. It defines intptr_t to 'long' or
+ dnl 'long long', depending on _WIN64.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[
+ #ifdef _WIN64
+ LLP64
+ #endif
+ ]])
+ ],
+ [PRIPTR_PREFIX='"l"'],
+ [PRIPTR_PREFIX='"ll"'])
+ else
+ dnl Using the system's <stdint.h>.
+ for glpfx in '' l ll I64; do
+ case $glpfx in
+ '') gltype1='int';;
+ l) gltype1='long int';;
+ ll) gltype1='long long int';;
+ I64) gltype1='__int64';;
+ esac
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#include <stdint.h>
+ extern intptr_t foo;
+ extern $gltype1 foo;]])],
+ [PRIPTR_PREFIX='"'$glpfx'"'])
+ test -n "$PRIPTR_PREFIX" && break
+ done
+ fi
+ AC_SUBST([PRIPTR_PREFIX])
+
+ gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION(
+ [INT32_MAX_LT_INTMAX_MAX],
+ [defined INT32_MAX && defined INTMAX_MAX],
+ [INT32_MAX < INTMAX_MAX],
+ [sizeof (int) < sizeof (long long int)])
+ if test $APPLE_UNIVERSAL_BUILD = 0; then
+ gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION(
+ [INT64_MAX_EQ_LONG_MAX],
+ [defined INT64_MAX],
+ [INT64_MAX == LONG_MAX],
+ [sizeof (long long int) == sizeof (long int)])
+ else
+ INT64_MAX_EQ_LONG_MAX=-1
+ fi
+ gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION(
+ [UINT32_MAX_LT_UINTMAX_MAX],
+ [defined UINT32_MAX && defined UINTMAX_MAX],
+ [UINT32_MAX < UINTMAX_MAX],
+ [sizeof (unsigned int) < sizeof (unsigned long long int)])
+ if test $APPLE_UNIVERSAL_BUILD = 0; then
+ gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION(
+ [UINT64_MAX_EQ_ULONG_MAX],
+ [defined UINT64_MAX],
+ [UINT64_MAX == ULONG_MAX],
+ [sizeof (unsigned long long int) == sizeof (unsigned long int)])
+ else
+ UINT64_MAX_EQ_ULONG_MAX=-1
+ fi
+])
+
+# Define the symbol $1 to be 1 if the condition is true, 0 otherwise.
+# If $2 is true, the condition is $3; otherwise if long long int is supported
+# approximate the condition with $4; otherwise, assume the condition is false.
+# The condition should work on all C99 platforms; the approximations should be
+# good enough to work on all practical pre-C99 platforms.
+# $2 is evaluated by the C preprocessor, $3 and $4 as compile-time constants.
+AC_DEFUN([gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION],
+[
+ AC_CACHE_CHECK([whether $3],
+ [gl_cv_test_$1],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[/* Work also in C++ mode. */
+ #define __STDC_LIMIT_MACROS 1
+
+ /* Work if build is not clean. */
+ #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H
+
+ #include <limits.h>
+ #if HAVE_STDINT_H
+ #include <stdint.h>
+ #endif
+
+ #if $2
+ #define CONDITION ($3)
+ #else
+ #define CONDITION ($4)
+ #endif
+ int test[CONDITION ? 1 : -1];]])],
+ [gl_cv_test_$1=yes],
+ [gl_cv_test_$1=no])])
+ if test $gl_cv_test_$1 = yes; then
+ $1=1;
+ else
+ $1=0;
+ fi
+ AC_SUBST([$1])
+])
+
+AC_DEFUN([gl_INTTYPES_MODULE_INDICATOR],
+[
+ dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+ AC_REQUIRE([gl_INTTYPES_H_DEFAULTS])
+ gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+])
+
+AC_DEFUN([gl_INTTYPES_H_DEFAULTS],
+[
+ GNULIB_IMAXABS=0; AC_SUBST([GNULIB_IMAXABS])
+ GNULIB_IMAXDIV=0; AC_SUBST([GNULIB_IMAXDIV])
+ GNULIB_STRTOIMAX=0; AC_SUBST([GNULIB_STRTOIMAX])
+ GNULIB_STRTOUMAX=0; AC_SUBST([GNULIB_STRTOUMAX])
+ dnl Assume proper GNU behavior unless another module says otherwise.
+ HAVE_DECL_IMAXABS=1; AC_SUBST([HAVE_DECL_IMAXABS])
+ HAVE_DECL_IMAXDIV=1; AC_SUBST([HAVE_DECL_IMAXDIV])
+ HAVE_DECL_STRTOIMAX=1; AC_SUBST([HAVE_DECL_STRTOIMAX])
+ HAVE_DECL_STRTOUMAX=1; AC_SUBST([HAVE_DECL_STRTOUMAX])
+ HAVE_IMAXDIV_T=1; AC_SUBST([HAVE_IMAXDIV_T])
+ REPLACE_STRTOIMAX=0; AC_SUBST([REPLACE_STRTOIMAX])
+ REPLACE_STRTOUMAX=0; AC_SUBST([REPLACE_STRTOUMAX])
+ INT32_MAX_LT_INTMAX_MAX=1; AC_SUBST([INT32_MAX_LT_INTMAX_MAX])
+ INT64_MAX_EQ_LONG_MAX='defined _LP64'; AC_SUBST([INT64_MAX_EQ_LONG_MAX])
+ PRIPTR_PREFIX=__PRIPTR_PREFIX; AC_SUBST([PRIPTR_PREFIX])
+ UINT32_MAX_LT_UINTMAX_MAX=1; AC_SUBST([UINT32_MAX_LT_UINTMAX_MAX])
+ UINT64_MAX_EQ_ULONG_MAX='defined _LP64'; AC_SUBST([UINT64_MAX_EQ_ULONG_MAX])
+])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes_h.m4
index d20422a449..672a93e093 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/inttypes_h.m4
@@ -1,5 +1,5 @@
# inttypes_h.m4 serial 10
-dnl Copyright (C) 1997-2004, 2006, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 1997-2004, 2006, 2008-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-ld.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-ld.m4
index a18719630d..076358d5d5 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-ld.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-ld.m4
@@ -1,5 +1,5 @@
-# lib-ld.m4 serial 9
-dnl Copyright (C) 1996-2003, 2009-2019 Free Software Foundation, Inc.
+# lib-ld.m4 serial 10
+dnl Copyright (C) 1996-2003, 2009-2021 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.
@@ -122,7 +122,7 @@ else
*-*-aix*)
AC_COMPILE_IFELSE(
[AC_LANG_SOURCE(
- [[#if defined __powerpc64__ || defined _ARCH_PPC64
+ [[#if defined __powerpc64__ || defined __LP64__
int ok;
#else
error fail
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-link.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-link.m4
index 0ff10731fa..787efab2d2 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-link.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-link.m4
@@ -1,5 +1,5 @@
-# lib-link.m4 serial 28
-dnl Copyright (C) 2001-2019 Free Software Foundation, Inc.
+# lib-link.m4 serial 32
+dnl Copyright (C) 2001-2021 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.
@@ -192,6 +192,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
AC_LIB_WITH_FINAL_PREFIX([
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
])
AC_ARG_WITH(PACK[-prefix],
[[ --with-]]PACK[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib
@@ -204,17 +206,23 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
AC_LIB_WITH_FINAL_PREFIX([
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
])
else
additional_includedir="$withval/include"
additional_libdir="$withval/$acl_libdirstem"
- if test "$acl_libdirstem2" != "$acl_libdirstem" \
- && test ! -d "$withval/$acl_libdirstem"; then
- additional_libdir="$withval/$acl_libdirstem2"
- fi
+ additional_libdir2="$withval/$acl_libdirstem2"
+ additional_libdir3="$withval/$acl_libdirstem3"
fi
fi
])
+ if test "X$additional_libdir2" = "X$additional_libdir"; then
+ additional_libdir2=
+ fi
+ if test "X$additional_libdir3" = "X$additional_libdir"; then
+ additional_libdir3=
+ fi
dnl Search the library and its dependencies in $additional_libdir and
dnl $LDFLAGS. Using breadth-first-seach.
LIB[]NAME=
@@ -270,48 +278,54 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
shrext=
fi
if test $use_additional = yes; then
- dir="$additional_libdir"
- dnl The same code as in the loop below:
- dnl First look for a shared library.
- if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext"
- else
- if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
- ver=`(cd "$dir" && \
- for f in "$libname$shrext".*; do echo "$f"; done \
- | sed -e "s,^$libname$shrext\\\\.,," \
- | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
- | sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext.$ver"
+ for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do
+ if test "X$found_dir" = "X"; then
+ eval dir=\$$additional_libdir_variable
+ if test -n "$dir"; then
+ dnl The same code as in the loop below:
+ dnl First look for a shared library.
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
+ else
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
+ fi
fi
- else
- eval library_names=\"$acl_library_names_spec\"
- for f in $library_names; do
- if test -f "$dir/$f"; then
+ dnl Then look for a static library.
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
- found_so="$dir/$f"
- break
+ found_a="$dir/$libname.$acl_libext"
fi
- done
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
+ fi
+ fi
fi
fi
- fi
- dnl Then look for a static library.
- if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
- found_dir="$dir"
- found_a="$dir/$libname.$acl_libext"
- fi
- fi
- if test "X$found_dir" != "X"; then
- if test -f "$dir/$libname.la"; then
- found_la="$dir/$libname.la"
- fi
- fi
+ done
fi
if test "X$found_dir" = "X"; then
for x in $LDFLAGS $LTLIB[]NAME; do
@@ -321,7 +335,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
dir=`echo "X$x" | sed -e 's/^X-L//'`
dnl First look for a shared library.
if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
found_dir="$dir"
found_so="$dir/$libname$shrext"
else
@@ -331,14 +345,14 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
| sed -e "s,^$libname$shrext\\\\.,," \
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
| sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
found_dir="$dir"
found_so="$dir/$libname$shrext.$ver"
fi
else
eval library_names=\"$acl_library_names_spec\"
for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
found_dir="$dir"
found_so="$dir/$f"
break
@@ -349,7 +363,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
fi
dnl Then look for a static library.
if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
found_a="$dir/$libname.$acl_libext"
fi
@@ -375,7 +389,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
dnl standard /usr/lib.
if test "$enable_rpath" = no \
|| test "X$found_dir" = "X/usr/$acl_libdirstem" \
- || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
+ || test "X$found_dir" = "X/usr/$acl_libdirstem2" \
+ || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then
dnl No hardcoding is needed.
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
else
@@ -475,6 +490,13 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
fi
additional_includedir="$basedir/include"
;;
+ */$acl_libdirstem3 | */$acl_libdirstem3/)
+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'`
+ if test "$name" = '$1'; then
+ LIB[]NAME[]_PREFIX="$basedir"
+ fi
+ additional_includedir="$basedir/include"
+ ;;
esac
if test "X$additional_includedir" != "X"; then
dnl Potentially add $additional_includedir to $INCNAME.
@@ -525,19 +547,21 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
for dep in $dependency_libs; do
case "$dep" in
-L*)
- additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
- dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
+ dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
+ dnl Potentially add $dependency_libdir to $LIBNAME and $LTLIBNAME.
dnl But don't add it
dnl 1. if it's the standard /usr/lib,
dnl 2. if it's /usr/local/lib and we are using GCC on Linux,
dnl 3. if it's already present in $LDFLAGS or the already
dnl constructed $LIBNAME,
dnl 4. if it doesn't exist as a directory.
- if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
- && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
+ if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then
haveit=
- if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
- || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
+ if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then
if test -n "$GCC"; then
case $host_os in
linux* | gnu* | k*bsd*-gnu) haveit=yes;;
@@ -548,29 +572,29 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
haveit=
for x in $LDFLAGS $LIB[]NAME; do
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- dnl Really add $additional_libdir to $LIBNAME.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ dnl Really add $dependency_libdir to $LIBNAME.
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$dependency_libdir"
fi
fi
haveit=
for x in $LDFLAGS $LTLIB[]NAME; do
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- dnl Really add $additional_libdir to $LTLIBNAME.
- LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ dnl Really add $dependency_libdir to $LTLIBNAME.
+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$dependency_libdir"
fi
fi
fi
@@ -607,7 +631,20 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
;;
-l*)
dnl Handle this in the next round.
- names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
+ dnl But on GNU systems, ignore -lc options, because
+ dnl - linking with libc is the default anyway,
+ dnl - linking with libc.a may produce an error
+ dnl "/usr/bin/ld: dynamic STT_GNU_IFUNC symbol `strcmp' with pointer equality in `/usr/lib/libc.a(strcmp.o)' can not be used when making an executable; recompile with -fPIE and relink with -pie"
+ dnl or may produce an executable that always crashes, see
+ dnl <https://lists.gnu.org/archive/html/grep-devel/2020-09/msg00052.html>.
+ dep=`echo "X$dep" | sed -e 's/^X-l//'`
+ if test "X$dep" != Xc \
+ || case $host_os in
+ linux* | gnu* | k*bsd*-gnu) false ;;
+ *) true ;;
+ esac; then
+ names_next_round="$names_next_round $dep"
+ fi
;;
*.la)
dnl Handle this in the next round. Throw away the .la's
@@ -718,7 +755,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
dir="$next"
dnl No need to hardcode the standard /usr/lib.
if test "X$dir" != "X/usr/$acl_libdirstem" \
- && test "X$dir" != "X/usr/$acl_libdirstem2"; then
+ && test "X$dir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dir" != "X/usr/$acl_libdirstem3"; then
rpathdirs="$rpathdirs $dir"
fi
next=
@@ -728,7 +766,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
-L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'`
dnl No need to hardcode the standard /usr/lib.
if test "X$dir" != "X/usr/$acl_libdirstem" \
- && test "X$dir" != "X/usr/$acl_libdirstem2"; then
+ && test "X$dir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dir" != "X/usr/$acl_libdirstem3"; then
rpathdirs="$rpathdirs $dir"
fi
next= ;;
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-prefix.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-prefix.m4
index 8adb17bb91..3c94db0acb 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-prefix.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/lib-prefix.m4
@@ -1,5 +1,5 @@
-# lib-prefix.m4 serial 14
-dnl Copyright (C) 2001-2005, 2008-2019 Free Software Foundation, Inc.
+# lib-prefix.m4 serial 19
+dnl Copyright (C) 2001-2005, 2008-2021 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.
@@ -147,21 +147,24 @@ AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
])
dnl AC_LIB_PREPARE_MULTILIB creates
-dnl - a variable acl_libdirstem, containing the basename of the libdir, either
-dnl "lib" or "lib64" or "lib/64",
-dnl - a variable acl_libdirstem2, as a secondary possible value for
-dnl acl_libdirstem, either the same as acl_libdirstem or "lib/sparcv9" or
-dnl "lib/amd64".
+dnl - a function acl_is_expected_elfclass, that tests whether standard input
+dn; has a 32-bit or 64-bit ELF header, depending on the host CPU ABI,
+dnl - 3 variables acl_libdirstem, acl_libdirstem2, acl_libdirstem3, containing
+dnl the basename of the libdir to try in turn, either "lib" or "lib64" or
+dnl "lib/64" or "lib32" or "lib/sparcv9" or "lib/amd64" or similar.
AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
[
- dnl There is no formal standard regarding lib and lib64.
- dnl On glibc systems, the current practice is that on a system supporting
+ dnl There is no formal standard regarding lib, lib32, and lib64.
+ dnl On most glibc systems, the current practice is that on a system supporting
dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under
- dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. We determine
- dnl the compiler's default mode by looking at the compiler's library search
- dnl path. If at least one of its elements ends in /lib64 or points to a
- dnl directory whose absolute pathname ends in /lib64, we assume a 64-bit ABI.
- dnl Otherwise we use the default, namely "lib".
+ dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. However, on
+ dnl Arch Linux based distributions, it's the opposite: 32-bit libraries go
+ dnl under $prefix/lib32 and 64-bit libraries go under $prefix/lib.
+ dnl We determine the compiler's default mode by looking at the compiler's
+ dnl library search path. If at least one of its elements ends in /lib64 or
+ dnl points to a directory whose absolute pathname ends in /lib64, we use that
+ dnl for 64-bit ABIs. Similarly for 32-bit ABIs. Otherwise we use the default,
+ dnl namely "lib".
dnl On Solaris systems, the current practice is that on a system supporting
dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under
dnl $prefix/lib/64 (which is a symlink to either $prefix/lib/sparcv9 or
@@ -169,27 +172,75 @@ AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
AC_REQUIRE([AC_CANONICAL_HOST])
AC_REQUIRE([gl_HOST_CPU_C_ABI_32BIT])
- case "$host_os" in
- solaris*)
- AC_CACHE_CHECK([for 64-bit host], [gl_cv_solaris_64bit],
- [AC_COMPILE_IFELSE(
- [AC_LANG_SOURCE(
- [[#ifdef _LP64
- int ok;
- #else
- error fail
- #endif
- ]])],
- [gl_cv_solaris_64bit=yes],
- [gl_cv_solaris_64bit=no])
- ]);;
- esac
+ AC_CACHE_CHECK([for ELF binary format], [gl_cv_elf],
+ [AC_EGREP_CPP([Extensible Linking Format],
+ [#ifdef __ELF__
+ Extensible Linking Format
+ #endif
+ ],
+ [gl_cv_elf=yes],
+ [gl_cv_elf=no])
+ ])
+ if test $gl_cv_elf = yes; then
+ # Extract the ELF class of a file (5th byte) in decimal.
+ # Cf. https://en.wikipedia.org/wiki/Executable_and_Linkable_Format#File_header
+ if od -A x < /dev/null >/dev/null 2>/dev/null; then
+ # Use POSIX od.
+ func_elfclass ()
+ {
+ od -A n -t d1 -j 4 -N 1
+ }
+ else
+ # Use BSD hexdump.
+ func_elfclass ()
+ {
+ dd bs=1 count=1 skip=4 2>/dev/null | hexdump -e '1/1 "%3d "'
+ echo
+ }
+ fi
+ # Use 'expr', not 'test', to compare the values of func_elfclass, because on
+ # Solaris 11 OpenIndiana and Solaris 11 OmniOS, the result is 001 or 002,
+ # not 1 or 2.
+changequote(,)dnl
+ case $HOST_CPU_C_ABI_32BIT in
+ yes)
+ # 32-bit ABI.
+ acl_is_expected_elfclass ()
+ {
+ expr "`func_elfclass | sed -e 's/[ ]//g'`" = 1 > /dev/null
+ }
+ ;;
+ no)
+ # 64-bit ABI.
+ acl_is_expected_elfclass ()
+ {
+ expr "`func_elfclass | sed -e 's/[ ]//g'`" = 2 > /dev/null
+ }
+ ;;
+ *)
+ # Unknown.
+ acl_is_expected_elfclass ()
+ {
+ :
+ }
+ ;;
+ esac
+changequote([,])dnl
+ else
+ acl_is_expected_elfclass ()
+ {
+ :
+ }
+ fi
dnl Allow the user to override the result by setting acl_cv_libdirstems.
AC_CACHE_CHECK([for the common suffixes of directories in the library search path],
[acl_cv_libdirstems],
- [acl_libdirstem=lib
+ [dnl Try 'lib' first, because that's the default for libdir in GNU, see
+ dnl <https://www.gnu.org/prep/standards/html_node/Directory-Variables.html>.
+ acl_libdirstem=lib
acl_libdirstem2=
+ acl_libdirstem3=
case "$host_os" in
solaris*)
dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment
@@ -197,53 +248,76 @@ AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link."
dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the
dnl symlink is missing, so we set acl_libdirstem2 too.
- if test $gl_cv_solaris_64bit = yes; then
- acl_libdirstem=lib/64
+ if test $HOST_CPU_C_ABI_32BIT = no; then
+ acl_libdirstem2=lib/64
case "$host_cpu" in
- sparc*) acl_libdirstem2=lib/sparcv9 ;;
- i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
+ sparc*) acl_libdirstem3=lib/sparcv9 ;;
+ i*86 | x86_64) acl_libdirstem3=lib/amd64 ;;
esac
fi
;;
*)
dnl If $CC generates code for a 32-bit ABI, the libraries are
- dnl surely under $prefix/lib, not $prefix/lib64.
- if test "$HOST_CPU_C_ABI_32BIT" != yes; then
- dnl The result is a property of the system. However, non-system
- dnl compilers sometimes have odd library search paths. Therefore
- dnl prefer asking /usr/bin/gcc, if available, rather than $CC.
- searchpath=`(if test -f /usr/bin/gcc \
- && LC_ALL=C /usr/bin/gcc -print-search-dirs >/dev/null 2>/dev/null; then \
- LC_ALL=C /usr/bin/gcc -print-search-dirs; \
- else \
- LC_ALL=C $CC -print-search-dirs; \
- fi) 2>/dev/null \
- | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
- if test -n "$searchpath"; then
- acl_save_IFS="${IFS= }"; IFS=":"
- for searchdir in $searchpath; do
- if test -d "$searchdir"; then
- case "$searchdir" in
- */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
- */../ | */.. )
- # Better ignore directories of this form. They are misleading.
- ;;
- *) searchdir=`cd "$searchdir" && pwd`
- case "$searchdir" in
- */lib64 ) acl_libdirstem=lib64 ;;
- esac ;;
- esac
- fi
- done
- IFS="$acl_save_IFS"
+ dnl surely under $prefix/lib or $prefix/lib32, not $prefix/lib64.
+ dnl Similarly, if $CC generates code for a 64-bit ABI, the libraries
+ dnl are surely under $prefix/lib or $prefix/lib64, not $prefix/lib32.
+ dnl Find the compiler's search path. However, non-system compilers
+ dnl sometimes have odd library search paths. But we can't simply invoke
+ dnl '/usr/bin/gcc -print-search-dirs' because that would not take into
+ dnl account the -m32/-m31 or -m64 options from the $CC or $CFLAGS.
+ searchpath=`(LC_ALL=C $CC $CPPFLAGS $CFLAGS -print-search-dirs) 2>/dev/null \
+ | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+ if test $HOST_CPU_C_ABI_32BIT != no; then
+ # 32-bit or unknown ABI.
+ if test -d /usr/lib32; then
+ acl_libdirstem2=lib32
+ fi
+ fi
+ if test $HOST_CPU_C_ABI_32BIT != yes; then
+ # 64-bit or unknown ABI.
+ if test -d /usr/lib64; then
+ acl_libdirstem3=lib64
+ fi
+ fi
+ if test -n "$searchpath"; then
+ acl_save_IFS="${IFS= }"; IFS=":"
+ for searchdir in $searchpath; do
+ if test -d "$searchdir"; then
+ case "$searchdir" in
+ */lib32/ | */lib32 ) acl_libdirstem2=lib32 ;;
+ */lib64/ | */lib64 ) acl_libdirstem3=lib64 ;;
+ */../ | */.. )
+ # Better ignore directories of this form. They are misleading.
+ ;;
+ *) searchdir=`cd "$searchdir" && pwd`
+ case "$searchdir" in
+ */lib32 ) acl_libdirstem2=lib32 ;;
+ */lib64 ) acl_libdirstem3=lib64 ;;
+ esac ;;
+ esac
+ fi
+ done
+ IFS="$acl_save_IFS"
+ if test $HOST_CPU_C_ABI_32BIT = yes; then
+ # 32-bit ABI.
+ acl_libdirstem3=
+ fi
+ if test $HOST_CPU_C_ABI_32BIT = no; then
+ # 64-bit ABI.
+ acl_libdirstem2=
fi
fi
;;
esac
test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
- acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2"
+ test -n "$acl_libdirstem3" || acl_libdirstem3="$acl_libdirstem"
+ acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2,$acl_libdirstem3"
])
- # Decompose acl_cv_libdirstems into acl_libdirstem and acl_libdirstem2.
+ dnl Decompose acl_cv_libdirstems into acl_libdirstem, acl_libdirstem2, and
+ dnl acl_libdirstem3.
+changequote(,)dnl
acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
- acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e '/,/s/.*,//'`
+ acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,//' -e 's/,.*//'`
+ acl_libdirstem3=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,[^,]*,//' -e 's/,.*//'`
+changequote([,])dnl
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/limits-h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/limits-h.m4
index 68f724c777..70dbb7dcfa 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/limits-h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/limits-h.m4
@@ -1,6 +1,6 @@
dnl Check whether limits.h has needed features.
-dnl Copyright 2016-2019 Free Software Foundation, Inc.
+dnl Copyright 2016-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/longlong.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/longlong.m4
deleted file mode 100644
index 08d0e36300..0000000000
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/longlong.m4
+++ /dev/null
@@ -1,113 +0,0 @@
-# longlong.m4 serial 18
-dnl Copyright (C) 1999-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,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl From Paul Eggert.
-
-AC_PREREQ([2.62])
-
-# Define HAVE_LONG_LONG_INT if 'long long int' works.
-# This can be faster than what's in Autoconf 2.62 through 2.68.
-
-# 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
-# defined. In this case you can treat 'long long int' like 'long int'.
-
-AC_DEFUN([AC_TYPE_LONG_LONG_INT],
-[
- AC_REQUIRE([AC_TYPE_UNSIGNED_LONG_LONG_INT])
- AC_CACHE_CHECK([for long long int], [ac_cv_type_long_long_int],
- [ac_cv_type_long_long_int=yes
- if test "x${ac_cv_prog_cc_c99-no}" = xno; then
- ac_cv_type_long_long_int=$ac_cv_type_unsigned_long_long_int
- if test $ac_cv_type_long_long_int = yes; then
- dnl Catch a bug in Tandem NonStop Kernel (OSS) cc -O circa 2004.
- dnl If cross compiling, assume the bug is not important, since
- dnl nobody cross compiles for this platform as far as we know.
- AC_RUN_IFELSE(
- [AC_LANG_PROGRAM(
- [[@%:@include <limits.h>
- @%:@ifndef LLONG_MAX
- @%:@ define HALF \
- (1LL << (sizeof (long long int) * CHAR_BIT - 2))
- @%:@ define LLONG_MAX (HALF - 1 + HALF)
- @%:@endif]],
- [[long long int n = 1;
- int i;
- for (i = 0; ; i++)
- {
- long long int m = n << i;
- if (m >> i != n)
- return 1;
- if (LLONG_MAX / 2 < m)
- break;
- }
- return 0;]])],
- [],
- [ac_cv_type_long_long_int=no],
- [:])
- fi
- fi])
- if test $ac_cv_type_long_long_int = yes; then
- AC_DEFINE([HAVE_LONG_LONG_INT], [1],
- [Define to 1 if the system has the type 'long long int'.])
- fi
-])
-
-# Define HAVE_UNSIGNED_LONG_LONG_INT if 'unsigned long long int' works.
-# This can be faster than what's in Autoconf 2.62 through 2.68.
-
-# 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
-# will not be defined. In this case you can treat 'unsigned long long int'
-# like 'unsigned long int'.
-
-AC_DEFUN([AC_TYPE_UNSIGNED_LONG_LONG_INT],
-[
- AC_CACHE_CHECK([for unsigned long long int],
- [ac_cv_type_unsigned_long_long_int],
- [ac_cv_type_unsigned_long_long_int=yes
- if test "x${ac_cv_prog_cc_c99-no}" = xno; then
- AC_LINK_IFELSE(
- [_AC_TYPE_LONG_LONG_SNIPPET],
- [],
- [ac_cv_type_unsigned_long_long_int=no])
- fi])
- if test $ac_cv_type_unsigned_long_long_int = yes; then
- AC_DEFINE([HAVE_UNSIGNED_LONG_LONG_INT], [1],
- [Define to 1 if the system has the type 'unsigned long long int'.])
- fi
-])
-
-# Expands to a C program that can be used to test for simultaneous support
-# of 'long long' and 'unsigned long long'. We don't want to say that
-# 'long long' is available if 'unsigned long long' is not, or vice versa,
-# because too many programs rely on the symmetry between signed and unsigned
-# integer types (excluding 'bool').
-AC_DEFUN([_AC_TYPE_LONG_LONG_SNIPPET],
-[
- AC_LANG_PROGRAM(
- [[/* For now, do not test the preprocessor; as of 2007 there are too many
- implementations with broken preprocessors. Perhaps this can
- be revisited in 2012. In the meantime, code should not expect
- #if to work with literals wider than 32 bits. */
- /* Test literals. */
- long long int ll = 9223372036854775807ll;
- long long int nll = -9223372036854775807LL;
- unsigned long long int ull = 18446744073709551615ULL;
- /* Test constant expressions. */
- typedef int a[((-9223372036854775807LL < 0 && 0 < 9223372036854775807ll)
- ? 1 : -1)];
- typedef int b[(18446744073709551615ULL <= (unsigned long long int) -1
- ? 1 : -1)];
- int i = 63;]],
- [[/* Test availability of runtime routines for shift and division. */
- long long int llmax = 9223372036854775807ll;
- unsigned long long int ullmax = 18446744073709551615ull;
- return ((ll << 63) | (ll >> 63) | (ll < i) | (ll > i)
- | (llmax / ll) | (llmax % ll)
- | (ull << 63) | (ull >> 63) | (ull << i) | (ull >> i)
- | (ullmax / ull) | (ullmax % ull));]])
-])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/memchr.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/memchr.m4
index 0be394db4f..64470ded53 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/memchr.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/memchr.m4
@@ -1,5 +1,5 @@
-# memchr.m4 serial 14
-dnl Copyright (C) 2002-2004, 2009-2019 Free Software Foundation, Inc.
+# memchr.m4 serial 17
+dnl Copyright (C) 2002-2004, 2009-2021 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.
@@ -14,26 +14,17 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR],
AC_CHECK_FUNCS_ONCE([mprotect])
AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
- m4_ifdef([gl_FUNC_MEMCHR_OBSOLETE], [
- dnl These days, we assume memchr is present. But if support for old
- dnl platforms is desired:
- AC_CHECK_FUNCS_ONCE([memchr])
- if test $ac_cv_func_memchr = no; then
- HAVE_MEMCHR=0
- fi
- ])
- if test $HAVE_MEMCHR = 1; then
- # Detect platform-specific bugs in some versions of glibc:
- # memchr should not dereference anything with length 0
- # https://bugzilla.redhat.com/show_bug.cgi?id=499689
- # memchr should not dereference overestimated length after a match
- # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737
- # https://sourceware.org/bugzilla/show_bug.cgi?id=10162
- # memchr should cast the second argument to 'unsigned char'.
- # This bug exists in Android 4.3.
- # Assume that memchr works on platforms that lack mprotect.
- AC_CACHE_CHECK([whether memchr works], [gl_cv_func_memchr_works],
- [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+ # Detect platform-specific bugs in some versions of glibc:
+ # memchr should not dereference anything with length 0
+ # https://bugzilla.redhat.com/show_bug.cgi?id=499689
+ # memchr should not dereference overestimated length after a match
+ # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=10162
+ # memchr should cast the second argument to 'unsigned char'.
+ # This bug exists in Android 4.3.
+ # Assume that memchr works on platforms that lack mprotect.
+ AC_CACHE_CHECK([whether memchr works], [gl_cv_func_memchr_works],
+ [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
#include <string.h>
#if HAVE_SYS_MMAN_H
# include <fcntl.h>
@@ -68,6 +59,7 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR],
#endif
if (fence)
{
+ /* Test against bugs on glibc systems. */
if (memchr (fence, 0, 0))
result |= 1;
strcpy (fence - 9, "12345678");
@@ -75,6 +67,9 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR],
result |= 2;
if (memchr (fence - 1, 0, 3) != fence - 1)
result |= 4;
+ /* Test against bug on AIX 7.2. */
+ if (memchr (fence - 4, '6', 16) != fence - 4)
+ result |= 8;
}
/* Test against bug on Android 4.3. */
{
@@ -83,27 +78,26 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR],
input[1] = 'b';
input[2] = 'c';
if (memchr (input, 0x789abc00 | 'b', 3) != input + 1)
- result |= 8;
+ result |= 16;
}
return result;
]])],
- [gl_cv_func_memchr_works=yes],
- [gl_cv_func_memchr_works=no],
- [case "$host_os" in
- # Guess no on Android.
- linux*-android*) gl_cv_func_memchr_works="guessing no" ;;
- # Guess yes on native Windows.
- mingw*) gl_cv_func_memchr_works="guessing yes" ;;
- # Be pessimistic for now.
- *) gl_cv_func_memchr_works="guessing no" ;;
- esac
- ])
- ])
- case "$gl_cv_func_memchr_works" in
- *yes) ;;
- *) REPLACE_MEMCHR=1 ;;
- esac
- fi
+ [gl_cv_func_memchr_works=yes],
+ [gl_cv_func_memchr_works=no],
+ [case "$host_os" in
+ # Guess no on Android.
+ linux*-android*) gl_cv_func_memchr_works="guessing no" ;;
+ # Guess yes on native Windows.
+ mingw*) gl_cv_func_memchr_works="guessing yes" ;;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_memchr_works="$gl_cross_guess_normal" ;;
+ esac
+ ])
+ ])
+ case "$gl_cv_func_memchr_works" in
+ *yes) ;;
+ *) REPLACE_MEMCHR=1 ;;
+ esac
])
# Prerequisites of lib/memchr.c.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/mmap-anon.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/mmap-anon.m4
index 50c380824c..e47aa2d2f9 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/mmap-anon.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/mmap-anon.m4
@@ -1,5 +1,5 @@
-# mmap-anon.m4 serial 10
-dnl Copyright (C) 2005, 2007, 2009-2019 Free Software Foundation, Inc.
+# mmap-anon.m4 serial 12
+dnl Copyright (C) 2005, 2007, 2009-2021 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.
@@ -9,11 +9,11 @@ dnl with or without modifications, as long as this notice is preserved.
# - On Linux, AIX, OSF/1, Solaris, Cygwin, Interix, Haiku, both MAP_ANONYMOUS
# and MAP_ANON exist and have the same value.
# - On HP-UX, only MAP_ANONYMOUS exists.
-# - On Mac OS X, FreeBSD, NetBSD, OpenBSD, only MAP_ANON exists.
+# - On Mac OS X, FreeBSD, NetBSD, OpenBSD, Minix, only MAP_ANON exists.
# - On IRIX, neither exists, and a file descriptor opened to /dev/zero must be
# used.
-AC_DEFUN([gl_FUNC_MMAP_ANON],
+AC_DEFUN_ONCE([gl_FUNC_MMAP_ANON],
[
dnl Persuade glibc <sys/mman.h> to define MAP_ANONYMOUS.
AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/multiarch.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/multiarch.m4
index d48316e0ed..f1678d9f6e 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/multiarch.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/multiarch.m4
@@ -1,5 +1,5 @@
-# multiarch.m4 serial 7
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# multiarch.m4 serial 9
+dnl Copyright (C) 2008-2021 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.
@@ -21,37 +21,40 @@ dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN_ONCE([gl_MULTIARCH],
[
dnl Code similar to autoconf-2.63 AC_C_BIGENDIAN.
- gl_cv_c_multiarch=no
- AC_COMPILE_IFELSE(
- [AC_LANG_SOURCE(
- [[#ifndef __APPLE_CC__
- not a universal capable compiler
- #endif
- typedef int dummy;
- ]])],
- [
- dnl Check for potential -arch flags. It is not universal unless
- dnl there are at least two -arch flags with different values.
- arch=
- prev=
- for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
- if test -n "$prev"; then
- case $word in
- i?86 | x86_64 | ppc | ppc64)
- if test -z "$arch" || test "$arch" = "$word"; then
- arch="$word"
- else
- gl_cv_c_multiarch=yes
- fi
- ;;
- esac
- prev=
- else
- if test "x$word" = "x-arch"; then
- prev=arch
- fi
- fi
- done
+ AC_CACHE_CHECK([whether the compiler produces multi-arch binaries],
+ [gl_cv_c_multiarch],
+ [gl_cv_c_multiarch=no
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#ifndef __APPLE_CC__
+ not a universal capable compiler
+ #endif
+ typedef int dummy;
+ ]])],
+ [
+ dnl Check for potential -arch flags. It is not universal unless
+ dnl there are at least two -arch flags with different values.
+ arch=
+ prev=
+ for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
+ if test -n "$prev"; then
+ case $word in
+ i?86 | x86_64 | ppc | ppc64 | arm | arm64)
+ if test -z "$arch" || test "$arch" = "$word"; then
+ arch="$word"
+ else
+ gl_cv_c_multiarch=yes
+ fi
+ ;;
+ esac
+ prev=
+ else
+ if test "x$word" = "x-arch"; then
+ prev=arch
+ fi
+ fi
+ done
+ ])
])
if test $gl_cv_c_multiarch = yes; then
APPLE_UNIVERSAL_BUILD=1
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/off_t.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/off_t.m4
index 711a2d44fb..bdec43c804 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/off_t.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/off_t.m4
@@ -1,5 +1,5 @@
# off_t.m4 serial 1
-dnl Copyright (C) 2012-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2012-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/printf.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/printf.m4
index 6d2280ef5c..d8b3521046 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/printf.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/printf.m4
@@ -1,5 +1,5 @@
-# printf.m4 serial 61
-dnl Copyright (C) 2003, 2007-2019 Free Software Foundation, Inc.
+# printf.m4 serial 72
+dnl Copyright (C) 2003, 2007-2021 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.
@@ -67,6 +67,7 @@ changequote(,)dnl
# Guess yes on FreeBSD >= 5.
freebsd[1-4].*) gl_cv_func_printf_sizes_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_sizes_c99="guessing yes";;
+ midnightbsd*) gl_cv_func_printf_sizes_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_printf_sizes_c99="guessing no";;
darwin*) gl_cv_func_printf_sizes_c99="guessing yes";;
@@ -93,8 +94,8 @@ changequote([,])dnl
[gl_cv_func_printf_sizes_c99="guessing yes"],
[gl_cv_func_printf_sizes_c99="guessing no"])
;;
- # If we don't know, assume the worst.
- *) gl_cv_func_printf_sizes_c99="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_printf_sizes_c99="$gl_cross_guess_normal";;
esac
])
])
@@ -247,6 +248,7 @@ changequote(,)dnl
# Guess yes on FreeBSD >= 6.
freebsd[1-5].*) gl_cv_func_printf_infinite="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_infinite="guessing yes";;
+ midnightbsd*) gl_cv_func_printf_infinite="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_printf_infinite="guessing no";;
darwin*) gl_cv_func_printf_infinite="guessing yes";;
@@ -257,6 +259,9 @@ changequote(,)dnl
netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*)
gl_cv_func_printf_infinite="guessing no";;
netbsd*) gl_cv_func_printf_infinite="guessing yes";;
+ # Guess yes on OpenBSD >= 6.0.
+ openbsd[1-5].*) gl_cv_func_printf_infinite="guessing no";;
+ openbsd*) gl_cv_func_printf_infinite="guessing yes";;
# Guess yes on BeOS.
beos*) gl_cv_func_printf_infinite="guessing yes";;
# Guess no on Android.
@@ -271,8 +276,8 @@ changequote([,])dnl
[gl_cv_func_printf_infinite="guessing yes"],
[gl_cv_func_printf_infinite="guessing no"])
;;
- # If we don't know, assume the worst.
- *) gl_cv_func_printf_infinite="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_printf_infinite="$gl_cross_guess_normal";;
esac
])
])
@@ -466,9 +471,13 @@ changequote(,)dnl
# Guess yes on FreeBSD >= 6.
freebsd[1-5].*) gl_cv_func_printf_infinite_long_double="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_infinite_long_double="guessing yes";;
+ midnightbsd*) gl_cv_func_printf_infinite_long_double="guessing yes";;
# Guess yes on HP-UX >= 11.
hpux[7-9]* | hpux10*) gl_cv_func_printf_infinite_long_double="guessing no";;
hpux*) gl_cv_func_printf_infinite_long_double="guessing yes";;
+ # Guess yes on OpenBSD >= 6.0.
+ openbsd[1-5].*) gl_cv_func_printf_infinite_long_double="guessing no";;
+ openbsd*) gl_cv_func_printf_infinite_long_double="guessing yes";;
# Guess no on Android.
linux*-android*) gl_cv_func_printf_infinite_long_double="guessing no";;
changequote([,])dnl
@@ -481,8 +490,8 @@ changequote([,])dnl
[gl_cv_func_printf_infinite_long_double="guessing yes"],
[gl_cv_func_printf_infinite_long_double="guessing no"])
;;
- # If we don't know, assume the worst.
- *) gl_cv_func_printf_infinite_long_double="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_printf_infinite_long_double="$gl_cross_guess_normal";;
esac
;;
esac
@@ -587,8 +596,8 @@ int main ()
linux*-android*) gl_cv_func_printf_directive_a="guessing no";;
# Guess no on native Windows.
mingw*) gl_cv_func_printf_directive_a="guessing no";;
- # If we don't know, assume the worst.
- *) gl_cv_func_printf_directive_a="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_printf_directive_a="$gl_cross_guess_normal";;
esac
])
])
@@ -638,9 +647,13 @@ changequote(,)dnl
# Guess yes on FreeBSD >= 6.
freebsd[1-5].*) gl_cv_func_printf_directive_f="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_directive_f="guessing yes";;
+ midnightbsd*) gl_cv_func_printf_directive_f="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_printf_directive_f="guessing no";;
darwin*) gl_cv_func_printf_directive_f="guessing yes";;
+ # Guess yes on OpenBSD >= 6.0.
+ openbsd[1-5].*) gl_cv_func_printf_directive_f="guessing no";;
+ openbsd*) gl_cv_func_printf_directive_f="guessing yes";;
# Guess yes on Solaris >= 2.10.
solaris2.[1-9][0-9]*) gl_cv_func_printf_directive_f="guessing yes";;
solaris*) gl_cv_func_printf_directive_f="guessing no";;
@@ -656,8 +669,8 @@ changequote([,])dnl
[gl_cv_func_printf_directive_f="guessing yes"],
[gl_cv_func_printf_directive_f="guessing no"])
;;
- # If we don't know, assume the worst.
- *) gl_cv_func_printf_directive_f="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_printf_directive_f="$gl_cross_guess_normal";;
esac
])
])
@@ -680,7 +693,10 @@ AC_DEFUN([gl_PRINTF_DIRECTIVE_N],
#include <stdlib.h>
#include <string.h>
#ifdef _MSC_VER
-/* See page about "Parameter Validation" on msdn.microsoft.com. */
+#include <inttypes.h>
+/* See page about "Parameter Validation" on msdn.microsoft.com.
+ <https://docs.microsoft.com/en-us/cpp/c-runtime-library/parameter-validation>
+ <https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/set-invalid-parameter-handler-set-thread-local-invalid-parameter-handler> */
static void cdecl
invalid_parameter_handler (const wchar_t *expression,
const wchar_t *function,
@@ -711,6 +727,16 @@ int main ()
[gl_cv_func_printf_directive_n=yes],
[gl_cv_func_printf_directive_n=no],
[case "$host_os" in
+ # Guess no on glibc when _FORTIFY_SOURCE >= 2.
+ *-gnu* | gnu*) AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if _FORTIFY_SOURCE >= 2
+ error fail
+ #endif
+ ]])],
+ [gl_cv_func_printf_directive_n="guessing yes"],
+ [gl_cv_func_printf_directive_n="guessing no"])
+ ;;
# Guess no on Android.
linux*-android*) gl_cv_func_printf_directive_n="guessing no";;
# Guess no on native Windows.
@@ -737,13 +763,7 @@ AC_DEFUN([gl_PRINTF_DIRECTIVE_LS],
[
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-#include <stddef.h>
#include <stdio.h>
-#include <time.h>
#include <wchar.h>
#include <string.h>
int main ()
@@ -791,7 +811,9 @@ int main ()
[
changequote(,)dnl
case "$host_os" in
- openbsd*) gl_cv_func_printf_directive_ls="guessing no";;
+ # Guess yes on OpenBSD >= 6.0.
+ openbsd[1-5].*) gl_cv_func_printf_directive_ls="guessing no";;
+ openbsd*) gl_cv_func_printf_directive_ls="guessing yes";;
irix*) gl_cv_func_printf_directive_ls="guessing no";;
solaris*) gl_cv_func_printf_directive_ls="guessing no";;
cygwin*) gl_cv_func_printf_directive_ls="guessing no";;
@@ -978,8 +1000,8 @@ changequote(,)dnl
linux*-android*) gl_cv_func_printf_flag_zero="guessing no";;
# Guess no on native Windows.
mingw*) gl_cv_func_printf_flag_zero="guessing no";;
- # If we don't know, assume the worst.
- *) gl_cv_func_printf_flag_zero="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_printf_flag_zero="$gl_cross_guess_normal";;
esac
changequote([,])dnl
])
@@ -1059,9 +1081,8 @@ AC_DEFUN([gl_PRINTF_ENOMEM],
gl_cv_func_printf_enomem="guessing no"
if test "$cross_compiling" = no; then
if test $APPLE_UNIVERSAL_BUILD = 0; then
- AC_LANG_CONFTEST([AC_LANG_SOURCE([
+ AC_LANG_CONFTEST([AC_LANG_SOURCE([[
]GL_NOCRASH[
-changequote(,)dnl
#include <stdio.h>
#include <sys/types.h>
#include <sys/time.h>
@@ -1106,8 +1127,7 @@ int main()
ret = printf ("%.5000000f", 1.0);
return !(ret == 5000002 || (ret < 0 && errno == ENOMEM));
}
-changequote([,])dnl
- ])])
+ ]])])
if AC_TRY_EVAL([ac_link]) && test -s conftest$ac_exeext; then
(./conftest 2>&AS_MESSAGE_LOG_FD
result=$?
@@ -1156,8 +1176,8 @@ changequote(,)dnl
haiku*) gl_cv_func_printf_enomem="guessing yes";;
# Guess no on Android.
linux*-android*) gl_cv_func_printf_enomem="guessing no";;
- # If we don't know, assume the worst.
- *) gl_cv_func_printf_enomem="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_printf_enomem="$gl_cross_guess_normal";;
esac
changequote([,])dnl
fi
@@ -1176,7 +1196,7 @@ dnl Test whether the string produced by the snprintf function is always NUL
dnl terminated. (ISO C99, POSIX:2001)
dnl Result is gl_cv_func_snprintf_truncation_c99.
-AC_DEFUN([gl_SNPRINTF_TRUNCATION_C99],
+AC_DEFUN_ONCE([gl_SNPRINTF_TRUNCATION_C99],
[
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
@@ -1223,6 +1243,7 @@ changequote(,)dnl
# Guess yes on FreeBSD >= 5.
freebsd[1-4].*) gl_cv_func_snprintf_truncation_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
+ midnightbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";;
darwin*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
@@ -1255,8 +1276,8 @@ changequote(,)dnl
linux*-android*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
# Guess no on native Windows.
mingw*) gl_cv_func_snprintf_truncation_c99="guessing no";;
- # If we don't know, assume the worst.
- *) gl_cv_func_snprintf_truncation_c99="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_snprintf_truncation_c99="$gl_cross_guess_normal";;
esac
changequote([,])dnl
])
@@ -1327,6 +1348,7 @@ changequote(,)dnl
# Guess yes on FreeBSD >= 5.
freebsd[1-4].*) gl_cv_func_snprintf_retval_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_snprintf_retval_c99="guessing yes";;
+ midnightbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";;
darwin*) gl_cv_func_snprintf_retval_c99="guessing yes";;
@@ -1358,8 +1380,8 @@ changequote([,])dnl
[gl_cv_func_snprintf_retval_c99="guessing yes"],
[gl_cv_func_snprintf_retval_c99="guessing no"])
;;
- # If we don't know, assume the worst.
- *) gl_cv_func_snprintf_retval_c99="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_snprintf_retval_c99="$gl_cross_guess_normal";;
esac
])
])
@@ -1412,15 +1434,24 @@ int main ()
[gl_cv_func_snprintf_directive_n=yes],
[gl_cv_func_snprintf_directive_n=no],
[
-changequote(,)dnl
case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu* | gnu*) gl_cv_func_snprintf_directive_n="guessing yes";;
+ # Guess no on glibc when _FORTIFY_SOURCE >= 2.
+ *-gnu* | gnu*) AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if _FORTIFY_SOURCE >= 2
+ error fail
+ #endif
+ ]])],
+ [gl_cv_func_snprintf_directive_n="guessing yes"],
+ [gl_cv_func_snprintf_directive_n="guessing no"])
+ ;;
+changequote(,)dnl
# Guess yes on musl systems.
*-musl*) gl_cv_func_snprintf_directive_n="guessing yes";;
# Guess yes on FreeBSD >= 5.
freebsd[1-4].*) gl_cv_func_snprintf_directive_n="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_snprintf_directive_n="guessing yes";;
+ midnightbsd*) gl_cv_func_snprintf_directive_n="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_snprintf_directive_n="guessing no";;
darwin*) gl_cv_func_snprintf_directive_n="guessing yes";;
@@ -1446,10 +1477,10 @@ changequote(,)dnl
linux*-android*) gl_cv_func_snprintf_directive_n="guessing no";;
# Guess no on native Windows.
mingw*) gl_cv_func_snprintf_directive_n="guessing no";;
- # If we don't know, assume the worst.
- *) gl_cv_func_snprintf_directive_n="guessing no";;
- esac
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_snprintf_directive_n="$gl_cross_guess_normal";;
changequote([,])dnl
+ esac
])
])
])
@@ -1577,6 +1608,7 @@ changequote(,)dnl
# Guess yes on FreeBSD >= 5.
freebsd[1-4].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";;
+ midnightbsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";;
darwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";;
@@ -1601,8 +1633,8 @@ changequote(,)dnl
linux*-android*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";;
# Guess yes on native Windows.
mingw* | pw*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";;
- # If we don't know, assume the worst.
- *) gl_cv_func_vsnprintf_zerosize_c99="guessing no";;
+ # If we don't know, obey --enable-cross-guesses.
+ *) gl_cv_func_vsnprintf_zerosize_c99="$gl_cross_guess_normal";;
esac
changequote([,])dnl
])
@@ -1659,8 +1691,10 @@ dnl 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dnl glibc 2.5 . . . . . . . . . . . . . . . . . . . .
dnl glibc 2.3.6 . . . . # . . . . . . . . . . . . . . .
dnl FreeBSD 5.4, 6.1 . . . . # . . . . . . # . # . . . . . .
+dnl Mac OS X 10.13.5 . . . # # . # . . . . . . . . . . # . .
dnl Mac OS X 10.5.8 . . . # # . . . . . . # . . . . . . . .
dnl Mac OS X 10.3.9 . . . . # . . . . . . # . # . . . . . .
+dnl OpenBSD 6.0, 6.7 . . . . # . . . . . . . . # . . . . . .
dnl OpenBSD 3.9, 4.0 . . # # # # . # . # . # . # . . . . . .
dnl Cygwin 1.7.0 (2009) . . . # . . . ? . . . . . ? . . . . . .
dnl Cygwin 1.5.25 (2008) . . . # # . . # . . . . . # . . . . . .
@@ -1680,6 +1714,7 @@ dnl HP-UX 10.20 # . # . # # . ? . . # # . . .
dnl IRIX 6.5 # . # # # # . # . . . # . . . . # . . .
dnl OSF/1 5.1 # . # # # # . . . . . # . . . . # . . #
dnl OSF/1 4.0d # . # # # # . . . . . # . . # # # # # #
+dnl NetBSD 9.0 . . . . # . . . . . . . . . . . . . . .
dnl NetBSD 5.0 . . . # # . . . . . . # . # . . . . . .
dnl NetBSD 4.0 . ? ? ? ? ? . ? . ? ? ? ? ? . . . ? ? ?
dnl NetBSD 3.0 . . . . # # . ? # # ? # . # . . . . . .
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/rawmemchr.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/rawmemchr.m4
index 03a8804965..f92846543c 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/rawmemchr.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/rawmemchr.m4
@@ -1,5 +1,5 @@
# rawmemchr.m4 serial 2
-dnl Copyright (C) 2003, 2007-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2007-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/size_max.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/size_max.m4
index ab79052d6e..1d41ce9ab2 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/size_max.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/size_max.m4
@@ -1,5 +1,5 @@
-# size_max.m4 serial 11
-dnl Copyright (C) 2003, 2005-2006, 2008-2019 Free Software Foundation, Inc.
+# size_max.m4 serial 12
+dnl Copyright (C) 2003, 2005-2006, 2008-2021 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.
@@ -13,7 +13,7 @@ AC_DEFUN([gl_SIZE_MAX],
AC_CHECK_HEADERS([stdint.h])
dnl First test whether the system already has SIZE_MAX.
AC_CACHE_CHECK([for SIZE_MAX], [gl_cv_size_max], [
- gl_cv_size_max=
+ gl_cv_size_max=no
AC_EGREP_CPP([Found it], [
#include <limits.h>
#if HAVE_STDINT_H
@@ -23,7 +23,7 @@ AC_DEFUN([gl_SIZE_MAX],
Found it
#endif
], [gl_cv_size_max=yes])
- if test -z "$gl_cv_size_max"; then
+ if test $gl_cv_size_max != yes; then
dnl Define it ourselves. Here we assume that the type 'size_t' is not wider
dnl than the type 'unsigned long'. Try hard to find a definition that can
dnl be used in a preprocessor #if, i.e. doesn't contain a cast.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/ssize_t.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/ssize_t.m4
index 38bcee1c7d..f0ed509fcc 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/ssize_t.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/ssize_t.m4
@@ -1,5 +1,5 @@
# ssize_t.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2001-2003, 2006, 2010-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2003, 2006, 2010-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stddef_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stddef_h.m4
index 979e3cf7e7..cd666c4a58 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stddef_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stddef_h.m4
@@ -1,14 +1,19 @@
-dnl A placeholder for <stddef.h>, for platforms that have issues.
-# stddef_h.m4 serial 6
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# stddef_h.m4 serial 9
+dnl Copyright (C) 2009-2021 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 A placeholder for <stddef.h>, for platforms that have issues.
+
AC_DEFUN([gl_STDDEF_H],
[
AC_REQUIRE([gl_STDDEF_H_DEFAULTS])
AC_REQUIRE([gt_TYPE_WCHAR_T])
+
+ dnl Persuade OpenBSD <stddef.h> to declare max_align_t.
+ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+
STDDEF_H=
dnl Test whether the type max_align_t exists and whether its alignment
@@ -19,10 +24,17 @@ AC_DEFUN([gl_STDDEF_H],
[AC_LANG_PROGRAM(
[[#include <stddef.h>
unsigned int s = sizeof (max_align_t);
- #if defined __GNUC__ || defined __IBM__ALIGNOF__
+ #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__
int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1];
int check2[2 * (__alignof__ (long double) <= __alignof__ (max_align_t)) - 1];
#endif
+ typedef struct { char a; max_align_t b; } max_helper;
+ typedef struct { char a; long b; } long_helper;
+ typedef struct { char a; double b; } double_helper;
+ typedef struct { char a; long double b; } long_double_helper;
+ int check3[2 * (offsetof (long_helper, b) <= offsetof (max_helper, b)) - 1];
+ int check4[2 * (offsetof (double_helper, b) <= offsetof (max_helper, b)) - 1];
+ int check5[2 * (offsetof (long_double_helper, b) <= offsetof (max_helper, b)) - 1];
]])],
[gl_cv_type_max_align_t=yes],
[gl_cv_type_max_align_t=no])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint.m4
index 11d8e8e52d..a785b44ed1 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint.m4
@@ -1,5 +1,5 @@
-# stdint.m4 serial 53
-dnl Copyright (C) 2001-2019 Free Software Foundation, Inc.
+# stdint.m4 serial 58
+dnl Copyright (C) 2001-2021 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.
@@ -17,21 +17,12 @@ AC_DEFUN_ONCE([gl_STDINT_H],
AC_REQUIRE([gl_LIMITS_H])
AC_REQUIRE([gt_TYPE_WINT_T])
- dnl Check for long long int and unsigned long long int.
- AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
- if test $ac_cv_type_long_long_int = yes; then
- HAVE_LONG_LONG_INT=1
- else
- HAVE_LONG_LONG_INT=0
- fi
- AC_SUBST([HAVE_LONG_LONG_INT])
- AC_REQUIRE([AC_TYPE_UNSIGNED_LONG_LONG_INT])
- if test $ac_cv_type_unsigned_long_long_int = yes; then
- HAVE_UNSIGNED_LONG_LONG_INT=1
- else
- HAVE_UNSIGNED_LONG_LONG_INT=0
- fi
- AC_SUBST([HAVE_UNSIGNED_LONG_LONG_INT])
+ dnl For backward compatibility. Some packages may still be testing these
+ dnl macros.
+ AC_DEFINE([HAVE_LONG_LONG_INT], [1],
+ [Define to 1 if the system has the type 'long long int'.])
+ AC_DEFINE([HAVE_UNSIGNED_LONG_LONG_INT], [1],
+ [Define to 1 if the system has the type 'unsigned long long int'.])
dnl Check for <wchar.h>, in the same way as gl_WCHAR_H does.
AC_CHECK_HEADERS_ONCE([wchar.h])
@@ -43,7 +34,7 @@ AC_DEFUN_ONCE([gl_STDINT_H],
AC_SUBST([HAVE_WCHAR_H])
dnl Check for <inttypes.h>.
- dnl AC_INCLUDES_DEFAULT defines $ac_cv_header_inttypes_h.
+ AC_CHECK_HEADERS_ONCE([inttypes.h])
if test $ac_cv_header_inttypes_h = yes; then
HAVE_INTTYPES_H=1
else
@@ -52,7 +43,7 @@ AC_DEFUN_ONCE([gl_STDINT_H],
AC_SUBST([HAVE_INTTYPES_H])
dnl Check for <sys/types.h>.
- dnl AC_INCLUDES_DEFAULT defines $ac_cv_header_sys_types_h.
+ AC_CHECK_HEADERS_ONCE([sys/types.h])
if test $ac_cv_header_sys_types_h = yes; then
HAVE_SYS_TYPES_H=1
else
@@ -161,7 +152,7 @@ uintmax_t j = UINTMAX_MAX;
/* Check that SIZE_MAX has the correct type, if possible. */
#if 201112 <= __STDC_VERSION__
int k = _Generic (SIZE_MAX, size_t: 0);
-#elif (2 <= __GNUC__ || defined __IBM__TYPEOF__ \
+#elif (2 <= __GNUC__ || 4 <= __clang_major__ || defined __IBM__TYPEOF__ \
|| (0x5110 <= __SUNPRO_C && !__STDC__))
extern size_t k;
extern __typeof__ (SIZE_MAX) k;
@@ -311,9 +302,10 @@ static const char *macro_values[] =
HAVE_C99_STDINT_H=1
dnl Now see whether the system <stdint.h> works without
dnl __STDC_CONSTANT_MACROS/__STDC_LIMIT_MACROS defined.
- AC_CACHE_CHECK([whether stdint.h predates C++11],
- [gl_cv_header_stdint_predates_cxx11_h],
- [gl_cv_header_stdint_predates_cxx11_h=yes
+ dnl If not, there would be problems when stdint.h is included from C++.
+ AC_CACHE_CHECK([whether stdint.h works without ISO C predefines],
+ [gl_cv_header_stdint_without_STDC_macros],
+ [gl_cv_header_stdint_without_STDC_macros=no
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
@@ -324,13 +316,14 @@ gl_STDINT_INCLUDES
intmax_t im = INTMAX_MAX;
int32_t i32 = INT32_C (0x7fffffff);
]])],
- [gl_cv_header_stdint_predates_cxx11_h=no])])
+ [gl_cv_header_stdint_without_STDC_macros=yes])
+ ])
- if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then
+ if test $gl_cv_header_stdint_without_STDC_macros = no; then
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],
- [Define to 1 if the system <stdint.h> predates C++11.])
+ [Define to 1 if the system <stdint.h> predates C++11.])
fi
AC_CACHE_CHECK([whether stdint.h has UINTMAX_WIDTH etc.],
[gl_cv_header_stdint_width],
@@ -500,13 +493,9 @@ AC_DEFUN([gl_INTEGER_TYPE_SUFFIX],
dnl gl_STDINT_INCLUDES
AC_DEFUN([gl_STDINT_INCLUDES],
[[
- /* BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
#include <stddef.h>
#include <signal.h>
#if HAVE_WCHAR_H
- # include <stdio.h>
- # include <time.h>
# include <wchar.h>
#endif
]])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint_h.m4
index 6d5f1af0a1..18aa50a4a6 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdint_h.m4
@@ -1,5 +1,5 @@
# stdint_h.m4 serial 9
-dnl Copyright (C) 1997-2004, 2006, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 1997-2004, 2006, 2008-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdio_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdio_h.m4
index 6c9c104044..4c3f24acca 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdio_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/stdio_h.m4
@@ -1,5 +1,5 @@
-# stdio_h.m4 serial 49
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# stdio_h.m4 serial 52
+dnl Copyright (C) 2007-2021 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.
@@ -107,6 +107,13 @@ AC_DEFUN([gl_STDIO_H],
gl_WARN_ON_USE_PREPARE([[#include <stdio.h>
]], [dprintf fpurge fseeko ftello getdelim getline gets pclose popen
renameat snprintf tmpfile vdprintf vsnprintf])
+
+ AC_REQUIRE([AC_C_RESTRICT])
+
+ AC_CHECK_DECLS_ONCE([fcloseall])
+ if test $ac_cv_have_decl_fcloseall = no; then
+ HAVE_DECL_FCLOSEALL=0
+ fi
])
AC_DEFUN([gl_STDIO_MODULE_INDICATOR],
@@ -173,7 +180,15 @@ AC_DEFUN([gl_STDIO_H_DEFAULTS],
GNULIB_VPRINTF_POSIX=0; AC_SUBST([GNULIB_VPRINTF_POSIX])
GNULIB_VSNPRINTF=0; AC_SUBST([GNULIB_VSNPRINTF])
GNULIB_VSPRINTF_POSIX=0; AC_SUBST([GNULIB_VSPRINTF_POSIX])
+ dnl Support Microsoft deprecated alias function names by default.
+ GNULIB_MDA_FCLOSEALL=1; AC_SUBST([GNULIB_MDA_FCLOSEALL])
+ GNULIB_MDA_FDOPEN=1; AC_SUBST([GNULIB_MDA_FDOPEN])
+ GNULIB_MDA_FILENO=1; AC_SUBST([GNULIB_MDA_FILENO])
+ GNULIB_MDA_GETW=1; AC_SUBST([GNULIB_MDA_GETW])
+ GNULIB_MDA_PUTW=1; AC_SUBST([GNULIB_MDA_PUTW])
+ GNULIB_MDA_TEMPNAM=1; AC_SUBST([GNULIB_MDA_TEMPNAM])
dnl Assume proper GNU behavior unless another module says otherwise.
+ HAVE_DECL_FCLOSEALL=1; AC_SUBST([HAVE_DECL_FCLOSEALL])
HAVE_DECL_FPURGE=1; AC_SUBST([HAVE_DECL_FPURGE])
HAVE_DECL_FSEEKO=1; AC_SUBST([HAVE_DECL_FSEEKO])
HAVE_DECL_FTELLO=1; AC_SUBST([HAVE_DECL_FTELLO])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strchrnul.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strchrnul.m4
index 93cf112e10..76c9a04966 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strchrnul.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strchrnul.m4
@@ -1,5 +1,5 @@
# strchrnul.m4 serial 9
-dnl Copyright (C) 2003, 2007, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2007, 2009-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/string_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/string_h.m4
index 0c0e3a71af..a4cc5b4378 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/string_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/string_h.m4
@@ -1,11 +1,11 @@
# Configure a GNU-like replacement for <string.h>.
-# Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2021 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 22
+# serial 29
# Written by Paul Eggert.
@@ -18,7 +18,6 @@ AC_DEFUN([gl_HEADER_STRING_H],
AC_DEFUN([gl_HEADER_STRING_H_BODY],
[
- AC_REQUIRE([AC_C_RESTRICT])
AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
gl_NEXT_HEADERS([string.h])
@@ -29,7 +28,9 @@ AC_DEFUN([gl_HEADER_STRING_H_BODY],
]],
[ffsl ffsll memmem mempcpy memrchr rawmemchr stpcpy stpncpy strchrnul
strdup strncat strndup strnlen strpbrk strsep strcasestr strtok_r
- strerror_r strsignal strverscmp])
+ strerror_r strerrorname_np sigabbrev_np sigdescr_np strsignal strverscmp])
+
+ AC_REQUIRE([AC_C_RESTRICT])
])
AC_DEFUN([gl_STRING_MODULE_INDICATOR],
@@ -43,50 +44,55 @@ AC_DEFUN([gl_STRING_MODULE_INDICATOR],
AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
[
- GNULIB_EXPLICIT_BZERO=0; AC_SUBST([GNULIB_EXPLICIT_BZERO])
- GNULIB_FFSL=0; AC_SUBST([GNULIB_FFSL])
- GNULIB_FFSLL=0; AC_SUBST([GNULIB_FFSLL])
- GNULIB_MEMCHR=0; AC_SUBST([GNULIB_MEMCHR])
- GNULIB_MEMMEM=0; AC_SUBST([GNULIB_MEMMEM])
- GNULIB_MEMPCPY=0; AC_SUBST([GNULIB_MEMPCPY])
- GNULIB_MEMRCHR=0; AC_SUBST([GNULIB_MEMRCHR])
- GNULIB_RAWMEMCHR=0; AC_SUBST([GNULIB_RAWMEMCHR])
- GNULIB_STPCPY=0; AC_SUBST([GNULIB_STPCPY])
- GNULIB_STPNCPY=0; AC_SUBST([GNULIB_STPNCPY])
- GNULIB_STRCHRNUL=0; AC_SUBST([GNULIB_STRCHRNUL])
- GNULIB_STRDUP=0; AC_SUBST([GNULIB_STRDUP])
- GNULIB_STRNCAT=0; AC_SUBST([GNULIB_STRNCAT])
- GNULIB_STRNDUP=0; AC_SUBST([GNULIB_STRNDUP])
- GNULIB_STRNLEN=0; AC_SUBST([GNULIB_STRNLEN])
- GNULIB_STRPBRK=0; AC_SUBST([GNULIB_STRPBRK])
- GNULIB_STRSEP=0; AC_SUBST([GNULIB_STRSEP])
- GNULIB_STRSTR=0; AC_SUBST([GNULIB_STRSTR])
- GNULIB_STRCASESTR=0; AC_SUBST([GNULIB_STRCASESTR])
- GNULIB_STRTOK_R=0; AC_SUBST([GNULIB_STRTOK_R])
- GNULIB_MBSLEN=0; AC_SUBST([GNULIB_MBSLEN])
- GNULIB_MBSNLEN=0; AC_SUBST([GNULIB_MBSNLEN])
- GNULIB_MBSCHR=0; AC_SUBST([GNULIB_MBSCHR])
- GNULIB_MBSRCHR=0; AC_SUBST([GNULIB_MBSRCHR])
- GNULIB_MBSSTR=0; AC_SUBST([GNULIB_MBSSTR])
- GNULIB_MBSCASECMP=0; AC_SUBST([GNULIB_MBSCASECMP])
- GNULIB_MBSNCASECMP=0; AC_SUBST([GNULIB_MBSNCASECMP])
- GNULIB_MBSPCASECMP=0; AC_SUBST([GNULIB_MBSPCASECMP])
- GNULIB_MBSCASESTR=0; AC_SUBST([GNULIB_MBSCASESTR])
- GNULIB_MBSCSPN=0; AC_SUBST([GNULIB_MBSCSPN])
- GNULIB_MBSPBRK=0; AC_SUBST([GNULIB_MBSPBRK])
- GNULIB_MBSSPN=0; AC_SUBST([GNULIB_MBSSPN])
- GNULIB_MBSSEP=0; AC_SUBST([GNULIB_MBSSEP])
- GNULIB_MBSTOK_R=0; AC_SUBST([GNULIB_MBSTOK_R])
- GNULIB_STRERROR=0; AC_SUBST([GNULIB_STRERROR])
- GNULIB_STRERROR_R=0; AC_SUBST([GNULIB_STRERROR_R])
- GNULIB_STRSIGNAL=0; AC_SUBST([GNULIB_STRSIGNAL])
- GNULIB_STRVERSCMP=0; AC_SUBST([GNULIB_STRVERSCMP])
- HAVE_MBSLEN=0; AC_SUBST([HAVE_MBSLEN])
+ GNULIB_EXPLICIT_BZERO=0; AC_SUBST([GNULIB_EXPLICIT_BZERO])
+ GNULIB_FFSL=0; AC_SUBST([GNULIB_FFSL])
+ GNULIB_FFSLL=0; AC_SUBST([GNULIB_FFSLL])
+ GNULIB_MEMCHR=0; AC_SUBST([GNULIB_MEMCHR])
+ GNULIB_MEMMEM=0; AC_SUBST([GNULIB_MEMMEM])
+ GNULIB_MEMPCPY=0; AC_SUBST([GNULIB_MEMPCPY])
+ GNULIB_MEMRCHR=0; AC_SUBST([GNULIB_MEMRCHR])
+ GNULIB_RAWMEMCHR=0; AC_SUBST([GNULIB_RAWMEMCHR])
+ GNULIB_STPCPY=0; AC_SUBST([GNULIB_STPCPY])
+ GNULIB_STPNCPY=0; AC_SUBST([GNULIB_STPNCPY])
+ GNULIB_STRCHRNUL=0; AC_SUBST([GNULIB_STRCHRNUL])
+ GNULIB_STRDUP=0; AC_SUBST([GNULIB_STRDUP])
+ GNULIB_STRNCAT=0; AC_SUBST([GNULIB_STRNCAT])
+ GNULIB_STRNDUP=0; AC_SUBST([GNULIB_STRNDUP])
+ GNULIB_STRNLEN=0; AC_SUBST([GNULIB_STRNLEN])
+ GNULIB_STRPBRK=0; AC_SUBST([GNULIB_STRPBRK])
+ GNULIB_STRSEP=0; AC_SUBST([GNULIB_STRSEP])
+ GNULIB_STRSTR=0; AC_SUBST([GNULIB_STRSTR])
+ GNULIB_STRCASESTR=0; AC_SUBST([GNULIB_STRCASESTR])
+ GNULIB_STRTOK_R=0; AC_SUBST([GNULIB_STRTOK_R])
+ GNULIB_MBSLEN=0; AC_SUBST([GNULIB_MBSLEN])
+ GNULIB_MBSNLEN=0; AC_SUBST([GNULIB_MBSNLEN])
+ GNULIB_MBSCHR=0; AC_SUBST([GNULIB_MBSCHR])
+ GNULIB_MBSRCHR=0; AC_SUBST([GNULIB_MBSRCHR])
+ GNULIB_MBSSTR=0; AC_SUBST([GNULIB_MBSSTR])
+ GNULIB_MBSCASECMP=0; AC_SUBST([GNULIB_MBSCASECMP])
+ GNULIB_MBSNCASECMP=0; AC_SUBST([GNULIB_MBSNCASECMP])
+ GNULIB_MBSPCASECMP=0; AC_SUBST([GNULIB_MBSPCASECMP])
+ GNULIB_MBSCASESTR=0; AC_SUBST([GNULIB_MBSCASESTR])
+ GNULIB_MBSCSPN=0; AC_SUBST([GNULIB_MBSCSPN])
+ GNULIB_MBSPBRK=0; AC_SUBST([GNULIB_MBSPBRK])
+ GNULIB_MBSSPN=0; AC_SUBST([GNULIB_MBSSPN])
+ GNULIB_MBSSEP=0; AC_SUBST([GNULIB_MBSSEP])
+ GNULIB_MBSTOK_R=0; AC_SUBST([GNULIB_MBSTOK_R])
+ GNULIB_STRERROR=0; AC_SUBST([GNULIB_STRERROR])
+ GNULIB_STRERROR_R=0; AC_SUBST([GNULIB_STRERROR_R])
+ GNULIB_STRERRORNAME_NP=0; AC_SUBST([GNULIB_STRERRORNAME_NP])
+ GNULIB_SIGABBREV_NP=0; AC_SUBST([GNULIB_SIGABBREV_NP])
+ GNULIB_SIGDESCR_NP=0; AC_SUBST([GNULIB_SIGDESCR_NP])
+ GNULIB_STRSIGNAL=0; AC_SUBST([GNULIB_STRSIGNAL])
+ GNULIB_STRVERSCMP=0; AC_SUBST([GNULIB_STRVERSCMP])
+ HAVE_MBSLEN=0; AC_SUBST([HAVE_MBSLEN])
+ dnl Support Microsoft deprecated alias function names by default.
+ GNULIB_MDA_MEMCCPY=1; AC_SUBST([GNULIB_MDA_MEMCCPY])
+ GNULIB_MDA_STRDUP=1; AC_SUBST([GNULIB_MDA_STRDUP])
dnl Assume proper GNU behavior unless another module says otherwise.
HAVE_EXPLICIT_BZERO=1; AC_SUBST([HAVE_EXPLICIT_BZERO])
HAVE_FFSL=1; AC_SUBST([HAVE_FFSL])
HAVE_FFSLL=1; AC_SUBST([HAVE_FFSLL])
- HAVE_MEMCHR=1; AC_SUBST([HAVE_MEMCHR])
HAVE_DECL_MEMMEM=1; AC_SUBST([HAVE_DECL_MEMMEM])
HAVE_MEMPCPY=1; AC_SUBST([HAVE_MEMPCPY])
HAVE_DECL_MEMRCHR=1; AC_SUBST([HAVE_DECL_MEMRCHR])
@@ -102,8 +108,12 @@ AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
HAVE_STRCASESTR=1; AC_SUBST([HAVE_STRCASESTR])
HAVE_DECL_STRTOK_R=1; AC_SUBST([HAVE_DECL_STRTOK_R])
HAVE_DECL_STRERROR_R=1; AC_SUBST([HAVE_DECL_STRERROR_R])
+ HAVE_STRERRORNAME_NP=1; AC_SUBST([HAVE_STRERRORNAME_NP])
+ HAVE_SIGABBREV_NP=1; AC_SUBST([HAVE_SIGABBREV_NP])
+ HAVE_SIGDESCR_NP=1; AC_SUBST([HAVE_SIGDESCR_NP])
HAVE_DECL_STRSIGNAL=1; AC_SUBST([HAVE_DECL_STRSIGNAL])
HAVE_STRVERSCMP=1; AC_SUBST([HAVE_STRVERSCMP])
+ REPLACE_FFSLL=0; AC_SUBST([REPLACE_FFSLL])
REPLACE_MEMCHR=0; AC_SUBST([REPLACE_MEMCHR])
REPLACE_MEMMEM=0; AC_SUBST([REPLACE_MEMMEM])
REPLACE_STPNCPY=0; AC_SUBST([REPLACE_STPNCPY])
@@ -117,6 +127,7 @@ AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
REPLACE_STRTOK_R=0; AC_SUBST([REPLACE_STRTOK_R])
REPLACE_STRERROR=0; AC_SUBST([REPLACE_STRERROR])
REPLACE_STRERROR_R=0; AC_SUBST([REPLACE_STRERROR_R])
+ REPLACE_STRERRORNAME_NP=0; AC_SUBST([REPLACE_STRERRORNAME_NP])
REPLACE_STRSIGNAL=0; AC_SUBST([REPLACE_STRSIGNAL])
UNDEFINE_STRTOK_R=0; AC_SUBST([UNDEFINE_STRTOK_R])
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strndup.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strndup.m4
index 325af5d13d..f7a6be9482 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strndup.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strndup.m4
@@ -1,5 +1,5 @@
# strndup.m4 serial 22
-dnl Copyright (C) 2002-2003, 2005-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2005-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strnlen.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strnlen.m4
index c283c3ece9..bb9a680fdc 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strnlen.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/strnlen.m4
@@ -1,5 +1,5 @@
# strnlen.m4 serial 13
-dnl Copyright (C) 2002-2003, 2005-2007, 2009-2019 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2005-2007, 2009-2021 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/sys_types_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/sys_types_h.m4
index be0655900d..2172c836d9 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/sys_types_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/sys_types_h.m4
@@ -1,5 +1,5 @@
-# sys_types_h.m4 serial 9
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+# sys_types_h.m4 serial 11
+dnl Copyright (C) 2011-2021 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.
@@ -36,25 +36,23 @@ AC_DEFUN([gl_SYS_TYPES_H_DEFAULTS],
# This works around a buggy version in autoconf <= 2.69.
# See <https://lists.gnu.org/r/autoconf/2016-08/msg00014.html>
+# The 2.70 version isn't quoted properly, so override it too.
-m4_version_prereq([2.70], [], [
-
-# This is taken from the following Autoconf patch:
-# https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=e17a30e987d7ee695fb4294a82d987ec3dc9b974
+m4_version_prereq([2.70.1], [], [
m4_undefine([AC_HEADER_MAJOR])
AC_DEFUN([AC_HEADER_MAJOR],
[AC_CHECK_HEADERS_ONCE([sys/types.h])
AC_CHECK_HEADER([sys/mkdev.h],
- [AC_DEFINE([MAJOR_IN_MKDEV], [1],
- [Define to 1 if `major', `minor', and `makedev' are declared in
- <mkdev.h>.])])
+ [AC_DEFINE([MAJOR_IN_MKDEV], [1],
+ [Define to 1 if `major', `minor', and `makedev' are
+ declared in <mkdev.h>.])])
if test $ac_cv_header_sys_mkdev_h = no; then
AC_CHECK_HEADER([sys/sysmacros.h],
- [AC_DEFINE([MAJOR_IN_SYSMACROS], [1],
- [Define to 1 if `major', `minor', and `makedev' are declared in
- <sysmacros.h>.])])
+ [AC_DEFINE([MAJOR_IN_SYSMACROS], [1],
+ [Define to 1 if `major', `minor', and `makedev'
+ are declared in <sysmacros.h>.])])
fi
-])
+])# AC_HEADER_MAJOR
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasnprintf.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasnprintf.m4
index b763a3da62..483bba969f 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasnprintf.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasnprintf.m4
@@ -1,5 +1,5 @@
-# vasnprintf.m4 serial 36
-dnl Copyright (C) 2002-2004, 2006-2019 Free Software Foundation, Inc.
+# vasnprintf.m4 serial 38
+dnl Copyright (C) 2002-2004, 2006-2021 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.
@@ -32,7 +32,6 @@ AC_DEFUN([gl_REPLACE_VASNPRINTF],
# Prerequisites of lib/printf-args.h, lib/printf-args.c.
AC_DEFUN([gl_PREREQ_PRINTF_ARGS],
[
- AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
AC_REQUIRE([gt_TYPE_WCHAR_T])
AC_REQUIRE([gt_TYPE_WINT_T])
])
@@ -41,7 +40,6 @@ AC_DEFUN([gl_PREREQ_PRINTF_ARGS],
AC_DEFUN([gl_PREREQ_PRINTF_PARSE],
[
AC_REQUIRE([gl_FEATURES_H])
- AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
AC_REQUIRE([gt_TYPE_WCHAR_T])
AC_REQUIRE([gt_TYPE_WINT_T])
AC_REQUIRE([AC_TYPE_SIZE_T])
@@ -56,7 +54,6 @@ AC_DEFUN([gl_PREREQ_PRINTF_PARSE],
AC_DEFUN_ONCE([gl_PREREQ_VASNPRINTF],
[
AC_REQUIRE([AC_FUNC_ALLOCA])
- AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
AC_REQUIRE([gt_TYPE_WCHAR_T])
AC_REQUIRE([gt_TYPE_WINT_T])
AC_CHECK_FUNCS([snprintf strnlen wcslen wcsnlen mbrtowc wcrtomb])
@@ -77,6 +74,16 @@ AC_DEFUN_ONCE([gl_PREREQ_VASNPRINTF],
if the buffer had been large enough.])
;;
esac
+ dnl Additionally, the use of %n can be eliminated by assuming that snprintf
+ dnl always produces NUL-terminated strings (no truncation).
+ AC_REQUIRE([gl_SNPRINTF_TRUNCATION_C99])
+ case "$gl_cv_func_snprintf_truncation_c99" in
+ *yes)
+ AC_DEFINE([HAVE_SNPRINTF_TRUNCATION_C99], [1],
+ [Define if the string produced by the snprintf function is always NUL
+ terminated.])
+ ;;
+ esac
])
# Extra prerequisites of lib/vasnprintf.c for supporting 'long double'
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasprintf.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasprintf.m4
index cd96229cb0..a26de845a8 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasprintf.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/vasprintf.m4
@@ -1,5 +1,5 @@
# vasprintf.m4 serial 6
-dnl Copyright (C) 2002-2003, 2006-2007, 2009-2019 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2006-2007, 2009-2021 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/warn-on-use.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/warn-on-use.m4
index 7ebe2d317a..04edfe85d4 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/warn-on-use.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/warn-on-use.m4
@@ -1,5 +1,5 @@
-# warn-on-use.m4 serial 6
-dnl Copyright (C) 2010-2019 Free Software Foundation, Inc.
+# warn-on-use.m4 serial 9
+dnl Copyright (C) 2010-2021 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.
@@ -30,17 +30,15 @@ AC_DEFUN([gl_WARN_ON_USE_PREPARE],
[AH_TEMPLATE([HAVE_RAW_DECL_]AS_TR_CPP(m4_defn([gl_decl])),
[Define to 1 if ]m4_defn([gl_decl])[ is declared even after
undefining macros.])])dnl
-dnl FIXME: gl_Symbol must be used unquoted until we can assume
-dnl autoconf 2.64 or newer.
for gl_func in m4_flatten([$2]); do
AS_VAR_PUSHDEF([gl_Symbol], [gl_cv_have_raw_decl_$gl_func])dnl
AC_CACHE_CHECK([whether $gl_func is declared without a macro],
- gl_Symbol,
+ [gl_Symbol],
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([$1],
-[@%:@undef $gl_func
- (void) $gl_func;])],
- [AS_VAR_SET(gl_Symbol, [yes])], [AS_VAR_SET(gl_Symbol, [no])])])
- AS_VAR_IF(gl_Symbol, [yes],
+[[#undef $gl_func
+ (void) $gl_func;]])],
+ [AS_VAR_SET([gl_Symbol], [yes])], [AS_VAR_SET([gl_Symbol], [no])])])
+ AS_VAR_IF([gl_Symbol], [yes],
[AC_DEFINE_UNQUOTED(AS_TR_CPP([HAVE_RAW_DECL_$gl_func]), [1])
dnl shortcut - if the raw declaration exists, then set a cache
dnl variable to allow skipping any later AC_CHECK_DECL efforts
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_h.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_h.m4
index cd20e7a0c1..59c55fcda0 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_h.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_h.m4
@@ -1,13 +1,13 @@
dnl A placeholder for ISO C99 <wchar.h>, for platforms that have issues.
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2021 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 Written by Eric Blake.
-# wchar_h.m4 serial 43
+# wchar_h.m4 serial 50
AC_DEFUN([gl_WCHAR_H],
[
@@ -40,23 +40,24 @@ AC_DEFUN([gl_WCHAR_H],
dnl Check for declarations of anything we want to poison if the
dnl corresponding gnulib module is not in use.
gl_WARN_ON_USE_PREPARE([[
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-#if !(defined __GLIBC__ && !defined __UCLIBC__)
-# include <stddef.h>
-# include <stdio.h>
-# include <time.h>
-#endif
-#include <wchar.h>
+ #include <wchar.h>
]],
[btowc wctob mbsinit mbrtowc mbrlen mbsrtowcs mbsnrtowcs wcrtomb
- wcsrtombs wcsnrtombs wcwidth wmemchr wmemcmp wmemcpy wmemmove wmemset
+ wcsrtombs wcsnrtombs wcwidth
+ wmemchr wmemcmp wmemcpy wmemmove wmempcpy wmemset
wcslen wcsnlen wcscpy wcpcpy wcsncpy wcpncpy wcscat wcsncat wcscmp
wcsncmp wcscasecmp wcsncasecmp wcscoll wcsxfrm wcsdup wcschr wcsrchr
wcscspn wcsspn wcspbrk wcsstr wcstok wcswidth wcsftime
])
+
+ AC_REQUIRE([AC_C_RESTRICT])
+
+ AC_CHECK_DECLS([wcsdup], [], [], [[
+ #include <wchar.h>
+ ]])
+ if test $ac_cv_have_decl_wcsdup = no; then
+ HAVE_DECL_WCSDUP=0
+ fi
])
dnl Check whether <wchar.h> is usable at all.
@@ -67,56 +68,49 @@ AC_DEFUN([gl_WCHAR_H_INLINE_OK],
dnl and <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42440>. In summary,
dnl glibc version 2.5 or older, together with gcc version 4.3 or newer and
dnl the option -std=c99 or -std=gnu99, leads to a broken <wchar.h>.
+ AC_REQUIRE([AC_CANONICAL_HOST])
AC_CACHE_CHECK([whether <wchar.h> uses 'inline' correctly],
[gl_cv_header_wchar_h_correct_inline],
[gl_cv_header_wchar_h_correct_inline=yes
- AC_LANG_CONFTEST([
- AC_LANG_SOURCE([[#define wcstod renamed_wcstod
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-#include <stddef.h>
-#include <stdio.h>
-#include <time.h>
-#include <wchar.h>
-extern int zero (void);
-int main () { return zero(); }
-]])])
- dnl Do not rename the object file from conftest.$ac_objext to
- dnl conftest1.$ac_objext, as this will cause the link to fail on
- dnl z/OS when using the XPLINK object format (due to duplicate
- dnl CSECT names). Instead, temporarily redefine $ac_compile so
- dnl that the object file has the latter name from the start.
- save_ac_compile="$ac_compile"
- ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/`
- if echo '#include "conftest.c"' >conftest1.c &&
- AC_TRY_EVAL([ac_compile]); then
- AC_LANG_CONFTEST([
- AC_LANG_SOURCE([[#define wcstod renamed_wcstod
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-#include <stddef.h>
-#include <stdio.h>
-#include <time.h>
-#include <wchar.h>
-int zero (void) { return 0; }
-]])])
- dnl See note above about renaming object files.
- ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/`
- if echo '#include "conftest.c"' >conftest2.c &&
- AC_TRY_EVAL([ac_compile]); then
- if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&AS_MESSAGE_LOG_FD 2>&1; then
- :
- else
- gl_cv_header_wchar_h_correct_inline=no
+ case "$host_os" in
+ *-gnu* | gnu*)
+ AC_LANG_CONFTEST([
+ AC_LANG_SOURCE([[
+ #define wcstod renamed_wcstod
+ #include <wchar.h>
+ extern int zero (void);
+ int main () { return zero(); }
+ ]])])
+ dnl Do not rename the object file from conftest.$ac_objext to
+ dnl conftest1.$ac_objext, as this will cause the link to fail on
+ dnl z/OS when using the XPLINK object format (due to duplicate
+ dnl CSECT names). Instead, temporarily redefine $ac_compile so
+ dnl that the object file has the latter name from the start.
+ save_ac_compile="$ac_compile"
+ ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/`
+ if echo '#include "conftest.c"' >conftest1.c \
+ && AC_TRY_EVAL([ac_compile]); then
+ AC_LANG_CONFTEST([
+ AC_LANG_SOURCE([[
+ #define wcstod renamed_wcstod
+ #include <wchar.h>
+ int zero (void) { return 0; }
+ ]])])
+ dnl See note above about renaming object files.
+ ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/`
+ if echo '#include "conftest.c"' >conftest2.c \
+ && AC_TRY_EVAL([ac_compile]); then
+ if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&AS_MESSAGE_LOG_FD 2>&1; then
+ :
+ else
+ gl_cv_header_wchar_h_correct_inline=no
+ fi
+ fi
fi
- fi
- fi
- ac_compile="$save_ac_compile"
- rm -f conftest[12].c conftest[12].$ac_objext conftest$ac_exeext
+ ac_compile="$save_ac_compile"
+ rm -f conftest[12].c conftest[12].$ac_objext conftest$ac_exeext
+ ;;
+ esac
])
if test $gl_cv_header_wchar_h_correct_inline = no; then
AC_MSG_ERROR([<wchar.h> cannot be used with this compiler ($CC $CFLAGS $CPPFLAGS).
@@ -157,6 +151,7 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
GNULIB_WMEMCMP=0; AC_SUBST([GNULIB_WMEMCMP])
GNULIB_WMEMCPY=0; AC_SUBST([GNULIB_WMEMCPY])
GNULIB_WMEMMOVE=0; AC_SUBST([GNULIB_WMEMMOVE])
+ GNULIB_WMEMPCPY=0; AC_SUBST([GNULIB_WMEMPCPY])
GNULIB_WMEMSET=0; AC_SUBST([GNULIB_WMEMSET])
GNULIB_WCSLEN=0; AC_SUBST([GNULIB_WCSLEN])
GNULIB_WCSNLEN=0; AC_SUBST([GNULIB_WCSNLEN])
@@ -182,6 +177,8 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
GNULIB_WCSTOK=0; AC_SUBST([GNULIB_WCSTOK])
GNULIB_WCSWIDTH=0; AC_SUBST([GNULIB_WCSWIDTH])
GNULIB_WCSFTIME=0; AC_SUBST([GNULIB_WCSFTIME])
+ dnl Support Microsoft deprecated alias function names by default.
+ GNULIB_MDA_WCSDUP=1; AC_SUBST([GNULIB_MDA_WCSDUP])
dnl Assume proper GNU behavior unless another module says otherwise.
HAVE_BTOWC=1; AC_SUBST([HAVE_BTOWC])
HAVE_MBSINIT=1; AC_SUBST([HAVE_MBSINIT])
@@ -196,6 +193,7 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
HAVE_WMEMCMP=1; AC_SUBST([HAVE_WMEMCMP])
HAVE_WMEMCPY=1; AC_SUBST([HAVE_WMEMCPY])
HAVE_WMEMMOVE=1; AC_SUBST([HAVE_WMEMMOVE])
+ HAVE_WMEMPCPY=1; AC_SUBST([HAVE_WMEMPCPY])
HAVE_WMEMSET=1; AC_SUBST([HAVE_WMEMSET])
HAVE_WCSLEN=1; AC_SUBST([HAVE_WCSLEN])
HAVE_WCSNLEN=1; AC_SUBST([HAVE_WCSNLEN])
@@ -222,6 +220,7 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
HAVE_WCSWIDTH=1; AC_SUBST([HAVE_WCSWIDTH])
HAVE_WCSFTIME=1; AC_SUBST([HAVE_WCSFTIME])
HAVE_DECL_WCTOB=1; AC_SUBST([HAVE_DECL_WCTOB])
+ HAVE_DECL_WCSDUP=1; AC_SUBST([HAVE_DECL_WCSDUP])
HAVE_DECL_WCWIDTH=1; AC_SUBST([HAVE_DECL_WCWIDTH])
REPLACE_MBSTATE_T=0; AC_SUBST([REPLACE_MBSTATE_T])
REPLACE_BTOWC=0; AC_SUBST([REPLACE_BTOWC])
@@ -237,4 +236,5 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
REPLACE_WCWIDTH=0; AC_SUBST([REPLACE_WCWIDTH])
REPLACE_WCSWIDTH=0; AC_SUBST([REPLACE_WCSWIDTH])
REPLACE_WCSFTIME=0; AC_SUBST([REPLACE_WCSFTIME])
+ REPLACE_WCSTOK=0; AC_SUBST([REPLACE_WCSTOK])
])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_t.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_t.m4
index 5db5815209..34db10e5cc 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_t.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wchar_t.m4
@@ -1,5 +1,5 @@
# wchar_t.m4 serial 4 (gettext-0.18.2)
-dnl Copyright (C) 2002-2003, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2008-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wint_t.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wint_t.m4
index 61e8a23d27..2fc7467f42 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wint_t.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/wint_t.m4
@@ -1,5 +1,5 @@
-# wint_t.m4 serial 7
-dnl Copyright (C) 2003, 2007-2019 Free Software Foundation, Inc.
+# wint_t.m4 serial 10
+dnl Copyright (C) 2003, 2007-2021 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.
@@ -14,15 +14,7 @@ AC_DEFUN([gt_TYPE_WINT_T],
AC_CACHE_CHECK([for wint_t], [gt_cv_c_wint_t],
[AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
- [[
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be included
- before <wchar.h>. */
-#include <stddef.h>
-#include <stdio.h>
-#include <time.h>
-#include <wchar.h>
+ [[#include <wchar.h>
wint_t foo = (wchar_t)'\0';]],
[[]])],
[gt_cv_c_wint_t=yes],
@@ -32,25 +24,16 @@ AC_DEFUN([gt_TYPE_WINT_T],
dnl Determine whether gnulib's <wchar.h> or <wctype.h> would, if present,
dnl override 'wint_t'.
- AC_CACHE_CHECK([whether wint_t is too small],
- [gl_cv_type_wint_t_too_small],
+ AC_CACHE_CHECK([whether wint_t is large enough],
+ [gl_cv_type_wint_t_large_enough],
[AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[
-/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
- <wchar.h>.
- BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
- included before <wchar.h>. */
-#if !(defined __GLIBC__ && !defined __UCLIBC__)
-# include <stddef.h>
-# include <stdio.h>
-# include <time.h>
-#endif
-#include <wchar.h>
+ [AC_LANG_PROGRAM(
+ [[#include <wchar.h>
int verify[sizeof (wint_t) < sizeof (int) ? -1 : 1];
- ]])],
- [gl_cv_type_wint_t_too_small=no],
- [gl_cv_type_wint_t_too_small=yes])])
- if test $gl_cv_type_wint_t_too_small = yes; then
+ ]])],
+ [gl_cv_type_wint_t_large_enough=yes],
+ [gl_cv_type_wint_t_large_enough=no])])
+ if test $gl_cv_type_wint_t_large_enough = no; then
GNULIB_OVERRIDES_WINT_T=1
else
GNULIB_OVERRIDES_WINT_T=0
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/xsize.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/xsize.m4
index f2898ba1a7..64e8a4f45a 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/xsize.m4
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/xsize.m4
@@ -1,5 +1,5 @@
# xsize.m4 serial 5
-dnl Copyright (C) 2003-2004, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2003-2004, 2008-2021 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.
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/zzgnulib.m4 b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/zzgnulib.m4
new file mode 100644
index 0000000000..b9533847cb
--- /dev/null
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/gnulib/m4/zzgnulib.m4
@@ -0,0 +1,23 @@
+# zzgnulib.m4 serial 1
+dnl Copyright (C) 2020-2021 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 This file must be named something that sorts after all other
+dnl package- or gnulib-provided .m4 files - at least for those packages
+dnl that redefine AC_PROG_CC.
+
+dnl Redefine AC_PROG_CC so that it ends with invocations of gl_COMPILER_CLANG
+dnl and gl_COMPILER_PREPARE_CHECK_DECL.
+m4_define([AC_PROG_CC],
+ m4_defn([AC_PROG_CC])[
+gl_COMPILER_CLANG
+gl_COMPILER_PREPARE_CHECK_DECL
+])
+
+# gl_ZZGNULIB
+# -----------
+# Witness macro that this file has been included. Needed to force
+# Automake to include this file after all other gnulib .m4 files.
+AC_DEFUN([gl_ZZGNULIB])
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parser-5556.pm b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parser-5556.pm
deleted file mode 100644
index 5b14993722..0000000000
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parser-5556.pm
+++ /dev/null
@@ -1,7078 +0,0 @@
-# Parser.pm: parse texinfo code into a tree.
-#
-# Copyright 2010, 2011, 2012 Free Software Foundation, Inc.
-#
-# 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
-# the Free Software Foundation; either version 3 of the License,
-# or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-# Original author: Patrice Dumas <pertusus@free.fr>
-# Parts (also from Patrice Dumas) come from texi2html.pl or texi2html.init.
-
-# The organization of the file is the following:
-# module definitions.
-# default parser state. With explanation of the internal structures.
-# initializations, determination of command types.
-# user visible subroutines.
-# internal subroutines, doing the parsing.
-
-package Texinfo::Parser;
-
-# We need the unicode stuff.
-use 5.006;
-use strict;
-
-# debug
-use Carp qw(cluck);
-
-use Data::Dumper;
-
-# to detect if an encoding may be used to open the files
-use Encode;
-
-# for fileparse
-use File::Basename;
-
-#use POSIX qw(setlocale LC_ALL LC_CTYPE LC_MESSAGES);
-
-# commands definitions
-use Texinfo::Common;
-# Error reporting and counting, translation of strings.
-use Texinfo::Report;
-# encoding_alias
-use Texinfo::Encoding;
-
-# to expand file names in @include and similar @-commands
-use Texinfo::Convert::Text;
-# to normalize node name, anchor, float arg, listoffloats and first *ref argument.
-use Texinfo::Convert::NodeNameNormalization;
-# in error messages, and for macro body expansion
-use Texinfo::Convert::Texinfo;
-
-require Exporter;
-use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
-@ISA = qw(Exporter Texinfo::Report);
-
-# Items to export into callers namespace by default. Note: do not export
-# names by default without a very good reason. Use EXPORT_OK instead.
-# Do not simply export all your public functions/methods/constants.
-
-# This allows declaration use Texinfo::Parser ':all';
-# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
-# will save memory.
-%EXPORT_TAGS = ( 'all' => [ qw(
- parser
- parse_texi_text
- parse_texi_line
- parse_texi_file
- indices_information
- floats_information
- internal_references_information
- labels_information
- global_commands_information
- global_informations
-) ] );
-
-@EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
-
-@EXPORT = qw(
-);
-
-$VERSION = '6.7';
-
-sub N__($)
-{
- return $_[0];
-}
-
-#sub __($$)
-#{
-# my $self = shift;
-# return &{$self->{'gettext'}}(@_);
-#}
-
-# Customization variables obeyed by the Parser, and the default values.
-our %default_customization_values = (
- 'TEST' => 0,
- 'DEBUG' => 0, # if >= 10, tree is printed in texi2any.pl after parsing.
- # If >= 100 tree is printed every line.
- 'SHOW_MENU' => 1, # if false no menu error related.
- 'INLINE_INSERTCOPYING' => 0,
- 'IGNORE_BEFORE_SETFILENAME' => 1,
- 'MACRO_BODY_IGNORES_LEADING_SPACE' => 0,
- 'IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME' => 1,
- 'INPUT_PERL_ENCODING' => undef, # input perl encoding name, set from
- # @documentencoding in the default case
- 'INPUT_ENCODING_NAME' => undef, # encoding name normalized as preferred
- # IANA, set from @documentencoding in the default
- # case
- 'CPP_LINE_DIRECTIVES' => 1, # handle cpp like synchronization lines
- 'MAX_MACRO_CALL_NESTING' => 100000, # max number of nested macro calls
- 'GLOBAL_COMMANDS' => [], # list of commands registered
- # This is not used directly, but passed to Convert::Text through
- # Texinfo::Common::_convert_text_options
- 'ENABLE_ENCODING' => 1, # output accented and special characters
- # based on @documentencoding
- # following are used in Texinfo::Structuring
- 'TOP_NODE_UP' => '(dir)', # up node of Top node
- 'SIMPLE_MENU' => 0, # not used in the parser but in structuring
- 'USE_UP_NODE_FOR_ELEMENT_UP' => 0, # Use node up for Up if there is no
- # section up.
-);
-
-my %parser_default_configuration = (%Texinfo::Common::default_parser_state_configuration,
- %default_customization_values);
-
-# the other possible keys for the parser state are:
-#
-# expanded_formats_hash each key comes from expanded_formats value is 1
-# index_names a structure holding the link between index
-# names, prefixes, merged indices,
-# initial value is %index_names in Texinfo::Common.
-# context_stack stack of the contexts, more recent on top.
-# 'line' is added when on a line or
-# block @-command line,
-# 'def' is added instead if on a definition line.
-# 'preformatted' is added in block commands
-# where there is no paragraphs and spaces are kept
-# (format, example, display...)
-# 'rawpreformatted' is added in raw block commands
-# (html, xml, docbook...)
-# 'menu' is added in menu commands
-# 'math', 'footnote', 'caption', 'shortcaption',
-# 'inlineraw' are also added when in those commands
-# conditionals_stack a stack of conditional commands that are expanded.
-# raw_formats_stack a stack of 1 or 0 for raw formats (@html... or
-# @inlineraw), is 0 if within a raw format that is
-# not expanded.
-# macro_stack stack of macros being expanded (more recent first)
-# definfoenclose an hash, key is the command name, value is an array
-# reference with 2 values, beginning and ending.
-# input a stack, with last at bottom. Holds the opened files
-# or text. Pending macro expansion or text expansion
-# is also in that structure.
-# misc_commands the same than %misc_commands in Texinfo::Common,
-# but with index entry commands dynamically added
-# close_paragraph_commands same than %close_paragraph_commands, but with
-# insertcopying removed if INLINE_INSERTCOPYING
-# close_preformatted_commands same than %close_preformatted_commands, but with
-# insertcopying removed if INLINE_INSERTCOPYING
-# no_paragraph_commands the same than %default_no_paragraph_commands
-# below, with index
-# entry commands dynamically added
-# simple_text_commands the same than %simple_text_commands below, but
-# with index entry commands dynamically added
-# current_node last seen node.
-# current_section last seen section.
-# nodes list of nodes.
-# command_index_prefix associate a command name to an index prefix.
-# prefix_to_index_name associate an index prefix to the index name.
-# floats key is the normalized float type, value is an array
-# reference holding all the floats.
-# internal_references an array holding all the internal references.
-
-# set points to the value set when initializing, for
-# configuration items that are not to be overriden
-# by @-commands. For example documentlanguage.
-
-# A line information is an hash reference with the keys:
-# line_nr the line number
-# file_name the file name
-# macro if in a macro expansion, the name of the macro
-#
-# A text fragment information is a 2 element array reference, the first is the
-# text fragment, the second is the line information.
-
-# The input structure is an array, the first is the most recently included
-# file. The last element may be a file if the parsing is done on a file,
-# with parse_texi_file, or simply pending text, if called as parse_texi_text.
-# each element of the array is a hash reference. The key are:
-# pending an array reference containing pending text fragments, either the
-# text given as parse_texi_text or macro expansion text.
-# name file name
-# line_nr current line number in the file
-# fh filehandle for the file
-
-# content is not copied but reference is copied when duplicating a parser.
-my %tree_informations;
-foreach my $tree_information ('values', 'macros', 'explained_commands', 'labels') {
- $tree_informations{$tree_information} = 1;
-}
-
-# The commands in initialization_overrides are not set in the document if
-# set at the parser initialization.
-my %initialization_overrides = (
- 'INPUT_ENCODING_NAME' => 1,
- 'documentlanguage' => 1,
-);
-
-my %no_brace_commands = %Texinfo::Common::no_brace_commands;
-my %misc_commands = %Texinfo::Common::misc_commands;
-my %brace_commands = %Texinfo::Common::brace_commands;
-my %accent_commands = %Texinfo::Common::accent_commands;
-my %context_brace_commands = %Texinfo::Common::context_brace_commands;
-my %block_commands = %Texinfo::Common::block_commands;
-my %block_item_commands = %Texinfo::Common::block_item_commands;
-my %close_paragraph_commands = %Texinfo::Common::close_paragraph_commands;
-my %def_map = %Texinfo::Common::def_map;
-my %def_commands = %Texinfo::Common::def_commands;
-my %def_aliases = %Texinfo::Common::def_aliases;
-my %menu_commands = %Texinfo::Common::menu_commands;
-my %preformatted_commands = %Texinfo::Common::preformatted_commands;
-my %format_raw_commands = %Texinfo::Common::format_raw_commands;
-my %item_container_commands = %Texinfo::Common::item_container_commands;
-my %item_line_commands = %Texinfo::Common::item_line_commands;
-my %deprecated_commands = %Texinfo::Common::deprecated_commands;
-my %root_commands = %Texinfo::Common::root_commands;
-my %sectioning_commands = %Texinfo::Common::sectioning_commands;
-my %command_index_prefix = %Texinfo::Common::command_index_prefix;
-my %command_structuring_level = %Texinfo::Common::command_structuring_level;
-my %ref_commands = %Texinfo::Common::ref_commands;
-my %region_commands = %Texinfo::Common::region_commands;
-my %code_style_commands = %Texinfo::Common::code_style_commands;
-my %in_heading_commands = %Texinfo::Common::in_heading_commands;
-my %explained_commands = %Texinfo::Common::explained_commands;
-my %inline_format_commands = %Texinfo::Common::inline_format_commands;
-my %inline_commands = %Texinfo::Common::inline_commands;
-my %inline_conditional_commands = %Texinfo::Common::inline_conditional_commands;
-my %all_commands = %Texinfo::Common::all_commands;
-
-# equivalence between a @set flag and an @@-command
-my %set_flag_command_equivalent = (
- 'txicodequoteundirected' => 'codequoteundirected',
- 'txicodequotebacktick' => 'codequotebacktick',
-# 'txideftypefnnl' => 'deftypefnnewline',
-);
-
-
-# keep line information for those commands.
-my %keep_line_nr_brace_commands = %context_brace_commands;
-foreach my $keep_line_nr_brace_command ('titlefont', 'anchor') {
- $keep_line_nr_brace_commands{$keep_line_nr_brace_command} = 1;
-}
-foreach my $brace_command (keys (%brace_commands)) {
- $keep_line_nr_brace_commands{$brace_command} = 1
- if ($brace_commands{$brace_command} > 1);
-}
-
-my %type_with_paragraph;
-foreach my $type ('before_item', 'text_root', 'document_root',
- 'brace_command_context') {
- $type_with_paragraph{$type} = 1;
-}
-
-my %command_ignore_space_after;
-foreach my $command ('anchor', 'hyphenation', 'caption', 'shortcaption') {
- $command_ignore_space_after{$command} = 1;
-}
-
-my %global_multiple_commands;
-foreach my $global_multiple_command (
- 'author', 'footnote', 'hyphenation', 'insertcopying', 'printindex',
- 'subtitle','titlefont', 'listoffloats', 'detailmenu', 'part',
- keys(%Texinfo::Common::document_settable_at_commands), ) {
- $global_multiple_commands{$global_multiple_command} = 1;
-}
-
-my %global_unique_commands;
-foreach my $global_unique_command (
- 'copying', 'settitle',
- 'shorttitlepage', 'title', 'titlepage', 'top',
- keys(%Texinfo::Common::document_settable_unique_at_commands), ) {
- $global_unique_commands{$global_unique_command} = 1;
-}
-
-my %index_names = %Texinfo::Common::index_names;
-
-# index names that cannot be set by the user.
-my %forbidden_index_name = ();
-
-foreach my $name(keys(%index_names)) {
- foreach my $prefix (@{$index_names{$name}->{'prefix'}}) {
- $forbidden_index_name{$prefix} = 1;
- }
-}
-
-foreach my $other_forbidden_index_name ('info','ps','pdf','htm',
- 'html', 'log','aux','dvi','texi','txi','texinfo','tex','bib') {
- $forbidden_index_name{$other_forbidden_index_name} = 1;
-}
-
-# @-commands that do not start a paragraph
-my %default_no_paragraph_commands;
-# @-commands that should be at a line beginning
-my %begin_line_commands;
-
-foreach my $command ('node', 'end') {
- $begin_line_commands{$command} = $command;
-}
-
-foreach my $no_paragraph_command ('titlefont', 'caption', 'shortcaption',
- 'image', '*', 'hyphenation', 'anchor', 'errormsg') {
- $default_no_paragraph_commands{$no_paragraph_command} = 1;
-}
-
-foreach my $no_paragraph_command (keys(%misc_commands)) {
- $default_no_paragraph_commands{$no_paragraph_command} = 1;
- $begin_line_commands{$no_paragraph_command} = 1;
-}
-
-# verbatiminclude is not said to begin at the beginning of the line
-# in the manual
-foreach my $misc_not_begin_line ('comment', 'c', 'sp', 'refill',
- 'noindent', 'indent', 'columnfractions',
- 'tab', 'item', 'headitem', 'verbatiminclude',
- 'set', 'clear',
- 'vskip', keys(%in_heading_commands)) {
- delete $begin_line_commands{$misc_not_begin_line};
-}
-
-my %block_arg_commands;
-foreach my $block_command (keys(%block_commands)) {
- $begin_line_commands{$block_command} = 1;
- $default_no_paragraph_commands{$block_command} = 1;
- $block_arg_commands{$block_command} = 1
- if ($block_commands{$block_command} ne 'raw');
-# and ! $format_raw_commands{$block_command});
-}
-
-my %close_preformatted_commands = %close_paragraph_commands;
-foreach my $no_close_preformatted('sp') {
- delete $close_preformatted_commands{$no_close_preformatted};
-}
-# FIXME to close preformated or not to close?
-#foreach my $format_raw_command(keys(%format_raw_commands)) {
-# $close_preformatted_commands{$format_raw_command} = 1;
-#}
-
-# commands that may appear in accents
-my %in_accent_commands = %accent_commands;
-foreach my $brace_command(keys(%brace_commands)) {
- $in_accent_commands{$brace_command} = 1 if (!$brace_commands{$brace_command});
-}
-foreach my $no_brace_command (keys(%no_brace_commands)) {
- $in_accent_commands{$no_brace_command} = 1;
-}
-$in_accent_commands{'c'} = 1;
-$in_accent_commands{'comment'} = 1;
-
-# commands that may appear in texts arguments
-my %in_full_text_commands;
-foreach my $command (keys(%brace_commands), keys(%no_brace_commands)) {
- $in_full_text_commands{$command} = 1;
-}
-foreach my $misc_command_in_full_text('c', 'comment', 'refill', 'noindent',
- 'indent', 'columnfractions', 'set', 'clear', 'end') {
- $in_full_text_commands{$misc_command_in_full_text} = 1;
-}
-
-foreach my $out_format (keys(%format_raw_commands)) {
- $in_full_text_commands{$out_format} = 1;
-}
-delete $in_full_text_commands{'caption'};
-delete $in_full_text_commands{'shortcaption'};
-foreach my $block_command (keys(%block_commands)) {
- $in_full_text_commands{$block_command} = 1
- if ($block_commands{$block_command} eq 'conditional');
-}
-
-# commands that may happen on lines where everything is
-# permitted
-my %in_full_line_commands = %in_full_text_commands;
-foreach my $not_in_full_line_commands('noindent', 'indent') {
- delete $in_full_line_commands{$not_in_full_line_commands};
-}
-
-# commands that may happen on sectioning commands
-my %in_full_line_commands_no_refs = %in_full_line_commands;
-foreach my $not_in_full_line_commands_no_refs ('titlefont',
- 'anchor', 'footnote', 'verb') {
- delete $in_full_line_commands_no_refs{$not_in_full_line_commands_no_refs};
-}
-
-# commands that may happen in simple text arguments
-my %in_simple_text_commands = %in_full_line_commands_no_refs;
-foreach my $not_in_simple_text_command('xref', 'ref', 'pxref', 'inforef') {
- delete $in_simple_text_commands{$not_in_simple_text_command};
-}
-
-# commands that only accept simple text as argument in any context.
-my %simple_text_commands;
-foreach my $misc_command(keys(%misc_commands)) {
- if ($misc_commands{$misc_command} =~ /^\d+$/
- or ($misc_commands{$misc_command} eq 'line'
- and !($sectioning_commands{$misc_command}
- or $def_commands{$misc_command}))
- or $misc_commands{$misc_command} eq 'text') {
- $simple_text_commands{$misc_command} = 1;
- }
-}
-
-my %full_line_commands_no_refs = (%sectioning_commands,
- %def_commands);
-
-delete $simple_text_commands{'center'};
-delete $simple_text_commands{'exdent'};
-foreach my $command ('titlefont', 'anchor', 'xref','ref','pxref',
- 'inforef', 'shortcaption', 'math', 'indicateurl',
- 'email', 'uref', 'url', 'image', 'abbr', 'acronym',
- 'dmn', 'ctrl', 'errormsg') {
- $simple_text_commands{$command} = 1;
-}
-
-# commands that accept full text, but no block or top-level commands
-my %full_text_commands;
-foreach my $brace_command (keys (%brace_commands)) {
- if ($brace_commands{$brace_command} == 1
- and !$simple_text_commands{$brace_command}
- and !$context_brace_commands{$brace_command}
- and !$accent_commands{$brace_command}) {
- $full_text_commands{$brace_command} = 1;
- }
-}
-
-# commands that accept almost the same than in full text, except
-# what do not make sense on a line.
-my %full_line_commands;
-$full_line_commands{'center'} = 1;
-$full_line_commands{'exdent'} = 1;
-$full_line_commands{'item'} = 1;
-$full_line_commands{'itemx'} = 1;
-
-# Fill the valid nestings hash. All commands not in that hash
-# are considered to accept anything within. There are additional
-# context tests, to make sure, for instance that we are testing
-# @-commands on the block, misc or node @-command line and not
-# in the content.
-# index entry commands are dynamically set as in_simple_text_commands
-my %default_valid_nestings;
-
-foreach my $command (keys(%accent_commands)) {
- $default_valid_nestings{$command} = \%in_accent_commands;
-}
-foreach my $command (keys(%full_text_commands)) {
- $default_valid_nestings{$command} = \%in_full_text_commands;
-}
-foreach my $command (keys(%simple_text_commands)) {
- $default_valid_nestings{$command} = \%in_simple_text_commands;
-}
-foreach my $command (keys(%full_line_commands)) {
- $default_valid_nestings{$command} = \%in_full_line_commands;
-}
-foreach my $command (keys(%full_line_commands_no_refs)) {
- $default_valid_nestings{$command} = \%in_full_line_commands_no_refs;
-}
-# Only for block commands with line arguments
-foreach my $command (keys(%block_commands)) {
- if ($block_commands{$command} and $block_commands{$command} ne 'raw'
- and $block_commands{$command} ne 'conditional'
- and !$def_commands{$command}) {
- $default_valid_nestings{$command} = \%in_simple_text_commands;
- }
-}
-
-
-my @preformatted_contexts = ('preformatted', 'rawpreformatted');
-my %preformatted_contexts;
-foreach my $preformatted_context (@preformatted_contexts) {
- $preformatted_contexts{$preformatted_context} = 1;
-}
-
-# contexts on the context_stack stack where empty line don't trigger
-# paragraph
-my %no_paragraph_contexts;
-foreach my $no_paragraph_context ('math', 'menu', @preformatted_contexts,
- 'def', 'inlineraw') {
- $no_paragraph_contexts{$no_paragraph_context} = 1;
-};
-
-
-
-# Format a bug message
-sub _bug_message($$;$$)
-{
- my $self = shift;
- my $message = shift;
- my $line_number = shift;
- my $current = shift;
-
- my $line_message = '';
- if ($line_number) {
- my $file = $line_number->{'file_name'};
- $line_message
- = "last location: $line_number->{'file_name'}:$line_number->{'line_nr'}";
- if ($line_number->{'macro'} ne '') {
- $line_message .= " (possibly involving $line_number->{'macro'})";
- }
- $line_message .= "\n";
- }
- my $message_context_stack = "context_stack: (@{$self->{'context_stack'}})\n";
- my $current_element_message = '';
- if ($current) {
- $current_element_message = "current: ". _print_current($current);
- }
- warn "You found a bug: $message\n\n".
- "Additional informations:\n".
- $line_message.$message_context_stack.$current_element_message;
-
-}
-
-# simple deep copy of a structure
-sub _deep_copy($)
-{
- my $struct = shift;
- my $string = Data::Dumper->Dump([$struct], ['struct']);
- eval $string;
- return $struct;
-}
-
-# return true if effect of global commands should be ignored.
-sub _ignore_global_commands($)
-{
- my $self = shift;
- return !$self->{'expanded_formats_stack'}->[-1];
-}
-
-# enter all the commands associated with an index name using the prefix
-# list
-sub _register_index_commands($$)
-{
- my $self = shift;
- my $index_name = shift;
- if (!$self->{'index_names'}->{$index_name}->{'prefix'}) {
- $self->{'index_names'}->{$index_name}->{'prefix'} = [$index_name];
- }
- if (!exists($self->{'index_names'}->{$index_name}->{'name'})) {
- $self->{'index_names'}->{$index_name}->{'name'} = $index_name;
- }
- if (!exists($self->{'index_names'}->{$index_name}->{'contained_indices'})) {
- $self->{'index_names'}->{$index_name}->{'contained_indices'}->{$index_name} = 1;
- }
- foreach my $prefix (@{$self->{'index_names'}->{$index_name}->{'prefix'}}) {
- $self->{'misc_commands'}->{$prefix.'index'} = 'line';
- $self->{'no_paragraph_commands'}->{$prefix.'index'} = 1;
- $self->{'valid_nestings'}->{$prefix.'index'} = \%in_simple_text_commands;
- $self->{'command_index_prefix'}->{$prefix.'index'} = $prefix;
- $self->{'prefix_to_index_name'}->{$prefix} = $index_name;
- }
-}
-
-# initialization entry point. Set up a parser.
-# The last argument, optional, is a hash provided by the user to change
-# the default values for what is present in %parser_default_configuration.
-# The exact arguments of the function depend on how it was called,
-# in a object oriented way or not.
-sub parser(;$$)
-{
- my $class = shift;
- my $conf;
-
- my $parser = _deep_copy(\%parser_default_configuration);
- # _deep_copy doesn't handle subs
- $parser->{'gettext'} = $parser_default_configuration{'gettext'};
- $parser->{'pgettext'} = $parser_default_configuration{'pgettext'};
-
- # called not object-oriented
- if (ref($class) eq 'HASH') {
- #print STDERR "Not oo\n"
- $conf = $class;
- bless $parser;
-
- } elsif (ref($class)) {
- # called on an existing parser, interpreted as a duplication
- my $old_parser = $class;
- $class = ref($class);
- foreach my $key (keys(%parser_default_configuration)) {
- if ($tree_informations{$key}) {
- if (defined($old_parser->{$key})) {
- foreach my $info_key (keys(%{$old_parser->{$key}})) {
- $parser->{$key}->{$info_key}
- = $old_parser->{$key}->{$info_key};
- }
- }
- } else {
- $parser->{$key} = _deep_copy($old_parser->{$key});
- }
- }
- #$parser = _deep_copy($old_parser);
- $parser->{'gettext'} = $old_parser->{'gettext'};
- $parser->{'pgettext'} = $old_parser->{'pgettext'};
- bless $parser, $class;
- $conf = shift;
-
- } elsif (defined($class)) {
- bless $parser, $class;
- $conf = shift;
- } else {
- bless $parser;
- $conf = shift;
- }
-
- if (defined($conf)) {
- foreach my $key (keys(%$conf)) {
- if (exists($parser_default_configuration{$key})) {
- if (ref($conf->{$key}) ne 'CODE' and $key ne 'values') {
- $parser->{$key} = _deep_copy($conf->{$key});
- } else {
- $parser->{$key} = $conf->{$key};
- }
- if ($initialization_overrides{$key}) {
- $parser->{'set'}->{$key} = $parser->{$key};
- }
- } else {
- warn "$key not a possible customization in Texinfo::Parser::parser\n";
- }
- }
- }
- #foreach my $value (keys %{$parser->{'values'}}) {
- # print STDERR " -> $value $parser->{'values'}->{$value}\n";
- #}
- # Now initialize command hash that are dynamically modified, notably
- # those for index commands, and lists, based on defaults and user provided.
- $parser->{'misc_commands'} = _deep_copy (\%misc_commands);
- $parser->{'valid_nestings'} = _deep_copy (\%default_valid_nestings);
- $parser->{'no_paragraph_commands'} = { %default_no_paragraph_commands };
- $parser->{'index_names'} = _deep_copy (\%index_names);
- $parser->{'command_index_prefix'} = {%command_index_prefix};
- $parser->{'close_paragraph_commands'} = {%close_paragraph_commands};
- $parser->{'close_preformatted_commands'} = {%close_preformatted_commands};
- if ($parser->{'INLINE_INSERTCOPYING'}) {
- delete $parser->{'close_paragraph_commands'}->{'insercopying'};
- delete $parser->{'close_preformatted_commands'}->{'insercopying'};
- }
- # a hash is simply concatenated. It should be like %index_names.
- if (ref($parser->{'indices'}) eq 'HASH') {
- %{$parser->{'index_names'}} = (%{$parser->{'index_names'}},
- %{$parser->{'indices'}});
- } else { # an array holds index names defined with @defindex
- foreach my $name (@{$parser->{'indices'}}) {
- $parser->{'index_names'}->{$name} = {'in_code' => 0};
- }
- }
- foreach my $index (keys (%{$parser->{'index_names'}})) {
- $parser->_register_index_commands($index);
- }
- if ($parser->{'merged_indices'}) {
- foreach my $index_from (keys (%{$parser->{'merged_indices'}})) {
- my $index_to = $parser->{'merged_indices'}->{$index_from};
- if (defined($parser->{'index_names'}->{$index_from})
- and defined($parser->{'index_names'}->{$index_to})) {
- $parser->{'index_names'}->{$index_from}->{'merged_in'} = $index_to;
- $parser->{'index_names'}->{$index_to}->{'contained_indices'}->{$index_from} = 1;
- }
- }
- }
- foreach my $explained_command(keys(%explained_commands)) {
- if (!defined($parser->{'explained_commands'}->{$explained_command})) {
- $parser->{'explained_commands'}->{$explained_command} = {};
- }
- }
- $parser->{'context_stack'} = [ $parser->{'context'} ];
- $parser->{'regions_stack'} = [];
- $parser->{'macro_stack'} = [];
- $parser->{'conditionals_stack'} = [];
- $parser->{'expanded_formats_stack'} = [1];
-
- # turn the array to a hash for speed. Not sure it really matters for such
- # a small array.
- foreach my $expanded_format(@{$parser->{'expanded_formats'}}) {
- $parser->{'expanded_formats_hash'}->{$expanded_format} = 1;
- }
-
- %{$parser->{'global_commands'}} = %global_multiple_commands;
-
- foreach my $global_command (@{$parser->{'GLOBAL_COMMANDS'}}) {
- $parser->{'global_commands'}->{$global_command} = 1;
- }
-
- $parser->Texinfo::Report::new;
-
- return $parser;
-}
-
-sub get_conf($$)
-{
- my $self = shift;
- my $var = shift;
- return $self->{$var};
-}
-
-# split a scalar text in an array lines.
-sub _text_to_lines($)
-{
- my $text = shift;
- die if (!defined($text));
- my $had_final_end_line = chomp($text);
- my $lines = [ map {$_."\n"} split (/\n/, $text, -1) ];
- $lines = [''] if (!@$lines);
- chomp($lines->[-1]) unless ($had_final_end_line);
- return $lines;
-}
-
-# construct a text fragments array matching a lines array, based on information
-# supplied.
-# If $fixed_line_number is set the line number is not increased, otherwise
-# it is increased, beginning at $first_line.
-sub _complete_line_nr($$;$$$)
-{
- my $lines = shift;
- my $first_line = shift;
- my $file = shift;
- my $macro = shift;
- my $fixed_line_number = shift;
-
- $macro = '' if (!defined($macro));
- $file = '' if (!defined($file));
- my $new_lines = [];
-
- if (defined($first_line)) {
- my $line_index = $first_line;
- foreach my $index(0..scalar(@$lines)-1) {
- $line_index = $index+$first_line if (!$fixed_line_number);
- $new_lines->[$index] = [ $lines->[$index],
- { 'line_nr' => $line_index,
- 'file_name' => $file, 'macro' => $macro } ];
- }
- } else {
- foreach my $line (@$lines) {
- push @$new_lines, [ $line ];
- }
- }
- return $new_lines;
-}
-
-# entry point for text fragments.
-# Used in tests.
-# Note that it has no associated root type a opposed to parse_texi_line
-# and parse_texi_file.
-sub parse_texi_text($$;$$$$)
-{
- my $self = shift;
- my $text = shift;
- my $lines_nr = shift;
- my $file = shift;
- my $macro = shift;
- my $fixed_line_number = shift;
-
- return undef if (!defined($text));
-
- my $lines_array = [];
- if (!ref($text)) {
- $text = _text_to_lines($text);
- }
- $lines_nr = [] if (!defined($lines_nr));
- if (!ref($lines_nr)) {
- #$file =~ s/^.*\/// if (defined($file) and $self->{'TEST'});
- $lines_array = _complete_line_nr($text, $lines_nr, $file,
- $macro, $fixed_line_number);
- } else {
- while (@$text) {
- my $line_nr = shift @$lines_nr;
- my $line = shift @$text;
- push @$lines_array, [$line, $line_nr];
- }
- }
-
- $self = parser() if (!defined($self));
- $self->{'input'} = [{'pending' => $lines_array}];
- my $tree = $self->_parse_texi();
- return $tree;
-}
-
-# Not used for now, as a @contents after the first sectioning command
-# is correct if not using TeX.
-sub _check_contents_location($$)
-{
- my $self = shift;
- my $tree = shift;
-
- my $commands = $self->global_commands_information();
- return unless ($commands);
- # Find the last sectioning command
- my $index = -1;
- my %ending_root_commands;
- my $found = 0;
- while ($tree->{'contents'}->[$index]) {
- if (defined($tree->{'contents'}->[$index]->{'cmdname'})) {
- $ending_root_commands{$tree->{'contents'}->[$index]} = 1;
- if ($sectioning_commands{$tree->{'contents'}->[$index]->{'cmdname'}}) {
- $found = 1;
- last;
- }
- }
- $index--;
- }
- return if (!$found);
-
- #print STDERR "ending_root_commands ".join('|',keys(%ending_root_commands))."\n";
- #print STDERR "tree contents: ".join('|', @{$tree->{'contents'}})."\n";
- foreach my $command ('contents', 'shortcontents', 'summarycontents') {
- if ($commands->{$command}) {
- foreach my $current (@{$commands->{$command}}) {
- my $root_command = $self->Texinfo::Common::find_parent_root_command($current);
- #print STDERR "root_command for $current->{'cmdname'}: $root_command\n";
- if (defined($root_command)
- and !$ending_root_commands{$root_command}) {
- $self->line_warn(sprintf($self->__(
- "\@%s should only appear at beginning or end of document"),
- $current->{'cmdname'}), $current->{'line_nr'});
- }
- }
- }
- }
-}
-
-# parse a texi file
-sub parse_texi_file($$)
-{
- my $self = shift;
- my $file_name = shift;
-
- my $filehandle = do { local *FH };
- if (! open($filehandle, $file_name)) {
- $self->document_error(sprintf($self->__("could not open %s: %s"),
- $file_name, $!));
- return undef;
- }
- my $line_nr = 0;
- my $line;
- my @first_lines;
-
- my $pending_first_texi_line;
- # the first line not empty and not with \input is kept in
- # $pending_first_texi_line and put in the pending lines just below
- while ($line = <$filehandle>) {
- $line_nr++;
- if ($line =~ /^ *\\input/ or $line =~ /^\s*$/) {
- $line =~ s/\x{7F}.*\s*//;
- push @first_lines, $line;
- } else {
- $pending_first_texi_line = $line;
- last;
- }
- }
- my $root = { 'contents' => [], 'type' => 'text_root' };
- if (@first_lines) {
- push @{$root->{'contents'}}, { 'type' => 'preamble', 'contents' => [] };
- foreach my $line (@first_lines) {
- push @{$root->{'contents'}->[-1]->{'contents'}},
- { 'text' => $line,
- 'type' => 'preamble_text' };
- }
- }
- my ($directories, $suffix);
- ($file_name, $directories, $suffix) = fileparse($file_name)
- if ($self->{'TEST'});
- $self = parser() if (!defined($self));
- $self->{'input'} = [{
- 'pending' => [[$pending_first_texi_line, {'line_nr' => $line_nr,
- 'macro' => '', 'file_name' => $file_name}]],
- 'name' => $file_name,
- 'line_nr' => $line_nr,
- 'fh' => $filehandle
- }];
- $self->{'info'}->{'input_file_name'} = $file_name;
- my $tree = $self->_parse_texi($root);
-
- # Find 'text_root', which contains everything before first node/section.
- # if there are elements, 'text_root' is the first content, otherwise it
- # is the root.
- my $text_root;
- if ($tree->{'type'} eq 'text_root') {
- $text_root = $tree;
- } elsif ($tree->{'contents'} and $tree->{'contents'}->[0]
- and $tree->{'contents'}->[0]->{'type'} eq 'text_root') {
- $text_root = $tree->{'contents'}->[0];
- }
-
- # Put everything before @setfilename in a special type. This allows to
- # ignore everything before @setfilename.
- if ($self->{'IGNORE_BEFORE_SETFILENAME'} and $text_root and
- $self->{'extra'} and $self->{'extra'}->{'setfilename'}
- and $self->{'extra'}->{'setfilename'}->{'parent'} eq $text_root) {
- my $before_setfilename = {'type' => 'preamble_before_setfilename',
- 'parent' => $text_root,
- 'contents' => []};
- while ($text_root->{'contents'}->[0] ne $self->{'extra'}->{'setfilename'}) {
- my $content = shift @{$text_root->{'contents'}};
- $content->{'parent'} = $before_setfilename;
- push @{$before_setfilename->{'contents'}}, $content;
- }
- unshift (@{$text_root->{'contents'}}, $before_setfilename)
- if (@{$before_setfilename->{'contents'}});
- }
- #$self->_check_contents_location($tree);
-
- return $tree;
-}
-
-sub parse_texi_line($$;$$$$)
-{
- my $self = shift;
- my $text = shift;
- my $lines_nr = shift;
- my $file = shift;
- my $macro = shift;
- my $fixed_line_number = shift;
-
- return undef if (!defined($text));
-
- if (!ref($text)) {
- $text = _text_to_lines($text);
- }
- #$file =~ s/^.*\/// if (defined($file) and $self->{'TEST'});
- my $lines_array = _complete_line_nr($text, $lines_nr, $file,
- $macro, $fixed_line_number);
-
- $self = parser() if (!defined($self));
- $self->{'input'} = [{'pending' => $lines_array}];
- my $tree = $self->_parse_texi({'contents' => [], 'type' => 'root_line'});
- return $tree;
-}
-
-# return indices informations
-sub indices_information($)
-{
- my $self = shift;
- return ($self->{'index_names'}, $self->{'merged_indices'});
- #return ($self->{'index_names'}, $self->{'merged_indices'}, $self->{'index_entries'});
-}
-
-sub floats_information($)
-{
- my $self = shift;
- return $self->{'floats'};
-}
-
-sub internal_references_information($)
-{
- my $self = shift;
- return $self->{'internal_references'};
-}
-
-sub global_commands_information($)
-{
- my $self = shift;
- return $self->{'extra'};
-}
-
-# @ dircategory_direntry
-# @ unassociated_menus
-# perl_encoding
-# input_encoding_name
-# input_file_name
-sub global_informations($)
-{
- my $self = shift;
- return $self->{'info'};
-}
-
-sub labels_information($)
-{
- my $self = shift;
- return $self->{'labels'};
-}
-
-# Following are the internal subroutines. The most important are
-# _parse_texi: the main parser loop.
-# _end_line: called at an end of line. Handling of @include lines is
-# done here.
-# _next_text: present the next text fragment, from pending text or line,
-# as described above.
-
-# for debugging
-sub _print_current($)
-{
- my $current = shift;
- return Texinfo::Common::_print_current($current);
-}
-
-# for debugging
-sub _print_command_args_texi($)
-{
- my $current = shift;
- return '' if (!$current->{'cmdname'});
- my $args = '';
- my $with_brace;
- if ($current->{'args'} and @{$current->{'args'}}) {
- $with_brace
- = ($current->{'args'}->[0]->{'type'} eq 'brace_command_arg'
- or $current->{'args'}->[0]->{'type'} eq 'brace_command_context');
- $args .= '{' if ($with_brace);
- foreach my $arg (@{$current->{'args'}}) {
- $args .= Texinfo::Convert::Texinfo::convert($arg).', ';
- }
- $args =~ s/, $//;
- }
- chomp($args);
- if ($with_brace) {
- $args .= '}';
- }
- return '@'.$current->{'cmdname'} .$args."\n";
-}
-
-sub _print_current_keys($)
-{
- my $current = shift;
- my $string = _print_current($current);
- foreach my $key (keys (%$current)) {
- $string .= " $key: $current->{$key}\n";
- }
- if ($current->{'extra'}) {
- $string .= " EXTRA\n";
- foreach my $key (keys (%{$current->{'extra'}})) {
- $string .= " $key: $current->{'extra'}->{$key}\n";
- }
- }
- return $string;
-}
-
-# For debugging
-my @kept_keys = ('contents', 'cmdname', 'type', 'text', 'args');
-my %kept_keys;
-foreach my $key (@kept_keys) {
- $kept_keys{$key} = 1;
-}
-sub _filter_print_keys { [grep {$kept_keys{$_}} ( sort keys %{$_[0]} )] };
-sub _print_tree($)
-{
- my $tree = shift;
- local $Data::Dumper::Sortkeys = \&_filter_print_keys;
- local $Data::Dumper::Purity = 1;
- local $Data::Dumper::Indent = 1;
-
- return Data::Dumper->Dump([$tree]);
-}
-
-sub _register_global_command($$$$)
-{
- my $self = shift;
- my $command = shift;
- my $current = shift;
- my $line_nr = shift;
- if ($command eq 'summarycontents' and !$self->{'global_commands'}->{$command}) {
- $command = 'shortcontents';
- }
- if ($self->{'global_commands'}->{$command} and $command ne 'author') {
- push @{$self->{'extra'}->{$command}}, $current
- unless (_ignore_global_commands($self));
- $current->{'line_nr'} = $line_nr if (!$current->{'line_nr'});
- return 1;
- } elsif ($global_unique_commands{$command}) {
- # setfilename ignored in an included file
- $current->{'line_nr'} = $line_nr if (!$current->{'line_nr'});
- if ($command eq 'setfilename'
- and scalar(@{$self->{'input'}}) > 1) {
- } elsif (exists ($self->{'extra'}->{$current->{'cmdname'}})) {
- $self->line_warn(sprintf($self->__('multiple @%s'),
- $current->{'cmdname'}), $line_nr);
- } else {
- $self->{'extra'}->{$current->{'cmdname'}} = $current
- unless (_ignore_global_commands($self));
- }
- return 1;
- }
- return 0;
-}
-
-# parse a @macro line
-sub _parse_macro_command_line($$$$$;$)
-{
- my $self = shift;
- my $command = shift;
- my $line = shift;
- my $parent = shift;
- my $line_nr = shift;
- my $macro = { 'cmdname' => $command, 'parent' => $parent, 'contents' => [],
- 'extra' => {'arg_line' => $line}, 'line_nr' => $line_nr };
- # REMACRO
- if ($line =~ /^\s+([[:alnum:]][[:alnum:]-]*)\s*(.*)/) {
- my $macro_name = $1;
- my $args_def = $2;
- my @args;
-
- if ($args_def =~ s/^\s*{\s*(.*?)\s*}\s*//) {
- @args = split(/\s*,\s*/, $1);
- }
-
- # accept an @-command after the arguments in case there is a @c or
- # @comment
- if ($args_def =~ /^\s*[^\@]/) {
- $self->line_error(sprintf($self->__("bad syntax for \@%s argument: %s"),
- $command, $args_def),
- $line_nr);
- $macro->{'extra'}->{'invalid_syntax'} = 1;
- }
- print STDERR "MACRO \@$command $macro_name\n" if ($self->{'DEBUG'});
-
- $macro->{'args'} = [
- { 'type' => 'macro_name', 'text' => $macro_name,
- 'parent' => $macro } ];
- my $index = 0;
- foreach my $formal_arg (@args) {
- push @{$macro->{'args'}},
- { 'type' => 'macro_arg', 'text' => $formal_arg,
- 'parent' => $macro};
- if ($formal_arg !~ /^[\w\-]+$/) {
- $self->line_error(sprintf($self->__("bad or empty \@%s formal argument: %s"),
- $command, $formal_arg), $line_nr);
- $macro->{'extra'}->{'invalid_syntax'} = 1;
- }
- $macro->{'extra'}->{'args_index'}->{$formal_arg} = $index;
- $index++;
- }
- } elsif ($line !~ /\S/) {
- $self->line_error(sprintf($self->
- __("%c%s requires a name"), ord('@'), $command), $line_nr);
- $macro->{'extra'}->{'invalid_syntax'} = 1;
- } else {
- $self->line_error(sprintf($self->
- __("bad name for \@%s"), $command), $line_nr);
- $macro->{'extra'}->{'invalid_syntax'} = 1;
- }
- return $macro;
-}
-
-# start a paragraph if in a context where paragraphs are to be started.
-sub _begin_paragraph($$;$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
-
- # !$current->{'type'} is true for @-commands. In fact it is unclear
- # that there may be cases of !$current->{'type'} and !$current->{'cmdname'}
- if ((!$current->{'type'} or $type_with_paragraph{$current->{'type'}})
- and !$no_paragraph_contexts{$self->{'context_stack'}->[-1]}) {
- if (!defined($current->{'contents'})) {
- $self->_bug_message("contents undef", $line_nr, $current);
- die;
- }
-
- # find whether an @indent precedes the paragraph
- my $indent;
- if (scalar(@{$current->{'contents'}})) {
- my $index = scalar(@{$current->{'contents'}}) -1;
- while ($index >= 0
- and !($current->{'contents'}->[$index]->{'type'}
- and ($current->{'contents'}->[$index]->{'type'} eq 'empty_line'
- or $current->{'contents'}->[$index]->{'type'} eq 'paragraph'))
- and !($current->{'contents'}->[$index]->{'cmdname'}
- and $self->{'close_paragraph_commands'}->{$current->{'contents'}->[$index]->{'cmdname'}})) {
- if ($current->{'contents'}->[$index]->{'cmdname'}
- and ($current->{'contents'}->[$index]->{'cmdname'} eq 'indent'
- or $current->{'contents'}->[$index]->{'cmdname'} eq 'noindent')) {
- $indent = $current->{'contents'}->[$index]->{'cmdname'};
- last;
- }
- $index--;
- }
- }
- push @{$current->{'contents'}},
- { 'type' => 'paragraph', 'parent' => $current, 'contents' => [] };
- $current->{'contents'}->[-1]->{'extra'}->{$indent} = 1 if ($indent);
- $current = $current->{'contents'}->[-1];
- print STDERR "PARAGRAPH\n" if ($self->{'DEBUG'});
- return $current;
- }
- return 0;
-}
-
-sub _begin_preformatted($)
-{
- my $self = shift;
- my $current = shift;
- if ($preformatted_contexts{$self->{'context_stack'}->[-1]}) {
- push @{$current->{'contents'}},
- { 'type' => $self->{'context_stack'}->[-1],
- 'parent' => $current, 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- print STDERR "PREFORMATTED $self->{'context_stack'}->[-1]\n" if ($self->{'DEBUG'});
- }
- return $current;
-}
-
-# wrapper around line_warn. Set line_nr to be the line_nr of the command,
-# corresponding to the opening of the command. Call line_warn with
-# sprintf if needed.
-sub _command_warn($$$$;@)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $message = shift;
-
- if ($current->{'line_nr'}) {
- $line_nr = $current->{'line_nr'};
- }
- if (@_) {
- $self->line_warn(sprintf($message, @_), $line_nr);
- } else {
- $self->line_warn($message, $line_nr);
- }
-}
-
-sub _command_error($$$$;@)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $message = shift;
-
- # use the beginning of the @-command for the error message
- # line number if available.
- # FIXME line_nr currently not registered for regular brace commands
- if ($current->{'line_nr'}) {
- $line_nr = $current->{'line_nr'};
- }
- if (@_) {
- $self->line_error(sprintf($message, @_), $line_nr);
- } else {
- $self->line_error($message, $line_nr);
- }
-}
-
-# currently doesn't do much more than
-# return $_[1]->{'parent'}
-sub _close_brace_command($$$;$$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $closed_command = shift;
- my $interrupting_command = shift;
-
- if ($current->{'cmdname'} ne 'verb' or $current->{'type'} eq '') {
- if (defined($closed_command)) {
- $self->_command_error($current, $line_nr,
- $self->__("\@end %s seen before \@%s closing brace"),
- $closed_command, $current->{'cmdname'});
- } elsif (defined($interrupting_command)) {
- $self->_command_error($current, $line_nr,
- $self->__("\@%s seen before \@%s closing brace"),
- $interrupting_command, $current->{'cmdname'});
-
- } else {
- $self->_command_error($current, $line_nr,
- $self->__("%c%s missing close brace"), ord('@'), $current->{'cmdname'});
- }
- } else {
- $self->_command_error($current, $line_nr,
- $self->__("\@%s missing closing delimiter sequence: %s}"),
- $current->{'cmdname'}, $current->{'type'});
- }
- $current = $current->{'parent'};
- return $current;
-}
-
-sub _in_code($$)
-{
- my $self = shift;
- my $current = shift;
-
- while ($current->{'parent'} and $current->{'parent'}->{'cmdname'}
- and exists $brace_commands{$current->{'parent'}->{'cmdname'}}
- and !exists $context_brace_commands{$current->{'parent'}->{'cmdname'}}) {
- return 1 if ($code_style_commands{$current->{'parent'}->{'cmdname'}});
- $current = $current->{'parent'}->{'parent'};
- }
- return 0;
-}
-
-# close brace commands, that don't set a new context (ie @caption, @footnote)
-sub _close_all_style_commands($$$;$$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $closed_command = shift;
- my $interrupting_command = shift;
-
- while ($current->{'parent'} and $current->{'parent'}->{'cmdname'}
- and exists $brace_commands{$current->{'parent'}->{'cmdname'}}
- and !exists $context_brace_commands{$current->{'parent'}->{'cmdname'}}) {
- $current = _close_brace_command($self, $current->{'parent'}, $line_nr,
- $closed_command, $interrupting_command);
- }
- return $current;
-}
-
-# close brace commands except for @caption, @footnote then the paragraph
-sub _end_paragraph($$$;$$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $closed_command = shift;
- my $interrupting_command = shift;
-
- $current = _close_all_style_commands($self, $current, $line_nr,
- $closed_command, $interrupting_command);
- if ($current->{'type'} and $current->{'type'} eq 'paragraph') {
- print STDERR "CLOSE PARA\n" if ($self->{'DEBUG'});
- $current = $current->{'parent'};
- }
- return $current;
-}
-
-# close brace commands except for @caption, @footnote then the preformatted
-sub _end_preformatted($$$;$$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $closed_command = shift;
- my $interrupting_command = shift;
-
- $current = _close_all_style_commands($self, $current, $line_nr,
- $closed_command, $interrupting_command);
- if ($current->{'type'} and $preformatted_contexts{$current->{'type'}}) {
- print STDERR "CLOSE PREFORMATTED $current->{'type'}\n" if ($self->{'DEBUG'});
- # completly remove void preformatted contexts
- if (!@{$current->{'contents'}}) {
- my $removed = pop @{$current->{'parent'}->{'contents'}};
- print STDERR "popping $removed->{'type'}\n" if ($self->{'DEBUG'});
- }
- $current = $current->{'parent'};
- }
- return $current;
-}
-
-# check that there are no text holding environment (currently
-# checking only paragraphs and preformatted) in contents
-sub _check_no_text($)
-{
- my $current = shift;
- my $after_paragraph = 0;
- foreach my $content (@{$current->{'contents'}}) {
- if ($content->{'type'} and $content->{'type'} eq 'paragraph') {
- $after_paragraph = 1;
- last;
- } elsif ($content->{'type'} and $preformatted_contexts{$content->{'type'}}) {
- foreach my $preformatted_content (@{$content->{'contents'}}) {
- if ((defined($preformatted_content->{'text'})
- and $preformatted_content->{'text'} =~ /\S/)
- or ($preformatted_content->{'cmdname'}
- and ($preformatted_content->{'cmdname'} ne 'c'
- and $preformatted_content->{'cmdname'} ne 'comment')
- and !($preformatted_content->{'type'}
- and $preformatted_content->{'type'} eq 'index_entry_command'))) {
- $after_paragraph = 1;
- last;
- }
- }
- last if ($after_paragraph);
- }
- }
- return $after_paragraph;
-}
-
-# put everything after the last @item/@itemx in an item_table type container
-# and distinguish table_term and table_entry.
-sub _gather_previous_item($$;$$)
-{
- my $self = shift;
- my $current = shift;
- my $next_command = shift;
- my $line_nr = shift;
-
- # nothing to do in that case.
- if ($current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'before_item') {
- if ($next_command and $next_command eq 'itemx') {
- $self->line_warn(sprintf($self->__("\@itemx should not begin \@%s"),
- $current->{'cmdname'}), $line_nr);
- }
- return;
- }
- #print STDERR "GATHER "._print_current($current)."\n";
- my $type;
- # if before an itemx, the type is different since there should not be
- # real content, so it may be treated differently
- if ($next_command and $next_command eq 'itemx') {
- $type = 'inter_item';
- } else {
- $type = 'table_item';
- }
- my $table_gathered = {'type' => $type,
- 'contents' => []};
- # remove everything that is not an @item/@items or before_item to
- # put it in the table_item, starting from the end.
- my $contents_count = scalar(@{$current->{'contents'}});
- for (my $i = 0; $i < $contents_count; $i++) {
- #print STDERR "_gather_previous_item $i on $contents_count: "._print_current($current->{'contents'}->[-1])."\n";
- if ($current->{'contents'}->[-1]->{'cmdname'}
- and ($current->{'contents'}->[-1]->{'cmdname'} eq 'item'
- or ($current->{'contents'}->[-1]->{'cmdname'} eq 'itemx'))) {
- last;
- } else {
- my $item_content = pop @{$current->{'contents'}};
- $item_content->{'parent'} = $table_gathered;
- unshift @{$table_gathered->{'contents'}}, $item_content;
- }
- }
- if ($type eq 'table_item') {
- my $table_entry = {'type' => 'table_entry',
- 'parent' => $current,
- 'contents' => []};
- my $table_term = {'type' => 'table_term',
- 'parent' => $table_entry,
- 'contents' => []};
- push @{$table_entry->{'contents'}}, $table_term;
- my $contents_count = scalar(@{$current->{'contents'}});
- for (my $i = 0; $i < $contents_count; $i++) {
- if ($current->{'contents'}->[-1]->{'type'}
- and ($current->{'contents'}->[-1]->{'type'} eq 'before_item'
- or $current->{'contents'}->[-1]->{'type'} eq 'table_entry')) {
- last;
- } else {
- my $item_content = pop @{$current->{'contents'}};
- $item_content->{'parent'} = $table_term;
- unshift @{$table_term->{'contents'}}, $item_content;
- # debug
- if (! (($item_content->{'cmdname'}
- and ($item_content->{'cmdname'} eq 'itemx'
- or $item_content->{'cmdname'} eq 'item'))
- or ($item_content->{'type'}
- and $item_content->{'type'} eq 'inter_item'))) {
- $self->_bug_message("wrong element in table term", $line_nr,
- $item_content);
- }
- }
- }
- push @{$current->{'contents'}}, $table_entry;
- if (scalar(@{$table_gathered->{'contents'}})) {
- push @{$table_entry->{'contents'}}, $table_gathered;
- $table_gathered->{'parent'} = $table_entry;
- }
- } else {
- my $after_paragraph = _check_no_text($table_gathered);
- if ($after_paragraph) {
- $self->line_error($self->__("\@itemx must follow \@item"), $line_nr);
- }
- if (scalar(@{$table_gathered->{'contents'}})) {
- push @{$current->{'contents'}}, $table_gathered;
- $table_gathered->{'parent'} = $current;
- }
- }
-}
-
-# Starting from the end, gather everything util the def_line to put in
-# a def_item
-sub _gather_def_item($;$)
-{
- my $current = shift;
- my $next_command = shift;
- my $type;
- # means that we are between a @def*x and a @def
- if ($next_command) {
- $type = 'inter_def_item';
- } else {
- $type = 'def_item';
- }
-
- # This may happen for a construct like
- # @deffnx a b @section
- # but otherwise the end of line will lead to the command closing
- return if (!$current->{'cmdname'} or $current->{'cmdname'} =~ /x$/);
- #print STDERR "_gather_def_item($type) in "._print_current($current)."\n";
- my $def_item = {'type' => $type,
- 'parent' => $current,
- 'contents' => []};
- # remove everything that is not a def_line to put it in the def_item,
- # starting from the end.
- my $contents_count = scalar(@{$current->{'contents'}});
- for (my $i = 0; $i < $contents_count; $i++) {
- #print STDERR "_gather_def_item $type ($i on $contents_count) "._print_current($current->{'contents'}->[-1])."\n";
- if ($current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'def_line') {
- # and !$current->{'contents'}->[-1]->{'extra'}->{'not_after_command'}) {
- last;
- } else {
- my $item_content = pop @{$current->{'contents'}};
- $item_content->{'parent'} = $def_item;
- unshift @{$def_item->{'contents'}}, $item_content;
- }
- }
- if (scalar(@{$def_item->{'contents'}})) {
- push @{$current->{'contents'}}, $def_item;
- }
-}
-
-# close formats
-sub _close_command_cleanup($$$) {
- my $self = shift;
- my $current = shift;
-
- return unless ($current->{'cmdname'});
- # remove the dynamic counters in multitable, they are not of use in the final
- # tree. Also determine the multitable_body and multitable_head with
- # @item or @headitem rows.
- if ($current->{'cmdname'} eq 'multitable') {
- my $in_head_or_rows;
- my @contents = @{$current->{'contents'}};
- $current->{'contents'} = [];
- foreach my $row (@contents) {
- if ($row->{'type'} and $row->{'type'} eq 'row') {
- delete $row->{'cells_count'};
- if ($row->{'contents'}->[0]->{'cmdname'} eq 'headitem') {
- if (!$in_head_or_rows) {
- push @{$current->{'contents'}}, {'type' => 'multitable_head',
- 'parent' => $current};
- $in_head_or_rows = 1;
- }
- } elsif ($row->{'contents'}->[0]->{'cmdname'} eq 'item') {
- if (!defined($in_head_or_rows) or $in_head_or_rows) {
- push @{$current->{'contents'}}, {'type' => 'multitable_body',
- 'parent' => $current};
- $in_head_or_rows = 0;
- }
- }
- push @{$current->{'contents'}->[-1]->{'contents'}}, $row;
- $row->{'parent'} = $current->{'contents'}->[-1];
- } else {
- push @{$current->{'contents'}}, $row;
- $in_head_or_rows = undef;
- }
- }
- delete $current->{'rows_count'};
- } elsif ($item_container_commands{$current->{'cmdname'}}) {
- delete $current->{'items_count'};
- }
-
- # put everything after the last @def*x command in a def_item type container.
- if ($def_commands{$current->{'cmdname'}}) {
- # At this point the end command hasn't been added to the command contents.
- # so checks cannot be done at this point.
- _gather_def_item($current);
- }
-
- if ($item_line_commands{$current->{'cmdname'}}) {
- # At this point the end command hasn't been added to the command contents.
- # so checks cannot be done at this point.
- if (@{$current->{'contents'}}) {
- $self->_gather_previous_item($current);
- }
- }
-
- # put end out of before_item, and replace it at the end of the parent.
- # remove empty before_item.
- # warn if not empty before_item, but format is empty
- if ($block_item_commands{$current->{'cmdname'}}) {
- if (@{$current->{'contents'}}) {
- my $leading_spaces = 0;
- my $before_item;
- if ($current->{'contents'}->[0]->{'type'}
- and $current->{'contents'}->[0]->{'type'} eq 'empty_line_after_command'
- and $current->{'contents'}->[1]
- and $current->{'contents'}->[1]->{'type'}
- and $current->{'contents'}->[1]->{'type'} eq 'before_item') {
- $leading_spaces = 1;
- $before_item = $current->{'contents'}->[1];
- } elsif ($current->{'contents'}->[0]->{'type'}
- and $current->{'contents'}->[0]->{'type'} eq 'before_item') {
- $before_item = $current->{'contents'}->[0];
- }
- if ($before_item) {
- if ($current->{'extra'}->{'end_command'}
- and @{$before_item->{'contents'}}
- and $before_item->{'contents'}->[-1] eq $current->{'extra'}->{'end_command'}) {
- my $end = pop @{$before_item->{'contents'}};
- $end->{'parent'} = $current;
- push @{$current->{'contents'}}, $end;
- }
- # remove empty before_items
- if (!@{$before_item->{'contents'}}) {
- if ($leading_spaces) {
- my $space = shift @{$current->{'contents'}};
- shift @{$current->{'contents'}};
- unshift @{$current->{'contents'}}, $space;
- } else {
- shift @{$current->{'contents'}};
- }
- } else {
- # warn if not empty before_item, but format is empty
- my $empty_before_item = 1;
- foreach my $before_item_content (@{$before_item->{'contents'}}) {
- if (!$before_item_content->{'cmdname'} or
- ($before_item_content->{'cmdname'} ne 'c'
- and $before_item_content->{'cmdname'} ne 'comment')) {
- $empty_before_item = 0;
- last;
- }
- }
- if (!$empty_before_item) {
- my $empty_format = 1;
- foreach my $format_content (@{$current->{'contents'}}) {
- next if ($format_content eq $before_item);
- if (($format_content->{'cmdname'} and
- ($format_content->{'cmdname'} ne 'c'
- and $format_content->{'cmdname'} ne 'comment'
- and $format_content->{'cmdname'} ne 'end'))
- or ($format_content->{'type'} and
- ($format_content->{'type'} ne 'empty_line_after_command'))) {
- $empty_format = 0;
- last;
- }
- }
- if ($empty_format) {
- $self->line_warn(sprintf($self->__("\@%s has text but no \@item"),
- $current->{'cmdname'}), $current->{'line_nr'});
- }
- }
- }
- }
- }
- }
-}
-
-# close the current command, with error messages and give the parent.
-# If the last argument is given it is the command being closed if
-# hadn't there be an error, currently only block command, used for a
-# better error message.
-sub _close_current($$$;$$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $closed_command = shift;
- my $interrupting_command = shift;
-
- if ($current->{'cmdname'}) {
- print STDERR "CLOSING(_close_current) \@$current->{'cmdname'}\n" if ($self->{'DEBUG'});
- if (exists($brace_commands{$current->{'cmdname'}})) {
- pop @{$self->{'context_stack'}}
- if (exists $context_brace_commands{$current->{'cmdname'}});
- $current = _close_brace_command($self, $current, $line_nr,
- $closed_command, $interrupting_command);
- } elsif (exists($block_commands{$current->{'cmdname'}})) {
- if (defined($closed_command)) {
- $self->line_error(sprintf($self->__("`\@end' expected `%s', but saw `%s'"),
- $current->{'cmdname'}, $closed_command), $line_nr);
- } elsif ($interrupting_command) {
- $self->line_error(sprintf($self->__("\@%s seen before \@end %s"),
- $interrupting_command, $current->{'cmdname'}),
- $line_nr);
- } else {
- $self->line_error(sprintf($self->__("no matching `%cend %s'"),
- ord('@'), $current->{'cmdname'}), $line_nr);
- if ($block_commands{$current->{'cmdname'}} eq 'conditional') {
- # in this case we are within an ignored conditional
- my $conditional = pop @{$current->{'parent'}->{'contents'}};
- }
- }
- if ($preformatted_commands{$current->{'cmdname'}}
- or $menu_commands{$current->{'cmdname'}}
- or $format_raw_commands{$current->{'cmdname'}}) {
- my $context = pop @{$self->{'context_stack'}};
- pop @{$self->{'expanded_formats_stack'}}
- if ($format_raw_commands{$current->{'cmdname'}});
- }
- pop @{$self->{'regions_stack'}}
- if ($region_commands{$current->{'cmdname'}});
- $current = $current->{'parent'};
- } else {
- # There @item and @tab commands are closed, and also line commands
- # with invalid content
- $current = $current->{'parent'};
- }
- } elsif ($current->{'type'}) {
- print STDERR "CLOSING type $current->{'type'}\n" if ($self->{'DEBUG'});
- if ($current->{'type'} eq 'bracketed') {
- $self->_command_error($current, $line_nr,
- $self->__("misplaced %c"), ord('{'));
- } elsif ($current->{'type'} eq 'menu_comment'
- or $current->{'type'} eq 'menu_entry_description') {
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'preformatted') {
- $self->_bug_message("context $context instead of preformatted",
- $line_nr, $current);
- }
- # close empty menu_comment
- if (!@{$current->{'contents'}}) {
- pop @{$current->{'parent'}->{'contents'}};
- }
- } elsif ($current->{'type'} eq 'misc_line_arg'
- or $current->{'type'} eq 'block_line_arg') {
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'line' and $context ne 'def') {
- $self->_bug_message("context $context instead of line or def",
- $line_nr, $current);
- die;
- }
- }
- $current = $current->{'parent'};
- } else { # Should never go here.
- $current = $current->{'parent'} if ($current->{'parent'});
- $self->_bug_message("No type nor cmdname when closing",
- $line_nr, $current);
- }
- return $current;
-}
-
-# a closed_command arg means closing until that command is found.
-# no command arg means closing until the root or a root_command
-# is found.
-sub _close_commands($$$;$$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $closed_command = shift;
- my $interrupting_command = shift;;
-
- $current = _end_paragraph($self, $current, $line_nr, $closed_command,
- $interrupting_command);
- $current = _end_preformatted($self, $current, $line_nr, $closed_command,
- $interrupting_command);
-
- # stop if the command is found
- while (!($closed_command and $current->{'cmdname'}
- and $current->{'cmdname'} eq $closed_command)
- # stop if at the root
- and $current->{'parent'}
- # stop if in a root command
- # or in a context_brace_commands and searching for a specific
- # end block command (with $closed_command set).
- # This second condition means that a footnote is not closed when
- # looking for the end of a block command, but is closed when
- # completly closing the stack.
- and !($current->{'cmdname'}
- and ($root_commands{$current->{'cmdname'}}
- or ($closed_command and $current->{'parent'}->{'cmdname'}
- and $context_brace_commands{$current->{'parent'}->{'cmdname'}})))){
- $self->_close_command_cleanup($current);
- $current = $self->_close_current($current, $line_nr, $closed_command,
- $interrupting_command);
- }
-
- my $closed_element;
- if ($closed_command and $current->{'cmdname'}
- and $current->{'cmdname'} eq $closed_command) {
- if ($preformatted_commands{$current->{'cmdname'}}) {
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'preformatted') {
- $self->_bug_message("context $context instead of preformatted for $closed_command",
- $line_nr, $current);
- }
- } elsif ($format_raw_commands{$current->{'cmdname'}}) {
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'rawpreformatted') {
- $self->_bug_message("context $context instead of rawpreformatted for $closed_command",
- $line_nr, $current);
- }
- pop @{$self->{'expanded_formats_stack'}};
- } elsif ($menu_commands{$current->{'cmdname'}}) {
- my $context = pop @{$self->{'context_stack'}};
- # may be in menu, but context is preformatted if in a preformatted too.
- if ($context ne 'menu' and $context ne 'preformatted') {
- $self->_bug_message("context $context instead of preformatted or menu for $closed_command",
- $line_nr, $current);
- }
- }
- #print STDERR "close context $context for $current->{'cmdname'}\n"
- # if ($self->{'DEBUG'});
- pop @{$self->{'regions_stack'}}
- if ($region_commands{$current->{'cmdname'}});
- $closed_element = $current;
- #$self->_close_command_cleanup($current);
- $current = $current->{'parent'};
- } elsif ($closed_command) {
- $self->line_error(sprintf($self->__("unmatched `%c%s'"),
- ord('@'), "end $closed_command"), $line_nr);
- }
- return ($closed_element, $current);
-}
-
-# begin paragraph if needed. If not try to merge with the previous
-# content if it is also some text.
-sub _merge_text($$$)
-{
- my $self = shift;
- my $current = shift;
- my $text = shift;
-
- my $paragraph;
-
- my $no_merge_with_following_text = 0;
- if ($text =~ /\S/) {
- my $leading_spaces;
- if ($text =~ /^(\s+)/) {
- $leading_spaces = $1;
- }
- if ($current->{'contents'} and @{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'type'}
- and ($current->{'contents'}->[-1]->{'type'} eq 'empty_line_after_command'
- or $current->{'contents'}->[-1]->{'type'} eq 'empty_spaces_before_argument'
- or $current->{'contents'}->[-1]->{'type'} eq 'empty_spaces_after_close_brace')) {
- $no_merge_with_following_text = 1;
- }
- if (_abort_empty_line($self, $current, $leading_spaces)) {
- $text =~ s/^(\s+)//;
- }
-
- $paragraph = _begin_paragraph($self, $current);
- $current = $paragraph if ($paragraph);
- }
-
- if (!defined($current->{'contents'})) {
- $self->_bug_message("No contents in _merge_text",
- undef, $current);
- die;
- }
-
- if (@{$current->{'contents'}}
- and exists($current->{'contents'}->[-1]->{'text'})
- and $current->{'contents'}->[-1]->{'text'} !~ /\n/
- and !$no_merge_with_following_text) {
- $current->{'contents'}->[-1]->{'text'} .= $text;
- print STDERR "MERGED TEXT: $text|||\n" if ($self->{'DEBUG'});
- } else {
- push @{$current->{'contents'}}, { 'text' => $text, 'parent' => $current };
- print STDERR "NEW TEXT: $text|||\n" if ($self->{'DEBUG'});
- }
- return $current;
-}
-
-# return the parent if in a item_container command, itemize or enumerate
-sub _item_container_parent($)
-{
- my $current = shift;
- if ((($current->{'cmdname'} and $current->{'cmdname'} eq 'item')
- or ($current->{'type'} and $current->{'type'} eq 'before_item'))
- and ($current->{'parent'} and $current->{'parent'}->{'cmdname'}
- and $item_container_commands{$current->{'parent'}->{'cmdname'}})) {
- return ($current->{'parent'});
- }
- return undef;
-}
-
-# return the parent if in a item_line command, @*table
-sub _item_line_parent($)
-{
- my $current = shift;
- if ($current->{'cmdname'} and ($current->{'cmdname'} eq 'item'
- or $current->{'cmdname'} eq 'itemx')) {
- $current = $current->{'parent'}->{'parent'};
- } elsif ($current->{'type'} and $current->{'type'} eq 'before_item'
- and $current->{'parent'}) {
- $current = $current->{'parent'};
- }
- return $current if ($current->{'cmdname'}
- and $item_line_commands{$current->{'cmdname'}});
- return undef;
-}
-
-# return the parent if in a multitable
-sub _item_multitable_parent($)
-{
- my $current = shift;
- if (($current->{'cmdname'} and ($current->{'cmdname'} eq 'headitem'
- or $current->{'cmdname'} eq 'item' or $current->{'cmdname'} eq 'tab'))
- and $current->{'parent'} and $current->{'parent'}->{'parent'}) {
- $current = $current->{'parent'}->{'parent'};
- } elsif ($current->{'type'} and $current->{'type'} eq 'before_item'
- and $current->{'parent'}) {
- $current = $current->{'parent'};
- }
- return $current if ($current->{'cmdname'}
- and $current->{'cmdname'} eq 'multitable');
- return undef;
-}
-
-# returns next text fragment, be it pending from a macro expansion or
-# text or file
-sub _next_text($$$)
-{
- my $self = shift;
- my $line_nr = shift;
- my $current = shift;
-
- while (@{$self->{'input'}}) {
- my $input = $self->{'input'}->[0];
- if (@{$input->{'pending'}}) {
- my $new_text = shift @{$input->{'pending'}};
- if ($new_text->[1] and $new_text->[1]->{'end_macro'}) {
- delete $new_text->[1]->{'end_macro'};
- my $top_macro = shift @{$self->{'macro_stack'}};
- print STDERR "SHIFT MACRO_STACK(@{$self->{'macro_stack'}}): $top_macro->{'args'}->[0]->{'text'}\n"
- if ($self->{'DEBUG'});
- }
- return ($new_text->[0], $new_text->[1]);
- } elsif ($input->{'fh'}) {
- my $fh = $input->{'fh'};
- my $line = <$fh>;
- while (defined($line)) {
- # add an end of line if there is none at the end of file
- if (eof($fh) and $line !~ /\n/) {
- $line .= "\n";
- }
- $line =~ s/\x{7F}.*\s*//;
- if ($self->{'CPP_LINE_DIRECTIVES'}
- # no cpp directives in ignored/macro/verbatim
- and defined ($current)
- and not
- (($current->{'cmdname'}
- and $block_commands{$current->{'cmdname'}}
- and ($block_commands{$current->{'cmdname'}} eq 'raw'
- or $block_commands{$current->{'cmdname'}} eq 'conditional'))
- or
- ($current->{'parent'} and $current->{'parent'}->{'cmdname'}
- and $current->{'parent'}->{'cmdname'} eq 'verb')
- )
- and $line =~ /^\s*#\s*(line)? (\d+)(( "([^"]+)")(\s+\d+)*)?\s*$/) {
- $input->{'line_nr'} = $2;
- if (defined($5)) {
- $input->{'name'} = $5;
- }
- $line = <$fh>;
- } else {
- $input->{'line_nr'}++;
- return ($line, {'line_nr' => $input->{'line_nr'},
- 'file_name' => $input->{'name'},
- 'macro' => ''});
- }
- }
- }
- my $previous_input = shift(@{$self->{'input'}});
- # Don't close STDIN
- if ($previous_input->{'fh'} and $previous_input->{'name'} ne '-') {
- if (!close($previous_input->{'fh'})) {
- $self->document_warn(sprintf($self->__("error on closing %s: %s"),
- $previous_input->{'name'}, $!));
-
- }
- }
- }
-
- return (undef, $line_nr);
-}
-
-# collect text and line numbers until an end of line is found.
-sub _new_line($$$)
-{
- my $self = shift;
- my $line_nr = shift;
- my $current = shift;
- my $new_line = '';
-
- while (1) {
- my $new_text;
- ($new_text, $line_nr) = _next_text($self, $line_nr, $current);
- if (!defined($new_text)) {
- $new_line = undef if ($new_line eq '');
- last;
- }
-
- $new_line .= $new_text;
-
- my $chomped_text = $new_text;
- last if chomp($chomped_text);
- }
- return ($new_line, $line_nr);
-}
-
-sub _expand_macro_arguments($$$$)
-{
- my $self = shift;
- my $macro = shift;
- my $line = shift;
- my $line_nr = shift;
- my $braces_level = 1;
- my $arguments = [ '' ];
- my $arg_nr = 0;
- my $args_total = scalar(@{$macro->{'args'}}) -1;
- my $name = $macro->{'args'}->[0]->{'text'};
-
- my $line_nr_orig = $line_nr;
-
- while (1) {
- if ($line =~ s/([^\\{},]*)([\\{},])//) {
- my $separator = $2;
- $arguments->[-1] .= $1;
- if ($separator eq '\\') {
- if ($line =~ s/^(.)//) {
- my $protected_char = $1;
- if ($protected_char !~ /[\\{},]/) {
- $arguments->[-1] .= '\\';
- }
- $arguments->[-1] .= $protected_char;
-
- print STDERR "MACRO ARG: $separator: $protected_char\n" if ($self->{'DEBUG'});
- } else {
- $arguments->[-1] .= '\\';
- print STDERR "MACRO ARG: $separator\n" if ($self->{'DEBUG'});
- }
- } elsif ($separator eq ',') {
- if ($braces_level == 1) {
- if (scalar(@$arguments) < $args_total) {
- push @$arguments, '';
- $line =~ s/^[^\S\f]*//;
- print STDERR "MACRO NEW ARG\n" if ($self->{'DEBUG'});
- } else {
- # implicit quoting when there is one argument.
- if ($args_total != 1) {
- $self->line_error(sprintf($self->__(
- "macro `%s' called with too many args"),
- $name), $line_nr);
- }
- $arguments->[-1] .= ',';
- }
- } else {
- $arguments->[-1] .= ',';
- }
- } elsif ($separator eq '}') {
- $braces_level--;
- last if ($braces_level == 0);
- $arguments->[-1] .= $separator;
- } elsif ($separator eq '{') {
- $braces_level++;
- $arguments->[-1] .= $separator;
- }
- } else {
- print STDERR "MACRO ARG end of line\n" if ($self->{'DEBUG'});
- $arguments->[-1] .= $line;
-
- ($line, $line_nr) = _new_line($self, $line_nr, $macro);
- if (!defined($line)) {
- $self->line_error(sprintf($self->__("\@%s missing close brace"),
- $name), $line_nr_orig);
- return ($arguments, "\n", $line_nr);
- }
- }
- }
- if ($args_total == 0 and $arguments->[0] =~ /[\S\f]/) {
- $self->line_error(sprintf($self->__(
- "macro `%s' declared without argument called with an argument"),
- $name), $line_nr);
- }
- print STDERR "END MACRO ARGS EXPANSION(".scalar(@$arguments)."): ".
- join("|\n", @$arguments) ."|\n" if ($self->{'DEBUG'});
- return ($arguments, $line, $line_nr);
-}
-
-sub _expand_macro_body($$$$) {
- my $self = shift;
- my $macro = shift;
- my $args = shift;
- my $line_nr = shift;
-
- my $macrobody = $macro->{'extra'}->{'macrobody'};
- my $args_total = scalar(@{$macro->{'args'}}) -1;
- my $args_index = $macro->{'extra'}->{'args_index'};
-
- my $i;
- for ($i=0; $i<=$args_total; $i++) {
- $args->[$i] = "" unless (defined($args->[$i]));
- }
-
- my $result = '';
- while ($macrobody ne '') {
- if ($macrobody =~ s/^([^\\]*)\\//o) {
- $result .= $1;
- if ($macrobody =~ s/^\\//) {
- $result .= '\\';
- } elsif ($macrobody =~ s/^([^\\]*)\\//) {
- my $arg = $1;
- if (defined($args_index->{$arg})) {
- $result .= $args->[$args_index->{$arg}];
- } else {
- $self->line_error(sprintf($self->__(
- "\\ in \@%s expansion followed `%s' instead of parameter name or \\"),
- $macro->{'args'}->[0]->{'text'}, $arg), $line_nr);
- $result .= '\\' . $arg;
- }
- }
- next;
- }
- $result .= $macrobody;
- last;
- }
- return $result;
-}
-
-# each time a new line appeared, a container is opened to hold the text
-# consisting only of spaces. This container is removed here, typically
-# this is called when non-space happens on a line.
-sub _abort_empty_line($$;$)
-{
- my $self = shift;
- my $current = shift;
- my $additional_text = shift;
- $additional_text = '' if (!defined($additional_text));
- if ($current->{'contents'} and @{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'type'}
- and ($current->{'contents'}->[-1]->{'type'} eq 'empty_line'
- or $current->{'contents'}->[-1]->{'type'} eq 'empty_line_after_command'
- or $current->{'contents'}->[-1]->{'type'} eq 'empty_spaces_before_argument'
- or $current->{'contents'}->[-1]->{'type'} eq 'empty_spaces_after_close_brace')) {
- print STDERR "ABORT EMPTY additional text |$additional_text|, current |$current->{'contents'}->[-1]->{'text'}|\n" if ($self->{'DEBUG'});
- $current->{'contents'}->[-1]->{'text'} .= $additional_text;
- # remove empty 'empty*before'.
- if ($current->{'contents'}->[-1]->{'text'} eq '') {
- # as we remove 'empty_spaces_before_argument', 'spaces_before_argument'
- # is removed from 'extra' too.
- if ($current->{'extra'}
- and $current->{'extra'}->{'spaces_before_argument'}
- and $current->{'extra'}->{'spaces_before_argument'}
- eq $current->{'contents'}->[-1]) {
- delete ($current->{'extra'}->{'spaces_before_argument'});
- delete ($current->{'extra'}) if !(keys(%{$current->{'extra'}}));
- }
- pop @{$current->{'contents'}}
- } elsif ($current->{'contents'}->[-1]->{'type'} eq 'empty_line') {
- # exactly the same condition than to begin a paragraph
- if ((!$current->{'type'} or $type_with_paragraph{$current->{'type'}})
- and !$no_paragraph_contexts{$self->{'context_stack'}->[-1]}) {
- $current->{'contents'}->[-1]->{'type'} = 'empty_spaces_before_paragraph';
- } else {
- delete $current->{'contents'}->[-1]->{'type'};
- }
- } elsif ($current->{'contents'}->[-1]->{'type'} eq 'empty_line_after_command') {
- $current->{'contents'}->[-1]->{'type'} = 'empty_spaces_after_command';
- }
- return 1;
- }
- return 0;
-}
-
-# isolate last space in a command to help expansion disregard unuseful spaces.
-sub _isolate_last_space($$;$)
-{
- my $self = shift;
- my $current = shift;
- my $type = shift;
- $type = 'spaces_at_end' if (!defined($type));
- if ($current->{'contents'} and @{$current->{'contents'}}) {
- my $index = -1;
- # we ignore space before a misc command that is last on line.
- # This is primarily to tag spaces before comments, but this will
- # also tag and, in most converter lead to removal of spaces
- # before any misc command, which is not really problematic as
- # in most cases, if it is not a comment, we are in an invalid
- # nesting of misc command on another @-command line.
- $index = -2
- if (scalar(@{$current->{'contents'}}) > 1
- and $current->{'contents'}->[-1]->{'cmdname'}
- and $self->{'misc_commands'}->{$current->{'contents'}->[-1]->{'cmdname'}});
- if (defined($current->{'contents'}->[$index]->{'text'})
- and !$current->{'contents'}->[$index]->{'type'}
- and $current->{'contents'}->[$index]->{'text'} =~ /\s+$/) {
- if ($current->{'contents'}->[$index]->{'text'} !~ /\S/) {
- $current->{'contents'}->[$index]->{'type'} = $type;
- } else {
- $current->{'contents'}->[$index]->{'text'} =~ s/(\s+)$//;
- my $spaces = $1;
- my $new_spaces = { 'text' => $spaces, 'parent' => $current,
- 'type' => $type };
- if ($index == -1) {
- push @{$current->{'contents'}}, $new_spaces;
- } else {
- splice (@{$current->{'contents'}}, $index+1, 0, $new_spaces);
- }
- }
- }
- }
-}
-
-# used to put a node name in error messages.
-sub _node_extra_to_texi($)
-{
- my $node = shift;
- my $result = '';
- if ($node->{'manual_content'}) {
- $result = '('.Texinfo::Convert::Texinfo::convert({'contents'
- => $node->{'manual_content'}}) .')';
- }
- if ($node->{'node_content'}) {
- $result .= Texinfo::Convert::Texinfo::convert ({'contents'
- => $node->{'node_content'}});
- }
- return $result;
-}
-
-sub _find_end_brace($$)
-{
- my $text = shift;
- my $braces_count = shift;
-
- my $before = '';
- while ($braces_count > 0 and length($text)) {
- if ($text =~ s/([^()]*)([()])//) {
- $before .= $1.$2;
- my $brace = $2;
- if ($brace eq '(') {
- $braces_count++;
- } else {
- $braces_count--;
- if ($braces_count == 0) {
- return ($before, $text, 0);
- }
- }
- } else {
- $before .= $text;
- $text = '';
- }
- }
- return ($before, undef, $braces_count);
-}
-
-# This only counts opening braces, and returns 0 once all the parentheses
-# are closed
-sub _count_opened_tree_braces($$);
-sub _count_opened_tree_braces($$)
-{
- my $current = shift;
- my $braces_count = shift;
- if (defined($current->{'text'})) {
- my ($before, $after);
- ($before, $after, $braces_count) = _find_end_brace($current->{'text'},
- $braces_count);
- }
- if ($current->{'args'}) {
- foreach my $arg (@{$current->{'args'}}) {
- $braces_count = _count_opened_tree_braces($arg, $braces_count);
- return $braces_count if ($braces_count == 0);
- }
- }
- if ($current->{'contents'}) {
- foreach my $content (@{$current->{'contents'}}) {
- $braces_count = _count_opened_tree_braces($content, $braces_count);
- return $braces_count if ($braces_count == 0);
- }
- }
- return $braces_count;
-}
-
-# retrieve a leading manual name in parentheses, if there is one.
-sub _parse_node_manual($)
-{
- my $node = shift;
- my @contents = @{$node->{'contents'}};
- _trim_spaces_comment_from_content(\@contents);
-
- my $manual;
- my $result;
-#print STDERR "RRR $contents[0] and $contents[0]->{'text'} \n";
- if ($contents[0] and $contents[0]->{'text'} and $contents[0]->{'text'} =~ /^\(/) {
- my $braces_count = 1;
- if ($contents[0]->{'text'} !~ /^\($/) {
- my $brace = shift @contents;
- my $brace_text = $brace->{'text'};
- $brace_text =~ s/^\(//;
- unshift @contents, { 'text' => $brace_text, 'type' => $brace->{'type'},
- 'parent' => $brace->{'parent'} } if $brace_text ne '';
- } else {
- shift @contents;
- }
- while(@contents) {
- my $content = shift @contents;
- if (!defined($content->{'text'}) or $content->{'text'} !~ /\)/) {
- push @$manual, $content;
- $braces_count = _count_opened_tree_braces($content, $braces_count);
- # This is an error, braces were closed in a command
- if ($braces_count == 0) {
- last;
- }
- } else {
- my ($before, $after);
- ($before, $after, $braces_count) = _find_end_brace($content->{'text'},
- $braces_count);
- if ($braces_count == 0) {
- $before =~ s/\)$//;
- push @$manual, { 'text' => $before, 'parent' => $content->{'parent'} }
- if ($before ne '');
- $after =~ s/^\s*//;
- unshift @contents, { 'text' => $after, 'parent' => $content->{'parent'} }
- if ($after ne '');
- last;
- } else {
- push @$manual, $content;
- }
- }
- }
- $result->{'manual_content'} = $manual if (defined($manual));
- }
- if (@contents) {
- $result->{'node_content'} = \@contents;
- $result->{'normalized'} =
- Texinfo::Convert::NodeNameNormalization::normalize_node({'contents' => \@contents});
- }
- return $result;
-}
-
-sub _parse_float_type($)
-{
- my $current = shift;
- if (@{$current->{'args'}}) {
- my @type_contents = @{$current->{'args'}->[0]->{'contents'}};
- _trim_spaces_comment_from_content(\@type_contents);
- if (@type_contents) {
- my $normalized
- = Texinfo::Convert::NodeNameNormalization::normalize_node(
- {'contents' => \@type_contents});
- $current->{'extra'}->{'type'}->{'content'} = \@type_contents;
- if ($normalized =~ /[^-]/) {
- $current->{'extra'}->{'type'}->{'normalized'} = $normalized;
- return 1;
- }
- }
- }
- $current->{'extra'}->{'type'}->{'normalized'} = '';
- return 0;
-}
-
-# used for definition line parsing
-sub _next_bracketed_or_word($$)
-{
- my $self = shift;
- my $contents = shift;
- return undef if (!scalar(@{$contents}));
- my $spaces;
- $spaces = shift @{$contents} if (defined($contents->[0]->{'text'}) and
- $contents->[0]->{'text'} !~ /\S/);
- if (defined($spaces)) {
- $spaces->{'type'} = 'spaces';
- chomp $spaces->{'text'};
- $spaces = undef if ($spaces->{'text'} eq '');
- }
- return ($spaces, undef) if (!scalar(@{$contents}));
-
- #print STDERR "BEFORE PROCESSING ".Texinfo::Convert::Texinfo::convert({'contents' => $contents});
- if ($contents->[0]->{'type'} and $contents->[0]->{'type'} eq 'bracketed') {
- #print STDERR "Return bracketed\n";
- my $bracketed = shift @{$contents};
- $self->_isolate_last_space($bracketed, 'empty_space_at_end_def_bracketed');
- my $bracketed_def_content = { 'contents' => $bracketed->{'contents'},
- 'parent' => $bracketed->{'parent'},
- 'type' => 'bracketed_def_content', };
- if ($bracketed->{'extra'} and $bracketed->{'extra'}->{'spaces_before_argument'}) {
- $bracketed_def_content->{'extra'}->{'spaces_before_argument'}
- = $bracketed->{'extra'}->{'spaces_before_argument'};
- }
- return ($spaces, $bracketed_def_content);
- } elsif ($contents->[0]->{'cmdname'}) {
- #print STDERR "Return command $contents->[0]->{'cmdname'}\n";
- return ($spaces, shift @{$contents});
- } else {
- #print STDERR "Process $contents->[0]->{'text'}\n";
- $contents->[0]->{'text'} =~ s/^(\s*)//;
- my $space_text = $1;
- $spaces = {'text' => $space_text, 'type' => 'spaces'} if ($space_text);
- $contents->[0]->{'text'} =~ s/^(\S+)//;
- shift @{$contents} if ($contents->[0]->{'text'} eq '');
- return ($spaces, {'text' => $1});
- }
-}
-
-# definition line parsing
-sub _parse_def($$$)
-{
- my $self = shift;
- my $command = shift;
- my $contents = shift;
-
- my @contents = @$contents;
- shift @contents if ($contents[0] and $contents[0]->{'type'}
- and $contents[0]->{'type'} eq 'empty_spaces_after_command');
- if ($def_aliases{$command}) {
- my $real_command = $def_aliases{$command};
- my $prepended = $def_map{$command}->{$real_command};
- my @prepended_content;
-
- my $text;
- my $in_bracketed;
- if ($prepended =~ /^\{/) {
- $text = $prepended;
- $text =~ s/\{([^\}]+)\}/$1/;
- $in_bracketed = 1;
- } else {
- $text = $prepended;
- }
- my $tree = $self->gdt($text);
- if ($in_bracketed or @{$tree->{'contents'}} > 1) {
- my $bracketed = { 'type' => 'bracketed' };
- $bracketed->{'contents'} = $tree->{'contents'};
- foreach my $content (@{$tree->{'contents'}}) {
- $content->{'parent'} = $bracketed;
- }
- @prepended_content = ($bracketed);
- } else {
- @prepended_content = (@{$tree->{'contents'}});
- }
- push @prepended_content, { 'text' => ' ' };
-
- unshift @contents, @prepended_content;
-
- $command = $def_aliases{$command};
- }
- foreach (my $i = 0; $i < scalar(@contents); $i++) {
- # copy, to avoid changing the original
- $contents[$i] = {'text' => $contents[$i]->{'text'}}
- if (defined($contents[$i]->{'text'}));
- }
- my @result;
- my @args = @{$def_map{$command}};
- my $arg_type;
- # Even when $arg_type is not set, that is for def* that is not documented
- # to take args, everything is as is arg_type was set to arg.
- $arg_type = pop @args if ($args[-1] eq 'arg' or $args[-1] eq 'argtype');
- foreach my $arg (@args) {
- #print STDERR "$command $arg"._print_current($contents[0]);
- #foreach my $content (@contents) {print STDERR " "._print_current($content)};
- #print STDERR " contents ->".Texinfo::Convert::Texinfo::convert ({'contents' => \@contents});
- my ($spaces, $next) = $self->_next_bracketed_or_word(\@contents);
- last if (!defined($next));
- #print STDERR "NEXT[$arg] ".Texinfo::Convert::Texinfo::convert($next)."\n";
- push @result, ['spaces', $spaces] if (defined($spaces));
- push @result, [$arg, $next];
- }
-
- my @args_results;
- while (@contents) {
- my ($spaces, $next) = $self->_next_bracketed_or_word(\@contents);
- push @args_results, ['spaces', $spaces] if (defined($spaces));
- last if (!defined($next));
- if (defined($next->{'text'})) {
- while (1) {
- if ($next->{'text'} =~ s/^([^\[\](),]+)//) {
- push @args_results, ['arg', {'text' => $1}];
- } elsif ($next->{'text'} =~ s/^([\[\](),])//) {
- push @args_results, ['delimiter',
- {'text' => $1, 'type' => 'delimiter'}];
- } else {
- last;
- }
- }
- } else {
- push @args_results, [ 'arg', $next ];
- }
- }
- if ($arg_type and $arg_type eq 'argtype') {
- my $next_is_type = 1;
- foreach my $arg(@args_results) {
- if ($arg->[0] eq 'spaces') {
- } elsif ($arg->[0] eq 'delimiter') {
- $next_is_type = 1;
- } elsif ($arg->[1]->{'cmdname'} and $arg->[1]->{'cmdname'} ne 'code') {
- $next_is_type = 1;
- } elsif ($next_is_type) {
- $arg->[0] = 'typearg';
- $next_is_type = 0;
- } else {
- $next_is_type = 1;
- }
- }
- }
- return [@result, @args_results];
-}
-
-# register a label, that is something that may be the target of a reference
-# and must be unique in the document. Corresponds with @node, @anchor and
-# @float second arg.
-sub _register_label($$$$)
-{
- my $self = shift;
- my $current = shift;
- my $label = shift;
- my $line_nr = shift;
- my $normalized = $label->{'normalized'};
- if (_ignore_global_commands($self)) {
- $current->{'extra'}->{'normalized'} = $normalized;
- $current->{'extra'}->{'node_content'} = $label->{'node_content'};
- return 0;
- } elsif ($self->{'labels'}->{$normalized}) {
- $self->line_error(sprintf($self->__("\@%s `%s' previously defined"),
- $current->{'cmdname'},
- Texinfo::Convert::Texinfo::convert({'contents' =>
- $label->{'node_content'}})),
- $line_nr);
- $self->line_error(sprintf($self->__("here is the previous definition as \@%s"),
- $self->{'labels'}->{$normalized}->{'cmdname'}),
- $self->{'labels'}->{$normalized}->{'line_nr'}, 1);
- return 0;
- } else {
- $current->{'extra'}->{'normalized'} = $normalized;
- $current->{'extra'}->{'node_content'} = $label->{'node_content'};
- $self->{'labels'}->{$normalized} = $current;
- return 1;
- }
-}
-
-sub _non_bracketed_contents($)
-{
- my $current = shift;
- if ($current->{'type'} and $current->{'type'} eq 'bracketed') {
- my $new = {};
- $new->{'contents'} = $current->{'contents'} if ($current->{'parent'});
- $new->{'parent'} = $current->{'parent'} if ($current->{'parent'});
- return $new;
- } else {
- return $current;
- }
-}
-
-# store an index entry.
-# $current is the command element.
-# $content holds the actual content.
-# for index entries and v|ftable items, it is the index entry content,
-# for def, it is the parsed arguments, based on the definition line
-# arguments.
-sub _enter_index_entry($$$$$$$)
-{
- my $self = shift;
- my $command_container = shift;
- my $command = shift;
- my $current = shift;
- my $content = shift;
- my $content_normalized = shift;
- my $line_nr = shift;
-
- $content_normalized = $content if (!defined($content_normalized));
-
- my $prefix = $self->{'command_index_prefix'}->{$command_container};
- my $index_name = $self->{'prefix_to_index_name'}->{$prefix};
- my $index = $self->{'index_names'}->{$index_name};
-
- my $number;
- unless (_ignore_global_commands($self)) {
- $number = (defined($index->{'index_entries'})
- ? (scalar(@{$index->{'index_entries'}}) + 1)
- : 1);
- }
- my $index_entry = { 'index_name' => $index_name,
- 'index_at_command' => $command,
- 'index_type_command' => $command_container,
- 'index_prefix' => $prefix,
- 'content' => $content,
- 'content_normalized' => $content_normalized,
- 'command' => $current,
- 'number' => $number,
- };
- if (@{$self->{'regions_stack'}}) {
- $index_entry->{'region'} = $self->{'regions_stack'}->[-1];
- } elsif ($self->{'current_node'}) {
- $index_entry->{'node'} = $self->{'current_node'};
- } elsif (!$self->{'current_section'}) {
- $self->line_warn(sprintf($self->__("entry for index `%s' outside of any node"),
- $index_name), $line_nr);
- }
- #print STDERR "INDEX ENTRY \@$command->{'cmdname'} $index_name($number)\n";
- unless (_ignore_global_commands($self)) {
- push @{$index->{'index_entries'}}, $index_entry;
- }
- $current->{'extra'}->{'index_entry'} = $index_entry;
-}
-
-# This is always called at command closing.
-sub _remove_empty_content_arguments($)
-{
- my $current = shift;
- my $type;
- if ($current->{'extra'}) {
- if ($current->{'extra'}->{'block_command_line_contents'}) {
- $type = 'block_command_line_contents';
- } elsif ($current->{'extra'}->{'brace_command_contents'}) {
- $type = 'brace_command_contents';
- }
- }
- if ($type) {
- while (@{$current->{'extra'}->{$type}}
- and not defined($current->{'extra'}->{$type}->[-1])) {
- pop @{$current->{'extra'}->{$type}};
- }
- delete $current->{'extra'}->{$type} if (!@{$current->{'extra'}->{$type}});
- delete $current->{'extra'} if (!keys(%{$current->{'extra'}}));
- }
-}
-
-sub _strip_macrobody_leading_space($$)
-{
- my $self = shift;
- my $text = shift;
- if ($self->{'MACRO_BODY_IGNORES_LEADING_SPACE'}) {
- $text =~ s/^\s*//mg;
- }
- return $text;
-}
-
-# close constructs and do stuff at end of line (or end of the document)
-sub _end_line($$$);
-sub _end_line($$$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
-
- my $current_old = $current;
-
- my $included_file = 0;
-
- # a line consisting only of spaces.
- if ($current->{'contents'} and @{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'empty_line') {
- print STDERR "END EMPTY LINE\n" if ($self->{'DEBUG'});
- if ($current->{'type'} and $current->{'type'} eq 'paragraph') {
- my $empty_line = pop @{$current->{'contents'}};
- $current = _end_paragraph($self, $current, $line_nr);
- push @{$current->{'contents'}}, $empty_line;
- $empty_line->{'parent'} = $current;
- } elsif ($current->{'type'}
- and $current->{'type'} eq 'preformatted'
- and $current->{'parent'}->{'type'}
- and $current->{'parent'}->{'type'} eq 'menu_entry_description') {
- my $empty_line = pop @{$current->{'contents'}};
- if ($current->{'type'} eq 'preformatted') {
- my $empty_preformatted = (!@{$current->{'contents'}});
- $current = $current->{'parent'};
- pop @{$current->{'contents'}} if ($empty_preformatted);
- }
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'preformatted') {
- $self->_bug_message("context $context instead of preformatted in empty line after menu_entry_description",
- $line_nr, $current);
- }
-
- # first parent is menu_entry
- $current = $current->{'parent'}->{'parent'};
-
- push @{$current->{'contents'}}, { 'type' => 'menu_comment',
- 'parent' => $current,
- 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- push @{$current->{'contents'}}, { 'type' => 'preformatted',
- 'parent' => $current,
- 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- push @{$current->{'contents'}}, { 'type' => 'after_description_line',
- 'text' => $empty_line->{'text'},
- 'parent' => $current };
- push @{$self->{'context_stack'}}, 'preformatted';
- print STDERR "MENU: END DESCRIPTION, OPEN COMMENT\n" if ($self->{'DEBUG'});
- } elsif (!$no_paragraph_contexts{$self->{'context_stack'}->[-1]}) {
- $current = _end_paragraph($self, $current, $line_nr);
- }
-
- # end of a menu line.
- } elsif ($current->{'type'}
- and ($current->{'type'} eq 'menu_entry_name'
- or $current->{'type'} eq 'menu_entry_node')) {
- my $empty_menu_entry_node = 0;
- my $end_comment;
- if ($current->{'type'} eq 'menu_entry_node') {
- if (@{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'cmdname'}
- and ($current->{'contents'}->[-1]->{'cmdname'} eq 'c'
- or $current->{'contents'}->[-1]->{'cmdname'} eq 'comment')) {
- $end_comment = pop @{$current->{'contents'}};
- }
- if (!@{$current->{'contents'}}
- # empty if only the end of line or spaces
- or (@{$current->{'contents'}} == 1
- and defined($current->{'contents'}->[-1]->{'text'})
- and $current->{'contents'}->[-1]->{'text'} !~ /\S/)) {
- $empty_menu_entry_node = 1;
- push @{$current->{'contents'}}, $end_comment if ($end_comment);
- }
- }
- # we abort the menu entry if there is no node name
- if ($empty_menu_entry_node
- or $current->{'type'} eq 'menu_entry_name') {
- my $description_or_menu_comment;
- print STDERR "FINALLY NOT MENU ENTRY\n" if ($self->{'DEBUG'});
- my $menu = $current->{'parent'}->{'parent'};
- my $menu_entry = pop @{$menu->{'contents'}};
- if (@{$menu->{'contents'}} and $menu->{'contents'}->[-1]->{'type'}
- and $menu->{'contents'}->[-1]->{'type'} eq 'menu_entry') {
- my $entry = $menu->{'contents'}->[-1];
- my $description;
- foreach my $entry_element (reverse(@{$entry->{'args'}})) {
- if ($entry_element->{'type'} eq 'menu_entry_description') {
- $description = $entry_element;
- last;
- }
- }
- if ($description) {
- $description_or_menu_comment = $description;
- } else {
- # Normally this cannot happen
- $self->_bug_message("No description in menu_entry",
- $line_nr, $current);
- push @{$entry->{'args'}}, {'type' => 'menu_entry_description',
- 'parent' => $entry,
- 'contents' => [] };
- $description_or_menu_comment = $entry->{'args'}->[-1];
- }
- } elsif (@{$menu->{'contents'}} and $menu->{'contents'}->[-1]->{'type'}
- and $menu->{'contents'}->[-1]->{'type'} eq 'menu_comment') {
- $description_or_menu_comment = $menu->{'contents'}->[-1];
- }
- if ($description_or_menu_comment) {
- $current = $description_or_menu_comment;
- if ($current->{'contents'}->[-1] and $current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'preformatted') {
- $current = $current->{'contents'}->[-1];
- } else {
- # this should not happen
- $self->_bug_message("description or menu comment not in preformatted",
- $line_nr, $current);
- push @{$current->{'contents'}}, {'type' => 'preformatted',
- 'parent' => $current,
- 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- }
- push @{$self->{'context_stack'}}, 'preformatted';
- } else {
- push @{$menu->{'contents'}}, {'type' => 'menu_comment',
- 'parent' => $menu,
- 'contents' => [] };
- $current = $menu->{'contents'}->[-1];
- push @{$current->{'contents'}}, {'type' => 'preformatted',
- 'parent' => $current,
- 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- push @{$self->{'context_stack'}}, 'preformatted';
- print STDERR "THEN MENU_COMMENT OPEN\n" if ($self->{'DEBUG'});
- }
- while (@{$menu_entry->{'args'}}) {
- my $arg = shift @{$menu_entry->{'args'}};
- if (defined($arg->{'text'})) {
- $current = _merge_text($self, $current, $arg->{'text'});
- } else {
- while (@{$arg->{'contents'}}) {
- my $content = shift @{$arg->{'contents'}};
- if (defined($content->{'text'})) {
- $current = _merge_text($self, $current,
- $content->{'text'});
- $content = undef;
- } else {
- $content->{'parent'} = $current;
- push @{$current->{'contents'}}, $content;
- }
- }
- }
- $arg = undef;
- }
- # MENU_COMMENT open
- $menu_entry = undef;
- } else {
- print STDERR "MENU ENTRY END LINE\n" if ($self->{'DEBUG'});
- $current = $current->{'parent'};
- $current = _enter_menu_entry_node($self, $current, $line_nr);
- if (defined($end_comment)) {
- $end_comment->{'parent'} = $current;
- push @{$current->{'contents'}}, $end_comment;
- }
- }
- # def line
- } elsif ($current->{'parent'}
- and $current->{'parent'}->{'type'}
- and $current->{'parent'}->{'type'} eq 'def_line') {
- my $def_context = pop @{$self->{'context_stack'}};
- if ($def_context ne 'def') {
- $self->_bug_message("context $def_context instead of def",
- $line_nr, $current);
- die;
- }
- my $def_command = $current->{'parent'}->{'extra'}->{'def_command'};
- my $arguments = $self->_parse_def($def_command,
- $current->{'contents'});
- if (scalar(@$arguments)) {
- $current->{'parent'}->{'extra'}->{'def_args'} = $arguments;
- my $def_parsed_hash;
- foreach my $arg (@$arguments) {
- die if (!defined($arg->[0]));
- last if ($arg->[0] eq 'arg' or $arg->[0] eq 'typearg'
- or $arg->[0] eq 'delimiter');
- next if ($arg->[0] eq 'spaces');
- # change of type is done in _parse_def.
- #if ($arg->[1]->{'type'} and $arg->[1]->{'type'} eq 'bracketed') {
- # $def_parsed_hash->{$arg->[0]} = { 'contents' => $arg->[1]->{'contents'},
- # 'type' => 'bracketed_def_content',
- # 'parent' => $arg->[1]->{'parent'}};
- #} else {
- # $def_parsed_hash->{$arg->[0]} = $arg->[1];
- #}
- $def_parsed_hash->{$arg->[0]} = $arg->[1];
- }
- $current->{'parent'}->{'extra'}->{'def_parsed_hash'} = $def_parsed_hash;
- # do an standard index entry tree
- my $index_entry;
- if (defined($def_parsed_hash->{'name'})) {
- $index_entry = $def_parsed_hash->{'name'}
- # empty bracketed
- unless ($def_parsed_hash->{'name'}->{'type'}
- and $def_parsed_hash->{'name'}->{'type'} eq 'bracketed_def_content'
- and (!$def_parsed_hash->{'name'}->{'contents'}
- or (!scalar(@{$def_parsed_hash->{'name'}->{'contents'}}))
- or (scalar(@{$def_parsed_hash->{'name'}->{'contents'}}) == 1
- and defined($def_parsed_hash->{'name'}->{'contents'}->[0]->{'text'})
- and $def_parsed_hash->{'name'}->{'contents'}->[0]->{'text'} !~ /\S/)));
- }
- if (defined($index_entry)) {
- my $index_contents_normalized;
- if ($def_parsed_hash->{'class'}) {
- if ($command_index_prefix{$def_command} eq 'f') {
- $index_entry = $self->gdt('{name} on {class}',
- {'name' => $def_parsed_hash->{'name'},
- 'class' => $def_parsed_hash->{'class'}});
- $index_contents_normalized
- = [_non_bracketed_contents($def_parsed_hash->{'name'}),
- { 'text' => ' on '},
- _non_bracketed_contents($def_parsed_hash->{'class'})];
- } elsif ($command_index_prefix{$def_command} eq 'v'
- and $def_command ne 'defcv') {
- $index_entry = $self->gdt('{name} of {class}',
- {'name' => $def_parsed_hash->{'name'},
- 'class' => $def_parsed_hash->{'class'}});
- $index_contents_normalized
- = [_non_bracketed_contents($def_parsed_hash->{'name'}),
- { 'text' => ' of '},
- _non_bracketed_contents($def_parsed_hash->{'class'})];
- }
- }
- $index_contents_normalized = [$index_entry]
- if (!defined($index_contents_normalized));
- my $index_contents;
- # 'root_line' is the container returned by gdt.
- if ($index_entry->{'type'} and $index_entry->{'type'} eq 'root_line') {
- $index_contents = $index_entry->{'contents'};
- } else {
- $index_contents = [$index_entry];
- }
- _enter_index_entry($self,
- $current->{'parent'}->{'extra'}->{'def_command'},
- $current->{'parent'}->{'extra'}->{'original_def_cmdname'},
- $current->{'parent'}, $index_contents,
- $index_contents_normalized, $line_nr);
- } else {
- $self->_command_warn($current->{'parent'}, $line_nr,
- $self->__('missing name for @%s'),
- $current->{'parent'}->{'extra'}->{'original_def_cmdname'});
- }
- } else {
- $self->_command_warn($current->{'parent'}, $line_nr,
- $self->__('missing category for @%s'),
- $current->{'parent'}->{'extra'}->{'original_def_cmdname'});
- }
- $current = $current->{'parent'}->{'parent'};
- $current = $self->_begin_preformatted($current);
-
- # other block command lines
- } elsif ($current->{'type'}
- and $current->{'type'} eq 'block_line_arg') {
- my $empty_text;
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'line') {
- $self->_bug_message("context $context instead of line in block_line_arg",
- $line_nr, $current);
- }
- # @multitable args
- if ($current->{'parent'}->{'cmdname'}
- and $current->{'parent'}->{'cmdname'} eq 'multitable') {
- # parse the prototypes and put them in a special arg
- my @prototype_row;
- # do the same but keeping spaces information
- my @prototype_line;
- foreach my $content (@{$current->{'contents'}}) {
- if ($content->{'type'} and $content->{'type'} eq 'bracketed') {
- push @prototype_row, { 'contents' => $content->{'contents'},
- 'parent' => $content->{'parent'},
- 'type' => 'bracketed_multitable_prototype'};
- push @prototype_line, $content;
- } elsif ($content->{'text'}) {
- if ($content->{'text'} =~ /\S/) {
- foreach my $prototype (split /\s+/, $content->{'text'}) {
- push @prototype_row, { 'text' => $prototype,
- 'type' => 'row_prototype' } unless ($prototype eq '');
- }
- }
- # The regexp breaks between characters, with a non space followed
- # by a space or a space followed by non space. It is like \b, but
- # for \s \S, and not \w \W.
- foreach my $prototype_or_space (split /(?<=\S)(?=\s)|(?=\S)(?<=\s)/,
- $content->{'text'}) {
- if ($prototype_or_space =~ /\S/) {
- push @prototype_line, {'text' => $prototype_or_space,
- 'type' => 'row_prototype' };
- } elsif ($prototype_or_space =~ /\s/) {
- push @prototype_line, {'text' => $prototype_or_space,
- 'type' => 'prototype_space' };
- }
- }
- } else {
- # FIXME could this happen? Should be a debug message?
- if (!$content->{'cmdname'}) {
- $self->_command_warn($current, $line_nr,
- $self->__("unexpected argument on \@%s line: %s"),
- $current->{'cmdname'},
- Texinfo::Convert::Texinfo::convert({ $content->{'contents'} }));
- } elsif ($content->{'cmdname'} eq 'c'
- or $content->{'cmdname'} eq 'comment') {
- } else {
- push @prototype_row, $content;
- push @prototype_line, $content;
- }
- }
- }
-
- my $multitable = $current->{'parent'};
- $multitable->{'extra'}->{'max_columns'} = scalar(@prototype_row);
- if (!scalar(@prototype_row)) {
- $self->_command_warn($multitable, $line_nr,
- $self->__("empty multitable"));
- }
- $multitable->{'extra'}->{'prototypes'} = \@prototype_row;
- $multitable->{'extra'}->{'prototypes_line'} = \@prototype_line;
-
- } else {
- $self->_isolate_last_space($current, 'space_at_end_block_command');
- $self->_register_command_arg($current, 'block_command_line_contents');
- }
- # @float args
- if ($current->{'parent'}->{'cmdname'}
- and $current->{'parent'}->{'cmdname'} eq 'float') {
- my $float = $current->{'parent'};
- $float->{'line_nr'} = $line_nr;
- my $type = '';
- if (@{$float->{'args'}}) {
- if ($float->{'args'}->[1]) {
- my $float_label = _parse_node_manual($float->{'args'}->[1]);
- _check_internal_node($self, $float_label, $line_nr);
- if (defined($float_label) and $float_label->{'node_content'}
- and $float_label->{'normalized'} =~ /[^-]/) {
- _register_label($self, $float, $float_label, $line_nr);
- }
- }
- _parse_float_type($float);
- $type = $float->{'extra'}->{'type'}->{'normalized'};
- }
- push @{$self->{'floats'}->{$type}}, $float
- unless (_ignore_global_commands($self));
- $float->{'float_section'} = $self->{'current_section'}
- if (defined($self->{'current_section'}));
- }
- $current = $current->{'parent'};
- delete $current->{'remaining_args'};
- # don't consider empty argument of block @-commands as argument,
- # reparent them as contents
- if ($current->{'args'}->[0]->{'contents'}->[0]
- and $current->{'args'}->[0]->{'contents'}->[0]->{'type'}
- and $current->{'args'}->[0]->{'contents'}->[0]->{'type'} eq 'empty_line_after_command')
- {
- my $empty_text = $current->{'args'}->[0]->{'contents'}->[0];
- $empty_text->{'parent'} = $current;
- unshift @{$current->{'contents'}}, $empty_text;
- delete $current->{'args'};
- }
- # Additionally, remove empty arguments as far as possible
- _remove_empty_content_arguments($current);
-
- if ($current->{'cmdname'}
- and $block_item_commands{$current->{'cmdname'}}) {
- if ($current->{'cmdname'} eq 'enumerate') {
- my $spec = 1;
- if ($current->{'extra'}->{'block_command_line_contents'}
- and defined($current->{'extra'}->{'block_command_line_contents'}->[0])) {
- if (scalar(@{$current->{'extra'}->{'block_command_line_contents'}->[0]}) > 1) {
- $self->_command_error($current, $line_nr,
- $self->__("superfluous argument to \@%s"),
- $current->{'cmdname'});
- }
- my $arg = $current->{'extra'}->{'block_command_line_contents'}->[0]->[0];
- if (!defined($arg->{'text'}) or $arg->{'text'} !~ /^(([[:digit:]]+)|([[:alpha:]]+))$/) {
- $self->_command_error($current, $line_nr,
- $self->__("bad argument to \@%s"),
- $current->{'cmdname'});
- } else {
- $spec = $arg->{'text'};
- }
- }
- $current->{'extra'}->{'enumerate_specification'} = $spec;
- } elsif ($item_line_commands{$current->{'cmdname'}}) {
- if (!$current->{'extra'}
- or !$current->{'extra'}->{'command_as_argument'}) {
- $self->_command_error($current, $line_nr,
- $self->__("%s requires an argument: the formatter for %citem"),
- $current->{'cmdname'}, ord('@'));
- } elsif (!$brace_commands{$current->{'extra'}->{'command_as_argument'}->{'cmdname'}}
- and !$self->{'definfoenclose'}->{$current->{'extra'}->{'command_as_argument'}->{'cmdname'}}) {
- $self->_command_error($current, $line_nr,
- $self->__("command \@%s not accepting argument in brace should not be on \@%s line"),
- $current->{'extra'}->{'command_as_argument'}->{'cmdname'},
- $current->{'cmdname'});
- delete $current->{'extra'}->{'command_as_argument'};
- }
- }
- # This code checks that the command_as_argument of the @itemize
- # is alone on the line, otherwise it is not a command_as_argument.
- if ($current->{'extra'}
- and $current->{'extra'}->{'command_as_argument'}
- and $current->{'cmdname'} eq 'itemize') {
- my @args = @{$current->{'args'}->[0]->{'contents'}};
- while (@args) {
- my $arg = shift @args;
- last if ($arg eq $current->{'extra'}->{'command_as_argument'});
- }
- while (@args) {
- my $arg = shift @args;
- if (!(($arg->{'cmdname'}
- and ($arg->{'cmdname'} eq 'c'
- or $arg->{'cmdname'} eq 'comment'))
- or (defined($arg->{'text'}) and $arg->{'text'} !~ /\S/))) {
- #print STDERR " -> stop at "._print_current($arg)."\n";
- delete $current->{'extra'}->{'command_as_argument'}->{'type'};
- delete $current->{'extra'}->{'command_as_argument'};
- last;
- }
- }
- }
- if ($current->{'extra'}
- and $current->{'extra'}->{'command_as_argument'}
- and $accent_commands{$current->{'extra'}->{'command_as_argument'}->{'cmdname'}}
- and ($current->{'cmdname'} eq 'itemize'
- or $item_line_commands{$current->{'cmdname'}})) {
- $self->_command_warn($current, $line_nr,
- $self->__("accent command `\@%s' not allowed as \@%s argument"),
- $current->{'extra'}->{'command_as_argument'}->{'cmdname'},
- $current->{'cmdname'});
- delete $current->{'extra'}->{'command_as_argument'};
- delete $current->{'extra'}->{'block_command_line_contents'};
- }
- if (!$current->{'extra'}->{'block_command_line_contents'}
- and $current->{'cmdname'} eq 'itemize') {
- $current->{'extra'}->{'block_command_line_contents'} = [
- [ { 'cmdname' => 'bullet',
- 'type' => 'command_as_argument',
- 'parent' => $current }
- ]
- ];
- $current->{'extra'}->{'command_as_argument'} =
- $current->{'extra'}->{'block_command_line_contents'}->[0]->[0];
- } elsif ($item_line_commands{$current->{'cmdname'}} and
- ! $current->{'extra'}->{'command_as_argument'}) {
- $current->{'extra'}->{'block_command_line_contents'} = [
- [ { 'cmdname' => 'asis',
- 'type' => 'command_as_argument',
- 'parent' => $current }
- ]
- ];
- $current->{'extra'}->{'command_as_argument'} =
- $current->{'extra'}->{'block_command_line_contents'}->[0]->[0];
- }
- push @{$current->{'contents'}}, { 'type' => 'before_item',
- 'contents' => [], 'parent', $current };
- $current = $current->{'contents'}->[-1];
- }
- if ($current->{'cmdname'} and $menu_commands{$current->{'cmdname'}}) {
- push @{$current->{'contents'}}, {'type' => 'menu_comment',
- 'parent' => $current,
- 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- print STDERR "MENU_COMMENT OPEN\n" if ($self->{'DEBUG'});
- push @{$self->{'context_stack'}}, 'preformatted';
- }
- $current = $self->_begin_preformatted($current);
-
- # if we are after a @end verbatim, we must restart a preformatted if needed,
- # since there is no @end command explicitly associated to raw commands
- # it won't be done elsewhere.
- } elsif ($current->{'contents'}
- and $current->{'contents'}->[-1]
- and $current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'empty_line_after_command'
- and $current->{'contents'}->[-1]->{'extra'}
- and $current->{'contents'}->[-1]->{'extra'}->{'command'}
- and $current->{'contents'}->[-1]->{'extra'}->{'command'}->{'cmdname'} eq 'verbatim') {
- $current = $self->_begin_preformatted($current);
- # misc command line arguments
- # Never go here if skipline/noarg/...
- } elsif ($current->{'type'}
- and $current->{'type'} eq 'misc_line_arg') {
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'line') {
- $self->_bug_message("context $context instead of line in misc_line_arg",
- $line_nr, $current);
- }
- $self->_isolate_last_space($current);
-
- # first parent is the @command, second is the parent
- $current = $current->{'parent'};
- my $misc_cmd = $current;
- my $command = $current->{'cmdname'};
- my $end_command;
- print STDERR "MISC END \@$command\n" if ($self->{'DEBUG'});
- if ($self->{'misc_commands'}->{$command} =~ /^\d$/) {
- my $args = _parse_line_command_args($self, $current, $line_nr);
- $current->{'extra'}->{'misc_args'} = $args if (defined($args));
- } elsif ($self->{'misc_commands'}->{$command} eq 'text') {
- my $text = Texinfo::Convert::Text::convert($current->{'args'}->[0],
- {'code' => 1,
- Texinfo::Common::_convert_text_options($self)});
- if ($text eq '') {
- $self->_command_warn($current, $line_nr,
- $self->__("\@%s missing argument"), $command);
- $current->{'extra'}->{'missing_argument'} = 1;
- } else {
- $current->{'extra'}->{'text_arg'} = $text;
- if ($command eq 'end') {
- # REMACRO
- my $line = $text;
- if ($line =~ s/^([[:alnum:]][[:alnum:]-]+)//) {
- $end_command = $1;
-
- if (!exists $block_commands{$end_command}) {
- $self->_command_warn($current, $line_nr,
- $self->__("unknown \@end %s"), $end_command);
- $end_command = undef;
- } else {
- print STDERR "END BLOCK $end_command\n" if ($self->{'DEBUG'});
- if ($block_commands{$end_command} eq 'conditional') {
- if (@{$self->{'conditionals_stack'}}
- and $self->{'conditionals_stack'}->[-1] eq $end_command) {
- pop @{$self->{'conditionals_stack'}};
- } else {
- $self->_command_error($current, $line_nr,
- $self->__("unmatched `%c%s'"), ord('@'), 'end');
- $end_command = undef;
- }
- }
- $current->{'extra'}->{'command_argument'} = $end_command
- if (defined($end_command));
- }
- if ($line =~ /\S/ and defined($end_command)) {
- my $texi_line
- = Texinfo::Convert::Texinfo::convert($current->{'args'}->[0]);
- $texi_line =~ s/^\s*([[:alnum:]][[:alnum:]-]+)//;
- $self->_command_error($current, $line_nr,
- $self->__("superfluous argument to \@%s %s: %s"),
- $command, $end_command, $texi_line);
- }
- } else {
- $self->_command_error($current, $line_nr,
- $self->__("bad argument to \@%s: %s"),
- $command, $line);
- }
- } elsif ($command eq 'include') {
- my $file = Texinfo::Common::locate_include_file($self, $text) ;
- if (defined($file)) {
- my $filehandle = do { local *FH };
- if (open ($filehandle, $file)) {
- $included_file = 1;
- binmode($filehandle, ":encoding($self->{'INPUT_PERL_ENCODING'})")
- if (defined($self->{'INPUT_PERL_ENCODING'}));
- print STDERR "Included $file($filehandle)\n" if ($self->{'DEBUG'});
- unshift @{$self->{'input'}}, {
- 'name' => $file,
- 'line_nr' => 0,
- 'pending' => [],
- 'fh' => $filehandle };
- } else {
- $self->_command_error($current, $line_nr,
- $self->__("\@%s: could not open %s: %s"),
- $command, $text, $!);
- }
- } else {
- $self->_command_error($current, $line_nr,
- $self->__("\@%s: could not find %s"),
- $command, $text);
- }
- } elsif ($command eq 'documentencoding') {
- my ($texinfo_encoding, $perl_encoding, $input_encoding)
- = Texinfo::Encoding::encoding_alias($text);
- $self->_command_warn($current, $line_nr,
- $self->__("encoding `%s' is not a canonical texinfo encoding"),
- $text)
- if (!$texinfo_encoding or $texinfo_encoding ne lc($text));
- if (! _ignore_global_commands($self)) {
- if ($input_encoding) {
- $current->{'extra'}->{'input_encoding_name'} = $input_encoding;
- }
- if (!$perl_encoding) {
- $self->_command_warn($current, $line_nr,
- $self->__("unrecognized encoding name `%s'"), $text);
- } else {
- $current->{'extra'}->{'input_perl_encoding'} = $perl_encoding;
-
- if ($input_encoding) {
- if (!$self->{'set'}->{'INPUT_ENCODING_NAME'}) {
- $self->{'INPUT_ENCODING_NAME'} = $input_encoding;
- $self->{'info'}->{'input_encoding_name'} = $input_encoding;
- }
- }
-
- if (!$self->{'set'}->{'INPUT_PERL_ENCODING'}) {
- $self->{'INPUT_PERL_ENCODING'} = $perl_encoding;
- $self->{'info'}->{'input_perl_encoding'} = $perl_encoding;
- foreach my $input (@{$self->{'input'}}) {
- binmode($input->{'fh'}, ":encoding($perl_encoding)") if ($input->{'fh'});
- }
- }
- }
- }
- } elsif ($command eq 'documentlanguage') {
- my @messages = Texinfo::Common::warn_unknown_language($text,
- $self->{'gettext'});
- foreach my $message(@messages) {
- $self->_command_warn($current, $line_nr, $message);
- }
- if (!$self->{'set'}->{'documentlanguage'}
- and !_ignore_global_commands($self)) {
- $self->{'documentlanguage'} = $text;
- }
- }
- }
- } elsif ($command eq 'node') {
- foreach my $arg (@{$current->{'args'}}) {
- my $node = _parse_node_manual($arg);
- push @{$current->{'extra'}->{'nodes_manuals'}}, $node;
- }
- if (_check_node_label($self, $current->{'extra'}->{'nodes_manuals'}->[0],
- $command, $line_nr)) {
- if (_register_label($self, $current,
- $current->{'extra'}->{'nodes_manuals'}->[0], $line_nr)) {
- $self->{'current_node'} = $current;
- push @{$self->{'nodes'}}, $current;
- }
- }
- } elsif ($command eq 'listoffloats') {
- # Empty listoffloats is allowed
- _parse_float_type($current);
- #if (!_parse_float_type($current)) {
- # $self->line_error (sprintf($self->__("\@%s missing argument"),
- # $command), $line_nr);
- #}
- # handle all the other 'line' commands. Here just check that they
- # have an argument and prepare contents without spaces.
- } else {
- my @contents = @{$current->{'args'}->[0]->{'contents'}};
- _trim_spaces_comment_from_content(\@contents);
- # empty @top is allowed
- if (!scalar(@contents) and $command ne 'top') {
- $self->_command_warn($current, $line_nr,
- $self->__("\@%s missing argument"), $command);
- $current->{'extra'}->{'missing_argument'} = 1;
- } else {
- $current->{'extra'}->{'misc_content'} = \@contents;
- if (($command eq 'item' or $command eq 'itemx')
- and $self->{'command_index_prefix'}->{$current->{'parent'}->{'cmdname'}}) {
- _enter_index_entry($self, $current->{'parent'}->{'cmdname'},
- $command, $current,
- $current->{'extra'}->{'misc_content'},
- undef, $line_nr);
- } elsif ($self->{'command_index_prefix'}->{$current->{'cmdname'}}) {
- _enter_index_entry($self, $current->{'cmdname'},
- $current->{'cmdname'}, $current,
- $current->{'extra'}->{'misc_content'},
- undef, $line_nr);
- $current->{'type'} = 'index_entry_command';
- }
- }
- if (defined($command_structuring_level{$command})) {
- $current->{'level'} = $command_structuring_level{$command};
- }
- }
- $current = $current->{'parent'};
- if ($end_command) {
- print STDERR "END COMMAND $end_command\n" if ($self->{'DEBUG'});
- my $end = pop @{$current->{'contents'}};
- if ($block_commands{$end_command} ne 'conditional') {
- my $closed_command;
- ($closed_command, $current)
- = _close_commands($self, $current, $line_nr, $end_command);
- my $inline_copying;
- if ($closed_command) {
- $misc_cmd->{'extra'}->{'command'} = $closed_command;
- $closed_command->{'extra'}->{'end_command'} = $misc_cmd;
- $self->_close_command_cleanup($closed_command);
- $end->{'parent'} = $closed_command;
-
- # register @insertcopying as a macro if INLINE_INSERTCOPYING is set.
- if ($end_command eq 'copying' and $self->{'INLINE_INSERTCOPYING'}) {
- # remove the end of line following @copying.
- my @contents = @{$closed_command->{'contents'}};
- shift @contents if ($contents[0] and $contents[0]->{'type'}
- and ($contents[0]->{'type'} eq 'empty_line_after_command'
- or $contents[0]->{'type'} eq 'empty_spaces_after_command'));
- # the macrobody is the @copying content converted to Texinfo.
- my $body = Texinfo::Convert::Texinfo::convert(
- {'contents' => \@contents});
-
- #chomp ($body);
- $self->{'macros'}->{'insertcopying'} = {
- 'args' => [{'text' => 'insertcopying', 'type' => 'macro_name'}],
- 'cmdname' => 'macro',
- 'extra' => {'macrobody' =>
- $self->_strip_macrobody_leading_space($body)}
- };
- $inline_copying = 1;
- print STDERR "INLINE_INSERTCOPYING as macro\n" if ($self->{'DEBUG'});
- }
- push @{$closed_command->{'contents'}}, $end;
-
- # closing a menu command, but still in a menu. Open a menu_comment
- if ($menu_commands{$closed_command->{'cmdname'}}
- and $self->{'context_stack'}->[-1] eq 'menu') {
- print STDERR "CLOSE MENU but still in menu context\n"
- if ($self->{'DEBUG'});
- push @{$current->{'contents'}}, {'type' => 'menu_comment',
- 'parent' => $current,
- 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- push @{$self->{'context_stack'}}, 'preformatted';
- }
- } else {
- #print STDERR "LLLLLLLLLLLL Cannot be here...\n";
- }
- $current = $self->_begin_preformatted($current)
- if ($close_preformatted_commands{$end_command});
- }
- } else {
- $current = $self->_begin_preformatted($current)
- if ($close_preformatted_commands{$command});
- }
- # if a file was included, remove completly the include file command.
- # Also ignore @setfilename in included file, as said in the manual.
- if ($included_file or ($command eq 'setfilename'
- and scalar(@{$self->{'input'}}) > 1)) {
- # TODO keep the information with sourcemark
- pop @{$current->{'contents'}};
- } elsif ($command eq 'setfilename'
- and ($self->{'current_node'} or $self->{'current_section'})) {
- $self->_command_warn($misc_cmd, $line_nr,
- $self->__("\@%s after the first element"), $command);
- # columnfractions
- } elsif ($command eq 'columnfractions') {
- # in a multitable, we are in a block_line_arg
- if (!$current->{'parent'} or !$current->{'parent'}->{'cmdname'}
- or $current->{'parent'}->{'cmdname'} ne 'multitable') {
- $self->_command_error($current, $line_nr,
- $self->__("\@%s only meaningful on a \@multitable line"),
- $command);
- } else {
- # This is the multitable block_line_arg line context
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'line') {
- $self->_bug_message("context $context instead of line for multitable",
- $line_nr, $current);
- }
- $current = $current->{'parent'};
- $current->{'extra'}->{'max_columns'} = 0;
- if (defined($misc_cmd->{'extra'}->{'misc_args'})) {
- $current->{'extra'}->{'max_columns'} =
- scalar(@{$misc_cmd->{'extra'}->{'misc_args'}});
- $current->{'extra'}->{'columnfractions'} = $misc_cmd->{'extra'}->{'misc_args'};
- }
- push @{$current->{'contents'}}, { 'type' => 'before_item',
- 'contents' => [], 'parent', $current };
- $current = $current->{'contents'}->[-1];
- }
- } elsif ($root_commands{$command}) {
- $current = $current->{'contents'}->[-1];
- delete $current->{'remaining_args'};
- $current->{'contents'} = [];
-
- # we never should be in a raw format bock, so we don't check for
- # _ignore_global_commands($self)
- # associate the section (not part) with the current node.
- if ($command ne 'node' and $command ne 'part') {
- if ($self->{'current_node'}
- and !$self->{'current_node'}->{'extra'}->{'associated_section'}) {
- $self->{'current_node'}->{'extra'}->{'associated_section'} = $current;
- $current->{'extra'}->{'associated_node'} = $self->{'current_node'};
- }
- if ($self->{'current_parts'}) {
- $current->{'extra'}->{'associated_part'} = $self->{'current_parts'}->[-1];
- foreach my $part (@{$self->{'current_parts'}}) {
- $part->{'extra'}->{'part_associated_section'} = $current;
- if ($current->{'cmdname'} eq 'top') {
- $self->line_warn(sprintf($self->__(
- "\@%s should not be associated with \@top"),
- $part->{'cmdname'}), $part->{'line_nr'});
- }
- }
- delete $self->{'current_parts'};
- }
- $self->{'current_section'} = $current;
- } elsif ($command eq 'part') {
- push @{$self->{'current_parts'}}, $current;
- if ($self->{'current_node'}
- and !$self->{'current_node'}->{'extra'}->{'associated_section'}) {
- $self->line_warn (sprintf($self->__(
- "\@node precedes \@%s, but parts may not be associated with nodes"),
- $command), $line_nr);
- }
- }
- }
- # do that last in order to have the line processed if one of the above
- # case is also set.
- } elsif (
- $current->{'contents'}
- and (scalar(@{$current->{'contents'}}) == 1
- and (($current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'empty_line_after_command'))
- or (scalar(@{$current->{'contents'}}) == 2
- and $current->{'contents'}->[-1]->{'cmdname'}
- and ($current->{'contents'}->[-1]->{'cmdname'} eq 'c'
- or $current->{'contents'}->[-1]->{'cmdname'} eq 'comment')
- and $current->{'contents'}->[-2]
- and $current->{'contents'}->[-2]->{'type'}
- and $current->{'contents'}->[-2]->{'type'} eq 'empty_line_after_command'))) {
- # empty line after a @menu or before a preformatted. Reparent to the menu
- # or other format
- if ($current->{'type'}
- and $preformatted_contexts{$current->{'type'}}) {
- my $parent = $current->{'parent'};
- if ($parent->{'type'} and $parent->{'type'} eq 'menu_comment'
- and scalar(@{$parent->{'contents'}}) == 1) {
- $parent = $parent->{'parent'};
- }
- my $to_reparent = pop @{$parent->{'contents'}};
- print STDERR "LINE AFTER COMMAND IN PREFORMATTED ($to_reparent->{'type'})\n" if ($self->{'DEBUG'});
- while (@{$current->{'contents'}}) {
- my $content = shift @{$current->{'contents'}};
- $content->{'parent'} = $parent;
- push @{$parent->{'contents'}}, $content;
- }
- push @{$parent->{'contents'}}, $to_reparent;
- }
- }
-
- # this happens if there is a nesting of line @-commands on a line.
- # they are reprocessed here.
- if ($self->{'context_stack'}->[-1] eq 'line'
- or $self->{'context_stack'}->[-1] eq 'def') {
- print STDERR "Still opened line command $self->{'context_stack'}->[-1]:"._print_current($current)
- if ($self->{'DEBUG'});
- if ($self->{'context_stack'}->[-1] eq 'def') {
- while ($current->{'parent'} and !($current->{'parent'}->{'type'}
- and $current->{'parent'}->{'type'} eq 'def_line')) {
- $current = $self->_close_current($current, $line_nr);
- }
- } else {
- while ($current->{'parent'} and !($current->{'type'}
- and ($current->{'type'} eq 'block_line_arg'
- or $current->{'type'} eq 'misc_line_arg'))) {
- $current = $self->_close_current($current, $line_nr);
- }
- }
-
- # check for infinite loop bugs...
- if ($current eq $current_old) {
- my $indent = '- ';
- my $tree_msg = $indent . _print_current($current);
- while ($current->{'parent'}) {
- $indent = '-'.$indent;
- $current = $current->{'parent'};
- $tree_msg .= $indent . _print_current($current);
- }
- $self->_bug_message("Nothing closed while a line context remains\n$tree_msg",
- $line_nr);
- die;
- }
-
- $current = $self->_end_line($current, $line_nr);
- }
- return $current;
-}
-
-# $command may be undef if we are after a wrong misc command such as
-# a buggy @tab.
-sub _start_empty_line_after_command($$$) {
- my $line = shift;
- my $current = shift;
- my $command = shift;
- $line =~ s/^([^\S\r\n]*)//;
- push @{$current->{'contents'}}, { 'type' => 'empty_line_after_command',
- 'text' => $1,
- 'parent' => $current,
- };
- if (defined($command)) {
- $current->{'contents'}->[-1]->{'extra'} = {'command' => $command};
- $command->{'extra'}->{'spaces_after_command'} = $current->{'contents'}->[-1];
- }
- return $line;
-}
-
-sub _check_empty_node($$$$)
-{
- my $self = shift;
- my $parsed_node = shift;
- my $command = shift;
- my $line_nr = shift;
- if (!defined($parsed_node) or !$parsed_node->{'node_content'}) {
- $self->line_error (sprintf($self->__("empty argument in \@%s"),
- $command), $line_nr);
- return 0;
- } elsif ($parsed_node->{'normalized'} !~ /[^-]/) {
- $self->line_error (sprintf($self->__("empty node name after expansion `%s'"),
- Texinfo::Convert::Texinfo::convert({'contents'
- => $parsed_node->{'node_content'}})),
- $line_nr);
- return 0;
- } else {
- return 1;
- }
-}
-
-sub _check_internal_node($$$)
-{
- my $self = shift;
- my $parsed_node = shift;
- my $line_nr = shift;
- if ($parsed_node and $parsed_node->{'manual_content'}) {
- $self->line_error (sprintf($self->__("syntax for an external node used for `%s'"),
- _node_extra_to_texi($parsed_node)), $line_nr)
- }
-}
-
-sub _check_node_label($$$$)
-{
- my $self = shift;
- my $parsed_node = shift;
- my $command = shift;
- my $line_nr = shift;
- _check_internal_node($self, $parsed_node, $line_nr);
- return _check_empty_node($self, $parsed_node, $command, $line_nr);
-}
-
-sub _register_extra_menu_entry_information($$;$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
-
- foreach my $arg (@{$current->{'args'}}) {
- if ($arg->{'type'} eq 'menu_entry_name') {
- $current->{'extra'}->{'menu_entry_name'} = $arg;
- my $normalized_menu_entry_name =
- Texinfo::Convert::NodeNameNormalization::normalize_node($arg);
- if ($normalized_menu_entry_name !~ /[^-]/) {
- $self->line_warn(sprintf($self->__("empty menu entry name in `%s'"),
- Texinfo::Convert::Texinfo::convert($current)), $line_nr);
- }
- } elsif ($arg->{'type'} eq 'menu_entry_node') {
- $self->_isolate_last_space($arg, 'space_at_end_menu_node');
- my $parsed_entry_node = _parse_node_manual($arg);
- if (! defined($parsed_entry_node)) {
- if ($self->{'SHOW_MENU'}) {
- $self->line_error ($self->__("empty node name in menu entry"), $line_nr);
- }
- } else {
- $current->{'extra'}->{'menu_entry_node'} = $parsed_entry_node;
- }
- } elsif ($arg->{'type'} eq 'menu_entry_description') {
- $current->{'extra'}->{'menu_entry_description'} = $arg;
- }
- }
-}
-
-sub _enter_menu_entry_node($$$)
-{
- my $self = shift;
- my $current = shift;
- my $line_nr = shift;
- my $description = { 'type' => 'menu_entry_description',
- 'contents' => [],
- 'parent' => $current };
- push @{$current->{'args'}}, $description;
- _register_extra_menu_entry_information($self, $current, $line_nr);
- $current->{'line_nr'} = $line_nr;
- $current = $description;
- push @{$current->{'contents'}}, {'type' => 'preformatted',
- 'parent' => $current,
- 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- push @{$self->{'context_stack'}}, 'preformatted';
- return $current;
-}
-
-sub _register_command_arg($$$)
-{
- my $self = shift;
- my $current = shift;
- my $type = shift;
- my @contents = @{$current->{'contents'}};
- _trim_spaces_comment_from_content(\@contents);
- if (scalar(@contents)) {
- push @{$current->{'parent'}->{'extra'}->{$type}}, \@contents;
- } else {
- push @{$current->{'parent'}->{'extra'}->{$type}}, undef;
- }
-}
-
-sub _command_with_command_as_argument($)
-{
- my $current = shift;
- return ($current and $current->{'type'}
- and $current->{'type'} eq 'block_line_arg'
- and $current->{'parent'}
- and $current->{'parent'}->{'cmdname'} and
- ($current->{'parent'}->{'cmdname'} eq 'itemize'
- or $item_line_commands{$current->{'parent'}->{'cmdname'}})
- and (scalar(@{$current->{'contents'}}) == 1
- or (scalar(@{$current->{'contents'}}) == 2
- and defined($current->{'contents'}->[0]->{'text'})
- and $current->{'contents'}->[0]->{'text'}
- =~ /^[^\S\r\n]*/)))
-}
-
-# $marked_as_invalid_command may be undef, if there is no
-# tree element because the @-command construct is incorrect, for example
-# wrong @tab.
-sub _mark_and_warn_invalid($$$$$)
-{
- my $self = shift;
- my $command = shift;
- my $invalid_parent = shift;
- my $line_nr = shift;
- my $marked_as_invalid_command = shift;
-
- if (defined($invalid_parent)) {
- $self->line_warn(sprintf($self->__("\@%s should not appear in \@%s"),
- $command, $invalid_parent), $line_nr);
- $marked_as_invalid_command->{'extra'}->{'invalid_nesting'} = 1
- if (defined($marked_as_invalid_command));
- }
-}
-# the different types
-#c 'menu_entry'
-#c 'menu_entry'
-# t 'menu_entry_leading_text'
-#
-#t 'macro_arg_name'
-#t 'macro_arg_args'
-#
-#t 'raw'
-#
-#t 'misc_arg'
-#c 'misc_line_arg'
-#
-#c 'block_line_arg'
-#
-#c 'brace_command_arg'
-#c 'brace_command_context'
-#
-#c 'before_item' what comes after @*table, @itemize, @enumerate before
-# an @item
-#
-#c 'paragraph'
-#
-#a 'def_line'
-#
-#special for @verb, type is the character
-
-# the main subroutine
-sub _parse_texi($;$)
-{
- my $self = shift;
- my $root = shift;
-
- $root = { 'contents' => [], 'type' => 'text_root' } if (!defined($root));
- my $current = $root;
-
- my $line_nr;
-
- NEXT_LINE:
- while (1) {
- my $line;
- ($line, $line_nr) = _next_text($self, $line_nr, $current);
- last if (!defined($line));
-
- if ($self->{'DEBUG'}) {
- $current->{'HERE !!!!'} = 1; # marks where we are in the tree
- if ($self->{'DEBUG'} >= 100) {
- local $Data::Dumper::Indent = 1;
- local $Data::Dumper::Purity = 1;
- print STDERR "".Data::Dumper->Dump([$root], ['$root']);
- }
- my $line_text = '';
- $line_text = "$line_nr->{'line_nr'}.$line_nr->{'macro'}" if ($line_nr);
- print STDERR "NEW LINE(".join('|', @{$self->{'context_stack'}}).":@{$self->{'conditionals_stack'}}:$line_text): $line";
- #print STDERR "CONTEXT_STACK ".join('|',@{$self->{'context_stack'}})."\n";
- delete $current->{'HERE !!!!'};
- }
-
- if (not
- # raw format or verb
- (($current->{'cmdname'}
- and $block_commands{$current->{'cmdname'}}
- and ($block_commands{$current->{'cmdname'}} eq 'raw'
- or $block_commands{$current->{'cmdname'}} eq 'conditional'))
- or
- ($current->{'parent'} and $current->{'parent'}->{'cmdname'}
- and $current->{'parent'}->{'cmdname'} eq 'verb')
- )
- # not def line
- and $self->{'context_stack'}->[-1] ne 'def') {
- print STDERR "BEGIN LINE\n" if ($self->{'DEBUG'});
- $line =~ s/^([^\S\r\n]*)//;
- push @{$current->{'contents'}}, { 'type' => 'empty_line',
- 'text' => $1,
- 'parent' => $current };
- }
-
- while (1) {
- # in a raw or ignored conditional block command
- if ($current->{'cmdname'} and
- $block_commands{$current->{'cmdname'}} and
- ($block_commands{$current->{'cmdname'}} eq 'raw'
- or $block_commands{$current->{'cmdname'}} eq 'conditional')) {
- # r?macro may be nested
- if (($current->{'cmdname'} eq 'macro'
- or $current->{'cmdname'} eq 'rmacro')
- and $line =~ /^\s*\@r?macro\s+/) {
- $line =~ s/\s*\@(r?macro)//;
- push @{$current->{'contents'}}, { 'cmdname' => $1,
- 'parent' => $current,
- 'contents' => [],
- 'extra' => {'arg_line' => $line }};
- $current = $current->{'contents'}->[-1];
- last;
- # ifclear/ifset may be nested
- } elsif (($current->{'cmdname'} eq 'ifclear'
- or $current->{'cmdname'} eq 'ifset'
- or $current->{'cmdname'} eq 'ifcommanddefined'
- or $current->{'cmdname'} eq 'ifcommandnotdefined')
- and $line =~ /^\s*\@$current->{'cmdname'}/) {
- $line =~ s/\s*\@($current->{'cmdname'})//;
- push @{$current->{'contents'}}, { 'cmdname' => $1,
- 'parent' => $current,
- 'contents' => [],
- 'extra' => {'line' => $line }};
- $current = $current->{'contents'}->[-1];
- last;
- } elsif ($line =~ /^(\s*?)\@end\s+([a-zA-Z][\w-]*)/
- and ($2 eq $current->{'cmdname'})) {
- my $end_command = $2;
- my $raw_command = $current;
- $line =~ s/^(\s*?)(\@end\s+$current->{'cmdname'})//;
- if ($1 eq '') {
- # FIXME exclude other formats, like @macro, @ifset, @ignore?
- if ($current->{'cmdname'} ne 'verbatim'
- and @{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'raw') {
- if ($current->{'contents'}->[-1]->{'text'} =~ s/(\n)//) {
- push @{$current->{'contents'}}, {'type' => 'last_raw_newline',
- 'text' => $1, 'parent' => $current};
- }
- }
- } else {
- push @{$current->{'contents'}},
- { 'text' => $1, 'type' => 'raw', 'parent' => $current };
- $self->line_warn(sprintf($self->__("\@end %s should only appear at a line beginning"),
- $end_command), $line_nr);
- }
- # if there is a user defined macro that expandes to spaces, there
- # will be a spurious warning.
- $self->line_warn(sprintf($self->
- __("superfluous argument to \@%s %s: %s"), 'end', $end_command,
- $line), $line_nr)
- if ($line =~ /\S/ and $line !~ /^\s*\@c(omment)?\b/);
- # store toplevel macro specification
- if (($end_command eq 'macro' or $end_command eq 'rmacro')
- and (! $current->{'parent'}
- or !$current->{'parent'}->{'cmdname'}
- or ($current->{'parent'}->{'cmdname'} ne 'macro'
- and $current->{'parent'}->{'cmdname'} ne 'rmacro'))) {
- $current->{'extra'}->{'macrobody'} =
- $self->_strip_macrobody_leading_space(
- Texinfo::Convert::Texinfo::convert({ 'contents'
- => $current->{'contents'} }));
- if ($current->{'args'} and $current->{'args'}->[0]
- and !_ignore_global_commands($self)) {
- my $name = $current->{'args'}->[0]->{'text'};
- if (exists($self->{'macros'}->{$name})) {
- $self->line_warn(sprintf($self->__("macro `%s' previously defined"),
- $name), $current->{'line_nr'});
- $self->line_warn(sprintf($self->__(
- "here is the previous definition of `%s'"),
- $name), $self->{'macros'}->{$name}->{'line_nr'});
- }
- if ($all_commands{$name}) {
- $self->line_warn(sprintf($self->__(
- "redefining Texinfo language command: \@%s"),
- $name), $current->{'line_nr'});
- }
- $self->{'macros'}->{$name} = $current
- unless ($current->{'extra'}->{'invalid_syntax'});
- }
- }
- $current = $current->{'parent'};
- if ($block_commands{$end_command} eq 'conditional') {
- # don't store ignored @if*
- my $conditional = pop @{$current->{'contents'}};
- if (!defined($conditional->{'cmdname'}
- or $conditional->{'cmdname'} ne $end_command)) {
- $self->_bug_message("Ignored command is not the conditional $end_command",
- $line_nr, $conditional);
- die;
- }
- # Ignore until end of line
- if ($line !~ /\n/) {
- ($line, $line_nr) = _new_line($self, $line_nr, $conditional);
- print STDERR "IGNORE CLOSE line: $line" if ($self->{'DEBUG'});
- }
- print STDERR "CLOSED conditional $end_command\n" if ($self->{'DEBUG'});
- last;
- } else {
- print STDERR "CLOSED raw $end_command\n" if ($self->{'DEBUG'});
- $line = _start_empty_line_after_command($line, $current, $raw_command);
- }
- } else {
- if (@{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'empty_line_after_command'
- and $current->{'contents'}->[-1]->{'text'} !~ /\n/
- and $line !~ /\S/) {
- $current->{'contents'}->[-1]->{'text'} .= $line;
- } else {
- push @{$current->{'contents'}},
- { 'text' => $line, 'type' => 'raw', 'parent' => $current };
- }
- last;
- }
- # in @verb. type should be 'brace_command_arg'
- } elsif ($current->{'parent'} and $current->{'parent'}->{'cmdname'}
- and $current->{'parent'}->{'cmdname'} eq 'verb') {
- # collect the first character if not already done
- if (!defined($current->{'parent'}->{'type'})) {
- if ($line =~ /^$/) {
- $current->{'parent'}->{'type'} = '';
- $self->line_error(sprintf($self->
- __("\@%s without associated character"), 'verb'), $line_nr);
- } else {
- $line =~ s/^(.)//;
- $current->{'parent'}->{'type'} = $1;
- }
- }
- my $char = quotemeta($current->{'parent'}->{'type'});
- if ($line =~ s/^(.*?)$char\}/\}/) {
- push @{$current->{'contents'}},
- { 'text' => $1, 'type' => 'raw', 'parent' => $current }
- if ($1 ne '');
- print STDERR "END VERB\n" if ($self->{'DEBUG'});
- } else {
- push @{$current->{'contents'}},
- { 'text' => $line, 'type' => 'raw', 'parent' => $current };
- print STDERR "LINE VERB: $line" if ($self->{'DEBUG'});
- last;
- }
- }
-
- # this mostly happens in the following cases:
- # after expansion of user defined macro that doesn't end with EOL
- # after a protection of @\n in @def* line
- # at the end of an expanded Texinfo fragment
- while ($line eq '') {
- print STDERR "EMPTY TEXT\n"
- if ($self->{'DEBUG'});
- ($line, $line_nr) = _next_text($self, $line_nr, $current);
- if (!defined($line)) {
- # end of the file or of a text fragment.
- $current = _end_line ($self, $current, $line_nr);
- # It may happen that there is an @include file on the line, it
- # will be picked up at NEXT_LINE, beginning a new line
- next NEXT_LINE;
- }
- }
-
- # handle user defined macros before anything else since
- # their expansion may lead to changes in the line
- # REMACRO
- if ($line =~ /^\@([[:alnum:]][[:alnum:]-]*)/
- and ($self->{'macros'}->{$1}
- or (exists $self->{'aliases'}->{$1} and
- $self->{'macros'}->{$self->{'aliases'}->{$1}}))) {
- $line =~ s/^\@([[:alnum:]][[:alnum:]-]*)//o;
- my $command = $1;
- my $alias_command;
- if (exists($self->{'aliases'}->{$command})) {
- $alias_command = $command;
- $command = $self->{'aliases'}->{$command};
- }
-
- my $expanded_macro = $self->{'macros'}->{$command};
- my $args_number = scalar(@{$expanded_macro->{'args'}}) -1;
- my $arguments = [];
- if ($line =~ s/^\s*{[^\S\f]*//) { # macro with args
- ($arguments, $line, $line_nr) =
- _expand_macro_arguments($self, $expanded_macro, $line, $line_nr);
- } elsif (($args_number >= 2) or ($args_number <1)) {
- # as agreed on the bug-texinfo mailing list, no warn when zero
- # arg and not called with {}.
- $self->line_warn(sprintf($self->__(
- "\@%s defined with zero or more than one argument should be invoked with {}"),
- $command), $line_nr)
- if ($args_number >= 2);
- } else {
- if ($line !~ /\n/) {
- ($line, $line_nr) = _new_line($self, $line_nr, $expanded_macro);
- $line = '' if (!defined($line));
- }
- $line =~ s/^[^\S\f]*// if ($line =~ /[\S\f]/);
- my $has_end_of_line = chomp $line;
- $arguments = [$line];
- $line = "\n" if ($has_end_of_line);
- }
- my $expanded = _expand_macro_body ($self, $expanded_macro,
- $arguments, $line_nr);
- print STDERR "MACROBODY: $expanded".'||||||'."\n"
- if ($self->{'DEBUG'});
- # empty result. It is ignored here.
- if ($expanded eq '') {
- next;
- }
- if ($self->{'MAX_MACRO_CALL_NESTING'}
- and scalar(@{$self->{'macro_stack'}}) > $self->{'MAX_MACRO_CALL_NESTING'}) {
- $self->line_warn(sprintf($self->__(
-"macro call nested too deeply (set MAX_NESTED_MACROS to override; current value %d)"),
- $self->{'MAX_MACRO_CALL_NESTING'}), $line_nr);
- next;
- }
- if ($expanded_macro->{'cmdname'} eq 'macro') {
- my $found = 0;
- foreach my $macro (@{$self->{'macro_stack'}}) {
- if ($macro->{'args'}->[0]->{'text'} eq $command) {
- $self->line_error(sprintf($self->__(
- "recursive call of macro %s is not allowed; use \@rmacro if needed"),
- $command), $line_nr);
- $found = 1;
- last;
- }
- }
- next if ($found);
- }
-
- unshift @{$self->{'macro_stack'}}, $expanded_macro;
- print STDERR "UNSHIFT MACRO_STACK: $expanded_macro->{'args'}->[0]->{'text'}\n"
- if ($self->{'DEBUG'});
- my $expanded_lines = _text_to_lines($expanded);
- chomp ($expanded_lines->[-1]);
- pop @$expanded_lines if ($expanded_lines->[-1] eq '');
- print STDERR "MACRO EXPANSION LINES: ".join('|', @$expanded_lines)
- ."|\nEND LINES MACRO EXPANSION\n" if ($self->{'DEBUG'});
- next if (!@$expanded_lines);
- my $new_lines = _complete_line_nr($expanded_lines,
- $line_nr->{'line_nr'}, $line_nr->{'file_name'},
- $expanded_macro->{'args'}->[0]->{'text'}, 1);
- $line_nr->{'end_macro'} = 1;
- unshift @{$self->{'input'}->[0]->{'pending'}}, [$line, $line_nr];
- my $new_text = shift @$new_lines;
- ($line, $line_nr) = ($new_text->[0], $new_text->[1]);
- unshift @{$self->{'input'}->[0]->{'pending'}}, @$new_lines;
-
- # Now handle all the cases that may lead to command closing
- # or following character association with an @-command, especially
- # accent command, that is handle @-command with braces that don't
- # always need a brace.
-
- # The condition below is only caught right after command opening,
- # otherwise we are in the 'args' and not right in the command container.
- } elsif ($current->{'cmdname'} and
- (defined($brace_commands{$current->{'cmdname'}}) or
- $self->{'definfoenclose'}->{$current->{'cmdname'}})
- and $line !~ /^{/) {
- # special case for @-command as argument of @itemize or @*table.
- if (_command_with_command_as_argument($current->{'parent'})) {
- delete $current->{'contents'};
- print STDERR "FOR PARENT \@$current->{'parent'}->{'parent'}->{'cmdname'} command_as_argument $current->{'cmdname'}\n" if ($self->{'DEBUG'});
- $current->{'type'} = 'command_as_argument' if (!$current->{'type'});
- $current->{'parent'}->{'parent'}->{'extra'}->{'command_as_argument'}
- = $current;
- $current = $current->{'parent'};
- # now accent commands
- } elsif ($accent_commands{$current->{'cmdname'}}) {
- if ($line =~ /^[^\S\r\n]/) {
- if ($current->{'cmdname'} =~ /^[a-zA-Z]/) {
- $line =~ s/^([^\S\r\n]+)//;
- $current->{'extra'}->{'spaces'} = ''
- if (!defined($current->{'extra'}->{'spaces'}));
- $current->{'extra'}->{'spaces'} .= $1;
- } else {
- $self->line_warn(sprintf($self->
- __("accent command `\@%s' must not be followed by whitespace"),
- $current->{'cmdname'}), $line_nr);
- $current = $current->{'parent'};
- }
- } elsif ($line =~ /^\@/) {
- $self->line_error(sprintf($self->
- __("use braces to give a command as an argument to \@%s"),
- $current->{'cmdname'}), $line_nr);
- $current = $current->{'parent'};
- } elsif ($line =~ s/^(.)//o) {
- print STDERR "ACCENT \@$current->{'cmdname'}\n"
- if ($self->{'DEBUG'});
- my $following_arg = {'type' => 'following_arg',
- 'parent' => $current};
- $following_arg->{'contents'} = [{ 'text' => $1,
- 'parent' => $following_arg } ];
- $current->{'args'} = [ $following_arg ];
- if ($current->{'cmdname'} eq 'dotless' and $1 ne 'i' and $1 ne 'j') {
- $self->line_error(sprintf($self->
- __("%c%s expects `i' or `j' as argument, not `%s'"),
- ord('@'), $current->{'cmdname'}, $1), $line_nr);
- }
- if ($current->{'cmdname'} =~ /^[a-zA-Z]/) {
- $current->{'args'}->[-1]->{'type'} = 'space_command_arg';
- }
- delete $current->{'contents'};
- $current = $current->{'parent'};
- } else { # The accent is at end of line
- # whitespace for commands with letter.
- print STDERR "STRANGE ACC \@$current->{'cmdname'}\n" if ($self->{'DEBUG'});
- $self->line_warn(sprintf($self->
- __("accent command `\@%s' must not be followed by new line"),
- $current->{'cmdname'}), $line_nr);
- $current = $current->{'parent'};
- }
- next;
- } else {
- # ignore space after a braced @-command like TeX does
- if ($self->{'IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME'}
- and $line =~ s/^\s+//) {
- next;
- }
- $self->line_error(sprintf($self->__("\@%s expected braces"),
- $current->{'cmdname'}), $line_nr);
- $current = $current->{'parent'};
- }
- # maybe a menu entry beginning: a * at the beginning of a menu line
- } elsif ($line =~ /^\*/ and $current->{'type'}
- and $current->{'type'} eq 'preformatted'
- and $current->{'parent'}->{'type'}
- and ($current->{'parent'}->{'type'} eq 'menu_comment'
- or $current->{'parent'}->{'type'} eq 'menu_entry_description')
- and @{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'empty_line'
- and $current->{'contents'}->[-1]->{'text'} eq '') {
- print STDERR "MENU STAR\n" if ($self->{'DEBUG'});
- _abort_empty_line($self, $current);
- $line =~ s/^\*//;
- push @{$current->{'contents'}}, { 'type' => 'menu_star',
- 'text' => '*' };
- # a space after a * at the beginning of a menu line
- } elsif ($line =~ /^\s+/ and $current->{'contents'}
- and @{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'menu_star') {
- print STDERR "MENU ENTRY (certainly)\n" if ($self->{'DEBUG'});
- # this is the menu star collected previously
- pop @{$current->{'contents'}};
- $line =~ s/^(\s+)//;
- my $leading_text = '*' . $1;
- if ($current->{'type'} eq 'preformatted'
- and $current->{'parent'}->{'type'}
- and $current->{'parent'}->{'type'} eq 'menu_comment') {
- my $menu = $current->{'parent'}->{'parent'};
- if (!@{$current->{'contents'}}) {
- pop @{$current->{'parent'}->{'contents'}};
- if (!scalar(@{$current->{'parent'}->{'contents'}})) {
- pop @{$menu->{'contents'}};
- }
- }
- $current = $menu;
- #print STDERR "Close MENU_COMMENT because new menu entry\n";
- } else {
- # first parent preformatted, third is menu_entry
- if ($current->{'type'} ne 'preformatted'
- or $current->{'parent'}->{'type'} ne 'menu_entry_description'
- or $current->{'parent'}->{'parent'}->{'type'} ne 'menu_entry'
- or !$menu_commands{$current->{'parent'}->{'parent'}->{'parent'}->{'cmdname'}}) {
- $self->_bug_message("Not in menu comment nor description",
- $line_nr, $current);
- }
- $current = $current->{'parent'}->{'parent'}->{'parent'};
- }
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'preformatted') {
- $self->_bug_message("context $context instead of preformatted after menu leading star",
- $line_nr, $current);
- }
- push @{$current->{'contents'}}, { 'type' => 'menu_entry',
- 'parent' => $current,
- };
- $current = $current->{'contents'}->[-1];
- $current->{'args'} = [ { 'type' => 'menu_entry_leading_text',
- 'text' => $leading_text,
- 'parent' => $current },
- { 'type' => 'menu_entry_name',
- 'contents' => [],
- 'parent' => $current } ];
- $current = $current->{'args'}->[-1];
- # * followed by something else than a space.
- } elsif ($current->{'contents'} and @{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'type'}
- and $current->{'contents'}->[-1]->{'type'} eq 'menu_star') {
- print STDERR "ABORT MENU STAR ($line)\n" if ($self->{'DEBUG'});
- delete $current->{'contents'}->[-1]->{'type'};
- # after a separator in menu
- } elsif ($current->{'args'} and @{$current->{'args'}}
- and $current->{'args'}->[-1]->{'type'}
- and $current->{'args'}->[-1]->{'type'} eq 'menu_entry_separator') {
- my $separator = $current->{'args'}->[-1]->{'text'};
- # separator is ::, we concatenate and let the while restart
- # in order to collect spaces below
- if ($separator eq ':' and $line =~ s/^(:)//) {
- $current->{'args'}->[-1]->{'text'} .= $1;
- # a . not followed by a space. Not a separator.
- } elsif ($separator eq '.' and $line =~ /^\S/) {
- pop @{$current->{'args'}};
- $current = $current->{'args'}->[-1];
- $current = _merge_text($self, $current, $separator);
- # here we collect spaces following separators.
- } elsif ($line =~ s/^([^\S\r\n]+)//) {
- # FIXME a trailing end of line could be considered to be part
- # of the separator. Right now it is part of the description,
- # since it is catched (in the next while) as one of the case below
- $current->{'args'}->[-1]->{'text'} .= $1;
- # now handle the menu part that was closed
- } elsif ($separator =~ /^::/) {
- print STDERR "MENU NODE no entry $separator\n" if ($self->{'DEBUG'});
- # it was previously registered as menu_entry_name, it is
- # changed to node
- $current->{'args'}->[-2]->{'type'} = 'menu_entry_node';
- $current = _enter_menu_entry_node($self, $current, $line_nr);
- # end of the menu entry name
- } elsif ($separator =~ /^:/) {
- print STDERR "MENU ENTRY $separator\n" if ($self->{'DEBUG'});
- push @{$current->{'args'}}, { 'type' => 'menu_entry_node',
- 'contents' => [],
- 'parent' => $current };
- $current = $current->{'args'}->[-1];
- # anything else is the end of the menu node following a menu_entry_name
- } else {
- print STDERR "MENU NODE $separator\n" if ($self->{'DEBUG'});
- $current = _enter_menu_entry_node($self, $current, $line_nr);
- }
- # REMACRO
- } elsif ($line =~ s/^\@(["'~\@\}\{,\.!\?\s\*\-\^`=:\|\/\\])//o
- or $line =~ s/^\@([[:alnum:]][[:alnum:]-]*)//o) {
- my $command = $1;
- my $alias_command;
- if (exists($self->{'aliases'}->{$command})) {
- $alias_command = $command;
- $command = $self->{'aliases'}->{$command};
- }
- print STDERR "COMMAND $command\n" if ($self->{'DEBUG'});
-
-
- if ($command eq 'value') {
- $line =~ s/^\s*//
- if ($self->{'IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME'});
- # REVALUE
- if ($line =~ s/^{([\w\-][^\s{\\}~`\^+"<>|@]*)}//) {
- my $value = $1;
- if (exists($self->{'values'}->{$value})) {
- if (!defined($self->{'values'}->{$value})) {
- print STDERR "BUG? $value exists but not defined\n";
- } elsif (!ref($self->{'values'}->{$value})) {
- $line = $self->{'values'}->{$value} . $line;
- # the push @{$current->{'contents'}}, {}; prevents a trailing
- # text to be merged, to avoid having the value tree modified.
- } elsif (ref($self->{'values'}->{$value}) eq 'ARRAY') {
- # we don't know for sure, but if we don't do it here it
- # won't be done
- _abort_empty_line($self, $current);
- foreach my $content (@{$self->{'values'}->{$value}}) {
- push @{$current->{'contents'}}, $content;
- }
- push @{$current->{'contents'}}, {};
- } elsif (ref($self->{'values'}->{$value}) eq 'HASH') {
- # we don't know for sure, but if we don't do it here it
- # won't be done
- _abort_empty_line($self, $current);
- my $content = $self->{'values'}->{$value};
- push @{$current->{'contents'}}, $content;
- push @{$current->{'contents'}}, {};
- }
- } else {
- # caller should expand something along
- # gdt('@{No value for `{value}\'@}', {'value' => $value}, {'keep_texi'=> 1});
- push @{$current->{'contents'}}, { 'cmdname' => 'value',
- 'type' => $value };
- $self->line_warn(
- sprintf($self->__("undefined flag: %s"), $value), $line_nr);
- }
- } else {
- $self->line_error($self->__("bad syntax for \@value"), $line_nr);
- }
- next;
- }
-
- if (defined($deprecated_commands{$command})) {
- if ($deprecated_commands{$command} eq '') {
- $self->line_warn(sprintf($self->__("%c%s is obsolete."),
- ord('@'), $command), $line_nr);
- } else {
- $self->line_warn(sprintf($self->__("%c%s is obsolete; %s"),
- ord('@'), $command,
- $self->__($deprecated_commands{$command})), $line_nr);
- }
- }
-
- if (not _abort_empty_line($self, $current)
- and $begin_line_commands{$command}) {
- $self->line_warn(
- sprintf($self->__("\@%s should only appear at a line beginning"),
- $command), $line_nr);
- }
-
- my $invalid_parent;
- # error messages for forbidden constructs, like @node in @r,
- # block command on line command, @xref in @anchor or node...
- if ($current->{'parent'}) {
- if ($current->{'parent'}->{'cmdname'}) {
- if (defined($self->{'valid_nestings'}->{$current->{'parent'}->{'cmdname'}})
- and !$self->{'valid_nestings'}->{$current->{'parent'}->{'cmdname'}}->{$command}
- # we make sure that we are on a root @-command line and
- # not in contents
- and (!$root_commands{$current->{'parent'}->{'cmdname'}}
- or ($current->{'type'}
- and $current->{'type'} eq 'misc_line_arg'))
- # we make sure that we are on a block @-command line and
- # not in contents
- and (!($block_commands{$current->{'parent'}->{'cmdname'}})
- or ($current->{'type'}
- and $current->{'type'} eq 'block_line_arg'))
- # we make sure that we are on an @item/@itemx line and
- # not in an @enumerate, @multitable or @itemize @item.
- and (($current->{'parent'}->{'cmdname'} ne 'itemx'
- and $current->{'parent'}->{'cmdname'} ne 'item')
- or ($current->{'type'}
- and $current->{'type'} eq 'misc_line_arg'))) {
- $invalid_parent = $current->{'parent'}->{'cmdname'};
- }
- } elsif ($self->{'context_stack'}->[-1] eq 'def'
- # FIXME instead of hardcoding in_full_line_commands_no_refs
- # it would be better to use the parent command valid_nesting.
- and !$in_full_line_commands_no_refs{$command}) {
- my $def_block = $current;
- while ($def_block->{'parent'} and (!$def_block->{'parent'}->{'type'}
- or $def_block->{'parent'}->{'type'} ne 'def_line')) {
- $def_block = $def_block->{'parent'};
- }
-
- $invalid_parent = $def_block->{'parent'}->{'parent'}->{'cmdname'};
- }
- }
-
- # special case with @ followed by a newline protecting end of lines
- # in @def*
- last if ($self->{'context_stack'}->[-1] eq 'def' and $command eq "\n");
-
- unless ($self->{'no_paragraph_commands'}->{$command}) {
- my $paragraph = _begin_paragraph($self, $current, $line_nr);
- $current = $paragraph if ($paragraph);
- }
-
- if ($self->{'close_paragraph_commands'}->{$command}) {
- $current = _end_paragraph($self, $current, $line_nr);
- }
- if ($self->{'close_preformatted_commands'}->{$command}) {
- $current = _end_preformatted($self, $current, $line_nr);
- }
-
- # commands without braces and not block commands, ie no @end
- if (defined($self->{'misc_commands'}->{$command})) {
- if ($root_commands{$command} or $command eq 'bye') {
- $current = _close_commands($self, $current, $line_nr, undef,
- $command);
- # root_level commands leads to setting a new root
- # for the whole document and stuffing the preceding text
- # as the first content, this is done only once.
- if ($current->{'type'} and $current->{'type'} eq 'text_root') {
- if ($command ne 'bye') {
- $root = { 'type' => 'document_root', 'contents' => [$current] };
- $current->{'parent'} = $root;
- $current = $root;
- }
- } else {
- die if (!defined($current->{'parent'}));
- $current = $current->{'parent'};
- }
- }
-
- # noarg skipline skipspace text line lineraw /^\d$/
- my $arg_spec = $self->{'misc_commands'}->{$command};
- my $misc;
-
- if ($arg_spec eq 'noarg') {
- my $ignored = 0;
- my $only_in_headings = 0;
- if ($command eq 'insertcopying') {
- my $parent = $current;
- while ($parent) {
- if ($parent->{'cmdname'} and $parent->{'cmdname'} eq 'copying') {
- $self->line_error(
- sprintf($self->__("\@%s not allowed inside `\@%s' block"),
- $command, $parent->{'cmdname'}), $line_nr);
- $ignored = 1;
- last;
- }
- $parent = $parent->{'parent'};
- }
- } elsif ($in_heading_commands{$command}) {
- $self->line_error(
- sprintf($self->__("\@%s should only appear in heading or footing"),
- $command), $line_nr);
- $only_in_headings = 1;
- }
- if (!$ignored) {
- $misc = {'cmdname' => $command,
- 'parent' => $current};
- push @{$current->{'contents'}}, $misc;
- # also sets invalid_nesting in that case
- $misc->{'extra'}->{'invalid_nesting'} = 1 if ($only_in_headings);
- $self->_register_global_command($command, $misc, $line_nr);
- }
- $self->_mark_and_warn_invalid($command, $invalid_parent,
- $line_nr, $misc);
- $current = $self->_begin_preformatted($current)
- if ($close_preformatted_commands{$command});
-
- # all the cases using the raw line
- } elsif ($arg_spec eq 'skipline' or $arg_spec eq 'lineraw'
- or $arg_spec eq 'special') {
- # complete the line if there was a user macro expansion
- if ($line !~ /\n/) {
- my ($new_line, $new_line_nr) = _new_line($self, $line_nr, undef);
- $line .= $new_line if (defined($new_line));
- }
- $misc = {'cmdname' => $command,
- 'parent' => $current};
- my $args = [];
- my $has_comment;
- if ($arg_spec eq 'lineraw' or $arg_spec eq 'skipline') {
- $args = [ $line ];
- } elsif ($arg_spec eq 'special') {
- ($args, $has_comment)
- = $self->_parse_special_misc_command($line, $command, $line_nr);
- $misc->{'extra'}->{'arg_line'} = $line;
- }
-
- # if using the @set txi* instead of a proper @-command, replace
- # by the tree obtained with the @-command. Even though
- # _end_line is called below, as $current is not misc_line_arg
- # there should not be anything done in addition than what is
- # done for @clear or @set.
- if (($command eq 'set' or $command eq 'clear')
- and scalar(@$args) >= 1
- and $set_flag_command_equivalent{$args->[0]}) {
- my $arg;
- if ($command eq 'set') {
- $arg = 'on';
- } else {
- $arg = 'off';
- }
- $command = $set_flag_command_equivalent{$args->[0]};
- $misc = {'cmdname' => $command,
- 'parent' => $current,
- 'line_nr' => $line_nr,
- 'extra' => {'misc_args' => [$arg]}};
- my $misc_line_args = {'type' => 'misc_line_arg',
- 'parent' => $misc};
- $misc->{'args'} = [$misc_line_args];
- my $spaces_after_command
- = { 'type' => 'empty_spaces_after_command',
- 'text' => ' ',
- 'parent' => $misc_line_args,
- 'extra' => {'command' => $misc} };
- $misc->{'extra'}->{'spaces_after_command'}
- = $spaces_after_command;
- $misc_line_args->{'contents'} = [ $spaces_after_command,
- { 'text' => $arg,
- 'parent' => $misc_line_args, },
- { 'text' => "\n",
- 'parent' => $misc_line_args,
- 'type' => 'spaces_at_end', } ];
- push @{$current->{'contents'}}, $misc;
- } else {
- push @{$current->{'contents'}}, $misc;
- foreach my $arg (@$args) {
- push @{$misc->{'args'}},
- { 'type' => 'misc_arg', 'text' => $arg,
- 'parent' => $current->{'contents'}->[-1] };
- }
- $misc->{'extra'}->{'misc_args'} = $args
- if (scalar(@$args) and $arg_spec ne 'skipline');
- }
- if (! _ignore_global_commands($self)) {
- if ($command eq 'raisesections') {
- $self->{'sections_level'}++;
- } elsif ($command eq 'lowersections') {
- $self->{'sections_level'}--;
- } elsif ($command eq 'novalidate') {
- $self->{'novalidate'} = 1;
- }
- }
- $self->_mark_and_warn_invalid($command, $invalid_parent,
- $line_nr, $misc);
- $self->_register_global_command($command, $misc, $line_nr);
- # the end of line is ignored for special commands
- if ($arg_spec ne 'special' or !$has_comment) {
- $current = _end_line($self, $current, $line_nr);
- }
-
- last NEXT_LINE if ($command eq 'bye');
- # Even if _end_line is called, it is not done since there is
- # no misc_line_arg
- $current = $self->_begin_preformatted($current)
- if ($close_preformatted_commands{$command});
- last;
- } else {
- # $arg_spec is text, line, skipspace or a number
- my $line_arg = 0;
- $line_arg = 1 if ($arg_spec ne 'skipspace');
- if ($command eq 'item' or $command eq 'itemx'
- or $command eq 'headitem' or $command eq 'tab') {
- my $parent;
- # itemize or enumerate
- if ($parent = _item_container_parent($current)) {
- if ($command eq 'item') {
- print STDERR "ITEM_CONTAINER\n" if ($self->{'DEBUG'});
- $parent->{'items_count'}++;
- $misc = { 'cmdname' => $command, 'parent' => $parent,
- 'contents' => [],
- 'extra' =>
- {'item_number' => $parent->{'items_count'}} };
- push @{$parent->{'contents'}}, $misc;
- $current = $parent->{'contents'}->[-1];
- } else {
- $self->line_error(sprintf($self->__(
- "\@%s not meaningful inside `\@%s' block"),
- $command, $parent->{'cmdname'}), $line_nr);
- }
- $current = $self->_begin_preformatted($current);
- # *table
- } elsif ($parent = _item_line_parent($current)) {
- if ($command eq 'item' or $command eq 'itemx') {
- print STDERR "ITEM_LINE\n" if ($self->{'DEBUG'});
- $current = $parent;
- $self->_gather_previous_item($current, $command, $line_nr);
- $misc = { 'cmdname' => $command, 'parent' => $current };
- push @{$current->{'contents'}}, $misc;
- # since in the %misc_commands hash the entry for those
- # commands is 'skipspace' we set $line_arg here.
- $line_arg = 1;
- } else {
- $self->line_error(sprintf($self->__(
- "\@%s not meaningful inside `\@%s' block"),
- $command, $parent->{'cmdname'}), $line_nr);
- $current = $self->_begin_preformatted($current);
- }
- # multitable
- } elsif ($parent = _item_multitable_parent($current)) {
- if ($command eq 'item' or $command eq 'headitem'
- or $command eq 'tab') {
- if (!$parent->{'extra'}->{'max_columns'}) {
- $self->line_warn(
- sprintf($self->__("\@%s in empty multitable"),
- $command), $line_nr);
- } elsif ($command eq 'tab') {
- my $row = $parent->{'contents'}->[-1];
- die if (!$row->{'type'});
- if ($row->{'type'} eq 'before_item') {
- $self->line_error($self->__("\@tab before \@item"), $line_nr);
- } elsif ($row->{'cells_count'} >= $parent->{'extra'}->{'max_columns'}) {
- $self->line_error(sprintf($self->__(
- "too many columns in multitable item (max %d)"),
- $parent->{'extra'}->{'max_columns'}), $line_nr);
- } else {
- $row->{'cells_count'}++;
- $misc = { 'cmdname' => $command,
- 'parent' => $row,
- 'contents' => [],
- 'extra' =>
- {'cell_number' => $row->{'cells_count'}} };
- push @{$row->{'contents'}}, $misc;
- $current = $row->{'contents'}->[-1];
- #$current = $self->_begin_preformatted($current);
- print STDERR "TAB\n" if ($self->{'DEBUG'});
- }
- } else {
- print STDERR "ROW\n" if ($self->{'DEBUG'});
- $parent->{'rows_count'}++;
- my $row = { 'type' => 'row', 'contents' => [],
- 'cells_count' => 1,
- 'extra' => {'row_number' => $parent->{'rows_count'} },
- 'parent' => $parent };
- push @{$parent->{'contents'}}, $row;
- $misc = { 'cmdname' => $command,
- 'parent' => $row,
- 'contents' => [],
- 'extra' => {'cell_number' => 1}};
- push @{$row->{'contents'}}, $misc;
- $current = $row->{'contents'}->[-1];
- }
- } else {
- $self->line_error(sprintf($self->__(
- "\@%s not meaningful inside `\@%s' block"),
- $command, $parent->{'cmdname'}), $line_nr);
- }
- $current = $self->_begin_preformatted($current);
- } elsif ($command eq 'tab') {
- $self->line_error($self->__(
- "ignoring \@tab outside of multitable"), $line_nr);
- $current = $self->_begin_preformatted($current);
- } else {
- $self->line_error (sprintf($self->__(
- "\@%s outside of table or list"), $command), $line_nr);
- $current = $self->_begin_preformatted($current);
- }
- $misc->{'line_nr'} = $line_nr if (defined($misc));
- } else {
- $misc = { 'cmdname' => $command, 'parent' => $current,
- 'line_nr' => $line_nr };
- push @{$current->{'contents'}}, $misc;
- if ($self->{'sections_level'} and $root_commands{$command}
- and $command ne 'node' and $command ne 'part') {
- $current->{'contents'}->[-1]->{'extra'}->{'sections_level'}
- = $self->{'sections_level'};
- }
- # def*x
- if ($def_commands{$command}) {
- my $base_command = $command;
- $base_command =~ s/x$//;
- # check that the def*x is first after @def*, no paragraph
- # in-between.
- my $after_paragraph = _check_no_text($current);
- push @{$self->{'context_stack'}}, 'def';
- $current->{'contents'}->[-1]->{'type'} = 'def_line';
- $current->{'contents'}->[-1]->{'extra'} =
- {'def_command' => $base_command,
- 'original_def_cmdname' => $command};
- if ($current->{'cmdname'}
- and $current->{'cmdname'} eq $base_command) {
- pop @{$current->{'contents'}};
- _gather_def_item($current, $command);
- push @{$current->{'contents'}}, $misc;
- }
- if (!$current->{'cmdname'}
- or $current->{'cmdname'} ne $base_command
- or $after_paragraph) {
- $self->line_error(sprintf($self->__(
- "must be after `\@%s' to use `\@%s'"),
- $base_command, $command), $line_nr);
- $current->{'contents'}->[-1]->{'extra'}->{'not_after_command'} = 1;
- }
- }
- }
- # a container for what is on the @-command line, considered to
- # be the @-command argument
- if ($line_arg) {
- $current = $current->{'contents'}->[-1];
- $current->{'args'} = [{ 'type' => 'misc_line_arg',
- 'contents' => [],
- 'parent' => $current }];
- # @node is the only misc command with args separated with comma
- # FIXME a 3 lingering here deep into the code may not
- # be very wise... However having a hash only for one @-command
- # is not very appealing either...
- if ($command eq 'node') {
- $current->{'remaining_args'} = 3;
- } elsif ($command eq 'author') {
- my $parent = $current;
- my $found;
- while ($parent->{'parent'}) {
- $parent = $parent->{'parent'};
- last if ($parent->{'type'}
- and $parent->{'type'} eq 'brace_command_context');
- if ($parent->{'cmdname'}) {
- if ($parent->{'cmdname'} eq 'titlepage') {
- push @{$self->{'extra'}->{'author'}}, $current;
- $current->{'extra'}->{'titlepage'} = $parent;
- $found = 1;
- } elsif ($parent->{'cmdname'} eq 'quotation' or
- $parent->{'cmdname'} eq 'smallquotation') {
- push @{$parent->{'extra'}->{'authors'}}, $current;
- $current->{'extra'}->{'quotation'} = $parent;
- $found = 1;
- }
- last if ($found);
- }
- }
- if (!$found) {
- $self->line_warn(sprintf($self->__(
- "\@%s not meaningful outside `\@titlepage' and `\@quotation' environments"),
- $command), $current->{'line_nr'});
- }
- } elsif ($command eq 'dircategory' and $self->{'current_node'}) {
- $self->line_warn($self->__("\@dircategory after first node"),
- $line_nr);
- }
-
- $current = $current->{'args'}->[-1];
- push @{$self->{'context_stack'}}, 'line'
- unless ($def_commands{$command});
- }
- $line = _start_empty_line_after_command($line, $current, $misc);
- }
- $self->_mark_and_warn_invalid($command, $invalid_parent,
- $line_nr, $misc);
-
- $self->_register_global_command($command, $misc, $line_nr);
- if ($command eq 'dircategory'
- and ! _ignore_global_commands($self)) {
- push @{$self->{'info'}->{'dircategory_direntry'}}, $misc;
- }
- # @-command with matching @end opening
- } elsif (exists($block_commands{$command})) {
- if ($command eq 'macro' or $command eq 'rmacro') {
- my $macro = _parse_macro_command_line($self, $command, $line,
- $current, $line_nr);
- push @{$current->{'contents'}}, $macro;
- $self->_mark_and_warn_invalid($command, $invalid_parent,
- $line_nr, $current->{'contents'}->[-1]);
- $current = $current->{'contents'}->[-1];
- last;
- } elsif ($block_commands{$command} eq 'conditional') {
- my $ifvalue_true = 0;
- if ($command eq 'ifclear' or $command eq 'ifset') {
- # REVALUE
- if ($line =~ /^\s+([\w\-][^\s{\\}~`\^+"<>|@]*)\s*(\@(c|comment)((\@|\s+).*)?)?$/) {
- my $name = $1;
- if ((exists($self->{'values'}->{$name}) and $command eq 'ifset')
- or (!exists($self->{'values'}->{$name})
- and $command eq 'ifclear')) {
- $ifvalue_true = 1;
- }
- print STDERR "CONDITIONAL \@$command $name: $ifvalue_true\n" if ($self->{'DEBUG'});
- } elsif ($line !~ /\S/) {
- $self->line_error(sprintf($self->
- __("%c%s requires a name"), ord('@'), $command), $line_nr);
- } else {
- $self->line_error(sprintf($self->
- __("bad name for \@%s"), $command), $line_nr);
- }
- } elsif ($command eq 'ifcommanddefined'
- or $command eq 'ifcommandnotdefined') {
- # REMACRO
- if ($line =~ /^\s+([[:alnum:]][[:alnum:]\-]*)\s*(\@(c|comment)((\@|\s+).*)?)?$/) {
- my $name = $1;
- my $command_is_defined = (
- exists($Texinfo::Common::all_commands{$name})
- or $self->{'macros'}->{$name}
- or $self->{'definfoenclose'}->{$name}
- or $self->{'aliases'}->{$name}
- or $self->{'command_index_prefix'}->{$name}
- );
- if (($command_is_defined
- and $command eq 'ifcommanddefined')
- or (! $command_is_defined
- and $command eq 'ifcommandnotdefined')) {
- $ifvalue_true = 1;
- }
- print STDERR "CONDITIONAL \@$command $name: $ifvalue_true\n" if ($self->{'DEBUG'});
- } elsif ($line !~ /\S/) {
- $self->line_error(sprintf($self->
- __("%c%s requires a name"), ord('@'), $command), $line_nr);
- } else {
- $self->line_error(sprintf($self->
- __("bad name for \@%s"), $command), $line_nr);
- }
- } elsif ($command =~ /^ifnot(.*)/) {
- $ifvalue_true = 1 if !($self->{'expanded_formats_hash'}->{$1}
- # exception as explained in the texinfo manual
- or ($1 eq 'info'
- and $self->{'expanded_formats_hash'}->{'plaintext'}));
- print STDERR "CONDITIONAL \@$command format $1: $ifvalue_true\n" if ($self->{'DEBUG'});
- } else {
- die unless ($command =~ /^if(.*)/);
- $ifvalue_true = 1 if ($self->{'expanded_formats_hash'}->{$1}
- or ($1 eq 'info'
- and $self->{'expanded_formats_hash'}->{'plaintext'}));
- print STDERR "CONDITIONAL \@$command format $1: $ifvalue_true\n" if ($self->{'DEBUG'});
- }
- if ($ifvalue_true) {
- push @{$self->{'conditionals_stack'}}, $command;
- } else {
- push @{$current->{'contents'}}, { 'cmdname' => $command,
- 'parent' => $current,
- 'contents' => [] };
- $current = $current->{'contents'}->[-1];
- }
- # FIXME(Karl) ignore what is remaining on the line, to eat
- # the end of line?
- last;
- } else {
- my $block;
- # a menu command closes a menu_comment, but not the other
- # block commands. This won't catch menu commands buried in
- # other formats (that are incorrect anyway).
- if ($menu_commands{$command} and $current->{'type'}
- and ($current->{'type'} eq 'menu_comment'
- or $current->{'type'} eq 'menu_entry_description')) {
-
- my $menu;
-
- $menu = $current->{'parent'};
- pop @{$menu->{'contents'}}
- if (!@{$current->{'contents'}});
-
- my $context = pop @{$self->{'context_stack'}};
- if ($context ne 'preformatted') {
- $self->_bug_message("context $context instead of preformatted in new menu",
- $line_nr, $current);
- }
-
- if ($menu->{'type'} and $menu->{'type'} eq 'menu_entry') {
- $menu = $menu->{'parent'};
- }
-
- $current = $menu;
- }
- # the def command holds a line_def* which corresponds with the
- # definition line. This allows to have a treatement similar
- # with def*x.
- if ($def_commands{$command}) {
- push @{$self->{'context_stack'}}, 'def';
- $block = { 'parent' => $current,
- 'cmdname' => $command,
- 'contents' => [] };
- push @{$current->{'contents'}}, $block;
- $current = $current->{'contents'}->[-1];
- push @{$current->{'contents'}}, {
- 'type' => 'def_line',
- 'parent' => $current,
- 'line_nr' => $line_nr,
- 'extra' =>
- {'def_command' => $command,
- 'original_def_cmdname' => $command}
- };
- } else {
- $block = { 'cmdname' => $command,
- 'parent' => $current,
- 'contents' => [] };
- push @{$current->{'contents'}}, $block;
- }
- $current = $current->{'contents'}->[-1];
-
- if ($block_arg_commands{$command}) {
- if ($preformatted_commands{$command}) {
- push @{$self->{'context_stack'}}, 'preformatted';
- } elsif ($format_raw_commands{$command}) {
- push @{$self->{'context_stack'}}, 'rawpreformatted';
- if ($self->{'expanded_formats_hash'}->{$command}
- and $self->{'expanded_formats_stack'}->[-1]) {
- push @{$self->{'expanded_formats_stack'}}, $command;
- } else {
- push @{$self->{'expanded_formats_stack'}}, 0;
- }
- }
- if ($region_commands{$command}) {
- if (@{$self->{'regions_stack'}}) {
- $self->line_error(
- sprintf($self->__("region %s inside region %s is not allowed"),
- $command, $self->{'regions_stack'}->[-1]->{'cmdname'}),
- $line_nr);
- }
- push @{$self->{'regions_stack'}}, $block;
- }
- if ($menu_commands{$command}) {
- if ($self->{'context_stack'}->[-1] eq 'preformatted') {
- push @{$self->{'context_stack'}}, 'preformatted';
- } else {
- push @{$self->{'context_stack'}}, 'menu';
- }
- if (! _ignore_global_commands($self)) {
- push @{$self->{'info'}->{'dircategory_direntry'}}, $block
- if ($command eq 'direntry');
- if ($self->{'current_node'}) {
- if ($command eq 'direntry') {
- if ($self->{'SHOW_MENU'}) {
- $self->line_warn($self->__("\@direntry after first node"),
- $line_nr);
- }
- } elsif ($command eq 'menu') {
- push @{$self->{'current_node'}->{'menus'}}, $current;
- }
- } elsif ($command ne 'direntry') {
- if ($self->{'SHOW_MENU'}) {
- $self->line_error(sprintf($self->__("\@%s seen before first \@node"),
- $command), $line_nr);
- $self->line_error($self->__(
- "perhaps your \@top node should be wrapped in \@ifnottex rather than \@ifinfo?"),
- $line_nr, 1);
- }
- if ($command eq 'menu') {
- push @{$self->{'info'}->{'unassociated_menus'}}, $current;
- }
- }
- }
- }
- $current->{'args'} = [ {
- 'type' => 'block_line_arg',
- 'contents' => [],
- 'parent' => $current } ];
-
- $current->{'remaining_args'} = $block_commands{$command} -1
- if ($block_commands{$command} =~ /^\d+$/
- and $block_commands{$command} -1 > 0);
- $current = $current->{'args'}->[-1];
- push @{$self->{'context_stack'}}, 'line'
- unless ($def_commands{$command});
- }
- $block->{'line_nr'} = $line_nr;
- $self->_mark_and_warn_invalid($command, $invalid_parent,
- $line_nr, $block);
- $self->_register_global_command($command, $block, $line_nr);
-
- $line = _start_empty_line_after_command($line, $current, $block);
- }
- } elsif (defined($brace_commands{$command})
- or defined($self->{'definfoenclose'}->{$command})) {
-
- push @{$current->{'contents'}}, { 'cmdname' => $command,
- 'parent' => $current,
- 'contents' => [] };
- $current->{'contents'}->[-1]->{'line_nr'} = $line_nr
- if ($keep_line_nr_brace_commands{$command});
- $self->_mark_and_warn_invalid($command, $invalid_parent,
- $line_nr, $current->{'contents'}->[-1]);
- $current = $current->{'contents'}->[-1];
- if ($command eq 'click') {
- $current->{'extra'}->{'clickstyle'} = $self->{'clickstyle'};
- } elsif ($command eq 'kbd') {
- if ($self->{'context_stack'}->[-1] eq 'preformatted'
- and $self->{'kbdinputstyle'} ne 'distinct') {
- $current->{'extra'}->{'code'} = 1;
- } elsif ($self->{'kbdinputstyle'} eq 'code'
- or ($self->{'kbdinputstyle'} eq 'example'
- and $self->_in_code($current->{'parent'}))) {
- $current->{'extra'}->{'code'} = 1;
- }
- }
- if ($self->{'definfoenclose'}->{$command}) {
- $current->{'type'} = 'definfoenclose_command';
- $current->{'extra'} = {
- 'begin' => $self->{'definfoenclose'}->{$command}->[0],
- 'end' => $self->{'definfoenclose'}->{$command}->[1] };
- }
- } elsif (exists ($no_brace_commands{$command})) {
- push @{$current->{'contents'}},
- { 'cmdname' => $command, 'parent' => $current };
- # FIXME generalize?
- if ($command eq '\\' and $self->{'context_stack'}->[-1] ne 'math') {
- $self->line_warn(sprintf($self->__("\@%s should only appear in math context"),
- $command), $line_nr);
- }
- if ($command eq "\n") {
- $current = _end_line($self, $current, $line_nr);
- last;
- }
- } else {
- $self->line_error(sprintf($self->__("unknown command `%s'"),
- $command), $line_nr);
- }
-
- } elsif ($line =~ s/^([{}@,:\t.\f])//) {
- my $separator = $1;
- print STDERR "SEPARATOR: $separator\n" if ($self->{'DEBUG'});
- if ($separator eq '@') {
- # this may happen with a @ at the very end of a file, therefore
- # not followed by anything.
- $self->line_error($self->__("unexpected \@"), $line_nr);
- } elsif ($separator eq '{') {
- _abort_empty_line($self, $current);
- if ($current->{'cmdname'}
- and (defined($brace_commands{$current->{'cmdname'}})
- or $self->{'definfoenclose'}->{$current->{'cmdname'}})) {
- my $command = $current->{'cmdname'};
- $current->{'args'} = [ { 'parent' => $current,
- 'contents' => [] } ];
- $current->{'remaining_args'} = $brace_commands{$command} -1
- if ($brace_commands{$command} and $brace_commands{$command} -1);
- $current->{'line_nr'} = $line_nr if ($brace_commands{$command});
- if ($self->{'definfoenclose'}->{$command}) {
- $current->{'remaining_args'} = 0;
- }
- $current = $current->{'args'}->[-1];
- if ($context_brace_commands{$command}) {
- if ($command eq 'caption' or $command eq 'shortcaption') {
- my $float;
- if (!$current->{'parent'}->{'parent'}
- or !$current->{'parent'}->{'parent'}->{'cmdname'}
- or $current->{'parent'}->{'parent'}->{'cmdname'} ne 'float') {
- $float = $current->{'parent'};
- while ($float->{'parent'} and !($float->{'cmdname'}
- and $float->{'cmdname'} eq 'float')) {
- $float = $float->{'parent'};
- }
- if (!($float->{'cmdname'} and $float->{'cmdname'} eq 'float')) {
- $self->line_error(sprintf($self->__(
- "\@%s is not meaningful outside `\@float' environment"),
- $command), $line_nr);
- $float = undef;
- } else {
- $self->line_warn(sprintf($self->__(
- "\@%s should be right below `\@float'"),
- $command), $line_nr);
- }
- } else {
- $float = $current->{'parent'}->{'parent'};
- }
- if ($float) {
- if ($float->{'extra'}->{$command}) {
- $self->line_warn(sprintf($self->__("ignoring multiple \@%s"),
- $command), $line_nr);
- } else {
- $current->{'parent'}->{'extra'}->{'float'} = $float;
- $float->{'extra'}->{$command} = $current->{'parent'};
- }
- }
- }
- push @{$self->{'context_stack'}}, $command;
- $line =~ s/([^\S\f\n]*)//;
- $current->{'type'} = 'brace_command_context';
- push @{$current->{'contents'}}, { 'type' => 'empty_spaces_before_argument',
- 'text' => $1,
- 'parent' => $current };
- $current->{'parent'}->{'extra'}->{'spaces_before_argument'}
- = $current->{'contents'}->[-1];
- } else {
- $current->{'type'} = 'brace_command_arg';
- if ($brace_commands{$command}
- and ($brace_commands{$command} > 1
- or $simple_text_commands{$command})) {
- push @{$current->{'contents'}},
- {'type' => 'empty_spaces_before_argument',
- 'text' => '' };
- $current->{'parent'}->{'extra'}->{'spaces_before_argument'}
- = $current->{'contents'}->[-1];
- }
- if ($inline_commands{$command}) {
- # this is changed when the first argument is known.
- push @{$self->{'expanded_formats_stack'}}, 0;
- push @{$self->{'context_stack'}}, $command
- if ($command eq 'inlineraw');
- }
- }
- print STDERR "OPENED \@$current->{'parent'}->{'cmdname'}, remaining: "
- .(defined($current->{'parent'}->{'remaining_args'}) ? "remaining: $current->{'parent'}->{'remaining_args'}, " : '')
- .($current->{'type'} ? "type: $current->{'type'}" : '')."\n"
- if ($self->{'DEBUG'});
- } elsif ($current->{'parent'}
- and (($current->{'parent'}->{'cmdname'}
- and $current->{'parent'}->{'cmdname'} eq 'multitable')
- or ($current->{'parent'}->{'type'}
- and $current->{'parent'}->{'type'} eq 'def_line'))) {
- push @{$current->{'contents'}},
- { 'type' => 'bracketed', 'contents' => [],
- 'parent' => $current };
- $current = $current->{'contents'}->[-1];
- # we need the line number here in case @ protects end of line
- $current->{'line_nr'} = $line_nr
- if ($current->{'parent'}->{'parent'}->{'type'}
- and $current->{'parent'}->{'parent'}->{'type'} eq 'def_line');
- push @{$current->{'contents'}},
- {'type' => 'empty_spaces_before_argument',
- 'text' => '' };
- print STDERR "BRACKETED in def/multitable\n" if ($self->{'DEBUG'});
- $current->{'extra'}->{'spaces_before_argument'}
- = $current->{'contents'}->[-1];
-
- # lone braces accepted right in a rawpreformatted
- } elsif ($current->{'type'}
- and $current->{'type'} eq 'rawpreformatted') {
- push @{$current->{'contents'}}, {'text' => '{' };
- # matching braces accepted in a rawpreformatted or math or ignored
- # code
- } elsif ($self->{'context_stack'}->[-1] eq 'math'
- or $self->{'context_stack'}->[-1] eq 'rawpreformatted'
- or $self->{'context_stack'}->[-1] eq 'inlineraw'
- or $self->_ignore_global_commands()) {
- push @{$current->{'contents'}},
- { 'type' => 'bracketed', 'contents' => [],
- 'parent' => $current, 'line_nr' => $line_nr };
- $current = $current->{'contents'}->[-1];
- print STDERR "BRACKETED in math\n" if ($self->{'DEBUG'});
- } else {
- $self->line_error(sprintf($self->__("misplaced %c"),
- ord('{')), $line_nr);
- }
-
- } elsif ($separator eq '}') {
- _abort_empty_line($self, $current);
- #print STDERR "GGGGG". _print_current ($current);
- if ($current->{'type'} and ($current->{'type'} eq 'bracketed')) {
- $current = $current->{'parent'};
- # the following will not happen for footnote if there is
- # a paragraph withing the footnote
- } elsif ($current->{'parent'}
- and $current->{'parent'}->{'cmdname'}
- and (exists $brace_commands{$current->{'parent'}->{'cmdname'}}
- or $self->{'definfoenclose'}->{$current->{'parent'}->{'cmdname'}})) {
- # for math and footnote out of paragraph
- if ($context_brace_commands{$current->{'parent'}->{'cmdname'}}) {
- my $context_command = pop @{$self->{'context_stack'}};
- if ($context_command ne $current->{'parent'}->{'cmdname'}) {
- $self->_bug_message("context $context_command instead of brace command $current->{'parent'}->{'cmdname'}",
- $line_nr, $current);
- die;
- }
- }
- # first is the arg.
-
- if ($brace_commands{$current->{'parent'}->{'cmdname'}}
- and ($brace_commands{$current->{'parent'}->{'cmdname'}} > 1
- or $simple_text_commands{$current->{'parent'}->{'cmdname'}})
- and $current->{'parent'}->{'cmdname'} ne 'math') {
- # @inline* always have end spaces considered as normal text
- $self->_isolate_last_space($current)
- unless ($inline_commands{$current->{'parent'}->{'cmdname'}});
- $self->_register_command_arg($current, 'brace_command_contents');
- # Remove empty arguments, as far as possible
- _remove_empty_content_arguments($current);
- }
- my $closed_command = $current->{'parent'}->{'cmdname'};
- print STDERR "CLOSING(brace) \@$current->{'parent'}->{'cmdname'}\n"
- if ($self->{'DEBUG'});
- delete $current->{'parent'}->{'remaining_args'};
- if (defined($brace_commands{$closed_command})
- and $brace_commands{$closed_command} == 0
- and @{$current->{'contents'}}) {
- $self->line_warn(sprintf($self->__(
- "command \@%s does not accept arguments"),
- $closed_command), $line_nr);
- }
- if ($current->{'parent'}->{'cmdname'} eq 'anchor') {
- $current->{'parent'}->{'line_nr'} = $line_nr;
- my $parsed_anchor = _parse_node_manual($current);
- if (_check_node_label($self, $parsed_anchor,
- $current->{'parent'}->{'cmdname'}, $line_nr)) {
- _register_label($self, $current->{'parent'},
- $parsed_anchor, $line_nr);
- if (@{$self->{'regions_stack'}}) {
- $current->{'extra'}->{'region'} = $self->{'regions_stack'}->[-1];
- }
- }
- } elsif ($ref_commands{$current->{'parent'}->{'cmdname'}}) {
- my $ref = $current->{'parent'};
- if (@{$ref->{'args'}}) {
- my @args = @{$ref->{'extra'}->{'brace_command_contents'}};
- if (($closed_command eq 'inforef'
- and !defined($args[0]) and !defined($args[2]))
- or ($closed_command ne 'inforef'
- and !defined($args[0]) and !defined($args[3])
- and !defined($args[4]))) {
- $self->line_warn(sprintf($self->__(
- "command \@%s missing a node or external manual argument"),
- $closed_command), $line_nr);
- } else {
- my $parsed_ref_node = _parse_node_manual($ref->{'args'}->[0]);
- $ref->{'extra'}->{'node_argument'} = $parsed_ref_node
- if (defined($parsed_ref_node));
- if ($closed_command ne 'inforef'
- and !defined($args[3]) and !defined($args[4])
- and !$parsed_ref_node->{'manual_content'}
- and ! _ignore_global_commands($self)) {
- push @{$self->{'internal_references'}}, $ref;
- }
- }
- if (defined($args[1])) {
- my $normalized_cross_ref_name =
- Texinfo::Convert::NodeNameNormalization::normalize_node(
- {'contents' => $args[1]});
- if ($normalized_cross_ref_name !~ /[^-]/) {
- $self->line_warn(sprintf($self->__(
- "in \@%s empty cross reference name after expansion `%s'"),
- $closed_command,
- Texinfo::Convert::Texinfo::convert({'contents' => $args[1]})),
- $line_nr);
- }
- }
- if ($closed_command ne 'inforef' and defined($args[2])) {
- my $normalized_cross_ref_title =
- Texinfo::Convert::NodeNameNormalization::normalize_node({'contents' => $args[2]});
- if ($normalized_cross_ref_title !~ /[^-]/) {
- $self->line_warn(sprintf($self->__(
- "in \@%s empty cross reference title after expansion `%s'"),
- $closed_command,
- Texinfo::Convert::Texinfo::convert({'contents' => $args[2]})),
- $line_nr);
- }
- }
- }
- } elsif ($current->{'parent'}->{'cmdname'} eq 'image') {
- my $image = $current->{'parent'};
- if (!@{$image->{'args'}}
- or !@{$image->{'extra'}->{'brace_command_contents'}}
- or !defined($image->{'extra'}->{'brace_command_contents'}->[0])) {
- $self->line_error(
- $self->__("\@image missing filename argument"), $line_nr);
- }
- } elsif($current->{'parent'}->{'cmdname'} eq 'dotless') {
- my $dotless = $current->{'parent'};
- if (@{$current->{'contents'}}) {
- my $text = $current->{'contents'}->[0]->{'text'};
- if (!defined ($text)
- or ($text ne 'i' and $text ne 'j')) {
- $self->line_error(sprintf($self->
- __("%c%s expects `i' or `j' as argument, not `%s'"),
- ord('@'), $dotless->{'cmdname'},
- Texinfo::Convert::Texinfo::convert($current)), $line_nr);
- }
- }
- } elsif ($explained_commands{$current->{'parent'}->{'cmdname'}}
- or $inline_commands{$current->{'parent'}->{'cmdname'}}) {
- my $current_command = $current->{'parent'};
- if ($inline_commands{$current_command->{'cmdname'}}) {
- if ($current_command->{'cmdname'} eq 'inlineraw') {
- my $context_command = pop @{$self->{'context_stack'}};
- if ($context_command ne $current_command->{'cmdname'}) {
- $self->_bug_message("context $context_command instead of inlineraw $current_command->{'cmdname'}",
- $line_nr, $current);
- die;
- }
- }
- pop @{$self->{'expanded_formats_stack'}};
- }
- if (!@{$current_command->{'args'}}
- or !@{$current_command->{'extra'}->{'brace_command_contents'}}
- or !defined($current_command->{'extra'}->{'brace_command_contents'}->[0])) {
- $self->line_warn(
- sprintf($self->__("\@%s missing first argument"),
- $current_command->{'cmdname'}), $line_nr);
- } else {
- if ($explained_commands{$current_command->{'cmdname'}}) {
- my $normalized_type
- = Texinfo::Convert::NodeNameNormalization::normalize_node(
- {'contents' =>
- $current_command->{'extra'}->{'brace_command_contents'}->[0]});
- $current_command->{'extra'}->{'normalized'} = $normalized_type;
- if (!$current_command->{'extra'}->{'brace_command_contents'}->[1]) {
- if ($self->{'explained_commands'}->{$current_command->{'cmdname'}}->{$normalized_type}) {
- $current_command->{'extra'}->{'explanation_contents'}
- = $self->{'explained_commands'}->{$current_command->{'cmdname'}}->{$normalized_type};
- }
- } elsif (! _ignore_global_commands($self)) {
- $self->{'explained_commands'}->{$current_command->{'cmdname'}}->{$normalized_type}
- = $current_command->{'extra'}->{'brace_command_contents'}->[1];
- }
- }# else {
- # my $argument
- # = Texinfo::Convert::Text::convert({'contents' =>
- # $current_command->{'extra'}->{'brace_command_contents'}->[0]},
- # {Texinfo::Common::_convert_text_options($self)});
- # $current_command->{'extra'}->{'format'} = $argument;
- #}
- }
- } elsif ($current->{'parent'}->{'cmdname'} eq 'errormsg') {
- if (! _ignore_global_commands($self)) {
- my $error_message_text
- = Texinfo::Convert::Text::convert($current,
- {Texinfo::Common::_convert_text_options($self)});
- $self->line_error($error_message_text, $line_nr);
- }
- } elsif (_command_with_command_as_argument($current->{'parent'}->{'parent'})
- and scalar(@{$current->{'contents'}}) == 0) {
- print STDERR "FOR PARENT \@$current->{'parent'}->{'parent'}->{'parent'}->{'cmdname'} command_as_argument braces $current->{'cmdname'}\n" if ($self->{'DEBUG'});
- $current->{'parent'}->{'type'} = 'command_as_argument'
- if (!$current->{'parent'}->{'type'});
- $current->{'parent'}->{'parent'}->{'parent'}->{'extra'}->{'command_as_argument'}
- = $current->{'parent'};
- }
- $self->_register_global_command($current->{'parent'}->{'cmdname'},
- $current->{'parent'}, $line_nr);
- if ($command_ignore_space_after{$current->{'parent'}->{'cmdname'}}) {
- push @{$current->{'parent'}->{'parent'}->{'contents'}},
- {'type' => 'empty_spaces_after_close_brace',
- 'text' => '' };
- }
- $current = $current->{'parent'}->{'parent'};
- $current = $self->_begin_preformatted ($current)
- if ($close_preformatted_commands{$closed_command});
- # lone braces accepted right in a rawpreformatted
- } elsif ($current->{'type'}
- and $current->{'type'} eq 'rawpreformatted') {
- push @{$current->{'contents'}}, {'text' => '}' };
- # footnote caption closing, when there is a paragraph inside.
- } elsif ($context_brace_commands{$self->{'context_stack'}->[-1]}) {
- # closing the context under broader situations
- $current = _end_paragraph($self, $current, $line_nr);
- if ($current->{'parent'}
- and $current->{'parent'}->{'cmdname'}
- and $context_brace_commands{$current->{'parent'}->{'cmdname'}}
- and $current->{'parent'}->{'cmdname'} eq $self->{'context_stack'}->[-1]) {
- my $context_command = pop @{$self->{'context_stack'}};
- if ($context_command ne $current->{'parent'}->{'cmdname'}) {
- $self->_bug_message("context $context_command instead of brace isolated $current->{'parent'}->{'cmdname'}",
- $line_nr, $current);
- die;
- }
- print STDERR "CLOSING(context command) \@$current->{'parent'}->{'cmdname'}\n" if ($self->{'DEBUG'});
- my $closed_command = $current->{'parent'}->{'cmdname'};
- $self->_register_global_command($current->{'parent'}->{'cmdname'},
- $current->{'parent'}, $line_nr);
- $current = $current->{'parent'}->{'parent'};
- $current = $self->_begin_preformatted ($current)
- if ($close_preformatted_commands{$closed_command});
- }
- } else {
- $self->line_error(sprintf($self->__("misplaced %c"),
- ord('}')), $line_nr);
- }
- } elsif ($separator eq ','
- and $current->{'parent'}->{'remaining_args'}) {
- _abort_empty_line ($self, $current);
- if ($brace_commands{$current->{'parent'}->{'cmdname'}}
- and ($brace_commands{$current->{'parent'}->{'cmdname'}} > 1
- or $simple_text_commands{$current->{'parent'}->{'cmdname'}})) {
- $self->_isolate_last_space($current);
- $self->_register_command_arg($current, 'brace_command_contents');
- } else {
- $self->_isolate_last_space($current);
- if (exists $block_commands{$current->{'parent'}->{'cmdname'}}) {
- $self->_register_command_arg($current, 'block_command_line_contents');
- }
- }
- my $type = $current->{'type'};
- $current = $current->{'parent'};
- if ($inline_commands{$current->{'cmdname'}}) {
- if (! $current->{'extra'}->{'format'}) {
- # change the top of the raw_formats_stack now that we know the
- # first arg of the inlineraw
- my $inline_type
- = Texinfo::Convert::Text::convert({'contents' =>
- $current->{'extra'}->{'brace_command_contents'}->[0]},
- {Texinfo::Common::_convert_text_options($self)});
- if ($self->{'expanded_formats_stack'}->[-2]) {
- if ($inline_format_commands{$current->{'cmdname'}}) {
- if ($self->{'expanded_formats_hash'}->{$inline_type}) {
- $self->{'expanded_formats_stack'}->[-1] = $inline_type;
- $current->{'extra'}->{'expand_index'} = 1;
- } else {
- $self->{'expanded_formats_stack'}->[-1] = 0;
- }
- } elsif (($current->{'cmdname'} eq 'inlineifset'
- and exists($self->{'values'}->{$inline_type}))
- or ($current->{'cmdname'} eq 'inlineifclear'
- and ! exists($self->{'values'}->{$inline_type}))) {
- $self->{'expanded_formats_stack'}->[-1]
- = "$current->{'cmdname'} $inline_type";
- $current->{'extra'}->{'expand_index'} = 1;
- } else {
- $self->{'expanded_formats_stack'}->[-1] = 0;
- }
- } else {
- $self->{'expanded_formats_stack'}->[-1] = 0;
- }
- $current->{'extra'}->{'format'} = $inline_type;
- } else {
- # happens for the second arg of inlinefmtifelse
- my $inline_type = $current->{'extra'}->{'format'};
- if ($self->{'expanded_formats_stack'}->[-2]
- and ! ($self->{'expanded_formats_hash'}->{$inline_type})) {
- $self->{'expanded_formats_stack'}->[-1] = $inline_type;
- $current->{'extra'}->{'expand_index'} = 2;
- } else {
- $self->{'expanded_formats_stack'}->[-1] = 0;
- }
- }
- }
- $current->{'remaining_args'}--;
- push @{$current->{'args'}},
- { 'type' => $type, 'parent' => $current, 'contents' => [] };
- #if ($inline_commands{$current->{'cmdname'}}
- # and ! $self->{'expanded_formats_stack'}->[-1]) {
- # $current->{'args'}->[-1]->{'extra'}->{'ignore'} = 1;
- #}
- $current = $current->{'args'}->[-1];
- push @{$current->{'contents'}},
- {'type' => 'empty_spaces_before_argument',
- 'text' => '' };
- } elsif ($separator eq ',' and $current->{'type'}
- and $current->{'type'} eq 'misc_line_arg'
- and $current->{'parent'}->{'cmdname'}
- and $current->{'parent'}->{'cmdname'} eq 'node') {
- $self->line_warn($self->__("superfluous arguments for node"), $line_nr);
- # end of menu node (. must be followed by a space to stop the node).
- } elsif (($separator =~ /[,\t.]/ and $current->{'type'}
- and $current->{'type'} eq 'menu_entry_node')
- or ($separator eq ':' and $current->{'type'}
- and $current->{'type'} eq 'menu_entry_name')) {
- $current = $current->{'parent'};
- push @{$current->{'args'}}, { 'type' => 'menu_entry_separator',
- 'text' => $separator,
- 'parent' => $current };
- } elsif ($separator eq "\f" and $current->{'type'}
- and $current->{'type'} eq 'paragraph') {
- # form feed stops and restart a paragraph.
- $current = $self->_end_paragraph($current);
- push @{$current->{'contents'}}, {'text' => $separator,
- 'type' => 'empty_line',
- 'parent' => $current };
- push @{$current->{'contents'}}, { 'type' => 'empty_line',
- 'text' => '',
- 'parent' => $current };
-
- } else {
- $current = _merge_text($self, $current, $separator);
- }
- # Misc text except end of line
- } elsif ($line =~ s/^([^{}@,:\t.\n\f]+)//) {
- my $new_text = $1;
- $current = _merge_text($self, $current, $new_text);
- # end of line
- } else {
- if ($self->{'DEBUG'}) {
- print STDERR "END LINE: ". _print_current($current)."\n";
- }
- if ($line =~ s/^(\n)//) {
- $current = _merge_text($self, $current, $1);
- } else {
- if (scalar(@{$self->{'input'}})) {
- $self->_bug_message("Text remaining without normal text but `$line'",
- $line_nr, $current);
- die;
- }
- }
- #print STDERR "END LINE AFTER MERGE END OF LINE: ". _print_current($current)."\n";
- $current = _end_line($self, $current, $line_nr);
- last;
- }
- }
- }
- while (@{$self->{'conditionals_stack'}}) {
- my $end_conditional = pop @{$self->{'conditionals_stack'}};
- $self->line_error(sprintf($self->__("expected \@end %s"), $end_conditional),
- $line_nr);
- }
- $current = _close_commands($self, $current, $line_nr);
-
- if (@{$self->{'context_stack'}} != 1) {
- # This happens in 2 cases in the tests:
- # @verb not closed on misc commands line
- # def line escaped with @ ending the file
- if ($self->{'DEBUG'}) {
- print STDERR "CONTEXT_STACK no empty end _parse_texi: ".join('|', @{$self->{'context_stack'}})."\n";
- }
- @{$self->{'context_stack'}} = ($self->{'context'});
- }
- if (@{$self->{'expanded_formats_stack'}} != 1) {
- if ($self->{'DEBUG'}) {
- print STDERR "EXPANDED_FORMATS_STACK no empty end _parse_texi: ".join('|', @{$self->{'expanded_formats_stack'}})."\n";
- }
- @{$self->{'expanded_formats_stack'}} = ($self->{'expanded_formats_stack'}->[0]);
- }
- return $root;
-}
-
-
-# parse special line @-commands, unmacro, set, clear, clickstyle.
-# Also remove spaces or ignore text, as specified in the misc_commands hash.
-sub _parse_special_misc_command($$$$)
-{
- my $self = shift;
- my $line = shift;
- my $command = shift;
- my $line_nr = shift;
- my $args = [];
-
- my $has_comment = 0;
- my $remaining;
- if ($command eq 'set') {
- # REVALUE
- #if ($line =~ s/^\s+([\w\-]+)(\s+(.*?))\s*$//) {
- if ($line =~ /^\s+([\w\-][^\s{\\}~`\^+"<>|@]*)(\@(c|comment)((\@|\s+).*)?|[^\S\f]+(.*?))?[^\S\f]*$/) {
- if ($line =~ s/\@(c|comment)((\@|\s+).*)?$//) {
- $has_comment = 1;
- }
- $line =~ /^\s+([\w\-][^\s{\\}~`\^+"<>|@]*)([^\S\f]+(.*?))?[^\S\f]*$/;
- my $name = $1;
- my $arg = $3;
- $arg = '' if (!defined($arg));
- $args = [$name, $arg];
- $self->{'values'}->{$name} = $arg
- unless(_ignore_global_commands($self));
- } elsif ($line !~ /\S/) {
- $self->line_error(sprintf($self->
- __("%c%s requires a name"), ord('@'), $command), $line_nr);
- } else {
- $self->line_error(sprintf($self->
- __("bad name for \@%s"), $command), $line_nr);
- }
- } elsif ($command eq 'clear') {
- # REVALUE
- if ($line =~ /^\s+([\w\-][^\s{\\}~`\^+"<>|@]*)\s*(\@(c|comment)((\@|\s+).*)?)?$/) {
- $args = [$1];
- delete $self->{'values'}->{$1}
- unless(_ignore_global_commands($self));
- $has_comment = 1 if (defined($3));
- #$remaining = $line;
- #$remaining =~ s/^\s+([\w\-]+)\s*(\@(c|comment)((\@|\s+).*)?)?//;
- } elsif ($line !~ /\S/) {
- $self->line_error(sprintf($self->
- __("%c%s requires a name"), ord('@'), $command), $line_nr);
- } else {
- $self->line_error(sprintf($self->
- __("bad name for \@%s"), $command), $line_nr);
- }
- } elsif ($command eq 'unmacro') {
- # REMACRO
- if ($line =~ /^\s+([[:alnum:]][[:alnum:]\-]*)\s*(\@(c|comment)((\@|\s+).*)?)?$/) {
- $args = [$1];
- delete $self->{'macros'}->{$1}
- unless(_ignore_global_commands($self));
- $has_comment = 1 if (defined($3));
- print STDERR "UNMACRO $1\n" if ($self->{'DEBUG'});
- } elsif ($line !~ /\S/) {
- $self->line_error(sprintf($self->
- __("%c%s requires a name"), ord('@'), $command), $line_nr);
- } else {
- $self->line_error(sprintf($self->
- __("bad name for \@%s"), $command), $line_nr);
- }
- } elsif ($command eq 'clickstyle') {
- # REMACRO
- if ($line =~ /^\s+@([[:alnum:]][[:alnum:]\-]*)({})?\s*/) {
- $args = ['@'.$1];
- $self->{'clickstyle'} = $1
- unless(_ignore_global_commands($self));
- $remaining = $line;
- $remaining =~ s/^\s+@([[:alnum:]][[:alnum:]\-]*)({})?\s*(\@(c|comment)((\@|\s+).*)?)?//;
- $has_comment = 1 if (defined($4));
- } else {
- $self->line_error (sprintf($self->__(
- "\@%s should only accept a \@-command as argument, not `%s'"),
- $command, $line), $line_nr);
- }
- } else {
- die $self->_bug_message("Unknown special command $command", $line_nr);
- }
- if (defined($remaining)) {
- chomp($remaining);
- if ($remaining ne '') {
- $self->line_warn(sprintf($self->__(
- "remaining argument on \@%s line: %s"),
- $command, $remaining), $line_nr);
- }
- }
- return ($args, $has_comment);
-}
-
-sub _trim_spaces_comment_from_content($)
-{
- Texinfo::Common::trim_spaces_comment_from_content($_[0]);
-}
-
-# at the end of a @-command line with arguments, parse the resulting
-# text, to collect aliases, definfoenclose and collect errors on
-# wrong arguments.
-sub _parse_line_command_args($$$)
-{
- my $self = shift;
- my $line_command = shift;
- my $line_nr = shift;
-
- my $args;
-
- my $command = $line_command->{'cmdname'};
- my $arg = $line_command->{'args'}->[0];
-
- if ($self->{'DEBUG'}) {
- print STDERR "MISC ARGS \@$command\n";
- if (@{$arg->{'contents'}}) {
- my $idx = 0;
- foreach my $content (@{$arg->{'contents'}}) {
- my $name = '';
- $name = '@' . $content->{'cmdname'} if ($content->{'cmdname'});
- my $type = ', t: ';
- $type .= $content->{'type'} if ($content->{'type'});
- my $text = ', ';
- $type .= $content->{'text'} if ($content->{'text'});
- print STDERR " -> $idx $name $type $text\n";
- $idx++;
- }
- }
- }
-
- my @contents = @{$arg->{'contents'}};
-
- _trim_spaces_comment_from_content(\@contents);
-
- if (! @contents) {
- $self->_command_error($line_command, $line_nr,
- $self->__("\@%s missing argument"), $command);
- $line_command->{'extra'}->{'missing_argument'} = 1;
- return undef;
- }
-
- if (@contents > 1
- or (!defined($contents[0]->{'text'}))) {
- $self->line_error (sprintf($self->__("superfluous argument to \@%s"),
- $command), $line_nr);
- }
- return undef if (!defined($contents[0]->{'text'}));
-
- my $line = $contents[0]->{'text'};
-
- if ($command eq 'alias') {
- # REMACRO
- if ($line =~ s/^([[:alnum:]][[:alnum:]-]*)(\s*=\s*)([[:alnum:]][[:alnum:]-]*)$//) {
- my $new_command = $1;
- my $existing_command = $3;
- $args = [$1, $3];
- $self->{'aliases'}->{$new_command} = $existing_command
- unless (_ignore_global_commands($self));
- if (exists($block_commands{$existing_command})) {
- $self->line_warn(sprintf($self->
- __("environment command %s as argument to \@%s"),
- $existing_command, $command), $line_nr);
- }
- } else {
- $self->line_error(sprintf($self->
- __("bad argument to \@%s"), $command), $line_nr);
- }
-
- } elsif ($command eq 'definfoenclose') {
- # REMACRO
- if ($line =~ s/^([[:alnum:]][[:alnum:]\-]*)\s*,\s*([^\s,]*)\s*,\s*([^\s,]*)$//) {
- $args = [$1, $2, $3 ];
- $self->{'definfoenclose'}->{$1} = [ $2, $3 ]
- unless (_ignore_global_commands($self));
- print STDERR "DEFINFOENCLOSE \@$1: $2, $3\n" if ($self->{'DEBUG'});
- } else {
- $self->line_error(sprintf($self->
- __("bad argument to \@%s"), $command), $line_nr);
- }
- } elsif ($command eq 'columnfractions') {
- my @possible_fractions = split (/\s+/, $line);
- if (!@possible_fractions) {
- $self->line_error (sprintf($self->__("empty \@%s"), $command),
- $line_nr);
- } else {
- foreach my $fraction (@possible_fractions) {
- if ($fraction =~ /^(\d*\.\d+)|(\d+)\.?$/) {
- push @$args, $fraction;
- } else {
- $self->line_error (sprintf($self->
- __("column fraction not a number: %s"),
- $fraction), $line_nr);
- }
- }
- }
- } elsif ($command eq 'sp') {
- if ($line =~ /^([0-9]+)$/) {
- $args = [$1];
- } else {
- $self->line_error(sprintf($self->__("\@sp arg must be numeric, not `%s'"),
- $line), $line_nr);
- }
- } elsif ($command eq 'defindex' || $command eq 'defcodeindex') {
- # REMACRO
- if ($line =~ /^([[:alnum:]][[:alnum:]\-]*)$/) {
- my $name = $1;
- if ($forbidden_index_name{$name}) {
- $self->line_error(sprintf($self->
- __("reserved index name %s"),$name), $line_nr);
- } else {
- my $in_code = 0;
- $in_code = 1 if ($command eq 'defcodeindex');
- $args = [$name];
- if (! _ignore_global_commands($self)) {
- $self->{'index_names'}->{$name} = {'in_code' => $in_code};
- $self->_register_index_commands($name);
- }
- }
- } else {
- $self->line_error(sprintf($self->
- __("bad argument to \@%s: %s"), $command, $line), $line_nr);
- }
- } elsif ($command eq 'synindex' || $command eq 'syncodeindex') {
- # REMACRO
- if ($line =~ /^([[:alnum:]][[:alnum:]\-]*)\s+([[:alnum:]][[:alnum:]\-]*)$/) {
- my $index_from = $1;
- my $index_to = $2;
- $self->line_error(sprintf($self->__("unknown source index in \@%s: %s"),
- $command, $index_from), $line_nr)
- unless $self->{'index_names'}->{$index_from};
- $self->line_error(sprintf($self->__("unknown destination index in \@%s: %s"),
- $command, $index_to), $line_nr)
- unless $self->{'index_names'}->{$index_to};
- if ($self->{'index_names'}->{$index_from}
- and $self->{'index_names'}->{$index_to}) {
- my $current_to = $index_to;
- # find the merged indices recursively avoiding loops
- while ($current_to ne $index_from
- and $self->{'merged_indices'}->{$current_to}) {
- $current_to = $self->{'merged_indices'}->{$current_to};
- }
- if ($current_to ne $index_from) {
- my $index_from_info = $self->{'index_names'}->{$index_from};
- my $index_to_info = $self->{'index_names'}->{$current_to};
-
- my $in_code = 0;
- $in_code = 1 if ($command eq 'syncodeindex');
- if (! _ignore_global_commands($self)) {
- $self->{'merged_indices'}->{$index_from} = $current_to;
- $index_from_info->{'in_code'} = $in_code;
- foreach my $contained_index (keys %{$index_from_info->{'contained_indices'}}) {
- $index_to_info->{'contained_indices'}->{$contained_index} = 1;
- $self->{'index_names'}->{$contained_index}->{'merged_in'} = $current_to;
- }
- $index_from_info->{'merged_in'} = $current_to;
- $index_to_info->{'contained_indices'}->{$index_from} = 1;
- }
- $args = [$index_from, $index_to];
- } else {
- $self->line_warn(sprintf($self->__(
- "\@%s leads to a merging of %s in itself, ignoring"),
- $command, $index_from), $line_nr);
- }
- }
- } else {
- $self->line_error(sprintf($self->__("bad argument to \@%s: %s"),
- $command, $line), $line_nr);
- }
- } elsif ($command eq 'printindex') {
- # REMACRO
- if ($line =~ /^([[:alnum:]][[:alnum:]\-]*)$/) {
- my $name = $1;
- if (!exists($self->{'index_names'}->{$name})) {
- $self->line_error(sprintf($self->__("unknown index `%s' in \@printindex"),
- $name), $line_nr);
-
- } else {
- if ($self->{'merged_indices'}->{$name}) {
- $self->line_warn(sprintf($self->__(
- "printing an index `%s' merged in another one `%s'"),
- $name, $self->{'merged_indices'}->{$name}),
- $line_nr);
- }
- if (!defined($self->{'current_node'})
- and !defined($self->{'current_section'})
- and !scalar(@{$self->{'regions_stack'}})) {
- $self->line_warn(sprintf($self->__(
- "printindex before document beginning: \@printindex %s"),
- $name), $line_nr);
- }
- $args = [$name];
- }
- } else {
- $self->line_error(sprintf($self->
- __("bad argument to \@%s: %s"), $command, $line), $line_nr);
- }
- } elsif (grep {$_ eq $command} ('everyheadingmarks', 'everyfootingmarks',
- 'evenheadingmarks', 'oddheadingmarks',
- 'evenfootingmarks', 'oddfootingmarks')) {
- if ($line eq 'top' or $line eq 'bottom') {
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__(
- "\@%s arg must be `top' or `bottom', not `%s'"),
- $command, $line), $line_nr);
- }
- } elsif ($command eq 'fonttextsize') {
- if ($line eq '10' or $line eq '11') {
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__(
- "Only \@%s 10 or 11 is supported, not `%s'"),
- $command, $line), $line_nr);
- }
- } elsif ($command eq 'footnotestyle') {
- if ($line eq 'separate' or $line eq 'end') {
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__(
- "\@%s arg must be `separate' or `end', not `%s'"),
- $command, $line), $line_nr);
- }
- } elsif ($command eq 'setchapternewpage') {
- if ($line eq 'on' or $line eq 'off' or $line eq 'odd') {
- $args = [$1];
- } else {
- $self->line_error(sprintf($self->__(
- "\@%s arg must be `on', `off' or `odd', not `%s'"),
- $command, $line), $line_nr);
- }
- } elsif ($command eq 'need') { # only a warning
- if (($line =~ /^([0-9]+(\.[0-9]*)?)$/) or
- ($line =~ /^(\.[0-9]+)$/)) {
- $args = [$1];
- } else {
- $self->line_error(sprintf($self->__("bad argument to \@%s: %s"),
- $command, $line), $line_nr);
- }
- } elsif ($command eq 'paragraphindent') {
- if ($line =~ /^([\w\-]+)$/) {
- my $value = $1;
- if ($value =~ /^([0-9]+)$/ or $value eq 'none' or $value eq 'asis') {
- $args = [$1];
- } else {
- $self->line_error(sprintf($self->__(
- "\@paragraphindent arg must be numeric/`none'/`asis', not `%s'"),
- $value), $line_nr);
- }
- } else {
- $self->line_error(sprintf($self->__(
- "\@paragraphindent arg must be numeric/`none'/`asis', not `%s'"),
- $line), $line_nr);
- }
- } elsif ($command eq 'firstparagraphindent') {
- if ($line eq 'none' or $line eq 'insert') {
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__(
- "\@firstparagraphindent arg must be `none' or `insert', not `%s'"),
- $line), $line_nr);
- }
- } elsif ($command eq 'exampleindent') {
- if ($line =~ /^([0-9]+)/) {
- $args = [$1];
- } elsif ($line =~ /^(asis)$/) {
- $args = [$1];
- } else {
- $self->line_error(sprintf($self->__(
- "\@exampleindent arg must be numeric/`asis', not `%s'"),
- $line), $line_nr);
- }
- } elsif ($command eq 'frenchspacing'
- or $command eq 'xrefautomaticsectiontitle'
- or $command eq 'codequoteundirected'
- or $command eq 'codequotebacktick'
- or $command eq 'deftypefnnewline') {
- if ($line eq 'on' or $line eq 'off') {
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__("expected \@%s on or off, not `%s'"),
- $command, $line), $line_nr);
- }
- } elsif ($command eq 'kbdinputstyle') {
- if ($line eq 'code' or $line eq 'example' or $line eq 'distinct') {
- $self->{'kbdinputstyle'} = $line
- unless (_ignore_global_commands($self));
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__(
- "\@kbdinputstyle arg must be `code'/`example'/`distinct', not `%s'"),
- $line), $line_nr);
- }
- } elsif ($command eq 'allowcodebreaks') {
- if ($line eq 'true' or $line eq 'false') {
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__(
- "\@allowcodebreaks arg must be `true' or `false', not `%s'"),
- $line), $line_nr);
- }
- } elsif ($command eq 'urefbreakstyle') {
- if ($line eq 'after' or $line eq 'before' or $line eq 'none') {
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__(
- "\@urefbreakstyle arg must be `after'/`before'/`none', not `%s'"),
- $line), $line_nr);
- }
- } elsif ($command eq 'headings') {
- if ($line eq 'off' or $line eq 'on' or $line eq 'single'
- or $line eq 'double' or $line eq 'singleafter' or $line eq 'doubleafter') {
- $args = [$line];
- } else {
- $self->line_error(sprintf($self->__("bad argument to \@%s: %s"),
- $command, $line), $line_nr);
- }
- }
- return $args;
-}
-
-1;
-__END__
-=head1 NAME
-
-Texinfo::Parser - Parse Texinfo code in a Perl tree
-
-=head1 SYNOPSIS
-
- use Texinfo::Parser;
- my $parser = Texinfo::Parser::parser();
- my $tree = $parser->parse_texi_file("somefile.texi");
- my ($errors, $errors_count) = $parser->errors();
- foreach my $error_message (@$errors) {
- warn $error_message->{'error_line'};
- }
-
- my ($index_names, $merged_indices_hash)
- = $parser->indices_information();
- my $float_types_arrays = $parser->floats_information();
- my $internal_references_array
- = $parser->internal_references_information();
- # An hash reference on normalized node/float/anchor names
- my $labels_information = $parser->labels_information();
- # A hash reference, keys are @-command names, value is an
- # array reference holding all the corresponding @-commands.
- my $global_commands_information = $parser->global_commands_information();
- # a hash reference on some document informations (encodings,
- # input file name, dircategory and direntry list, for exampel).
- my $global_informations = $parser->global_informations();
-
-=head1 DESCRIPTION
-
-Texinfo::Parser will parse Texinfo text into a perl tree. In one pass
-it expands user defined @-commands, conditionals (@ifset, @ifinfo...)
-and @value and constructs the tree. Some extra information is gathered
-while doing the tree, for example the block command associated with @end,
-the number of row in a multitable, the node associated with a section.
-
-
-
-=head1 METHODS
-
-No method is exported in the default case. The module allows both
-an object oriented syntax, or traditional function, with the parser
-as an opaque data structure given in argument to every function.
-
-=head2 Initialization
-
-The following method is used to construct a new C<Texinfo::Parser> object:
-
-=over
-
-=item $parser = Texinfo::Parser::parser($options);
-
-This method creates a new parser. The options may be provided as a hash
-reference. There are two types of options. The first type of options
-change the way the parser behave, they are described right here. The
-other type of options allow to give to the parser some information as if
-it came from texinfo code, for example allow to set aliases (as with
-C<@alias>), values (as with C<@set>), merged indices (as with
-C<@synindex>). These options are described below in L</Texinfo Parser options>.
-
-=over
-
-=item expanded_formats
-
-An array reference of the output formats for which C<@ifI<FORMAT>>
-conditional blocks should be expanded. Default is empty.
-
-The raw block formats (within C<@html> blocks, for example) are
-always kept.
-
-=item gettext
-
-If set, the function reference is used to translate error and warning
-messages. It takes a string as argument and returns a string. The default
-function returns the error message as is.
-
-=item GLOBAL_COMMANDS
-
-The associated value is a reference on an array. All the commands in the
-array are collected during parsing. They are afterwards available
-through L<global_informations|/$info = global_informations($parser)>.
-
-=item include_directories
-
-An array reference of directories in which C<@include> files should be
-searched for. Default contains the working directory, F<.>.
-
-=item INLINE_INSERTCOPYING
-
-If set, C<@insertcopying> is replaced by the C<@copying> content as if
-C<@insertcopying> was a user-defined macro. In the default case, it is
-considered to be a simple @-command and kept as is in the tree.
-
-=item IGNORE_BEFORE_SETFILENAME
-
-If set, and C<@setfilename> exists, everything before C<@setfilename>
-is put in a special container type, @C<preamble_before_setfilename>.
-This option is set in the default case.
-
-=item IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME
-
-If set, spaces after an @-commande name that take braces are ignored.
-Default on.
-
-=item MACRO_BODY_IGNORES_LEADING_SPACE
-
-If set, leading spaces are stripped from user defined macro bodies.
-
-=item MAX_MACRO_CALL_NESTING
-
-Maximal number of nested user-defined macro calls. Default is 100000.
-
-=item SHOW_MENU
-
-If false, no menu related error are reported. Default is true.
-
-=begin :comment
-
-Used by Sectioning only
-=item TOP_NODE_UP
-
-Text for the up node of the Top node. The default is C<(dir)>. The
-string may contain @-commands.
-
-=end :comment
-
-=back
-
-=back
-
-=head2 Parsing Texinfo text
-
-There are three methods that may be called to parse some Texinfo code,
-C<parse_texi_line> for a line, C<parse_texi_text> for a text fragment,
-and C<parse_texi_file> for a file.
-
-For all those functions, if the I<$parser> argument is undef, a new
-parser object is generated to parse the line, otherwise the parser given
-in argument is used to parse into a tree.
-
-When C<parse_texi_text> is used, the resulting tree is rooted at
-a C<root_line> type container. Otherwise, the resulting tree should be
-rooted at a C<text_root> type container if it do not contain nodes or
-sections, at a C<document_root> type container otherwise.
-
-=over
-
-=item $tree = parse_texi_line($parser, $text, $first_line_number, $file_name, $macro_name, $fixed_line_number)
-
-This function is used to parse a short fragment of Texinfo code.
-
-I<$text> may be either an array reference of lines, or a text.
-
-The other arguments are optional and allow to specify the position
-information of the Texinfo code. I<$first_line_number> is the line number
-of the first text line. I<$file_name> is the name of the file the
-text comes from. I<$macro> is for the user-defined macro name the text
-is expanded from. If I<$fixed_line_number> is set, the line number is
-not increased for the different lines, as if the text was the expansion
-of a macro.
-
-=item $tree = parse_texi_text ($parser, $text, $line_numbers_specification, $file_name, $macro_name, $fixed_line_number)
-
-This function is used to parse some Texinfo text.
-
-I<$text> may be either an array reference of lines, or a text.
-
-The other arguments are optional and allow to specify the position
-information of the Texinfo code. There are two distinct cases for
-I<$line_numbers_specification>.
-
-=over
-
-=item 1.
-
-If it is an array reference, it is considered to hold objects describing
-the position information of each text lines.
-
-=item 2.
-
-If I<$line_numbers_specification> is a scalar, it is the line number of
-the first text line. In that case (like for C<parse_texi_text>),
-I<$file_name> is the name of the file the text comes from.
-I<$macro> is for the user-defined macro name the text
-is expanded from. If I<$fixed_line_number> is set, the line number is
-not increased for the different lines, as if the text was the expansion
-of a macro.
-
-=back
-
-=item $tree = parse_texi_file($parser, $file_name)
-
-The file with name I<$file_name> is considered to be a Texinfo file and
-is parsed into a tree.
-
-undef is returned if the file couldn't be read.
-
-=back
-
-The errors collected during the tree parsing are available through the
-C<errors> method. This method comes from C<Texinfo::Report>, and is
-described in L<errors|Texinfo::Report/($error_warnings_list, $error_count) = errors ($converter)>.
-
-=head2 Getting informations on the document
-
-After parsing some informations about the Texinfo code that was processed
-are available from the parser.
-
-Some global informations is available through C<global_informations>
-
-=over
-
-=item $info = global_informations($parser)
-
-The I<$info> returned is a hash reference. The possible keys are
-
-=over
-
-=item input_file_name
-
-The name of the main Texinfo input file.
-
-=item input_encoding_name
-
-=item input_perl_encoding
-
-C<input_encoding_name> string is the encoding name used for the
-Texinfo code.
-C<input_perl_encoding> string is a corresponding perl encoding name.
-
-=item dircategory_direntry
-
-An array of successive C<@dircategory> and C<@direntry> as they appear
-in the document.
-
-=item unassociated_menus
-
-An array of menus that are not associated with a node.
-
-=back
-
-=back
-
-Some command lists are available, such that it is possible to go through
-the corresponding tree elements without walking the tree. They are
-available through C<global_commands_information>
-
-=over
-
-=item $commands = global_commands_information($parser)
-
-I<$commands> is an hash reference. The keys are @-command names. The
-associated values are array references containing all the corresponding
-tree elements.
-
-=back
-
-All the @-commands that have an associated label, that can be the
-target of cross references, C<@node>, C<@anchor> and C<@float> with
-label have a normalized name associated, constructed as described in the
-B<HTML Xref> node in the Texinfo manual. Those normalized labels and
-the association with @-commands is available through C<labels_information>:
-
-=over
-
-=item $labels_information = labels_information($parser)
-
-I<$labels_information> is a hash reference whose keys are normalized
-labels, and the associated value is the corresponding @-command.
-
-=back
-
-Information on C<@float> is also available, grouped by type of
-floats, each type correponding to potential C<@listoffloats>.
-This information is available through the method C<floats_information>.
-
-=over
-
-=item $float_types = floats_information($parser)
-
-I<$float_types> is a hash reference whose keys are normalized float
-types (the first float argument, or the C<@listoffloats> argument).
-The normalization is the same than for node names. The value is the list
-of float tree elements appearing in the texinfo document.
-
-=back
-
-Internal references, that is, @-commands that refers to node, anchors
-or floats within the document are also available:
-
-=over
-
-=item $internal_references_array = internal_references_information($parser);
-
-The function returns a list of cross reference commands referring to
-the same document.
-
-=back
-
-Information about defined indices, merged indices and index entries is
-also available through the C<indices_information> method.
-
-=over
-
-=item indices_information
-
- ($index_names, $merged_indices_hash)
- = indices_information($parser);
-
-The index names is a hash reference. The keys are
-
-=over
-
-=item in_code
-
-1 if the index entries should be formatted as code, 0 in the opposite case.
-
-=item name
-
-The index name.
-
-=item prefix
-
-An array reference of prefix associated to the index.
-
-=item merged_in
-
-In case the index is merged to another index, this key holds the name of
-the index the index is merged into. It takes into account indirectly
-merged indices.
-
-=item contained_indices
-
-An hash reference holding names of indices that are merged to the index,
-including itself. It also contains indirectly merged indices. This key
-is present even if the index is itself later merged to another index.
-
-=item index_entries
-
-An array reference containing index entry structures for index entries
-associated with the index. The index entry could be associated to
-@-commands like C<@cindex>, or C<@item> in C<@vtable>, or definition
-commands entries like C<@deffn>.
-
-The keys of the index entry structures are
-
-=over
-
-=item index_name
-
-The index name.
-
-=item index_prefix
-
-The associated index prefix.
-
-=item index_at_command
-
-The name of the @-command associated with the index entry.
-
-=item index_type_command
-
-The @-command associated with the index entry allowing to
-find the index type.
-
-=item content
-
-An array reference corresponding to the index entry content.
-
-=item content_normalized
-
-An array reference corresponding to the index entry content, independent
-of the current language.
-
-=item command
-
-The element in the parsed tree associated with the @-command holding the
-index entry.
-
-=item node
-
-The node in the parsed tree containing the index entry.
-
-=item number
-
-The number of the index entry.
-
-=item region
-
-The region command (C<@copying>, C<@titlepage>) containing the index entry,
-if it is in such an environement.
-
-=back
-
-=back
-
-The following shows the references corresponding with the default indexes
-I<cp> and I<fn>, the I<fn> index having its entries formatted as code and
-the indices corresponding to the following texinfo
-
- @defindex some
- @defcodeindex code
-
- $index_names = {'cp' => {'name' => 'cp', 'in_code' => 0,
- 'prefix' => ['c', 'cp']},
- 'fn' => {'name' => 'fn', 'in_code' => 1,
- 'prefix' => ['f', 'fn']},
- 'some' => {'in_code' => 0},
- 'code' => {'in_code' => 1}};
-
-If C<name> is not set, it is set to the index name. If C<prefix> is
-not set, it is set to an array containing the index name.
-
-I<$merged_indices_hash> is a hash reference, the key is an index
-name merged in the value.
-
-=back
-
-=head2 Texinfo Parser options
-
-Setting those options is the same as seeing some Texinfo constructs in the
-document.
-
-=over
-
-=item aliases
-
-A hash reference. The key is a command name, the value is the alias, as
-could be set by C<@alias>.
-
-=item clickstyle
-
-A string, the command name associated with C<@clickstyle>.
-
-=item documentlanguage
-
-A string corresponding to a document language set by C<@documentlanguage>.
-
-=item explained_commands
-
-A hash reference of explained commands (currently abbr or acronym).
-The value is also a hash reference. The key of this hash is a normalized
-first argument of these commands, the value is a content array
-corresponding to the explanation associated with this first argument.
-
-For example giving as an option:
-
- 'explained_commands'
- => {'acronym' => {'EU' => [{'text' => 'European Union'}]}
-
-is the same as having the following texinfo code in the document:
-
- @acronym{EU, European Union}
-
-=item INPUT_ENCODING_NAME
-
-=item INPUT_PERL_ENCODING
-
-C<INPUT_ENCODING_NAME> string is the encoding name as set
-by C<@documentencoding>.
-C<INPUT_PERL_ENCODING> string is a corresponding perl encoding name.
-In general those two strings should be set simultaneously.
-
-=item indices
-
-If it is a hash reference, the keys are index names, the values are
-index prefix hash references. The index prefix hash reference values are
-prefix, the value is set if the corresponding index entries should be
-formatted as if in C<@code>. An example is as L</indices_information>.
-
-If it is an array reference, it is a list of index names, as if they were
-entered as
-
- @defindex name
-
-=item kbdinputstyle
-
-A string, the C<@kbdinputstyle> style.
-
-=item labels
-
-A hash reference. Keys are normalized node names as described in the
-B<HTML Xref> node in the Texinfo manual. Instead of a node, it may also
-be a float label or an anchor name. The value is the corresponding
-@-command element in the tree.
-
-=item macros
-
-The associated hash reference has as key user-defined macro names. The
-value is the reference on a macro definition element as obtained by
-the Parser when parsing a C<@macro>. For example
-
- @macro mymacro{arg}
- coucou \arg\ after arg
- @end macro
-
-Is associated to a macro definition element
-
- {'cmdname' => 'macro',
- 'args' => [{'text' => 'mymacro', 'type' => 'macro_name'},
- {'text' => 'arg', 'type' => 'macro_arg}],
- 'contents' => [{'text' => "coucou \arg\ after arg\n", 'type' => 'raw'}],
- 'extra' => {'arg_line' => " mymacro{arg}\n",
- 'macrobody' => "coucou \arg\ after arg\n"}}
-
-= item merged_indices
-
-The associated hash reference holds merged indices information, each key
-is merged in the value. Same as setting C<@synindex> or C<syncodeindex>.
-
-=item novalidate
-
-If set, it is as if C<@novalidate> was set in the document.
-
-=item sections_level
-
-Modifier of the sections level. Same as calling C<@lowersections> or
-C<@raisesections>.
-
-=item values
-
-A hash reference. Keys are names, values are the corresponding values.
-Same as values set by C<@set>.
-
-=back
-
-=head1 TEXINFO TREE
-
-A Texinfo tree element (called element because node is overloaded in
-the Texinfo world) is an hash reference. There are three main category
-of tree element. Tree elements associated with an @-command have a
-C<cmdname> key holding the @-command name. Tree element corresponding
-to text fragments have a C<text> key holding the corresponding text.
-The last category corresponds to other containers (hereafter called
-containers). In most case these containers have a C<type> key holding
-their name. Text fragments and @-command elements may also have an
-associated type when such information is needed.
-
-The children of @-command or container elements are in the array
-correponding with the C<args> key or with the C<contents> key. The
-C<args> key is for arguments of @-commands, in braces or on the @-command
-line. C<args> is also used for the elements of a menu entry, as a menu
-entry is well structured with a limited number of arguments.
-The C<contents> key array holds the contents of the texinfo
-code appearing within a block @-command, within a container,
-within a C<@node> or sectioning @-command.
-
-Another important key for the elements is the C<extra> key which is
-associated to a hash reference and holds all kinds of informations gathered
-during the parsing and that may help with the conversion.
-
-=head2 Element keys
-
-=over
-
-=item cmdname
-
-The command name of @-command elements.
-
-=item text
-
-The text fragment of text elements.
-
-=item type
-
-The type of the element. For C<@verb> it is the delimiter. But otherwise
-it is the type of element considered as a container. Frequent types
-encountered are I<paragraph> for a paragraph container,
-I<brace_command_arg> for the container holding the brace @-commands
-contents, I<misc_line_arg> and I<block_line_arg> contain the arguments
-appearing on the line of @-commands. Text fragments may have a type to
-give an information of the kind of text fragment, for example
-C<empty_spaces_before_argument> is associated to spaces after a brace
-opening and before the argument. Many @-commands elements don't have
-a type associated.
-
-=item args
-
-Arguments in braces or on @-command line, and the elements of a menu entry.
-
-=item contents
-
-The Texinfo appearing in the element. For block commands, other
-containers, C<@node> and sectioning commands.
-
-=item parent
-
-The parent element.
-
-=item line_nr
-
-An hash reference corresponding to information on the location of the
-element in the Texinfo input manual. It should only be available for
-@-command elements, and only for @-commands that are considered to be
-complex enough that the location in the document is needed, for example
-to prepare an error message.
-
-The keys of the line number hash references are
-
-=over
-
-=item line_nr
-
-The line number of the @-command.
-
-=item file_name
-
-The file name where @-command appeared.
-
-=item macro
-
-The user macro name the @-command is expanded from.
-
-=back
-
-=item extra
-
-A hash reference holding any additional information.
-See L</Information available in the extra key>.
-
-=back
-
-=head2 The containers and types
-
-Some types are associated with @-commands. As said above, for C<@verb>
-the type is the delimiter. For a C<@value> command that is not
-expanded because there is no corresponding value set, the type is the
-value argument string.
-
-The following types also happen for @-commands:
-
-=over
-
-=item def_line
-
-This type may be associated with a definition command with a x form,
-like C<@defunx>, C<@defvrx>. For the form without x, the associated
-I<def_line> is the first C<contents> element. It is described in more
-details below.
-
-=item command_as_argument
-
-This is the type of a command given in argument of C<@itemize>,
-C<@table>, C<@vtable> or C<@ftable>. For example in
-
- @itemize @bullet
- @item item
- @end itemize
-
-the element corresponding with bullet has the following keys:
-
- 'cmdname' => 'bullet'
- 'type' => 'command_as_argument'
-
-The parent @-command has an entry in extra for the I<command_as_argument>
-element:
-
- 'cmdname' => 'itemize'
- 'extra => {'command_as_argument' => $command_element_as_argument}
-
-=item index_entry_command
-
-This is the type of index entry command like C<@cindex>, and, more
-importantly user defined index entry commands. So for example if there
-is
-
- @defindex foo
- ...
-
- @fooindex index entry
-
-the C<@fooindex> @-command element will have the I<index_entry_command>
-type.
-
-=item following_arg
-
-This type is set for non alphabetic accent @-commands that don't use brace
-but instead have their argument right after them, as
-
- @~n
-
-=item space_command_arg
-
-This type is set for accent @-commands that don't use brace but instead
-have their argument after some space, as
-
- @ringaccent A
-
-=item definfoenclose_command
-
-This type is set for an @-command that is redefined by C<@definfoenclose>.
-The beginning is in C<< {'extra'}->{'begin'} >> and the end in
-C<< {'extra'}->{'end'} >>.
-
-=back
-
-The text elements may be associated to the following types:
-
-=over
-
-=item empty_line
-
-An empty line.
-
-=item raw
-
-Text in an environment where it should be kept as is (in C<@verbatim>,
-C<@verb>, C<@html>, C<@macro> body).
-
-=item last_raw_newline
-
-The last end of line in a raw block (except for C<@verbatim>).
-
-=item empty_line_after_command
-
-=item empty_spaces_after_command
-
-The text is spaces for I<empty_spaces_after_command>
-or spaces followed by a newline for
-I<empty_line_after_command>, appearing after a @-command that
-takes an argument on the line or a block
-@-commands.
-
-=item spaces_at_end
-
-Space at the end of a @-command line, at the end of some @-commands
-with braces or at the end of a bracketed content on a
-C<@multitable> line.
-
-=item empty_space_at_end_def_bracketed
-
-Space at the end of a bracketed content on definition line.
-
-=item space_at_end_block_command
-
-Space at the end of a block @-command line.
-
-=item empty_spaces_before_argument
-
-The text is spaces appearing after an opening brace of after a
-comma separated @-command arguments.
-
-=item empty_spaces_after_close_brace
-
-Spaces appearing after a closing brace, for some rare commands for which
-this space should be ignorable (like C<@caption>).
-
-=item empty_spaces_before_paragraph
-
-Space appearing before a paragraph beginning.
-
-=item preamble_text
-
-Text appearing before real content, including the C<\input texinfo.tex>.
-
-=item space_at_end_menu_node
-
-=item after_description_line
-
-Space after a node in the menu entry, when there is no description,
-and space appearing after the description line.
-
-=back
-
-Other special types are described in the following.
-
-=over
-
-=item text_root
-
-=item document_root
-
-=item root_line
-
-These types correspond to document roots. C<text_root> is the document
-root when there is no C<@node> or sectioning command. When
-such a command appears, a new root container is used, C<document_root>,
-and C<text_root> becomes the first content of C<document_root>.
-C<root_line> is the type of the root tree when parsing Texinfo line
-fragments using C<parse_texi_line>.
-
-=item preamble
-
-This container holds the text appearing before the first content, including
-the C<\input texinfo.tex> line and following blank lines.
-
-=item preamble_before_setfilename
-
-This container holds everything that appears before C<@setfilename>
-if I<IGNORE_BEFORE_SETFILENAME> parser option is set.
-
-=item paragraph
-
-A paragraph.
-
-=item preformatted
-
-Texinfo code within a format that is not filled. Happens within some
-block commands as C<@example>, but also in menu (in menu descriptions,
-menu comments...).
-
-=item brace_command_arg
-
-=item brace_command_context
-
-=item block_line_arg
-
-=item misc_line_arg
-
-Those containers are within C<args> of @-commands with braces for
-I<brace_command_arg>, @-commands with braces that start a new context
-(C<@footnote>, C<@caption>, C<@math>) for I<brace_command_context>,
-block command argument on their line for I<block_line_arg> and
-other commands that take texinfo code as argument on their line
-(C<@settitle>, C<@node>, C<@section> and similar) for I<misc_line_arg>.
-They hold the content of the command argument.
-
-For example
-
- @code{in code}
-
-leads to
-
- {'cmdname' => 'code',
- 'args' => [{'type' => 'brace_command_arg',
- 'contents' => [{'text' => 'in code'}]}]}
-
-=item misc_arg
-
-Argument of @-command taking specific textual arguments on the line.
-For example C<@set>, C<@clickstyle>, C<@unmacro>, C<@comment>.
-The argument is associated to the I<text> key.
-
-=item menu_entry
-
-=item menu_entry_leading_text
-
-=item menu_entry_name
-
-=item menu_entry_separator
-
-=item menu_entry_node
-
-=item menu_entry_description
-
-A I<menu_entry> holds a full menu entry, like
-
- * node:: description.
-
-The different elements of the menu entry are directly in the
-I<menu_entry> C<args> array reference.
-
-I<menu_entry_leading_text> holds the star and following spaces.
-I<menu_entry_name> is the menu entry name (if present), I<menu_entry_node>
-corresponds to the node in the menu entry, I<menu_entry_separator> holds
-the text after the node and before the description, in most case
-C<:: >. Last I<menu_entry_description> is for the description.
-
-=item menu_comment
-
-The I<menu_comment> container holds what is between menu entries
-in menus. For example in
-
- @menu
- Menu title
-
- * entry::
-
- Between entries
- * other::
- @end menu
-
-Both
-
- Menu title
-
-and
-
- Between entries
-
-will be in I<menu_comment>.
-
-=item macro_name
-
-=item macro_arg
-
-Taken from C<@macro> definition and put in the C<args> key array of
-the macro, I<macro_name> is the type of the text fragment corresponding
-to the macro name, I<macro_arg> is the type of the text fragments
-correponding to macro formal arguments.
-
-=item before_item
-
-A container for content before the first C<@item> of block @-commands
-with items (C<@table>, C<@multitable>, C<@enumerate>...).
-
-=item table_entry
-
-=item table_term
-
-=item table_item
-
-=item inter_item
-
-Those containers appear in C<@table>, C<@ftable> and C<@vtable>.
-A I<table_entry> container contains C<@item> and C<@itemx> and
-the text following the C<@item> and C<@itemx> entries. A I<table_term>
-container holds all the C<@item> and C<@itemx> of the I<table_entry>.
-The I<table_item> container holds the content following the I<table_term>.
-If there is some content before an C<@itemx> (normally only comments,
-empty lines or maybe index entriees are allowed), it will be in
-a container with type I<inter_item>.
-
-=item def_line
-
-=item def_item
-
-=item inter_def_item
-
-The I<def_line> type is either associated with a container within a
-definition command, or is the type of a definition command with a x
-form, like C<@deffnx>. It holds the definition line arguments.
-The container with type I<def_item> holds the definition text content.
-Content appearing before a definition command with a x form is in
-an I<inter_def_item> container.
-
-=item multitable_head
-
-=item multitable_body
-
-=item row
-
-In C<@multitable>, a I<multitable_head> container contains all the row
-with C<@headitem>, while I<multitable_body> contains the rows associated
-with C<@item>. A I<row> container contains the C<@item> and @<tab>
-forming a row.
-
-=item bracketed
-
-This a special type containing content in brackets in the context
-where they are valid, in C<@math>.
-
-=item bracketed_def_content
-
-Content in brackets on definition command lines.
-
-=item bracketed_multitable_prototype
-
-=item row_prototype
-
-On C<@multitable> line, content in brackets is in
-I<bracketed_multitable_prototype>, text not in brackets
-is in I<row_prototype>.
-
-=back
-
-=head2 Information available in the extra key
-
-Some extra keys are available for more than one @-command:
-
-=over
-
-=item block_command_line_contents
-
-=item brace_command_contents
-
-An array associated with block @-commands or @-commands with braces
-taking more than one argument or with a simple text content
-(C<@anchor>, C<@titlefont>, C<@dmn>). Each of the element of the
-array is either undef, if there is no argument at that place,
-or an array reference holding the argument contents.
-
-=item misc_content
-
-The contents of an @-command taking regular Texinfo code as
-argument, like C<@sttitle> or C<@exdent>.
-
-=item end_command
-
-The C<@end> associated to the block @-command.
-
-=item missing_argument
-
-Set for some @-commands with line arguments and a missing argument.
-
-=item invalid_nesting
-
-Set if the @-command appears in a context it shouldn't appear in,
-like a block @-command on sectioning @-command line.
-
-=item arg_line
-
-The string correspond to the line after the @-command
-for @-commands that have special arguments on their line,
-and for C<@macro> line.
-
-=item text_arg
-
-The string correspond to the line after the @-command for @-commands
-that have an argument interpreted as simple text, like C<@setfilename>,
-C<@end> or C<@documentencoding>.
-
-=item index_entry
-
-The index entry information (described in L</index_entries>
-in details) is associated to @-commands that have an associated
-index entry.
-
-=item misc_args
-
-An array holding strings, the arguments of @-commands taking simple
-textual arguments as arguments, like C<@everyheadingmarks>,
-C<@frenchspacing>, C<@alias>, C<@synindex>, C<@columnfractions>.
-Also filled for C<@set>, C<@clickstyle>, C<@unmacro> or C<@comment>
-arguments.
-
-=item spaces_after_command
-
-For @-commands followed by spaces, a reference to the corresponding
-text element.
-
-=item spaces_before_argument
-
-For @-commands with opening brace followed by spaces held in a
-C<empty_spaces_before_argument> element, a reference to that element.
-
-=item spaces
-
-For accent commands consisting in letter only, like C<@ringaccent>
-appearing like
-
- @ringaccent A
-
-there is a I<spaces> key which holds the spaces appearing between
-the command and the argument.
-
-=back
-
-Then there are extra keys specific of @-commands or containers.
-
-=over
-
-=item C<@macro>
-
-I<invalid_syntax> is set if there was an error on the C<@macro>
-line. The key I<args_index> associates format arguments with
-their index on the @macro line formal arguments definition.
-The I<macrobody> holds the @macro body. I<arg_line> holds the
-line after C<@macro>.
-
-=item C<@node>
-
-The arguments are in the I<nodes_manuals> array. Each
-of the entry has a I<node_content> key for
-an array holding the corresponding content, a I<manual_content>
-if there is an associated external manual name, and I<normalized>
-key for the normalized label, built as specified in the Texinfo manual
-in the B<HTML Xref> node.
-
-An I<associated_section> key holds the tree element of the
-sectioning command that follows the node.
-
-=item C<@part>
-
-The next sectioning command is in I<part_associated_section>.
-
-=item sectioning command
-
-The node preceding the command is in I<associated_node>.
-The part preceding the command is in I<associated_part>.
-If the level of the document was modified by C<@raisections>
-or C<@lowersections>, the differential level is in I<sections_level>.
-
-=item C<@float>
-
-=item C<@listoffloats>
-
-If float has a second argument, and for C<@listoffloats>
-argument there is a I<type> key which is also a hash reference,
-with two keys. I<content> is an array holding the associated
-contents, I<normalized> holds the normalized float type.
-
-I<caption> and I<shortcaption> holds the corresponding
-tree elements for float. The C<@caption> or C<@shortcaption>
-have the float tree element stored in I<float>.
-
-=item C<@float>
-
-=item C<@anchor>
-
-@-Commands that are targets for cross references have a I<normalized>
-key for the normalized label, built as specified in the Texinfo manual
-in the B<HTML Xref> node. There is also a I<node_content> key for
-an array holding the corresponding content.
-
-C<@anchor> also has I<region> set to the special region name if
-in a special region (C<@copying>, C<@titlepage>).
-
-=item C<@ref>
-
-=item C<@xref>
-
-=item C<@pxref>
-
-=item C<@inforef>
-
-The I<node_argument> entry holds a parsed node entry, like
-the one appearing in the I<nodes_manuals> array for C<@node>.
-
-=item C<@abbr>
-
-=item C<@acronym>
-
-The first argument normalized is in I<normalized>. If there is no
-second argument, but a second argument appeared previously for the
-same first argument, the second argument content of the previous
-command is stored in I<explanation_contents>.
-
-=item definition command
-
-I<def_command> holds the command name, without x if it is
-an x form of a definition command.
-I<original_def_cmdname> is the original def command.
-
-If it is an x form, it has I<not_after_command> set if not
-appearing after the definition command without x.
-
-=item def_line
-
-The I<def_arg> extra key holds an array reference corresponding to
-the parsed definition line argument. Each of the the element of the
-array is a two element array reference. The first element is the type
-which could be I<spaces> for a space, types specific of the
-definition, like I<category>, I<name>, I<class>, I<type>, and, at the
-end, a mix of I<arg>, I<typearg>, I<delimiter> depending on the definition.
-The second element is a hash reference holding the content of the
-type.
-
-The I<def_parsed_hash> hash reference has as key the type specific
-of the definition, and as value the corresponding content tree.
-
-=item C<@multitable>
-
-The key I<max_columns> holds the maximal number of columns. If there
-are prototypes on the line they are in the array associated with
-I<prototypes>. In that case, I<prototypes_line> also holds this
-information, and, in addition, keeps spaces with type C<prototype_space>.
-If there is a C<@columnfractions> as argument, then the
-I<columnfractions> key is associated with the array of columnfractions
-arguments, holding all the column fractions.
-
-=item C<@enumerate>
-
-The extra key I<enumerate_specification> contains the enumerate
-argument.
-
-=item C<@itemize>
-
-=item C<@table>
-
-=item C<@vtable>
-
-=item C<@ftable>
-
-The I<command_as_argument> extra key points on the @-command on
-as argument on the @-command line.
-
-=item paragraph
-
-The I<indent> or I<noindent> key value is set if the corresponding
-@-commands are associated with that paragraph.
-
-=item C<@item> in C<@enumerate> or C<@itemize>
-
-The I<item_number> extra key holds the number of this item.
-
-=item C<@item> and C<@tab> in C<@multitable>
-
-The I<cell_count> index key holds the index of the column of
-the cell.
-
-=item row
-
-The I<row_number> index key holds the index of the row in
-the C<@multitable>.
-
-=item C<@author>
-
-If in a C<@titlepage>, the titlepage is in I<titlepage>, if in
-C<@quotation> or C<@smallquotation>, the corresponding tree element
-is in I<quotation>.
-
-The author tree element is in the I<author> array of the C<@titlepage>
-or the C<@quotation> or C<@smallquotation> it is associated with.
-
-=item C<@ifclear>
-
-=item C<@ifset>
-
-The original line is in I<line>.
-
-=item C<@end>
-
-The textual argument is in I<command_argument>.
-The corresponding @-command is in I<command>.
-
-=item C<@documentencoding>
-
-The argument, normalized is in I<input_encoding_name> if it is recognized.
-The corresponding perl encoding name is in I<input_perl_encoding>.
-
-=item C<@click>
-
-In I<clickstyle> there is the current clickstyle command.
-
-=item C<@kbd>
-
-I<code> is set depending on the context and C<@kbdinputstyle>.
-
-=item definfoenclose defined commands
-
-I<begin> holds the string beginning the definfoenclose,
-I<end> holds the string ending the definfoenclose.
-
-=item menu_entry
-
-The I<menu_entry_description> and I<menu_entry_name> keys
-are associated with the corresponding tree elements. The
-I<menu_entry_node> holds the parsed node entry, like
-the one appearing in the I<nodes_manuals> array for C<@node>.
-
-=item empty_line_after_command
-
-The corresponding command is in I<command>.
-
-=item C<@inlinefmt>
-
-=item C<@inlineraw>
-
-=item C<@inlinefmtifelse>
-
-=item C<@inlineifclear>
-
-=item C<@inlineifset>
-
-The first argument is in I<format>. If an argument has been determined
-as being expanded by the Parser, the index of this argument is in
-I<expand_index>. Index numbering begins at 0, but the first argument is
-always the format or flag name, so, if set, it should be 1 or 2 for
-C<@inlinefmtifelse>, and 1 for other commands.
-
-=back
-
-=head1 SEE ALSO
-
-L<Texinfo manual|http://www.gnu.org/s/texinfo/manual/texinfo/>
-
-=begin :comment
-
-Mention other useful documentation such as the documentation of
-related modules or operating system documentation (such as man pages
-in UNIX), or any relevant external documentation such as RFCs or
-standards.
-
-If you have a mailing list set up for your module, mention it here.
-
-If you have a web site set up for your module, mention it here.
-
-=end :comment
-
-=head1 AUTHOR
-
-Patrice Dumas, E<lt>pertusus@free.frE<gt>
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright 2010, 2011, 2012 Free Software Foundation, Inc.
-
-This library is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3 of the License,
-or (at your option) any later version.
-
-=cut
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.c
index b96050c8f6..0a123eeae6 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.c
@@ -588,6 +588,22 @@ XS_EUPXS(XS_Texinfo__Parser_conf_set_IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME)
}
+XS_EUPXS(XS_Texinfo__Parser_set_novalidate); /* prototype to pass -Wmissing-prototypes */
+XS_EUPXS(XS_Texinfo__Parser_set_novalidate)
+{
+ dVAR; dXSARGS;
+ if (items != 1)
+ croak_xs_usage(cv, "i");
+ {
+ int i = (int)SvIV(ST(0))
+;
+
+ set_novalidate(i);
+ }
+ XSRETURN_EMPTY;
+}
+
+
XS_EUPXS(XS_Texinfo__Parser_set_documentlanguage); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Texinfo__Parser_set_documentlanguage)
{
@@ -671,6 +687,7 @@ XS_EXTERNAL(boot_Texinfo__Parser)
(void)newXSproto_portable("Texinfo::Parser::conf_set_show_menu", XS_Texinfo__Parser_conf_set_show_menu, file, "$");
(void)newXSproto_portable("Texinfo::Parser::conf_set_CPP_LINE_DIRECTIVES", XS_Texinfo__Parser_conf_set_CPP_LINE_DIRECTIVES, file, "$");
(void)newXSproto_portable("Texinfo::Parser::conf_set_IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME", XS_Texinfo__Parser_conf_set_IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME, file, "$");
+ (void)newXSproto_portable("Texinfo::Parser::set_novalidate", XS_Texinfo__Parser_set_novalidate, file, "$");
(void)newXSproto_portable("Texinfo::Parser::set_documentlanguage", XS_Texinfo__Parser_set_documentlanguage, file, "$");
(void)newXSproto_portable("Texinfo::Parser::set_debug", XS_Texinfo__Parser_set_debug, file, "$");
#if PERL_VERSION_LE(5, 21, 5)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.pm b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.pm
index 5645a11c1b..ee88072f24 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.pm
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.pm
@@ -1,4 +1,4 @@
-# Copyright 2014-2019 Free Software Foundation, Inc.
+# Copyright 2014-2020 Free Software Foundation, Inc.
#
# 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
@@ -13,12 +13,10 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-package Texinfo::Parser;
+# File to be loaded in conjunction with Parsetexi.xs module
-use Texinfo::XSLoader;
+package Texinfo::Parser;
-# same as texi2any.pl, although I don't know what the real requirement
-# is for this module.
use 5.00405;
use strict;
use warnings;
@@ -53,12 +51,7 @@ sub get_conf($$)
my %parser_default_configuration =
(%Texinfo::Common::default_parser_state_configuration,
- %Texinfo::Common::default_customization_values);
-
-my %tree_informations;
-foreach my $tree_information ('values', 'macros', 'explained_commands', 'labels') {
- $tree_informations{$tree_information} = 1;
-}
+ %Texinfo::Common::default_parser_customization_values);
use Storable qw(dclone); # standard in 5.007003
@@ -66,7 +59,7 @@ sub simple_parser {
goto &parser;
}
-# Stub for Texinfo::Parser::parser (line 574)
+# Stub for Texinfo::Parser::parser
sub parser (;$$)
{
my $conf = shift;
@@ -74,9 +67,11 @@ sub parser (;$$)
my $parser = dclone(\%parser_default_configuration);
reset_parser ();
- # fixme: these are overwritten immediately after
if (defined($conf)) {
foreach my $key (keys (%$conf)) {
+ # Copy conf to parser object. Not used in parser module itself
+ # but some settings may be used elsewhere, especially in
+ # Structuring.pm.
if ($key ne 'values' and ref($conf->{$key})) {
$parser->{$key} = dclone($conf->{$key});
} else {
@@ -103,21 +98,35 @@ sub parser (;$$)
} elsif ($key eq 'expanded_formats') {
clear_expanded_formats ();
- for my $f (@{$parser->{$key}}) {
+ for my $f (@{$conf->{$key}}) {
add_expanded_format ($f);
}
} elsif ($key eq 'documentlanguage') {
if (defined ($conf->{$key})) {
set_documentlanguage ($conf->{$key});
}
- } elsif ($key eq 'SHOW_MENU') {
- conf_set_show_menu ($conf->{$key});
+ } elsif ($key eq 'info') {
+ if (defined($conf->{$key}->{'novalidate'})) {
+ set_novalidate($conf->{$key}->{'novalidate'});
+ }
+ } elsif ($key eq 'FORMAT_MENU') {
+ if ($conf->{$key} eq 'menu') {
+ conf_set_show_menu (1);
+ } else {
+ conf_set_show_menu (0);
+ }
} elsif ($key eq 'IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME') {
conf_set_IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME ($conf->{$key});
} elsif ($key eq 'CPP_LINE_DIRECTIVES') {
conf_set_CPP_LINE_DIRECTIVES($conf->{$key});
+ } elsif ($key eq 'DEBUG') {
+ set_debug($conf->{$key}) if $conf->{'key'};
+ } elsif ($key eq 'in_gdt'
+ or $key eq 'ENABLE_ENCODING'
+ or defined($Texinfo::Common::default_structure_customization_values{$key})) {
+ # no action needed
} else {
- #warn "ignoring parser configuration value \"$key\"\n";
+ warn "ignoring parser configuration value \"$key\"\n";
}
}
}
@@ -185,6 +194,16 @@ sub get_parser_info {
$self->{'info'} = $GLOBAL_INFO;
$self->{'extra'} = $GLOBAL_INFO2;
+ # Propagate these settings from 'info' hash to 'values' hash.
+ # The 'values' hash is not otherwise used. Maybe we should use
+ # the 'info' hash for this instead in the pure Perl code.
+ for my $txi_flag ('txiindexatsignignore', 'txiindexbackslashignore',
+ 'txiindexhyphenignore', 'txiindexlessthanignore') {
+ if ($self->{'info'}->{$txi_flag}) {
+ $self->{'values'}->{$txi_flag} = 1;
+ }
+ }
+
_get_errors ($self);
Texinfo::Common::complete_indices ($self);
}
@@ -221,7 +240,7 @@ sub _maybe_ignore_before_setfilename {
}
}
-# Replacement for Texinfo::Parser::parse_texi_file (line 835)
+# Replacement for Texinfo::Parser::parse_texi_file
sub parse_texi_file ($$)
{
my $self = shift;
@@ -239,7 +258,6 @@ sub parse_texi_file ($$)
get_parser_info ($self);
_complete_node_menus ($self, $TREE);
- # line 899
my $text_root;
if ($TREE->{'type'} eq 'text_root') {
$text_root = $TREE;
@@ -277,7 +295,7 @@ sub _get_errors($)
}
}
-# Replacement for Texinfo::Parser::parse_texi_text (line 757)
+# Replacement for Texinfo::Parser::parse_texi_text
#
# Used in tests under tp/t.
sub parse_texi_text($$;$$$$)
@@ -314,7 +332,7 @@ sub parse_texi_text($$;$$$$)
return $tree;
}
-# Replacement for Texinfo::Parser::parse_texi_line (line 918)
+# Replacement for Texinfo::Parser::parse_texi_line
sub parse_texi_line($$;$$$$)
{
my $self = shift;
@@ -333,7 +351,7 @@ sub parse_texi_line($$;$$$$)
return $tree;
}
-# Public interfaces of Texinfo::Parser (starting line 942)
+# Public interfaces of Texinfo::Parser
sub indices_information($)
{
my $self = shift;
@@ -376,18 +394,5 @@ sub labels_information($)
goto &Texinfo::Common::labels_information;
}
-BEGIN {
- Texinfo::XSLoader::init (
- "Texinfo::Parser",
- "Texinfo::Parser",
- "Texinfo::ParserNonXS",
- "Parsetexi",
- 0);
-} # end BEGIN
-
-END {
- #reset_parser (); # for debugging memory leaks
-}
-
1;
__END__
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.xs b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.xs
index 2995cd5cdf..66cd76e145 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.xs
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/Parsetexi.xs
@@ -101,6 +101,9 @@ void
conf_set_IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME (int i)
void
+set_novalidate (int i)
+
+void
set_documentlanguage (value)
char *value
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.c
index 76832a3538..f85ceff097 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.c
@@ -1,4 +1,4 @@
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -40,6 +40,7 @@
ELEMENT *Root;
+#ifdef ENABLE_NLS
#define LOCALEDIR DATADIR "/locale"
@@ -56,7 +57,12 @@ find_locales_dir (char *builddir)
dTHX;
- asprintf (&s, "%s/LocaleData", builddir);
+ /* Can't use asprintf here, because it might come from Gnulib, and
+ will then use malloc that is different from Perl's malloc, whereas
+ free below is redirected to Perl's implementation. This could
+ cause crashes if the two malloc/free implementations were different. */
+ s = malloc (strlen (builddir) + strlen ("/LocaleData") + 1);
+ sprintf (s, "%s/LocaleData", builddir);
dir = opendir (s);
if (!dir)
{
@@ -88,6 +94,16 @@ init (int texinfo_uninstalled, char *builddir)
return 1;
}
+#else
+
+int
+init (int texinfo_uninstalled, char *builddir)
+{
+ return 1;
+}
+
+#endif
+
static void
reset_floats ()
{
@@ -267,22 +283,24 @@ element_to_perl_hash (ELEMENT *e)
/* TODO: Same optimizations as for 'type'. */
}
- /* TODO sort out all these special cases.
- Makes no sense to have 'contents' created for glyph commands like
- @arrow{} or for accent commands. */
+ /* A lot of special cases for when an empty contents array should be
+ created. Largely by trial and error to match the Perl code. Some of
+ them don't make sense, like @arrow{}, @image, or for accent commands. */
if (e->contents.number > 0
|| e->type == ET_text_root
|| e->type == ET_root_line
|| e->type == ET_bracketed
|| e->type == ET_bracketed_def_content
|| e->type == ET_line_arg
- || e->cmd == CM_image // why image?
+ || e->cmd == CM_image
|| e->cmd == CM_item && e->parent && e->parent->type == ET_row
+ || e->cmd == CM_headitem && e->parent && e->parent->type == ET_row
|| e->cmd == CM_tab && e->parent && e->parent->type == ET_row
|| e->cmd == CM_anchor
|| e->cmd == CM_macro
|| e->cmd == CM_multitable
|| e->type == ET_menu_entry_name
+ || e->type == ET_menu_entry_description
|| e->type == ET_brace_command_arg
|| e->type == ET_brace_command_context
|| e->type == ET_block_line_arg
@@ -292,6 +310,7 @@ element_to_perl_hash (ELEMENT *e)
|| e->type == ET_elided
|| e->type == ET_elided_block
|| e->type == ET_preformatted
+ || e->type == ET_paragraph
|| (command_flags(e) & CF_root)
|| (command_data(e->cmd).flags & CF_brace
&& (command_data(e->cmd).data >= 0
@@ -419,8 +438,10 @@ element_to_perl_hash (ELEMENT *e)
break;
}
case extra_integer:
- { /* A simple integer. */
- int value = (int) f;
+ { /* A simple integer. The intptr_t cast here prevents
+ a warning on MinGW ("cast from pointer to integer of
+ different size"). */
+ IV value = (IV) (intptr_t) f;
STORE(newSViv (value));
break;
}
@@ -513,7 +534,7 @@ element_to_perl_hash (ELEMENT *e)
break;
}
default:
- abort ();
+ fatal ("unknown extra type");
break;
}
}
@@ -750,7 +771,7 @@ build_single_index_data (INDEX *i)
if (!e->content->hv)
{
if (e->content->parent)
- abort (); /* element should not be in-tree */
+ fatal ("index element should not be in-tree");
element_to_perl_hash (e->content);
}
contents_array = hv_fetch (e->content->hv,
@@ -876,6 +897,17 @@ build_global_info (void)
hv_store (hv, "novalidate", strlen ("novalidate"),
newSVpv ("1", 0), 0);
}
+
+ char *txi_flags[] = { "txiindexatsignignore", "txiindexbackslashignore",
+ "txiindexhyphenignore", "txiindexlessthanignore", 0};
+ char **p;
+
+ for (p = txi_flags; (*p); p++)
+ {
+ if (fetch_value (*p))
+ hv_store (hv, *p, strlen (*p), newSVpv ("1", 0), 0);
+ }
+
return hv;
}
@@ -908,10 +940,6 @@ build_global_info2 (void)
BUILD_GLOBAL_UNIQ(titlepage);
BUILD_GLOBAL_UNIQ(top);
BUILD_GLOBAL_UNIQ(documentdescription);
- BUILD_GLOBAL_UNIQ(setcontentsaftertitlepage);
- BUILD_GLOBAL_UNIQ(setshortcontentsaftertitlepage);
- BUILD_GLOBAL_UNIQ(novalidate);
- BUILD_GLOBAL_UNIQ(validatemenus);
BUILD_GLOBAL_UNIQ(pagesizes);
BUILD_GLOBAL_UNIQ(fonttextsize);
BUILD_GLOBAL_UNIQ(footnotestyle);
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.h
index 71ca3a0725..7843680255 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/api.h
@@ -1,4 +1,6 @@
/* api.h - declarations for api.c */
+#ifndef API_H
+#define API_H
extern ELEMENT *Root;
int init (int texinfo_uninstalled, char *srcdir_in);
@@ -21,3 +23,4 @@ HV *build_global_info (void);
HV *build_global_info2 (void);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/close.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/close.c
index 3ddb41910b..2568be2052 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/close.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/close.c
@@ -324,10 +324,11 @@ close_current (ELEMENT *current,
case ET_menu_entry_description:
c = pop_context ();
if (c != ct_preformatted)
- abort ();
+ fatal ("preformatted context expected");
/* Remove empty menu_comment */
- if (current->contents.number == 0)
+ if (current->type == ET_menu_comment
+ && current->contents.number == 0)
{
current = current->parent;
destroy_element (pop_element_from_contents (current));
@@ -342,7 +343,7 @@ close_current (ELEMENT *current,
if (c != ct_line && c != ct_def)
{
/* error */
- abort ();
+ fatal ("line or def context expected");
}
current = current->parent;
break;
@@ -384,24 +385,30 @@ close_commands (ELEMENT *current, enum command_id closed_command,
if (closed_command && current->cmd == closed_command)
{
- /* 1758 - various error messages */
if (command_data(current->cmd).flags & CF_preformatted)
{
if (pop_context () != ct_preformatted)
- abort ();
+ fatal ("preformatted context expected");
}
else if (command_data(current->cmd).flags & CF_format_raw)
{
if (pop_context () != ct_rawpreformatted)
- abort ();
- // pop expanded formats stack
+ fatal ("rawpreformatted context expected");
+ // TODO: pop expanded formats stack
}
else if (command_data(current->cmd).flags & CF_menu)
{
enum context c;
c = pop_context ();
if (c != ct_menu && c != ct_preformatted)
- abort ();
+ fatal ("menu or preformatted context expected");
+ }
+ else if (current->cmd == CM_math || current->cmd == CM_displaymath)
+ {
+ enum context c;
+ c = pop_context ();
+ if (c != ct_math)
+ fatal ("math context expected");
}
if (command_data(current->cmd).data == BLOCK_region)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.awk b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.awk
index 5fea87bf9c..9974d1aefb 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.awk
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.awk
@@ -1,4 +1,4 @@
-# Copyright 2010-2019 Free Software Foundation, Inc.
+# Copyright 2010-2021 Free Software Foundation, Inc.
#
# 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
@@ -74,6 +74,8 @@ BEGIN {
CI = srcdir "/command_ids.h"
print "/* This file automatically generated by command_data.awk */" > CI
+ print "#ifndef COMMAND_IDS_H" > CI
+ print "#define COMMAND_IDS_H" > CI
print > CI
print "/* Useful aliases */" > CI
print "#define CM_hex_09 CM_TAB" > CI
@@ -154,6 +156,7 @@ END {
}
print "};" > CD
print "};" > CI
+ print "#endif" > CI
}
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.c
index 44548f867a..7d0e5a0976 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.c
@@ -53,13 +53,14 @@ COMMAND builtin_command_data[] = {
"author", CF_line | CF_global, LINE_line,
"b", CF_brace, BRACE_style,
"backslashchar", CF_brace, 0,
+"bsixpaper", CF_line, LINE_skipline,
"bullet", CF_brace, 0,
"bye", CF_line, LINE_skipline,
"c", CF_line, LINE_lineraw,
"caption", CF_brace, BRACE_context,
"cartouche", CF_block, 0,
"center", CF_line, LINE_line,
-"centerchap", CF_root | CF_line | CF_sectioning, LINE_line,
+"centerchap", CF_root | CF_line | CF_sectioning | CF_deprecated, LINE_line,
"chapheading", CF_line | CF_sectioning, LINE_line,
"chapter", CF_root | CF_line | CF_sectioning, LINE_line,
"cite", CF_brace, BRACE_style,
@@ -83,7 +84,7 @@ COMMAND builtin_command_data[] = {
"deffn", CF_block | CF_def, 0,
"deffnx", CF_line | CF_def, LINE_line,
"defindex", CF_line, 1,
-"definfoenclose", CF_line, 3,
+"definfoenclose", CF_line | CF_deprecated, 3,
"defivar", CF_block | CF_def | CF_def_alias, 0,
"defivarx", CF_line | CF_def | CF_def_alias, LINE_line,
"defmac", CF_block | CF_def | CF_def_alias, 0,
@@ -127,6 +128,7 @@ COMMAND builtin_command_data[] = {
"dircategory", CF_line, LINE_line,
"direntry", CF_block | CF_menu, 0,
"display", CF_block | CF_preformatted, 0,
+"displaymath", CF_block, 0,
"dmn", CF_brace, 1,
"docbook", CF_block | CF_format_raw, 0,
"documentdescription", CF_block | CF_global_unique, BLOCK_region,
@@ -153,7 +155,7 @@ COMMAND builtin_command_data[] = {
"everyfootingmarks", CF_line | CF_global_unique, 1,
"everyheading", CF_line | CF_global_unique, LINE_lineraw,
"everyheadingmarks", CF_line | CF_global_unique, 1,
-"example", CF_block | CF_preformatted | CF_preformatted_code, 0,
+"example", CF_block | CF_preformatted | CF_preformatted_code, BLOCK_variadic,
"exampleindent", CF_line | CF_global, 1,
"exclamdown", CF_brace, 0,
"exdent", CF_line, LINE_line,
@@ -208,7 +210,7 @@ COMMAND builtin_command_data[] = {
"indent", CF_other, OTHER_skipspace,
"indentedblock", CF_block, 0,
"indicateurl", CF_brace | CF_code_style, 1,
-"inforef", CF_brace | CF_ref, 3,
+"inforef", CF_brace | CF_ref | CF_deprecated, 3,
"inlinefmt", CF_brace | CF_inline, 2,
"inlinefmtifelse", CF_brace | CF_inline, 3,
"inlineifclear", CF_brace | CF_inline, 2,
@@ -270,7 +272,7 @@ COMMAND builtin_command_data[] = {
"raisesections", CF_line, LINE_skipline,
"rbracechar", CF_brace, 0,
"ref", CF_brace | CF_ref, 5,
-"refill", CF_other, OTHER_noarg,
+"refill", CF_other | CF_deprecated, OTHER_noarg,
"registeredsymbol", CF_brace, 0,
"result", CF_brace, 0,
"ringaccent", CF_brace | CF_accent, BRACE_accent,
@@ -283,9 +285,7 @@ COMMAND builtin_command_data[] = {
"seeentry", CF_brace, 1,
"set", CF_line, LINE_special,
"setchapternewpage", CF_line | CF_global_unique, 1,
-"setcontentsaftertitlepage", CF_line | CF_deprecated, LINE_skipline,
"setfilename", CF_line | CF_global_unique, LINE_text,
-"setshortcontentsaftertitlepage", CF_line | CF_deprecated, LINE_skipline,
"settitle", CF_line | CF_global_unique, LINE_line,
"shortcaption", CF_brace, BRACE_context,
"shortcontents", CF_line | CF_global, LINE_skipline,
@@ -344,7 +344,6 @@ COMMAND builtin_command_data[] = {
"urefbreakstyle", CF_line | CF_global, 1,
"url", CF_brace, 3,
"v", CF_brace | CF_accent, BRACE_accent,
-"validatemenus", CF_line | CF_global_unique, 1,
"value", CF_brace, 0,
"var", CF_brace, BRACE_style,
"verb", CF_brace | CF_code_style, BRACE_other,
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.txt b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.txt
index e2b62eb554..e5d5643a46 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.txt
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_data.txt
@@ -1,4 +1,4 @@
-# Copyright 2010-2019 Free Software Foundation, Inc.
+# Copyright 2010-2020 Free Software Foundation, Inc.
#
# This file is part of GNU Texinfo.
#
@@ -18,138 +18,136 @@
# Information from tp/Texinfo/Common.pm
# Not in Common.pm
-value brace
+value brace
##############################################################
# no brace commands - single letter commands
-* nobrace
+* nobrace
# space
-\x20 nobrace
-\t nobrace
-\n nobrace
-- nobrace
-| nobrace
-/ nobrace
-: nobrace
-! nobrace
-? nobrace
-. nobrace
-@ nobrace
-& nobrace
-} nobrace
-{ nobrace
-\\ nobrace
+\x20 nobrace
+\t nobrace
+\n nobrace
+- nobrace
+| nobrace
+/ nobrace
+: nobrace
+! nobrace
+? nobrace
+. nobrace
+@ nobrace
+& nobrace
+} nobrace
+{ nobrace
+\\ nobrace
##########################################################
#
# line commands
#
##########################################################
-node line LINE_line
-bye line LINE_skipline
-end line LINE_text
+node line LINE_line
+bye line LINE_skipline
+end line LINE_text
# set, clear
-set line LINE_special
-clear line LINE_special
-unmacro line LINE_special
+set line LINE_special
+clear line LINE_special
+unmacro line LINE_special
# comments
-c line LINE_lineraw
-comment line LINE_lineraw
+c line LINE_lineraw
+comment line LINE_lineraw
# special
-definfoenclose line 3
-alias line 2
+definfoenclose line,deprecated 3
+alias line 2
# number of arguments is not known in advance.
-columnfractions line 1
+columnfractions line 1
# file names
-setfilename line,global_unique LINE_text
-verbatiminclude line LINE_text
-include line LINE_text
-
-raisesections line LINE_skipline
-lowersections line LINE_skipline
-contents line,global LINE_skipline
-shortcontents line,global LINE_skipline
-summarycontents line,global LINE_skipline
-insertcopying line,global LINE_skipline
-clickstyle line,global LINE_special
+setfilename line,global_unique LINE_text
+verbatiminclude line LINE_text
+include line LINE_text
+
+raisesections line LINE_skipline
+lowersections line LINE_skipline
+contents line,global LINE_skipline
+shortcontents line,global LINE_skipline
+summarycontents line,global LINE_skipline
+insertcopying line,global LINE_skipline
+clickstyle line,global LINE_special
# more relevant in preamble
-setcontentsaftertitlepage line,deprecated LINE_skipline
-setshortcontentsaftertitlepage line,deprecated LINE_skipline
-documentencoding line,global LINE_text
-novalidate line,global_unique LINE_skipline
-validatemenus line,global_unique 1
-dircategory line LINE_line
+documentencoding line,global LINE_text
+novalidate line,global_unique LINE_skipline
+dircategory line LINE_line
# with direntry is significant
-pagesizes line,global_unique LINE_line
+pagesizes line,global_unique LINE_line
# or one? 200mm,150mm 11.5in
-finalout line LINE_skipline
-paragraphindent line,global 1
+finalout line LINE_skipline
+paragraphindent line,global 1
# or a number and forbids anything else on the line
-firstparagraphindent line,global 1
-frenchspacing line,global 1
-codequoteundirected line,global 1
-codequotebacktick line,global 1
-xrefautomaticsectiontitle line,global 1
-deftypefnnewline line,global 1
-fonttextsize line,global_unique 1
-allowcodebreaks line,global 1
-exampleindent line,global 1
-footnotestyle line,global_unique 1
-urefbreakstyle line,global 1
-afourpaper line LINE_skipline
-afivepaper line LINE_skipline
-afourlatex line LINE_skipline
-afourwide line LINE_skipline
-headings line,global 1
-setchapternewpage line,global_unique 1
+firstparagraphindent line,global 1
+frenchspacing line,global 1
+codequoteundirected line,global 1
+codequotebacktick line,global 1
+xrefautomaticsectiontitle line,global 1
+deftypefnnewline line,global 1
+fonttextsize line,global_unique 1
+allowcodebreaks line,global 1
+exampleindent line,global 1
+footnotestyle line,global_unique 1
+urefbreakstyle line,global 1
+afourpaper line LINE_skipline
+afivepaper line LINE_skipline
+afourlatex line LINE_skipline
+afourwide line LINE_skipline
+bsixpaper line LINE_skipline
+headings line,global 1
+setchapternewpage line,global_unique 1
# only relevant in TeX, and special
-everyheading line,global_unique LINE_lineraw
-everyfooting line,global_unique LINE_lineraw
-evenheading line,global_unique LINE_lineraw
-evenfooting line,global_unique LINE_lineraw
-oddheading line,global_unique LINE_lineraw
-oddfooting line,global_unique LINE_lineraw
-
-smallbook line LINE_skipline
-syncodeindex line 2
-synindex line 2
-defindex line 1
-defcodeindex line 1
-documentlanguage line,global LINE_text
-kbdinputstyle line,global 1
-everyheadingmarks line,global_unique 1
-everyfootingmarks line,global_unique 1
-evenheadingmarks line,global_unique 1
-oddheadingmarks line,global_unique 1
-evenfootingmarks line,global_unique 1
-oddfootingmarks line,global_unique 1
+everyheading line,global_unique LINE_lineraw
+everyfooting line,global_unique LINE_lineraw
+evenheading line,global_unique LINE_lineraw
+evenfooting line,global_unique LINE_lineraw
+oddheading line,global_unique LINE_lineraw
+oddfooting line,global_unique LINE_lineraw
+
+smallbook line LINE_skipline
+syncodeindex line 2
+synindex line 2
+defindex line 1
+defcodeindex line 1
+documentlanguage line,global LINE_text
+kbdinputstyle line,global 1
+everyheadingmarks line,global_unique 1
+everyfootingmarks line,global_unique 1
+evenheadingmarks line,global_unique 1
+oddheadingmarks line,global_unique 1
+evenfootingmarks line,global_unique 1
+oddfootingmarks line,global_unique 1
# formatting
-center line LINE_line
-printindex line,global 1
-listoffloats line,global LINE_line
+center line LINE_line
+printindex line,global 1
+listoffloats line,global LINE_line
# especially in titlepage
# shorttitle
-shorttitlepage line,global_unique LINE_line
-settitle line,global_unique LINE_line
-author line,global LINE_line
-subtitle line,global LINE_line
-title line,global_unique LINE_line
-sp line 1
-page line LINE_skipline
-need line 1
+shorttitlepage line,global_unique LINE_line
+settitle line,global_unique LINE_line
+author line,global LINE_line
+subtitle line,global LINE_line
+title line,global_unique LINE_line
+sp line 1
+page line LINE_skipline
+need line 1
# not valid for info (should be in @iftex)
-vskip line LINE_lineraw
+vskip line LINE_lineraw
-exdent line LINE_line
+exdent line LINE_line
-item_LINE line LINE_line
-itemx line LINE_line
+item_LINE line LINE_line
+itemx line LINE_line
-subentry line LINE_line
+subentry line LINE_line
##########################################################
#
@@ -158,20 +156,20 @@ subentry line LINE_line
##########################################################
# formatting
-noindent other OTHER_skipspace
-indent other OTHER_skipspace
-headitem other OTHER_skipspace
-item other OTHER_skipspace
-tab other OTHER_skipspace
+noindent other OTHER_skipspace
+indent other OTHER_skipspace
+headitem other OTHER_skipspace
+item other OTHER_skipspace
+tab other OTHER_skipspace
# only valid in heading or footing
-thischapter other,in_heading OTHER_noarg
-thischaptername other,in_heading OTHER_noarg
-thischapternum other,in_heading OTHER_noarg
-thisfile other,in_heading OTHER_noarg
-thispage other,in_heading OTHER_noarg
-thistitle other,in_heading OTHER_noarg
+thischapter other,in_heading OTHER_noarg
+thischaptername other,in_heading OTHER_noarg
+thischapternum other,in_heading OTHER_noarg
+thisfile other,in_heading OTHER_noarg
+thispage other,in_heading OTHER_noarg
+thistitle other,in_heading OTHER_noarg
# obsolete @-commands.
-refill other OTHER_noarg
+refill other,deprecated OTHER_noarg
@@ -182,312 +180,312 @@ refill other OTHER_noarg
##########################################################
# letter_no_arg_commands
-aa brace 0
-AA brace 0
-ae brace 0
-oe brace 0
-AE brace 0
-OE brace 0
-o brace 0
-O brace 0
-ss brace 0
-l brace 0
-L brace 0
-DH brace 0
-dh brace 0
-TH brace 0
-th brace 0
+aa brace 0
+AA brace 0
+ae brace 0
+oe brace 0
+AE brace 0
+OE brace 0
+o brace 0
+O brace 0
+ss brace 0
+l brace 0
+L brace 0
+DH brace 0
+dh brace 0
+TH brace 0
+th brace 0
# no arg commands
-TeX brace 0
-LaTeX brace 0
-bullet brace 0
-copyright brace 0
-registeredsymbol brace 0
-dots brace 0
-enddots brace 0
-equiv brace 0
-error brace 0
-expansion brace 0
-arrow brace 0
-minus brace 0
-point brace 0
-print brace 0
-result brace 0
-today brace 0
-exclamdown brace 0
-questiondown brace 0
-pounds brace 0
-ordf brace 0
-ordm brace 0
-atchar brace 0
-ampchar brace 0
-lbracechar brace 0
-rbracechar brace 0
-backslashchar brace 0
-hashchar brace 0
-comma brace 0
-euro brace 0
-geq brace 0
-leq brace 0
-tie brace 0
-textdegree brace 0
-click brace 0
-quotedblleft brace 0
-quotedblright brace 0
-quoteleft brace 0
-quoteright brace 0
-quotedblbase brace 0
-quotesinglbase brace 0
-guillemetleft brace 0
-guillemetright brace 0
-guillemotleft brace 0
-guillemotright brace 0
-guilsinglleft brace 0
-guilsinglright brace 0
+TeX brace 0
+LaTeX brace 0
+bullet brace 0
+copyright brace 0
+registeredsymbol brace 0
+dots brace 0
+enddots brace 0
+equiv brace 0
+error brace 0
+expansion brace 0
+arrow brace 0
+minus brace 0
+point brace 0
+print brace 0
+result brace 0
+today brace 0
+exclamdown brace 0
+questiondown brace 0
+pounds brace 0
+ordf brace 0
+ordm brace 0
+atchar brace 0
+ampchar brace 0
+lbracechar brace 0
+rbracechar brace 0
+backslashchar brace 0
+hashchar brace 0
+comma brace 0
+euro brace 0
+geq brace 0
+leq brace 0
+tie brace 0
+textdegree brace 0
+click brace 0
+quotedblleft brace 0
+quotedblright brace 0
+quoteleft brace 0
+quoteright brace 0
+quotedblbase brace 0
+quotesinglbase brace 0
+guillemetleft brace 0
+guillemetright brace 0
+guillemotleft brace 0
+guillemotright brace 0
+guilsinglleft brace 0
+guilsinglright brace 0
# accent commands - can be called with or without braces
-# TODO do we need "brace" here as well?
-\" brace,accent BRACE_accent
-~ brace,accent BRACE_accent
-^ brace,accent BRACE_accent
-` brace,accent BRACE_accent
-' brace,accent BRACE_accent
-, brace,accent BRACE_accent
-= brace,accent BRACE_accent
-ringaccent brace,accent BRACE_accent
-H brace,accent BRACE_accent
-dotaccent brace,accent BRACE_accent
-u brace,accent BRACE_accent
-ubaraccent brace,accent BRACE_accent
-udotaccent brace,accent BRACE_accent
-v brace,accent BRACE_accent
-ogonek brace,accent BRACE_accent
-tieaccent brace,accent BRACE_accent
-dotless brace,accent BRACE_accent
+\" brace,accent BRACE_accent
+~ brace,accent BRACE_accent
+^ brace,accent BRACE_accent
+` brace,accent BRACE_accent
+' brace,accent BRACE_accent
+, brace,accent BRACE_accent
+= brace,accent BRACE_accent
+ringaccent brace,accent BRACE_accent
+H brace,accent BRACE_accent
+dotaccent brace,accent BRACE_accent
+u brace,accent BRACE_accent
+ubaraccent brace,accent BRACE_accent
+udotaccent brace,accent BRACE_accent
+v brace,accent BRACE_accent
+ogonek brace,accent BRACE_accent
+tieaccent brace,accent BRACE_accent
+dotless brace,accent BRACE_accent
# Style commands
-asis brace BRACE_style
-cite brace BRACE_style
-clicksequence brace BRACE_style
-dfn brace BRACE_style
-emph brace BRACE_style
-sc brace BRACE_style
-t brace BRACE_style
-var brace BRACE_style
-headitemfont brace BRACE_style
-code brace,code_style BRACE_style
-command brace,code_style BRACE_style
-env brace,code_style BRACE_style
-file brace,code_style BRACE_style
-kbd brace,code_style BRACE_style
-option brace,code_style BRACE_style
-samp brace,code_style BRACE_style
-strong brace BRACE_style
-sub brace BRACE_style
-sup brace BRACE_style
+asis brace BRACE_style
+cite brace BRACE_style
+clicksequence brace BRACE_style
+dfn brace BRACE_style
+emph brace BRACE_style
+sc brace BRACE_style
+t brace BRACE_style
+var brace BRACE_style
+headitemfont brace BRACE_style
+code brace,code_style BRACE_style
+command brace,code_style BRACE_style
+env brace,code_style BRACE_style
+file brace,code_style BRACE_style
+kbd brace,code_style BRACE_style
+option brace,code_style BRACE_style
+samp brace,code_style BRACE_style
+strong brace BRACE_style
+sub brace BRACE_style
+sup brace BRACE_style
# Regular font style commands
-r brace BRACE_style
-i brace BRACE_style
-b brace BRACE_style
-sansserif brace BRACE_style
-slanted brace BRACE_style
-
-U brace 1
-dmn brace 1
-titlefont brace,global 1
-
-w brace BRACE_other
-key brace BRACE_other
-
-hyphenation brace,global BRACE_other
-anchor brace 1
-errormsg brace 1
-sortas brace 1
-seeentry brace 1
-seealso brace 1
+r brace BRACE_style
+i brace BRACE_style
+b brace BRACE_style
+sansserif brace BRACE_style
+slanted brace BRACE_style
+
+U brace 1
+dmn brace 1
+titlefont brace,global 1
+
+w brace BRACE_other
+key brace BRACE_other
+
+hyphenation brace,global BRACE_other
+anchor brace 1
+errormsg brace 1
+sortas brace 1
+seeentry brace 1
+seealso brace 1
# more code style commands
-indicateurl brace,code_style 1
-verb brace,code_style BRACE_other
-t brace,code_style BRACE_other
+indicateurl brace,code_style 1
+verb brace,code_style BRACE_other
+t brace,code_style BRACE_other
# context brace commands - commands that enclose full texts
-footnote brace,global BRACE_context
-caption brace BRACE_context
-shortcaption brace BRACE_context
-math brace BRACE_context
+footnote brace,global BRACE_context
+caption brace BRACE_context
+shortcaption brace BRACE_context
+math brace BRACE_context
# explained commands
-abbr brace 2
-acronym brace 2
+abbr brace 2
+acronym brace 2
# inline format command
-inlineraw brace,inline 2
-inlinefmt brace,inline 2
-inlinefmtifelse brace,inline 3
+inlineraw brace,inline 2
+inlinefmt brace,inline 2
+inlinefmtifelse brace,inline 3
# inline conditional commands
-inlineifclear brace,inline 2
-inlineifset brace,inline 2
+inlineifclear brace,inline 2
+inlineifset brace,inline 2
-email brace 2
+email brace 2
-uref brace 3
-url brace 3
-inforef brace,ref 3
+uref brace 3
+url brace 3
+inforef brace,ref,deprecated 3
-xref brace,ref 5
-ref brace,ref 5
-pxref brace,ref 5
-image brace 5
+xref brace,ref 5
+ref brace,ref 5
+pxref brace,ref 5
+image brace 5
##########################################################
# def* commands
-deffn block,def
-defvr block,def
-deftypefn block,def
-deftypeop block,def
-deftypevr block,def
-defcv block,def
-deftypecv block,def
-defop block,def
-deftp block,def
+deffn block,def
+defvr block,def
+deftypefn block,def
+deftypeop block,def
+deftypevr block,def
+defcv block,def
+deftypecv block,def
+defop block,def
+deftp block,def
# shortcuts
-defun block,def,def_alias
-defmac block,def,def_alias
-defspec block,def,def_alias
-defvar block,def,def_alias
-defopt block,def,def_alias
-deftypefun block,def,def_alias
-deftypevar block,def,def_alias
-defivar block,def,def_alias
-deftypeivar block,def,def_alias
-defmethod block,def,def_alias
-deftypemethod block,def,def_alias
+defun block,def,def_alias
+defmac block,def,def_alias
+defspec block,def,def_alias
+defvar block,def,def_alias
+defopt block,def,def_alias
+deftypefun block,def,def_alias
+deftypevar block,def,def_alias
+defivar block,def,def_alias
+deftypeivar block,def,def_alias
+defmethod block,def,def_alias
+deftypemethod block,def,def_alias
# def*x
-deffnx line,def LINE_line
-defvrx line,def LINE_line
-deftypefnx line,def LINE_line
-deftypeopx line,def LINE_line
-deftypevrx line,def LINE_line
-defcvx line,def LINE_line
-deftypecvx line,def LINE_line
-defopx line,def LINE_line
-deftpx line,def LINE_line
+deffnx line,def LINE_line
+defvrx line,def LINE_line
+deftypefnx line,def LINE_line
+deftypeopx line,def LINE_line
+deftypevrx line,def LINE_line
+defcvx line,def LINE_line
+deftypecvx line,def LINE_line
+defopx line,def LINE_line
+deftpx line,def LINE_line
# shortcuts
-defunx line,def,def_alias LINE_line
-defmacx line,def,def_alias LINE_line
-defspecx line,def,def_alias LINE_line
-defvarx line,def,def_alias LINE_line
-defoptx line,def,def_alias LINE_line
-deftypefunx line,def,def_alias LINE_line
-deftypevarx line,def,def_alias LINE_line
-defivarx line,def,def_alias LINE_line
-deftypeivarx line,def,def_alias LINE_line
-defmethodx line,def,def_alias LINE_line
-deftypemethodx line,def,def_alias LINE_line
-
-multitable block,blockitem BLOCK_multitable
+defunx line,def,def_alias LINE_line
+defmacx line,def,def_alias LINE_line
+defspecx line,def,def_alias LINE_line
+defvarx line,def,def_alias LINE_line
+defoptx line,def,def_alias LINE_line
+deftypefunx line,def,def_alias LINE_line
+deftypevarx line,def,def_alias LINE_line
+defivarx line,def,def_alias LINE_line
+deftypeivarx line,def,def_alias LINE_line
+defmethodx line,def,def_alias LINE_line
+deftypemethodx line,def,def_alias LINE_line
+
+multitable block,blockitem BLOCK_multitable
# menu commands
-menu block,menu
-detailmenu block,menu,global
-direntry block,menu
+menu block,menu
+detailmenu block,menu,global
+direntry block,menu
# align commands
-raggedright block
-flushleft block
-flushright block
+raggedright block
+flushleft block
+flushright block
-cartouche block
-group block
-indentedblock block
-smallindentedblock block
+cartouche block
+group block
+indentedblock block
+smallindentedblock block
# region commands
-titlepage block,global_unique BLOCK_region
-copying block,global_unique BLOCK_region
-documentdescription block,global_unique BLOCK_region
+titlepage block,global_unique BLOCK_region
+copying block,global_unique BLOCK_region
+documentdescription block,global_unique BLOCK_region
# preformatted commands
-example block,preformatted,preformatted_code
-smallexample block,preformatted,preformatted_code
-lisp block,preformatted,preformatted_code
-smalllisp block,preformatted,preformatted_code
-display block,preformatted
-smalldisplay block,preformatted
-format block,preformatted
-smallformat block,preformatted
+example block,preformatted,preformatted_code BLOCK_variadic
+smallexample block,preformatted,preformatted_code
+lisp block,preformatted,preformatted_code
+smalllisp block,preformatted,preformatted_code
+display block,preformatted
+smalldisplay block,preformatted
+format block,preformatted
+smallformat block,preformatted
# format raw commands
-html block,format_raw
-tex block,format_raw
-xml block,format_raw
-docbook block,format_raw
+html block,format_raw
+tex block,format_raw
+xml block,format_raw
+docbook block,format_raw
# raw commands
-verbatim block BLOCK_raw
-ignore block BLOCK_raw
-macro block BLOCK_raw
-rmacro block BLOCK_raw
-
-table block,blockitem 1
-ftable block,blockitem 1
-vtable block,blockitem 1
-itemize block,blockitem 1
-enumerate block,blockitem 1
-quotation block 1
-smallquotation block 1
-
-float block 2
+verbatim block BLOCK_raw
+ignore block BLOCK_raw
+macro block BLOCK_raw
+rmacro block BLOCK_raw
+
+table block,blockitem 1
+ftable block,blockitem 1
+vtable block,blockitem 1
+itemize block,blockitem 1
+enumerate block,blockitem 1
+quotation block 1
+smallquotation block 1
+
+float block 2
+displaymath block 0
##################################################################
# Conditional commands
-ifhtml block BLOCK_conditional
-ifnothtml block BLOCK_conditional
-iftex block BLOCK_conditional
-ifnottex block BLOCK_conditional
-ifxml block BLOCK_conditional
-ifnotxml block BLOCK_conditional
-ifdocbook block BLOCK_conditional
-ifnotdocbook block BLOCK_conditional
-ifinfo block BLOCK_conditional
-ifnotinfo block BLOCK_conditional
-ifplaintext block BLOCK_conditional
-ifnotplaintext block BLOCK_conditional
-ifset block BLOCK_conditional
-ifclear block BLOCK_conditional
-ifcommanddefined block BLOCK_conditional
-ifcommandnotdefined block BLOCK_conditional
+ifhtml block BLOCK_conditional
+ifnothtml block BLOCK_conditional
+iftex block BLOCK_conditional
+ifnottex block BLOCK_conditional
+ifxml block BLOCK_conditional
+ifnotxml block BLOCK_conditional
+ifdocbook block BLOCK_conditional
+ifnotdocbook block BLOCK_conditional
+ifinfo block BLOCK_conditional
+ifnotinfo block BLOCK_conditional
+ifplaintext block BLOCK_conditional
+ifnotplaintext block BLOCK_conditional
+ifset block BLOCK_conditional
+ifclear block BLOCK_conditional
+ifcommanddefined block BLOCK_conditional
+ifcommandnotdefined block BLOCK_conditional
##########################################################
# Root commands
-node root,line LINE_line
-top root,line,sectioning,global_unique LINE_line
-chapter root,line,sectioning LINE_line
-unnumbered root,line,sectioning LINE_line
-chapheading line,sectioning LINE_line
-appendix root,line,sectioning LINE_line
-section root,line,sectioning LINE_line
-unnumberedsec root,line,sectioning LINE_line
-heading line,sectioning LINE_line
-appendixsec root,line,sectioning LINE_line
-subsection root,line,sectioning LINE_line
-unnumberedsubsec root,line,sectioning LINE_line
-subheading line,sectioning LINE_line
-appendixsubsec root,line,sectioning LINE_line
-subsubsection root,line,sectioning LINE_line
-unnumberedsubsubsec root,line,sectioning LINE_line
-subsubheading line,sectioning LINE_line
-appendixsubsubsec root,line,sectioning LINE_line
-
-part root,line,sectioning,global LINE_line
-appendixsection root,line,sectioning LINE_line
-majorheading line,sectioning LINE_line
-centerchap root,line,sectioning LINE_line
+node root,line LINE_line
+top root,line,sectioning,global_unique LINE_line
+chapter root,line,sectioning LINE_line
+unnumbered root,line,sectioning LINE_line
+chapheading line,sectioning LINE_line
+appendix root,line,sectioning LINE_line
+section root,line,sectioning LINE_line
+unnumberedsec root,line,sectioning LINE_line
+heading line,sectioning LINE_line
+appendixsec root,line,sectioning LINE_line
+subsection root,line,sectioning LINE_line
+unnumberedsubsec root,line,sectioning LINE_line
+subheading line,sectioning LINE_line
+appendixsubsec root,line,sectioning LINE_line
+subsubsection root,line,sectioning LINE_line
+unnumberedsubsubsec root,line,sectioning LINE_line
+subsubheading line,sectioning LINE_line
+appendixsubsubsec root,line,sectioning LINE_line
+
+part root,line,sectioning,global LINE_line
+appendixsection root,line,sectioning LINE_line
+majorheading line,sectioning LINE_line
+centerchap root,line,sectioning,deprecated LINE_line
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_ids.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_ids.h
index 23058049e9..1201e40484 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_ids.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/command_ids.h
@@ -1,4 +1,6 @@
/* This file automatically generated by command_data.awk */
+#ifndef COMMAND_IDS_H
+#define COMMAND_IDS_H
/* Useful aliases */
#define CM_hex_09 CM_TAB
@@ -83,6 +85,7 @@ CM_atchar,
CM_author,
CM_b,
CM_backslashchar,
+CM_bsixpaper,
CM_bullet,
CM_bye,
CM_c,
@@ -157,6 +160,7 @@ CM_dh,
CM_dircategory,
CM_direntry,
CM_display,
+CM_displaymath,
CM_dmn,
CM_docbook,
CM_documentdescription,
@@ -313,9 +317,7 @@ CM_seealso,
CM_seeentry,
CM_set,
CM_setchapternewpage,
-CM_setcontentsaftertitlepage,
CM_setfilename,
-CM_setshortcontentsaftertitlepage,
CM_settitle,
CM_shortcaption,
CM_shortcontents,
@@ -374,7 +376,6 @@ CM_uref,
CM_urefbreakstyle,
CM_url,
CM_v,
-CM_validatemenus,
CM_value,
CM_var,
CM_verb,
@@ -391,3 +392,4 @@ CM_hex_7c,
CM_hex_7d,
CM_hex_7e,
};
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.c
index 7b2d65a3c9..e0caffd149 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.c
@@ -1,4 +1,4 @@
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -20,6 +20,8 @@
#include "command_ids.h"
#include "commands.h"
+#include "errors.h"
+
#include "command_data.c"
COMMAND *user_defined_command_data = 0;
@@ -82,7 +84,7 @@ add_texinfo_command (char *name)
= realloc (user_defined_command_data,
(user_defined_space += 10) * sizeof (COMMAND));
if (!user_defined_command_data)
- abort ();
+ fatal ("could not realloc");
}
user_defined_command_data[user_defined_number].cmdname = strdup (name);
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.h
index df29dff316..92078a4c4d 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/commands.h
@@ -1,5 +1,7 @@
/* commands.h - declarations for commands.c */
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+#ifndef COMMANDS_H
+#define COMMANDS_H
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -105,9 +107,12 @@ void wipe_user_commands (void);
#define BLOCK_raw -2
#define BLOCK_multitable -3
#define BLOCK_region -4
+#define BLOCK_variadic -5
/* Types of brace command (CF_brace). */
#define BRACE_context -1 /* Can enclose paragraph breaks. */
#define BRACE_accent -2
#define BRACE_style -3
#define BRACE_other -4
+
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/conf.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/conf.h
index d55a46614c..7efcb566b3 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/conf.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/conf.h
@@ -1,5 +1,7 @@
/* conf.h - declarations for conf.c */
-/* Copyright 2010-2018 Free Software Foundation, Inc.
+#ifndef CONF_H
+#define CONF_H
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -27,3 +29,4 @@ void conf_set_CPP_LINE_DIRECTIVES (int i);
void conf_set_IGNORE_SPACE_AFTER_BRACED_COMMAND_NAME (int i);
void reset_conf (void);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.c
index b2b85cf582..b3fca7afc5 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.c
@@ -49,7 +49,7 @@ enum context
pop_context ()
{
if (top == 0)
- abort ();
+ fatal ("context stack empty");
debug (">>>>>>>>>>>>>POPPING STACK AT %d", top - 1);
return stack[--top];
@@ -96,7 +96,7 @@ ELEMENT *
pop_region ()
{
if (region_top == 0)
- abort ();
+ fatal ("region stack empty");
debug (">>>>>>>>>>>>>POPPING REGION STACK AT %d", region_top - 1);
return region_stack[--region_top];
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.h
index 4fea34d1f3..9b4f93317c 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/context_stack.h
@@ -1,5 +1,7 @@
/* context_stack.h - declarations for context_stack.c */
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+#ifndef CONTEXT_STACK_H
+#define CONTEXT_STACK_H
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -14,6 +16,8 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
+#include "tree_types.h"
+
enum context {
ct_NONE,
ct_line,
@@ -49,3 +53,4 @@ ELEMENT *current_region (void);
enum command_id current_region_cmd (void);
void reset_region_stack (void);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.c
index 7138df7ab3..b932855c27 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.c
@@ -211,11 +211,14 @@ convert_to_text (ELEMENT *e, int *superfluous_arg)
ELEMENT *e1 = contents_child_by_index (e, i);
if (e1->text.end > 0)
ADD(e1->text.text);
- else if (e1->cmd == CM_AT_SIGN)
+ else if (e1->cmd == CM_AT_SIGN
+ || e1->cmd == CM_atchar)
ADD("@");
- else if (e1->cmd == CM_OPEN_BRACE)
+ else if (e1->cmd == CM_OPEN_BRACE
+ || e1->cmd == CM_lbracechar)
ADD("{");
- else if (e1->cmd == CM_CLOSE_BRACE)
+ else if (e1->cmd == CM_CLOSE_BRACE
+ || e1->cmd == CM_rbracechar)
ADD("}");
else
*superfluous_arg = 1;
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.h
index 7535bc95e0..a0a9650428 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/convert.h
@@ -1,4 +1,11 @@
/* convert.h - definitions for convert.c */
+#ifndef CONVERT_H
+#define CONVERT_H
+
+#include "tree_types.h"
+
char *convert_to_texinfo (ELEMENT *e);
char *convert_to_text (ELEMENT *e, int *superfluous_arg);
char *node_extra_to_texi (NODE_SPEC_EXTRA *nse);
+
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.c
index 1c028e9c5d..79499e0eb5 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.c
@@ -1,4 +1,4 @@
-/* Copyright 2015-2019 Free Software Foundation, Inc.
+/* Copyright 2015-2021 Free Software Foundation, Inc.
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
@@ -15,8 +15,9 @@
#include <config.h>
-#include "tree_types.h"
#include "counter.h"
+#include "parser.h"
+
void
counter_push (COUNTER *c, ELEMENT *elt, int num)
@@ -27,7 +28,7 @@ counter_push (COUNTER *c, ELEMENT *elt, int num)
c->values = realloc (c->values, c->space * sizeof (int));
c->elts = realloc (c->elts, c->space * sizeof (ELEMENT *));
if (!c->values)
- abort ();
+ fatal ("could not realloc");
}
c->values[c->nvalues] = num;
c->elts[c->nvalues] = elt;
@@ -41,7 +42,7 @@ void
counter_pop (COUNTER *c)
{
if (!c->nvalues)
- abort ();
+ fatal ("could not realloc");
c->nvalues--;
c->values[c->nvalues] = 0;
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.h
index 48c9bb21ec..9e5ce2873c 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/counter.h
@@ -1,5 +1,10 @@
/* counter.h - definitions for counter.c */
-/* Copyright 2015-2019 Free Software Foundation, Inc.
+#ifndef COUNTER_H
+#define COUNTER_H
+
+#include "tree_types.h"
+
+/* Copyright 2015-2021 Free Software Foundation, Inc.
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
@@ -14,6 +19,8 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
+#include "tree_types.h"
+
typedef struct {
int *values; /* Array of values. */
ELEMENT **elts; /* Elements corresponding to each value. */
@@ -26,3 +33,9 @@ void counter_pop (COUNTER *c);
void counter_inc (COUNTER *c);
void counter_dec (COUNTER *c);
int counter_value (COUNTER *c, ELEMENT *e);
+
+/* A large positive number used to represent an unlimited number of remaining
+ arguments. */
+#define COUNTER_VARIADIC 32767
+
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.c
index b285096b14..b2bddb205f 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.c
@@ -291,11 +291,10 @@ parse_def (enum command_id command, ELEMENT *current)
if (def_aliases[i].alias == command)
goto found;
}
- abort (); /* Has CF_def_alias but no alias defined. */
+ fatal ("no alias for CF_def_alias command");
found:
- /* Prepended content is stuck into contents, so
- @defun is converted into
- @deffn Function */
+ /* Prepended content is inserted into contents, so
+ @defun is converted into @deffn Function */
category = def_aliases[i].category;
command = def_aliases[i].command;
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.h
index 13e93ed51e..074e5286e0 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/def.h
@@ -1,3 +1,9 @@
/* def.h - definitions for def.c */
+#ifndef DEF_H
+#define DEF_H
+
+#include "tree_types.h"
+
void gather_def_item (ELEMENT *current, enum command_id next_command);
DEF_INFO *parse_def (enum command_id command, ELEMENT *current);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.awk b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.awk
index 5c2c062c50..83618f9929 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.awk
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.awk
@@ -1,4 +1,4 @@
-# Copyright 2014-2018 Free Software Foundation, Inc.
+# Copyright 2014-2021 Free Software Foundation, Inc.
#
# 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
@@ -22,6 +22,8 @@ BEGIN {
ETC = srcdir "/element_types.c"
print "/* This file automatically generated by element_types.awk */" > ETH
+ print "#ifndef ELEMENT_TYPES_H" > ETH
+ print "#define ELEMENT_TYPES_H" > ETH
print "enum element_type {" > ETH
print "ET_NONE," > ETH
}
@@ -35,6 +37,7 @@ END {
print "};" > ETH
print > ETH
print "extern char *element_type_names[];" > ETH
+ print "#endif" > ETH
print "char *element_type_names[] = {" > ETC
print "0," > ETC
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.h
index 32ab38121f..9a6fb59c9b 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/element_types.h
@@ -1,4 +1,6 @@
/* This file automatically generated by element_types.awk */
+#ifndef ELEMENT_TYPES_H
+#define ELEMENT_TYPES_H
enum element_type {
ET_NONE,
ET_command_as_argument,
@@ -70,3 +72,4 @@ ET_untranslated,
};
extern char *element_type_names[];
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/end_line.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/end_line.c
index 0fd806613f..4556780052 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/end_line.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/end_line.c
@@ -160,6 +160,7 @@ parse_special_misc_command (char *line, enum command_id cmd, int *has_comment)
q = strpbrk (p,
" \t\f\r\n" /* whitespace */
"{\\}~^+\"<>|@"); /* other bytes that aren't allowed */
+ /* see also read_flag_name function in end_line.c */
r = skip_comment (p, has_comment);
@@ -196,28 +197,29 @@ set_invalid:
}
case CM_clear:
{
- char *flag;
+ char *flag = 0;
p = line;
p += strspn (p, whitespace_chars);
if (!*p)
goto clear_no_name;
q = p;
- flag = read_command_name (&q);
+ flag = read_flag_name (&q);
if (!flag)
goto clear_invalid;
- free (flag);
r = q + strspn (q, whitespace_chars);
if (*r)
goto clear_invalid; /* Trailing argument. */
ADD_ARG (p, q - p);
- clear_value (p, q - p);
+ clear_value (flag);
+ free (flag);
break;
clear_no_name:
line_error ("@clear requires a name");
break;
clear_invalid:
+ free (flag);
line_error ("bad name for @clear");
break;
}
@@ -264,7 +266,7 @@ clickstyle_invalid:
free (value);
break;
default:
- abort ();
+ fatal ("unknown special line command");
}
if (remaining)
@@ -494,6 +496,8 @@ parse_line_command_args (ELEMENT *line_command)
files being overwritten by the files read by texindex. */
{
static char *forbidden_index_names[] = {
+ "cp", "fn", "ky", "pg", "tp", "vr",
+ "cps", "fns", "kys", "pgs", "tps", "vrs",
"info", "ps", "pdf", "htm", "html",
"log", "aux", "dvi", "texi", "txi",
"texinfo", "tex", "bib", 0
@@ -504,7 +508,7 @@ parse_line_command_args (ELEMENT *line_command)
goto defindex_reserved;
if (index_by_name (name))
- goto defindex_reserved;
+ { free (name); break; }
}
add_index (name, cmd == CM_defcodeindex ? 1 : 0);
@@ -1001,7 +1005,7 @@ end_line_starting_block (ELEMENT *current)
enum context c;
c = pop_context ();
if (c != ct_line)
- abort ();
+ fatal ("line context expected");
if (current->parent->cmd == CM_multitable)
{
@@ -1299,17 +1303,14 @@ end_line_misc_line (ELEMENT *current)
misc_cmd = current;
cmd = current->cmd;
if (!cmd)
- abort ();
+ fatal ("command name unknown for @end");
arg_type = command_data(cmd).data;
/* Check 'line' is top of the context stack */
c = pop_context ();
if (c != ct_line)
- {
- /* error */
- abort ();
- }
+ fatal ("line context expected");
debug ("MISC END %s", command_name(cmd));
@@ -2013,9 +2014,13 @@ end_line (ELEMENT *current)
if (description)
description_or_menu_comment = description;
else
- { // 2707
- /* Normally this cannot happen. */
- abort ();
+ {
+ ELEMENT *e;
+ /* "Normally this cannot happen." */
+ bug ("no description in menu entry");
+ e = new_element (ET_menu_entry_description);
+ add_to_element_args (entry, e);
+ description_or_menu_comment = e;
}
}
else if (menu->contents.number > 0
@@ -2029,10 +2034,10 @@ end_line (ELEMENT *current)
if (current->contents.number > 0
&& last_contents_child(current)->type == ET_preformatted)
current = last_contents_child(current);
- else // 2725
+ else
{
/* This should not happen */
- //abort ();
+ bug ("description or menu comment not in preformatted");
ELEMENT *e;
e = new_element (ET_preformatted);
add_to_element_contents (current, e);
@@ -2100,14 +2105,13 @@ end_line (ELEMENT *current)
KEY_PAIR *k;
if (pop_context () != ct_def)
- abort ();
+ fatal ("def context expected");
k = lookup_extra (current->parent, "original_def_cmdname");
if (k)
original_def_command = lookup_command ((char *) k->value);
else
original_def_command = current->parent->parent->cmd;
- // TODO: What if k is not defined?
def_command = original_def_command;
/* Strip an trailing x from the command, e.g. @deffnx -> @deffn */
@@ -2266,9 +2270,8 @@ end_line (ELEMENT *current)
}
}
- /* 3470 Check for infinite loop bugs */
if (current == current_old)
- abort ();
+ fatal ("infinite loop when closing commands");
current = end_line (current);
}
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.c
index 1a57e0c8d0..522bd3434d 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.c
@@ -1,4 +1,4 @@
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -14,17 +14,32 @@
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
+
+
+#ifdef ENABLE_NLS
#include <libintl.h>
+#endif
#include <stdlib.h>
#include <stdarg.h>
#include <stdio.h>
-#include "tree_types.h"
#include "errors.h"
#include "input.h"
#include "text.h"
+void bug (char *message)
+{
+ fprintf (stderr, "texi2any (XS parser): bug: %s\n", message);
+}
+
+void fatal (char *message)
+{
+ bug (message);
+ abort ();
+}
+
+
typedef struct {
char *message;
enum error_type type;
@@ -40,8 +55,13 @@ line_error_internal (enum error_type type, LINE_NR *cmd_line_nr,
char *format, va_list v)
{
char *message;
+#ifdef ENABLE_NLS
vasprintf (&message, gettext(format), v);
- if (!message) abort ();
+#else
+ vasprintf (&message, format, v);
+#endif
+ if (!message) fatal ("vasprintf failed");
+
if (error_number == error_space)
{
error_list = realloc (error_list,
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.h
index 112669f46b..733d1372a5 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/errors.h
@@ -1,4 +1,11 @@
/* errors.h - declarations for error.c */
+#ifndef ERRORS_H
+#define ERRORS_H
+
+#include "tree_types.h"
+
+void fatal (char *);
+void bug (char *);
enum error_type { error, warning };
@@ -12,3 +19,4 @@ void line_error_ext (enum error_type type, LINE_NR *cmd_line_nr,
void bug_message (char *format, ...);
char *dump_errors (void);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/extra.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/extra.c
index 55cae17d6c..ccdb7fe5c0 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/extra.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/extra.c
@@ -35,7 +35,7 @@ add_extra_key (ELEMENT *e, char *key, ELEMENT *value,
e->extra = realloc (e->extra,
(e->extra_space += 5) * sizeof (KEY_PAIR));
if (!e->extra)
- abort ();
+ fatal ("realloc failed");
}
e->extra_number++;
}
@@ -146,7 +146,7 @@ add_extra_string_dup (ELEMENT *e, char *key, char *value)
}
void
-add_extra_integer (ELEMENT *e, char *key, int value)
+add_extra_integer (ELEMENT *e, char *key, long value)
{
add_extra_key (e, key, (ELEMENT *) value, extra_integer);
}
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.c
index 91f43ac4b4..fa3ce138f3 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.c
@@ -1,5 +1,5 @@
/* handle_commands.c -- what to do when a command name is first read */
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+/* Copyright 2010-2020 Free Software Foundation, Inc.
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
@@ -324,7 +324,7 @@ handle_line_command (ELEMENT *current, char **line_inout,
{
if (cmd != CM_bye)
{
- /* Something to do with document_root and text_root. */
+ /* Use document_root when we have nodes or sections. */
ELEMENT *new_root = new_element (ET_document_root);
add_to_element_contents (new_root, current);
current = new_root;
@@ -334,7 +334,7 @@ handle_line_command (ELEMENT *current, char **line_inout,
{
current = current->parent;
if (!current)
- abort ();
+ fatal ("no parent element");
}
}
@@ -500,7 +500,7 @@ handle_line_command (ELEMENT *current, char **line_inout,
}
else if (cmd == CM_novalidate)
{
- /* do nothing - novalidate is set in build_global_info */
+ global_info.novalidate = 1;
}
if (misc)
@@ -530,7 +530,7 @@ handle_line_command (ELEMENT *current, char **line_inout,
if (cmd == CM_item_LINE || cmd == CM_itemx)
{
ELEMENT *parent;
- if (parent = item_line_parent (current))
+ if ((parent = item_line_parent (current)))
{
debug ("ITEM_LINE");
current = parent;
@@ -556,7 +556,7 @@ handle_line_command (ELEMENT *current, char **line_inout,
if (cmd == CM_subentry)
{
- int level = 1;
+ long level = 1;
ELEMENT *parent = current->parent;
if (!(command_flags(parent) & CF_index_entry_command)
@@ -571,7 +571,7 @@ handle_line_command (ELEMENT *current, char **line_inout,
{
KEY_PAIR *k = lookup_extra (parent, "level");
if (k && k->value)
- level = (int) k->value + 1;
+ level = (long) k->value + 1;
}
add_extra_integer (misc, "level", level);
if (level > 2)
@@ -613,11 +613,11 @@ handle_line_command (ELEMENT *current, char **line_inout,
base_name = strdup (base_name);
base_len = strlen (base_name);
if (base_name[base_len - 1] != 'x')
- abort ();
+ fatal ("no x at end of def command name");
base_name[base_len - 1] = '\0';
base_command = lookup_command (base_name);
if (base_command == CM_NONE)
- abort ();
+ fatal ("no def base command");
add_extra_string (misc, "def_command", base_name);
after_paragraph = check_no_text (current);
@@ -804,7 +804,7 @@ handle_block_command (ELEMENT *current, char **line_inout,
line_error ("@%s requires a name", command_name(cmd));
else
{
- char *flag = read_command_name (&p);
+ char *flag = read_flag_name (&p);
if (!flag)
goto bad_value;
else
@@ -826,7 +826,7 @@ handle_block_command (ELEMENT *current, char **line_inout,
{
if (cmd == CM_ifclear || cmd == CM_ifset)
{
- char *val = fetch_value (flag, strlen (flag));
+ char *val = fetch_value (flag);
if (val)
iftrue = 1;
if (cmd == CM_ifclear)
@@ -907,7 +907,7 @@ handle_block_command (ELEMENT *current, char **line_inout,
destroy_element (pop_element_from_contents (menu));
if (pop_context () != ct_preformatted)
- abort ();
+ fatal ("preformatted context expected");
if (menu->type == ET_menu_entry)
menu = menu->parent;
current = menu;
@@ -944,6 +944,8 @@ handle_block_command (ELEMENT *current, char **line_inout,
{
if (command_data(cmd).flags & CF_preformatted)
push_context (ct_preformatted);
+ else if (cmd == CM_displaymath)
+ push_context (ct_math);
else if (command_data(cmd).flags & CF_format_raw)
{
push_context (ct_rawpreformatted);
@@ -1013,17 +1015,6 @@ handle_block_command (ELEMENT *current, char **line_inout,
done in Perl code. */
}
}
- else if (cmd != CM_direntry)
- {
- if (conf.show_menu)
- {
- line_error ("@%s seen before first @node",
- command_name(cmd));
- line_error ("perhaps your @top node should be "
- "wrapped in @ifnottex rather than @ifinfo?");
- }
- // 4810 unassociated menus
- }
}
if (cmd == CM_itemize || cmd == CM_enumerate)
@@ -1041,6 +1032,12 @@ handle_block_command (ELEMENT *current, char **line_inout,
current,
command_data (current->cmd).data - 1);
}
+ else if (command_data (current->cmd).data == BLOCK_variadic)
+ {
+ /* Unlimited args */
+ counter_push (&count_remaining_args, current,
+ COUNTER_VARIADIC);
+ }
current = bla;
if (!(command_data(cmd).flags & CF_def))
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.h
index 01847d1887..08673a2d5c 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/handle_commands.h
@@ -1,4 +1,8 @@
/* handle_commands.h - declarations for handle_commands.c */
+#ifndef HANDLE_COMMANDS_H
+#define HANDLE_COMMANDS_H
+
+#include "tree_types.h"
ELEMENT *handle_other_command (ELEMENT *current, char **line_inout,
enum command_id cmd_id, int *status);
@@ -12,3 +16,4 @@ int check_no_text (ELEMENT *current);
void clear_expanded_formats (void);
void add_expanded_format (char *format);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.c
index 35051094e0..f1dbc521f5 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.c
@@ -42,7 +42,7 @@ associate_command_to_index (enum command_id cmd, INDEX *idx)
cmd_to_idx = realloc (cmd_to_idx,
sizeof (CMD_TO_IDX) * (cmd_to_idx_space += 10));
if (!cmd_to_idx)
- abort ();
+ fatal ("no index for command");
}
cmd_to_idx[num_index_commands].cmd = cmd;
@@ -284,7 +284,7 @@ enter_index_entry (enum command_id index_type_command,
idx->index_entries = realloc (idx->index_entries,
sizeof (INDEX_ENTRY) * (idx->index_space += 20));
if (!idx->index_entries)
- abort ();
+ fatal ("realloc failed");
}
entry = &idx->index_entries[idx->index_number++];
memset (entry, 0, sizeof (INDEX_ENTRY));
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.h
index fa960b186f..043042d3e2 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/indices.h
@@ -1,4 +1,8 @@
/* indices.h - declarations for indices.h */
+#ifndef INDICES_H
+#define INDICES_H
+
+#include "tree_types.h"
extern INDEX **index_names;
@@ -12,3 +16,4 @@ void enter_index_entry (enum command_id index_type_command,
ELEMENT *content);
INDEX *ultimate_index (INDEX *index);
void wipe_indices (void);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.c
index 560e637f87..f97edbfd4e 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.c
@@ -1,4 +1,4 @@
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+/* Copyright 2010-2020 Free Software Foundation, Inc.
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
@@ -24,7 +24,7 @@
#include <errno.h>
#include <sys/stat.h>
-#include "tree_types.h"
+#include "errors.h"
#include "input.h"
#include "text.h"
#include "commands.h"
@@ -34,8 +34,11 @@ enum input_type { IN_file, IN_text };
enum character_encoding {
ce_latin1,
ce_latin2,
+ ce_latin15,
ce_utf8,
- ce_shiftjis
+ ce_shiftjis,
+ ce_koi8r,
+ ce_koi8u
};
typedef struct {
@@ -49,12 +52,28 @@ typedef struct {
into lines. */
} INPUT;
-static char *input_encoding;
+enum character_encoding input_encoding;
void
set_input_encoding (char *encoding)
{
- input_encoding = encoding;
+ if (!strcasecmp (encoding, "utf-8"))
+ input_encoding = ce_utf8;
+ else if (!strcmp (encoding, "iso-8859-1")
+ || !strcmp (encoding, "us-ascii"))
+ input_encoding = ce_latin1;
+ else if (!strcmp (encoding, "iso-8859-2"))
+ input_encoding = ce_latin2;
+ else if (!strcmp (encoding, "iso-8859-15"))
+ input_encoding = ce_latin15;
+ else if (!strcmp (encoding, "shift_jis"))
+ input_encoding = ce_shiftjis;
+ else if (!strcmp (encoding, "koi8-r"))
+ input_encoding = ce_koi8r;
+ else if (!strcmp (encoding, "koi8-u"))
+ input_encoding = ce_koi8u;
+ else
+ fprintf (stderr, "warning: unhandled encoding %s\n", encoding);
}
@@ -112,9 +131,13 @@ new_line (void)
}
-static iconv_t iconv_from_latin1 = (iconv_t) 0;
+static iconv_t iconv_from_latin1;
static iconv_t iconv_from_latin2;
+static iconv_t iconv_from_latin15;
static iconv_t iconv_from_shiftjis;
+static iconv_t iconv_from_koi8u;
+static iconv_t iconv_from_koi8r;
+static iconv_t iconv_validate_utf8;
/* Run iconv using text buffer as output buffer. */
size_t
@@ -141,70 +164,44 @@ text_buffer_iconv (TEXT *buf, iconv_t iconv_state,
}
-
-/* Return conversion of S according to ENCODING. This function frees S. */
+/* Return conversion of S according to input_encoding. This function
+ frees S. */
static char *
-convert_to_utf8 (char *s, char *encoding)
+convert_to_utf8 (char *s)
{
- iconv_t our_iconv;
+ iconv_t our_iconv = (iconv_t) -1;
static TEXT t;
ICONV_CONST char *inptr; size_t bytes_left;
size_t iconv_ret;
enum character_encoding enc;
/* Convert from @documentencoding to UTF-8.
- It might be possible not to convert to UTF-8 and use an 8-bit encoding
+ It might be possible not to convert to UTF-8 and use an 8-bit encoding
throughout, but then we'd have to not set the UTF-8 flag on the Perl
strings in api.c. If multiple character encodings were used in a single
file, then we'd have to keep track of which strings needed the UTF-8 flag
and which didn't. */
- /* Could and check for malformed input: see
- <http://savannah.gnu.org/bugs/?42896>. */
-
+ /* Initialize conversions for the first time. */
+ if (iconv_validate_utf8 == (iconv_t) 0)
+ iconv_validate_utf8 = iconv_open ("UTF-8", "UTF-8");
if (iconv_from_latin1 == (iconv_t) 0)
- {
- /* Initialize the conversion for the first time. */
- iconv_from_latin1 = iconv_open ("UTF-8", "ISO-8859-1");
- if (iconv_from_latin1 == (iconv_t) -1)
- {
- abort ();
-
- /* big trouble. if we do return it unconverted, we will have to
- remember not to set the UTF-8 flags on the Perl strings, otherwise
- Perl will choke. */
- return s;
- }
- }
+ iconv_from_latin1 = iconv_open ("UTF-8", "ISO-8859-1");
if (iconv_from_latin2 == (iconv_t) 0)
- {
- /* Initialize the conversion for the first time. */
- iconv_from_latin2 = iconv_open ("UTF-8", "ISO-8859-2");
- if (iconv_from_latin2 == (iconv_t) -1)
- iconv_from_latin2 = iconv_from_latin1;
- }
+ iconv_from_latin2 = iconv_open ("UTF-8", "ISO-8859-2");
+ if (iconv_from_latin15 == (iconv_t) 0)
+ iconv_from_latin15 = iconv_open ("UTF-8", "ISO-8859-15");
if (iconv_from_shiftjis == (iconv_t) 0)
- {
- /* Initialize the conversion for the first time. */
- iconv_from_shiftjis = iconv_open ("UTF-8", "SHIFT-JIS");
- if (iconv_from_shiftjis == (iconv_t) -1)
- iconv_from_shiftjis = iconv_from_latin1;
- }
-
- enc = ce_latin1;
- if (!encoding)
- ;
- else if (!strcmp (encoding, "utf-8"))
- enc = ce_utf8;
- else if (!strcmp (encoding, "iso-8859-2"))
- enc = ce_latin2;
- else if (!strcmp (encoding, "shift_jis"))
- enc = ce_shiftjis;
+ iconv_from_shiftjis = iconv_open ("UTF-8", "SHIFT-JIS");
+ if (iconv_from_koi8r == (iconv_t) 0)
+ iconv_from_koi8r = iconv_open ("UTF-8", "KOI8-R");
+ if (iconv_from_koi8u == (iconv_t) 0)
+ iconv_from_koi8u = iconv_open ("UTF-8", "KOI8-U");
- switch (enc)
+ switch (input_encoding)
{
case ce_utf8:
- return s; /* no conversion required. */
+ our_iconv = iconv_validate_utf8;
break;
case ce_latin1:
our_iconv = iconv_from_latin1;
@@ -212,9 +209,26 @@ convert_to_utf8 (char *s, char *encoding)
case ce_latin2:
our_iconv = iconv_from_latin2;
break;
+ case ce_latin15:
+ our_iconv = iconv_from_latin15;
+ break;
case ce_shiftjis:
our_iconv = iconv_from_shiftjis;
break;
+ case ce_koi8r:
+ our_iconv = iconv_from_koi8r;
+ break;
+ case ce_koi8u:
+ our_iconv = iconv_from_koi8u;
+ break;
+ }
+
+ if (our_iconv == (iconv_t) -1)
+ {
+ /* In case the converter couldn't be initialised.
+ Danger: this will cause problems if the input is not in UTF-8 as
+ the Perl strings that are created are flagged as being UTF-8. */
+ return s;
}
t.end = 0;
@@ -236,20 +250,25 @@ convert_to_utf8 (char *s, char *encoding)
/* Success: all of input converted. */
break;
+ if (bytes_left == 0)
+ break;
+
switch (errno)
{
case E2BIG:
text_alloc (&t, t.space + 20);
break;
+ case EILSEQ:
default:
- abort ();
+ fprintf(stderr, "%s:%d: encoding error at byte 0x%2x\n",
+ line_nr.file_name, line_nr.line_nr, *(unsigned char *)inptr);
+ inptr++; bytes_left--;
break;
}
}
free (s);
t.text[t.end] = '\0';
- //fprintf (stderr, "CONVERTED STRING IS <<%s>>", t.text);
return strdup (t.text);
}
@@ -310,7 +329,7 @@ next_text (void)
return new;
break;
- case IN_file: // 1911
+ case IN_file:
input_file = input_stack[input_number - 1].file;
status = getline (&line, &n, input_file);
if (status != -1)
@@ -333,12 +352,12 @@ next_text (void)
i->line_nr.line_nr++;
line_nr = i->line_nr;
- return convert_to_utf8 (line, input_encoding);
+ return convert_to_utf8 (line);
}
free (line); line = 0;
break;
default:
- abort ();
+ fatal ("unknown input source type");
}
/* Top input source failed. Pop it and try the next one. */
@@ -369,7 +388,7 @@ input_push (char *text, char *macro, char *filename, int line_number)
input_space++; input_space *= 1.5;
input_stack = realloc (input_stack, input_space * sizeof (INPUT));
if (!input_stack)
- abort ();
+ fatal ("realloc failed");
}
input_stack[input_number].type = IN_text;
@@ -405,7 +424,7 @@ save_string (char *string)
small_strings = realloc (small_strings, small_strings_space
* sizeof (char *));
if (!small_strings)
- abort ();
+ fatal ("realloc failed");
}
small_strings[small_strings_num++] = ret;
}
@@ -501,6 +520,7 @@ add_include_directory (char *filename)
filename[len - 1] = '\0';
}
+/* Return value to be freed by caller. */
char *
locate_include_file (char *filename)
{
@@ -519,7 +539,7 @@ locate_include_file (char *filename)
{
status = stat (filename, &dummy);
if (status == 0)
- return filename;
+ return strdup (filename);
}
else
{
@@ -550,7 +570,7 @@ input_push_file (char *filename)
{
input_stack = realloc (input_stack, (input_space += 5) * sizeof (INPUT));
if (!input_stack)
- abort ();
+ fatal ("realloc failed");
}
/* Strip off a leading directory path. */
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.h
index 4ac660375b..6a906c0b47 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/input.h
@@ -1,4 +1,8 @@
/* input.h - declarations for input.c */
+#ifndef INPUT_H
+#define INPUT_H
+
+#include "tree_types.h"
char *new_line (void);
char *next_text (void);
@@ -22,3 +26,4 @@ void free_small_strings (void);
extern LINE_NR line_nr;
extern int input_number;
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.c
index 0b7f5f0375..8d3090f1a6 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.c
@@ -37,7 +37,7 @@ register_label (ELEMENT *current, ELEMENT *label)
labels_space *= 1.5;
labels_list = realloc (labels_list, labels_space * sizeof (LABEL));
if (!labels_list)
- abort ();
+ fatal ("realloc failed");
}
labels_list[labels_number++].target = current;
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.h
index 7877987466..66624c56b0 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/labels.h
@@ -1,5 +1,7 @@
/* labels.h - declarations for labels.c */
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+#ifndef LABELS_H
+#define LABELS_H
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -14,6 +16,8 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
+#include "tree_types.h"
+
/* Information about a possible target of a cross-reference, often a node. */
typedef struct {
/* Pointer to the element for the command defining this label, usually a
@@ -35,3 +39,4 @@ extern size_t internal_xref_space;
void remember_internal_xref (ELEMENT *element);
void reset_internal_xrefs (void);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.c
index 9c26ccf8d1..292e4cc08a 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.c
@@ -51,7 +51,7 @@ new_macro (char *name, ELEMENT *macro)
macro_list = realloc (macro_list,
(macro_space += 5) * sizeof (MACRO));
if (!macro_list)
- abort ();
+ fatal ("realloc failed");
}
new = add_texinfo_command (name);
m = &macro_list[macro_number];
@@ -90,8 +90,8 @@ parse_macro_command_line (enum command_id cmd, char **line_inout,
macro->line_nr = line_nr;
add_extra_string (macro, "arg_line", strdup (line));
- /* TODO: This extra value isn't used much, so is a candidate for
- simplification. */
+ /* Note this extra value isn't used much, so it might be possible
+ to get rid of it. */
line += strspn (line, whitespace_chars);
name = read_command_name (&line);
@@ -143,7 +143,7 @@ parse_macro_command_line (enum command_id cmd, char **line_inout,
if (!*q)
{
/* End of string reached before closing brace. */
- abort ();
+ goto check_trailing;
}
/* Disregard trailing whitespace. */
@@ -207,7 +207,6 @@ check_trailing:
}
//line += strlen (line); /* Discard rest of line. */
-funexit:
*line_inout = line;
return macro;
}
@@ -331,7 +330,7 @@ expand_macro_arguments (ELEMENT *macro, char **line_inout, enum command_id cmd)
(1+(arg_space += 5)) * sizeof (char *));
/* Include space for terminating null element. */
if (!arg_list)
- abort ();
+ fatal ("realloc failed");
}
if (arg.space > 0)
arg_list[arg_number++] = arg.text;
@@ -418,9 +417,8 @@ expand_macro_body (MACRO *macro_record, char *arguments[], TEXT *expanded)
bs = strchr (ptext, '\\');
if (!bs)
{
- // TODO: error - malformed
+ /* malformed input - unpaired backslash */
return;
- abort ();
}
*bs = '\0';
@@ -507,7 +505,7 @@ handle_macro (ELEMENT *current, char **line_inout, enum command_id cmd)
macro_record = lookup_macro (cmd);
if (!macro_record)
- abort ();
+ fatal ("no macro record");
macro = macro_record->element;
/* Get number of args. - 1 for the macro name. */
@@ -542,7 +540,7 @@ handle_macro (ELEMENT *current, char **line_inout, enum command_id cmd)
if (!line)
line = "";
}
- line += strspn (line, whitespace_chars);
+ line += strspn (line, whitespace_chars_except_newline);
arguments = malloc (sizeof (char *) * 2);
arguments[0] = strdup (line);
@@ -663,14 +661,13 @@ store_value (char *name, char *value)
v->value = strdup (value);
}
-/* Clear the value the name of which is LEN bytes at NAME */
void
-clear_value (char *name, int len)
+clear_value (char *name)
{
int i;
for (i = 0; i < value_number; i++)
{
- if (!strncmp (value_list[i].name, name, len) && !value_list[i].name[len])
+ if (!strcmp (value_list[i].name, name))
{
value_list[i].name[0] = '\0';
value_list[i].value[0] = '\0';
@@ -678,14 +675,13 @@ clear_value (char *name, int len)
}
}
-/* Look for a value the name of which is LEN bytes at NAME */
char *
-fetch_value (char *name, int len)
+fetch_value (char *name)
{
int i;
for (i = 0; i < value_number; i++)
{
- if (!strncmp (value_list[i].name, name, len) && !value_list[i].name[len])
+ if (!strcmp (value_list[i].name, name))
return value_list[i].value;
}
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.h
index 9fb4d09a6d..784a3ca497 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/macro.h
@@ -1,5 +1,7 @@
/* macro.h - declarations for macro.c */
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+#ifndef MACRO_H
+#define MACRO_H
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -14,6 +16,8 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
+#include "tree_types.h"
+
typedef struct {
enum command_id cmd;
char *begin;
@@ -37,8 +41,9 @@ MACRO *lookup_macro (enum command_id cmd);
void wipe_macros (void);
void store_value (char *name, char *value);
-char *fetch_value (char *name, int len);
-void clear_value (char *name, int len);
+char *fetch_value (char *name);
+void clear_value (char *name);
INFO_ENCLOSE *lookup_infoenclose (enum command_id cmd);
void add_infoenclose (enum command_id cmd, char *begin, char *end);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/menus.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/menus.c
index d2e0ce1cc7..dce4b749c4 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/menus.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/menus.c
@@ -159,7 +159,7 @@ handle_menu (ELEMENT **current_inout, char **line_inout)
}
if (pop_context () != ct_preformatted)
- abort (); /* bug */
+ fatal ("preformatted context expected");
menu_entry = new_element (ET_menu_entry);
leading_text = new_element (ET_menu_entry_leading_text);
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.c
index 8edc8a0e50..65498f0267 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.c
@@ -24,8 +24,6 @@
#include "input.h"
-/* Utility functions */
-
const char *whitespace_chars = " \t\f\r\n";
const char *digit_chars = "0123456789";
@@ -62,6 +60,27 @@ read_command_name (char **ptr)
return ret;
}
+/* Read a name used for @set and @value. */
+char *
+read_flag_name (char **ptr)
+{
+ char *p = *ptr, *q;
+ char *ret = 0;
+
+ q = p;
+ if (!isalnum (*q) && *q != '-' && *q != '_')
+ return 0; /* Invalid. */
+
+ while (!strchr (whitespace_chars, *q)
+ && !strchr ("{\\}~`^+\"<>|@", *q))
+ q++;
+ ret = strndup (p, q - p);
+ p = q;
+
+ *ptr = p;
+ return ret;
+}
+
char *
element_type_name (ELEMENT *e)
{
@@ -92,7 +111,7 @@ push_conditional_stack (enum command_id cond)
(conditional_space += 5)
* sizeof (enum command_id));
if (!conditional_stack)
- abort ();
+ fatal ("realloc failed");
}
conditional_stack[conditional_number++] = cond;
}
@@ -127,11 +146,19 @@ set_documentlanguage (char *value)
global_documentlanguage = strdup (value);
}
+void
+set_novalidate (int value)
+{
+ global_info.novalidate = value;
+}
+
/* Record the information from a command of global effect. */
int
register_global_command (ELEMENT *current)
{
enum command_id cmd = current->cmd;
+ if (cmd == CM_summarycontents)
+ cmd = CM_shortcontents;
if (command_data(cmd).flags & CF_global)
{
@@ -187,8 +214,6 @@ register_global_command (ELEMENT *current)
{
ELEMENT **where = 0;
- if (cmd == CM_shortcontents)
- cmd = CM_summarycontents;
if (!current->line_nr.line_nr)
current->line_nr = line_nr;
switch (cmd)
@@ -210,8 +235,6 @@ register_global_command (ELEMENT *current)
GLOBAL_UNIQUE_CASE(titlepage);
GLOBAL_UNIQUE_CASE(top);
GLOBAL_UNIQUE_CASE(documentdescription);
- GLOBAL_UNIQUE_CASE(novalidate);
- GLOBAL_UNIQUE_CASE(validatemenus);
GLOBAL_UNIQUE_CASE(pagesizes);
GLOBAL_UNIQUE_CASE(fonttextsize);
GLOBAL_UNIQUE_CASE(footnotestyle);
@@ -518,7 +541,7 @@ merge_text (ELEMENT *current, char *text)
{
additional = malloc (leading_spaces + 1);
if (!additional)
- abort ();
+ fatal ("malloc failed");
memcpy (additional, text, leading_spaces);
additional[leading_spaces] = '\0';
}
@@ -860,6 +883,7 @@ check_valid_nesting (ELEMENT *current, enum command_id cmd)
&& outer != CM_center
&& outer != CM_exdent)
|| ((outer_flags & CF_brace)
+ && !(outer_flags & CF_inline)
&& command_data(outer).data > 0)
|| outer == CM_shortcaption
|| outer == CM_math
@@ -1162,7 +1186,7 @@ superfluous_arg:
ELEMENT *popped;
popped = pop_element_from_contents (current);
if (popped->cmd != end_cmd)
- abort(); //error
+ fatal ("command mismatch for ignored block");
/* Ignore until end of line */
if (!strchr (line, '\n'))
@@ -1485,22 +1509,17 @@ superfluous_arg:
if (cmd == CM_value)
{
char *arg_start;
+ char *flag;
line += strspn (line, whitespace_chars);
if (*line != '{')
goto value_invalid;
line++;
- if (!isalnum (*line) && *line != '-' && *line != '_')
- {
- line--;
- goto value_invalid;
- }
arg_start = line;
+ flag = read_flag_name (&line);
+ if (!flag)
+ goto value_invalid;
- line++;
- line = strpbrk (line,
- " \t\f\r\n" /* whitespace */
- "{\\}~^+\"<>|@"); /* other bytes that aren't allowed */
if (*line != '}')
{
line = arg_start - 1;
@@ -1511,7 +1530,7 @@ superfluous_arg:
{
char *value;
value_valid:
- value = fetch_value (arg_start, line - arg_start);
+ value = fetch_value (flag);
if (!value)
{
/* Add element for unexpanded @value.
@@ -1520,14 +1539,17 @@ value_valid:
in undefined values. */
ELEMENT *value_elt;
- line_warn ("undefined flag: %.*s", line - arg_start,
- arg_start);
+ line_warn ("undefined flag: %s", flag);
+ /* Note: In the Perl code, this warning is conditional on
+ in_gdt setting, but the only effect that this possibly has
+ is on speed, as these warnings would not be printed to the
+ user. */
abort_empty_line (&current, NULL);
value_elt = new_element (ET_NONE);
value_elt->cmd = CM_value;
- text_append_n (&value_elt->text, arg_start,
- line - arg_start);
+ text_append (&value_elt->text, flag);
+
/* In the Perl code, the name of the flag is stored in
the "type" field. We need to store in 'text' instead
and then output it as the type in
@@ -1546,6 +1568,7 @@ value_valid:
line += strlen (line);
retval = STILL_MORE_TO_PROCESS;
}
+ free (flag);
goto funexit;
}
else
@@ -1563,14 +1586,7 @@ value_invalid:
char *msg = 0;
switch (cmd)
{
- case CM_setcontentsaftertitlepage:
- msg = "move your @contents command if you want the "
- "contents after the title page";
- break;
- case CM_setshortcontentsaftertitlepage:
- msg = "move your @shortcontents and @contents command if "
- "you want the contents after the title page";
- break;
+ /* messages for commands could go here. */
default:
break;
}
@@ -1644,6 +1660,7 @@ value_invalid:
if ((cmd == CM_sortas
|| cmd == CM_seeentry
+ || cmd == CM_seealso
|| cmd == CM_subentry)
&& current->contents.number > 0
&& last_contents_child(current)->text.end > 0)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.h
index 55fe467a83..9cc2f240b4 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/parser.h
@@ -2,7 +2,9 @@
declarations for close.c, end_line.c, debug.c, separator.c, parser.c,
multitable.c, extra.c and menu.c. */
-/* Copyright 2010-2019 Free Software Foundation, Inc.
+#ifndef PARSER_H
+#define PARSER_H
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -33,6 +35,7 @@ typedef struct GLOBAL_INFO {
char *input_encoding_name;
char *input_perl_encoding;
int sections_level;
+ int novalidate;
ELEMENT dircategory_direntry; /* an array of elements */
/* Elements that should be unique. */
@@ -43,10 +46,6 @@ typedef struct GLOBAL_INFO {
ELEMENT *top;
ELEMENT *setfilename;
ELEMENT *documentdescription;
- ELEMENT *setcontentsaftertitlepage;
- ELEMENT *setshortcontentsaftertitlepage;
- ELEMENT *novalidate;
- ELEMENT *validatemenus;
ELEMENT *pagesizes;
ELEMENT *fonttextsize;
ELEMENT *footnotestyle;
@@ -149,6 +148,7 @@ ELEMENT *end_preformatted (ELEMENT *current,
enum command_id closed_command,
enum command_id interrupting_command);
char *read_command_name (char **ptr);
+char *read_flag_name (char **ptr);
ELEMENT *merge_text (ELEMENT *current, char *text);
void start_empty_line_after_command (ELEMENT *current, char **line_inout,
ELEMENT *command);
@@ -157,6 +157,7 @@ int format_expanded_p (char *format);
int is_end_current_command (ELEMENT *current, char **line,
enum command_id *end_cmd);
void set_documentlanguage (char *);
+void set_novalidate (int value);
char *element_type_name (ELEMENT *e);
/* Return values */
@@ -203,9 +204,10 @@ void add_extra_def_info (ELEMENT *e, char *key, DEF_INFO *value);
void add_extra_float_type (ELEMENT *e, char *key, EXTRA_FLOAT_TYPE *value);
void add_extra_string (ELEMENT *e, char *key, char *value);
void add_extra_string_dup (ELEMENT *e, char *key, char *value);
-void add_extra_integer (ELEMENT *e, char *key, int value);
+void add_extra_integer (ELEMENT *e, char *key, long value);
KEY_PAIR *lookup_extra (ELEMENT *e, char *key);
/* In menus.c */
int handle_menu (ELEMENT **current_inout, char **line_inout);
ELEMENT *enter_menu_entry_node (ELEMENT *current);
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/separator.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/separator.c
index ee58a2d6c5..b509de3d6a 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/separator.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/separator.c
@@ -117,7 +117,7 @@ handle_open_brace (ELEMENT *current, char **line_inout)
push_context (ct_math);
break;
default:
- abort ();
+ fatal ("no context for command");
}
{
@@ -405,7 +405,7 @@ handle_close_brace (ELEMENT *current, char **line_inout)
if (current->parent->cmd == CM_inlineraw)
{
if (ct_inlineraw != pop_context ())
- abort ();
+ fatal ("expected inlineraw context");
}
if (current->parent->args.number == 0
|| current->parent->args.list[0]->contents.number == 0)
@@ -441,15 +441,15 @@ handle_close_brace (ELEMENT *current, char **line_inout)
}
else
{
- int val;
- int ret = sscanf (arg, "%d", &val);
+ unsigned long int val;
+ int ret = sscanf (arg, "%lx", &val);
if (ret != 1)
{
debug ("hex sscanf failed %s", arg);
/* unknown error. possibly argument is too large
for an int. */
}
- if (ret != 1 || val > 0x10FFF)
+ if (ret != 1 || val > 0x10FFFF)
{
line_error
("argument for @U exceeds Unicode maximum 0x10FFFF: %s",
@@ -472,21 +472,30 @@ handle_close_brace (ELEMENT *current, char **line_inout)
|| current->parent->cmd == CM_seeentry
|| current->parent->cmd == CM_seealso)
{
- ELEMENT *e = current->contents.list[0];
-
- if (e->text.end > 0)
+ ELEMENT *index_elt;
+ if (current->parent->parent
+ && current->parent->parent->parent
+ && ((command_flags(current->parent->parent->parent)
+ & CF_index_entry_command)
+ || current->parent->parent->parent->cmd == CM_subentry))
{
- ELEMENT *index_elt;
- if (current->parent->parent
- && current->parent->parent->parent
- && ((command_flags(current->parent->parent->parent)
- & CF_index_entry_command)
- || current->parent->parent->parent->cmd == CM_subentry))
+ index_elt = current->parent->parent->parent;
+ if (current->parent->cmd == CM_sortas)
{
- index_elt = current->parent->parent->parent;
- add_extra_string_dup (index_elt,
+ int superfluous_arg;
+ char *arg = convert_to_text (current, &superfluous_arg);
+ if (arg && *arg)
+ {
+ add_extra_string (index_elt,
command_name(current->parent->cmd),
- e->text.text);
+ arg);
+ }
+ }
+ else
+ {
+ add_extra_element (index_elt,
+ command_name(current->parent->cmd),
+ current->parent);
}
}
}
@@ -518,7 +527,7 @@ handle_close_brace (ELEMENT *current, char **line_inout)
add_to_element_contents (current, e);
goto funexit;
}
- /* context brace command (e.g. @footnote) */
+ /* context brace command (e.g. @footnote) when there is a paragraph inside */
else if (current_context() == ct_footnote
|| current_context() == ct_caption
|| current_context() == ct_shortcaption
@@ -533,6 +542,7 @@ handle_close_brace (ELEMENT *current, char **line_inout)
(void) pop_context ();
debug ("CLOSING(context command)");
closed_command = current->parent->cmd;
+ counter_pop (&count_remaining_args);
register_global_command (current->parent);
current = current->parent->parent;
@@ -606,7 +616,7 @@ handle_comma (ELEMENT *current, char **line_inout)
|| current->cmd == CM_inlineifclear)
{
expandp = 0;
- if (fetch_value (inline_type, strlen (inline_type)))
+ if (fetch_value (inline_type))
expandp = 1;
if (current->cmd == CM_inlineifclear)
expandp = !expandp;
@@ -714,7 +724,8 @@ inlinefmtifelse_done:
}
}
- counter_dec (&count_remaining_args);
+ if (counter_value (&count_remaining_args, current) != COUNTER_VARIADIC)
+ counter_dec (&count_remaining_args);
new_arg = new_element (type);
add_to_element_args (current, new_arg);
current = new_arg;
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.c
index 3a5b70597f..224464f529 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.c
@@ -1,4 +1,4 @@
-/* Copyright 2014-2019 Free Software Foundation, Inc.
+/* Copyright 2014-2021 Free Software Foundation, Inc.
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
@@ -19,7 +19,7 @@
#include <stdio.h>
#include <stdarg.h>
-#include "tree_types.h"
+#include "errors.h"
#include "text.h"
/* Make sure there are LEN free bytes. */
@@ -36,7 +36,7 @@ text_alloc (TEXT *t, size_t len)
t->space *= 2;
t->text = realloc (t->text, t->space);
if (!t->text)
- abort ();
+ fatal ("realloc failed");
}
}
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.h
index 423d5559fd..11ea682aea 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/text.h
@@ -1,5 +1,7 @@
/* text.h - declarations for text.c */
-/* Copyright 2014, 2015 Free Software Foundation, Inc.
+#ifndef TEXT_H
+#define TEXT_H
+/* Copyright 2014-2021 Free Software Foundation, Inc.
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
@@ -14,6 +16,12 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
+typedef struct TEXT {
+ char *text;
+ size_t space; /* Allocated bytes in 'text', including terminating null. */
+ size_t end;
+} TEXT;
+
void text_init (TEXT *t);
void text_append (TEXT *t, char *s);
void text_append_n (TEXT *t, char *s, size_t len);
@@ -22,3 +30,4 @@ void text_alloc (TEXT *t, size_t len);
void text_reset (TEXT *t);
#define text_base(t) ((t)->space ? (t)->text : (char *) 0)
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.c b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.c
index 39859e2f79..f1b64742d9 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.c
@@ -17,7 +17,7 @@
#include <stdlib.h>
#include <string.h>
-#include "tree_types.h"
+#include "errors.h"
#include "tree.h"
//int element_counter;
@@ -175,7 +175,7 @@ reallocate_list (ELEMENT_LIST *list)
list->space += 10;
list->list = realloc (list->list, list->space * sizeof (ELEMENT *));
if (!list->list)
- abort (); /* Out of memory. */
+ fatal ("realloc failed");
}
}
@@ -188,7 +188,7 @@ reallocate_list_for (int n, ELEMENT_LIST *list)
list->space += n + 1;
list->list = realloc (list->list, list->space * sizeof (ELEMENT *));
if (!list->list)
- abort (); /* Out of memory. */
+ fatal ("realloc failed");
}
}
@@ -234,7 +234,7 @@ insert_into_contents (ELEMENT *parent, ELEMENT *e, int where)
where = list->number + where;
if (where < 0 || where > list->number)
- abort ();
+ fatal ("contents index out of bounds");
memmove (&list->list[where + 1], &list->list[where],
(list->number - where) * sizeof (ELEMENT *));
@@ -254,7 +254,7 @@ insert_into_args (ELEMENT *parent, ELEMENT *e, int where)
where = list->number + where;
if (where < 0 || where > list->number)
- abort ();
+ fatal ("arguments index out of bounds");
memmove (&list->list[where + 1], &list->list[where],
(list->number - where) * sizeof (ELEMENT *));
@@ -292,7 +292,7 @@ remove_from_contents (ELEMENT *parent, int where)
where = list->number + where;
if (where < 0 || where > list->number)
- abort ();
+ fatal ("contents index out of bounds");
removed = list->list[where];
memmove (&list->list[where], &list->list[where + 1],
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.h
index 48e580a340..acb224abec 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree.h
@@ -1,4 +1,8 @@
/* tree.h - declarations for tree.c */
+#ifndef TREE_H
+#define TREE_H
+
+#include "tree_types.h"
ELEMENT *new_element (enum element_type type);
void add_to_element_contents (ELEMENT *parent, ELEMENT *e);
@@ -22,3 +26,4 @@ void destroy_element_and_children (ELEMENT *e);
#define element_args_number(e) ((e)->args.number)
#define element_text(e) (text_base (&(e)->text))
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree_types.h b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree_types.h
index 344c8aa2e2..3f9f78209f 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree_types.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/parsetexi/tree_types.h
@@ -1,5 +1,7 @@
/* tree_types.h - types for the parse tree that are used in many places */
-/* Copyright 2010-2018 Free Software Foundation, Inc.
+#ifndef TREE_TYPES_H
+#define TREE_TYPES_H
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -18,12 +20,7 @@
#include "command_ids.h"
#include "element_types.h"
-
-typedef struct TEXT {
- char *text;
- size_t space; /* Allocated bytes in 'text', including terminating null. */
- size_t end;
-} TEXT;
+#include "text.h"
enum extra_type {
extra_element,
@@ -131,3 +128,4 @@ typedef struct {
} EXTRA_FLOAT_TYPE;
+#endif
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/xspara.c b/macros/texinfo/texinfo/tp/Texinfo/XS/xspara.c
index ee666a1f08..83c76fba48 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/xspara.c
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/xspara.c
@@ -1,5 +1,4 @@
-/* Copyright 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2018 Free Software
- Foundation, Inc.
+/* Copyright 2010-2021 Free Software Foundation, Inc.
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
@@ -666,40 +665,6 @@ xspara__add_next (TEXT *result, char *word, int word_len, int transparent)
disinhibit = 1;
}
- if (state.word.end == 0 && !state.invisible_pending_word)
- {
- /* Check if we are at the end of a sentence and if we need to
- output two spaces after the full stop. If so, check if the
- word we are given begins with whitespace. If it doesn't,
- double the pending space.
-
- We checked above if there was a pending word because if there
- was, it is due to be output after the end-sentence whitespace,
- not the string that was passed as an argument to this function.
- */
- state.last_letter = L'\0';
-
- if (state.counter != 0 && state.space.end > 0
- && state.end_sentence == 1 && !state.french_spacing)
- {
- wchar_t wc;
- size_t char_len;
-
- char_len = mbrtowc (&wc, word, word_len, NULL);
- if ((long) char_len > 0 && !iswspace (wc))
- {
- /* Make the pending space up to two spaces. */
- while (state.space_counter < 2)
- {
- text_append_n (&state.space, " ", 1);
- state.space_counter++;
- }
- }
-
- state.end_sentence = -2;
- }
- }
-
text_append_n (&state.word, word, word_len);
if (word_len == 0 && word)
state.invisible_pending_word = 1;
@@ -804,7 +769,7 @@ xspara_allow_end_sentence (void)
}
/* -1 in a parameter means leave that value as it is. */
-char *
+void
xspara_set_space_protection (int protect_spaces,
int ignore_columns,
int keep_end_lines,
@@ -867,12 +832,11 @@ xspara_set_space_protection (int protect_spaces,
}
}
- return ""; /* TODO: Check if we can remove this. */
+ return;
}
/*****************************************************************/
-
/* Return string to be added to paragraph contents, wrapping text. This
function relies on there being a UTF-8 locale in LC_CTYPE for mbrtowc to
work correctly. */
@@ -947,117 +911,9 @@ xspara_add_text (char *text)
&& !state.french_spacing
&& !state.unfilled)
{
- wchar_t q_char;
- size_t q_len;
- int at_least_two = 0;
-
- /* Check if the next character is whitespace as well. */
- q_len = mbrtowc (&q_char,
- p + char_len, len - char_len,
- NULL);
- if ((long) q_len > 0)
- {
- if (iswspace (q_char))
- at_least_two = 1;
- }
-
- /* If we have an existing pending space, or if we have
- at least two whitespace characters in a row, set the
- pending space to be two whitespace characters.
-
- I don't know why we do it this way. */
- if (state.space_counter >= 1 || at_least_two)
- {
- if (state.space_counter > 0)
- {
- /* Truncate to at most 2 spaces, and replace any
- '\n' or '\r' characters with ' '. */
-
- static TEXT new_space;
- char *pspace;
- int pspace_left;
- int len;
- int i;
-
- text_reset (&new_space);
- pspace = state.space.text;
- pspace_left = state.space.end;
- state.space_counter = 0;
-
- for (i = 0; i < 2; i++)
- {
- if (!*pspace)
- break;
- len = mbrlen (pspace, pspace_left, NULL);
-
- /* Substitute newlines in the pending space
- with spaces. */
- if (*pspace == '\n' || *pspace == '\r')
- text_append_n (&new_space, " ", 1);
- else if (len > 0)
- text_append_n (&new_space, pspace, len);
- else
- /* Skip one character and try again. */
- len = 1;
-
- state.space_counter++;
-
- pspace += len;
- pspace_left -= len;
- }
-
- state.space.end = 0;
- text_append_n (&state.space,
- new_space.text, new_space.end);
- text_destroy (&new_space);
- }
-
- /* Now get characters from the input. */
- while (state.space_counter < 2)
- {
- if (*p == '\n' || *p == '\r')
- text_append_n (&state.space, " ", 1);
- else
- text_append_n (&state.space, p, char_len);
- state.space_counter++;
-
- p += char_len; len -= char_len;
- char_len = mbrtowc (&wc, p, len, NULL);
- if ((long) char_len <= 0 || !iswspace (wc))
- break;
- }
-
- /* Skip any more following whitespace. */
- while ((long) char_len > 0 && iswspace (wc))
- {
- p += char_len; len -= char_len;
- char_len = mbrtowc (&wc, p, len, NULL);
- }
-
- /* Make it up to two characters. */
- while (state.space_counter < 2)
- {
- text_append_n (&state.space, " ", 1);
- state.space_counter++;
- }
-
- /* Reset the end_sentence flag. */
- state.end_sentence = -2;
- continue;
- }
- else
- {
- /* Otherwise, an extra space is added
- in _add_next. */
- state.space.end = 0;
- state.space_counter = 0;
- if (*p == '\n' || *p == '\r')
- text_append_n (&state.space, " ", 1);
- else
- text_append_n (&state.space, p, char_len);
- state.space_counter++;
- }
-
+ state.space.end = 0;
+ text_append_n (&state.space, " ", 2);
+ state.space_counter = 2;
}
else /* Not at end of sentence. */
{
@@ -1100,6 +956,7 @@ xspara_add_text (char *text)
xspara__end_line ();
text_append (&result, "\n");
}
+ p += char_len; len -= char_len;
}
else /************** Not a white space character. *****************/
{
@@ -1186,9 +1043,8 @@ xspara_add_text (char *text)
count. */
text_append_n (&state.word, p, char_len);
}
+ p += char_len; len -= char_len;
}
-
- p += char_len; len -= char_len;
}
if (result.space > 0)
diff --git a/macros/texinfo/texinfo/tp/Texinfo/XS/xspara.h b/macros/texinfo/texinfo/tp/Texinfo/XS/xspara.h
index a73346c08f..56f7ad706b 100644
--- a/macros/texinfo/texinfo/tp/Texinfo/XS/xspara.h
+++ b/macros/texinfo/texinfo/tp/Texinfo/XS/xspara.h
@@ -5,7 +5,7 @@ int xspara_init (int, char *);
void xspara_get_state (HV *state);
char *xspara_add_next (char *, int, int transparent);
char *xspara_add_text (char *);
-char *xspara_set_space_protection (int space_protection, int ignore_columns,
+void xspara_set_space_protection (int space_protection, int ignore_columns,
int keep_end_lines, int french_spacing, int double_width_no_break);
void xspara__end_line (void);
char *xspara_end_line (void);