summaryrefslogtreecommitdiff
path: root/xargs
diff options
context:
space:
mode:
Diffstat (limited to 'xargs')
-rw-r--r--xargs/Makefile.am23
-rw-r--r--xargs/Makefile.in2130
-rw-r--r--xargs/testsuite/Makefile.am283
-rw-r--r--xargs/testsuite/Makefile.in2051
-rw-r--r--xargs/testsuite/config/unix.exp182
-rw-r--r--xargs/testsuite/inputs/16383-ys.xi1
-rw-r--r--xargs/testsuite/inputs/32767-ys.xi1
-rw-r--r--xargs/testsuite/inputs/EOF.xi5
-rw-r--r--xargs/testsuite/inputs/EOFb.xi5
-rw-r--r--xargs/testsuite/inputs/EOFe.xi5
-rw-r--r--xargs/testsuite/inputs/Pdata.xi3
-rw-r--r--xargs/testsuite/inputs/blank.xi3
-rw-r--r--xargs/testsuite/inputs/empty.xi3
-rw-r--r--xargs/testsuite/inputs/eof1.xi5
-rw-r--r--xargs/testsuite/inputs/eof_-0.xibin0 -> 20 bytes
-rw-r--r--xargs/testsuite/inputs/eof_.xi5
-rw-r--r--xargs/testsuite/inputs/eofstr.xi5
-rw-r--r--xargs/testsuite/inputs/ett.xi3
-rw-r--r--xargs/testsuite/inputs/files.xi22
-rw-r--r--xargs/testsuite/inputs/files0.xibin0 -> 753 bytes
-rw-r--r--xargs/testsuite/inputs/foobar.xi3
-rw-r--r--xargs/testsuite/inputs/formfeeds.xi2
-rw-r--r--xargs/testsuite/inputs/ftt.xi3
-rw-r--r--xargs/testsuite/inputs/helloworld.xi1
-rw-r--r--xargs/testsuite/inputs/items-0.xibin0 -> 63 bytes
-rw-r--r--xargs/testsuite/inputs/items.xi8
-rw-r--r--xargs/testsuite/inputs/ldata-0.xibin0 -> 108 bytes
-rw-r--r--xargs/testsuite/inputs/ldata.xi9
-rw-r--r--xargs/testsuite/inputs/ldatab-0.xibin0 -> 118 bytes
-rw-r--r--xargs/testsuite/inputs/ldatab.xi10
-rw-r--r--xargs/testsuite/inputs/lines.xi6
-rw-r--r--xargs/testsuite/inputs/noeof-0.xibin0 -> 12 bytes
-rw-r--r--xargs/testsuite/inputs/noeof.xi2
-rw-r--r--xargs/testsuite/inputs/quotes.xi5
-rw-r--r--xargs/testsuite/inputs/space.xi2
-rw-r--r--xargs/testsuite/inputs/stairs-0.xibin0 -> 108 bytes
-rw-r--r--xargs/testsuite/inputs/stairs.xi18
-rw-r--r--xargs/testsuite/inputs/stairs2-0.xibin0 -> 108 bytes
-rw-r--r--xargs/testsuite/inputs/stairs2.xi18
-rw-r--r--xargs/testsuite/inputs/stt.xi3
-rw-r--r--xargs/testsuite/inputs/sv-bug-20273.xi3
-rw-r--r--xargs/testsuite/inputs/unmatched.xi3
-rw-r--r--xargs/testsuite/inputs/unmatched2.xi2
-rw-r--r--xargs/testsuite/inputs/verticaltabs.xi1
-rw-r--r--xargs/testsuite/xargs.gnu/0n3.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/0n3.xo8
-rw-r--r--xargs/testsuite/xargs.gnu/E_-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/E_-0.xo1
-rw-r--r--xargs/testsuite/xargs.gnu/L2-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/L2-0.xo5
-rw-r--r--xargs/testsuite/xargs.gnu/L2_2-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/L2_2-0.xo5
-rw-r--r--xargs/testsuite/xargs.gnu/L3-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/L3-0.xo3
-rw-r--r--xargs/testsuite/xargs.gnu/P3-n1-IARG.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/P3-n1-IARG.xo3
-rw-r--r--xargs/testsuite/xargs.gnu/delim-o.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/delim-o.xo3
-rw-r--r--xargs/testsuite/xargs.gnu/empty-r.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/empty_def-r.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/idef-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/idef-0.xo20
-rw-r--r--xargs/testsuite/xargs.gnu/idef-s26-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/idef-s26-0.xo1
-rw-r--r--xargs/testsuite/xargs.gnu/l1-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/l1-0.xo9
-rw-r--r--xargs/testsuite/xargs.gnu/l1_2-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/l1_2-0.xo10
-rw-r--r--xargs/testsuite/xargs.gnu/n1-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/n1-0.xo18
-rw-r--r--xargs/testsuite/xargs.gnu/n2-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/n2-0.xo9
-rw-r--r--xargs/testsuite/xargs.gnu/n2-s21-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/n2-s21-0.xo11
-rw-r--r--xargs/testsuite/xargs.gnu/n2-s21-x-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/n2-s21-x-0.xo3
-rw-r--r--xargs/testsuite/xargs.gnu/n3-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/n3-0.xo6
-rw-r--r--xargs/testsuite/xargs.gnu/n3-s31-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/n3-s31-0.xo7
-rw-r--r--xargs/testsuite/xargs.gnu/noeof-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/noeof-0.xo1
-rw-r--r--xargs/testsuite/xargs.gnu/nothing.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/nothing.xo1
-rw-r--r--xargs/testsuite/xargs.gnu/r.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/r.xo0
-rw-r--r--xargs/testsuite/xargs.gnu/s118-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/s118-0.xo1
-rw-r--r--xargs/testsuite/xargs.gnu/s14-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/s14-0.xo6
-rw-r--r--xargs/testsuite/xargs.gnu/s14_2-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/s15-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/s15-0.xo14
-rw-r--r--xargs/testsuite/xargs.gnu/s25-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/s25-0.xo6
-rw-r--r--xargs/testsuite/xargs.gnu/space-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/space-0.xo3
-rw-r--r--xargs/testsuite/xargs.gnu/space-r.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/space-t-0.exp1
-rw-r--r--xargs/testsuite/xargs.gnu/space-t-0.xe3
-rw-r--r--xargs/testsuite/xargs.gnu/space-t-0.xo3
-rw-r--r--xargs/testsuite/xargs.posix/EEOF.exp1
-rw-r--r--xargs/testsuite/xargs.posix/EEOF.xo1
-rw-r--r--xargs/testsuite/xargs.posix/EEOFb.exp1
-rw-r--r--xargs/testsuite/xargs.posix/EEOFb.xo1
-rw-r--r--xargs/testsuite/xargs.posix/EEOFe.exp1
-rw-r--r--xargs/testsuite/xargs.posix/EEOFe.xo1
-rw-r--r--xargs/testsuite/xargs.posix/E_-IARG.exp1
-rw-r--r--xargs/testsuite/xargs.posix/E_-IARG.xo2
-rw-r--r--xargs/testsuite/xargs.posix/E_.exp1
-rw-r--r--xargs/testsuite/xargs.posix/E_.xo1
-rw-r--r--xargs/testsuite/xargs.posix/IARG-E_.exp1
-rw-r--r--xargs/testsuite/xargs.posix/IARG-E_.xo5
-rw-r--r--xargs/testsuite/xargs.posix/IARG-s15.exp1
-rw-r--r--xargs/testsuite/xargs.posix/IARG-s15.xo18
-rw-r--r--xargs/testsuite/xargs.posix/IARG.exp1
-rw-r--r--xargs/testsuite/xargs.posix/IARG.xo6
-rw-r--r--xargs/testsuite/xargs.posix/L2-n2.exp1
-rw-r--r--xargs/testsuite/xargs.posix/L2-n2.xo9
-rw-r--r--xargs/testsuite/xargs.posix/L2_2.exp1
-rw-r--r--xargs/testsuite/xargs.posix/L2_2.xo3
-rw-r--r--xargs/testsuite/xargs.posix/L3.exp1
-rw-r--r--xargs/testsuite/xargs.posix/L3.xo3
-rw-r--r--xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp12
-rw-r--r--xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp12
-rw-r--r--xargs/testsuite/xargs.posix/childfail.exp1
-rw-r--r--xargs/testsuite/xargs.posix/empty.exp1
-rw-r--r--xargs/testsuite/xargs.posix/empty.xo1
-rw-r--r--xargs/testsuite/xargs.posix/empty_def.exp1
-rw-r--r--xargs/testsuite/xargs.posix/empty_def.xo1
-rw-r--r--xargs/testsuite/xargs.posix/hithere.exp1
-rw-r--r--xargs/testsuite/xargs.posix/hithere.xo2
-rw-r--r--xargs/testsuite/xargs.posix/n1.exp1
-rw-r--r--xargs/testsuite/xargs.posix/n1.xo18
-rw-r--r--xargs/testsuite/xargs.posix/n2-s21-x.exp1
-rw-r--r--xargs/testsuite/xargs.posix/n2-s21-x.xo3
-rw-r--r--xargs/testsuite/xargs.posix/n2-s21.exp1
-rw-r--r--xargs/testsuite/xargs.posix/n2-s21.xo11
-rw-r--r--xargs/testsuite/xargs.posix/n2.exp1
-rw-r--r--xargs/testsuite/xargs.posix/n2.xo9
-rw-r--r--xargs/testsuite/xargs.posix/n3-s31.exp1
-rw-r--r--xargs/testsuite/xargs.posix/n3-s31.xo7
-rw-r--r--xargs/testsuite/xargs.posix/n3.exp1
-rw-r--r--xargs/testsuite/xargs.posix/n3.xo8
-rw-r--r--xargs/testsuite/xargs.posix/noeof.exp1
-rw-r--r--xargs/testsuite/xargs.posix/noeof.xo1
-rw-r--r--xargs/testsuite/xargs.posix/quotes.exp1
-rw-r--r--xargs/testsuite/xargs.posix/quotes.xo2
-rw-r--r--xargs/testsuite/xargs.posix/rc-123.exp1
-rw-r--r--xargs/testsuite/xargs.posix/rc-123.xo2
-rw-r--r--xargs/testsuite/xargs.posix/rc-124.exp1
-rw-r--r--xargs/testsuite/xargs.posix/rc-125.exp11
-rw-r--r--xargs/testsuite/xargs.posix/rc-126.exp1
-rw-r--r--xargs/testsuite/xargs.posix/rc-127.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s118.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s118.xo1
-rw-r--r--xargs/testsuite/xargs.posix/s14.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s14.xo6
-rw-r--r--xargs/testsuite/xargs.posix/s14_2.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s15.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s15.xo14
-rw-r--r--xargs/testsuite/xargs.posix/s25.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s25.xo6
-rw-r--r--xargs/testsuite/xargs.posix/s42.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s42.xo18
-rw-r--r--xargs/testsuite/xargs.posix/s470.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s470.xo2
-rw-r--r--xargs/testsuite/xargs.posix/s48.exp1
-rw-r--r--xargs/testsuite/xargs.posix/s48.xo22
-rw-r--r--xargs/testsuite/xargs.posix/s6.exp1
-rw-r--r--xargs/testsuite/xargs.posix/savannah-11865.exp1
-rw-r--r--xargs/testsuite/xargs.posix/savannah-11865.xo22
-rw-r--r--xargs/testsuite/xargs.posix/space-I.exp1
-rw-r--r--xargs/testsuite/xargs.posix/space.exp1
-rw-r--r--xargs/testsuite/xargs.posix/space.xo1
-rw-r--r--xargs/testsuite/xargs.posix/sv-bug-18714.exp10
-rw-r--r--xargs/testsuite/xargs.posix/sv-bug-18714.xo2
-rw-r--r--xargs/testsuite/xargs.posix/sv-bug-18714b.exp10
-rw-r--r--xargs/testsuite/xargs.posix/sv-bug-18714b.xo2
-rw-r--r--xargs/testsuite/xargs.posix/sv-bug-20273.exp1
-rw-r--r--xargs/testsuite/xargs.posix/sv-bug-20273.xo2
-rw-r--r--xargs/testsuite/xargs.posix/uc_L2.exp1
-rw-r--r--xargs/testsuite/xargs.posix/uc_L2.xo5
-rw-r--r--xargs/testsuite/xargs.posix/unmatched-n2-x.exp1
-rw-r--r--xargs/testsuite/xargs.posix/unmatched.exp1
-rw-r--r--xargs/testsuite/xargs.posix/unmatched.xo1
-rw-r--r--xargs/testsuite/xargs.posix/unmatched2.exp1
-rw-r--r--xargs/testsuite/xargs.posix/unmatched2.xo1
-rw-r--r--xargs/testsuite/xargs.sysv/e.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/e.xo1
-rw-r--r--xargs/testsuite/xargs.sysv/eEOF.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/eEOF.xo1
-rw-r--r--xargs/testsuite/xargs.sysv/empty-t.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/empty-t.xe1
-rw-r--r--xargs/testsuite/xargs.sysv/empty-t.xo1
-rw-r--r--xargs/testsuite/xargs.sysv/empty_def-t.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/empty_def-t.xe1
-rw-r--r--xargs/testsuite/xargs.sysv/empty_def-t.xo1
-rw-r--r--xargs/testsuite/xargs.sysv/eof1.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/eof1.xo1
-rw-r--r--xargs/testsuite/xargs.sysv/iARG.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/iARG.xo22
-rw-r--r--xargs/testsuite/xargs.sysv/idef-s26.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/idef-s26.xo1
-rw-r--r--xargs/testsuite/xargs.sysv/idef.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/idef.xo6
-rw-r--r--xargs/testsuite/xargs.sysv/iquotes.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/iquotes.xo5
-rw-r--r--xargs/testsuite/xargs.sysv/l1.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/l1.xo9
-rw-r--r--xargs/testsuite/xargs.sysv/l1_2.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/l1_2.xo6
-rw-r--r--xargs/testsuite/xargs.sysv/l1n4.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/l1n4.xo6
-rw-r--r--xargs/testsuite/xargs.sysv/lc_l2.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/lc_l2.xo11
-rw-r--r--xargs/testsuite/xargs.sysv/s25-t.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/s25-t.xe6
-rw-r--r--xargs/testsuite/xargs.sysv/s25-t.xo6
-rw-r--r--xargs/testsuite/xargs.sysv/space-t.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/space-t.xe1
-rw-r--r--xargs/testsuite/xargs.sysv/space-t.xo1
-rw-r--r--xargs/testsuite/xargs.sysv/sv-bug-18713.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/sv-bug-18713.xo7
-rw-r--r--xargs/testsuite/xargs.sysv/trace.exp1
-rw-r--r--xargs/testsuite/xargs.sysv/trace.xe2
-rw-r--r--xargs/testsuite/xargs.sysv/trace.xo2
-rw-r--r--xargs/xargs.1505
-rw-r--r--xargs/xargs.c1699
229 files changed, 7662 insertions, 0 deletions
diff --git a/xargs/Makefile.am b/xargs/Makefile.am
new file mode 100644
index 0000000..e002334
--- /dev/null
+++ b/xargs/Makefile.am
@@ -0,0 +1,23 @@
+AUTOMAKE_OPTIONS = std-options
+AM_CFLAGS = $(WARN_CFLAGS)
+localedir = $(datadir)/locale
+bin_PROGRAMS = xargs
+man_MANS = xargs.1
+AM_CPPFLAGS = -I.. -I../gl/lib -I$(top_srcdir)/gl/lib -I$(top_srcdir)/lib -I../intl -DLOCALEDIR=\"$(localedir)\"
+LDADD = ../lib/libfind.a ../gl/lib/libgnulib.a $(LIB_CLOSE) $(LIBINTL)
+EXTRA_DIST = $(man_MANS)
+SUBDIRS = . testsuite
+
+$(PROGRAMS): ../lib/libfind.a ../gl/lib/libgnulib.a
+
+dist-hook: findutils-check-manpages
+
+findutils-check-manpages:
+ $(top_srcdir)/build-aux/man-lint.sh $(srcdir) $(man_MANS)
+
+# Clean coverage files generated by running binaries built with
+# gcc -fprofile-arcs -ftest-coverage
+coverage-clean:
+ $(RM) *.gcno *.gcda *.gcov *.lcov
+
+clean-local: coverage-clean
diff --git a/xargs/Makefile.in b/xargs/Makefile.in
new file mode 100644
index 0000000..ad55b87
--- /dev/null
+++ b/xargs/Makefile.in
@@ -0,0 +1,2130 @@
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
+# This Makefile.in 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.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+bin_PROGRAMS = xargs$(EXEEXT)
+subdir = xargs
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/build-aux/mkinstalldirs \
+ $(top_srcdir)/build-aux/depcomp
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/findlib.m4 \
+ $(top_srcdir)/m4/mkinstalldirs.m4 $(top_srcdir)/m4/noreturn.m4 \
+ $(top_srcdir)/m4/nullsort.m4 $(top_srcdir)/m4/withfts.m4 \
+ $(top_srcdir)/gl/m4/00gnulib.m4 \
+ $(top_srcdir)/gl/m4/absolute-header.m4 \
+ $(top_srcdir)/gl/m4/alloca.m4 \
+ $(top_srcdir)/gl/m4/arpa_inet_h.m4 \
+ $(top_srcdir)/gl/m4/assert.m4 $(top_srcdir)/gl/m4/bison.m4 \
+ $(top_srcdir)/gl/m4/btowc.m4 $(top_srcdir)/gl/m4/byteswap.m4 \
+ $(top_srcdir)/gl/m4/canonicalize.m4 \
+ $(top_srcdir)/gl/m4/chdir-long.m4 \
+ $(top_srcdir)/gl/m4/check-math-lib.m4 \
+ $(top_srcdir)/gl/m4/clock_time.m4 \
+ $(top_srcdir)/gl/m4/close-stream.m4 \
+ $(top_srcdir)/gl/m4/close.m4 $(top_srcdir)/gl/m4/closedir.m4 \
+ $(top_srcdir)/gl/m4/closein.m4 $(top_srcdir)/gl/m4/closeout.m4 \
+ $(top_srcdir)/gl/m4/codeset.m4 \
+ $(top_srcdir)/gl/m4/configmake.m4 $(top_srcdir)/gl/m4/ctype.m4 \
+ $(top_srcdir)/gl/m4/cycle-check.m4 \
+ $(top_srcdir)/gl/m4/d-ino.m4 $(top_srcdir)/gl/m4/d-type.m4 \
+ $(top_srcdir)/gl/m4/dirent-safer.m4 \
+ $(top_srcdir)/gl/m4/dirent_h.m4 $(top_srcdir)/gl/m4/dirfd.m4 \
+ $(top_srcdir)/gl/m4/dirname.m4 \
+ $(top_srcdir)/gl/m4/double-slash-root.m4 \
+ $(top_srcdir)/gl/m4/dup.m4 $(top_srcdir)/gl/m4/dup2.m4 \
+ $(top_srcdir)/gl/m4/eealloc.m4 $(top_srcdir)/gl/m4/environ.m4 \
+ $(top_srcdir)/gl/m4/errno_h.m4 $(top_srcdir)/gl/m4/error.m4 \
+ $(top_srcdir)/gl/m4/euidaccess.m4 \
+ $(top_srcdir)/gl/m4/exponentd.m4 \
+ $(top_srcdir)/gl/m4/exponentf.m4 \
+ $(top_srcdir)/gl/m4/exponentl.m4 \
+ $(top_srcdir)/gl/m4/extensions.m4 \
+ $(top_srcdir)/gl/m4/extern-inline.m4 \
+ $(top_srcdir)/gl/m4/faccessat.m4 $(top_srcdir)/gl/m4/fchdir.m4 \
+ $(top_srcdir)/gl/m4/fcntl-o.m4 \
+ $(top_srcdir)/gl/m4/fcntl-safer.m4 \
+ $(top_srcdir)/gl/m4/fcntl.m4 $(top_srcdir)/gl/m4/fcntl_h.m4 \
+ $(top_srcdir)/gl/m4/fdopen.m4 $(top_srcdir)/gl/m4/fdopendir.m4 \
+ $(top_srcdir)/gl/m4/fflush.m4 \
+ $(top_srcdir)/gl/m4/fileblocks.m4 \
+ $(top_srcdir)/gl/m4/filemode.m4 \
+ $(top_srcdir)/gl/m4/filenamecat.m4 \
+ $(top_srcdir)/gl/m4/flexmember.m4 \
+ $(top_srcdir)/gl/m4/float_h.m4 $(top_srcdir)/gl/m4/fnmatch.m4 \
+ $(top_srcdir)/gl/m4/fopen.m4 $(top_srcdir)/gl/m4/fpending.m4 \
+ $(top_srcdir)/gl/m4/fpieee.m4 $(top_srcdir)/gl/m4/fpurge.m4 \
+ $(top_srcdir)/gl/m4/freadahead.m4 \
+ $(top_srcdir)/gl/m4/freading.m4 $(top_srcdir)/gl/m4/fseek.m4 \
+ $(top_srcdir)/gl/m4/fseeko.m4 $(top_srcdir)/gl/m4/fstat.m4 \
+ $(top_srcdir)/gl/m4/fstatat.m4 \
+ $(top_srcdir)/gl/m4/fstypename.m4 $(top_srcdir)/gl/m4/ftell.m4 \
+ $(top_srcdir)/gl/m4/ftello.m4 $(top_srcdir)/gl/m4/ftruncate.m4 \
+ $(top_srcdir)/gl/m4/fts.m4 \
+ $(top_srcdir)/gl/m4/getcwd-abort-bug.m4 \
+ $(top_srcdir)/gl/m4/getcwd-path-max.m4 \
+ $(top_srcdir)/gl/m4/getcwd.m4 $(top_srcdir)/gl/m4/getdelim.m4 \
+ $(top_srcdir)/gl/m4/getdtablesize.m4 \
+ $(top_srcdir)/gl/m4/getgroups.m4 \
+ $(top_srcdir)/gl/m4/gethostname.m4 \
+ $(top_srcdir)/gl/m4/getline.m4 $(top_srcdir)/gl/m4/getopt.m4 \
+ $(top_srcdir)/gl/m4/getpagesize.m4 \
+ $(top_srcdir)/gl/m4/gettext.m4 $(top_srcdir)/gl/m4/gettime.m4 \
+ $(top_srcdir)/gl/m4/gettimeofday.m4 \
+ $(top_srcdir)/gl/m4/glibc21.m4 \
+ $(top_srcdir)/gl/m4/gnulib-common.m4 \
+ $(top_srcdir)/gl/m4/gnulib-comp.m4 \
+ $(top_srcdir)/gl/m4/group-member.m4 \
+ $(top_srcdir)/gl/m4/human.m4 $(top_srcdir)/gl/m4/i-ring.m4 \
+ $(top_srcdir)/gl/m4/iconv.m4 $(top_srcdir)/gl/m4/idcache.m4 \
+ $(top_srcdir)/gl/m4/include_next.m4 \
+ $(top_srcdir)/gl/m4/inet_pton.m4 $(top_srcdir)/gl/m4/inline.m4 \
+ $(top_srcdir)/gl/m4/intlmacosx.m4 \
+ $(top_srcdir)/gl/m4/intmax_t.m4 \
+ $(top_srcdir)/gl/m4/inttostr.m4 \
+ $(top_srcdir)/gl/m4/inttypes-pri.m4 \
+ $(top_srcdir)/gl/m4/inttypes.m4 \
+ $(top_srcdir)/gl/m4/inttypes_h.m4 $(top_srcdir)/gl/m4/ioctl.m4 \
+ $(top_srcdir)/gl/m4/isblank.m4 $(top_srcdir)/gl/m4/isfinite.m4 \
+ $(top_srcdir)/gl/m4/isinf.m4 $(top_srcdir)/gl/m4/isnand.m4 \
+ $(top_srcdir)/gl/m4/isnanf.m4 $(top_srcdir)/gl/m4/isnanl.m4 \
+ $(top_srcdir)/gl/m4/iswblank.m4 \
+ $(top_srcdir)/gl/m4/langinfo_h.m4 \
+ $(top_srcdir)/gl/m4/largefile.m4 \
+ $(top_srcdir)/gl/m4/lcmessage.m4 $(top_srcdir)/gl/m4/lib-ld.m4 \
+ $(top_srcdir)/gl/m4/lib-link.m4 \
+ $(top_srcdir)/gl/m4/lib-prefix.m4 \
+ $(top_srcdir)/gl/m4/libunistring-base.m4 \
+ $(top_srcdir)/gl/m4/localcharset.m4 \
+ $(top_srcdir)/gl/m4/locale-fr.m4 \
+ $(top_srcdir)/gl/m4/locale-ja.m4 \
+ $(top_srcdir)/gl/m4/locale-tr.m4 \
+ $(top_srcdir)/gl/m4/locale-zh.m4 \
+ $(top_srcdir)/gl/m4/locale_h.m4 \
+ $(top_srcdir)/gl/m4/localeconv.m4 \
+ $(top_srcdir)/gl/m4/localename.m4 $(top_srcdir)/gl/m4/lock.m4 \
+ $(top_srcdir)/gl/m4/longlong.m4 \
+ $(top_srcdir)/gl/m4/ls-mntd-fs.m4 $(top_srcdir)/gl/m4/lseek.m4 \
+ $(top_srcdir)/gl/m4/lstat.m4 $(top_srcdir)/gl/m4/malloc.m4 \
+ $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
+ $(top_srcdir)/gl/m4/math_h.m4 $(top_srcdir)/gl/m4/mathfunc.m4 \
+ $(top_srcdir)/gl/m4/mbchar.m4 $(top_srcdir)/gl/m4/mbiter.m4 \
+ $(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
+ $(top_srcdir)/gl/m4/mbslen.m4 $(top_srcdir)/gl/m4/mbsrtowcs.m4 \
+ $(top_srcdir)/gl/m4/mbstate_t.m4 \
+ $(top_srcdir)/gl/m4/mbswidth.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
+ $(top_srcdir)/gl/m4/memchr.m4 $(top_srcdir)/gl/m4/mempcpy.m4 \
+ $(top_srcdir)/gl/m4/memrchr.m4 $(top_srcdir)/gl/m4/mktime.m4 \
+ $(top_srcdir)/gl/m4/mmap-anon.m4 $(top_srcdir)/gl/m4/mode_t.m4 \
+ $(top_srcdir)/gl/m4/modechange.m4 $(top_srcdir)/gl/m4/modf.m4 \
+ $(top_srcdir)/gl/m4/mountlist.m4 \
+ $(top_srcdir)/gl/m4/msvc-inval.m4 \
+ $(top_srcdir)/gl/m4/msvc-nothrow.m4 \
+ $(top_srcdir)/gl/m4/multiarch.m4 \
+ $(top_srcdir)/gl/m4/nanosleep.m4 \
+ $(top_srcdir)/gl/m4/netinet_in_h.m4 \
+ $(top_srcdir)/gl/m4/nl_langinfo.m4 $(top_srcdir)/gl/m4/nls.m4 \
+ $(top_srcdir)/gl/m4/nocrash.m4 $(top_srcdir)/gl/m4/off_t.m4 \
+ $(top_srcdir)/gl/m4/onceonly.m4 $(top_srcdir)/gl/m4/open.m4 \
+ $(top_srcdir)/gl/m4/openat.m4 $(top_srcdir)/gl/m4/opendir.m4 \
+ $(top_srcdir)/gl/m4/parse-datetime.m4 \
+ $(top_srcdir)/gl/m4/pathmax.m4 $(top_srcdir)/gl/m4/perror.m4 \
+ $(top_srcdir)/gl/m4/pipe.m4 $(top_srcdir)/gl/m4/po.m4 \
+ $(top_srcdir)/gl/m4/printf.m4 $(top_srcdir)/gl/m4/priv-set.m4 \
+ $(top_srcdir)/gl/m4/progtest.m4 $(top_srcdir)/gl/m4/putenv.m4 \
+ $(top_srcdir)/gl/m4/quote.m4 $(top_srcdir)/gl/m4/quotearg.m4 \
+ $(top_srcdir)/gl/m4/raise.m4 $(top_srcdir)/gl/m4/read.m4 \
+ $(top_srcdir)/gl/m4/readdir.m4 $(top_srcdir)/gl/m4/readlink.m4 \
+ $(top_srcdir)/gl/m4/readlinkat.m4 \
+ $(top_srcdir)/gl/m4/realloc.m4 $(top_srcdir)/gl/m4/regex.m4 \
+ $(top_srcdir)/gl/m4/rewinddir.m4 $(top_srcdir)/gl/m4/rmdir.m4 \
+ $(top_srcdir)/gl/m4/rpmatch.m4 \
+ $(top_srcdir)/gl/m4/safe-read.m4 $(top_srcdir)/gl/m4/same.m4 \
+ $(top_srcdir)/gl/m4/save-cwd.m4 $(top_srcdir)/gl/m4/savedir.m4 \
+ $(top_srcdir)/gl/m4/select.m4 \
+ $(top_srcdir)/gl/m4/selinux-context-h.m4 \
+ $(top_srcdir)/gl/m4/selinux-selinux-h.m4 \
+ $(top_srcdir)/gl/m4/setenv.m4 $(top_srcdir)/gl/m4/setlocale.m4 \
+ $(top_srcdir)/gl/m4/sigaction.m4 \
+ $(top_srcdir)/gl/m4/signal_h.m4 \
+ $(top_srcdir)/gl/m4/signalblocking.m4 \
+ $(top_srcdir)/gl/m4/size_max.m4 $(top_srcdir)/gl/m4/sleep.m4 \
+ $(top_srcdir)/gl/m4/snprintf.m4 \
+ $(top_srcdir)/gl/m4/socketlib.m4 \
+ $(top_srcdir)/gl/m4/sockets.m4 $(top_srcdir)/gl/m4/socklen.m4 \
+ $(top_srcdir)/gl/m4/sockpfaf.m4 $(top_srcdir)/gl/m4/ssize_t.m4 \
+ $(top_srcdir)/gl/m4/st_dm_mode.m4 \
+ $(top_srcdir)/gl/m4/stat-size.m4 \
+ $(top_srcdir)/gl/m4/stat-time.m4 $(top_srcdir)/gl/m4/stat.m4 \
+ $(top_srcdir)/gl/m4/stdalign.m4 $(top_srcdir)/gl/m4/stdarg.m4 \
+ $(top_srcdir)/gl/m4/stdbool.m4 $(top_srcdir)/gl/m4/stddef_h.m4 \
+ $(top_srcdir)/gl/m4/stdint.m4 $(top_srcdir)/gl/m4/stdint_h.m4 \
+ $(top_srcdir)/gl/m4/stdio_h.m4 $(top_srcdir)/gl/m4/stdlib_h.m4 \
+ $(top_srcdir)/gl/m4/stpcpy.m4 $(top_srcdir)/gl/m4/strcase.m4 \
+ $(top_srcdir)/gl/m4/strcasestr.m4 \
+ $(top_srcdir)/gl/m4/strdup.m4 $(top_srcdir)/gl/m4/strerror.m4 \
+ $(top_srcdir)/gl/m4/strerror_r.m4 \
+ $(top_srcdir)/gl/m4/strftime.m4 \
+ $(top_srcdir)/gl/m4/string_h.m4 \
+ $(top_srcdir)/gl/m4/strings_h.m4 \
+ $(top_srcdir)/gl/m4/strndup.m4 $(top_srcdir)/gl/m4/strnlen.m4 \
+ $(top_srcdir)/gl/m4/strstr.m4 $(top_srcdir)/gl/m4/strtoull.m4 \
+ $(top_srcdir)/gl/m4/strtoumax.m4 \
+ $(top_srcdir)/gl/m4/symlink.m4 \
+ $(top_srcdir)/gl/m4/symlinkat.m4 \
+ $(top_srcdir)/gl/m4/sys_ioctl_h.m4 \
+ $(top_srcdir)/gl/m4/sys_select_h.m4 \
+ $(top_srcdir)/gl/m4/sys_socket_h.m4 \
+ $(top_srcdir)/gl/m4/sys_stat_h.m4 \
+ $(top_srcdir)/gl/m4/sys_time_h.m4 \
+ $(top_srcdir)/gl/m4/sys_types_h.m4 \
+ $(top_srcdir)/gl/m4/sys_uio_h.m4 \
+ $(top_srcdir)/gl/m4/sys_utsname_h.m4 \
+ $(top_srcdir)/gl/m4/sys_wait_h.m4 \
+ $(top_srcdir)/gl/m4/thread.m4 $(top_srcdir)/gl/m4/threadlib.m4 \
+ $(top_srcdir)/gl/m4/time_h.m4 $(top_srcdir)/gl/m4/time_r.m4 \
+ $(top_srcdir)/gl/m4/time_rz.m4 $(top_srcdir)/gl/m4/timegm.m4 \
+ $(top_srcdir)/gl/m4/timespec.m4 \
+ $(top_srcdir)/gl/m4/tm_gmtoff.m4 $(top_srcdir)/gl/m4/trunc.m4 \
+ $(top_srcdir)/gl/m4/uname.m4 $(top_srcdir)/gl/m4/ungetc.m4 \
+ $(top_srcdir)/gl/m4/unistd-safer.m4 \
+ $(top_srcdir)/gl/m4/unistd_h.m4 $(top_srcdir)/gl/m4/unlink.m4 \
+ $(top_srcdir)/gl/m4/unlinkat.m4 \
+ $(top_srcdir)/gl/m4/unlinkdir.m4 \
+ $(top_srcdir)/gl/m4/vasnprintf.m4 \
+ $(top_srcdir)/gl/m4/version-etc.m4 \
+ $(top_srcdir)/gl/m4/warn-on-use.m4 \
+ $(top_srcdir)/gl/m4/warnings.m4 $(top_srcdir)/gl/m4/wchar_h.m4 \
+ $(top_srcdir)/gl/m4/wchar_t.m4 $(top_srcdir)/gl/m4/wcrtomb.m4 \
+ $(top_srcdir)/gl/m4/wctob.m4 $(top_srcdir)/gl/m4/wctomb.m4 \
+ $(top_srcdir)/gl/m4/wctype_h.m4 $(top_srcdir)/gl/m4/wcwidth.m4 \
+ $(top_srcdir)/gl/m4/wint_t.m4 $(top_srcdir)/gl/m4/xalloc.m4 \
+ $(top_srcdir)/gl/m4/xgetcwd.m4 $(top_srcdir)/gl/m4/xsize.m4 \
+ $(top_srcdir)/gl/m4/xstrndup.m4 $(top_srcdir)/gl/m4/xstrtod.m4 \
+ $(top_srcdir)/gl/m4/xstrtol.m4 $(top_srcdir)/gl/m4/yesno.m4 \
+ $(top_srcdir)/gl/m4/yield.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/build-aux/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"
+PROGRAMS = $(bin_PROGRAMS)
+xargs_SOURCES = xargs.c
+xargs_OBJECTS = xargs.$(OBJEXT)
+xargs_LDADD = $(LDADD)
+am__DEPENDENCIES_1 =
+xargs_DEPENDENCIES = ../lib/libfind.a ../gl/lib/libgnulib.a \
+ $(am__DEPENDENCIES_1)
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
+SOURCES = xargs.c
+DIST_SOURCES = xargs.c
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+ ctags-recursive dvi-recursive html-recursive info-recursive \
+ install-data-recursive install-dvi-recursive \
+ install-exec-recursive install-html-recursive \
+ install-info-recursive install-pdf-recursive \
+ install-ps-recursive install-recursive installcheck-recursive \
+ installdirs-recursive pdf-recursive ps-recursive \
+ tags-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+ test -z "$$files" \
+ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+ $(am__cd) "$$dir" && rm -f $$files; }; \
+ }
+man1dir = $(mandir)/man1
+NROFF = nroff
+MANS = $(man_MANS)
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+am__recursive_targets = \
+ $(RECURSIVE_TARGETS) \
+ $(RECURSIVE_CLEAN_TARGETS) \
+ $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
+ distdir
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+pkglibexecdir = @pkglibexecdir@
+ACLOCAL = @ACLOCAL@
+ALLOCA = @ALLOCA@
+ALLOCA_H = @ALLOCA_H@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@
+AR = @AR@
+ARFLAGS = @ARFLAGS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AUXDIR = @AUXDIR@
+AWK = @AWK@
+BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@
+BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@
+BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@
+BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@
+BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@
+BYTESWAP_H = @BYTESWAP_H@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIG_INCLUDE = @CONFIG_INCLUDE@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFAULT_ARG_SIZE = @DEFAULT_ARG_SIZE@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@
+EMULTIHOP_VALUE = @EMULTIHOP_VALUE@
+ENOLINK_HIDDEN = @ENOLINK_HIDDEN@
+ENOLINK_VALUE = @ENOLINK_VALUE@
+EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@
+EOVERFLOW_VALUE = @EOVERFLOW_VALUE@
+ERRNO_H = @ERRNO_H@
+EXEEXT = @EXEEXT@
+FAKETIME = @FAKETIME@
+FINDLIBOBJS = @FINDLIBOBJS@
+FINDLIBS = @FINDLIBS@
+FLOAT_H = @FLOAT_H@
+FNMATCH_H = @FNMATCH_H@
+GETHOSTNAME_LIB = @GETHOSTNAME_LIB@
+GETOPT_H = @GETOPT_H@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
+GLIBC21 = @GLIBC21@
+GMSGFMT = @GMSGFMT@
+GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACOSF = @GNULIB_ACOSF@
+GNULIB_ACOSL = @GNULIB_ACOSL@
+GNULIB_ALPHASORT = @GNULIB_ALPHASORT@
+GNULIB_ASINF = @GNULIB_ASINF@
+GNULIB_ASINL = @GNULIB_ASINL@
+GNULIB_ATAN2F = @GNULIB_ATAN2F@
+GNULIB_ATANF = @GNULIB_ATANF@
+GNULIB_ATANL = @GNULIB_ATANL@
+GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
+GNULIB_BTOWC = @GNULIB_BTOWC@
+GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
+GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
+GNULIB_CBRT = @GNULIB_CBRT@
+GNULIB_CBRTF = @GNULIB_CBRTF@
+GNULIB_CBRTL = @GNULIB_CBRTL@
+GNULIB_CEIL = @GNULIB_CEIL@
+GNULIB_CEILF = @GNULIB_CEILF@
+GNULIB_CEILL = @GNULIB_CEILL@
+GNULIB_CHDIR = @GNULIB_CHDIR@
+GNULIB_CHOWN = @GNULIB_CHOWN@
+GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
+GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPYSIGN = @GNULIB_COPYSIGN@
+GNULIB_COPYSIGNF = @GNULIB_COPYSIGNF@
+GNULIB_COPYSIGNL = @GNULIB_COPYSIGNL@
+GNULIB_COSF = @GNULIB_COSF@
+GNULIB_COSHF = @GNULIB_COSHF@
+GNULIB_COSL = @GNULIB_COSL@
+GNULIB_DIRFD = @GNULIB_DIRFD@
+GNULIB_DPRINTF = @GNULIB_DPRINTF@
+GNULIB_DUP = @GNULIB_DUP@
+GNULIB_DUP2 = @GNULIB_DUP2@
+GNULIB_DUP3 = @GNULIB_DUP3@
+GNULIB_DUPLOCALE = @GNULIB_DUPLOCALE@
+GNULIB_ENVIRON = @GNULIB_ENVIRON@
+GNULIB_EUIDACCESS = @GNULIB_EUIDACCESS@
+GNULIB_EXP2 = @GNULIB_EXP2@
+GNULIB_EXP2F = @GNULIB_EXP2F@
+GNULIB_EXP2L = @GNULIB_EXP2L@
+GNULIB_EXPF = @GNULIB_EXPF@
+GNULIB_EXPL = @GNULIB_EXPL@
+GNULIB_EXPM1 = @GNULIB_EXPM1@
+GNULIB_EXPM1F = @GNULIB_EXPM1F@
+GNULIB_EXPM1L = @GNULIB_EXPM1L@
+GNULIB_FABSF = @GNULIB_FABSF@
+GNULIB_FABSL = @GNULIB_FABSL@
+GNULIB_FACCESSAT = @GNULIB_FACCESSAT@
+GNULIB_FCHDIR = @GNULIB_FCHDIR@
+GNULIB_FCHMODAT = @GNULIB_FCHMODAT@
+GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@
+GNULIB_FCLOSE = @GNULIB_FCLOSE@
+GNULIB_FCNTL = @GNULIB_FCNTL@
+GNULIB_FDATASYNC = @GNULIB_FDATASYNC@
+GNULIB_FDOPEN = @GNULIB_FDOPEN@
+GNULIB_FDOPENDIR = @GNULIB_FDOPENDIR@
+GNULIB_FFLUSH = @GNULIB_FFLUSH@
+GNULIB_FFS = @GNULIB_FFS@
+GNULIB_FFSL = @GNULIB_FFSL@
+GNULIB_FFSLL = @GNULIB_FFSLL@
+GNULIB_FGETC = @GNULIB_FGETC@
+GNULIB_FGETS = @GNULIB_FGETS@
+GNULIB_FLOOR = @GNULIB_FLOOR@
+GNULIB_FLOORF = @GNULIB_FLOORF@
+GNULIB_FLOORL = @GNULIB_FLOORL@
+GNULIB_FMA = @GNULIB_FMA@
+GNULIB_FMAF = @GNULIB_FMAF@
+GNULIB_FMAL = @GNULIB_FMAL@
+GNULIB_FMOD = @GNULIB_FMOD@
+GNULIB_FMODF = @GNULIB_FMODF@
+GNULIB_FMODL = @GNULIB_FMODL@
+GNULIB_FOPEN = @GNULIB_FOPEN@
+GNULIB_FPRINTF = @GNULIB_FPRINTF@
+GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@
+GNULIB_FPURGE = @GNULIB_FPURGE@
+GNULIB_FPUTC = @GNULIB_FPUTC@
+GNULIB_FPUTS = @GNULIB_FPUTS@
+GNULIB_FREAD = @GNULIB_FREAD@
+GNULIB_FREOPEN = @GNULIB_FREOPEN@
+GNULIB_FREXP = @GNULIB_FREXP@
+GNULIB_FREXPF = @GNULIB_FREXPF@
+GNULIB_FREXPL = @GNULIB_FREXPL@
+GNULIB_FSCANF = @GNULIB_FSCANF@
+GNULIB_FSEEK = @GNULIB_FSEEK@
+GNULIB_FSEEKO = @GNULIB_FSEEKO@
+GNULIB_FSTAT = @GNULIB_FSTAT@
+GNULIB_FSTATAT = @GNULIB_FSTATAT@
+GNULIB_FSYNC = @GNULIB_FSYNC@
+GNULIB_FTELL = @GNULIB_FTELL@
+GNULIB_FTELLO = @GNULIB_FTELLO@
+GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@
+GNULIB_FUTIMENS = @GNULIB_FUTIMENS@
+GNULIB_FWRITE = @GNULIB_FWRITE@
+GNULIB_GETC = @GNULIB_GETC@
+GNULIB_GETCHAR = @GNULIB_GETCHAR@
+GNULIB_GETCWD = @GNULIB_GETCWD@
+GNULIB_GETDELIM = @GNULIB_GETDELIM@
+GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
+GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
+GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
+GNULIB_GETLINE = @GNULIB_GETLINE@
+GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
+GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
+GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
+GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
+GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
+GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
+GNULIB_GRANTPT = @GNULIB_GRANTPT@
+GNULIB_GROUP_MEMBER = @GNULIB_GROUP_MEMBER@
+GNULIB_HYPOT = @GNULIB_HYPOT@
+GNULIB_HYPOTF = @GNULIB_HYPOTF@
+GNULIB_HYPOTL = @GNULIB_HYPOTL@
+GNULIB_ILOGB = @GNULIB_ILOGB@
+GNULIB_ILOGBF = @GNULIB_ILOGBF@
+GNULIB_ILOGBL = @GNULIB_ILOGBL@
+GNULIB_IMAXABS = @GNULIB_IMAXABS@
+GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
+GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
+GNULIB_ISFINITE = @GNULIB_ISFINITE@
+GNULIB_ISINF = @GNULIB_ISINF@
+GNULIB_ISNAN = @GNULIB_ISNAN@
+GNULIB_ISNAND = @GNULIB_ISNAND@
+GNULIB_ISNANF = @GNULIB_ISNANF@
+GNULIB_ISNANL = @GNULIB_ISNANL@
+GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
+GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_LCHMOD = @GNULIB_LCHMOD@
+GNULIB_LCHOWN = @GNULIB_LCHOWN@
+GNULIB_LDEXPF = @GNULIB_LDEXPF@
+GNULIB_LDEXPL = @GNULIB_LDEXPL@
+GNULIB_LINK = @GNULIB_LINK@
+GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
+GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
+GNULIB_LOG = @GNULIB_LOG@
+GNULIB_LOG10 = @GNULIB_LOG10@
+GNULIB_LOG10F = @GNULIB_LOG10F@
+GNULIB_LOG10L = @GNULIB_LOG10L@
+GNULIB_LOG1P = @GNULIB_LOG1P@
+GNULIB_LOG1PF = @GNULIB_LOG1PF@
+GNULIB_LOG1PL = @GNULIB_LOG1PL@
+GNULIB_LOG2 = @GNULIB_LOG2@
+GNULIB_LOG2F = @GNULIB_LOG2F@
+GNULIB_LOG2L = @GNULIB_LOG2L@
+GNULIB_LOGB = @GNULIB_LOGB@
+GNULIB_LOGBF = @GNULIB_LOGBF@
+GNULIB_LOGBL = @GNULIB_LOGBL@
+GNULIB_LOGF = @GNULIB_LOGF@
+GNULIB_LOGL = @GNULIB_LOGL@
+GNULIB_LSEEK = @GNULIB_LSEEK@
+GNULIB_LSTAT = @GNULIB_LSTAT@
+GNULIB_MALLOC_POSIX = @GNULIB_MALLOC_POSIX@
+GNULIB_MBRLEN = @GNULIB_MBRLEN@
+GNULIB_MBRTOWC = @GNULIB_MBRTOWC@
+GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@
+GNULIB_MBSCASESTR = @GNULIB_MBSCASESTR@
+GNULIB_MBSCHR = @GNULIB_MBSCHR@
+GNULIB_MBSCSPN = @GNULIB_MBSCSPN@
+GNULIB_MBSINIT = @GNULIB_MBSINIT@
+GNULIB_MBSLEN = @GNULIB_MBSLEN@
+GNULIB_MBSNCASECMP = @GNULIB_MBSNCASECMP@
+GNULIB_MBSNLEN = @GNULIB_MBSNLEN@
+GNULIB_MBSNRTOWCS = @GNULIB_MBSNRTOWCS@
+GNULIB_MBSPBRK = @GNULIB_MBSPBRK@
+GNULIB_MBSPCASECMP = @GNULIB_MBSPCASECMP@
+GNULIB_MBSRCHR = @GNULIB_MBSRCHR@
+GNULIB_MBSRTOWCS = @GNULIB_MBSRTOWCS@
+GNULIB_MBSSEP = @GNULIB_MBSSEP@
+GNULIB_MBSSPN = @GNULIB_MBSSPN@
+GNULIB_MBSSTR = @GNULIB_MBSSTR@
+GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@
+GNULIB_MBTOWC = @GNULIB_MBTOWC@
+GNULIB_MEMCHR = @GNULIB_MEMCHR@
+GNULIB_MEMMEM = @GNULIB_MEMMEM@
+GNULIB_MEMPCPY = @GNULIB_MEMPCPY@
+GNULIB_MEMRCHR = @GNULIB_MEMRCHR@
+GNULIB_MKDIRAT = @GNULIB_MKDIRAT@
+GNULIB_MKDTEMP = @GNULIB_MKDTEMP@
+GNULIB_MKFIFO = @GNULIB_MKFIFO@
+GNULIB_MKFIFOAT = @GNULIB_MKFIFOAT@
+GNULIB_MKNOD = @GNULIB_MKNOD@
+GNULIB_MKNODAT = @GNULIB_MKNODAT@
+GNULIB_MKOSTEMP = @GNULIB_MKOSTEMP@
+GNULIB_MKOSTEMPS = @GNULIB_MKOSTEMPS@
+GNULIB_MKSTEMP = @GNULIB_MKSTEMP@
+GNULIB_MKSTEMPS = @GNULIB_MKSTEMPS@
+GNULIB_MKTIME = @GNULIB_MKTIME@
+GNULIB_MODF = @GNULIB_MODF@
+GNULIB_MODFF = @GNULIB_MODFF@
+GNULIB_MODFL = @GNULIB_MODFL@
+GNULIB_NANOSLEEP = @GNULIB_NANOSLEEP@
+GNULIB_NL_LANGINFO = @GNULIB_NL_LANGINFO@
+GNULIB_NONBLOCKING = @GNULIB_NONBLOCKING@
+GNULIB_OBSTACK_PRINTF = @GNULIB_OBSTACK_PRINTF@
+GNULIB_OBSTACK_PRINTF_POSIX = @GNULIB_OBSTACK_PRINTF_POSIX@
+GNULIB_OPEN = @GNULIB_OPEN@
+GNULIB_OPENAT = @GNULIB_OPENAT@
+GNULIB_OPENDIR = @GNULIB_OPENDIR@
+GNULIB_PCLOSE = @GNULIB_PCLOSE@
+GNULIB_PERROR = @GNULIB_PERROR@
+GNULIB_PIPE = @GNULIB_PIPE@
+GNULIB_PIPE2 = @GNULIB_PIPE2@
+GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
+GNULIB_POWF = @GNULIB_POWF@
+GNULIB_PREAD = @GNULIB_PREAD@
+GNULIB_PRINTF = @GNULIB_PRINTF@
+GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
+GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
+GNULIB_PTSNAME = @GNULIB_PTSNAME@
+GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
+GNULIB_PUTC = @GNULIB_PUTC@
+GNULIB_PUTCHAR = @GNULIB_PUTCHAR@
+GNULIB_PUTENV = @GNULIB_PUTENV@
+GNULIB_PUTS = @GNULIB_PUTS@
+GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
+GNULIB_RAISE = @GNULIB_RAISE@
+GNULIB_RANDOM = @GNULIB_RANDOM@
+GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
+GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@
+GNULIB_READ = @GNULIB_READ@
+GNULIB_READDIR = @GNULIB_READDIR@
+GNULIB_READLINK = @GNULIB_READLINK@
+GNULIB_READLINKAT = @GNULIB_READLINKAT@
+GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
+GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
+GNULIB_REMAINDER = @GNULIB_REMAINDER@
+GNULIB_REMAINDERF = @GNULIB_REMAINDERF@
+GNULIB_REMAINDERL = @GNULIB_REMAINDERL@
+GNULIB_REMOVE = @GNULIB_REMOVE@
+GNULIB_RENAME = @GNULIB_RENAME@
+GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
+GNULIB_REWINDDIR = @GNULIB_REWINDDIR@
+GNULIB_RINT = @GNULIB_RINT@
+GNULIB_RINTF = @GNULIB_RINTF@
+GNULIB_RINTL = @GNULIB_RINTL@
+GNULIB_RMDIR = @GNULIB_RMDIR@
+GNULIB_ROUND = @GNULIB_ROUND@
+GNULIB_ROUNDF = @GNULIB_ROUNDF@
+GNULIB_ROUNDL = @GNULIB_ROUNDL@
+GNULIB_RPMATCH = @GNULIB_RPMATCH@
+GNULIB_SCANDIR = @GNULIB_SCANDIR@
+GNULIB_SCANF = @GNULIB_SCANF@
+GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
+GNULIB_SETENV = @GNULIB_SETENV@
+GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
+GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
+GNULIB_SIGNBIT = @GNULIB_SIGNBIT@
+GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
+GNULIB_SINF = @GNULIB_SINF@
+GNULIB_SINHF = @GNULIB_SINHF@
+GNULIB_SINL = @GNULIB_SINL@
+GNULIB_SLEEP = @GNULIB_SLEEP@
+GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
+GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
+GNULIB_SQRTF = @GNULIB_SQRTF@
+GNULIB_SQRTL = @GNULIB_SQRTL@
+GNULIB_STAT = @GNULIB_STAT@
+GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
+GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@
+GNULIB_STPCPY = @GNULIB_STPCPY@
+GNULIB_STPNCPY = @GNULIB_STPNCPY@
+GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
+GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
+GNULIB_STRDUP = @GNULIB_STRDUP@
+GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
+GNULIB_STRNCAT = @GNULIB_STRNCAT@
+GNULIB_STRNDUP = @GNULIB_STRNDUP@
+GNULIB_STRNLEN = @GNULIB_STRNLEN@
+GNULIB_STRPBRK = @GNULIB_STRPBRK@
+GNULIB_STRPTIME = @GNULIB_STRPTIME@
+GNULIB_STRSEP = @GNULIB_STRSEP@
+GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
+GNULIB_STRSTR = @GNULIB_STRSTR@
+GNULIB_STRTOD = @GNULIB_STRTOD@
+GNULIB_STRTOIMAX = @GNULIB_STRTOIMAX@
+GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLL = @GNULIB_STRTOLL@
+GNULIB_STRTOULL = @GNULIB_STRTOULL@
+GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@
+GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
+GNULIB_SYMLINK = @GNULIB_SYMLINK@
+GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@
+GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
+GNULIB_TANF = @GNULIB_TANF@
+GNULIB_TANHF = @GNULIB_TANHF@
+GNULIB_TANL = @GNULIB_TANL@
+GNULIB_TIMEGM = @GNULIB_TIMEGM@
+GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
+GNULIB_TMPFILE = @GNULIB_TMPFILE@
+GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
+GNULIB_TRUNC = @GNULIB_TRUNC@
+GNULIB_TRUNCF = @GNULIB_TRUNCF@
+GNULIB_TRUNCL = @GNULIB_TRUNCL@
+GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
+GNULIB_UNAME = @GNULIB_UNAME@
+GNULIB_UNISTD_H_NONBLOCKING = @GNULIB_UNISTD_H_NONBLOCKING@
+GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@
+GNULIB_UNLINK = @GNULIB_UNLINK@
+GNULIB_UNLINKAT = @GNULIB_UNLINKAT@
+GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@
+GNULIB_UNSETENV = @GNULIB_UNSETENV@
+GNULIB_USLEEP = @GNULIB_USLEEP@
+GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@
+GNULIB_VASPRINTF = @GNULIB_VASPRINTF@
+GNULIB_VDPRINTF = @GNULIB_VDPRINTF@
+GNULIB_VFPRINTF = @GNULIB_VFPRINTF@
+GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@
+GNULIB_VFSCANF = @GNULIB_VFSCANF@
+GNULIB_VPRINTF = @GNULIB_VPRINTF@
+GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@
+GNULIB_VSCANF = @GNULIB_VSCANF@
+GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@
+GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@
+GNULIB_WAITPID = @GNULIB_WAITPID@
+GNULIB_WCPCPY = @GNULIB_WCPCPY@
+GNULIB_WCPNCPY = @GNULIB_WCPNCPY@
+GNULIB_WCRTOMB = @GNULIB_WCRTOMB@
+GNULIB_WCSCASECMP = @GNULIB_WCSCASECMP@
+GNULIB_WCSCAT = @GNULIB_WCSCAT@
+GNULIB_WCSCHR = @GNULIB_WCSCHR@
+GNULIB_WCSCMP = @GNULIB_WCSCMP@
+GNULIB_WCSCOLL = @GNULIB_WCSCOLL@
+GNULIB_WCSCPY = @GNULIB_WCSCPY@
+GNULIB_WCSCSPN = @GNULIB_WCSCSPN@
+GNULIB_WCSDUP = @GNULIB_WCSDUP@
+GNULIB_WCSLEN = @GNULIB_WCSLEN@
+GNULIB_WCSNCASECMP = @GNULIB_WCSNCASECMP@
+GNULIB_WCSNCAT = @GNULIB_WCSNCAT@
+GNULIB_WCSNCMP = @GNULIB_WCSNCMP@
+GNULIB_WCSNCPY = @GNULIB_WCSNCPY@
+GNULIB_WCSNLEN = @GNULIB_WCSNLEN@
+GNULIB_WCSNRTOMBS = @GNULIB_WCSNRTOMBS@
+GNULIB_WCSPBRK = @GNULIB_WCSPBRK@
+GNULIB_WCSRCHR = @GNULIB_WCSRCHR@
+GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@
+GNULIB_WCSSPN = @GNULIB_WCSSPN@
+GNULIB_WCSSTR = @GNULIB_WCSSTR@
+GNULIB_WCSTOK = @GNULIB_WCSTOK@
+GNULIB_WCSWIDTH = @GNULIB_WCSWIDTH@
+GNULIB_WCSXFRM = @GNULIB_WCSXFRM@
+GNULIB_WCTOB = @GNULIB_WCTOB@
+GNULIB_WCTOMB = @GNULIB_WCTOMB@
+GNULIB_WCTRANS = @GNULIB_WCTRANS@
+GNULIB_WCTYPE = @GNULIB_WCTYPE@
+GNULIB_WCWIDTH = @GNULIB_WCWIDTH@
+GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
+GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
+GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
+GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMSET = @GNULIB_WMEMSET@
+GNULIB_WRITE = @GNULIB_WRITE@
+GNULIB__EXIT = @GNULIB__EXIT@
+GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ACOSF = @HAVE_ACOSF@
+HAVE_ACOSL = @HAVE_ACOSL@
+HAVE_ALPHASORT = @HAVE_ALPHASORT@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
+HAVE_ASINF = @HAVE_ASINF@
+HAVE_ASINL = @HAVE_ASINL@
+HAVE_ATAN2F = @HAVE_ATAN2F@
+HAVE_ATANF = @HAVE_ATANF@
+HAVE_ATANL = @HAVE_ATANL@
+HAVE_ATOLL = @HAVE_ATOLL@
+HAVE_ATTRIBUTE_NORETURN = @HAVE_ATTRIBUTE_NORETURN@
+HAVE_BTOWC = @HAVE_BTOWC@
+HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
+HAVE_CBRT = @HAVE_CBRT@
+HAVE_CBRTF = @HAVE_CBRTF@
+HAVE_CBRTL = @HAVE_CBRTL@
+HAVE_CHOWN = @HAVE_CHOWN@
+HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPYSIGN = @HAVE_COPYSIGN@
+HAVE_COPYSIGNL = @HAVE_COPYSIGNL@
+HAVE_COSF = @HAVE_COSF@
+HAVE_COSHF = @HAVE_COSHF@
+HAVE_COSL = @HAVE_COSL@
+HAVE_DECL_ACOSL = @HAVE_DECL_ACOSL@
+HAVE_DECL_ASINL = @HAVE_DECL_ASINL@
+HAVE_DECL_ATANL = @HAVE_DECL_ATANL@
+HAVE_DECL_CBRTF = @HAVE_DECL_CBRTF@
+HAVE_DECL_CBRTL = @HAVE_DECL_CBRTL@
+HAVE_DECL_CEILF = @HAVE_DECL_CEILF@
+HAVE_DECL_CEILL = @HAVE_DECL_CEILL@
+HAVE_DECL_COPYSIGNF = @HAVE_DECL_COPYSIGNF@
+HAVE_DECL_COSL = @HAVE_DECL_COSL@
+HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
+HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXP2 = @HAVE_DECL_EXP2@
+HAVE_DECL_EXP2F = @HAVE_DECL_EXP2F@
+HAVE_DECL_EXP2L = @HAVE_DECL_EXP2L@
+HAVE_DECL_EXPL = @HAVE_DECL_EXPL@
+HAVE_DECL_EXPM1L = @HAVE_DECL_EXPM1L@
+HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
+HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@
+HAVE_DECL_FLOORF = @HAVE_DECL_FLOORF@
+HAVE_DECL_FLOORL = @HAVE_DECL_FLOORL@
+HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
+HAVE_DECL_FREXPL = @HAVE_DECL_FREXPL@
+HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
+HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
+HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
+HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
+HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@
+HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@
+HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@
+HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
+HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
+HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
+HAVE_DECL_LDEXPL = @HAVE_DECL_LDEXPL@
+HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
+HAVE_DECL_LOG10L = @HAVE_DECL_LOG10L@
+HAVE_DECL_LOG2 = @HAVE_DECL_LOG2@
+HAVE_DECL_LOG2F = @HAVE_DECL_LOG2F@
+HAVE_DECL_LOG2L = @HAVE_DECL_LOG2L@
+HAVE_DECL_LOGB = @HAVE_DECL_LOGB@
+HAVE_DECL_LOGL = @HAVE_DECL_LOGL@
+HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
+HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
+HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@
+HAVE_DECL_REMAINDER = @HAVE_DECL_REMAINDER@
+HAVE_DECL_REMAINDERL = @HAVE_DECL_REMAINDERL@
+HAVE_DECL_RINTF = @HAVE_DECL_RINTF@
+HAVE_DECL_ROUND = @HAVE_DECL_ROUND@
+HAVE_DECL_ROUNDF = @HAVE_DECL_ROUNDF@
+HAVE_DECL_ROUNDL = @HAVE_DECL_ROUNDL@
+HAVE_DECL_SETENV = @HAVE_DECL_SETENV@
+HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@
+HAVE_DECL_SINL = @HAVE_DECL_SINL@
+HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@
+HAVE_DECL_SQRTL = @HAVE_DECL_SQRTL@
+HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@
+HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@
+HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@
+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_TANL = @HAVE_DECL_TANL@
+HAVE_DECL_TRUNC = @HAVE_DECL_TRUNC@
+HAVE_DECL_TRUNCF = @HAVE_DECL_TRUNCF@
+HAVE_DECL_TRUNCL = @HAVE_DECL_TRUNCL@
+HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
+HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
+HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
+HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
+HAVE_DIRENT_H = @HAVE_DIRENT_H@
+HAVE_DPRINTF = @HAVE_DPRINTF@
+HAVE_DUP2 = @HAVE_DUP2@
+HAVE_DUP3 = @HAVE_DUP3@
+HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
+HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
+HAVE_EXPF = @HAVE_EXPF@
+HAVE_EXPL = @HAVE_EXPL@
+HAVE_EXPM1 = @HAVE_EXPM1@
+HAVE_EXPM1F = @HAVE_EXPM1F@
+HAVE_FABSF = @HAVE_FABSF@
+HAVE_FABSL = @HAVE_FABSL@
+HAVE_FACCESSAT = @HAVE_FACCESSAT@
+HAVE_FCHDIR = @HAVE_FCHDIR@
+HAVE_FCHMODAT = @HAVE_FCHMODAT@
+HAVE_FCHOWNAT = @HAVE_FCHOWNAT@
+HAVE_FCNTL = @HAVE_FCNTL@
+HAVE_FDATASYNC = @HAVE_FDATASYNC@
+HAVE_FDOPENDIR = @HAVE_FDOPENDIR@
+HAVE_FEATURES_H = @HAVE_FEATURES_H@
+HAVE_FFS = @HAVE_FFS@
+HAVE_FFSL = @HAVE_FFSL@
+HAVE_FFSLL = @HAVE_FFSLL@
+HAVE_FMA = @HAVE_FMA@
+HAVE_FMAF = @HAVE_FMAF@
+HAVE_FMAL = @HAVE_FMAL@
+HAVE_FMODF = @HAVE_FMODF@
+HAVE_FMODL = @HAVE_FMODL@
+HAVE_FREXPF = @HAVE_FREXPF@
+HAVE_FSEEKO = @HAVE_FSEEKO@
+HAVE_FSTATAT = @HAVE_FSTATAT@
+HAVE_FSYNC = @HAVE_FSYNC@
+HAVE_FTELLO = @HAVE_FTELLO@
+HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
+HAVE_FUTIMENS = @HAVE_FUTIMENS@
+HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETGROUPS = @HAVE_GETGROUPS@
+HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
+HAVE_GETLOGIN = @HAVE_GETLOGIN@
+HAVE_GETOPT_H = @HAVE_GETOPT_H@
+HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
+HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
+HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GRANTPT = @HAVE_GRANTPT@
+HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_HYPOTF = @HAVE_HYPOTF@
+HAVE_HYPOTL = @HAVE_HYPOTL@
+HAVE_ILOGB = @HAVE_ILOGB@
+HAVE_ILOGBF = @HAVE_ILOGBF@
+HAVE_ILOGBL = @HAVE_ILOGBL@
+HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
+HAVE_ISNAND = @HAVE_ISNAND@
+HAVE_ISNANF = @HAVE_ISNANF@
+HAVE_ISNANL = @HAVE_ISNANL@
+HAVE_ISWBLANK = @HAVE_ISWBLANK@
+HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
+HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
+HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@
+HAVE_LANGINFO_H = @HAVE_LANGINFO_H@
+HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@
+HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@
+HAVE_LCHMOD = @HAVE_LCHMOD@
+HAVE_LCHOWN = @HAVE_LCHOWN@
+HAVE_LDEXPF = @HAVE_LDEXPF@
+HAVE_LINK = @HAVE_LINK@
+HAVE_LINKAT = @HAVE_LINKAT@
+HAVE_LOG10F = @HAVE_LOG10F@
+HAVE_LOG10L = @HAVE_LOG10L@
+HAVE_LOG1P = @HAVE_LOG1P@
+HAVE_LOG1PF = @HAVE_LOG1PF@
+HAVE_LOG1PL = @HAVE_LOG1PL@
+HAVE_LOGBF = @HAVE_LOGBF@
+HAVE_LOGBL = @HAVE_LOGBL@
+HAVE_LOGF = @HAVE_LOGF@
+HAVE_LOGL = @HAVE_LOGL@
+HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
+HAVE_LSTAT = @HAVE_LSTAT@
+HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
+HAVE_MBRLEN = @HAVE_MBRLEN@
+HAVE_MBRTOWC = @HAVE_MBRTOWC@
+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_MKDIRAT = @HAVE_MKDIRAT@
+HAVE_MKDTEMP = @HAVE_MKDTEMP@
+HAVE_MKFIFO = @HAVE_MKFIFO@
+HAVE_MKFIFOAT = @HAVE_MKFIFOAT@
+HAVE_MKNOD = @HAVE_MKNOD@
+HAVE_MKNODAT = @HAVE_MKNODAT@
+HAVE_MKOSTEMP = @HAVE_MKOSTEMP@
+HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@
+HAVE_MKSTEMP = @HAVE_MKSTEMP@
+HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
+HAVE_MODFF = @HAVE_MODFF@
+HAVE_MODFL = @HAVE_MODFL@
+HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
+HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
+HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
+HAVE_OPENAT = @HAVE_OPENAT@
+HAVE_OPENDIR = @HAVE_OPENDIR@
+HAVE_OS_H = @HAVE_OS_H@
+HAVE_PCLOSE = @HAVE_PCLOSE@
+HAVE_PIPE = @HAVE_PIPE@
+HAVE_PIPE2 = @HAVE_PIPE2@
+HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
+HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
+HAVE_POWF = @HAVE_POWF@
+HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
+HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
+HAVE_PTSNAME = @HAVE_PTSNAME@
+HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
+HAVE_PWRITE = @HAVE_PWRITE@
+HAVE_RAISE = @HAVE_RAISE@
+HAVE_RANDOM = @HAVE_RANDOM@
+HAVE_RANDOM_H = @HAVE_RANDOM_H@
+HAVE_RANDOM_R = @HAVE_RANDOM_R@
+HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@
+HAVE_READDIR = @HAVE_READDIR@
+HAVE_READLINK = @HAVE_READLINK@
+HAVE_READLINKAT = @HAVE_READLINKAT@
+HAVE_REALPATH = @HAVE_REALPATH@
+HAVE_REMAINDER = @HAVE_REMAINDER@
+HAVE_REMAINDERF = @HAVE_REMAINDERF@
+HAVE_RENAMEAT = @HAVE_RENAMEAT@
+HAVE_REWINDDIR = @HAVE_REWINDDIR@
+HAVE_RINT = @HAVE_RINT@
+HAVE_RINTL = @HAVE_RINTL@
+HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = @HAVE_SAME_LONG_DOUBLE_AS_DOUBLE@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
+HAVE_SCANDIR = @HAVE_SCANDIR@
+HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
+HAVE_SETENV = @HAVE_SETENV@
+HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
+HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
+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@
+HAVE_SIGSET_T = @HAVE_SIGSET_T@
+HAVE_SINF = @HAVE_SINF@
+HAVE_SINHF = @HAVE_SINHF@
+HAVE_SINL = @HAVE_SINL@
+HAVE_SLEEP = @HAVE_SLEEP@
+HAVE_SQRTF = @HAVE_SQRTF@
+HAVE_SQRTL = @HAVE_SQRTL@
+HAVE_STDINT_H = @HAVE_STDINT_H@
+HAVE_STPCPY = @HAVE_STPCPY@
+HAVE_STPNCPY = @HAVE_STPNCPY@
+HAVE_STRCASECMP = @HAVE_STRCASECMP@
+HAVE_STRCASESTR = @HAVE_STRCASESTR@
+HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRINGS_H = @HAVE_STRINGS_H@
+HAVE_STRPBRK = @HAVE_STRPBRK@
+HAVE_STRPTIME = @HAVE_STRPTIME@
+HAVE_STRSEP = @HAVE_STRSEP@
+HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLL = @HAVE_STRTOLL@
+HAVE_STRTOULL = @HAVE_STRTOULL@
+HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
+HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
+HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
+HAVE_STRUCT_UTSNAME = @HAVE_STRUCT_UTSNAME@
+HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
+HAVE_SYMLINK = @HAVE_SYMLINK@
+HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
+HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
+HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
+HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
+HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
+HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
+HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
+HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
+HAVE_SYS_UTSNAME_H = @HAVE_SYS_UTSNAME_H@
+HAVE_TANF = @HAVE_TANF@
+HAVE_TANHF = @HAVE_TANHF@
+HAVE_TANL = @HAVE_TANL@
+HAVE_TIMEGM = @HAVE_TIMEGM@
+HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
+HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
+HAVE_UNAME = @HAVE_UNAME@
+HAVE_UNISTD_H = @HAVE_UNISTD_H@
+HAVE_UNLINKAT = @HAVE_UNLINKAT@
+HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
+HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
+HAVE_USLEEP = @HAVE_USLEEP@
+HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
+HAVE_VASPRINTF = @HAVE_VASPRINTF@
+HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_WCHAR_H = @HAVE_WCHAR_H@
+HAVE_WCHAR_T = @HAVE_WCHAR_T@
+HAVE_WCPCPY = @HAVE_WCPCPY@
+HAVE_WCPNCPY = @HAVE_WCPNCPY@
+HAVE_WCRTOMB = @HAVE_WCRTOMB@
+HAVE_WCSCASECMP = @HAVE_WCSCASECMP@
+HAVE_WCSCAT = @HAVE_WCSCAT@
+HAVE_WCSCHR = @HAVE_WCSCHR@
+HAVE_WCSCMP = @HAVE_WCSCMP@
+HAVE_WCSCOLL = @HAVE_WCSCOLL@
+HAVE_WCSCPY = @HAVE_WCSCPY@
+HAVE_WCSCSPN = @HAVE_WCSCSPN@
+HAVE_WCSDUP = @HAVE_WCSDUP@
+HAVE_WCSLEN = @HAVE_WCSLEN@
+HAVE_WCSNCASECMP = @HAVE_WCSNCASECMP@
+HAVE_WCSNCAT = @HAVE_WCSNCAT@
+HAVE_WCSNCMP = @HAVE_WCSNCMP@
+HAVE_WCSNCPY = @HAVE_WCSNCPY@
+HAVE_WCSNLEN = @HAVE_WCSNLEN@
+HAVE_WCSNRTOMBS = @HAVE_WCSNRTOMBS@
+HAVE_WCSPBRK = @HAVE_WCSPBRK@
+HAVE_WCSRCHR = @HAVE_WCSRCHR@
+HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@
+HAVE_WCSSPN = @HAVE_WCSSPN@
+HAVE_WCSSTR = @HAVE_WCSSTR@
+HAVE_WCSTOK = @HAVE_WCSTOK@
+HAVE_WCSWIDTH = @HAVE_WCSWIDTH@
+HAVE_WCSXFRM = @HAVE_WCSXFRM@
+HAVE_WCTRANS_T = @HAVE_WCTRANS_T@
+HAVE_WCTYPE_H = @HAVE_WCTYPE_H@
+HAVE_WCTYPE_T = @HAVE_WCTYPE_T@
+HAVE_WINSOCK2_H = @HAVE_WINSOCK2_H@
+HAVE_WINT_T = @HAVE_WINT_T@
+HAVE_WMEMCHR = @HAVE_WMEMCHR@
+HAVE_WMEMCMP = @HAVE_WMEMCMP@
+HAVE_WMEMCPY = @HAVE_WMEMCPY@
+HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
+HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
+HAVE__BOOL = @HAVE__BOOL@
+HAVE__EXIT = @HAVE__EXIT@
+INCLUDE_NEXT = @INCLUDE_NEXT@
+INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
+INSTALL = @INSTALL@
+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@
+ISFINITE_LIBM = @ISFINITE_LIBM@
+ISINF_LIBM = @ISINF_LIBM@
+LDFLAGS = @LDFLAGS@
+LIBGNULIB_LIBDEPS = @LIBGNULIB_LIBDEPS@
+LIBGNULIB_LTLIBDEPS = @LIBGNULIB_LTLIBDEPS@
+LIBICONV = @LIBICONV@
+LIBINTL = @LIBINTL@
+LIBMULTITHREAD = @LIBMULTITHREAD@
+LIBOBJS = @LIBOBJS@
+LIBPTH = @LIBPTH@
+LIBPTH_PREFIX = @LIBPTH_PREFIX@
+LIBS = @LIBS@
+LIBSOCKET = @LIBSOCKET@
+LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
+LIBTHREAD = @LIBTHREAD@
+LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
+LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_EACCESS = @LIB_EACCESS@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
+LIB_SELINUX = @LIB_SELINUX@
+LN_S = @LN_S@
+LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
+LOCALE_FR = @LOCALE_FR@
+LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
+LOCALE_JA = @LOCALE_JA@
+LOCALE_TR_UTF8 = @LOCALE_TR_UTF8@
+LOCALE_ZH_CN = @LOCALE_ZH_CN@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
+LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
+LTLIBOBJS = @LTLIBOBJS@
+LTLIBPTH = @LTLIBPTH@
+LTLIBTHREAD = @LTLIBTHREAD@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MODF_LIBM = @MODF_LIBM@
+MSGFMT = @MSGFMT@
+MSGFMT_015 = @MSGFMT_015@
+MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
+NEXT_AS_FIRST_DIRECTIVE_DIRENT_H = @NEXT_AS_FIRST_DIRECTIVE_DIRENT_H@
+NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
+NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
+NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
+NEXT_AS_FIRST_DIRECTIVE_GETOPT_H = @NEXT_AS_FIRST_DIRECTIVE_GETOPT_H@
+NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
+NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_MATH_H = @NEXT_AS_FIRST_DIRECTIVE_MATH_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
+NEXT_AS_FIRST_DIRECTIVE_SELINUX_SELINUX_H = @NEXT_AS_FIRST_DIRECTIVE_SELINUX_SELINUX_H@
+NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
+NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_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@
+NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
+NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
+NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@
+NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UTSNAME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UTSNAME_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
+NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
+NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
+NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
+NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
+NEXT_DIRENT_H = @NEXT_DIRENT_H@
+NEXT_ERRNO_H = @NEXT_ERRNO_H@
+NEXT_FCNTL_H = @NEXT_FCNTL_H@
+NEXT_FLOAT_H = @NEXT_FLOAT_H@
+NEXT_GETOPT_H = @NEXT_GETOPT_H@
+NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
+NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
+NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_MATH_H = @NEXT_MATH_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
+NEXT_SELINUX_SELINUX_H = @NEXT_SELINUX_SELINUX_H@
+NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
+NEXT_STDARG_H = @NEXT_STDARG_H@
+NEXT_STDDEF_H = @NEXT_STDDEF_H@
+NEXT_STDINT_H = @NEXT_STDINT_H@
+NEXT_STDIO_H = @NEXT_STDIO_H@
+NEXT_STDLIB_H = @NEXT_STDLIB_H@
+NEXT_STRINGS_H = @NEXT_STRINGS_H@
+NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
+NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
+NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
+NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
+NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
+NEXT_SYS_UTSNAME_H = @NEXT_SYS_UTSNAME_H@
+NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
+NEXT_TIME_H = @NEXT_TIME_H@
+NEXT_UNISTD_H = @NEXT_UNISTD_H@
+NEXT_WCHAR_H = @NEXT_WCHAR_H@
+NEXT_WCTYPE_H = @NEXT_WCTYPE_H@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+POSUB = @POSUB@
+PRAGMA_COLUMNS = @PRAGMA_COLUMNS@
+PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@
+PRIPTR_PREFIX = @PRIPTR_PREFIX@
+PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@
+PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@
+PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+REPLACE_BTOWC = @REPLACE_BTOWC@
+REPLACE_CALLOC = @REPLACE_CALLOC@
+REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@
+REPLACE_CBRTF = @REPLACE_CBRTF@
+REPLACE_CBRTL = @REPLACE_CBRTL@
+REPLACE_CEIL = @REPLACE_CEIL@
+REPLACE_CEILF = @REPLACE_CEILF@
+REPLACE_CEILL = @REPLACE_CEILL@
+REPLACE_CHOWN = @REPLACE_CHOWN@
+REPLACE_CLOSE = @REPLACE_CLOSE@
+REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@
+REPLACE_DIRFD = @REPLACE_DIRFD@
+REPLACE_DPRINTF = @REPLACE_DPRINTF@
+REPLACE_DUP = @REPLACE_DUP@
+REPLACE_DUP2 = @REPLACE_DUP2@
+REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
+REPLACE_EXP2 = @REPLACE_EXP2@
+REPLACE_EXP2L = @REPLACE_EXP2L@
+REPLACE_EXPM1 = @REPLACE_EXPM1@
+REPLACE_EXPM1F = @REPLACE_EXPM1F@
+REPLACE_FABSL = @REPLACE_FABSL@
+REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
+REPLACE_FCLOSE = @REPLACE_FCLOSE@
+REPLACE_FCNTL = @REPLACE_FCNTL@
+REPLACE_FDOPEN = @REPLACE_FDOPEN@
+REPLACE_FDOPENDIR = @REPLACE_FDOPENDIR@
+REPLACE_FFLUSH = @REPLACE_FFLUSH@
+REPLACE_FLOOR = @REPLACE_FLOOR@
+REPLACE_FLOORF = @REPLACE_FLOORF@
+REPLACE_FLOORL = @REPLACE_FLOORL@
+REPLACE_FMA = @REPLACE_FMA@
+REPLACE_FMAF = @REPLACE_FMAF@
+REPLACE_FMAL = @REPLACE_FMAL@
+REPLACE_FMOD = @REPLACE_FMOD@
+REPLACE_FMODF = @REPLACE_FMODF@
+REPLACE_FMODL = @REPLACE_FMODL@
+REPLACE_FOPEN = @REPLACE_FOPEN@
+REPLACE_FPRINTF = @REPLACE_FPRINTF@
+REPLACE_FPURGE = @REPLACE_FPURGE@
+REPLACE_FREOPEN = @REPLACE_FREOPEN@
+REPLACE_FREXP = @REPLACE_FREXP@
+REPLACE_FREXPF = @REPLACE_FREXPF@
+REPLACE_FREXPL = @REPLACE_FREXPL@
+REPLACE_FSEEK = @REPLACE_FSEEK@
+REPLACE_FSEEKO = @REPLACE_FSEEKO@
+REPLACE_FSTAT = @REPLACE_FSTAT@
+REPLACE_FSTATAT = @REPLACE_FSTATAT@
+REPLACE_FTELL = @REPLACE_FTELL@
+REPLACE_FTELLO = @REPLACE_FTELLO@
+REPLACE_FTRUNCATE = @REPLACE_FTRUNCATE@
+REPLACE_FUTIMENS = @REPLACE_FUTIMENS@
+REPLACE_GETCWD = @REPLACE_GETCWD@
+REPLACE_GETDELIM = @REPLACE_GETDELIM@
+REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
+REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
+REPLACE_GETLINE = @REPLACE_GETLINE@
+REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
+REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
+REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_HUGE_VAL = @REPLACE_HUGE_VAL@
+REPLACE_HYPOT = @REPLACE_HYPOT@
+REPLACE_HYPOTF = @REPLACE_HYPOTF@
+REPLACE_HYPOTL = @REPLACE_HYPOTL@
+REPLACE_ILOGB = @REPLACE_ILOGB@
+REPLACE_ILOGBF = @REPLACE_ILOGBF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
+REPLACE_ISATTY = @REPLACE_ISATTY@
+REPLACE_ISFINITE = @REPLACE_ISFINITE@
+REPLACE_ISINF = @REPLACE_ISINF@
+REPLACE_ISNAN = @REPLACE_ISNAN@
+REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
+REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ITOLD = @REPLACE_ITOLD@
+REPLACE_LCHOWN = @REPLACE_LCHOWN@
+REPLACE_LDEXPL = @REPLACE_LDEXPL@
+REPLACE_LINK = @REPLACE_LINK@
+REPLACE_LINKAT = @REPLACE_LINKAT@
+REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
+REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
+REPLACE_LOG = @REPLACE_LOG@
+REPLACE_LOG10 = @REPLACE_LOG10@
+REPLACE_LOG10F = @REPLACE_LOG10F@
+REPLACE_LOG10L = @REPLACE_LOG10L@
+REPLACE_LOG1P = @REPLACE_LOG1P@
+REPLACE_LOG1PF = @REPLACE_LOG1PF@
+REPLACE_LOG1PL = @REPLACE_LOG1PL@
+REPLACE_LOG2 = @REPLACE_LOG2@
+REPLACE_LOG2F = @REPLACE_LOG2F@
+REPLACE_LOG2L = @REPLACE_LOG2L@
+REPLACE_LOGB = @REPLACE_LOGB@
+REPLACE_LOGBF = @REPLACE_LOGBF@
+REPLACE_LOGBL = @REPLACE_LOGBL@
+REPLACE_LOGF = @REPLACE_LOGF@
+REPLACE_LOGL = @REPLACE_LOGL@
+REPLACE_LSEEK = @REPLACE_LSEEK@
+REPLACE_LSTAT = @REPLACE_LSTAT@
+REPLACE_MALLOC = @REPLACE_MALLOC@
+REPLACE_MBRLEN = @REPLACE_MBRLEN@
+REPLACE_MBRTOWC = @REPLACE_MBRTOWC@
+REPLACE_MBSINIT = @REPLACE_MBSINIT@
+REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@
+REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@
+REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@
+REPLACE_MBTOWC = @REPLACE_MBTOWC@
+REPLACE_MEMCHR = @REPLACE_MEMCHR@
+REPLACE_MEMMEM = @REPLACE_MEMMEM@
+REPLACE_MKDIR = @REPLACE_MKDIR@
+REPLACE_MKFIFO = @REPLACE_MKFIFO@
+REPLACE_MKNOD = @REPLACE_MKNOD@
+REPLACE_MKSTEMP = @REPLACE_MKSTEMP@
+REPLACE_MKTIME = @REPLACE_MKTIME@
+REPLACE_MODF = @REPLACE_MODF@
+REPLACE_MODFF = @REPLACE_MODFF@
+REPLACE_MODFL = @REPLACE_MODFL@
+REPLACE_NAN = @REPLACE_NAN@
+REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@
+REPLACE_NL_LANGINFO = @REPLACE_NL_LANGINFO@
+REPLACE_NULL = @REPLACE_NULL@
+REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@
+REPLACE_OPEN = @REPLACE_OPEN@
+REPLACE_OPENAT = @REPLACE_OPENAT@
+REPLACE_OPENDIR = @REPLACE_OPENDIR@
+REPLACE_PERROR = @REPLACE_PERROR@
+REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_PREAD = @REPLACE_PREAD@
+REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
+REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
+REPLACE_PTSNAME = @REPLACE_PTSNAME@
+REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
+REPLACE_PUTENV = @REPLACE_PUTENV@
+REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
+REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
+REPLACE_READ = @REPLACE_READ@
+REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
+REPLACE_REALLOC = @REPLACE_REALLOC@
+REPLACE_REALPATH = @REPLACE_REALPATH@
+REPLACE_REMAINDER = @REPLACE_REMAINDER@
+REPLACE_REMAINDERF = @REPLACE_REMAINDERF@
+REPLACE_REMAINDERL = @REPLACE_REMAINDERL@
+REPLACE_REMOVE = @REPLACE_REMOVE@
+REPLACE_RENAME = @REPLACE_RENAME@
+REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
+REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_ROUND = @REPLACE_ROUND@
+REPLACE_ROUNDF = @REPLACE_ROUNDF@
+REPLACE_ROUNDL = @REPLACE_ROUNDL@
+REPLACE_SELECT = @REPLACE_SELECT@
+REPLACE_SETENV = @REPLACE_SETENV@
+REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SIGNBIT = @REPLACE_SIGNBIT@
+REPLACE_SIGNBIT_USING_GCC = @REPLACE_SIGNBIT_USING_GCC@
+REPLACE_SLEEP = @REPLACE_SLEEP@
+REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
+REPLACE_SPRINTF = @REPLACE_SPRINTF@
+REPLACE_SQRTL = @REPLACE_SQRTL@
+REPLACE_STAT = @REPLACE_STAT@
+REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@
+REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@
+REPLACE_STPNCPY = @REPLACE_STPNCPY@
+REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
+REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
+REPLACE_STRDUP = @REPLACE_STRDUP@
+REPLACE_STRERROR = @REPLACE_STRERROR@
+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_STRTOD = @REPLACE_STRTOD@
+REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
+REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
+REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
+REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
+REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
+REPLACE_TIMEGM = @REPLACE_TIMEGM@
+REPLACE_TMPFILE = @REPLACE_TMPFILE@
+REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
+REPLACE_TRUNC = @REPLACE_TRUNC@
+REPLACE_TRUNCF = @REPLACE_TRUNCF@
+REPLACE_TRUNCL = @REPLACE_TRUNCL@
+REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@
+REPLACE_UNLINK = @REPLACE_UNLINK@
+REPLACE_UNLINKAT = @REPLACE_UNLINKAT@
+REPLACE_UNSETENV = @REPLACE_UNSETENV@
+REPLACE_USLEEP = @REPLACE_USLEEP@
+REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@
+REPLACE_VASPRINTF = @REPLACE_VASPRINTF@
+REPLACE_VDPRINTF = @REPLACE_VDPRINTF@
+REPLACE_VFPRINTF = @REPLACE_VFPRINTF@
+REPLACE_VPRINTF = @REPLACE_VPRINTF@
+REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@
+REPLACE_VSPRINTF = @REPLACE_VSPRINTF@
+REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
+REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
+REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
+REPLACE_WCTOB = @REPLACE_WCTOB@
+REPLACE_WCTOMB = @REPLACE_WCTOMB@
+REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
+REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
+SELINUX_CONTEXT_H = @SELINUX_CONTEXT_H@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
+SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
+SORT = @SORT@
+SORT_SUPPORTS_Z = @SORT_SUPPORTS_Z@
+STDALIGN_H = @STDALIGN_H@
+STDARG_H = @STDARG_H@
+STDBOOL_H = @STDBOOL_H@
+STDDEF_H = @STDDEF_H@
+STDINT_H = @STDINT_H@
+STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
+SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
+TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
+TRUNC_LIBM = @TRUNC_LIBM@
+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@
+UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
+UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+WARN_CFLAGS = @WARN_CFLAGS@
+WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
+WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@
+WINDOWS_64_BIT_ST_SIZE = @WINDOWS_64_BIT_ST_SIZE@
+WINT_T_SUFFIX = @WINT_T_SUFFIX@
+XGETTEXT = @XGETTEXT@
+XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
+YACC = @YACC@
+YFLAGS = @YFLAGS@
+YIELD_LIB = @YIELD_LIB@
+abs_aux_dir = @abs_aux_dir@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+gl_LIBOBJS = @gl_LIBOBJS@
+gl_LTLIBOBJS = @gl_LTLIBOBJS@
+gltests_LIBOBJS = @gltests_LIBOBJS@
+gltests_LTLIBOBJS = @gltests_LTLIBOBJS@
+gltests_WITNESS = @gltests_WITNESS@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+lispdir = @lispdir@
+localedir = $(datadir)/locale
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+AUTOMAKE_OPTIONS = std-options
+AM_CFLAGS = $(WARN_CFLAGS)
+man_MANS = xargs.1
+AM_CPPFLAGS = -I.. -I../gl/lib -I$(top_srcdir)/gl/lib -I$(top_srcdir)/lib -I../intl -DLOCALEDIR=\"$(localedir)\"
+LDADD = ../lib/libfind.a ../gl/lib/libgnulib.a $(LIB_CLOSE) $(LIBINTL)
+EXTRA_DIST = $(man_MANS)
+SUBDIRS = . testsuite
+all: all-recursive
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits xargs/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnits xargs/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed 's/$(EXEEXT)$$//' | \
+ while read p p1; do if test -f $$p \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
+ done | \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
+ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
+ sed 'N;N;N;s,\n, ,g' | \
+ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
+ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+ if ($$2 == $$4) files[d] = files[d] " " $$1; \
+ else { print "f", $$3 "/" $$4, $$1; } } \
+ END { for (d in files) print "f", d, files[d] }' | \
+ while read type dir files; do \
+ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+ test -z "$$files" || { \
+ echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+ $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+ } \
+ ; done
+
+uninstall-binPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ files=`for p in $$list; do echo "$$p"; done | \
+ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
+ test -n "$$list" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(bindir)" && rm -f $$files
+
+clean-binPROGRAMS:
+ -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
+
+installcheck-binPROGRAMS: $(bin_PROGRAMS)
+ bad=0; pid=$$$$; list="$(bin_PROGRAMS)"; for p in $$list; do \
+ case ' $(AM_INSTALLCHECK_STD_OPTIONS_EXEMPT) ' in \
+ *" $$p "* | *" $(srcdir)/$$p "*) continue;; \
+ esac; \
+ f=`echo "$$p" | \
+ sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+ for opt in --help --version; do \
+ if "$(DESTDIR)$(bindir)/$$f" $$opt >c$${pid}_.out \
+ 2>c$${pid}_.err </dev/null \
+ && test -n "`cat c$${pid}_.out`" \
+ && test -z "`cat c$${pid}_.err`"; then :; \
+ else echo "$$f does not support $$opt" 1>&2; bad=1; fi; \
+ done; \
+ done; rm -f c$${pid}_.???; exit $$bad
+
+xargs$(EXEEXT): $(xargs_OBJECTS) $(xargs_DEPENDENCIES) $(EXTRA_xargs_DEPENDENCIES)
+ @rm -f xargs$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(xargs_OBJECTS) $(xargs_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xargs.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+
+.c.obj:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+install-man1: $(man_MANS)
+ @$(NORMAL_INSTALL)
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man1:
+ @$(NORMAL_UNINSTALL)
+ @list=''; test -n "$(man1dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.1[a-z]*$$/p'; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+# (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+ @fail=; \
+ if $(am__make_keepgoing); then \
+ failcom='fail=yes'; \
+ else \
+ failcom='exit 1'; \
+ fi; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ $(am__define_uniq_tagged_files); \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
+check-am: all-am
+check: check-recursive
+all-am: Makefile $(PROGRAMS) $(MANS)
+installdirs: installdirs-recursive
+installdirs-am:
+ for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-binPROGRAMS clean-generic clean-local mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am: install-man
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am: install-binPROGRAMS
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man: install-man1
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am: installcheck-binPROGRAMS
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-binPROGRAMS uninstall-man
+
+uninstall-man: uninstall-man1
+
+.MAKE: $(am__recursive_targets) install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
+ check-am clean clean-binPROGRAMS clean-generic clean-local \
+ cscopelist-am ctags ctags-am dist-hook distclean \
+ distclean-compile distclean-generic distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-binPROGRAMS install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-man1 install-pdf install-pdf-am install-ps \
+ install-ps-am install-strip installcheck installcheck-am \
+ installcheck-binPROGRAMS installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
+ tags tags-am uninstall uninstall-am uninstall-binPROGRAMS \
+ uninstall-man uninstall-man1
+
+
+$(PROGRAMS): ../lib/libfind.a ../gl/lib/libgnulib.a
+
+dist-hook: findutils-check-manpages
+
+findutils-check-manpages:
+ $(top_srcdir)/build-aux/man-lint.sh $(srcdir) $(man_MANS)
+
+# Clean coverage files generated by running binaries built with
+# gcc -fprofile-arcs -ftest-coverage
+coverage-clean:
+ $(RM) *.gcno *.gcda *.gcov *.lcov
+
+clean-local: coverage-clean
+
+# 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.
+.NOEXPORT:
diff --git a/xargs/testsuite/Makefile.am b/xargs/testsuite/Makefile.am
new file mode 100644
index 0000000..a187b9e
--- /dev/null
+++ b/xargs/testsuite/Makefile.am
@@ -0,0 +1,283 @@
+# Copyright (C) 2001, 2002, 2003-2015 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/>.
+
+# The 2001 copyright line above was added in 2015 based on James
+# Youngman's best estimate of the original publication date of this
+# file (it appeared in findutils release 4.1.7 but may have appeared
+# in earlier releases which I don't have copies of).
+
+# Essentially this test verifies that ls -i and find -printf %i produce
+# the same output.
+AUTOMAKE_OPTIONS=dejagnu
+XARGS = ../xargs
+XARGSFLAGS =
+DEJATOOL = xargs
+#EXTRA_DIST = config/*.exp inputs/*.xi xargs.*/*.exp xargs.*/*.xo
+
+EXTRA_DIST_EXP = \
+config/unix.exp \
+xargs.gnu/0n3.exp \
+xargs.gnu/delim-o.exp \
+xargs.gnu/E_-0.exp \
+xargs.gnu/empty_def-r.exp \
+xargs.gnu/empty-r.exp \
+xargs.gnu/idef-0.exp \
+xargs.gnu/idef-s26-0.exp \
+xargs.gnu/l1-0.exp \
+xargs.gnu/l1_2-0.exp \
+xargs.gnu/L2-0.exp \
+xargs.gnu/L2_2-0.exp \
+xargs.gnu/L3-0.exp \
+xargs.gnu/n1-0.exp \
+xargs.gnu/n2-0.exp \
+xargs.gnu/n2-s21-0.exp \
+xargs.gnu/n2-s21-x-0.exp \
+xargs.gnu/n3-0.exp \
+xargs.gnu/n3-s31-0.exp \
+xargs.gnu/noeof-0.exp \
+xargs.gnu/nothing.exp \
+xargs.gnu/P3-n1-IARG.exp \
+xargs.gnu/r.exp \
+xargs.gnu/s118-0.exp \
+xargs.gnu/s14_2-0.exp \
+xargs.gnu/s14-0.exp \
+xargs.gnu/s15-0.exp \
+xargs.gnu/s25-0.exp \
+xargs.gnu/space-0.exp \
+xargs.gnu/space-r.exp \
+xargs.gnu/space-t-0.exp \
+xargs.posix/EEOFb.exp \
+xargs.posix/EEOFe.exp \
+xargs.posix/EEOF.exp \
+xargs.posix/E_.exp \
+xargs.posix/E_-IARG.exp \
+xargs.posix/arg_max_32bit_linux_bug.exp \
+xargs.posix/arg_max_64bit_linux_bug.exp \
+xargs.posix/childfail.exp \
+xargs.posix/empty_def.exp \
+xargs.posix/empty.exp \
+xargs.posix/hithere.exp \
+xargs.posix/IARG-E_.exp \
+xargs.posix/IARG.exp \
+xargs.posix/IARG-s15.exp \
+xargs.posix/L2_2.exp \
+xargs.posix/uc_L2.exp \
+xargs.posix/L2-n2.exp \
+xargs.posix/L3.exp \
+xargs.posix/n1.exp \
+xargs.posix/n2.exp \
+xargs.posix/n2-s21.exp \
+xargs.posix/n2-s21-x.exp \
+xargs.posix/n3.exp \
+xargs.posix/n3-s31.exp \
+xargs.posix/noeof.exp \
+xargs.posix/quotes.exp \
+xargs.posix/rc-123.exp \
+xargs.posix/rc-124.exp \
+xargs.posix/rc-125.exp \
+xargs.posix/rc-126.exp \
+xargs.posix/rc-127.exp \
+xargs.posix/s118.exp \
+xargs.posix/s14.exp \
+xargs.posix/s14_2.exp \
+xargs.posix/s15.exp \
+xargs.posix/s25.exp \
+xargs.posix/s42.exp \
+xargs.posix/s470.exp \
+xargs.posix/s48.exp \
+xargs.posix/s6.exp \
+xargs.posix/savannah-11865.exp \
+xargs.posix/space.exp \
+xargs.posix/space-I.exp \
+xargs.posix/sv-bug-18714.exp \
+xargs.posix/sv-bug-18714b.exp \
+xargs.posix/sv-bug-20273.exp \
+xargs.posix/unmatched2.exp \
+xargs.posix/unmatched.exp \
+xargs.posix/unmatched-n2-x.exp \
+xargs.sysv/eEOF.exp \
+xargs.sysv/e.exp \
+xargs.sysv/empty_def-t.exp \
+xargs.sysv/empty-t.exp \
+xargs.sysv/eof1.exp \
+xargs.sysv/iARG.exp \
+xargs.sysv/idef.exp \
+xargs.sysv/idef-s26.exp \
+xargs.sysv/iquotes.exp \
+xargs.sysv/l1_2.exp \
+xargs.sysv/l1.exp \
+xargs.sysv/l1n4.exp \
+xargs.sysv/lc_l2.exp \
+xargs.sysv/s25-t.exp \
+xargs.sysv/sv-bug-18713.exp \
+xargs.sysv/space-t.exp \
+xargs.sysv/trace.exp
+
+
+
+EXTRA_DIST_XO = \
+xargs.gnu/0n3.xo \
+xargs.gnu/E_-0.xo \
+xargs.gnu/delim-o.xo \
+xargs.gnu/idef-0.xo \
+xargs.gnu/idef-s26-0.xo \
+xargs.gnu/l1-0.xo \
+xargs.gnu/l1_2-0.xo \
+xargs.gnu/L2-0.xo \
+xargs.gnu/L2_2-0.xo \
+xargs.gnu/L3-0.xo \
+xargs.gnu/n1-0.xo \
+xargs.gnu/n2-0.xo \
+xargs.gnu/n2-s21-0.xo \
+xargs.gnu/n2-s21-x-0.xo \
+xargs.gnu/n3-0.xo \
+xargs.gnu/n3-s31-0.xo \
+xargs.gnu/noeof-0.xo \
+xargs.gnu/nothing.xo \
+xargs.gnu/P3-n1-IARG.xo \
+xargs.gnu/r.xo \
+xargs.gnu/s118-0.xo \
+xargs.gnu/s14-0.xo \
+xargs.gnu/s15-0.xo \
+xargs.gnu/s25-0.xo \
+xargs.gnu/space-0.xo \
+xargs.gnu/space-t-0.xo \
+xargs.posix/EEOFb.xo \
+xargs.posix/EEOFe.xo \
+xargs.posix/EEOF.xo \
+xargs.posix/E_-IARG.xo \
+xargs.posix/empty_def.xo \
+xargs.posix/empty.xo \
+xargs.posix/E_.xo \
+xargs.posix/hithere.xo \
+xargs.posix/IARG-E_.xo \
+xargs.posix/IARG-s15.xo \
+xargs.posix/IARG.xo \
+xargs.posix/L2_2.xo \
+xargs.posix/L2-n2.xo \
+xargs.posix/uc_L2.xo \
+xargs.posix/L3.xo \
+xargs.posix/n1.xo \
+xargs.posix/n2-s21.xo \
+xargs.posix/n2-s21-x.xo \
+xargs.posix/n2.xo \
+xargs.posix/n3-s31.xo \
+xargs.posix/n3.xo \
+xargs.posix/noeof.xo \
+xargs.posix/quotes.xo \
+xargs.posix/rc-123.xo \
+xargs.posix/s118.xo \
+xargs.posix/s14.xo \
+xargs.posix/s15.xo \
+xargs.posix/s25.xo \
+xargs.posix/s42.xo \
+xargs.posix/s470.xo \
+xargs.posix/s48.xo \
+xargs.posix/savannah-11865.xo \
+xargs.posix/space.xo \
+xargs.posix/sv-bug-18714.xo \
+xargs.posix/sv-bug-18714b.xo \
+xargs.posix/sv-bug-20273.xo \
+xargs.posix/unmatched2.xo \
+xargs.posix/unmatched.xo \
+xargs.sysv/eEOF.xo \
+xargs.sysv/empty_def-t.xo \
+xargs.sysv/empty-t.xo \
+xargs.sysv/eof1.xo \
+xargs.sysv/e.xo \
+xargs.sysv/iARG.xo \
+xargs.sysv/idef-s26.xo \
+xargs.sysv/idef.xo \
+xargs.sysv/iquotes.xo \
+xargs.sysv/l1_2.xo \
+xargs.sysv/l1n4.xo \
+xargs.sysv/l1.xo \
+xargs.sysv/lc_l2.xo \
+xargs.sysv/s25-t.xo \
+xargs.sysv/sv-bug-18713.xo \
+xargs.sysv/space-t.xo \
+xargs.sysv/trace.xo
+
+
+
+EXTRA_DIST_XE = \
+xargs.gnu/space-t-0.xe \
+xargs.sysv/empty_def-t.xe \
+xargs.sysv/empty-t.xe \
+xargs.sysv/s25-t.xe \
+xargs.sysv/space-t.xe \
+xargs.sysv/trace.xe
+
+
+EXTRA_DIST_XI = \
+inputs/16383-ys.xi \
+inputs/32767-ys.xi \
+inputs/blank.xi \
+inputs/empty.xi \
+inputs/eof_-0.xi \
+inputs/EOFb.xi \
+inputs/EOFe.xi \
+inputs/eofstr.xi \
+inputs/eof_.xi \
+inputs/eof1.xi \
+inputs/EOF.xi \
+inputs/ett.xi \
+inputs/files0.xi \
+inputs/files.xi \
+inputs/foobar.xi \
+inputs/formfeeds.xi \
+inputs/ftt.xi \
+inputs/helloworld.xi \
+inputs/items-0.xi \
+inputs/items.xi \
+inputs/ldata-0.xi \
+inputs/ldatab-0.xi \
+inputs/ldatab.xi \
+inputs/ldata.xi \
+inputs/lines.xi \
+inputs/noeof-0.xi \
+inputs/noeof.xi \
+inputs/Pdata.xi \
+inputs/quotes.xi \
+inputs/space.xi \
+inputs/stairs-0.xi \
+inputs/stairs2-0.xi \
+inputs/stairs2.xi \
+inputs/stairs.xi \
+inputs/stt.xi \
+inputs/sv-bug-20273.xi \
+inputs/unmatched2.xi \
+inputs/unmatched.xi \
+inputs/verticaltabs.xi
+
+
+EXTRA_DIST = $(EXTRA_DIST_EXP) $(EXTRA_DIST_XO) $(EXTRA_DIST_XI) $(EXTRA_DIST_XE)
+
+
+
+# DIST_SUBDIRS = config inputs xargs.gnu xargs.posix xargs.sysv
+
+CLEANFILES = *.log *.sum site.exp site.bak
+
+FORCE:
+
+checklists:
+ cd $(srcdir) && \
+ ( find config inputs xargs.gnu xargs.posix xargs.sysv \( -name "*.exp" -o -name "*.xo" -o -name "*.xi" -o -name "*.xe" \) -print ; \
+ ls $(EXTRA_DIST_XI) ; \
+ ls $(EXTRA_DIST_XE) ; \
+ ls $(EXTRA_DIST_XO) ; \
+ ls $(EXTRA_DIST_EXP) ; ) | \
+ sort | uniq -c | awk '$$1 != 2 { print; }'
diff --git a/xargs/testsuite/Makefile.in b/xargs/testsuite/Makefile.in
new file mode 100644
index 0000000..3c113cf
--- /dev/null
+++ b/xargs/testsuite/Makefile.in
@@ -0,0 +1,2051 @@
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
+# This Makefile.in 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.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# Copyright (C) 2001, 2002, 2003-2015 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/>.
+
+# The 2001 copyright line above was added in 2015 based on James
+# Youngman's best estimate of the original publication date of this
+# file (it appeared in findutils release 4.1.7 but may have appeared
+# in earlier releases which I don't have copies of).
+VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = xargs/testsuite
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/build-aux/mkinstalldirs
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/findlib.m4 \
+ $(top_srcdir)/m4/mkinstalldirs.m4 $(top_srcdir)/m4/noreturn.m4 \
+ $(top_srcdir)/m4/nullsort.m4 $(top_srcdir)/m4/withfts.m4 \
+ $(top_srcdir)/gl/m4/00gnulib.m4 \
+ $(top_srcdir)/gl/m4/absolute-header.m4 \
+ $(top_srcdir)/gl/m4/alloca.m4 \
+ $(top_srcdir)/gl/m4/arpa_inet_h.m4 \
+ $(top_srcdir)/gl/m4/assert.m4 $(top_srcdir)/gl/m4/bison.m4 \
+ $(top_srcdir)/gl/m4/btowc.m4 $(top_srcdir)/gl/m4/byteswap.m4 \
+ $(top_srcdir)/gl/m4/canonicalize.m4 \
+ $(top_srcdir)/gl/m4/chdir-long.m4 \
+ $(top_srcdir)/gl/m4/check-math-lib.m4 \
+ $(top_srcdir)/gl/m4/clock_time.m4 \
+ $(top_srcdir)/gl/m4/close-stream.m4 \
+ $(top_srcdir)/gl/m4/close.m4 $(top_srcdir)/gl/m4/closedir.m4 \
+ $(top_srcdir)/gl/m4/closein.m4 $(top_srcdir)/gl/m4/closeout.m4 \
+ $(top_srcdir)/gl/m4/codeset.m4 \
+ $(top_srcdir)/gl/m4/configmake.m4 $(top_srcdir)/gl/m4/ctype.m4 \
+ $(top_srcdir)/gl/m4/cycle-check.m4 \
+ $(top_srcdir)/gl/m4/d-ino.m4 $(top_srcdir)/gl/m4/d-type.m4 \
+ $(top_srcdir)/gl/m4/dirent-safer.m4 \
+ $(top_srcdir)/gl/m4/dirent_h.m4 $(top_srcdir)/gl/m4/dirfd.m4 \
+ $(top_srcdir)/gl/m4/dirname.m4 \
+ $(top_srcdir)/gl/m4/double-slash-root.m4 \
+ $(top_srcdir)/gl/m4/dup.m4 $(top_srcdir)/gl/m4/dup2.m4 \
+ $(top_srcdir)/gl/m4/eealloc.m4 $(top_srcdir)/gl/m4/environ.m4 \
+ $(top_srcdir)/gl/m4/errno_h.m4 $(top_srcdir)/gl/m4/error.m4 \
+ $(top_srcdir)/gl/m4/euidaccess.m4 \
+ $(top_srcdir)/gl/m4/exponentd.m4 \
+ $(top_srcdir)/gl/m4/exponentf.m4 \
+ $(top_srcdir)/gl/m4/exponentl.m4 \
+ $(top_srcdir)/gl/m4/extensions.m4 \
+ $(top_srcdir)/gl/m4/extern-inline.m4 \
+ $(top_srcdir)/gl/m4/faccessat.m4 $(top_srcdir)/gl/m4/fchdir.m4 \
+ $(top_srcdir)/gl/m4/fcntl-o.m4 \
+ $(top_srcdir)/gl/m4/fcntl-safer.m4 \
+ $(top_srcdir)/gl/m4/fcntl.m4 $(top_srcdir)/gl/m4/fcntl_h.m4 \
+ $(top_srcdir)/gl/m4/fdopen.m4 $(top_srcdir)/gl/m4/fdopendir.m4 \
+ $(top_srcdir)/gl/m4/fflush.m4 \
+ $(top_srcdir)/gl/m4/fileblocks.m4 \
+ $(top_srcdir)/gl/m4/filemode.m4 \
+ $(top_srcdir)/gl/m4/filenamecat.m4 \
+ $(top_srcdir)/gl/m4/flexmember.m4 \
+ $(top_srcdir)/gl/m4/float_h.m4 $(top_srcdir)/gl/m4/fnmatch.m4 \
+ $(top_srcdir)/gl/m4/fopen.m4 $(top_srcdir)/gl/m4/fpending.m4 \
+ $(top_srcdir)/gl/m4/fpieee.m4 $(top_srcdir)/gl/m4/fpurge.m4 \
+ $(top_srcdir)/gl/m4/freadahead.m4 \
+ $(top_srcdir)/gl/m4/freading.m4 $(top_srcdir)/gl/m4/fseek.m4 \
+ $(top_srcdir)/gl/m4/fseeko.m4 $(top_srcdir)/gl/m4/fstat.m4 \
+ $(top_srcdir)/gl/m4/fstatat.m4 \
+ $(top_srcdir)/gl/m4/fstypename.m4 $(top_srcdir)/gl/m4/ftell.m4 \
+ $(top_srcdir)/gl/m4/ftello.m4 $(top_srcdir)/gl/m4/ftruncate.m4 \
+ $(top_srcdir)/gl/m4/fts.m4 \
+ $(top_srcdir)/gl/m4/getcwd-abort-bug.m4 \
+ $(top_srcdir)/gl/m4/getcwd-path-max.m4 \
+ $(top_srcdir)/gl/m4/getcwd.m4 $(top_srcdir)/gl/m4/getdelim.m4 \
+ $(top_srcdir)/gl/m4/getdtablesize.m4 \
+ $(top_srcdir)/gl/m4/getgroups.m4 \
+ $(top_srcdir)/gl/m4/gethostname.m4 \
+ $(top_srcdir)/gl/m4/getline.m4 $(top_srcdir)/gl/m4/getopt.m4 \
+ $(top_srcdir)/gl/m4/getpagesize.m4 \
+ $(top_srcdir)/gl/m4/gettext.m4 $(top_srcdir)/gl/m4/gettime.m4 \
+ $(top_srcdir)/gl/m4/gettimeofday.m4 \
+ $(top_srcdir)/gl/m4/glibc21.m4 \
+ $(top_srcdir)/gl/m4/gnulib-common.m4 \
+ $(top_srcdir)/gl/m4/gnulib-comp.m4 \
+ $(top_srcdir)/gl/m4/group-member.m4 \
+ $(top_srcdir)/gl/m4/human.m4 $(top_srcdir)/gl/m4/i-ring.m4 \
+ $(top_srcdir)/gl/m4/iconv.m4 $(top_srcdir)/gl/m4/idcache.m4 \
+ $(top_srcdir)/gl/m4/include_next.m4 \
+ $(top_srcdir)/gl/m4/inet_pton.m4 $(top_srcdir)/gl/m4/inline.m4 \
+ $(top_srcdir)/gl/m4/intlmacosx.m4 \
+ $(top_srcdir)/gl/m4/intmax_t.m4 \
+ $(top_srcdir)/gl/m4/inttostr.m4 \
+ $(top_srcdir)/gl/m4/inttypes-pri.m4 \
+ $(top_srcdir)/gl/m4/inttypes.m4 \
+ $(top_srcdir)/gl/m4/inttypes_h.m4 $(top_srcdir)/gl/m4/ioctl.m4 \
+ $(top_srcdir)/gl/m4/isblank.m4 $(top_srcdir)/gl/m4/isfinite.m4 \
+ $(top_srcdir)/gl/m4/isinf.m4 $(top_srcdir)/gl/m4/isnand.m4 \
+ $(top_srcdir)/gl/m4/isnanf.m4 $(top_srcdir)/gl/m4/isnanl.m4 \
+ $(top_srcdir)/gl/m4/iswblank.m4 \
+ $(top_srcdir)/gl/m4/langinfo_h.m4 \
+ $(top_srcdir)/gl/m4/largefile.m4 \
+ $(top_srcdir)/gl/m4/lcmessage.m4 $(top_srcdir)/gl/m4/lib-ld.m4 \
+ $(top_srcdir)/gl/m4/lib-link.m4 \
+ $(top_srcdir)/gl/m4/lib-prefix.m4 \
+ $(top_srcdir)/gl/m4/libunistring-base.m4 \
+ $(top_srcdir)/gl/m4/localcharset.m4 \
+ $(top_srcdir)/gl/m4/locale-fr.m4 \
+ $(top_srcdir)/gl/m4/locale-ja.m4 \
+ $(top_srcdir)/gl/m4/locale-tr.m4 \
+ $(top_srcdir)/gl/m4/locale-zh.m4 \
+ $(top_srcdir)/gl/m4/locale_h.m4 \
+ $(top_srcdir)/gl/m4/localeconv.m4 \
+ $(top_srcdir)/gl/m4/localename.m4 $(top_srcdir)/gl/m4/lock.m4 \
+ $(top_srcdir)/gl/m4/longlong.m4 \
+ $(top_srcdir)/gl/m4/ls-mntd-fs.m4 $(top_srcdir)/gl/m4/lseek.m4 \
+ $(top_srcdir)/gl/m4/lstat.m4 $(top_srcdir)/gl/m4/malloc.m4 \
+ $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
+ $(top_srcdir)/gl/m4/math_h.m4 $(top_srcdir)/gl/m4/mathfunc.m4 \
+ $(top_srcdir)/gl/m4/mbchar.m4 $(top_srcdir)/gl/m4/mbiter.m4 \
+ $(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
+ $(top_srcdir)/gl/m4/mbslen.m4 $(top_srcdir)/gl/m4/mbsrtowcs.m4 \
+ $(top_srcdir)/gl/m4/mbstate_t.m4 \
+ $(top_srcdir)/gl/m4/mbswidth.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
+ $(top_srcdir)/gl/m4/memchr.m4 $(top_srcdir)/gl/m4/mempcpy.m4 \
+ $(top_srcdir)/gl/m4/memrchr.m4 $(top_srcdir)/gl/m4/mktime.m4 \
+ $(top_srcdir)/gl/m4/mmap-anon.m4 $(top_srcdir)/gl/m4/mode_t.m4 \
+ $(top_srcdir)/gl/m4/modechange.m4 $(top_srcdir)/gl/m4/modf.m4 \
+ $(top_srcdir)/gl/m4/mountlist.m4 \
+ $(top_srcdir)/gl/m4/msvc-inval.m4 \
+ $(top_srcdir)/gl/m4/msvc-nothrow.m4 \
+ $(top_srcdir)/gl/m4/multiarch.m4 \
+ $(top_srcdir)/gl/m4/nanosleep.m4 \
+ $(top_srcdir)/gl/m4/netinet_in_h.m4 \
+ $(top_srcdir)/gl/m4/nl_langinfo.m4 $(top_srcdir)/gl/m4/nls.m4 \
+ $(top_srcdir)/gl/m4/nocrash.m4 $(top_srcdir)/gl/m4/off_t.m4 \
+ $(top_srcdir)/gl/m4/onceonly.m4 $(top_srcdir)/gl/m4/open.m4 \
+ $(top_srcdir)/gl/m4/openat.m4 $(top_srcdir)/gl/m4/opendir.m4 \
+ $(top_srcdir)/gl/m4/parse-datetime.m4 \
+ $(top_srcdir)/gl/m4/pathmax.m4 $(top_srcdir)/gl/m4/perror.m4 \
+ $(top_srcdir)/gl/m4/pipe.m4 $(top_srcdir)/gl/m4/po.m4 \
+ $(top_srcdir)/gl/m4/printf.m4 $(top_srcdir)/gl/m4/priv-set.m4 \
+ $(top_srcdir)/gl/m4/progtest.m4 $(top_srcdir)/gl/m4/putenv.m4 \
+ $(top_srcdir)/gl/m4/quote.m4 $(top_srcdir)/gl/m4/quotearg.m4 \
+ $(top_srcdir)/gl/m4/raise.m4 $(top_srcdir)/gl/m4/read.m4 \
+ $(top_srcdir)/gl/m4/readdir.m4 $(top_srcdir)/gl/m4/readlink.m4 \
+ $(top_srcdir)/gl/m4/readlinkat.m4 \
+ $(top_srcdir)/gl/m4/realloc.m4 $(top_srcdir)/gl/m4/regex.m4 \
+ $(top_srcdir)/gl/m4/rewinddir.m4 $(top_srcdir)/gl/m4/rmdir.m4 \
+ $(top_srcdir)/gl/m4/rpmatch.m4 \
+ $(top_srcdir)/gl/m4/safe-read.m4 $(top_srcdir)/gl/m4/same.m4 \
+ $(top_srcdir)/gl/m4/save-cwd.m4 $(top_srcdir)/gl/m4/savedir.m4 \
+ $(top_srcdir)/gl/m4/select.m4 \
+ $(top_srcdir)/gl/m4/selinux-context-h.m4 \
+ $(top_srcdir)/gl/m4/selinux-selinux-h.m4 \
+ $(top_srcdir)/gl/m4/setenv.m4 $(top_srcdir)/gl/m4/setlocale.m4 \
+ $(top_srcdir)/gl/m4/sigaction.m4 \
+ $(top_srcdir)/gl/m4/signal_h.m4 \
+ $(top_srcdir)/gl/m4/signalblocking.m4 \
+ $(top_srcdir)/gl/m4/size_max.m4 $(top_srcdir)/gl/m4/sleep.m4 \
+ $(top_srcdir)/gl/m4/snprintf.m4 \
+ $(top_srcdir)/gl/m4/socketlib.m4 \
+ $(top_srcdir)/gl/m4/sockets.m4 $(top_srcdir)/gl/m4/socklen.m4 \
+ $(top_srcdir)/gl/m4/sockpfaf.m4 $(top_srcdir)/gl/m4/ssize_t.m4 \
+ $(top_srcdir)/gl/m4/st_dm_mode.m4 \
+ $(top_srcdir)/gl/m4/stat-size.m4 \
+ $(top_srcdir)/gl/m4/stat-time.m4 $(top_srcdir)/gl/m4/stat.m4 \
+ $(top_srcdir)/gl/m4/stdalign.m4 $(top_srcdir)/gl/m4/stdarg.m4 \
+ $(top_srcdir)/gl/m4/stdbool.m4 $(top_srcdir)/gl/m4/stddef_h.m4 \
+ $(top_srcdir)/gl/m4/stdint.m4 $(top_srcdir)/gl/m4/stdint_h.m4 \
+ $(top_srcdir)/gl/m4/stdio_h.m4 $(top_srcdir)/gl/m4/stdlib_h.m4 \
+ $(top_srcdir)/gl/m4/stpcpy.m4 $(top_srcdir)/gl/m4/strcase.m4 \
+ $(top_srcdir)/gl/m4/strcasestr.m4 \
+ $(top_srcdir)/gl/m4/strdup.m4 $(top_srcdir)/gl/m4/strerror.m4 \
+ $(top_srcdir)/gl/m4/strerror_r.m4 \
+ $(top_srcdir)/gl/m4/strftime.m4 \
+ $(top_srcdir)/gl/m4/string_h.m4 \
+ $(top_srcdir)/gl/m4/strings_h.m4 \
+ $(top_srcdir)/gl/m4/strndup.m4 $(top_srcdir)/gl/m4/strnlen.m4 \
+ $(top_srcdir)/gl/m4/strstr.m4 $(top_srcdir)/gl/m4/strtoull.m4 \
+ $(top_srcdir)/gl/m4/strtoumax.m4 \
+ $(top_srcdir)/gl/m4/symlink.m4 \
+ $(top_srcdir)/gl/m4/symlinkat.m4 \
+ $(top_srcdir)/gl/m4/sys_ioctl_h.m4 \
+ $(top_srcdir)/gl/m4/sys_select_h.m4 \
+ $(top_srcdir)/gl/m4/sys_socket_h.m4 \
+ $(top_srcdir)/gl/m4/sys_stat_h.m4 \
+ $(top_srcdir)/gl/m4/sys_time_h.m4 \
+ $(top_srcdir)/gl/m4/sys_types_h.m4 \
+ $(top_srcdir)/gl/m4/sys_uio_h.m4 \
+ $(top_srcdir)/gl/m4/sys_utsname_h.m4 \
+ $(top_srcdir)/gl/m4/sys_wait_h.m4 \
+ $(top_srcdir)/gl/m4/thread.m4 $(top_srcdir)/gl/m4/threadlib.m4 \
+ $(top_srcdir)/gl/m4/time_h.m4 $(top_srcdir)/gl/m4/time_r.m4 \
+ $(top_srcdir)/gl/m4/time_rz.m4 $(top_srcdir)/gl/m4/timegm.m4 \
+ $(top_srcdir)/gl/m4/timespec.m4 \
+ $(top_srcdir)/gl/m4/tm_gmtoff.m4 $(top_srcdir)/gl/m4/trunc.m4 \
+ $(top_srcdir)/gl/m4/uname.m4 $(top_srcdir)/gl/m4/ungetc.m4 \
+ $(top_srcdir)/gl/m4/unistd-safer.m4 \
+ $(top_srcdir)/gl/m4/unistd_h.m4 $(top_srcdir)/gl/m4/unlink.m4 \
+ $(top_srcdir)/gl/m4/unlinkat.m4 \
+ $(top_srcdir)/gl/m4/unlinkdir.m4 \
+ $(top_srcdir)/gl/m4/vasnprintf.m4 \
+ $(top_srcdir)/gl/m4/version-etc.m4 \
+ $(top_srcdir)/gl/m4/warn-on-use.m4 \
+ $(top_srcdir)/gl/m4/warnings.m4 $(top_srcdir)/gl/m4/wchar_h.m4 \
+ $(top_srcdir)/gl/m4/wchar_t.m4 $(top_srcdir)/gl/m4/wcrtomb.m4 \
+ $(top_srcdir)/gl/m4/wctob.m4 $(top_srcdir)/gl/m4/wctomb.m4 \
+ $(top_srcdir)/gl/m4/wctype_h.m4 $(top_srcdir)/gl/m4/wcwidth.m4 \
+ $(top_srcdir)/gl/m4/wint_t.m4 $(top_srcdir)/gl/m4/xalloc.m4 \
+ $(top_srcdir)/gl/m4/xgetcwd.m4 $(top_srcdir)/gl/m4/xsize.m4 \
+ $(top_srcdir)/gl/m4/xstrndup.m4 $(top_srcdir)/gl/m4/xstrtod.m4 \
+ $(top_srcdir)/gl/m4/xstrtol.m4 $(top_srcdir)/gl/m4/yesno.m4 \
+ $(top_srcdir)/gl/m4/yield.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/build-aux/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir
+EXPECT = expect
+RUNTEST = runtest
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+pkglibexecdir = @pkglibexecdir@
+ACLOCAL = @ACLOCAL@
+ALLOCA = @ALLOCA@
+ALLOCA_H = @ALLOCA_H@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@
+AR = @AR@
+ARFLAGS = @ARFLAGS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AUXDIR = @AUXDIR@
+AWK = @AWK@
+BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@
+BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@
+BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@
+BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@
+BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@
+BYTESWAP_H = @BYTESWAP_H@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIG_INCLUDE = @CONFIG_INCLUDE@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFAULT_ARG_SIZE = @DEFAULT_ARG_SIZE@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@
+EMULTIHOP_VALUE = @EMULTIHOP_VALUE@
+ENOLINK_HIDDEN = @ENOLINK_HIDDEN@
+ENOLINK_VALUE = @ENOLINK_VALUE@
+EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@
+EOVERFLOW_VALUE = @EOVERFLOW_VALUE@
+ERRNO_H = @ERRNO_H@
+EXEEXT = @EXEEXT@
+FAKETIME = @FAKETIME@
+FINDLIBOBJS = @FINDLIBOBJS@
+FINDLIBS = @FINDLIBS@
+FLOAT_H = @FLOAT_H@
+FNMATCH_H = @FNMATCH_H@
+GETHOSTNAME_LIB = @GETHOSTNAME_LIB@
+GETOPT_H = @GETOPT_H@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
+GLIBC21 = @GLIBC21@
+GMSGFMT = @GMSGFMT@
+GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACOSF = @GNULIB_ACOSF@
+GNULIB_ACOSL = @GNULIB_ACOSL@
+GNULIB_ALPHASORT = @GNULIB_ALPHASORT@
+GNULIB_ASINF = @GNULIB_ASINF@
+GNULIB_ASINL = @GNULIB_ASINL@
+GNULIB_ATAN2F = @GNULIB_ATAN2F@
+GNULIB_ATANF = @GNULIB_ATANF@
+GNULIB_ATANL = @GNULIB_ATANL@
+GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
+GNULIB_BTOWC = @GNULIB_BTOWC@
+GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
+GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
+GNULIB_CBRT = @GNULIB_CBRT@
+GNULIB_CBRTF = @GNULIB_CBRTF@
+GNULIB_CBRTL = @GNULIB_CBRTL@
+GNULIB_CEIL = @GNULIB_CEIL@
+GNULIB_CEILF = @GNULIB_CEILF@
+GNULIB_CEILL = @GNULIB_CEILL@
+GNULIB_CHDIR = @GNULIB_CHDIR@
+GNULIB_CHOWN = @GNULIB_CHOWN@
+GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
+GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPYSIGN = @GNULIB_COPYSIGN@
+GNULIB_COPYSIGNF = @GNULIB_COPYSIGNF@
+GNULIB_COPYSIGNL = @GNULIB_COPYSIGNL@
+GNULIB_COSF = @GNULIB_COSF@
+GNULIB_COSHF = @GNULIB_COSHF@
+GNULIB_COSL = @GNULIB_COSL@
+GNULIB_DIRFD = @GNULIB_DIRFD@
+GNULIB_DPRINTF = @GNULIB_DPRINTF@
+GNULIB_DUP = @GNULIB_DUP@
+GNULIB_DUP2 = @GNULIB_DUP2@
+GNULIB_DUP3 = @GNULIB_DUP3@
+GNULIB_DUPLOCALE = @GNULIB_DUPLOCALE@
+GNULIB_ENVIRON = @GNULIB_ENVIRON@
+GNULIB_EUIDACCESS = @GNULIB_EUIDACCESS@
+GNULIB_EXP2 = @GNULIB_EXP2@
+GNULIB_EXP2F = @GNULIB_EXP2F@
+GNULIB_EXP2L = @GNULIB_EXP2L@
+GNULIB_EXPF = @GNULIB_EXPF@
+GNULIB_EXPL = @GNULIB_EXPL@
+GNULIB_EXPM1 = @GNULIB_EXPM1@
+GNULIB_EXPM1F = @GNULIB_EXPM1F@
+GNULIB_EXPM1L = @GNULIB_EXPM1L@
+GNULIB_FABSF = @GNULIB_FABSF@
+GNULIB_FABSL = @GNULIB_FABSL@
+GNULIB_FACCESSAT = @GNULIB_FACCESSAT@
+GNULIB_FCHDIR = @GNULIB_FCHDIR@
+GNULIB_FCHMODAT = @GNULIB_FCHMODAT@
+GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@
+GNULIB_FCLOSE = @GNULIB_FCLOSE@
+GNULIB_FCNTL = @GNULIB_FCNTL@
+GNULIB_FDATASYNC = @GNULIB_FDATASYNC@
+GNULIB_FDOPEN = @GNULIB_FDOPEN@
+GNULIB_FDOPENDIR = @GNULIB_FDOPENDIR@
+GNULIB_FFLUSH = @GNULIB_FFLUSH@
+GNULIB_FFS = @GNULIB_FFS@
+GNULIB_FFSL = @GNULIB_FFSL@
+GNULIB_FFSLL = @GNULIB_FFSLL@
+GNULIB_FGETC = @GNULIB_FGETC@
+GNULIB_FGETS = @GNULIB_FGETS@
+GNULIB_FLOOR = @GNULIB_FLOOR@
+GNULIB_FLOORF = @GNULIB_FLOORF@
+GNULIB_FLOORL = @GNULIB_FLOORL@
+GNULIB_FMA = @GNULIB_FMA@
+GNULIB_FMAF = @GNULIB_FMAF@
+GNULIB_FMAL = @GNULIB_FMAL@
+GNULIB_FMOD = @GNULIB_FMOD@
+GNULIB_FMODF = @GNULIB_FMODF@
+GNULIB_FMODL = @GNULIB_FMODL@
+GNULIB_FOPEN = @GNULIB_FOPEN@
+GNULIB_FPRINTF = @GNULIB_FPRINTF@
+GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@
+GNULIB_FPURGE = @GNULIB_FPURGE@
+GNULIB_FPUTC = @GNULIB_FPUTC@
+GNULIB_FPUTS = @GNULIB_FPUTS@
+GNULIB_FREAD = @GNULIB_FREAD@
+GNULIB_FREOPEN = @GNULIB_FREOPEN@
+GNULIB_FREXP = @GNULIB_FREXP@
+GNULIB_FREXPF = @GNULIB_FREXPF@
+GNULIB_FREXPL = @GNULIB_FREXPL@
+GNULIB_FSCANF = @GNULIB_FSCANF@
+GNULIB_FSEEK = @GNULIB_FSEEK@
+GNULIB_FSEEKO = @GNULIB_FSEEKO@
+GNULIB_FSTAT = @GNULIB_FSTAT@
+GNULIB_FSTATAT = @GNULIB_FSTATAT@
+GNULIB_FSYNC = @GNULIB_FSYNC@
+GNULIB_FTELL = @GNULIB_FTELL@
+GNULIB_FTELLO = @GNULIB_FTELLO@
+GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@
+GNULIB_FUTIMENS = @GNULIB_FUTIMENS@
+GNULIB_FWRITE = @GNULIB_FWRITE@
+GNULIB_GETC = @GNULIB_GETC@
+GNULIB_GETCHAR = @GNULIB_GETCHAR@
+GNULIB_GETCWD = @GNULIB_GETCWD@
+GNULIB_GETDELIM = @GNULIB_GETDELIM@
+GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
+GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
+GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
+GNULIB_GETLINE = @GNULIB_GETLINE@
+GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
+GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
+GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
+GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
+GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
+GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
+GNULIB_GRANTPT = @GNULIB_GRANTPT@
+GNULIB_GROUP_MEMBER = @GNULIB_GROUP_MEMBER@
+GNULIB_HYPOT = @GNULIB_HYPOT@
+GNULIB_HYPOTF = @GNULIB_HYPOTF@
+GNULIB_HYPOTL = @GNULIB_HYPOTL@
+GNULIB_ILOGB = @GNULIB_ILOGB@
+GNULIB_ILOGBF = @GNULIB_ILOGBF@
+GNULIB_ILOGBL = @GNULIB_ILOGBL@
+GNULIB_IMAXABS = @GNULIB_IMAXABS@
+GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
+GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
+GNULIB_ISFINITE = @GNULIB_ISFINITE@
+GNULIB_ISINF = @GNULIB_ISINF@
+GNULIB_ISNAN = @GNULIB_ISNAN@
+GNULIB_ISNAND = @GNULIB_ISNAND@
+GNULIB_ISNANF = @GNULIB_ISNANF@
+GNULIB_ISNANL = @GNULIB_ISNANL@
+GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
+GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_LCHMOD = @GNULIB_LCHMOD@
+GNULIB_LCHOWN = @GNULIB_LCHOWN@
+GNULIB_LDEXPF = @GNULIB_LDEXPF@
+GNULIB_LDEXPL = @GNULIB_LDEXPL@
+GNULIB_LINK = @GNULIB_LINK@
+GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
+GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
+GNULIB_LOG = @GNULIB_LOG@
+GNULIB_LOG10 = @GNULIB_LOG10@
+GNULIB_LOG10F = @GNULIB_LOG10F@
+GNULIB_LOG10L = @GNULIB_LOG10L@
+GNULIB_LOG1P = @GNULIB_LOG1P@
+GNULIB_LOG1PF = @GNULIB_LOG1PF@
+GNULIB_LOG1PL = @GNULIB_LOG1PL@
+GNULIB_LOG2 = @GNULIB_LOG2@
+GNULIB_LOG2F = @GNULIB_LOG2F@
+GNULIB_LOG2L = @GNULIB_LOG2L@
+GNULIB_LOGB = @GNULIB_LOGB@
+GNULIB_LOGBF = @GNULIB_LOGBF@
+GNULIB_LOGBL = @GNULIB_LOGBL@
+GNULIB_LOGF = @GNULIB_LOGF@
+GNULIB_LOGL = @GNULIB_LOGL@
+GNULIB_LSEEK = @GNULIB_LSEEK@
+GNULIB_LSTAT = @GNULIB_LSTAT@
+GNULIB_MALLOC_POSIX = @GNULIB_MALLOC_POSIX@
+GNULIB_MBRLEN = @GNULIB_MBRLEN@
+GNULIB_MBRTOWC = @GNULIB_MBRTOWC@
+GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@
+GNULIB_MBSCASESTR = @GNULIB_MBSCASESTR@
+GNULIB_MBSCHR = @GNULIB_MBSCHR@
+GNULIB_MBSCSPN = @GNULIB_MBSCSPN@
+GNULIB_MBSINIT = @GNULIB_MBSINIT@
+GNULIB_MBSLEN = @GNULIB_MBSLEN@
+GNULIB_MBSNCASECMP = @GNULIB_MBSNCASECMP@
+GNULIB_MBSNLEN = @GNULIB_MBSNLEN@
+GNULIB_MBSNRTOWCS = @GNULIB_MBSNRTOWCS@
+GNULIB_MBSPBRK = @GNULIB_MBSPBRK@
+GNULIB_MBSPCASECMP = @GNULIB_MBSPCASECMP@
+GNULIB_MBSRCHR = @GNULIB_MBSRCHR@
+GNULIB_MBSRTOWCS = @GNULIB_MBSRTOWCS@
+GNULIB_MBSSEP = @GNULIB_MBSSEP@
+GNULIB_MBSSPN = @GNULIB_MBSSPN@
+GNULIB_MBSSTR = @GNULIB_MBSSTR@
+GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@
+GNULIB_MBTOWC = @GNULIB_MBTOWC@
+GNULIB_MEMCHR = @GNULIB_MEMCHR@
+GNULIB_MEMMEM = @GNULIB_MEMMEM@
+GNULIB_MEMPCPY = @GNULIB_MEMPCPY@
+GNULIB_MEMRCHR = @GNULIB_MEMRCHR@
+GNULIB_MKDIRAT = @GNULIB_MKDIRAT@
+GNULIB_MKDTEMP = @GNULIB_MKDTEMP@
+GNULIB_MKFIFO = @GNULIB_MKFIFO@
+GNULIB_MKFIFOAT = @GNULIB_MKFIFOAT@
+GNULIB_MKNOD = @GNULIB_MKNOD@
+GNULIB_MKNODAT = @GNULIB_MKNODAT@
+GNULIB_MKOSTEMP = @GNULIB_MKOSTEMP@
+GNULIB_MKOSTEMPS = @GNULIB_MKOSTEMPS@
+GNULIB_MKSTEMP = @GNULIB_MKSTEMP@
+GNULIB_MKSTEMPS = @GNULIB_MKSTEMPS@
+GNULIB_MKTIME = @GNULIB_MKTIME@
+GNULIB_MODF = @GNULIB_MODF@
+GNULIB_MODFF = @GNULIB_MODFF@
+GNULIB_MODFL = @GNULIB_MODFL@
+GNULIB_NANOSLEEP = @GNULIB_NANOSLEEP@
+GNULIB_NL_LANGINFO = @GNULIB_NL_LANGINFO@
+GNULIB_NONBLOCKING = @GNULIB_NONBLOCKING@
+GNULIB_OBSTACK_PRINTF = @GNULIB_OBSTACK_PRINTF@
+GNULIB_OBSTACK_PRINTF_POSIX = @GNULIB_OBSTACK_PRINTF_POSIX@
+GNULIB_OPEN = @GNULIB_OPEN@
+GNULIB_OPENAT = @GNULIB_OPENAT@
+GNULIB_OPENDIR = @GNULIB_OPENDIR@
+GNULIB_PCLOSE = @GNULIB_PCLOSE@
+GNULIB_PERROR = @GNULIB_PERROR@
+GNULIB_PIPE = @GNULIB_PIPE@
+GNULIB_PIPE2 = @GNULIB_PIPE2@
+GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
+GNULIB_POWF = @GNULIB_POWF@
+GNULIB_PREAD = @GNULIB_PREAD@
+GNULIB_PRINTF = @GNULIB_PRINTF@
+GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
+GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
+GNULIB_PTSNAME = @GNULIB_PTSNAME@
+GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
+GNULIB_PUTC = @GNULIB_PUTC@
+GNULIB_PUTCHAR = @GNULIB_PUTCHAR@
+GNULIB_PUTENV = @GNULIB_PUTENV@
+GNULIB_PUTS = @GNULIB_PUTS@
+GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
+GNULIB_RAISE = @GNULIB_RAISE@
+GNULIB_RANDOM = @GNULIB_RANDOM@
+GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
+GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@
+GNULIB_READ = @GNULIB_READ@
+GNULIB_READDIR = @GNULIB_READDIR@
+GNULIB_READLINK = @GNULIB_READLINK@
+GNULIB_READLINKAT = @GNULIB_READLINKAT@
+GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
+GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
+GNULIB_REMAINDER = @GNULIB_REMAINDER@
+GNULIB_REMAINDERF = @GNULIB_REMAINDERF@
+GNULIB_REMAINDERL = @GNULIB_REMAINDERL@
+GNULIB_REMOVE = @GNULIB_REMOVE@
+GNULIB_RENAME = @GNULIB_RENAME@
+GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
+GNULIB_REWINDDIR = @GNULIB_REWINDDIR@
+GNULIB_RINT = @GNULIB_RINT@
+GNULIB_RINTF = @GNULIB_RINTF@
+GNULIB_RINTL = @GNULIB_RINTL@
+GNULIB_RMDIR = @GNULIB_RMDIR@
+GNULIB_ROUND = @GNULIB_ROUND@
+GNULIB_ROUNDF = @GNULIB_ROUNDF@
+GNULIB_ROUNDL = @GNULIB_ROUNDL@
+GNULIB_RPMATCH = @GNULIB_RPMATCH@
+GNULIB_SCANDIR = @GNULIB_SCANDIR@
+GNULIB_SCANF = @GNULIB_SCANF@
+GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
+GNULIB_SETENV = @GNULIB_SETENV@
+GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
+GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
+GNULIB_SIGNBIT = @GNULIB_SIGNBIT@
+GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
+GNULIB_SINF = @GNULIB_SINF@
+GNULIB_SINHF = @GNULIB_SINHF@
+GNULIB_SINL = @GNULIB_SINL@
+GNULIB_SLEEP = @GNULIB_SLEEP@
+GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
+GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
+GNULIB_SQRTF = @GNULIB_SQRTF@
+GNULIB_SQRTL = @GNULIB_SQRTL@
+GNULIB_STAT = @GNULIB_STAT@
+GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
+GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@
+GNULIB_STPCPY = @GNULIB_STPCPY@
+GNULIB_STPNCPY = @GNULIB_STPNCPY@
+GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
+GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
+GNULIB_STRDUP = @GNULIB_STRDUP@
+GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
+GNULIB_STRNCAT = @GNULIB_STRNCAT@
+GNULIB_STRNDUP = @GNULIB_STRNDUP@
+GNULIB_STRNLEN = @GNULIB_STRNLEN@
+GNULIB_STRPBRK = @GNULIB_STRPBRK@
+GNULIB_STRPTIME = @GNULIB_STRPTIME@
+GNULIB_STRSEP = @GNULIB_STRSEP@
+GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
+GNULIB_STRSTR = @GNULIB_STRSTR@
+GNULIB_STRTOD = @GNULIB_STRTOD@
+GNULIB_STRTOIMAX = @GNULIB_STRTOIMAX@
+GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLL = @GNULIB_STRTOLL@
+GNULIB_STRTOULL = @GNULIB_STRTOULL@
+GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@
+GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
+GNULIB_SYMLINK = @GNULIB_SYMLINK@
+GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@
+GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
+GNULIB_TANF = @GNULIB_TANF@
+GNULIB_TANHF = @GNULIB_TANHF@
+GNULIB_TANL = @GNULIB_TANL@
+GNULIB_TIMEGM = @GNULIB_TIMEGM@
+GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
+GNULIB_TMPFILE = @GNULIB_TMPFILE@
+GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
+GNULIB_TRUNC = @GNULIB_TRUNC@
+GNULIB_TRUNCF = @GNULIB_TRUNCF@
+GNULIB_TRUNCL = @GNULIB_TRUNCL@
+GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
+GNULIB_UNAME = @GNULIB_UNAME@
+GNULIB_UNISTD_H_NONBLOCKING = @GNULIB_UNISTD_H_NONBLOCKING@
+GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@
+GNULIB_UNLINK = @GNULIB_UNLINK@
+GNULIB_UNLINKAT = @GNULIB_UNLINKAT@
+GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@
+GNULIB_UNSETENV = @GNULIB_UNSETENV@
+GNULIB_USLEEP = @GNULIB_USLEEP@
+GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@
+GNULIB_VASPRINTF = @GNULIB_VASPRINTF@
+GNULIB_VDPRINTF = @GNULIB_VDPRINTF@
+GNULIB_VFPRINTF = @GNULIB_VFPRINTF@
+GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@
+GNULIB_VFSCANF = @GNULIB_VFSCANF@
+GNULIB_VPRINTF = @GNULIB_VPRINTF@
+GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@
+GNULIB_VSCANF = @GNULIB_VSCANF@
+GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@
+GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@
+GNULIB_WAITPID = @GNULIB_WAITPID@
+GNULIB_WCPCPY = @GNULIB_WCPCPY@
+GNULIB_WCPNCPY = @GNULIB_WCPNCPY@
+GNULIB_WCRTOMB = @GNULIB_WCRTOMB@
+GNULIB_WCSCASECMP = @GNULIB_WCSCASECMP@
+GNULIB_WCSCAT = @GNULIB_WCSCAT@
+GNULIB_WCSCHR = @GNULIB_WCSCHR@
+GNULIB_WCSCMP = @GNULIB_WCSCMP@
+GNULIB_WCSCOLL = @GNULIB_WCSCOLL@
+GNULIB_WCSCPY = @GNULIB_WCSCPY@
+GNULIB_WCSCSPN = @GNULIB_WCSCSPN@
+GNULIB_WCSDUP = @GNULIB_WCSDUP@
+GNULIB_WCSLEN = @GNULIB_WCSLEN@
+GNULIB_WCSNCASECMP = @GNULIB_WCSNCASECMP@
+GNULIB_WCSNCAT = @GNULIB_WCSNCAT@
+GNULIB_WCSNCMP = @GNULIB_WCSNCMP@
+GNULIB_WCSNCPY = @GNULIB_WCSNCPY@
+GNULIB_WCSNLEN = @GNULIB_WCSNLEN@
+GNULIB_WCSNRTOMBS = @GNULIB_WCSNRTOMBS@
+GNULIB_WCSPBRK = @GNULIB_WCSPBRK@
+GNULIB_WCSRCHR = @GNULIB_WCSRCHR@
+GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@
+GNULIB_WCSSPN = @GNULIB_WCSSPN@
+GNULIB_WCSSTR = @GNULIB_WCSSTR@
+GNULIB_WCSTOK = @GNULIB_WCSTOK@
+GNULIB_WCSWIDTH = @GNULIB_WCSWIDTH@
+GNULIB_WCSXFRM = @GNULIB_WCSXFRM@
+GNULIB_WCTOB = @GNULIB_WCTOB@
+GNULIB_WCTOMB = @GNULIB_WCTOMB@
+GNULIB_WCTRANS = @GNULIB_WCTRANS@
+GNULIB_WCTYPE = @GNULIB_WCTYPE@
+GNULIB_WCWIDTH = @GNULIB_WCWIDTH@
+GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
+GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
+GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
+GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMSET = @GNULIB_WMEMSET@
+GNULIB_WRITE = @GNULIB_WRITE@
+GNULIB__EXIT = @GNULIB__EXIT@
+GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ACOSF = @HAVE_ACOSF@
+HAVE_ACOSL = @HAVE_ACOSL@
+HAVE_ALPHASORT = @HAVE_ALPHASORT@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
+HAVE_ASINF = @HAVE_ASINF@
+HAVE_ASINL = @HAVE_ASINL@
+HAVE_ATAN2F = @HAVE_ATAN2F@
+HAVE_ATANF = @HAVE_ATANF@
+HAVE_ATANL = @HAVE_ATANL@
+HAVE_ATOLL = @HAVE_ATOLL@
+HAVE_ATTRIBUTE_NORETURN = @HAVE_ATTRIBUTE_NORETURN@
+HAVE_BTOWC = @HAVE_BTOWC@
+HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
+HAVE_CBRT = @HAVE_CBRT@
+HAVE_CBRTF = @HAVE_CBRTF@
+HAVE_CBRTL = @HAVE_CBRTL@
+HAVE_CHOWN = @HAVE_CHOWN@
+HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPYSIGN = @HAVE_COPYSIGN@
+HAVE_COPYSIGNL = @HAVE_COPYSIGNL@
+HAVE_COSF = @HAVE_COSF@
+HAVE_COSHF = @HAVE_COSHF@
+HAVE_COSL = @HAVE_COSL@
+HAVE_DECL_ACOSL = @HAVE_DECL_ACOSL@
+HAVE_DECL_ASINL = @HAVE_DECL_ASINL@
+HAVE_DECL_ATANL = @HAVE_DECL_ATANL@
+HAVE_DECL_CBRTF = @HAVE_DECL_CBRTF@
+HAVE_DECL_CBRTL = @HAVE_DECL_CBRTL@
+HAVE_DECL_CEILF = @HAVE_DECL_CEILF@
+HAVE_DECL_CEILL = @HAVE_DECL_CEILL@
+HAVE_DECL_COPYSIGNF = @HAVE_DECL_COPYSIGNF@
+HAVE_DECL_COSL = @HAVE_DECL_COSL@
+HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
+HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXP2 = @HAVE_DECL_EXP2@
+HAVE_DECL_EXP2F = @HAVE_DECL_EXP2F@
+HAVE_DECL_EXP2L = @HAVE_DECL_EXP2L@
+HAVE_DECL_EXPL = @HAVE_DECL_EXPL@
+HAVE_DECL_EXPM1L = @HAVE_DECL_EXPM1L@
+HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
+HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@
+HAVE_DECL_FLOORF = @HAVE_DECL_FLOORF@
+HAVE_DECL_FLOORL = @HAVE_DECL_FLOORL@
+HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
+HAVE_DECL_FREXPL = @HAVE_DECL_FREXPL@
+HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
+HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
+HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
+HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
+HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@
+HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@
+HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@
+HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
+HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
+HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
+HAVE_DECL_LDEXPL = @HAVE_DECL_LDEXPL@
+HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
+HAVE_DECL_LOG10L = @HAVE_DECL_LOG10L@
+HAVE_DECL_LOG2 = @HAVE_DECL_LOG2@
+HAVE_DECL_LOG2F = @HAVE_DECL_LOG2F@
+HAVE_DECL_LOG2L = @HAVE_DECL_LOG2L@
+HAVE_DECL_LOGB = @HAVE_DECL_LOGB@
+HAVE_DECL_LOGL = @HAVE_DECL_LOGL@
+HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
+HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
+HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@
+HAVE_DECL_REMAINDER = @HAVE_DECL_REMAINDER@
+HAVE_DECL_REMAINDERL = @HAVE_DECL_REMAINDERL@
+HAVE_DECL_RINTF = @HAVE_DECL_RINTF@
+HAVE_DECL_ROUND = @HAVE_DECL_ROUND@
+HAVE_DECL_ROUNDF = @HAVE_DECL_ROUNDF@
+HAVE_DECL_ROUNDL = @HAVE_DECL_ROUNDL@
+HAVE_DECL_SETENV = @HAVE_DECL_SETENV@
+HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@
+HAVE_DECL_SINL = @HAVE_DECL_SINL@
+HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@
+HAVE_DECL_SQRTL = @HAVE_DECL_SQRTL@
+HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@
+HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@
+HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@
+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_TANL = @HAVE_DECL_TANL@
+HAVE_DECL_TRUNC = @HAVE_DECL_TRUNC@
+HAVE_DECL_TRUNCF = @HAVE_DECL_TRUNCF@
+HAVE_DECL_TRUNCL = @HAVE_DECL_TRUNCL@
+HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
+HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
+HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
+HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
+HAVE_DIRENT_H = @HAVE_DIRENT_H@
+HAVE_DPRINTF = @HAVE_DPRINTF@
+HAVE_DUP2 = @HAVE_DUP2@
+HAVE_DUP3 = @HAVE_DUP3@
+HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
+HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
+HAVE_EXPF = @HAVE_EXPF@
+HAVE_EXPL = @HAVE_EXPL@
+HAVE_EXPM1 = @HAVE_EXPM1@
+HAVE_EXPM1F = @HAVE_EXPM1F@
+HAVE_FABSF = @HAVE_FABSF@
+HAVE_FABSL = @HAVE_FABSL@
+HAVE_FACCESSAT = @HAVE_FACCESSAT@
+HAVE_FCHDIR = @HAVE_FCHDIR@
+HAVE_FCHMODAT = @HAVE_FCHMODAT@
+HAVE_FCHOWNAT = @HAVE_FCHOWNAT@
+HAVE_FCNTL = @HAVE_FCNTL@
+HAVE_FDATASYNC = @HAVE_FDATASYNC@
+HAVE_FDOPENDIR = @HAVE_FDOPENDIR@
+HAVE_FEATURES_H = @HAVE_FEATURES_H@
+HAVE_FFS = @HAVE_FFS@
+HAVE_FFSL = @HAVE_FFSL@
+HAVE_FFSLL = @HAVE_FFSLL@
+HAVE_FMA = @HAVE_FMA@
+HAVE_FMAF = @HAVE_FMAF@
+HAVE_FMAL = @HAVE_FMAL@
+HAVE_FMODF = @HAVE_FMODF@
+HAVE_FMODL = @HAVE_FMODL@
+HAVE_FREXPF = @HAVE_FREXPF@
+HAVE_FSEEKO = @HAVE_FSEEKO@
+HAVE_FSTATAT = @HAVE_FSTATAT@
+HAVE_FSYNC = @HAVE_FSYNC@
+HAVE_FTELLO = @HAVE_FTELLO@
+HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
+HAVE_FUTIMENS = @HAVE_FUTIMENS@
+HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETGROUPS = @HAVE_GETGROUPS@
+HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
+HAVE_GETLOGIN = @HAVE_GETLOGIN@
+HAVE_GETOPT_H = @HAVE_GETOPT_H@
+HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
+HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
+HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GRANTPT = @HAVE_GRANTPT@
+HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_HYPOTF = @HAVE_HYPOTF@
+HAVE_HYPOTL = @HAVE_HYPOTL@
+HAVE_ILOGB = @HAVE_ILOGB@
+HAVE_ILOGBF = @HAVE_ILOGBF@
+HAVE_ILOGBL = @HAVE_ILOGBL@
+HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
+HAVE_ISNAND = @HAVE_ISNAND@
+HAVE_ISNANF = @HAVE_ISNANF@
+HAVE_ISNANL = @HAVE_ISNANL@
+HAVE_ISWBLANK = @HAVE_ISWBLANK@
+HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
+HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
+HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@
+HAVE_LANGINFO_H = @HAVE_LANGINFO_H@
+HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@
+HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@
+HAVE_LCHMOD = @HAVE_LCHMOD@
+HAVE_LCHOWN = @HAVE_LCHOWN@
+HAVE_LDEXPF = @HAVE_LDEXPF@
+HAVE_LINK = @HAVE_LINK@
+HAVE_LINKAT = @HAVE_LINKAT@
+HAVE_LOG10F = @HAVE_LOG10F@
+HAVE_LOG10L = @HAVE_LOG10L@
+HAVE_LOG1P = @HAVE_LOG1P@
+HAVE_LOG1PF = @HAVE_LOG1PF@
+HAVE_LOG1PL = @HAVE_LOG1PL@
+HAVE_LOGBF = @HAVE_LOGBF@
+HAVE_LOGBL = @HAVE_LOGBL@
+HAVE_LOGF = @HAVE_LOGF@
+HAVE_LOGL = @HAVE_LOGL@
+HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
+HAVE_LSTAT = @HAVE_LSTAT@
+HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
+HAVE_MBRLEN = @HAVE_MBRLEN@
+HAVE_MBRTOWC = @HAVE_MBRTOWC@
+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_MKDIRAT = @HAVE_MKDIRAT@
+HAVE_MKDTEMP = @HAVE_MKDTEMP@
+HAVE_MKFIFO = @HAVE_MKFIFO@
+HAVE_MKFIFOAT = @HAVE_MKFIFOAT@
+HAVE_MKNOD = @HAVE_MKNOD@
+HAVE_MKNODAT = @HAVE_MKNODAT@
+HAVE_MKOSTEMP = @HAVE_MKOSTEMP@
+HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@
+HAVE_MKSTEMP = @HAVE_MKSTEMP@
+HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
+HAVE_MODFF = @HAVE_MODFF@
+HAVE_MODFL = @HAVE_MODFL@
+HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
+HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
+HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
+HAVE_OPENAT = @HAVE_OPENAT@
+HAVE_OPENDIR = @HAVE_OPENDIR@
+HAVE_OS_H = @HAVE_OS_H@
+HAVE_PCLOSE = @HAVE_PCLOSE@
+HAVE_PIPE = @HAVE_PIPE@
+HAVE_PIPE2 = @HAVE_PIPE2@
+HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
+HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
+HAVE_POWF = @HAVE_POWF@
+HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
+HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
+HAVE_PTSNAME = @HAVE_PTSNAME@
+HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
+HAVE_PWRITE = @HAVE_PWRITE@
+HAVE_RAISE = @HAVE_RAISE@
+HAVE_RANDOM = @HAVE_RANDOM@
+HAVE_RANDOM_H = @HAVE_RANDOM_H@
+HAVE_RANDOM_R = @HAVE_RANDOM_R@
+HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@
+HAVE_READDIR = @HAVE_READDIR@
+HAVE_READLINK = @HAVE_READLINK@
+HAVE_READLINKAT = @HAVE_READLINKAT@
+HAVE_REALPATH = @HAVE_REALPATH@
+HAVE_REMAINDER = @HAVE_REMAINDER@
+HAVE_REMAINDERF = @HAVE_REMAINDERF@
+HAVE_RENAMEAT = @HAVE_RENAMEAT@
+HAVE_REWINDDIR = @HAVE_REWINDDIR@
+HAVE_RINT = @HAVE_RINT@
+HAVE_RINTL = @HAVE_RINTL@
+HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = @HAVE_SAME_LONG_DOUBLE_AS_DOUBLE@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
+HAVE_SCANDIR = @HAVE_SCANDIR@
+HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
+HAVE_SETENV = @HAVE_SETENV@
+HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
+HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
+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@
+HAVE_SIGSET_T = @HAVE_SIGSET_T@
+HAVE_SINF = @HAVE_SINF@
+HAVE_SINHF = @HAVE_SINHF@
+HAVE_SINL = @HAVE_SINL@
+HAVE_SLEEP = @HAVE_SLEEP@
+HAVE_SQRTF = @HAVE_SQRTF@
+HAVE_SQRTL = @HAVE_SQRTL@
+HAVE_STDINT_H = @HAVE_STDINT_H@
+HAVE_STPCPY = @HAVE_STPCPY@
+HAVE_STPNCPY = @HAVE_STPNCPY@
+HAVE_STRCASECMP = @HAVE_STRCASECMP@
+HAVE_STRCASESTR = @HAVE_STRCASESTR@
+HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRINGS_H = @HAVE_STRINGS_H@
+HAVE_STRPBRK = @HAVE_STRPBRK@
+HAVE_STRPTIME = @HAVE_STRPTIME@
+HAVE_STRSEP = @HAVE_STRSEP@
+HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLL = @HAVE_STRTOLL@
+HAVE_STRTOULL = @HAVE_STRTOULL@
+HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
+HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
+HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
+HAVE_STRUCT_UTSNAME = @HAVE_STRUCT_UTSNAME@
+HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
+HAVE_SYMLINK = @HAVE_SYMLINK@
+HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
+HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
+HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
+HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
+HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
+HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
+HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
+HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
+HAVE_SYS_UTSNAME_H = @HAVE_SYS_UTSNAME_H@
+HAVE_TANF = @HAVE_TANF@
+HAVE_TANHF = @HAVE_TANHF@
+HAVE_TANL = @HAVE_TANL@
+HAVE_TIMEGM = @HAVE_TIMEGM@
+HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
+HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
+HAVE_UNAME = @HAVE_UNAME@
+HAVE_UNISTD_H = @HAVE_UNISTD_H@
+HAVE_UNLINKAT = @HAVE_UNLINKAT@
+HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
+HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
+HAVE_USLEEP = @HAVE_USLEEP@
+HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
+HAVE_VASPRINTF = @HAVE_VASPRINTF@
+HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_WCHAR_H = @HAVE_WCHAR_H@
+HAVE_WCHAR_T = @HAVE_WCHAR_T@
+HAVE_WCPCPY = @HAVE_WCPCPY@
+HAVE_WCPNCPY = @HAVE_WCPNCPY@
+HAVE_WCRTOMB = @HAVE_WCRTOMB@
+HAVE_WCSCASECMP = @HAVE_WCSCASECMP@
+HAVE_WCSCAT = @HAVE_WCSCAT@
+HAVE_WCSCHR = @HAVE_WCSCHR@
+HAVE_WCSCMP = @HAVE_WCSCMP@
+HAVE_WCSCOLL = @HAVE_WCSCOLL@
+HAVE_WCSCPY = @HAVE_WCSCPY@
+HAVE_WCSCSPN = @HAVE_WCSCSPN@
+HAVE_WCSDUP = @HAVE_WCSDUP@
+HAVE_WCSLEN = @HAVE_WCSLEN@
+HAVE_WCSNCASECMP = @HAVE_WCSNCASECMP@
+HAVE_WCSNCAT = @HAVE_WCSNCAT@
+HAVE_WCSNCMP = @HAVE_WCSNCMP@
+HAVE_WCSNCPY = @HAVE_WCSNCPY@
+HAVE_WCSNLEN = @HAVE_WCSNLEN@
+HAVE_WCSNRTOMBS = @HAVE_WCSNRTOMBS@
+HAVE_WCSPBRK = @HAVE_WCSPBRK@
+HAVE_WCSRCHR = @HAVE_WCSRCHR@
+HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@
+HAVE_WCSSPN = @HAVE_WCSSPN@
+HAVE_WCSSTR = @HAVE_WCSSTR@
+HAVE_WCSTOK = @HAVE_WCSTOK@
+HAVE_WCSWIDTH = @HAVE_WCSWIDTH@
+HAVE_WCSXFRM = @HAVE_WCSXFRM@
+HAVE_WCTRANS_T = @HAVE_WCTRANS_T@
+HAVE_WCTYPE_H = @HAVE_WCTYPE_H@
+HAVE_WCTYPE_T = @HAVE_WCTYPE_T@
+HAVE_WINSOCK2_H = @HAVE_WINSOCK2_H@
+HAVE_WINT_T = @HAVE_WINT_T@
+HAVE_WMEMCHR = @HAVE_WMEMCHR@
+HAVE_WMEMCMP = @HAVE_WMEMCMP@
+HAVE_WMEMCPY = @HAVE_WMEMCPY@
+HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
+HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
+HAVE__BOOL = @HAVE__BOOL@
+HAVE__EXIT = @HAVE__EXIT@
+INCLUDE_NEXT = @INCLUDE_NEXT@
+INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
+INSTALL = @INSTALL@
+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@
+ISFINITE_LIBM = @ISFINITE_LIBM@
+ISINF_LIBM = @ISINF_LIBM@
+LDFLAGS = @LDFLAGS@
+LIBGNULIB_LIBDEPS = @LIBGNULIB_LIBDEPS@
+LIBGNULIB_LTLIBDEPS = @LIBGNULIB_LTLIBDEPS@
+LIBICONV = @LIBICONV@
+LIBINTL = @LIBINTL@
+LIBMULTITHREAD = @LIBMULTITHREAD@
+LIBOBJS = @LIBOBJS@
+LIBPTH = @LIBPTH@
+LIBPTH_PREFIX = @LIBPTH_PREFIX@
+LIBS = @LIBS@
+LIBSOCKET = @LIBSOCKET@
+LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
+LIBTHREAD = @LIBTHREAD@
+LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
+LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_EACCESS = @LIB_EACCESS@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
+LIB_SELINUX = @LIB_SELINUX@
+LN_S = @LN_S@
+LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
+LOCALE_FR = @LOCALE_FR@
+LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
+LOCALE_JA = @LOCALE_JA@
+LOCALE_TR_UTF8 = @LOCALE_TR_UTF8@
+LOCALE_ZH_CN = @LOCALE_ZH_CN@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
+LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
+LTLIBOBJS = @LTLIBOBJS@
+LTLIBPTH = @LTLIBPTH@
+LTLIBTHREAD = @LTLIBTHREAD@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MODF_LIBM = @MODF_LIBM@
+MSGFMT = @MSGFMT@
+MSGFMT_015 = @MSGFMT_015@
+MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
+NEXT_AS_FIRST_DIRECTIVE_DIRENT_H = @NEXT_AS_FIRST_DIRECTIVE_DIRENT_H@
+NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
+NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
+NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
+NEXT_AS_FIRST_DIRECTIVE_GETOPT_H = @NEXT_AS_FIRST_DIRECTIVE_GETOPT_H@
+NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
+NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_MATH_H = @NEXT_AS_FIRST_DIRECTIVE_MATH_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
+NEXT_AS_FIRST_DIRECTIVE_SELINUX_SELINUX_H = @NEXT_AS_FIRST_DIRECTIVE_SELINUX_SELINUX_H@
+NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
+NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_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@
+NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
+NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
+NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@
+NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UTSNAME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UTSNAME_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
+NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
+NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
+NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
+NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
+NEXT_DIRENT_H = @NEXT_DIRENT_H@
+NEXT_ERRNO_H = @NEXT_ERRNO_H@
+NEXT_FCNTL_H = @NEXT_FCNTL_H@
+NEXT_FLOAT_H = @NEXT_FLOAT_H@
+NEXT_GETOPT_H = @NEXT_GETOPT_H@
+NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
+NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
+NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_MATH_H = @NEXT_MATH_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
+NEXT_SELINUX_SELINUX_H = @NEXT_SELINUX_SELINUX_H@
+NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
+NEXT_STDARG_H = @NEXT_STDARG_H@
+NEXT_STDDEF_H = @NEXT_STDDEF_H@
+NEXT_STDINT_H = @NEXT_STDINT_H@
+NEXT_STDIO_H = @NEXT_STDIO_H@
+NEXT_STDLIB_H = @NEXT_STDLIB_H@
+NEXT_STRINGS_H = @NEXT_STRINGS_H@
+NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
+NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
+NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
+NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
+NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
+NEXT_SYS_UTSNAME_H = @NEXT_SYS_UTSNAME_H@
+NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
+NEXT_TIME_H = @NEXT_TIME_H@
+NEXT_UNISTD_H = @NEXT_UNISTD_H@
+NEXT_WCHAR_H = @NEXT_WCHAR_H@
+NEXT_WCTYPE_H = @NEXT_WCTYPE_H@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+POSUB = @POSUB@
+PRAGMA_COLUMNS = @PRAGMA_COLUMNS@
+PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@
+PRIPTR_PREFIX = @PRIPTR_PREFIX@
+PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@
+PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@
+PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+REPLACE_BTOWC = @REPLACE_BTOWC@
+REPLACE_CALLOC = @REPLACE_CALLOC@
+REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@
+REPLACE_CBRTF = @REPLACE_CBRTF@
+REPLACE_CBRTL = @REPLACE_CBRTL@
+REPLACE_CEIL = @REPLACE_CEIL@
+REPLACE_CEILF = @REPLACE_CEILF@
+REPLACE_CEILL = @REPLACE_CEILL@
+REPLACE_CHOWN = @REPLACE_CHOWN@
+REPLACE_CLOSE = @REPLACE_CLOSE@
+REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@
+REPLACE_DIRFD = @REPLACE_DIRFD@
+REPLACE_DPRINTF = @REPLACE_DPRINTF@
+REPLACE_DUP = @REPLACE_DUP@
+REPLACE_DUP2 = @REPLACE_DUP2@
+REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
+REPLACE_EXP2 = @REPLACE_EXP2@
+REPLACE_EXP2L = @REPLACE_EXP2L@
+REPLACE_EXPM1 = @REPLACE_EXPM1@
+REPLACE_EXPM1F = @REPLACE_EXPM1F@
+REPLACE_FABSL = @REPLACE_FABSL@
+REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
+REPLACE_FCLOSE = @REPLACE_FCLOSE@
+REPLACE_FCNTL = @REPLACE_FCNTL@
+REPLACE_FDOPEN = @REPLACE_FDOPEN@
+REPLACE_FDOPENDIR = @REPLACE_FDOPENDIR@
+REPLACE_FFLUSH = @REPLACE_FFLUSH@
+REPLACE_FLOOR = @REPLACE_FLOOR@
+REPLACE_FLOORF = @REPLACE_FLOORF@
+REPLACE_FLOORL = @REPLACE_FLOORL@
+REPLACE_FMA = @REPLACE_FMA@
+REPLACE_FMAF = @REPLACE_FMAF@
+REPLACE_FMAL = @REPLACE_FMAL@
+REPLACE_FMOD = @REPLACE_FMOD@
+REPLACE_FMODF = @REPLACE_FMODF@
+REPLACE_FMODL = @REPLACE_FMODL@
+REPLACE_FOPEN = @REPLACE_FOPEN@
+REPLACE_FPRINTF = @REPLACE_FPRINTF@
+REPLACE_FPURGE = @REPLACE_FPURGE@
+REPLACE_FREOPEN = @REPLACE_FREOPEN@
+REPLACE_FREXP = @REPLACE_FREXP@
+REPLACE_FREXPF = @REPLACE_FREXPF@
+REPLACE_FREXPL = @REPLACE_FREXPL@
+REPLACE_FSEEK = @REPLACE_FSEEK@
+REPLACE_FSEEKO = @REPLACE_FSEEKO@
+REPLACE_FSTAT = @REPLACE_FSTAT@
+REPLACE_FSTATAT = @REPLACE_FSTATAT@
+REPLACE_FTELL = @REPLACE_FTELL@
+REPLACE_FTELLO = @REPLACE_FTELLO@
+REPLACE_FTRUNCATE = @REPLACE_FTRUNCATE@
+REPLACE_FUTIMENS = @REPLACE_FUTIMENS@
+REPLACE_GETCWD = @REPLACE_GETCWD@
+REPLACE_GETDELIM = @REPLACE_GETDELIM@
+REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
+REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
+REPLACE_GETLINE = @REPLACE_GETLINE@
+REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
+REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
+REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_HUGE_VAL = @REPLACE_HUGE_VAL@
+REPLACE_HYPOT = @REPLACE_HYPOT@
+REPLACE_HYPOTF = @REPLACE_HYPOTF@
+REPLACE_HYPOTL = @REPLACE_HYPOTL@
+REPLACE_ILOGB = @REPLACE_ILOGB@
+REPLACE_ILOGBF = @REPLACE_ILOGBF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
+REPLACE_ISATTY = @REPLACE_ISATTY@
+REPLACE_ISFINITE = @REPLACE_ISFINITE@
+REPLACE_ISINF = @REPLACE_ISINF@
+REPLACE_ISNAN = @REPLACE_ISNAN@
+REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
+REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ITOLD = @REPLACE_ITOLD@
+REPLACE_LCHOWN = @REPLACE_LCHOWN@
+REPLACE_LDEXPL = @REPLACE_LDEXPL@
+REPLACE_LINK = @REPLACE_LINK@
+REPLACE_LINKAT = @REPLACE_LINKAT@
+REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
+REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
+REPLACE_LOG = @REPLACE_LOG@
+REPLACE_LOG10 = @REPLACE_LOG10@
+REPLACE_LOG10F = @REPLACE_LOG10F@
+REPLACE_LOG10L = @REPLACE_LOG10L@
+REPLACE_LOG1P = @REPLACE_LOG1P@
+REPLACE_LOG1PF = @REPLACE_LOG1PF@
+REPLACE_LOG1PL = @REPLACE_LOG1PL@
+REPLACE_LOG2 = @REPLACE_LOG2@
+REPLACE_LOG2F = @REPLACE_LOG2F@
+REPLACE_LOG2L = @REPLACE_LOG2L@
+REPLACE_LOGB = @REPLACE_LOGB@
+REPLACE_LOGBF = @REPLACE_LOGBF@
+REPLACE_LOGBL = @REPLACE_LOGBL@
+REPLACE_LOGF = @REPLACE_LOGF@
+REPLACE_LOGL = @REPLACE_LOGL@
+REPLACE_LSEEK = @REPLACE_LSEEK@
+REPLACE_LSTAT = @REPLACE_LSTAT@
+REPLACE_MALLOC = @REPLACE_MALLOC@
+REPLACE_MBRLEN = @REPLACE_MBRLEN@
+REPLACE_MBRTOWC = @REPLACE_MBRTOWC@
+REPLACE_MBSINIT = @REPLACE_MBSINIT@
+REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@
+REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@
+REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@
+REPLACE_MBTOWC = @REPLACE_MBTOWC@
+REPLACE_MEMCHR = @REPLACE_MEMCHR@
+REPLACE_MEMMEM = @REPLACE_MEMMEM@
+REPLACE_MKDIR = @REPLACE_MKDIR@
+REPLACE_MKFIFO = @REPLACE_MKFIFO@
+REPLACE_MKNOD = @REPLACE_MKNOD@
+REPLACE_MKSTEMP = @REPLACE_MKSTEMP@
+REPLACE_MKTIME = @REPLACE_MKTIME@
+REPLACE_MODF = @REPLACE_MODF@
+REPLACE_MODFF = @REPLACE_MODFF@
+REPLACE_MODFL = @REPLACE_MODFL@
+REPLACE_NAN = @REPLACE_NAN@
+REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@
+REPLACE_NL_LANGINFO = @REPLACE_NL_LANGINFO@
+REPLACE_NULL = @REPLACE_NULL@
+REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@
+REPLACE_OPEN = @REPLACE_OPEN@
+REPLACE_OPENAT = @REPLACE_OPENAT@
+REPLACE_OPENDIR = @REPLACE_OPENDIR@
+REPLACE_PERROR = @REPLACE_PERROR@
+REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_PREAD = @REPLACE_PREAD@
+REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
+REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
+REPLACE_PTSNAME = @REPLACE_PTSNAME@
+REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
+REPLACE_PUTENV = @REPLACE_PUTENV@
+REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
+REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
+REPLACE_READ = @REPLACE_READ@
+REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
+REPLACE_REALLOC = @REPLACE_REALLOC@
+REPLACE_REALPATH = @REPLACE_REALPATH@
+REPLACE_REMAINDER = @REPLACE_REMAINDER@
+REPLACE_REMAINDERF = @REPLACE_REMAINDERF@
+REPLACE_REMAINDERL = @REPLACE_REMAINDERL@
+REPLACE_REMOVE = @REPLACE_REMOVE@
+REPLACE_RENAME = @REPLACE_RENAME@
+REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
+REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_ROUND = @REPLACE_ROUND@
+REPLACE_ROUNDF = @REPLACE_ROUNDF@
+REPLACE_ROUNDL = @REPLACE_ROUNDL@
+REPLACE_SELECT = @REPLACE_SELECT@
+REPLACE_SETENV = @REPLACE_SETENV@
+REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SIGNBIT = @REPLACE_SIGNBIT@
+REPLACE_SIGNBIT_USING_GCC = @REPLACE_SIGNBIT_USING_GCC@
+REPLACE_SLEEP = @REPLACE_SLEEP@
+REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
+REPLACE_SPRINTF = @REPLACE_SPRINTF@
+REPLACE_SQRTL = @REPLACE_SQRTL@
+REPLACE_STAT = @REPLACE_STAT@
+REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@
+REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@
+REPLACE_STPNCPY = @REPLACE_STPNCPY@
+REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
+REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
+REPLACE_STRDUP = @REPLACE_STRDUP@
+REPLACE_STRERROR = @REPLACE_STRERROR@
+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_STRTOD = @REPLACE_STRTOD@
+REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
+REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
+REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
+REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
+REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
+REPLACE_TIMEGM = @REPLACE_TIMEGM@
+REPLACE_TMPFILE = @REPLACE_TMPFILE@
+REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
+REPLACE_TRUNC = @REPLACE_TRUNC@
+REPLACE_TRUNCF = @REPLACE_TRUNCF@
+REPLACE_TRUNCL = @REPLACE_TRUNCL@
+REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@
+REPLACE_UNLINK = @REPLACE_UNLINK@
+REPLACE_UNLINKAT = @REPLACE_UNLINKAT@
+REPLACE_UNSETENV = @REPLACE_UNSETENV@
+REPLACE_USLEEP = @REPLACE_USLEEP@
+REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@
+REPLACE_VASPRINTF = @REPLACE_VASPRINTF@
+REPLACE_VDPRINTF = @REPLACE_VDPRINTF@
+REPLACE_VFPRINTF = @REPLACE_VFPRINTF@
+REPLACE_VPRINTF = @REPLACE_VPRINTF@
+REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@
+REPLACE_VSPRINTF = @REPLACE_VSPRINTF@
+REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
+REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
+REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
+REPLACE_WCTOB = @REPLACE_WCTOB@
+REPLACE_WCTOMB = @REPLACE_WCTOMB@
+REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
+REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
+SELINUX_CONTEXT_H = @SELINUX_CONTEXT_H@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
+SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
+SORT = @SORT@
+SORT_SUPPORTS_Z = @SORT_SUPPORTS_Z@
+STDALIGN_H = @STDALIGN_H@
+STDARG_H = @STDARG_H@
+STDBOOL_H = @STDBOOL_H@
+STDDEF_H = @STDDEF_H@
+STDINT_H = @STDINT_H@
+STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
+SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
+TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
+TRUNC_LIBM = @TRUNC_LIBM@
+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@
+UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
+UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+WARN_CFLAGS = @WARN_CFLAGS@
+WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
+WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@
+WINDOWS_64_BIT_ST_SIZE = @WINDOWS_64_BIT_ST_SIZE@
+WINT_T_SUFFIX = @WINT_T_SUFFIX@
+XGETTEXT = @XGETTEXT@
+XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
+YACC = @YACC@
+YFLAGS = @YFLAGS@
+YIELD_LIB = @YIELD_LIB@
+abs_aux_dir = @abs_aux_dir@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+gl_LIBOBJS = @gl_LIBOBJS@
+gl_LTLIBOBJS = @gl_LTLIBOBJS@
+gltests_LIBOBJS = @gltests_LIBOBJS@
+gltests_LTLIBOBJS = @gltests_LTLIBOBJS@
+gltests_WITNESS = @gltests_WITNESS@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+lispdir = @lispdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+
+# Essentially this test verifies that ls -i and find -printf %i produce
+# the same output.
+AUTOMAKE_OPTIONS = dejagnu
+XARGS = ../xargs
+XARGSFLAGS =
+DEJATOOL = xargs
+#EXTRA_DIST = config/*.exp inputs/*.xi xargs.*/*.exp xargs.*/*.xo
+EXTRA_DIST_EXP = \
+config/unix.exp \
+xargs.gnu/0n3.exp \
+xargs.gnu/delim-o.exp \
+xargs.gnu/E_-0.exp \
+xargs.gnu/empty_def-r.exp \
+xargs.gnu/empty-r.exp \
+xargs.gnu/idef-0.exp \
+xargs.gnu/idef-s26-0.exp \
+xargs.gnu/l1-0.exp \
+xargs.gnu/l1_2-0.exp \
+xargs.gnu/L2-0.exp \
+xargs.gnu/L2_2-0.exp \
+xargs.gnu/L3-0.exp \
+xargs.gnu/n1-0.exp \
+xargs.gnu/n2-0.exp \
+xargs.gnu/n2-s21-0.exp \
+xargs.gnu/n2-s21-x-0.exp \
+xargs.gnu/n3-0.exp \
+xargs.gnu/n3-s31-0.exp \
+xargs.gnu/noeof-0.exp \
+xargs.gnu/nothing.exp \
+xargs.gnu/P3-n1-IARG.exp \
+xargs.gnu/r.exp \
+xargs.gnu/s118-0.exp \
+xargs.gnu/s14_2-0.exp \
+xargs.gnu/s14-0.exp \
+xargs.gnu/s15-0.exp \
+xargs.gnu/s25-0.exp \
+xargs.gnu/space-0.exp \
+xargs.gnu/space-r.exp \
+xargs.gnu/space-t-0.exp \
+xargs.posix/EEOFb.exp \
+xargs.posix/EEOFe.exp \
+xargs.posix/EEOF.exp \
+xargs.posix/E_.exp \
+xargs.posix/E_-IARG.exp \
+xargs.posix/arg_max_32bit_linux_bug.exp \
+xargs.posix/arg_max_64bit_linux_bug.exp \
+xargs.posix/childfail.exp \
+xargs.posix/empty_def.exp \
+xargs.posix/empty.exp \
+xargs.posix/hithere.exp \
+xargs.posix/IARG-E_.exp \
+xargs.posix/IARG.exp \
+xargs.posix/IARG-s15.exp \
+xargs.posix/L2_2.exp \
+xargs.posix/uc_L2.exp \
+xargs.posix/L2-n2.exp \
+xargs.posix/L3.exp \
+xargs.posix/n1.exp \
+xargs.posix/n2.exp \
+xargs.posix/n2-s21.exp \
+xargs.posix/n2-s21-x.exp \
+xargs.posix/n3.exp \
+xargs.posix/n3-s31.exp \
+xargs.posix/noeof.exp \
+xargs.posix/quotes.exp \
+xargs.posix/rc-123.exp \
+xargs.posix/rc-124.exp \
+xargs.posix/rc-125.exp \
+xargs.posix/rc-126.exp \
+xargs.posix/rc-127.exp \
+xargs.posix/s118.exp \
+xargs.posix/s14.exp \
+xargs.posix/s14_2.exp \
+xargs.posix/s15.exp \
+xargs.posix/s25.exp \
+xargs.posix/s42.exp \
+xargs.posix/s470.exp \
+xargs.posix/s48.exp \
+xargs.posix/s6.exp \
+xargs.posix/savannah-11865.exp \
+xargs.posix/space.exp \
+xargs.posix/space-I.exp \
+xargs.posix/sv-bug-18714.exp \
+xargs.posix/sv-bug-18714b.exp \
+xargs.posix/sv-bug-20273.exp \
+xargs.posix/unmatched2.exp \
+xargs.posix/unmatched.exp \
+xargs.posix/unmatched-n2-x.exp \
+xargs.sysv/eEOF.exp \
+xargs.sysv/e.exp \
+xargs.sysv/empty_def-t.exp \
+xargs.sysv/empty-t.exp \
+xargs.sysv/eof1.exp \
+xargs.sysv/iARG.exp \
+xargs.sysv/idef.exp \
+xargs.sysv/idef-s26.exp \
+xargs.sysv/iquotes.exp \
+xargs.sysv/l1_2.exp \
+xargs.sysv/l1.exp \
+xargs.sysv/l1n4.exp \
+xargs.sysv/lc_l2.exp \
+xargs.sysv/s25-t.exp \
+xargs.sysv/sv-bug-18713.exp \
+xargs.sysv/space-t.exp \
+xargs.sysv/trace.exp
+
+EXTRA_DIST_XO = \
+xargs.gnu/0n3.xo \
+xargs.gnu/E_-0.xo \
+xargs.gnu/delim-o.xo \
+xargs.gnu/idef-0.xo \
+xargs.gnu/idef-s26-0.xo \
+xargs.gnu/l1-0.xo \
+xargs.gnu/l1_2-0.xo \
+xargs.gnu/L2-0.xo \
+xargs.gnu/L2_2-0.xo \
+xargs.gnu/L3-0.xo \
+xargs.gnu/n1-0.xo \
+xargs.gnu/n2-0.xo \
+xargs.gnu/n2-s21-0.xo \
+xargs.gnu/n2-s21-x-0.xo \
+xargs.gnu/n3-0.xo \
+xargs.gnu/n3-s31-0.xo \
+xargs.gnu/noeof-0.xo \
+xargs.gnu/nothing.xo \
+xargs.gnu/P3-n1-IARG.xo \
+xargs.gnu/r.xo \
+xargs.gnu/s118-0.xo \
+xargs.gnu/s14-0.xo \
+xargs.gnu/s15-0.xo \
+xargs.gnu/s25-0.xo \
+xargs.gnu/space-0.xo \
+xargs.gnu/space-t-0.xo \
+xargs.posix/EEOFb.xo \
+xargs.posix/EEOFe.xo \
+xargs.posix/EEOF.xo \
+xargs.posix/E_-IARG.xo \
+xargs.posix/empty_def.xo \
+xargs.posix/empty.xo \
+xargs.posix/E_.xo \
+xargs.posix/hithere.xo \
+xargs.posix/IARG-E_.xo \
+xargs.posix/IARG-s15.xo \
+xargs.posix/IARG.xo \
+xargs.posix/L2_2.xo \
+xargs.posix/L2-n2.xo \
+xargs.posix/uc_L2.xo \
+xargs.posix/L3.xo \
+xargs.posix/n1.xo \
+xargs.posix/n2-s21.xo \
+xargs.posix/n2-s21-x.xo \
+xargs.posix/n2.xo \
+xargs.posix/n3-s31.xo \
+xargs.posix/n3.xo \
+xargs.posix/noeof.xo \
+xargs.posix/quotes.xo \
+xargs.posix/rc-123.xo \
+xargs.posix/s118.xo \
+xargs.posix/s14.xo \
+xargs.posix/s15.xo \
+xargs.posix/s25.xo \
+xargs.posix/s42.xo \
+xargs.posix/s470.xo \
+xargs.posix/s48.xo \
+xargs.posix/savannah-11865.xo \
+xargs.posix/space.xo \
+xargs.posix/sv-bug-18714.xo \
+xargs.posix/sv-bug-18714b.xo \
+xargs.posix/sv-bug-20273.xo \
+xargs.posix/unmatched2.xo \
+xargs.posix/unmatched.xo \
+xargs.sysv/eEOF.xo \
+xargs.sysv/empty_def-t.xo \
+xargs.sysv/empty-t.xo \
+xargs.sysv/eof1.xo \
+xargs.sysv/e.xo \
+xargs.sysv/iARG.xo \
+xargs.sysv/idef-s26.xo \
+xargs.sysv/idef.xo \
+xargs.sysv/iquotes.xo \
+xargs.sysv/l1_2.xo \
+xargs.sysv/l1n4.xo \
+xargs.sysv/l1.xo \
+xargs.sysv/lc_l2.xo \
+xargs.sysv/s25-t.xo \
+xargs.sysv/sv-bug-18713.xo \
+xargs.sysv/space-t.xo \
+xargs.sysv/trace.xo
+
+EXTRA_DIST_XE = \
+xargs.gnu/space-t-0.xe \
+xargs.sysv/empty_def-t.xe \
+xargs.sysv/empty-t.xe \
+xargs.sysv/s25-t.xe \
+xargs.sysv/space-t.xe \
+xargs.sysv/trace.xe
+
+EXTRA_DIST_XI = \
+inputs/16383-ys.xi \
+inputs/32767-ys.xi \
+inputs/blank.xi \
+inputs/empty.xi \
+inputs/eof_-0.xi \
+inputs/EOFb.xi \
+inputs/EOFe.xi \
+inputs/eofstr.xi \
+inputs/eof_.xi \
+inputs/eof1.xi \
+inputs/EOF.xi \
+inputs/ett.xi \
+inputs/files0.xi \
+inputs/files.xi \
+inputs/foobar.xi \
+inputs/formfeeds.xi \
+inputs/ftt.xi \
+inputs/helloworld.xi \
+inputs/items-0.xi \
+inputs/items.xi \
+inputs/ldata-0.xi \
+inputs/ldatab-0.xi \
+inputs/ldatab.xi \
+inputs/ldata.xi \
+inputs/lines.xi \
+inputs/noeof-0.xi \
+inputs/noeof.xi \
+inputs/Pdata.xi \
+inputs/quotes.xi \
+inputs/space.xi \
+inputs/stairs-0.xi \
+inputs/stairs2-0.xi \
+inputs/stairs2.xi \
+inputs/stairs.xi \
+inputs/stt.xi \
+inputs/sv-bug-20273.xi \
+inputs/unmatched2.xi \
+inputs/unmatched.xi \
+inputs/verticaltabs.xi
+
+EXTRA_DIST = $(EXTRA_DIST_EXP) $(EXTRA_DIST_XO) $(EXTRA_DIST_XI) $(EXTRA_DIST_XE)
+
+# DIST_SUBDIRS = config inputs xargs.gnu xargs.posix xargs.sysv
+CLEANFILES = *.log *.sum site.exp site.bak
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits xargs/testsuite/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnits xargs/testsuite/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+tags TAGS:
+
+ctags CTAGS:
+
+cscope cscopelist:
+
+
+check-DEJAGNU: site.exp
+ srcdir='$(srcdir)'; export srcdir; \
+ EXPECT=$(EXPECT); export EXPECT; \
+ if $(SHELL) -c "$(RUNTEST) --version" > /dev/null 2>&1; then \
+ exit_status=0; l='$(DEJATOOL)'; for tool in $$l; do \
+ if $(RUNTEST) $(AM_RUNTESTFLAGS) $(RUNTESTDEFAULTFLAGS) $(RUNTESTFLAGS); \
+ then :; else exit_status=1; fi; \
+ done; \
+ else echo "WARNING: could not find '$(RUNTEST)'" 1>&2; :;\
+ fi; \
+ exit $$exit_status
+site.exp: Makefile $(EXTRA_DEJAGNU_SITE_CONFIG)
+ @echo 'Making a new site.exp file ...'
+ @echo '## these variables are automatically generated by make ##' >site.tmp
+ @echo '# Do not edit here. If you wish to override these values' >>site.tmp
+ @echo '# edit the last section' >>site.tmp
+ @echo 'set srcdir "$(srcdir)"' >>site.tmp
+ @echo "set objdir `pwd`" >>site.tmp
+ @echo 'set build_alias "$(build_alias)"' >>site.tmp
+ @echo 'set build_triplet $(build_triplet)' >>site.tmp
+ @echo 'set host_alias "$(host_alias)"' >>site.tmp
+ @echo 'set host_triplet $(host_triplet)' >>site.tmp
+ @list='$(EXTRA_DEJAGNU_SITE_CONFIG)'; for f in $$list; do \
+ echo "## Begin content included from file $$f. Do not modify. ##" \
+ && cat `test -f "$$f" || echo '$(srcdir)/'`$$f \
+ && echo "## End content included from file $$f. ##" \
+ || exit 1; \
+ done >> site.tmp
+ @echo "## End of auto-generated content; you can edit from here. ##" >> site.tmp
+ @if test -f site.exp; then \
+ sed -e '1,/^## End of auto-generated content.*##/d' site.exp >> site.tmp; \
+ fi
+ @-rm -f site.bak
+ @test ! -f site.exp || mv site.exp site.bak
+ @mv site.tmp site.exp
+
+distclean-DEJAGNU:
+ -rm -f site.exp site.bak
+ -l='$(DEJATOOL)'; for tool in $$l; do \
+ rm -f $$tool.sum $$tool.log; \
+ done
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-DEJAGNU distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-DEJAGNU check-am clean clean-generic \
+ cscopelist-am ctags-am distclean distclean-DEJAGNU \
+ distclean-generic distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am 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 installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
+ uninstall-am
+
+
+FORCE:
+
+checklists:
+ cd $(srcdir) && \
+ ( find config inputs xargs.gnu xargs.posix xargs.sysv \( -name "*.exp" -o -name "*.xo" -o -name "*.xi" -o -name "*.xe" \) -print ; \
+ ls $(EXTRA_DIST_XI) ; \
+ ls $(EXTRA_DIST_XE) ; \
+ ls $(EXTRA_DIST_XO) ; \
+ ls $(EXTRA_DIST_EXP) ; ) | \
+ sort | uniq -c | awk '$$1 != 2 { print; }'
+
+# 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.
+.NOEXPORT:
diff --git a/xargs/testsuite/config/unix.exp b/xargs/testsuite/config/unix.exp
new file mode 100644
index 0000000..1d9cea6
--- /dev/null
+++ b/xargs/testsuite/config/unix.exp
@@ -0,0 +1,182 @@
+# -*- TCL -*-
+# Test-specific TCL procedures required by DejaGNU.
+# Copyright (C) 1994, 2005, 2007, 2010, 2011 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/>.
+
+# Modified by David MacKenzie <djm@gnu.ai.mit.edu> from the gcc files
+# written by Rob Savoye <rob@cygnus.com>.
+
+
+verbose "base_dir is $base_dir" 2
+
+set objfile "xargs.o"
+set dir "$base_dir/.."
+set path "$dir/$objfile"
+if ![file exists $path] then {
+ error "$path does not exist"
+} else {
+ set XARGS [findfile $base_dir/../xargs [transform xargs]]
+}
+
+global XARGS
+
+
+set XARGS [findfile $base_dir/../xargs $base_dir/../xargs [transform xargs]]
+if [ string match "/*" $XARGS ] {
+ verbose "XARGS is set to $XARGS" 1
+} else {
+ error "Failed to find a binary to test"
+}
+
+global XARGSFLAGS
+if ![info exists XARGSFLAGS] then {
+ set XARGSFLAGS ""
+}
+
+# Called by runtest.
+# Extract and print the version number of xargs.
+proc xargs_version {} {
+ global XARGS
+ global XARGSFLAGS
+
+ if {[which $XARGS] != 0} then {
+ set tmp [ eval exec $XARGS $XARGSFLAGS --version </dev/null | sed 1q ]
+ clone_output $tmp
+ } else {
+ warning "$XARGS, program does not exist"
+ }
+}
+
+# Run xargs and leave the output in $comp_output.
+# Called by individual test scripts.
+proc xargs_start { passfail options {infile ""} {errh ""} {command ""} } {
+ global verbose
+ global XARGS
+ global XARGSFLAGS
+ global comp_output
+
+ if {[which $XARGS] == 0} then {
+ error "$XARGS, program does not exist"
+ exit 1
+ }
+
+ set scriptname [uplevel {info script}]
+ set testbase [file rootname $scriptname]
+ set testname [file tail $testbase]
+
+ if {[string match "\[0-9\]*" $passfail]} then {
+ set execrc "$passfail"
+ } elseif {[string match "p*" $passfail]} then {
+ set execrc "0"
+ } elseif {[string match "f*" $passfail]} then {
+ set execrc "1"
+ } else {
+ fail "$testname, failure in testing framework: passfail=$passfail"
+ return
+ }
+
+ set outfile "$testbase.xo"
+ if {$infile != ""} then {
+ set infile "[file dirname [file dirname $testbase]]/inputs/$infile"
+ } else {
+ set infile /dev/null
+ }
+
+ if {[string match "s*" $errh]} then {
+ set errfile ""
+ } else {
+ set errfile "$testbase.xe"
+ }
+
+ catch "exec rm -f xargs.out xargs.err"
+
+ if {$command != ""} then {
+ set cmd "$command < $infile > xargs.out 2> xargs.err"
+ } else {
+ set cmd "$XARGS $XARGSFLAGS $options < $infile > xargs.out 2> xargs.err"
+ }
+ send_log "$cmd\n"
+ if $verbose>1 then {
+ send_user "Spawning \"$cmd\"\n"
+ }
+
+ set status 0
+ if {[catch "exec $cmd" comp_output]} then {
+ if {[lindex $::errorCode 0] == "CHILDSTATUS"} then {
+ set status [lindex $::errorCode 2]
+ } else {
+ fail "$testname, failure in testing framework, $comp_output"
+ return
+ }
+ }
+
+ catch "exec cat xargs.err" comp_error
+
+ if {$execrc != $status} then {
+ if {$status == 0} then {
+ fail "$testname, unexpected success"
+ } elseif {$execrc == 0} then {
+ fail "$testname, unexpected failure, $comp_output, $comp_error"
+ } else {
+ fail "$testname, expected exit code $execrc, but got exit code $status"
+ }
+ return
+ }
+ # ok, at least exit code match.
+
+ if [file exists $outfile] then {
+ set cmp_cmd "cmp xargs.out $outfile"
+ send_log "$cmp_cmd\n"
+ catch "exec $cmp_cmd" cmpout
+ if {$cmpout != ""} then {
+ # stdout is wrong.
+ catch "exec diff -u xargs.out $outfile" diffs
+ send_log "stdout diffs: $diffs\n"
+ fail "$testname, wrong stdout output: $cmpout"
+ return
+ }
+ } elseif {[file size xargs.out] != 0} then {
+ fail "$testname, output on stdout should be empty"
+ return
+ }
+
+ # if stderr check is enabled,
+ if {$errfile != ""} then {
+ if {[file exists $errfile]} then {
+ set cmp_cmd "cmp xargs.err $errfile"
+ send_log "$cmp_cmd\n"
+ catch "exec $cmp_cmd" cmperr
+ if {$cmperr != ""} then {
+ # stderr is wrong
+ catch "exec diff -ua xargs.err $errfile" diffs
+ send_log "stderr diffs: $diffs\n"
+ fail "$testname, wrong stderr output: $cmperr"
+ return
+ }
+ } elseif {[file size xargs.err] != 0} then {
+ fail "$testname, output on stderr should be empty"
+ return
+ }
+ }
+
+ pass "$testname"
+}
+
+# Called by runtest.
+# Clean up (remove temporary files) before runtest exits.
+proc xargs_exit {} {
+ catch "exec rm -f xargs.out xargs.err"
+}
diff --git a/xargs/testsuite/inputs/16383-ys.xi b/xargs/testsuite/inputs/16383-ys.xi
new file mode 100644
index 0000000..9084d4c
--- /dev/null
+++ b/xargs/testsuite/inputs/16383-ys.xi
@@ -0,0 +1 @@
+y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y \ No newline at end of file
diff --git a/xargs/testsuite/inputs/32767-ys.xi b/xargs/testsuite/inputs/32767-ys.xi
new file mode 100644
index 0000000..320ff33
--- /dev/null
+++ b/xargs/testsuite/inputs/32767-ys.xi
@@ -0,0 +1 @@
+y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y \ No newline at end of file
diff --git a/xargs/testsuite/inputs/EOF.xi b/xargs/testsuite/inputs/EOF.xi
new file mode 100644
index 0000000..2a1c7a4
--- /dev/null
+++ b/xargs/testsuite/inputs/EOF.xi
@@ -0,0 +1,5 @@
+one
+two
+ EOF
+three
+four
diff --git a/xargs/testsuite/inputs/EOFb.xi b/xargs/testsuite/inputs/EOFb.xi
new file mode 100644
index 0000000..f302113
--- /dev/null
+++ b/xargs/testsuite/inputs/EOFb.xi
@@ -0,0 +1,5 @@
+one
+two
+ bEOF
+three
+four
diff --git a/xargs/testsuite/inputs/EOFe.xi b/xargs/testsuite/inputs/EOFe.xi
new file mode 100644
index 0000000..f391070
--- /dev/null
+++ b/xargs/testsuite/inputs/EOFe.xi
@@ -0,0 +1,5 @@
+one
+two
+ EOFe
+three
+four
diff --git a/xargs/testsuite/inputs/Pdata.xi b/xargs/testsuite/inputs/Pdata.xi
new file mode 100644
index 0000000..250f10d
--- /dev/null
+++ b/xargs/testsuite/inputs/Pdata.xi
@@ -0,0 +1,3 @@
+sleep 2 && echo one
+sleep 1 && echo two
+echo three
diff --git a/xargs/testsuite/inputs/blank.xi b/xargs/testsuite/inputs/blank.xi
new file mode 100644
index 0000000..b28b04f
--- /dev/null
+++ b/xargs/testsuite/inputs/blank.xi
@@ -0,0 +1,3 @@
+
+
+
diff --git a/xargs/testsuite/inputs/empty.xi b/xargs/testsuite/inputs/empty.xi
new file mode 100644
index 0000000..c7c1dc8
--- /dev/null
+++ b/xargs/testsuite/inputs/empty.xi
@@ -0,0 +1,3 @@
+foo '' bar
+baz ''
+'' fnord
diff --git a/xargs/testsuite/inputs/eof1.xi b/xargs/testsuite/inputs/eof1.xi
new file mode 100644
index 0000000..0a4baec
--- /dev/null
+++ b/xargs/testsuite/inputs/eof1.xi
@@ -0,0 +1,5 @@
+firstline
+secondline
+ _
+thirdline
+fourthline
diff --git a/xargs/testsuite/inputs/eof_-0.xi b/xargs/testsuite/inputs/eof_-0.xi
new file mode 100644
index 0000000..6e6fa1a
--- /dev/null
+++ b/xargs/testsuite/inputs/eof_-0.xi
Binary files differ
diff --git a/xargs/testsuite/inputs/eof_.xi b/xargs/testsuite/inputs/eof_.xi
new file mode 100644
index 0000000..e6270a7
--- /dev/null
+++ b/xargs/testsuite/inputs/eof_.xi
@@ -0,0 +1,5 @@
+one
+two
+_
+three
+four \ No newline at end of file
diff --git a/xargs/testsuite/inputs/eofstr.xi b/xargs/testsuite/inputs/eofstr.xi
new file mode 100644
index 0000000..6e60cfd
--- /dev/null
+++ b/xargs/testsuite/inputs/eofstr.xi
@@ -0,0 +1,5 @@
+firstline
+secondline
+EOF
+thirdline
+fourthline
diff --git a/xargs/testsuite/inputs/ett.xi b/xargs/testsuite/inputs/ett.xi
new file mode 100644
index 0000000..ec54624
--- /dev/null
+++ b/xargs/testsuite/inputs/ett.xi
@@ -0,0 +1,3 @@
+exit 255
+echo 1
+echo 2
diff --git a/xargs/testsuite/inputs/files.xi b/xargs/testsuite/inputs/files.xi
new file mode 100644
index 0000000..5590252
--- /dev/null
+++ b/xargs/testsuite/inputs/files.xi
@@ -0,0 +1,22 @@
+/src/gnu/autoconf-1.11
+/src/gnu/autoconf-1.11/README
+/src/gnu/autoconf-1.11/Makefile.in
+/src/gnu/autoconf-1.11/INSTALL
+/src/gnu/autoconf-1.11/NEWS
+/src/gnu/autoconf-1.11/COPYING
+/src/gnu/autoconf-1.11/ChangeLog
+/src/gnu/autoconf-1.11/autoconf.texi
+/src/gnu/autoconf-1.11/acconfig.h
+/src/gnu/autoconf-1.11/autoconf.sh
+/src/gnu/autoconf-1.11/acgeneral.m4
+/src/gnu/autoconf-1.11/acspecific.m4
+/src/gnu/autoconf-1.11/configure
+/src/gnu/autoconf-1.11/configure.in
+/src/gnu/autoconf-1.11/autoheader.sh
+/src/gnu/autoconf-1.11/mkinstalldirs
+/src/gnu/autoconf-1.11/install.sh
+/src/gnu/autoconf-1.11/autoconf.info
+/src/gnu/autoconf-1.11/standards.texi
+/src/gnu/autoconf-1.11/make-stds.texi
+/src/gnu/autoconf-1.11/standards.info
+/src/gnu/autoconf-1.11/texinfo.tex
diff --git a/xargs/testsuite/inputs/files0.xi b/xargs/testsuite/inputs/files0.xi
new file mode 100644
index 0000000..08ab0e2
--- /dev/null
+++ b/xargs/testsuite/inputs/files0.xi
Binary files differ
diff --git a/xargs/testsuite/inputs/foobar.xi b/xargs/testsuite/inputs/foobar.xi
new file mode 100644
index 0000000..e10988c
--- /dev/null
+++ b/xargs/testsuite/inputs/foobar.xi
@@ -0,0 +1,3 @@
+foo bar
+baz
+ugh
diff --git a/xargs/testsuite/inputs/formfeeds.xi b/xargs/testsuite/inputs/formfeeds.xi
new file mode 100644
index 0000000..ecb2715
--- /dev/null
+++ b/xargs/testsuite/inputs/formfeeds.xi
@@ -0,0 +1,2 @@
+1 2 3 4
+a b c d
diff --git a/xargs/testsuite/inputs/ftt.xi b/xargs/testsuite/inputs/ftt.xi
new file mode 100644
index 0000000..633a5d0
--- /dev/null
+++ b/xargs/testsuite/inputs/ftt.xi
@@ -0,0 +1,3 @@
+false
+echo 1
+echo 2
diff --git a/xargs/testsuite/inputs/helloworld.xi b/xargs/testsuite/inputs/helloworld.xi
new file mode 100644
index 0000000..95d09f2
--- /dev/null
+++ b/xargs/testsuite/inputs/helloworld.xi
@@ -0,0 +1 @@
+hello world \ No newline at end of file
diff --git a/xargs/testsuite/inputs/items-0.xi b/xargs/testsuite/inputs/items-0.xi
new file mode 100644
index 0000000..b217e3a
--- /dev/null
+++ b/xargs/testsuite/inputs/items-0.xi
Binary files differ
diff --git a/xargs/testsuite/inputs/items.xi b/xargs/testsuite/inputs/items.xi
new file mode 100644
index 0000000..163874e
--- /dev/null
+++ b/xargs/testsuite/inputs/items.xi
@@ -0,0 +1,8 @@
+
+dumb
+ s s
+ f f
+ r r
+ t t
+ v v
+ \ No newline at end of file
diff --git a/xargs/testsuite/inputs/ldata-0.xi b/xargs/testsuite/inputs/ldata-0.xi
new file mode 100644
index 0000000..eaee504
--- /dev/null
+++ b/xargs/testsuite/inputs/ldata-0.xi
Binary files differ
diff --git a/xargs/testsuite/inputs/ldata.xi b/xargs/testsuite/inputs/ldata.xi
new file mode 100644
index 0000000..b654880
--- /dev/null
+++ b/xargs/testsuite/inputs/ldata.xi
@@ -0,0 +1,9 @@
+1 22 333 4444
+55555 666666
+7777777
+88888888
+999999999 1 22
+333 4444 55555
+666666 7777777
+88888888
+999999999
diff --git a/xargs/testsuite/inputs/ldatab-0.xi b/xargs/testsuite/inputs/ldatab-0.xi
new file mode 100644
index 0000000..dfd0de3
--- /dev/null
+++ b/xargs/testsuite/inputs/ldatab-0.xi
Binary files differ
diff --git a/xargs/testsuite/inputs/ldatab.xi b/xargs/testsuite/inputs/ldatab.xi
new file mode 100644
index 0000000..6b156d2
--- /dev/null
+++ b/xargs/testsuite/inputs/ldatab.xi
@@ -0,0 +1,10 @@
+
+1 22 333 4444
+55555 666666
+7777777
+88888888
+999999999 1 22
+333 4444 55555
+666666 7777777
+88888888
+999999999
diff --git a/xargs/testsuite/inputs/lines.xi b/xargs/testsuite/inputs/lines.xi
new file mode 100644
index 0000000..5d229f6
--- /dev/null
+++ b/xargs/testsuite/inputs/lines.xi
@@ -0,0 +1,6 @@
+first nonblank line
+second nonblank line
+
+third nonblank line
+
+fourth nonblank line
diff --git a/xargs/testsuite/inputs/noeof-0.xi b/xargs/testsuite/inputs/noeof-0.xi
new file mode 100644
index 0000000..cb2f8ff
--- /dev/null
+++ b/xargs/testsuite/inputs/noeof-0.xi
Binary files differ
diff --git a/xargs/testsuite/inputs/noeof.xi b/xargs/testsuite/inputs/noeof.xi
new file mode 100644
index 0000000..0bfc124
--- /dev/null
+++ b/xargs/testsuite/inputs/noeof.xi
@@ -0,0 +1,2 @@
+first
+second \ No newline at end of file
diff --git a/xargs/testsuite/inputs/quotes.xi b/xargs/testsuite/inputs/quotes.xi
new file mode 100644
index 0000000..031e84f
--- /dev/null
+++ b/xargs/testsuite/inputs/quotes.xi
@@ -0,0 +1,5 @@
+ this is
+"quoted stuff"
+and \
+an embedded newline
+with 'single quotes' as well.
diff --git a/xargs/testsuite/inputs/space.xi b/xargs/testsuite/inputs/space.xi
new file mode 100644
index 0000000..2be76b2
--- /dev/null
+++ b/xargs/testsuite/inputs/space.xi
@@ -0,0 +1,2 @@
+
+
diff --git a/xargs/testsuite/inputs/stairs-0.xi b/xargs/testsuite/inputs/stairs-0.xi
new file mode 100644
index 0000000..10d1ebd
--- /dev/null
+++ b/xargs/testsuite/inputs/stairs-0.xi
Binary files differ
diff --git a/xargs/testsuite/inputs/stairs.xi b/xargs/testsuite/inputs/stairs.xi
new file mode 100644
index 0000000..c2a8cce
--- /dev/null
+++ b/xargs/testsuite/inputs/stairs.xi
@@ -0,0 +1,18 @@
+1
+22
+333
+4444
+55555
+666666
+7777777
+88888888
+999999999
+1
+22
+333
+4444
+55555
+666666
+7777777
+88888888
+999999999
diff --git a/xargs/testsuite/inputs/stairs2-0.xi b/xargs/testsuite/inputs/stairs2-0.xi
new file mode 100644
index 0000000..6445a5f
--- /dev/null
+++ b/xargs/testsuite/inputs/stairs2-0.xi
Binary files differ
diff --git a/xargs/testsuite/inputs/stairs2.xi b/xargs/testsuite/inputs/stairs2.xi
new file mode 100644
index 0000000..9f8a5fe
--- /dev/null
+++ b/xargs/testsuite/inputs/stairs2.xi
@@ -0,0 +1,18 @@
+999999999
+88888888
+7777777
+666666
+55555
+4444
+333
+22
+1
+999999999
+88888888
+7777777
+666666
+55555
+4444
+333
+22
+1
diff --git a/xargs/testsuite/inputs/stt.xi b/xargs/testsuite/inputs/stt.xi
new file mode 100644
index 0000000..22fb0d2
--- /dev/null
+++ b/xargs/testsuite/inputs/stt.xi
@@ -0,0 +1,3 @@
+kill $$
+echo 1
+echo 2
diff --git a/xargs/testsuite/inputs/sv-bug-20273.xi b/xargs/testsuite/inputs/sv-bug-20273.xi
new file mode 100644
index 0000000..01e79c3
--- /dev/null
+++ b/xargs/testsuite/inputs/sv-bug-20273.xi
@@ -0,0 +1,3 @@
+1
+2
+3
diff --git a/xargs/testsuite/inputs/unmatched.xi b/xargs/testsuite/inputs/unmatched.xi
new file mode 100644
index 0000000..bc9347a
--- /dev/null
+++ b/xargs/testsuite/inputs/unmatched.xi
@@ -0,0 +1,3 @@
+one
+"two
+three \ No newline at end of file
diff --git a/xargs/testsuite/inputs/unmatched2.xi b/xargs/testsuite/inputs/unmatched2.xi
new file mode 100644
index 0000000..616a18e
--- /dev/null
+++ b/xargs/testsuite/inputs/unmatched2.xi
@@ -0,0 +1,2 @@
+one
+"two \ No newline at end of file
diff --git a/xargs/testsuite/inputs/verticaltabs.xi b/xargs/testsuite/inputs/verticaltabs.xi
new file mode 100644
index 0000000..06aad06
--- /dev/null
+++ b/xargs/testsuite/inputs/verticaltabs.xi
@@ -0,0 +1 @@
+q w e r 6 7 8 9
diff --git a/xargs/testsuite/xargs.gnu/0n3.exp b/xargs/testsuite/xargs.gnu/0n3.exp
new file mode 100644
index 0000000..33e96a8
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/0n3.exp
@@ -0,0 +1 @@
+xargs_start p {-0 -n3} files0.xi
diff --git a/xargs/testsuite/xargs.gnu/0n3.xo b/xargs/testsuite/xargs.gnu/0n3.xo
new file mode 100644
index 0000000..e663e64
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/0n3.xo
@@ -0,0 +1,8 @@
+/src/gnu/autoconf-1.11 /src/gnu/autoconf-1.11/README /src/gnu/autoconf-1.11/Makefile.in
+/src/gnu/autoconf-1.11/INSTALL /src/gnu/autoconf-1.11/NEWS /src/gnu/autoconf-1.11/COPYING
+/src/gnu/autoconf-1.11/ChangeLog /src/gnu/autoconf-1.11/autoconf.texi /src/gnu/autoconf-1.11/acconfig.h
+/src/gnu/autoconf-1.11/autoconf.sh /src/gnu/autoconf-1.11/acgeneral.m4 /src/gnu/autoconf-1.11/acspecific.m4
+/src/gnu/autoconf-1.11/configure /src/gnu/autoconf-1.11/configure.in /src/gnu/autoconf-1.11/autoheader.sh
+/src/gnu/autoconf-1.11/mkinstalldirs /src/gnu/autoconf-1.11/install.sh /src/gnu/autoconf-1.11/autoconf.info
+/src/gnu/autoconf-1.11/standards.texi /src/gnu/autoconf-1.11/make-stds.texi /src/gnu/autoconf-1.11/standards.info
+/src/gnu/autoconf-1.11/texinfo.tex
diff --git a/xargs/testsuite/xargs.gnu/E_-0.exp b/xargs/testsuite/xargs.gnu/E_-0.exp
new file mode 100644
index 0000000..816c90c
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/E_-0.exp
@@ -0,0 +1 @@
+xargs_start p {-E_ -0} eof_-0.xi skip
diff --git a/xargs/testsuite/xargs.gnu/E_-0.xo b/xargs/testsuite/xargs.gnu/E_-0.xo
new file mode 100644
index 0000000..28a9314
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/E_-0.xo
@@ -0,0 +1 @@
+one two _ three four
diff --git a/xargs/testsuite/xargs.gnu/L2-0.exp b/xargs/testsuite/xargs.gnu/L2-0.exp
new file mode 100644
index 0000000..c7668ac
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/L2-0.exp
@@ -0,0 +1 @@
+xargs_start p {-L2 -0} ldata-0.xi
diff --git a/xargs/testsuite/xargs.gnu/L2-0.xo b/xargs/testsuite/xargs.gnu/L2-0.xo
new file mode 100644
index 0000000..7234702
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/L2-0.xo
@@ -0,0 +1,5 @@
+1 22 333 4444 55555 666666
+7777777 88888888
+999999999 1 22 333 4444 55555
+666666 7777777 88888888
+999999999
diff --git a/xargs/testsuite/xargs.gnu/L2_2-0.exp b/xargs/testsuite/xargs.gnu/L2_2-0.exp
new file mode 100644
index 0000000..360c011
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/L2_2-0.exp
@@ -0,0 +1 @@
+xargs_start p {-L2 -0} ldatab-0.xi
diff --git a/xargs/testsuite/xargs.gnu/L2_2-0.xo b/xargs/testsuite/xargs.gnu/L2_2-0.xo
new file mode 100644
index 0000000..24d97fe
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/L2_2-0.xo
@@ -0,0 +1,5 @@
+ 1 22 333 4444
+55555 666666 7777777
+88888888 999999999 1 22
+333 4444 55555 666666 7777777
+88888888 999999999
diff --git a/xargs/testsuite/xargs.gnu/L3-0.exp b/xargs/testsuite/xargs.gnu/L3-0.exp
new file mode 100644
index 0000000..8d857a4
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/L3-0.exp
@@ -0,0 +1 @@
+xargs_start p {-L3 -0} ldata-0.xi
diff --git a/xargs/testsuite/xargs.gnu/L3-0.xo b/xargs/testsuite/xargs.gnu/L3-0.xo
new file mode 100644
index 0000000..2cb7fb3
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/L3-0.xo
@@ -0,0 +1,3 @@
+1 22 333 4444 55555 666666 7777777
+88888888 999999999 1 22 333 4444 55555
+666666 7777777 88888888 999999999
diff --git a/xargs/testsuite/xargs.gnu/P3-n1-IARG.exp b/xargs/testsuite/xargs.gnu/P3-n1-IARG.exp
new file mode 100644
index 0000000..7579589
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/P3-n1-IARG.exp
@@ -0,0 +1 @@
+xargs_start p {-P3 -n1 -IARG sh -c ARG} Pdata.xi
diff --git a/xargs/testsuite/xargs.gnu/P3-n1-IARG.xo b/xargs/testsuite/xargs.gnu/P3-n1-IARG.xo
new file mode 100644
index 0000000..f8eea9f
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/P3-n1-IARG.xo
@@ -0,0 +1,3 @@
+three
+two
+one
diff --git a/xargs/testsuite/xargs.gnu/delim-o.exp b/xargs/testsuite/xargs.gnu/delim-o.exp
new file mode 100644
index 0000000..9c1643c
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/delim-o.exp
@@ -0,0 +1 @@
+xargs_start p {-d o -n1} helloworld.xi
diff --git a/xargs/testsuite/xargs.gnu/delim-o.xo b/xargs/testsuite/xargs.gnu/delim-o.xo
new file mode 100644
index 0000000..6308eaf
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/delim-o.xo
@@ -0,0 +1,3 @@
+hell
+ w
+rld
diff --git a/xargs/testsuite/xargs.gnu/empty-r.exp b/xargs/testsuite/xargs.gnu/empty-r.exp
new file mode 100644
index 0000000..6290f72
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/empty-r.exp
@@ -0,0 +1 @@
+xargs_start p {-r echo this plus that}
diff --git a/xargs/testsuite/xargs.gnu/empty_def-r.exp b/xargs/testsuite/xargs.gnu/empty_def-r.exp
new file mode 100644
index 0000000..858e327
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/empty_def-r.exp
@@ -0,0 +1 @@
+xargs_start p {-r}
diff --git a/xargs/testsuite/xargs.gnu/idef-0.exp b/xargs/testsuite/xargs.gnu/idef-0.exp
new file mode 100644
index 0000000..8bd43ff
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/idef-0.exp
@@ -0,0 +1 @@
+xargs_start p {-i -0 echo from \{\} to x{}y} items-0.xi
diff --git a/xargs/testsuite/xargs.gnu/idef-0.xo b/xargs/testsuite/xargs.gnu/idef-0.xo
new file mode 100644
index 0000000..d09d7ad
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/idef-0.xo
@@ -0,0 +1,20 @@
+from one to xoney
+from
+ to x
+y
+from dumb to xdumby
+from s s to x s s y
+from f f to x f f y
+from r r to x r r y
+from t t to x t t y
+from v v to x v v y
+from to x y
+from
+n
+
+n
+ to x
+n
+
+n
+y
diff --git a/xargs/testsuite/xargs.gnu/idef-s26-0.exp b/xargs/testsuite/xargs.gnu/idef-s26-0.exp
new file mode 100644
index 0000000..8513059
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/idef-s26-0.exp
@@ -0,0 +1 @@
+xargs_start f {-i -s26 -0 echo from \{\} to x{}y} items-0.xi skip
diff --git a/xargs/testsuite/xargs.gnu/idef-s26-0.xo b/xargs/testsuite/xargs.gnu/idef-s26-0.xo
new file mode 100644
index 0000000..4659896
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/idef-s26-0.xo
@@ -0,0 +1 @@
+from one to xoney
diff --git a/xargs/testsuite/xargs.gnu/l1-0.exp b/xargs/testsuite/xargs.gnu/l1-0.exp
new file mode 100644
index 0000000..87cf28c
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/l1-0.exp
@@ -0,0 +1 @@
+xargs_start p {-l -0} ldata-0.xi
diff --git a/xargs/testsuite/xargs.gnu/l1-0.xo b/xargs/testsuite/xargs.gnu/l1-0.xo
new file mode 100644
index 0000000..b654880
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/l1-0.xo
@@ -0,0 +1,9 @@
+1 22 333 4444
+55555 666666
+7777777
+88888888
+999999999 1 22
+333 4444 55555
+666666 7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.gnu/l1_2-0.exp b/xargs/testsuite/xargs.gnu/l1_2-0.exp
new file mode 100644
index 0000000..506672d
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/l1_2-0.exp
@@ -0,0 +1 @@
+xargs_start p {-l -0} ldatab-0.xi
diff --git a/xargs/testsuite/xargs.gnu/l1_2-0.xo b/xargs/testsuite/xargs.gnu/l1_2-0.xo
new file mode 100644
index 0000000..6b156d2
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/l1_2-0.xo
@@ -0,0 +1,10 @@
+
+1 22 333 4444
+55555 666666
+7777777
+88888888
+999999999 1 22
+333 4444 55555
+666666 7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.gnu/n1-0.exp b/xargs/testsuite/xargs.gnu/n1-0.exp
new file mode 100644
index 0000000..0c0564c
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n1-0.exp
@@ -0,0 +1 @@
+xargs_start p {-n1 -0} stairs-0.xi
diff --git a/xargs/testsuite/xargs.gnu/n1-0.xo b/xargs/testsuite/xargs.gnu/n1-0.xo
new file mode 100644
index 0000000..c2a8cce
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n1-0.xo
@@ -0,0 +1,18 @@
+1
+22
+333
+4444
+55555
+666666
+7777777
+88888888
+999999999
+1
+22
+333
+4444
+55555
+666666
+7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.gnu/n2-0.exp b/xargs/testsuite/xargs.gnu/n2-0.exp
new file mode 100644
index 0000000..8f8bf13
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n2-0.exp
@@ -0,0 +1 @@
+xargs_start p {-n2 -0} stairs-0.xi
diff --git a/xargs/testsuite/xargs.gnu/n2-0.xo b/xargs/testsuite/xargs.gnu/n2-0.xo
new file mode 100644
index 0000000..33d8177
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n2-0.xo
@@ -0,0 +1,9 @@
+1 22
+333 4444
+55555 666666
+7777777 88888888
+999999999 1
+22 333
+4444 55555
+666666 7777777
+88888888 999999999
diff --git a/xargs/testsuite/xargs.gnu/n2-s21-0.exp b/xargs/testsuite/xargs.gnu/n2-s21-0.exp
new file mode 100644
index 0000000..1793245
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n2-s21-0.exp
@@ -0,0 +1 @@
+xargs_start p {-n2 -s21 -0} stairs-0.xi
diff --git a/xargs/testsuite/xargs.gnu/n2-s21-0.xo b/xargs/testsuite/xargs.gnu/n2-s21-0.xo
new file mode 100644
index 0000000..a9e8dfa
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n2-s21-0.xo
@@ -0,0 +1,11 @@
+1 22
+333 4444
+55555 666666
+7777777
+88888888
+999999999 1
+22 333
+4444 55555
+666666 7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.gnu/n2-s21-x-0.exp b/xargs/testsuite/xargs.gnu/n2-s21-x-0.exp
new file mode 100644
index 0000000..293ba88
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n2-s21-x-0.exp
@@ -0,0 +1 @@
+xargs_start f {-n2 -s21 -x -0} stairs-0.xi skip
diff --git a/xargs/testsuite/xargs.gnu/n2-s21-x-0.xo b/xargs/testsuite/xargs.gnu/n2-s21-x-0.xo
new file mode 100644
index 0000000..7b6db82
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n2-s21-x-0.xo
@@ -0,0 +1,3 @@
+1 22
+333 4444
+55555 666666
diff --git a/xargs/testsuite/xargs.gnu/n3-0.exp b/xargs/testsuite/xargs.gnu/n3-0.exp
new file mode 100644
index 0000000..8fb187d
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n3-0.exp
@@ -0,0 +1 @@
+xargs_start p {-n3 -0} stairs2-0.xi
diff --git a/xargs/testsuite/xargs.gnu/n3-0.xo b/xargs/testsuite/xargs.gnu/n3-0.xo
new file mode 100644
index 0000000..dfef033
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n3-0.xo
@@ -0,0 +1,6 @@
+999999999 88888888 7777777
+666666 55555 4444
+333 22 1
+999999999 88888888 7777777
+666666 55555 4444
+333 22 1
diff --git a/xargs/testsuite/xargs.gnu/n3-s31-0.exp b/xargs/testsuite/xargs.gnu/n3-s31-0.exp
new file mode 100644
index 0000000..efee3e3
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n3-s31-0.exp
@@ -0,0 +1 @@
+xargs_start p {-n3 -s31 -0} stairs2-0.xi
diff --git a/xargs/testsuite/xargs.gnu/n3-s31-0.xo b/xargs/testsuite/xargs.gnu/n3-s31-0.xo
new file mode 100644
index 0000000..7484486
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/n3-s31-0.xo
@@ -0,0 +1,7 @@
+999999999 88888888
+7777777 666666 55555
+4444 333 22
+1 999999999 88888888
+7777777 666666 55555
+4444 333 22
+1
diff --git a/xargs/testsuite/xargs.gnu/noeof-0.exp b/xargs/testsuite/xargs.gnu/noeof-0.exp
new file mode 100644
index 0000000..7e680da
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/noeof-0.exp
@@ -0,0 +1 @@
+xargs_start p {-0} noeof-0.xi
diff --git a/xargs/testsuite/xargs.gnu/noeof-0.xo b/xargs/testsuite/xargs.gnu/noeof-0.xo
new file mode 100644
index 0000000..45f9997
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/noeof-0.xo
@@ -0,0 +1 @@
+first second
diff --git a/xargs/testsuite/xargs.gnu/nothing.exp b/xargs/testsuite/xargs.gnu/nothing.exp
new file mode 100644
index 0000000..20c03fd
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/nothing.exp
@@ -0,0 +1 @@
+xargs_start p {echo this plus that} {}
diff --git a/xargs/testsuite/xargs.gnu/nothing.xo b/xargs/testsuite/xargs.gnu/nothing.xo
new file mode 100644
index 0000000..b8e9a02
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/nothing.xo
@@ -0,0 +1 @@
+this plus that
diff --git a/xargs/testsuite/xargs.gnu/r.exp b/xargs/testsuite/xargs.gnu/r.exp
new file mode 100644
index 0000000..448055d
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/r.exp
@@ -0,0 +1 @@
+xargs_start p {-r echo this plus that} blank.xi
diff --git a/xargs/testsuite/xargs.gnu/r.xo b/xargs/testsuite/xargs.gnu/r.xo
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/r.xo
diff --git a/xargs/testsuite/xargs.gnu/s118-0.exp b/xargs/testsuite/xargs.gnu/s118-0.exp
new file mode 100644
index 0000000..96634a4
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s118-0.exp
@@ -0,0 +1 @@
+xargs_start p {-0 -s118} stairs-0.xi
diff --git a/xargs/testsuite/xargs.gnu/s118-0.xo b/xargs/testsuite/xargs.gnu/s118-0.xo
new file mode 100644
index 0000000..06b617a
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s118-0.xo
@@ -0,0 +1 @@
+1 22 333 4444 55555 666666 7777777 88888888 999999999 1 22 333 4444 55555 666666 7777777 88888888 999999999
diff --git a/xargs/testsuite/xargs.gnu/s14-0.exp b/xargs/testsuite/xargs.gnu/s14-0.exp
new file mode 100644
index 0000000..9c4d841
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s14-0.exp
@@ -0,0 +1 @@
+xargs_start f {-0 -s14} stairs-0.xi skip
diff --git a/xargs/testsuite/xargs.gnu/s14-0.xo b/xargs/testsuite/xargs.gnu/s14-0.xo
new file mode 100644
index 0000000..afb3bc3
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s14-0.xo
@@ -0,0 +1,6 @@
+1 22 333
+4444
+55555
+666666
+7777777
+88888888
diff --git a/xargs/testsuite/xargs.gnu/s14_2-0.exp b/xargs/testsuite/xargs.gnu/s14_2-0.exp
new file mode 100644
index 0000000..63a7603
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s14_2-0.exp
@@ -0,0 +1 @@
+xargs_start f {-0 -s14} stairs2-0.xi skip
diff --git a/xargs/testsuite/xargs.gnu/s15-0.exp b/xargs/testsuite/xargs.gnu/s15-0.exp
new file mode 100644
index 0000000..f67a18e
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s15-0.exp
@@ -0,0 +1 @@
+xargs_start p {-0 -s15} stairs-0.xi
diff --git a/xargs/testsuite/xargs.gnu/s15-0.xo b/xargs/testsuite/xargs.gnu/s15-0.xo
new file mode 100644
index 0000000..7f7032e
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s15-0.xo
@@ -0,0 +1,14 @@
+1 22 333
+4444
+55555
+666666
+7777777
+88888888
+999999999
+1 22 333
+4444
+55555
+666666
+7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.gnu/s25-0.exp b/xargs/testsuite/xargs.gnu/s25-0.exp
new file mode 100644
index 0000000..61a026c
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s25-0.exp
@@ -0,0 +1 @@
+xargs_start p {-0 -s25} stairs-0.xi
diff --git a/xargs/testsuite/xargs.gnu/s25-0.xo b/xargs/testsuite/xargs.gnu/s25-0.xo
new file mode 100644
index 0000000..64ba7cb
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/s25-0.xo
@@ -0,0 +1,6 @@
+1 22 333 4444 55555
+666666 7777777
+88888888 999999999
+1 22 333 4444 55555
+666666 7777777
+88888888 999999999
diff --git a/xargs/testsuite/xargs.gnu/space-0.exp b/xargs/testsuite/xargs.gnu/space-0.exp
new file mode 100644
index 0000000..c44ff33
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/space-0.exp
@@ -0,0 +1 @@
+xargs_start p {-0 echo this plus that} space.xi
diff --git a/xargs/testsuite/xargs.gnu/space-0.xo b/xargs/testsuite/xargs.gnu/space-0.xo
new file mode 100644
index 0000000..7c4d562
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/space-0.xo
@@ -0,0 +1,3 @@
+this plus that
+
+
diff --git a/xargs/testsuite/xargs.gnu/space-r.exp b/xargs/testsuite/xargs.gnu/space-r.exp
new file mode 100644
index 0000000..9f66289
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/space-r.exp
@@ -0,0 +1 @@
+xargs_start p {-r echo this plus that} space.xi
diff --git a/xargs/testsuite/xargs.gnu/space-t-0.exp b/xargs/testsuite/xargs.gnu/space-t-0.exp
new file mode 100644
index 0000000..35e3860
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/space-t-0.exp
@@ -0,0 +1 @@
+xargs_start p {-t -0 echo this plus that} space.xi
diff --git a/xargs/testsuite/xargs.gnu/space-t-0.xe b/xargs/testsuite/xargs.gnu/space-t-0.xe
new file mode 100644
index 0000000..bfcf50b
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/space-t-0.xe
@@ -0,0 +1,3 @@
+echo this plus that
+
+
diff --git a/xargs/testsuite/xargs.gnu/space-t-0.xo b/xargs/testsuite/xargs.gnu/space-t-0.xo
new file mode 100644
index 0000000..7c4d562
--- /dev/null
+++ b/xargs/testsuite/xargs.gnu/space-t-0.xo
@@ -0,0 +1,3 @@
+this plus that
+
+
diff --git a/xargs/testsuite/xargs.posix/EEOF.exp b/xargs/testsuite/xargs.posix/EEOF.exp
new file mode 100644
index 0000000..4c976c4
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/EEOF.exp
@@ -0,0 +1 @@
+xargs_start p {-E EOF} EOF.xi
diff --git a/xargs/testsuite/xargs.posix/EEOF.xo b/xargs/testsuite/xargs.posix/EEOF.xo
new file mode 100644
index 0000000..bd46cf2
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/EEOF.xo
@@ -0,0 +1 @@
+one two
diff --git a/xargs/testsuite/xargs.posix/EEOFb.exp b/xargs/testsuite/xargs.posix/EEOFb.exp
new file mode 100644
index 0000000..8c92c4d
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/EEOFb.exp
@@ -0,0 +1 @@
+xargs_start p {-E EOF} EOFb.xi
diff --git a/xargs/testsuite/xargs.posix/EEOFb.xo b/xargs/testsuite/xargs.posix/EEOFb.xo
new file mode 100644
index 0000000..1be0fd0
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/EEOFb.xo
@@ -0,0 +1 @@
+one two bEOF three four
diff --git a/xargs/testsuite/xargs.posix/EEOFe.exp b/xargs/testsuite/xargs.posix/EEOFe.exp
new file mode 100644
index 0000000..33cb5bc
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/EEOFe.exp
@@ -0,0 +1 @@
+xargs_start p {-E EOF} EOFe.xi
diff --git a/xargs/testsuite/xargs.posix/EEOFe.xo b/xargs/testsuite/xargs.posix/EEOFe.xo
new file mode 100644
index 0000000..06fe033
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/EEOFe.xo
@@ -0,0 +1 @@
+one two EOFe three four
diff --git a/xargs/testsuite/xargs.posix/E_-IARG.exp b/xargs/testsuite/xargs.posix/E_-IARG.exp
new file mode 100644
index 0000000..f56c565
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/E_-IARG.exp
@@ -0,0 +1 @@
+xargs_start p {-E_ -IARG echo from ARG to xARGy} eof_.xi
diff --git a/xargs/testsuite/xargs.posix/E_-IARG.xo b/xargs/testsuite/xargs.posix/E_-IARG.xo
new file mode 100644
index 0000000..bb56ab0
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/E_-IARG.xo
@@ -0,0 +1,2 @@
+from one to xoney
+from two to xtwoy
diff --git a/xargs/testsuite/xargs.posix/E_.exp b/xargs/testsuite/xargs.posix/E_.exp
new file mode 100644
index 0000000..8edebbb
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/E_.exp
@@ -0,0 +1 @@
+xargs_start p {-E_} eof_.xi
diff --git a/xargs/testsuite/xargs.posix/E_.xo b/xargs/testsuite/xargs.posix/E_.xo
new file mode 100644
index 0000000..bd46cf2
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/E_.xo
@@ -0,0 +1 @@
+one two
diff --git a/xargs/testsuite/xargs.posix/IARG-E_.exp b/xargs/testsuite/xargs.posix/IARG-E_.exp
new file mode 100644
index 0000000..3a01b2c
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/IARG-E_.exp
@@ -0,0 +1 @@
+xargs_start p {-IARG echo from ARG to xARGy -E_} eof_.xi
diff --git a/xargs/testsuite/xargs.posix/IARG-E_.xo b/xargs/testsuite/xargs.posix/IARG-E_.xo
new file mode 100644
index 0000000..7452a65
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/IARG-E_.xo
@@ -0,0 +1,5 @@
+from one to xoney -E_
+from two to xtwoy -E_
+from _ to x_y -E_
+from three to xthreey -E_
+from four to xfoury -E_
diff --git a/xargs/testsuite/xargs.posix/IARG-s15.exp b/xargs/testsuite/xargs.posix/IARG-s15.exp
new file mode 100644
index 0000000..b237c0a
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/IARG-s15.exp
@@ -0,0 +1 @@
+xargs_start p {-IARG -s15 echo ARG} stairs.xi
diff --git a/xargs/testsuite/xargs.posix/IARG-s15.xo b/xargs/testsuite/xargs.posix/IARG-s15.xo
new file mode 100644
index 0000000..c2a8cce
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/IARG-s15.xo
@@ -0,0 +1,18 @@
+1
+22
+333
+4444
+55555
+666666
+7777777
+88888888
+999999999
+1
+22
+333
+4444
+55555
+666666
+7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.posix/IARG.exp b/xargs/testsuite/xargs.posix/IARG.exp
new file mode 100644
index 0000000..4856221
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/IARG.exp
@@ -0,0 +1 @@
+xargs_start p {-IARG echo from ARG to xARGy} items.xi
diff --git a/xargs/testsuite/xargs.posix/IARG.xo b/xargs/testsuite/xargs.posix/IARG.xo
new file mode 100644
index 0000000..a78e799
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/IARG.xo
@@ -0,0 +1,6 @@
+from dumb to xdumby
+from s s to xs s y
+from f f to xf f y
+from r r to xr r y
+from t t to xt t y
+from v v to xv v y
diff --git a/xargs/testsuite/xargs.posix/L2-n2.exp b/xargs/testsuite/xargs.posix/L2-n2.exp
new file mode 100644
index 0000000..88a939f
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/L2-n2.exp
@@ -0,0 +1 @@
+xargs_start p {-L2 -n2} ldata.xi
diff --git a/xargs/testsuite/xargs.posix/L2-n2.xo b/xargs/testsuite/xargs.posix/L2-n2.xo
new file mode 100644
index 0000000..33d8177
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/L2-n2.xo
@@ -0,0 +1,9 @@
+1 22
+333 4444
+55555 666666
+7777777 88888888
+999999999 1
+22 333
+4444 55555
+666666 7777777
+88888888 999999999
diff --git a/xargs/testsuite/xargs.posix/L2_2.exp b/xargs/testsuite/xargs.posix/L2_2.exp
new file mode 100644
index 0000000..7bc1153
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/L2_2.exp
@@ -0,0 +1 @@
+xargs_start p {-L2} ldatab.xi
diff --git a/xargs/testsuite/xargs.posix/L2_2.xo b/xargs/testsuite/xargs.posix/L2_2.xo
new file mode 100644
index 0000000..f4e7123
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/L2_2.xo
@@ -0,0 +1,3 @@
+1 22 333 4444 55555 666666 7777777 88888888 999999999 1 22
+333 4444 55555 666666 7777777
+88888888 999999999
diff --git a/xargs/testsuite/xargs.posix/L3.exp b/xargs/testsuite/xargs.posix/L3.exp
new file mode 100644
index 0000000..b4d8762
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/L3.exp
@@ -0,0 +1 @@
+xargs_start p {-L3} ldata.xi
diff --git a/xargs/testsuite/xargs.posix/L3.xo b/xargs/testsuite/xargs.posix/L3.xo
new file mode 100644
index 0000000..2cb7fb3
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/L3.xo
@@ -0,0 +1,3 @@
+1 22 333 4444 55555 666666 7777777
+88888888 999999999 1 22 333 4444 55555
+666666 7777777 88888888 999999999
diff --git a/xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp b/xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp
new file mode 100644
index 0000000..106f769
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp
@@ -0,0 +1,12 @@
+#
+# See message from Jim Meyering. <87hdaam57n.fsf_-_@rho.meyering.net>
+#
+# This is because Linux's execve implementation requires that the sum of
+# the sizes of all argument string pointers not exceed 128K (the actual
+# limit is ARG_MAX - sizeof (void*)). The difference between 32- and
+# 64-bit systems is because sizeof (void*) differs (4 vs. 8).
+#
+# Tue Nov 22 19:36:49 2005: Use 'true' rather than 'echo', otherwise the
+# differences in the value of ARG_MAX on various platforms will cause the
+# test to fail.
+xargs_start p { true } 32767-ys.xi
diff --git a/xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp b/xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp
new file mode 100644
index 0000000..90a8622
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp
@@ -0,0 +1,12 @@
+#
+# See message from Jim Meyering. <87hdaam57n.fsf_-_@rho.meyering.net>
+#
+# This is because Linux's execve implementation requires that the sum of
+# the sizes of all argument string pointers not exceed 128K (the actual
+# limit is ARG_MAX - sizeof (void*)). The difference between 32- and
+# 64-bit systems is because sizeof (void*) differs (4 vs. 8).
+#
+# Tue Nov 22 19:36:49 2005: Use 'true' rather than 'echo', otherwise the
+# differences in the value of ARG_MAX on various platforms will cause the
+# test to fail.
+xargs_start p { true } 16383-ys.xi
diff --git a/xargs/testsuite/xargs.posix/childfail.exp b/xargs/testsuite/xargs.posix/childfail.exp
new file mode 100644
index 0000000..d5cdacb
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/childfail.exp
@@ -0,0 +1 @@
+xargs_start 123 { false } files.xi
diff --git a/xargs/testsuite/xargs.posix/empty.exp b/xargs/testsuite/xargs.posix/empty.exp
new file mode 100644
index 0000000..cfab826
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/empty.exp
@@ -0,0 +1 @@
+xargs_start p {echo this plus that}
diff --git a/xargs/testsuite/xargs.posix/empty.xo b/xargs/testsuite/xargs.posix/empty.xo
new file mode 100644
index 0000000..b8e9a02
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/empty.xo
@@ -0,0 +1 @@
+this plus that
diff --git a/xargs/testsuite/xargs.posix/empty_def.exp b/xargs/testsuite/xargs.posix/empty_def.exp
new file mode 100644
index 0000000..765c4bb
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/empty_def.exp
@@ -0,0 +1 @@
+xargs_start p {}
diff --git a/xargs/testsuite/xargs.posix/empty_def.xo b/xargs/testsuite/xargs.posix/empty_def.xo
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/empty_def.xo
@@ -0,0 +1 @@
+
diff --git a/xargs/testsuite/xargs.posix/hithere.exp b/xargs/testsuite/xargs.posix/hithere.exp
new file mode 100644
index 0000000..0256d4b
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/hithere.exp
@@ -0,0 +1 @@
+xargs_start p {-s470 echo hi there} files.xi
diff --git a/xargs/testsuite/xargs.posix/hithere.xo b/xargs/testsuite/xargs.posix/hithere.xo
new file mode 100644
index 0000000..0c6845b
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/hithere.xo
@@ -0,0 +1,2 @@
+hi there /src/gnu/autoconf-1.11 /src/gnu/autoconf-1.11/README /src/gnu/autoconf-1.11/Makefile.in /src/gnu/autoconf-1.11/INSTALL /src/gnu/autoconf-1.11/NEWS /src/gnu/autoconf-1.11/COPYING /src/gnu/autoconf-1.11/ChangeLog /src/gnu/autoconf-1.11/autoconf.texi /src/gnu/autoconf-1.11/acconfig.h /src/gnu/autoconf-1.11/autoconf.sh /src/gnu/autoconf-1.11/acgeneral.m4 /src/gnu/autoconf-1.11/acspecific.m4 /src/gnu/autoconf-1.11/configure
+hi there /src/gnu/autoconf-1.11/configure.in /src/gnu/autoconf-1.11/autoheader.sh /src/gnu/autoconf-1.11/mkinstalldirs /src/gnu/autoconf-1.11/install.sh /src/gnu/autoconf-1.11/autoconf.info /src/gnu/autoconf-1.11/standards.texi /src/gnu/autoconf-1.11/make-stds.texi /src/gnu/autoconf-1.11/standards.info /src/gnu/autoconf-1.11/texinfo.tex
diff --git a/xargs/testsuite/xargs.posix/n1.exp b/xargs/testsuite/xargs.posix/n1.exp
new file mode 100644
index 0000000..40ddc9e
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n1.exp
@@ -0,0 +1 @@
+xargs_start p {-n1} stairs.xi
diff --git a/xargs/testsuite/xargs.posix/n1.xo b/xargs/testsuite/xargs.posix/n1.xo
new file mode 100644
index 0000000..c2a8cce
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n1.xo
@@ -0,0 +1,18 @@
+1
+22
+333
+4444
+55555
+666666
+7777777
+88888888
+999999999
+1
+22
+333
+4444
+55555
+666666
+7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.posix/n2-s21-x.exp b/xargs/testsuite/xargs.posix/n2-s21-x.exp
new file mode 100644
index 0000000..5f799a9
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n2-s21-x.exp
@@ -0,0 +1 @@
+xargs_start f {-n2 -s21 -x} stairs.xi skip
diff --git a/xargs/testsuite/xargs.posix/n2-s21-x.xo b/xargs/testsuite/xargs.posix/n2-s21-x.xo
new file mode 100644
index 0000000..7b6db82
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n2-s21-x.xo
@@ -0,0 +1,3 @@
+1 22
+333 4444
+55555 666666
diff --git a/xargs/testsuite/xargs.posix/n2-s21.exp b/xargs/testsuite/xargs.posix/n2-s21.exp
new file mode 100644
index 0000000..61cb60b
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n2-s21.exp
@@ -0,0 +1 @@
+xargs_start p {-n2 -s21} stairs.xi
diff --git a/xargs/testsuite/xargs.posix/n2-s21.xo b/xargs/testsuite/xargs.posix/n2-s21.xo
new file mode 100644
index 0000000..a9e8dfa
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n2-s21.xo
@@ -0,0 +1,11 @@
+1 22
+333 4444
+55555 666666
+7777777
+88888888
+999999999 1
+22 333
+4444 55555
+666666 7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.posix/n2.exp b/xargs/testsuite/xargs.posix/n2.exp
new file mode 100644
index 0000000..6bcbad2
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n2.exp
@@ -0,0 +1 @@
+xargs_start p {-n2} stairs.xi
diff --git a/xargs/testsuite/xargs.posix/n2.xo b/xargs/testsuite/xargs.posix/n2.xo
new file mode 100644
index 0000000..33d8177
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n2.xo
@@ -0,0 +1,9 @@
+1 22
+333 4444
+55555 666666
+7777777 88888888
+999999999 1
+22 333
+4444 55555
+666666 7777777
+88888888 999999999
diff --git a/xargs/testsuite/xargs.posix/n3-s31.exp b/xargs/testsuite/xargs.posix/n3-s31.exp
new file mode 100644
index 0000000..a49943e
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n3-s31.exp
@@ -0,0 +1 @@
+xargs_start p {-n3 -s31} stairs2.xi
diff --git a/xargs/testsuite/xargs.posix/n3-s31.xo b/xargs/testsuite/xargs.posix/n3-s31.xo
new file mode 100644
index 0000000..7484486
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n3-s31.xo
@@ -0,0 +1,7 @@
+999999999 88888888
+7777777 666666 55555
+4444 333 22
+1 999999999 88888888
+7777777 666666 55555
+4444 333 22
+1
diff --git a/xargs/testsuite/xargs.posix/n3.exp b/xargs/testsuite/xargs.posix/n3.exp
new file mode 100644
index 0000000..472b614
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n3.exp
@@ -0,0 +1 @@
+xargs_start p {-n3} files.xi
diff --git a/xargs/testsuite/xargs.posix/n3.xo b/xargs/testsuite/xargs.posix/n3.xo
new file mode 100644
index 0000000..e663e64
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/n3.xo
@@ -0,0 +1,8 @@
+/src/gnu/autoconf-1.11 /src/gnu/autoconf-1.11/README /src/gnu/autoconf-1.11/Makefile.in
+/src/gnu/autoconf-1.11/INSTALL /src/gnu/autoconf-1.11/NEWS /src/gnu/autoconf-1.11/COPYING
+/src/gnu/autoconf-1.11/ChangeLog /src/gnu/autoconf-1.11/autoconf.texi /src/gnu/autoconf-1.11/acconfig.h
+/src/gnu/autoconf-1.11/autoconf.sh /src/gnu/autoconf-1.11/acgeneral.m4 /src/gnu/autoconf-1.11/acspecific.m4
+/src/gnu/autoconf-1.11/configure /src/gnu/autoconf-1.11/configure.in /src/gnu/autoconf-1.11/autoheader.sh
+/src/gnu/autoconf-1.11/mkinstalldirs /src/gnu/autoconf-1.11/install.sh /src/gnu/autoconf-1.11/autoconf.info
+/src/gnu/autoconf-1.11/standards.texi /src/gnu/autoconf-1.11/make-stds.texi /src/gnu/autoconf-1.11/standards.info
+/src/gnu/autoconf-1.11/texinfo.tex
diff --git a/xargs/testsuite/xargs.posix/noeof.exp b/xargs/testsuite/xargs.posix/noeof.exp
new file mode 100644
index 0000000..ad49437
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/noeof.exp
@@ -0,0 +1 @@
+xargs_start p {} noeof.xi
diff --git a/xargs/testsuite/xargs.posix/noeof.xo b/xargs/testsuite/xargs.posix/noeof.xo
new file mode 100644
index 0000000..45f9997
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/noeof.xo
@@ -0,0 +1 @@
+first second
diff --git a/xargs/testsuite/xargs.posix/quotes.exp b/xargs/testsuite/xargs.posix/quotes.exp
new file mode 100644
index 0000000..574e1ec
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/quotes.exp
@@ -0,0 +1 @@
+xargs_start p {} quotes.xi
diff --git a/xargs/testsuite/xargs.posix/quotes.xo b/xargs/testsuite/xargs.posix/quotes.xo
new file mode 100644
index 0000000..9b6477f
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/quotes.xo
@@ -0,0 +1,2 @@
+this is quoted stuff and
+an embedded newline with single quotes as well.
diff --git a/xargs/testsuite/xargs.posix/rc-123.exp b/xargs/testsuite/xargs.posix/rc-123.exp
new file mode 100644
index 0000000..217de0f
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/rc-123.exp
@@ -0,0 +1 @@
+xargs_start 123 {-n1 -IARG sh -c ARG} ftt.xi
diff --git a/xargs/testsuite/xargs.posix/rc-123.xo b/xargs/testsuite/xargs.posix/rc-123.xo
new file mode 100644
index 0000000..1191247
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/rc-123.xo
@@ -0,0 +1,2 @@
+1
+2
diff --git a/xargs/testsuite/xargs.posix/rc-124.exp b/xargs/testsuite/xargs.posix/rc-124.exp
new file mode 100644
index 0000000..4fe3aba
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/rc-124.exp
@@ -0,0 +1 @@
+xargs_start 124 {-n1 -IARG sh -c ARG} ett.xi skip
diff --git a/xargs/testsuite/xargs.posix/rc-125.exp b/xargs/testsuite/xargs.posix/rc-125.exp
new file mode 100644
index 0000000..4284ac5
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/rc-125.exp
@@ -0,0 +1,11 @@
+#
+# The technique of using "kill $$" is unreliable. For example,
+# on MacOS X, the child just exits with a nonzero status.
+# This works better but is harder to use in a DejaGnu test:
+# yes | xargs -I{} echo | true
+# Part of the problem here of course is that the exit status of the
+# pipeline is the exit status of its last compinent.
+#
+# This problem is recorded as Savannah bug# 19969.
+#
+xargs_start 125 {-n1 -IARG sh -c ARG} stt.xi skip
diff --git a/xargs/testsuite/xargs.posix/rc-126.exp b/xargs/testsuite/xargs.posix/rc-126.exp
new file mode 100644
index 0000000..17cb9f4
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/rc-126.exp
@@ -0,0 +1 @@
+xargs_start 126 {/} {} skip
diff --git a/xargs/testsuite/xargs.posix/rc-127.exp b/xargs/testsuite/xargs.posix/rc-127.exp
new file mode 100644
index 0000000..8e4278a
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/rc-127.exp
@@ -0,0 +1 @@
+xargs_start 127 {./missing} {} skip
diff --git a/xargs/testsuite/xargs.posix/s118.exp b/xargs/testsuite/xargs.posix/s118.exp
new file mode 100644
index 0000000..1f0fc9f
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s118.exp
@@ -0,0 +1 @@
+xargs_start p {-s118} stairs.xi
diff --git a/xargs/testsuite/xargs.posix/s118.xo b/xargs/testsuite/xargs.posix/s118.xo
new file mode 100644
index 0000000..06b617a
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s118.xo
@@ -0,0 +1 @@
+1 22 333 4444 55555 666666 7777777 88888888 999999999 1 22 333 4444 55555 666666 7777777 88888888 999999999
diff --git a/xargs/testsuite/xargs.posix/s14.exp b/xargs/testsuite/xargs.posix/s14.exp
new file mode 100644
index 0000000..22b8188
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s14.exp
@@ -0,0 +1 @@
+xargs_start f {-s14} stairs.xi skip
diff --git a/xargs/testsuite/xargs.posix/s14.xo b/xargs/testsuite/xargs.posix/s14.xo
new file mode 100644
index 0000000..afb3bc3
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s14.xo
@@ -0,0 +1,6 @@
+1 22 333
+4444
+55555
+666666
+7777777
+88888888
diff --git a/xargs/testsuite/xargs.posix/s14_2.exp b/xargs/testsuite/xargs.posix/s14_2.exp
new file mode 100644
index 0000000..2a0470b
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s14_2.exp
@@ -0,0 +1 @@
+xargs_start f {-s14} stairs2.xi skip
diff --git a/xargs/testsuite/xargs.posix/s15.exp b/xargs/testsuite/xargs.posix/s15.exp
new file mode 100644
index 0000000..6576fa8
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s15.exp
@@ -0,0 +1 @@
+xargs_start p {-s15} stairs.xi
diff --git a/xargs/testsuite/xargs.posix/s15.xo b/xargs/testsuite/xargs.posix/s15.xo
new file mode 100644
index 0000000..7f7032e
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s15.xo
@@ -0,0 +1,14 @@
+1 22 333
+4444
+55555
+666666
+7777777
+88888888
+999999999
+1 22 333
+4444
+55555
+666666
+7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.posix/s25.exp b/xargs/testsuite/xargs.posix/s25.exp
new file mode 100644
index 0000000..ac3ba41
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s25.exp
@@ -0,0 +1 @@
+xargs_start p {-s25} stairs.xi
diff --git a/xargs/testsuite/xargs.posix/s25.xo b/xargs/testsuite/xargs.posix/s25.xo
new file mode 100644
index 0000000..64ba7cb
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s25.xo
@@ -0,0 +1,6 @@
+1 22 333 4444 55555
+666666 7777777
+88888888 999999999
+1 22 333 4444 55555
+666666 7777777
+88888888 999999999
diff --git a/xargs/testsuite/xargs.posix/s42.exp b/xargs/testsuite/xargs.posix/s42.exp
new file mode 100644
index 0000000..5f50ae0
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s42.exp
@@ -0,0 +1 @@
+xargs_start f {-s42} files.xi skip
diff --git a/xargs/testsuite/xargs.posix/s42.xo b/xargs/testsuite/xargs.posix/s42.xo
new file mode 100644
index 0000000..26eed8f
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s42.xo
@@ -0,0 +1,18 @@
+/src/gnu/autoconf-1.11
+/src/gnu/autoconf-1.11/README
+/src/gnu/autoconf-1.11/Makefile.in
+/src/gnu/autoconf-1.11/INSTALL
+/src/gnu/autoconf-1.11/NEWS
+/src/gnu/autoconf-1.11/COPYING
+/src/gnu/autoconf-1.11/ChangeLog
+/src/gnu/autoconf-1.11/autoconf.texi
+/src/gnu/autoconf-1.11/acconfig.h
+/src/gnu/autoconf-1.11/autoconf.sh
+/src/gnu/autoconf-1.11/acgeneral.m4
+/src/gnu/autoconf-1.11/acspecific.m4
+/src/gnu/autoconf-1.11/configure
+/src/gnu/autoconf-1.11/configure.in
+/src/gnu/autoconf-1.11/autoheader.sh
+/src/gnu/autoconf-1.11/mkinstalldirs
+/src/gnu/autoconf-1.11/install.sh
+/src/gnu/autoconf-1.11/autoconf.info
diff --git a/xargs/testsuite/xargs.posix/s470.exp b/xargs/testsuite/xargs.posix/s470.exp
new file mode 100644
index 0000000..5828ce6
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s470.exp
@@ -0,0 +1 @@
+xargs_start p {-s470} files.xi skip
diff --git a/xargs/testsuite/xargs.posix/s470.xo b/xargs/testsuite/xargs.posix/s470.xo
new file mode 100644
index 0000000..8107725
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s470.xo
@@ -0,0 +1,2 @@
+/src/gnu/autoconf-1.11 /src/gnu/autoconf-1.11/README /src/gnu/autoconf-1.11/Makefile.in /src/gnu/autoconf-1.11/INSTALL /src/gnu/autoconf-1.11/NEWS /src/gnu/autoconf-1.11/COPYING /src/gnu/autoconf-1.11/ChangeLog /src/gnu/autoconf-1.11/autoconf.texi /src/gnu/autoconf-1.11/acconfig.h /src/gnu/autoconf-1.11/autoconf.sh /src/gnu/autoconf-1.11/acgeneral.m4 /src/gnu/autoconf-1.11/acspecific.m4 /src/gnu/autoconf-1.11/configure /src/gnu/autoconf-1.11/configure.in
+/src/gnu/autoconf-1.11/autoheader.sh /src/gnu/autoconf-1.11/mkinstalldirs /src/gnu/autoconf-1.11/install.sh /src/gnu/autoconf-1.11/autoconf.info /src/gnu/autoconf-1.11/standards.texi /src/gnu/autoconf-1.11/make-stds.texi /src/gnu/autoconf-1.11/standards.info /src/gnu/autoconf-1.11/texinfo.tex
diff --git a/xargs/testsuite/xargs.posix/s48.exp b/xargs/testsuite/xargs.posix/s48.exp
new file mode 100644
index 0000000..506e77b
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s48.exp
@@ -0,0 +1 @@
+xargs_start p {-s48} files.xi
diff --git a/xargs/testsuite/xargs.posix/s48.xo b/xargs/testsuite/xargs.posix/s48.xo
new file mode 100644
index 0000000..5590252
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s48.xo
@@ -0,0 +1,22 @@
+/src/gnu/autoconf-1.11
+/src/gnu/autoconf-1.11/README
+/src/gnu/autoconf-1.11/Makefile.in
+/src/gnu/autoconf-1.11/INSTALL
+/src/gnu/autoconf-1.11/NEWS
+/src/gnu/autoconf-1.11/COPYING
+/src/gnu/autoconf-1.11/ChangeLog
+/src/gnu/autoconf-1.11/autoconf.texi
+/src/gnu/autoconf-1.11/acconfig.h
+/src/gnu/autoconf-1.11/autoconf.sh
+/src/gnu/autoconf-1.11/acgeneral.m4
+/src/gnu/autoconf-1.11/acspecific.m4
+/src/gnu/autoconf-1.11/configure
+/src/gnu/autoconf-1.11/configure.in
+/src/gnu/autoconf-1.11/autoheader.sh
+/src/gnu/autoconf-1.11/mkinstalldirs
+/src/gnu/autoconf-1.11/install.sh
+/src/gnu/autoconf-1.11/autoconf.info
+/src/gnu/autoconf-1.11/standards.texi
+/src/gnu/autoconf-1.11/make-stds.texi
+/src/gnu/autoconf-1.11/standards.info
+/src/gnu/autoconf-1.11/texinfo.tex
diff --git a/xargs/testsuite/xargs.posix/s6.exp b/xargs/testsuite/xargs.posix/s6.exp
new file mode 100644
index 0000000..a5a714f
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/s6.exp
@@ -0,0 +1 @@
+xargs_start f {-s6} files.xi skip
diff --git a/xargs/testsuite/xargs.posix/savannah-11865.exp b/xargs/testsuite/xargs.posix/savannah-11865.exp
new file mode 100644
index 0000000..fa7d41a
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/savannah-11865.exp
@@ -0,0 +1 @@
+xargs_start p {-iARG -s86 echo ARG is xARGx} files.xi
diff --git a/xargs/testsuite/xargs.posix/savannah-11865.xo b/xargs/testsuite/xargs.posix/savannah-11865.xo
new file mode 100644
index 0000000..f28510b
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/savannah-11865.xo
@@ -0,0 +1,22 @@
+/src/gnu/autoconf-1.11 is x/src/gnu/autoconf-1.11x
+/src/gnu/autoconf-1.11/README is x/src/gnu/autoconf-1.11/READMEx
+/src/gnu/autoconf-1.11/Makefile.in is x/src/gnu/autoconf-1.11/Makefile.inx
+/src/gnu/autoconf-1.11/INSTALL is x/src/gnu/autoconf-1.11/INSTALLx
+/src/gnu/autoconf-1.11/NEWS is x/src/gnu/autoconf-1.11/NEWSx
+/src/gnu/autoconf-1.11/COPYING is x/src/gnu/autoconf-1.11/COPYINGx
+/src/gnu/autoconf-1.11/ChangeLog is x/src/gnu/autoconf-1.11/ChangeLogx
+/src/gnu/autoconf-1.11/autoconf.texi is x/src/gnu/autoconf-1.11/autoconf.texix
+/src/gnu/autoconf-1.11/acconfig.h is x/src/gnu/autoconf-1.11/acconfig.hx
+/src/gnu/autoconf-1.11/autoconf.sh is x/src/gnu/autoconf-1.11/autoconf.shx
+/src/gnu/autoconf-1.11/acgeneral.m4 is x/src/gnu/autoconf-1.11/acgeneral.m4x
+/src/gnu/autoconf-1.11/acspecific.m4 is x/src/gnu/autoconf-1.11/acspecific.m4x
+/src/gnu/autoconf-1.11/configure is x/src/gnu/autoconf-1.11/configurex
+/src/gnu/autoconf-1.11/configure.in is x/src/gnu/autoconf-1.11/configure.inx
+/src/gnu/autoconf-1.11/autoheader.sh is x/src/gnu/autoconf-1.11/autoheader.shx
+/src/gnu/autoconf-1.11/mkinstalldirs is x/src/gnu/autoconf-1.11/mkinstalldirsx
+/src/gnu/autoconf-1.11/install.sh is x/src/gnu/autoconf-1.11/install.shx
+/src/gnu/autoconf-1.11/autoconf.info is x/src/gnu/autoconf-1.11/autoconf.infox
+/src/gnu/autoconf-1.11/standards.texi is x/src/gnu/autoconf-1.11/standards.texix
+/src/gnu/autoconf-1.11/make-stds.texi is x/src/gnu/autoconf-1.11/make-stds.texix
+/src/gnu/autoconf-1.11/standards.info is x/src/gnu/autoconf-1.11/standards.infox
+/src/gnu/autoconf-1.11/texinfo.tex is x/src/gnu/autoconf-1.11/texinfo.texx
diff --git a/xargs/testsuite/xargs.posix/space-I.exp b/xargs/testsuite/xargs.posix/space-I.exp
new file mode 100644
index 0000000..69eb0b7
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/space-I.exp
@@ -0,0 +1 @@
+xargs_start p {-IARG echo from ARG to xARGy} space.xi
diff --git a/xargs/testsuite/xargs.posix/space.exp b/xargs/testsuite/xargs.posix/space.exp
new file mode 100644
index 0000000..3ba833b
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/space.exp
@@ -0,0 +1 @@
+xargs_start p {echo this plus that} space.xi
diff --git a/xargs/testsuite/xargs.posix/space.xo b/xargs/testsuite/xargs.posix/space.xo
new file mode 100644
index 0000000..b8e9a02
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/space.xo
@@ -0,0 +1 @@
+this plus that
diff --git a/xargs/testsuite/xargs.posix/sv-bug-18714.exp b/xargs/testsuite/xargs.posix/sv-bug-18714.exp
new file mode 100644
index 0000000..68739ed
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/sv-bug-18714.exp
@@ -0,0 +1,10 @@
+# Form feed is not a separator.
+#
+# POSIX specifies that <blank> is the serarator
+# in the POSIX locale, and <blank> is defined
+# as <SPC> or <TAB>.
+#
+# On the other hand, <space> includes Form Feed and
+# Vertical Tab. By default, those should not be
+# separators.
+xargs_start p {printf "\[%s\]\n"} formfeeds.xi
diff --git a/xargs/testsuite/xargs.posix/sv-bug-18714.xo b/xargs/testsuite/xargs.posix/sv-bug-18714.xo
new file mode 100644
index 0000000..5ec9a95
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/sv-bug-18714.xo
@@ -0,0 +1,2 @@
+[1 2 3 4]
+[a b c d]
diff --git a/xargs/testsuite/xargs.posix/sv-bug-18714b.exp b/xargs/testsuite/xargs.posix/sv-bug-18714b.exp
new file mode 100644
index 0000000..9e9c4d5
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/sv-bug-18714b.exp
@@ -0,0 +1,10 @@
+# Vertical tab is not a separator.
+#
+# POSIX specifies that <blank> is the serarator
+# in the POSIX locale, and <blank> is defined
+# as <SPC> or <TAB>.
+#
+# On the other hand, <space> includes Form Feed and
+# Vertical Tab. By default, those should not be
+# separators.
+xargs_start p {printf "\[%s\]\n"} verticaltabs.xi
diff --git a/xargs/testsuite/xargs.posix/sv-bug-18714b.xo b/xargs/testsuite/xargs.posix/sv-bug-18714b.xo
new file mode 100644
index 0000000..ec33986
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/sv-bug-18714b.xo
@@ -0,0 +1,2 @@
+[q w e r]
+[6 7 8 9]
diff --git a/xargs/testsuite/xargs.posix/sv-bug-20273.exp b/xargs/testsuite/xargs.posix/sv-bug-20273.exp
new file mode 100644
index 0000000..6d069e2
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/sv-bug-20273.exp
@@ -0,0 +1 @@
+xargs_start p "" sv-bug-20273.xi "" "sh -c \{$XARGS $XARGSFLAGS -E2; cat\}"
diff --git a/xargs/testsuite/xargs.posix/sv-bug-20273.xo b/xargs/testsuite/xargs.posix/sv-bug-20273.xo
new file mode 100644
index 0000000..2b2f2e1
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/sv-bug-20273.xo
@@ -0,0 +1,2 @@
+1
+3
diff --git a/xargs/testsuite/xargs.posix/uc_L2.exp b/xargs/testsuite/xargs.posix/uc_L2.exp
new file mode 100644
index 0000000..8ad3dd7
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/uc_L2.exp
@@ -0,0 +1 @@
+xargs_start p {-L2} ldata.xi
diff --git a/xargs/testsuite/xargs.posix/uc_L2.xo b/xargs/testsuite/xargs.posix/uc_L2.xo
new file mode 100644
index 0000000..7234702
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/uc_L2.xo
@@ -0,0 +1,5 @@
+1 22 333 4444 55555 666666
+7777777 88888888
+999999999 1 22 333 4444 55555
+666666 7777777 88888888
+999999999
diff --git a/xargs/testsuite/xargs.posix/unmatched-n2-x.exp b/xargs/testsuite/xargs.posix/unmatched-n2-x.exp
new file mode 100644
index 0000000..720b48f
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/unmatched-n2-x.exp
@@ -0,0 +1 @@
+xargs_start f {-n2 -x} unmatched.xi skip
diff --git a/xargs/testsuite/xargs.posix/unmatched.exp b/xargs/testsuite/xargs.posix/unmatched.exp
new file mode 100644
index 0000000..a98c920
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/unmatched.exp
@@ -0,0 +1 @@
+xargs_start f {} unmatched.xi skip
diff --git a/xargs/testsuite/xargs.posix/unmatched.xo b/xargs/testsuite/xargs.posix/unmatched.xo
new file mode 100644
index 0000000..5626abf
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/unmatched.xo
@@ -0,0 +1 @@
+one
diff --git a/xargs/testsuite/xargs.posix/unmatched2.exp b/xargs/testsuite/xargs.posix/unmatched2.exp
new file mode 100644
index 0000000..12b17f3
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/unmatched2.exp
@@ -0,0 +1 @@
+xargs_start f {} unmatched2.xi skip
diff --git a/xargs/testsuite/xargs.posix/unmatched2.xo b/xargs/testsuite/xargs.posix/unmatched2.xo
new file mode 100644
index 0000000..5626abf
--- /dev/null
+++ b/xargs/testsuite/xargs.posix/unmatched2.xo
@@ -0,0 +1 @@
+one
diff --git a/xargs/testsuite/xargs.sysv/e.exp b/xargs/testsuite/xargs.sysv/e.exp
new file mode 100644
index 0000000..86c3af1
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/e.exp
@@ -0,0 +1 @@
+xargs_start p {-e} eof_.xi
diff --git a/xargs/testsuite/xargs.sysv/e.xo b/xargs/testsuite/xargs.sysv/e.xo
new file mode 100644
index 0000000..28a9314
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/e.xo
@@ -0,0 +1 @@
+one two _ three four
diff --git a/xargs/testsuite/xargs.sysv/eEOF.exp b/xargs/testsuite/xargs.sysv/eEOF.exp
new file mode 100644
index 0000000..8ac68aa
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/eEOF.exp
@@ -0,0 +1 @@
+xargs_start p {-eEOF} eofstr.xi
diff --git a/xargs/testsuite/xargs.sysv/eEOF.xo b/xargs/testsuite/xargs.sysv/eEOF.xo
new file mode 100644
index 0000000..7f4c1cd
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/eEOF.xo
@@ -0,0 +1 @@
+firstline secondline
diff --git a/xargs/testsuite/xargs.sysv/empty-t.exp b/xargs/testsuite/xargs.sysv/empty-t.exp
new file mode 100644
index 0000000..8047015
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/empty-t.exp
@@ -0,0 +1 @@
+xargs_start p {-t echo this plus that}
diff --git a/xargs/testsuite/xargs.sysv/empty-t.xe b/xargs/testsuite/xargs.sysv/empty-t.xe
new file mode 100644
index 0000000..ec9c43d
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/empty-t.xe
@@ -0,0 +1 @@
+echo this plus that
diff --git a/xargs/testsuite/xargs.sysv/empty-t.xo b/xargs/testsuite/xargs.sysv/empty-t.xo
new file mode 100644
index 0000000..b8e9a02
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/empty-t.xo
@@ -0,0 +1 @@
+this plus that
diff --git a/xargs/testsuite/xargs.sysv/empty_def-t.exp b/xargs/testsuite/xargs.sysv/empty_def-t.exp
new file mode 100644
index 0000000..2f1e9b9
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/empty_def-t.exp
@@ -0,0 +1 @@
+xargs_start p {-t}
diff --git a/xargs/testsuite/xargs.sysv/empty_def-t.xe b/xargs/testsuite/xargs.sysv/empty_def-t.xe
new file mode 100644
index 0000000..1aa4903
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/empty_def-t.xe
@@ -0,0 +1 @@
+echo
diff --git a/xargs/testsuite/xargs.sysv/empty_def-t.xo b/xargs/testsuite/xargs.sysv/empty_def-t.xo
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/empty_def-t.xo
@@ -0,0 +1 @@
+
diff --git a/xargs/testsuite/xargs.sysv/eof1.exp b/xargs/testsuite/xargs.sysv/eof1.exp
new file mode 100644
index 0000000..ca178e8
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/eof1.exp
@@ -0,0 +1 @@
+xargs_start p {-E_} eof1.xi
diff --git a/xargs/testsuite/xargs.sysv/eof1.xo b/xargs/testsuite/xargs.sysv/eof1.xo
new file mode 100644
index 0000000..7f4c1cd
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/eof1.xo
@@ -0,0 +1 @@
+firstline secondline
diff --git a/xargs/testsuite/xargs.sysv/iARG.exp b/xargs/testsuite/xargs.sysv/iARG.exp
new file mode 100644
index 0000000..2e2ec75
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/iARG.exp
@@ -0,0 +1 @@
+xargs_start p {-iARG echo ARG is xARGx} files.xi
diff --git a/xargs/testsuite/xargs.sysv/iARG.xo b/xargs/testsuite/xargs.sysv/iARG.xo
new file mode 100644
index 0000000..f28510b
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/iARG.xo
@@ -0,0 +1,22 @@
+/src/gnu/autoconf-1.11 is x/src/gnu/autoconf-1.11x
+/src/gnu/autoconf-1.11/README is x/src/gnu/autoconf-1.11/READMEx
+/src/gnu/autoconf-1.11/Makefile.in is x/src/gnu/autoconf-1.11/Makefile.inx
+/src/gnu/autoconf-1.11/INSTALL is x/src/gnu/autoconf-1.11/INSTALLx
+/src/gnu/autoconf-1.11/NEWS is x/src/gnu/autoconf-1.11/NEWSx
+/src/gnu/autoconf-1.11/COPYING is x/src/gnu/autoconf-1.11/COPYINGx
+/src/gnu/autoconf-1.11/ChangeLog is x/src/gnu/autoconf-1.11/ChangeLogx
+/src/gnu/autoconf-1.11/autoconf.texi is x/src/gnu/autoconf-1.11/autoconf.texix
+/src/gnu/autoconf-1.11/acconfig.h is x/src/gnu/autoconf-1.11/acconfig.hx
+/src/gnu/autoconf-1.11/autoconf.sh is x/src/gnu/autoconf-1.11/autoconf.shx
+/src/gnu/autoconf-1.11/acgeneral.m4 is x/src/gnu/autoconf-1.11/acgeneral.m4x
+/src/gnu/autoconf-1.11/acspecific.m4 is x/src/gnu/autoconf-1.11/acspecific.m4x
+/src/gnu/autoconf-1.11/configure is x/src/gnu/autoconf-1.11/configurex
+/src/gnu/autoconf-1.11/configure.in is x/src/gnu/autoconf-1.11/configure.inx
+/src/gnu/autoconf-1.11/autoheader.sh is x/src/gnu/autoconf-1.11/autoheader.shx
+/src/gnu/autoconf-1.11/mkinstalldirs is x/src/gnu/autoconf-1.11/mkinstalldirsx
+/src/gnu/autoconf-1.11/install.sh is x/src/gnu/autoconf-1.11/install.shx
+/src/gnu/autoconf-1.11/autoconf.info is x/src/gnu/autoconf-1.11/autoconf.infox
+/src/gnu/autoconf-1.11/standards.texi is x/src/gnu/autoconf-1.11/standards.texix
+/src/gnu/autoconf-1.11/make-stds.texi is x/src/gnu/autoconf-1.11/make-stds.texix
+/src/gnu/autoconf-1.11/standards.info is x/src/gnu/autoconf-1.11/standards.infox
+/src/gnu/autoconf-1.11/texinfo.tex is x/src/gnu/autoconf-1.11/texinfo.texx
diff --git a/xargs/testsuite/xargs.sysv/idef-s26.exp b/xargs/testsuite/xargs.sysv/idef-s26.exp
new file mode 100644
index 0000000..348661b
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/idef-s26.exp
@@ -0,0 +1 @@
+xargs_start f {-i -s26 echo from \{\} to x{}y} items.xi skip
diff --git a/xargs/testsuite/xargs.sysv/idef-s26.xo b/xargs/testsuite/xargs.sysv/idef-s26.xo
new file mode 100644
index 0000000..94f1e34
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/idef-s26.xo
@@ -0,0 +1 @@
+from dumb to xdumby
diff --git a/xargs/testsuite/xargs.sysv/idef.exp b/xargs/testsuite/xargs.sysv/idef.exp
new file mode 100644
index 0000000..78049fa
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/idef.exp
@@ -0,0 +1 @@
+xargs_start p {-i echo from \{\} to x{}y} items.xi
diff --git a/xargs/testsuite/xargs.sysv/idef.xo b/xargs/testsuite/xargs.sysv/idef.xo
new file mode 100644
index 0000000..a78e799
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/idef.xo
@@ -0,0 +1,6 @@
+from dumb to xdumby
+from s s to xs s y
+from f f to xf f y
+from r r to xr r y
+from t t to xt t y
+from v v to xv v y
diff --git a/xargs/testsuite/xargs.sysv/iquotes.exp b/xargs/testsuite/xargs.sysv/iquotes.exp
new file mode 100644
index 0000000..43b8877
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/iquotes.exp
@@ -0,0 +1 @@
+xargs_start p {-i__ echo FIRST __ IS OK} quotes.xi
diff --git a/xargs/testsuite/xargs.sysv/iquotes.xo b/xargs/testsuite/xargs.sysv/iquotes.xo
new file mode 100644
index 0000000..10ce85c
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/iquotes.xo
@@ -0,0 +1,5 @@
+FIRST this is IS OK
+FIRST quoted stuff IS OK
+FIRST and
+an embedded newline IS OK
+FIRST with single quotes as well. IS OK
diff --git a/xargs/testsuite/xargs.sysv/l1.exp b/xargs/testsuite/xargs.sysv/l1.exp
new file mode 100644
index 0000000..5dbec2a
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/l1.exp
@@ -0,0 +1 @@
+xargs_start p {-l} ldata.xi
diff --git a/xargs/testsuite/xargs.sysv/l1.xo b/xargs/testsuite/xargs.sysv/l1.xo
new file mode 100644
index 0000000..b654880
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/l1.xo
@@ -0,0 +1,9 @@
+1 22 333 4444
+55555 666666
+7777777
+88888888
+999999999 1 22
+333 4444 55555
+666666 7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.sysv/l1_2.exp b/xargs/testsuite/xargs.sysv/l1_2.exp
new file mode 100644
index 0000000..ffb6ad6
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/l1_2.exp
@@ -0,0 +1 @@
+xargs_start p {-l} ldatab.xi
diff --git a/xargs/testsuite/xargs.sysv/l1_2.xo b/xargs/testsuite/xargs.sysv/l1_2.xo
new file mode 100644
index 0000000..f9dc665
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/l1_2.xo
@@ -0,0 +1,6 @@
+1 22 333 4444 55555 666666
+7777777 88888888 999999999 1 22
+333 4444 55555
+666666 7777777
+88888888
+999999999
diff --git a/xargs/testsuite/xargs.sysv/l1n4.exp b/xargs/testsuite/xargs.sysv/l1n4.exp
new file mode 100644
index 0000000..4eef466
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/l1n4.exp
@@ -0,0 +1 @@
+xargs_start p {-l1 -n4} files.xi
diff --git a/xargs/testsuite/xargs.sysv/l1n4.xo b/xargs/testsuite/xargs.sysv/l1n4.xo
new file mode 100644
index 0000000..03f29b5
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/l1n4.xo
@@ -0,0 +1,6 @@
+/src/gnu/autoconf-1.11 /src/gnu/autoconf-1.11/README /src/gnu/autoconf-1.11/Makefile.in /src/gnu/autoconf-1.11/INSTALL
+/src/gnu/autoconf-1.11/NEWS /src/gnu/autoconf-1.11/COPYING /src/gnu/autoconf-1.11/ChangeLog /src/gnu/autoconf-1.11/autoconf.texi
+/src/gnu/autoconf-1.11/acconfig.h /src/gnu/autoconf-1.11/autoconf.sh /src/gnu/autoconf-1.11/acgeneral.m4 /src/gnu/autoconf-1.11/acspecific.m4
+/src/gnu/autoconf-1.11/configure /src/gnu/autoconf-1.11/configure.in /src/gnu/autoconf-1.11/autoheader.sh /src/gnu/autoconf-1.11/mkinstalldirs
+/src/gnu/autoconf-1.11/install.sh /src/gnu/autoconf-1.11/autoconf.info /src/gnu/autoconf-1.11/standards.texi /src/gnu/autoconf-1.11/make-stds.texi
+/src/gnu/autoconf-1.11/standards.info /src/gnu/autoconf-1.11/texinfo.tex
diff --git a/xargs/testsuite/xargs.sysv/lc_l2.exp b/xargs/testsuite/xargs.sysv/lc_l2.exp
new file mode 100644
index 0000000..c50b16c
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/lc_l2.exp
@@ -0,0 +1 @@
+xargs_start p {-l2} files.xi
diff --git a/xargs/testsuite/xargs.sysv/lc_l2.xo b/xargs/testsuite/xargs.sysv/lc_l2.xo
new file mode 100644
index 0000000..0fa9424
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/lc_l2.xo
@@ -0,0 +1,11 @@
+/src/gnu/autoconf-1.11 /src/gnu/autoconf-1.11/README
+/src/gnu/autoconf-1.11/Makefile.in /src/gnu/autoconf-1.11/INSTALL
+/src/gnu/autoconf-1.11/NEWS /src/gnu/autoconf-1.11/COPYING
+/src/gnu/autoconf-1.11/ChangeLog /src/gnu/autoconf-1.11/autoconf.texi
+/src/gnu/autoconf-1.11/acconfig.h /src/gnu/autoconf-1.11/autoconf.sh
+/src/gnu/autoconf-1.11/acgeneral.m4 /src/gnu/autoconf-1.11/acspecific.m4
+/src/gnu/autoconf-1.11/configure /src/gnu/autoconf-1.11/configure.in
+/src/gnu/autoconf-1.11/autoheader.sh /src/gnu/autoconf-1.11/mkinstalldirs
+/src/gnu/autoconf-1.11/install.sh /src/gnu/autoconf-1.11/autoconf.info
+/src/gnu/autoconf-1.11/standards.texi /src/gnu/autoconf-1.11/make-stds.texi
+/src/gnu/autoconf-1.11/standards.info /src/gnu/autoconf-1.11/texinfo.tex
diff --git a/xargs/testsuite/xargs.sysv/s25-t.exp b/xargs/testsuite/xargs.sysv/s25-t.exp
new file mode 100644
index 0000000..9199880
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/s25-t.exp
@@ -0,0 +1 @@
+xargs_start p {-s25 -t} stairs.xi
diff --git a/xargs/testsuite/xargs.sysv/s25-t.xe b/xargs/testsuite/xargs.sysv/s25-t.xe
new file mode 100644
index 0000000..5659900
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/s25-t.xe
@@ -0,0 +1,6 @@
+echo 1 22 333 4444 55555
+echo 666666 7777777
+echo 88888888 999999999
+echo 1 22 333 4444 55555
+echo 666666 7777777
+echo 88888888 999999999
diff --git a/xargs/testsuite/xargs.sysv/s25-t.xo b/xargs/testsuite/xargs.sysv/s25-t.xo
new file mode 100644
index 0000000..64ba7cb
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/s25-t.xo
@@ -0,0 +1,6 @@
+1 22 333 4444 55555
+666666 7777777
+88888888 999999999
+1 22 333 4444 55555
+666666 7777777
+88888888 999999999
diff --git a/xargs/testsuite/xargs.sysv/space-t.exp b/xargs/testsuite/xargs.sysv/space-t.exp
new file mode 100644
index 0000000..1d9c857
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/space-t.exp
@@ -0,0 +1 @@
+xargs_start p {-t echo this plus that} space.xi
diff --git a/xargs/testsuite/xargs.sysv/space-t.xe b/xargs/testsuite/xargs.sysv/space-t.xe
new file mode 100644
index 0000000..ec9c43d
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/space-t.xe
@@ -0,0 +1 @@
+echo this plus that
diff --git a/xargs/testsuite/xargs.sysv/space-t.xo b/xargs/testsuite/xargs.sysv/space-t.xo
new file mode 100644
index 0000000..b8e9a02
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/space-t.xo
@@ -0,0 +1 @@
+this plus that
diff --git a/xargs/testsuite/xargs.sysv/sv-bug-18713.exp b/xargs/testsuite/xargs.sysv/sv-bug-18713.exp
new file mode 100644
index 0000000..036d092
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/sv-bug-18713.exp
@@ -0,0 +1 @@
+xargs_start p {-n1 printf "@%s@\n"} empty.xi
diff --git a/xargs/testsuite/xargs.sysv/sv-bug-18713.xo b/xargs/testsuite/xargs.sysv/sv-bug-18713.xo
new file mode 100644
index 0000000..9225e36
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/sv-bug-18713.xo
@@ -0,0 +1,7 @@
+@foo@
+@@
+@bar@
+@baz@
+@@
+@@
+@fnord@
diff --git a/xargs/testsuite/xargs.sysv/trace.exp b/xargs/testsuite/xargs.sysv/trace.exp
new file mode 100644
index 0000000..c8364ff
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/trace.exp
@@ -0,0 +1 @@
+xargs_start p {-n2 -t echo } foobar.xi
diff --git a/xargs/testsuite/xargs.sysv/trace.xe b/xargs/testsuite/xargs.sysv/trace.xe
new file mode 100644
index 0000000..dfbe22e
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/trace.xe
@@ -0,0 +1,2 @@
+echo foo bar
+echo baz ugh
diff --git a/xargs/testsuite/xargs.sysv/trace.xo b/xargs/testsuite/xargs.sysv/trace.xo
new file mode 100644
index 0000000..171b5a3
--- /dev/null
+++ b/xargs/testsuite/xargs.sysv/trace.xo
@@ -0,0 +1,2 @@
+foo bar
+baz ugh
diff --git a/xargs/xargs.1 b/xargs/xargs.1
new file mode 100644
index 0000000..b055529
--- /dev/null
+++ b/xargs/xargs.1
@@ -0,0 +1,505 @@
+.TH XARGS 1 \" -*- nroff -*-
+.SH NAME
+xargs \- build and execute command lines from standard input
+.SH SYNOPSIS
+.B xargs
+.nh
+[\fB\-0prtx\fR]
+[\fB\-E \fIeof-str\fR]
+[\fB\-e\fR[\fIeof-str\fR]]
+[\fB\-\-eof\fR[=\fIeof-str\fR]]
+[\fB\-\-null\fR]
+[\fB\-d \fIdelimiter\fR]
+[\fB\-\-delimiter \fIdelimiter\fR]
+[\fB\-I \fIreplace-str\fR]
+[\fB\-i\fR[\fIreplace-str\fR]]
+[\fB\-\-replace\fR[=\fIreplace-str\fR]]
+[\fB\-l\fR[\fImax-lines\fR]]
+[\fB\-L \fImax-lines\fR]
+[\fB\-\-max\-lines\fR[=\fImax-lines\fR]]
+[\fB\-n \fImax-args\fR]
+[\fB\-\-max\-args\fR=\fImax-args\fR]
+[\fB\-s \fImax-chars\fR]
+[\fB\-\-max\-chars\fR=\fImax-chars\fR]
+[\fB\-P \fImax-procs\fR]
+[\fB\-\-max\-procs\fR=\fImax-procs\fR]
+[\fB\-\-process\-slot\-var\fR=\fIname\fR]
+[\fB\-\-interactive\fR]
+[\fB\-\-verbose\fR]
+[\fB\-\-exit\fR]
+[\fB\-\-no\-run\-if\-empty\fR]
+[\fB\-\-arg\-file\fR=\fIfile\fR]
+[\fB\-\-show\-limits\fR]
+[\fB\-\-version\fR]
+[\fB\-\-help\fR]
+[\fIcommand\fR [\fIinitial-arguments\fR]]
+.hy
+.SH DESCRIPTION
+This manual page
+documents the GNU version of
+.BR xargs .
+.B xargs
+reads items from the standard input, delimited by blanks (which can be
+protected with double or single quotes or a backslash) or newlines,
+and executes the
+.I command
+(default is
+.IR /bin/echo )
+one or more times with any
+.I initial-arguments
+followed by items read from standard input. Blank lines on the
+standard input are ignored.
+.P
+The command line for
+.I command
+is built up until it reaches a system-defined limit (unless the
+.B \-n
+and
+.B \-L
+options are used). The specified
+.I command
+will be invoked as many times as necessary to use up the list of input
+items. In general, there will be many fewer invocations of
+.I command
+than there were items in the input. This will normally have
+significant performance benefits. Some commands can usefully be
+executed in parallel too; see the
+.B \-P
+option.
+.P
+Because Unix filenames can contain blanks and newlines, this default
+behaviour is often problematic; filenames containing blanks
+and/or newlines are incorrectly processed by
+.BR xargs .
+In these situations it is better to use the
+.B \-0
+option, which
+prevents such problems. When using this option you will need to
+ensure that the program which produces the input for
+.B xargs
+also uses a null character as a separator. If that program is
+GNU
+.B find
+for example, the
+.B \-print0
+option does this for you.
+.P
+If any invocation of the command exits with a status of 255,
+.B xargs
+will stop immediately without reading any further input. An error
+message is issued on stderr when this happens.
+.SH OPTIONS
+.TP
+.PD
+.B \-0, \-\-null
+Input items are terminated by a null character instead of by
+whitespace, and the quotes and backslash are not special (every
+character is taken literally). Disables the end of file string, which
+is treated like any other argument. Useful when input items might
+contain white space, quote marks, or backslashes. The GNU find
+\-print0 option produces input suitable for this mode.
+
+.TP
+.PD
+.BI "\-a " file ", \-\-arg\-file=" file
+Read items from
+.I file
+instead of standard input. If you use this option, stdin remains
+unchanged when commands are run. Otherwise, stdin is redirected
+from
+.IR /dev/null .
+
+.TP
+.PD
+.BI "\-\-delimiter=" delim ", \-d" " delim"
+Input items are terminated by the specified character. The specified
+delimiter may be a single character, a C-style character escape such
+as
+.BR \en ,
+or an octal or hexadecimal escape code. Octal and hexadecimal
+escape codes are understood as for the
+.B printf
+command. Multibyte characters are not supported.
+When processing the input, quotes and backslash are not special; every
+character in the input is taken literally. The
+.B \-d
+option disables any end-of-file string, which is treated like any
+other argument. You can use this option when the input consists of
+simply newline-separated items, although it is almost always better to
+design your program to use
+.B \-\-null
+where this is possible.
+
+.TP
+.BI \-E " eof-str"
+Set the end of file string to \fIeof-str\fR. If the end of file
+string occurs as a line of input, the rest of the input is ignored.
+If neither
+.B \-E
+nor
+.B \-e
+is used, no end of file string is used.
+.TP
+.PD
+.BR \-e "[\fIeof-str\fR], " "\-\-eof" [\fI=eof-str\fR]
+This option is a synonym for the
+.B \-E
+option. Use
+.B \-E
+instead,
+because it is POSIX compliant while this option is not. If
+\fIeof-str\fR is omitted, there is no end of file string. If neither
+.B \-E
+nor
+.B \-e
+is used, no end of file string is used.
+.TP
+.BI \-I " replace-str"
+Replace occurrences of \fIreplace-str\fR in the initial-arguments with
+names read from standard input. Also, unquoted blanks do not
+terminate input items; instead the separator is the newline character.
+Implies
+.B \-x
+and
+.B \-L
+1.
+.TP
+.PD
+.BR \-i "[\fIreplace-str\fR], " "\-\-replace" [\fI=replace-str\fR]
+This option is a synonym for
+.BI \-I replace-str
+if
+.I replace-str
+is specified. If the
+.I replace-str
+argument is missing, the effect is the same as
+.BR \-I {}.
+This option is deprecated; use
+.B \-I
+instead.
+.TP
+.BI \-L " max-lines"
+Use at most \fImax-lines\fR nonblank input lines per command line.
+Trailing blanks cause an input line to be logically continued on the
+next input line. Implies
+.BR \-x .
+.TP
+.PD
+.BR \-l "[\fImax-lines\fR], " \-\-max-lines "[=\fImax-lines\fR]"
+Synonym for the
+.B \-L
+option. Unlike
+.BR \-L ,
+the
+.I max-lines
+argument is optional. If
+.I max-lines
+is not specified, it defaults to one. The
+.B \-l
+option is deprecated since the POSIX standard specifies
+.B \-L
+instead.
+.TP
+.PD
+.BI \-n " max-args\fB, \fI" "\-\-max\-args" \fR=\fImax-args
+Use at most \fImax-args\fR arguments per command line. Fewer than
+.I max-args
+arguments will be used if the size (see the
+.B \-s
+option) is exceeded, unless the
+.B \-x
+option is given, in which case
+.B xargs will exit.
+.TP
+.PD
+.BI \-P " max-procs\fR, \fI" \-\-max\-procs "\fR=\fImax-procs"
+Run up to
+.I max-procs
+processes at a time; the default is 1. If
+.I max-procs
+is 0,
+.B xargs
+will run as many processes as
+possible at a time. Use the
+.B \-n
+option or the
+.B \-L
+option with
+.BR \-P ;
+otherwise chances are that only one exec will be done.
+While
+.B xargs
+is running, you can send its process a SIGUSR1 signal to increase the
+number of commands to run simultaneously, or a SIGUSR2 to decrease the
+number. You cannot increase it above an implementation-defined limit
+(which is shown with \-\-show-limits). You cannot decrease it below
+1.
+.B xargs
+never terminates its commands; when asked to decrease, it merely
+waits for more than one existing command to terminate before starting
+another.
+
+.B Please note
+that it is up to the called processes to properly manage parallel
+access to shared resources. For example, if more than one of them
+tries to print to stdout, the ouptut will be produced in an
+indeterminate order (and very likely mixed up) unless the processes
+collaborate in some way to prevent this. Using some kind of locking
+scheme is one way to prevent such problems. In general, using a
+locking scheme will help ensure correct output but reduce performance.
+If you don't want to tolerate the performance difference, simply
+arrange for each process to produce a separate output file (or
+otherwise use separate resources).
+.TP
+.PD
+.B \-p, \-\-interactive
+Prompt the user about whether to run each command line and read a line
+from the terminal. Only run the command line if the response starts
+with `y' or `Y'. Implies
+.BR -t .
+.TP
+.PD
+.BR \-\-process\-slot\-var "=\fIname\fR"
+Set the environment variable
+.I name
+to a unique value in each running child process. Values are reused
+once child processes exit. This can be used in a rudimentary load
+distribution scheme, for example.
+.TP
+.PD
+.B \-r, \-\-no\-run\-if\-empty
+If the standard input does not contain any nonblanks, do not run the
+command. Normally, the command is run once even if there is no input.
+This option is a GNU extension.
+.TP
+.PD
+.BI -s " max-chars\fR, \fI" \-\-max\-chars "=\fImax-chars\fR"
+Use at most \fImax-chars\fR characters per command line, including the
+command and initial-arguments and the terminating nulls at the ends of
+the argument strings. The largest allowed value is system-dependent,
+and is calculated as the argument length limit for exec, less the size
+of your environment, less 2048 bytes of headroom. If this value is
+more than 128KiB, 128Kib is used as the default value; otherwise, the
+default value is the maximum. 1KiB is 1024 bytes.
+.B xargs
+automatically adapts to tighter constraints.
+.TP
+.B "\-\-show\\-limits"
+Display the limits on the command-line length which are imposed by the
+operating system,
+.BR xargs '
+choice of buffer size and the
+.B \-s
+option. Pipe the input from
+.I /dev/null
+(and perhaps specify
+.BR --no-run-if-empty )
+if you don't want
+.B xargs
+to do anything.
+.TP
+.B \-t, \-\-verbose
+Print the command line on the standard error output before executing
+it.
+.TP
+.PD
+.B \-x, \-\-exit
+Exit if the size (see the
+.B \-s
+option) is exceeded.
+.TP
+.B "\-\-help"
+Print a summary of the options to
+.B xargs
+and exit.
+.TP
+.B "\-\-version"
+Print the version number of
+.B xargs
+and exit.
+.SH "EXAMPLES"
+.nf
+.B find /tmp \-name core \-type f \-print | xargs /bin/rm \-f
+
+.fi
+Find files named
+.B core
+in or below the directory
+.B /tmp
+and delete them. Note that this will work incorrectly if there are
+any filenames containing newlines or spaces.
+.P
+.B find /tmp \-name core \-type f \-print0 | xargs \-0 /bin/rm \-f
+
+.fi
+Find files named
+.B core
+in or below the directory
+.B /tmp
+and delete them, processing filenames in such a way that file or
+directory names containing spaces or newlines are correctly handled.
+
+.P
+.B find /tmp \-depth \-name core \-type f \-delete
+
+.fi
+Find files named
+.B core
+in or below the directory
+.B /tmp
+and delete them, but more efficiently than in the previous example
+(because we avoid the need to use
+.BR fork (2)
+and
+.BR exec (2)
+to launch
+.B rm
+and we don't need the extra
+.B xargs
+process).
+
+.P
+.nf
+.B cut \-d: \-f1 < /etc/passwd | sort | xargs echo
+
+.fi
+Generates a compact listing of all the users on the system.
+
+.P
+.nf
+.B xargs sh -c 'emacs \(dq$@\(dq < /dev/tty' emacs
+
+.fi
+Launches the minimum number of copies of Emacs needed, one after the
+other, to edit the files listed on
+.BR xargs '
+standard input. This example achieves the same effect as BSD's
+.B -o
+option, but in a more flexible and portable way.
+
+
+
+.SH "EXIT STATUS"
+.B xargs
+exits with the following status:
+.nf
+0 if it succeeds
+123 if any invocation of the command exited with status 1-125
+124 if the command exited with status 255
+125 if the command is killed by a signal
+126 if the command cannot be run
+127 if the command is not found
+1 if some other error occurred.
+.fi
+.P
+Exit codes greater than 128 are used by the shell to indicate that
+a program died due to a fatal signal.
+.SH "STANDARDS CONFORMANCE"
+As of GNU xargs version 4.2.9, the default behaviour of
+.B xargs
+is not to have a logical end-of-file marker. POSIX (IEEE Std 1003.1,
+2004 Edition) allows this.
+.P
+The \-l and \-i options appear in the 1997 version of the POSIX
+standard, but do not appear in the 2004 version of the standard.
+Therefore you should use \-L and \-I instead, respectively.
+.P
+The POSIX standard allows implementations to have a limit on the size
+of arguments to the
+.B exec
+functions. This limit could be as low as 4096 bytes including the size of the
+environment. For scripts to be portable, they must not rely on a
+larger value. However, I know of no implementation whose actual limit
+is that small. The
+.B \-\-show\-limits
+option can be used to discover the actual limits in force on the
+current system.
+
+
+.SH "SEE ALSO"
+\fBfind\fP(1), \fBlocate\fP(1), \fBlocatedb\fP(5), \fBupdatedb\fP(1),
+\fBfork\fP(2), \fBexecvp\fP(3),
+\fBkill\fP(1), \fBsignal\fP(7),
+
+The full documentation for
+.B xargs
+is maintained as a Texinfo manual. If the
+.B info
+and
+.B xargs
+programs are properly installed at your site, the command
+.B info xargs
+should give you access to the complete manual.
+
+.SH "BUGS"
+The
+.B \-L
+option is incompatible with the
+.B \-I
+option, but perhaps should not be.
+.P
+It is not possible for
+.B xargs
+to be used securely, since there will always be a time gap between the
+production of the list of input files and their use in the commands
+that
+.B xargs
+issues. If other users have access to the system, they can manipulate
+the filesystem during this time window to force the action of the
+commands
+.B xargs
+runs to apply to files that you didn't intend. For a more detailed
+discussion of this and related problems, please refer to the
+``Security Considerations'' chapter in the findutils Texinfo
+documentation. The
+.B \-execdir
+option of
+.B find
+can often be used as a more secure alternative.
+
+When you use the
+.B \-I
+option, each line read from the input is buffered
+internally. This means that there is an upper limit on the length
+of input line that
+.B xargs
+will accept when used with the
+.B \-I
+option. To work around this
+limitation, you can use the
+.B \-s
+option to increase the amount of
+buffer space that
+.B xargs
+uses, and you can also use an extra invocation of
+.B xargs
+to ensure that very long lines do not occur.
+For example:
+.P
+.B somecommand | xargs \-s 50000 echo | xargs \-I '{}' \-s 100000 rm '{}'
+.P
+Here, the first invocation of
+.B xargs
+has no input line length limit
+because it doesn't use the
+.B \-i
+option. The second invocation of
+.B xargs
+does have such a limit, but we have ensured that the it never encounters
+a line which is longer than it can handle. This is not an ideal
+solution. Instead, the
+.B \-i
+option should not impose a line length
+limit, which is why this discussion appears in the BUGS section.
+The problem doesn't occur with the output of
+.BR find (1)
+because it emits just one filename per line.
+.P
+The best way to report a bug is to use the form at
+http://savannah.gnu.org/bugs/?group=findutils.
+The reason for this is that you will then be able to track progress in
+fixing the problem. Other comments about \fBxargs\fP(1) and about
+the findutils package in general can be sent to the
+.I bug\-findutils
+mailing list. To join the list, send email to
+.IR bug\-findutils\-request@gnu.org .
diff --git a/xargs/xargs.c b/xargs/xargs.c
new file mode 100644
index 0000000..1116cfe
--- /dev/null
+++ b/xargs/xargs.c
@@ -0,0 +1,1699 @@
+/* xargs -- build and execute command lines from standard input
+ Copyright (C) 1990, 1991, 1992, 1993, 1994, 2000, 2003, 2004, 2005,
+ 2006, 2007, 2008, 2009, 2010, 2011 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/>.
+*/
+
+/* Written by Mike Rendell <michael@cs.mun.ca>
+ and David MacKenzie <djm@gnu.org>.
+ Modifications by
+ James Youngman
+ Dmitry V. Levin
+*/
+
+/* We want SIG_ATOMIC_MAX to be defined. The implementation only does
+ this if __STDC_LIMIT_MACROS is #defined before <stdint.h> is
+ included (see the footnote to section 7.18.3 of ISO C99). Because
+ some other header may #include <stdint.h>, we define the macro
+ here, first. */
+#define __STDC_LIMIT_MACROS
+
+/* config.h must be included first. */
+#include <config.h>
+
+/* system headers. */
+
+#include <assert.h>
+#include <ctype.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <getopt.h>
+#include <inttypes.h>
+#include <limits.h>
+#include <locale.h>
+#include <signal.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+#include <sys/wait.h>
+#include <unistd.h>
+#include <wchar.h>
+
+/* gnulib headers. */
+#include "closein.h"
+#include "error.h"
+#include "gettext.h"
+#include "progname.h"
+#include "quotearg.h"
+#include "safe-read.h"
+#include "xalloc.h"
+
+/* find headers. */
+#include "buildcmd.h"
+#include "fdleak.h"
+#include "findutils-version.h"
+
+#if ENABLE_NLS
+# include <libintl.h>
+# define _(Text) gettext (Text)
+#else
+# define _(Text) Text
+#define textdomain(Domain)
+#define bindtextdomain(Package, Directory)
+#endif
+#ifdef gettext_noop
+# define N_(String) gettext_noop(String)
+#else
+/* See locate.c for explanation as to why not use (String) */
+# define N_(String) String
+#endif
+
+#ifndef LONG_MAX
+#define LONG_MAX (~(1 << (sizeof (long) * 8 - 1)))
+#endif
+
+#define ISBLANK(c) (isascii (c) && isblank (c))
+#define ISSPACE(c) (ISBLANK (c) || (c) == '\n' || (c) == '\r' \
+ || (c) == '\f' || (c) == '\v')
+
+/* Return nonzero if S is the EOF string. */
+#define EOF_STR(s) (eof_str && *eof_str == *s && !strcmp (eof_str, s))
+
+extern char *version_string;
+
+static FILE *input_stream;
+
+/* Buffer for reading arguments from input. */
+static char *linebuf;
+
+static int keep_stdin = 0;
+
+/* Line number in stdin since the last command was executed. */
+static size_t lineno = 0;
+
+static struct buildcmd_state bc_state;
+static struct buildcmd_control bc_ctl;
+
+/* Did we already complain about NUL characters in the input? */
+static int nullwarning_given = 0;
+
+
+/* If nonzero, when this string is read on stdin it is treated as
+ end of file.
+ IEEE Std 1003.1, 2004 Edition allows this to be NULL.
+ In findutils releases up to and including 4.2.8, this was "_".
+*/
+static char *eof_str = NULL;
+
+/* Number of chars in the initial args. */
+/* static int initial_argv_chars = 0; */
+
+/* true when building up initial arguments in `cmd_argv'. */
+static bool initial_args = true;
+
+/* If nonzero, the maximum number of child processes that can be running
+ at once. */
+/* TODO: check conversion safety (i.e. range) for -P option. */
+#define MAX_PROC_MAX SIG_ATOMIC_MAX
+static volatile sig_atomic_t proc_max = 1;
+
+/* Did we fork a child yet? */
+static bool procs_executed = false;
+
+/* The number of elements in `pids'. */
+static unsigned long int procs_executing = 0uL;
+
+/* List of child processes currently executing. */
+static pid_t *pids = NULL;
+
+/* The number of allocated elements in `pids'. */
+static size_t pids_alloc = 0u;
+
+/* Process ID of the parent xargs process. */
+static pid_t parent;
+
+/* If nonzero, we've been signaled that we can start more child processes. */
+static volatile sig_atomic_t stop_waiting = 0;
+
+/* Exit status; nonzero if any child process exited with a
+ status of 1-125. */
+static volatile int child_error = EXIT_SUCCESS;
+
+static volatile int original_exit_value;
+
+/* If true, print each command on stderr before executing it. */
+static bool print_command = false; /* Option -t */
+
+/* If true, query the user before executing each command, and only
+ execute the command if the user responds affirmatively. */
+static bool query_before_executing = false;
+
+/* The delimiter for input arguments. This is only consulted if the
+ * -0 or -d option had been given.
+ */
+static char input_delimiter = '\0';
+
+
+/* Name of the environment variable which indicates which 'slot'
+ * the child process is in. This can be used to do some kind of basic
+ * load distribution. We guarantee not to allow two processes to run
+ * at the same time with the same value of this variable.
+ */
+static char* slot_var_name = NULL;
+
+enum LongOptionIdentifier
+ {
+ PROCESS_SLOT_VAR = CHAR_MAX+1
+ };
+
+static struct option const longopts[] =
+{
+ {"null", no_argument, NULL, '0'},
+ {"arg-file", required_argument, NULL, 'a'},
+ {"delimiter", required_argument, NULL, 'd'},
+ {"eof", optional_argument, NULL, 'e'},
+ {"replace", optional_argument, NULL, 'I'},
+ {"max-lines", optional_argument, NULL, 'l'},
+ {"max-args", required_argument, NULL, 'n'},
+ {"interactive", no_argument, NULL, 'p'},
+ {"no-run-if-empty", no_argument, NULL, 'r'},
+ {"max-chars", required_argument, NULL, 's'},
+ {"verbose", no_argument, NULL, 't'},
+ {"show-limits", no_argument, NULL, 'S'},
+ {"exit", no_argument, NULL, 'x'},
+ {"max-procs", required_argument, NULL, 'P'},
+ {"process-slot-var", required_argument, NULL, PROCESS_SLOT_VAR},
+ {"version", no_argument, NULL, 'v'},
+ {"help", no_argument, NULL, 'h'},
+ {NULL, no_argument, NULL, 0}
+};
+
+/* xargs exits with status values with specific meanings (this is a POSIX requirement).
+ These are the values.
+*/
+enum XargsStatusValues {
+ XARGS_EXIT_CLIENT_EXIT_NONZERO = 123, /* utility exited with nonzero status */
+ XARGS_EXIT_CLIENT_EXIT_255 = 124, /* utility exites with status 255 */
+ XARGS_EXIT_CLIENT_FATAL_SIG = 125, /* utility died from a fatal signal */
+ XARGS_EXIT_COMMAND_CANNOT_BE_RUN = 126, /* canot run the command */
+ XARGS_EXIT_COMMAND_NOT_FOUND = 127, /* cannot find the command */
+};
+/* Exit status values the child might use. */
+enum ClientStatusValues {
+ CHILD_EXIT_PLEASE_STOP_IMMEDIATELY = 255
+};
+
+static int read_line (void);
+static int read_string (void);
+static bool print_args (bool ask);
+/* static void do_exec (void); */
+static int xargs_do_exec (struct buildcmd_control *ctl, void *usercontext, int argc, char **argv);
+static void exec_if_possible (void);
+static unsigned int add_proc (pid_t pid);
+static void wait_for_proc (bool all, unsigned int minreap);
+static void wait_for_proc_all (void);
+static void increment_proc_max (int);
+static void decrement_proc_max (int);
+static long parse_num (char *str, int option, long min, long max, int fatal);
+static void usage (FILE * stream);
+
+
+static char
+get_char_oct_or_hex_escape (const char *s)
+{
+ const char * p;
+ int base = 8;
+ unsigned long val;
+ char *endp;
+
+ assert ('\\' == s[0]);
+
+ if ('x' == s[1])
+ {
+ /* hex */
+ p = s+2;
+ base = 16;
+ }
+ else if (isdigit ((unsigned char) s[1]))
+ {
+ /* octal */
+ p = s+1;
+ base = 8;
+ }
+ else
+ {
+ p = NULL; /* Silence compiler warning. */
+ error (EXIT_FAILURE, 0,
+ _("Invalid escape sequence %s in input delimiter specification."),
+ s);
+ }
+ errno = 0;
+ endp = NULL;
+ val = strtoul (p, &endp, base);
+
+ /* This if condition is carefully constructed to do
+ * the right thing if UCHAR_MAX has the same
+ * value as ULONG_MAX. IF UCHAR_MAX==ULONG_MAX,
+ * then val can never be greater than UCHAR_MAX.
+ */
+ if ((ULONG_MAX == val && ERANGE == errno)
+ || (val > UCHAR_MAX))
+ {
+ if (16 == base)
+ {
+ error (EXIT_FAILURE, 0,
+ _("Invalid escape sequence %s in input delimiter specification; character values must not exceed %lx."),
+ s, (unsigned long)UCHAR_MAX);
+ }
+ else
+ {
+ error (EXIT_FAILURE, 0,
+ _("Invalid escape sequence %s in input delimiter specification; character values must not exceed %lo."),
+ s, (unsigned long)UCHAR_MAX);
+ }
+ }
+
+ /* check for trailing garbage */
+ if (0 != *endp)
+ {
+ error (EXIT_FAILURE, 0,
+ _("Invalid escape sequence %s in input delimiter specification; trailing characters %s not recognised."),
+ s, endp);
+ }
+
+ return (char) val;
+}
+
+
+static char
+get_input_delimiter (const char *s)
+{
+ if (1 == strlen (s))
+ {
+ return s[0];
+ }
+ else
+ {
+ if ('\\' == s[0])
+ {
+ /* an escape code */
+ switch (s[1])
+ {
+ case 'a':
+ return '\a';
+ case 'b':
+ return '\b';
+ case 'f':
+ return '\f';
+ case 'n':
+ return '\n';
+ case 'r':
+ return '\r';
+ case 't':
+ return'\t';
+ case 'v':
+ return '\v';
+ case '\\':
+ return '\\';
+ default:
+ return get_char_oct_or_hex_escape (s);
+ }
+ }
+ else
+ {
+ error (EXIT_FAILURE, 0,
+ _("Invalid input delimiter specification %s: the delimiter must be either a single character or an escape sequence starting with \\."),
+ s);
+ /*NOTREACHED*/
+ return 0;
+ }
+ }
+}
+
+static void
+noop (void)
+{
+ /* does nothing. */
+}
+
+static void
+fail_due_to_env_size (void)
+{
+ error (EXIT_FAILURE, 0, _("environment is too large for exec"));
+}
+
+static size_t
+smaller_of (size_t a, size_t b)
+{
+ if (a < b)
+ return a;
+ else
+ return b;
+}
+
+
+static FILE* fopen_cloexec_for_read_only (const char *file_name)
+{
+ int fd = open_cloexec (file_name, O_RDONLY);
+ if (fd < 0)
+ {
+ return NULL;
+ }
+ else
+ {
+ FILE *result = fdopen (fd, "r");
+ if (!result)
+ {
+ int saved_errno = errno;
+ close (fd);
+ errno = saved_errno;
+ return NULL;
+ }
+ return result;
+ }
+}
+
+
+int
+main (int argc, char **argv)
+{
+ int optc, option_index;
+ int show_limits = 0; /* --show-limits */
+ int always_run_command = 1;
+ const char *input_file = "-"; /* "-" is stdin */
+ char default_cmd[] = "echo";
+ char *default_arglist[1];
+ int (*read_args) (void) = read_line;
+ void (*act_on_init_result)(void) = noop;
+ enum BC_INIT_STATUS bcstatus;
+ enum { XARGS_POSIX_HEADROOM = 2048u };
+ struct sigaction sigact;
+
+ if (argv[0])
+ set_program_name (argv[0]);
+ else
+ set_program_name ("xargs");
+
+ remember_non_cloexec_fds ();
+ parent = getpid ();
+ original_exit_value = EXIT_SUCCESS;
+
+#ifdef HAVE_SETLOCALE
+ setlocale (LC_ALL, "");
+#endif
+ bindtextdomain (PACKAGE, LOCALEDIR);
+ textdomain (PACKAGE);
+
+ if (atexit (close_stdin) || atexit (wait_for_proc_all))
+ {
+ error (EXIT_FAILURE, errno, _("The atexit library function failed"));
+ }
+
+ /* xargs is required by POSIX to allow 2048 bytes of headroom
+ * for extra environment variables (that perhaps the utliity might
+ * want to set before execing something else).
+ */
+ bcstatus = bc_init_controlinfo (&bc_ctl, XARGS_POSIX_HEADROOM);
+
+ /* The bc_init_controlinfo call may have determined that the
+ * environment is too big. In that case, we will fail with
+ * an error message after processing the command-line options,
+ * as "xargs --help" should still work even if the environment is
+ * too big.
+ *
+ * Some of the argument processing depends on the contents of
+ * bc_ctl, which will be in an undefined state if bc_init_controlinfo ()
+ * failed.
+ */
+ if (BC_INIT_ENV_TOO_BIG == bcstatus)
+ {
+ act_on_init_result = fail_due_to_env_size;
+ }
+ else if (BC_INIT_CANNOT_ACCOMODATE_HEADROOM == bcstatus)
+ {
+ /* All POSIX systems are required to support ARG_MAX of at least
+ * 4096. For everything to work the total of (command line +
+ * headroom + environment) must fit into this. POSIX requires
+ * that we use a headroom of 2048 bytes. The user is in control
+ * of the size of the environment.
+ *
+ * In general if bc_init_controlinfo () returns
+ * BC_INIT_CANNOT_ACCOMODATE_HEADROOM, its caller can try again
+ * with a smaller headroom. However, in the case of xargs, this
+ * would not be POSIX-compliant.
+ */
+ act_on_init_result = fail_due_to_env_size;
+ }
+ else
+ {
+ /* IEEE Std 1003.1, 2003 specifies that the combined argument and
+ * environment list shall not exceed {ARG_MAX}-2048 bytes. It also
+ * specifies that it shall be at least LINE_MAX.
+ */
+ long val;
+#ifdef _SC_ARG_MAX
+ val = sysconf (_SC_ARG_MAX);
+ if (val > 0)
+ {
+ assert (val > XARGS_POSIX_HEADROOM);
+ /* Note that val can in fact be greater than ARG_MAX
+ * and bc_ctl.arg_max can also be greater than ARG_MAX.
+ */
+ bc_ctl.arg_max = smaller_of (bc_ctl.arg_max,
+ (size_t)val-XARGS_POSIX_HEADROOM);
+ }
+ else
+ {
+# if defined ARG_MAX
+ assert (ARG_MAX > XARGS_POSIX_HEADROOM);
+ bc_ctl.arg_max = smaller_of (bc_ctl.arg_max,
+ (ARG_MAX - XARGS_POSIX_HEADROOM));
+# endif
+ }
+#else
+ /* No _SC_ARG_MAX */
+ assert (ARG_MAX > XARGS_POSIX_HEADROOM);
+ bc_ctl.arg_max = smaller_of (bc_ctl.arg_max,
+ (ARG_MAX - XARGS_POSIX_HEADROOM));
+#endif
+
+
+#ifdef LINE_MAX
+ /* This assertion ensures that this xargs implementation
+ * conforms to the POSIX requirement that the default command
+ * line length shall be at least LINE_MAX.
+ */
+ assert (bc_ctl.arg_max >= LINE_MAX);
+#endif
+
+ bc_ctl.exec_callback = xargs_do_exec;
+
+ /* Start with a reasonable default size, though this can be
+ * adjusted via the -s option.
+ */
+ bc_use_sensible_arg_max (&bc_ctl);
+ }
+
+ while ((optc = getopt_long (argc, argv, "+0a:E:e::i::I:l::L:n:prs:txP:d:",
+ longopts, &option_index)) != -1)
+ {
+ switch (optc)
+ {
+ case '0':
+ read_args = read_string;
+ input_delimiter = '\0';
+ break;
+
+ case 'd':
+ read_args = read_string;
+ input_delimiter = get_input_delimiter (optarg);
+ break;
+
+ case 'E': /* POSIX */
+ case 'e': /* deprecated */
+ if (optarg && (strlen (optarg) > 0))
+ eof_str = optarg;
+ else
+ eof_str = 0;
+ break;
+
+ case 'h':
+ usage (stdout);
+ return 0;
+
+ case 'I': /* POSIX */
+ case 'i': /* deprecated */
+ if (optarg)
+ bc_ctl.replace_pat = optarg;
+ else
+ bc_ctl.replace_pat = "{}";
+ /* -i excludes -n -l. */
+ bc_ctl.args_per_exec = 0;
+ bc_ctl.lines_per_exec = 0;
+ break;
+
+ case 'L': /* POSIX */
+ bc_ctl.lines_per_exec = parse_num (optarg, 'L', 1L, -1L, 1);
+ /* -L excludes -i -n. */
+ bc_ctl.args_per_exec = 0;
+ bc_ctl.replace_pat = NULL;
+ break;
+
+ case 'l': /* deprecated */
+ if (optarg)
+ bc_ctl.lines_per_exec = parse_num (optarg, 'l', 1L, -1L, 1);
+ else
+ bc_ctl.lines_per_exec = 1;
+ /* -l excludes -i -n. */
+ bc_ctl.args_per_exec = 0;
+ bc_ctl.replace_pat = NULL;
+ break;
+
+ case 'n':
+ bc_ctl.args_per_exec = parse_num (optarg, 'n', 1L, -1L, 1);
+ /* -n excludes -i -l. */
+ bc_ctl.lines_per_exec = 0;
+ if (bc_ctl.args_per_exec == 1 && bc_ctl.replace_pat)
+ /* ignore -n1 in '-i -n1' */
+ bc_ctl.args_per_exec = 0;
+ else
+ bc_ctl.replace_pat = NULL;
+ break;
+
+ /* The POSIX standard specifies that it is not an error
+ * for the -s option to specify a size that the implementation
+ * cannot support - in that case, the relevant limit is used.
+ */
+ case 's':
+ {
+ size_t arg_size;
+ act_on_init_result ();
+ arg_size = parse_num (optarg, 's', 1L,
+ bc_ctl.posix_arg_size_max, 0);
+ if (arg_size > bc_ctl.posix_arg_size_max)
+ {
+ error (0, 0,
+ _("warning: value %ld for -s option is too large, "
+ "using %ld instead"),
+ (long) arg_size, (long) bc_ctl.posix_arg_size_max);
+ arg_size = bc_ctl.posix_arg_size_max;
+ }
+ bc_ctl.arg_max = arg_size;
+ }
+ break;
+
+ case 'S':
+ show_limits = true;
+ break;
+
+ case 't':
+ print_command = true;
+ break;
+
+ case 'x':
+ bc_ctl.exit_if_size_exceeded = true;
+ break;
+
+ case 'p':
+ query_before_executing = true;
+ print_command = true;
+ break;
+
+ case 'r':
+ always_run_command = 0;
+ break;
+
+ case 'P':
+ /* Allow only up to MAX_PROC_MAX child processes. */
+ proc_max = parse_num (optarg, 'P', 0L, MAX_PROC_MAX, 1);
+ break;
+
+ case 'a':
+ input_file = optarg;
+ break;
+
+ case 'v':
+ display_findutils_version ("xargs");
+ return 0;
+
+ case PROCESS_SLOT_VAR:
+ if (strchr (optarg, '='))
+ {
+ error (EXIT_FAILURE, 0,
+ _("option --%s may not be set to a value which includes `='"),
+ longopts[option_index].name);
+ }
+ slot_var_name = optarg;
+ if (0 != unsetenv (slot_var_name))
+ {
+ /* This is a fatal error, otherwise some child process
+ may not be able to guarantee that no two children
+ have the same value for this variable; see
+ set_slot_var.
+ */
+ error (EXIT_FAILURE, errno,
+ _("failed to unset environment variable %s"),
+ slot_var_name);
+ }
+ break;
+
+ default:
+ usage (stderr);
+ return 1;
+ }
+ }
+
+ if (eof_str && (read_args == read_string))
+ {
+ error (0, 0,
+ _("warning: the -E option has no effect if -0 or -d is used.\n"));
+ }
+
+ /* If we had deferred failing due to problems in bc_init_controlinfo (),
+ * do it now.
+ *
+ * We issue this error message after processing command line
+ * arguments so that it is possible to use "xargs --help" even if
+ * the environment is too large.
+ */
+ act_on_init_result ();
+ assert (BC_INIT_OK == bcstatus);
+
+#ifdef SIGUSR1
+#ifdef SIGUSR2
+ /* Accept signals to increase or decrease the number of running
+ child processes. Do this as early as possible after setting
+ proc_max. */
+ sigact.sa_handler = increment_proc_max;
+ sigemptyset(&sigact.sa_mask);
+ sigact.sa_flags = 0;
+ if (0 != sigaction (SIGUSR1, &sigact, (struct sigaction *)NULL))
+ error (0, errno, _("Cannot set SIGUSR1 signal handler"));
+
+ sigact.sa_handler = decrement_proc_max;
+ sigemptyset(&sigact.sa_mask);
+ sigact.sa_flags = 0;
+ if (0 != sigaction (SIGUSR2, &sigact, (struct sigaction *)NULL))
+ error (0, errno, _("Cannot set SIGUSR2 signal handler"));
+#endif /* SIGUSR2 */
+#endif /* SIGUSR1 */
+
+
+ if (0 == strcmp (input_file, "-"))
+ {
+ input_stream = stdin;
+ }
+ else
+ {
+ keep_stdin = 1; /* see prep_child_for_exec () */
+ input_stream = fopen_cloexec_for_read_only (input_file);
+ if (NULL == input_stream)
+ {
+ error (EXIT_FAILURE, errno,
+ _("Cannot open input file %s"),
+ quotearg_n_style (0, locale_quoting_style, input_file));
+ }
+ }
+
+ if (bc_ctl.replace_pat || bc_ctl.lines_per_exec)
+ bc_ctl.exit_if_size_exceeded = true;
+
+ if (optind == argc)
+ {
+ optind = 0;
+ argc = 1;
+ default_arglist[0] = default_cmd;
+ argv = default_arglist;
+ }
+
+ if (show_limits)
+ {
+ fprintf (stderr,
+ _("Your environment variables take up %" PRIuMAX " bytes\n"),
+ (uintmax_t)bc_size_of_environment ());
+ fprintf (stderr,
+ _("POSIX upper limit on argument length (this system): %" PRIuMAX "\n"),
+ (uintmax_t)bc_ctl.posix_arg_size_max);
+ fprintf (stderr,
+ _("POSIX smallest allowable upper limit on argument length (all systems): %" PRIuMAX "\n"),
+ (uintmax_t)bc_ctl.posix_arg_size_min);
+ fprintf (stderr,
+ _("Maximum length of command we could actually use: %" PRIuMAX "\n"),
+ (uintmax_t)(bc_ctl.posix_arg_size_max - bc_size_of_environment ()));
+ fprintf (stderr,
+ _("Size of command buffer we are actually using: %" PRIuMAX "\n"),
+ (uintmax_t)bc_ctl.arg_max);
+ fprintf (stderr,
+ _("Maximum parallelism (--max-procs must be no greater): %" PRIuMAX "\n"),
+ (uintmax_t)MAX_PROC_MAX);
+
+ if (isatty (STDIN_FILENO))
+ {
+ fprintf (stderr,
+ _("\n"
+ "Execution of xargs will continue now, and it will "
+ "try to read its input and run commands; if this is "
+ "not what you wanted to happen, please type the "
+ "end-of-file keystroke.\n"));
+ if (always_run_command)
+ {
+ fprintf (stderr,
+ _("Warning: %s will be run at least once. "
+ "If you do not want that to happen, then press "
+ "the interrupt keystroke.\n"),
+ argv[optind]);
+ }
+ }
+ }
+
+ linebuf = xmalloc (bc_ctl.arg_max + 1);
+ bc_state.argbuf = xmalloc (bc_ctl.arg_max + 1);
+
+ /* Make sure to listen for the kids. */
+ signal (SIGCHLD, SIG_DFL);
+
+ if (!bc_ctl.replace_pat)
+ {
+ for (; optind < argc; optind++)
+ bc_push_arg (&bc_ctl, &bc_state,
+ argv[optind], strlen (argv[optind]) + 1,
+ NULL, 0,
+ initial_args);
+ initial_args = false;
+ bc_ctl.initial_argc = bc_state.cmd_argc;
+ bc_state.cmd_initial_argv_chars = bc_state.cmd_argv_chars;
+ bc_ctl.initial_argc = bc_state.cmd_argc;
+ /*fprintf (stderr, "setting initial_argc=%d\n", bc_state.cmd_initial_argc);*/
+
+ while ((*read_args) () != -1)
+ if (bc_ctl.lines_per_exec && lineno >= bc_ctl.lines_per_exec)
+ {
+ bc_do_exec (&bc_ctl, &bc_state);
+ lineno = 0;
+ }
+
+ /* SYSV xargs seems to do at least one exec, even if the
+ input is empty. */
+ if (bc_state.cmd_argc != bc_ctl.initial_argc
+ || (always_run_command && procs_executed==0))
+ bc_do_exec (&bc_ctl, &bc_state);
+
+ }
+ else
+ {
+ int i, args;
+ size_t *arglen = xmalloc (sizeof (size_t) * argc);
+
+ for (i = optind; i < argc; i++)
+ arglen[i] = strlen (argv[i]);
+ bc_ctl.rplen = strlen (bc_ctl.replace_pat);
+ while ((args = (*read_args) ()) != -1)
+ {
+ size_t len = (size_t) args;
+ /* Don't do insert on the command name. */
+ bc_clear_args (&bc_ctl, &bc_state);
+ bc_state.cmd_argv_chars = 0; /* begin at start of buffer */
+
+ bc_push_arg (&bc_ctl, &bc_state,
+ argv[optind], arglen[optind] + 1,
+ NULL, 0,
+ initial_args);
+ len--;
+ initial_args = false;
+
+ for (i = optind + 1; i < argc; i++)
+ bc_do_insert (&bc_ctl, &bc_state,
+ argv[i], arglen[i],
+ NULL, 0,
+ linebuf, len,
+ initial_args);
+ bc_do_exec (&bc_ctl, &bc_state);
+ }
+ }
+
+ original_exit_value = child_error;
+ return child_error;
+}
+
+
+/* Read a line of arguments from the input and add them to the list of
+ arguments to pass to the command. Ignore blank lines and initial blanks.
+ Single and double quotes and backslashes quote metacharacters and blanks
+ as they do in the shell.
+ Return -1 if eof (either physical or logical) is reached,
+ otherwise the length of the last string read (including the null). */
+
+static int
+read_line (void)
+{
+/* States for read_line. */
+ enum read_line_state
+ {
+ NORM = 0,
+ SPACE = 1,
+ QUOTE = 2,
+ BACKSLASH = 3
+ };
+ static bool eof = false;
+ /* Start out in mode SPACE to always strip leading spaces (even with -i). */
+ enum read_line_state state = SPACE; /* The type of character we last read. */
+ int prevc; /* The previous value of c. */
+ int quotc = 0; /* The last quote character read. */
+ int c = EOF;
+ bool first = true; /* true if reading first arg on line. */
+ bool seen_arg = false; /* true if we have seen any arg (or part of one) yet */
+ int len;
+ char *p = linebuf;
+ /* Including the NUL, the args must not grow past this point. */
+ char *endbuf = linebuf + bc_ctl.arg_max - bc_state.cmd_initial_argv_chars - 1;
+
+ if (eof)
+ return -1;
+ while (1)
+ {
+ prevc = c;
+ c = getc (input_stream);
+
+ if (c == EOF)
+ {
+ /* COMPAT: SYSV seems to ignore stuff on a line that
+ ends without a \n; we don't. */
+ eof = true;
+ if (p == linebuf)
+ return -1;
+ *p++ = '\0';
+ len = p - linebuf;
+ if (state == QUOTE)
+ {
+ exec_if_possible ();
+ error (EXIT_FAILURE, 0, _("unmatched %s quote; by default quotes are special to xargs unless you use the -0 option"),
+ quotc == '"' ? _("double") : _("single"));
+ }
+ if (first && EOF_STR (linebuf))
+ return -1;
+ if (!bc_ctl.replace_pat)
+ bc_push_arg (&bc_ctl, &bc_state,
+ linebuf, len,
+ NULL, 0,
+ initial_args);
+ return len;
+ }
+ switch (state)
+ {
+ case SPACE:
+ if (ISSPACE (c))
+ continue;
+ state = NORM;
+ /* aaahhhh.... */
+
+ case NORM:
+ if (c == '\n')
+ {
+ if (!ISBLANK (prevc))
+ lineno++; /* For -l. */
+ if (p == linebuf)
+ {
+ if (seen_arg)
+ {
+ /* An empty argument, add it to the list as normal. */
+ }
+ else
+ {
+ /* Blank line. */
+ state = SPACE;
+ continue;
+ }
+ }
+ *p++ = '\0';
+ len = p - linebuf;
+ if (EOF_STR (linebuf))
+ {
+ eof = true;
+ return first ? -1 : len;
+ }
+ if (!bc_ctl.replace_pat)
+ bc_push_arg (&bc_ctl, &bc_state,
+ linebuf, len,
+ NULL, 0,
+ initial_args);
+ return len;
+ }
+ seen_arg = true;
+
+ /* POSIX: In the POSIX locale, the separators are <SPC> and
+ * <TAB>, but not <FF> or <VT>.
+ */
+ if (!bc_ctl.replace_pat && ISBLANK (c))
+ {
+ *p++ = '\0';
+ len = p - linebuf;
+ if (EOF_STR (linebuf))
+ {
+ eof = true;
+ return first ? -1 : len;
+ }
+ bc_push_arg (&bc_ctl, &bc_state,
+ linebuf, len,
+ NULL, 0,
+ initial_args);
+ p = linebuf;
+ state = SPACE;
+ first = false;
+ continue;
+ }
+ switch (c)
+ {
+ case '\\':
+ state = BACKSLASH;
+ continue;
+
+ case '\'':
+ case '"':
+ state = QUOTE;
+ quotc = c;
+ continue;
+ }
+ break;
+
+ case QUOTE:
+ if (c == '\n')
+ {
+ exec_if_possible ();
+ error (EXIT_FAILURE, 0, _("unmatched %s quote; by default quotes are special to xargs unless you use the -0 option"),
+ quotc == '"' ? _("double") : _("single"));
+ }
+ if (c == quotc)
+ {
+ state = NORM;
+ seen_arg = true; /* Makes a difference for e.g. just '' or "" as the first arg on a line */
+ continue;
+ }
+ break;
+
+ case BACKSLASH:
+ state = NORM;
+ break;
+ }
+
+ if ( (0 == c) && !nullwarning_given )
+ {
+ /* This is just a warning message. We only issue it once. */
+ error (0, 0,
+ _("WARNING: a NUL character occurred in the input. "
+ "It cannot be passed through in the argument list. "
+ "Did you mean to use the --null option?"));
+ nullwarning_given = 1;
+ }
+
+#if 1
+ if (p >= endbuf)
+ {
+ exec_if_possible ();
+ error (EXIT_FAILURE, 0, _("argument line too long"));
+ }
+ *p++ = c;
+#else
+ append_char_to_buf (&linebuf, &endbuf, &p, c);
+#endif
+ }
+}
+
+/* Read a string (terminated by the delimiter, which may be NUL) from
+ the input and add it to the list of arguments to pass to the
+ command.
+
+ The return value is the length of the added argument, including its
+ terminating NUL. The added argument is always terminated by NUL,
+ even if that is not the delimiter.
+
+ If we reach physical EOF before seeing the delimiter, we treat any
+ characters read as the final argument.
+
+ If no argument was read (that is, we reached physical EOF before
+ reading any characters) then -1 is returned. */
+static int
+read_string (void)
+{
+ static bool eof = false;
+ int len;
+ char *p = linebuf;
+ /* Including the NUL, the args must not grow past this point. */
+ char *endbuf = linebuf + bc_ctl.arg_max - bc_state.cmd_initial_argv_chars - 1;
+
+ if (eof)
+ return -1;
+ while (1)
+ {
+ int c = getc (input_stream);
+ if (c == EOF)
+ {
+ eof = true;
+ if (p == linebuf)
+ return -1;
+ *p++ = '\0';
+ len = p - linebuf;
+ if (!bc_ctl.replace_pat)
+ bc_push_arg (&bc_ctl, &bc_state,
+ linebuf, len,
+ NULL, 0,
+ initial_args);
+ return len;
+ }
+ if (c == input_delimiter)
+ {
+ lineno++; /* For -l. */
+ *p++ = '\0';
+ len = p - linebuf;
+ if (!bc_ctl.replace_pat)
+ bc_push_arg (&bc_ctl, &bc_state,
+ linebuf, len,
+ NULL, 0,
+ initial_args);
+ return len;
+ }
+ if (p >= endbuf)
+ {
+ exec_if_possible ();
+ error (EXIT_FAILURE, 0, _("argument line too long"));
+ }
+ *p++ = c;
+ }
+}
+
+/* Print the arguments of the command to execute.
+ If ASK is nonzero, prompt the user for a response, and
+ if the user responds affirmatively, return true;
+ otherwise, return false. */
+
+static bool
+print_args (bool ask)
+{
+ size_t i;
+
+ for (i = 0; i < bc_state.cmd_argc - 1; i++)
+ {
+ if (fprintf (stderr, "%s ", bc_state.cmd_argv[i]) < 0)
+ error (EXIT_FAILURE, errno, _("Failed to write to stderr"));
+ }
+
+ if (ask)
+ {
+ static FILE *tty_stream;
+ int c, savec;
+
+ if (!tty_stream)
+ {
+ tty_stream = fopen_cloexec_for_read_only ("/dev/tty");
+ if (!tty_stream)
+ error (EXIT_FAILURE, errno,
+ _("failed to open /dev/tty for reading"));
+ }
+ fputs ("?...", stderr);
+ if (fflush (stderr) != 0)
+ error (EXIT_FAILURE, errno, _("Failed to write to stderr"));
+
+ c = savec = getc (tty_stream);
+ while (c != EOF && c != '\n')
+ c = getc (tty_stream);
+ if (EOF == c)
+ error (EXIT_FAILURE, errno, _("Failed to read from stdin"));
+ if (savec == 'y' || savec == 'Y')
+ return true;
+ }
+ else
+ putc ('\n', stderr);
+
+ return false;
+}
+
+/* Set SOME_ENVIRONMENT_VARIABLE=n in the environment. */
+static void
+set_slot_var (unsigned int n)
+{
+ static const char *fmt = "%u";
+ int size;
+ char *buf;
+
+
+ /* Determine the length of the buffer we need.
+
+ If the result would be zero-length or have length (not value) >
+ INT_MAX, the assumptions we made about how snprintf behaves (or
+ what UINT_MAX is) are wrong. Hence we have a design error (not
+ an environmental error).
+ */
+ size = snprintf (NULL, 0u, fmt, n);
+ assert (size > 0);
+
+
+ /* Failures here are undesirable but not fatal, since we can still
+ guarantee that this child does not have a duplicate value of the
+ indicated environment variable set (since the parent unset it on
+ startup).
+ */
+ if (NULL == (buf = malloc (size+1)))
+ {
+ error (0, errno, _("unable to allocate memory"));
+ }
+ else
+ {
+ snprintf (buf, size+1, fmt, n);
+
+ /* If the user doesn't want us to set the variable, there is
+ nothing to do. However, we defer the bail-out until this
+ point in order to get better test coverage.
+ */
+ if (slot_var_name)
+ {
+ if (setenv (slot_var_name, buf, 1) < 0)
+ {
+ error (0, errno,
+ _("failed to set environment variable %s"), slot_var_name);
+ }
+ }
+ free (buf);
+ }
+}
+
+
+/* Close stdin and attach /dev/null to it.
+ * This resolves Savannah bug #3992.
+ */
+static void
+prep_child_for_exec (void)
+{
+ complain_about_leaky_fds ();
+
+ /* The parent will call add_proc to allocate a slot. We do the same in the
+ child to make sure we get the same value.
+
+ We use 0 here in order to avoid generating a data structure that appears
+ to indicate that we (the child) have a child. */
+ unsigned int slot = add_proc (0);
+ set_slot_var (slot);
+
+ if (!keep_stdin)
+ {
+ const char inputfile[] = "/dev/null";
+ /* fprintf (stderr, "attaching stdin to /dev/null\n"); */
+
+ close (0);
+ if (open (inputfile, O_RDONLY) < 0)
+ {
+ /* This is not entirely fatal, since
+ * executing the child with a closed
+ * stdin is almost as good as executing it
+ * with its stdin attached to /dev/null.
+ */
+ error (0, errno, "%s",
+ quotearg_n_style (0, locale_quoting_style, inputfile));
+ }
+ }
+}
+
+
+/* Execute the command that has been built in `cmd_argv'. This may involve
+ waiting for processes that were previously executed.
+
+ There are a number of cases where we want to terminate the current (child)
+ process. We do this by calling _exit () rather than exit () in order to
+ avoid the invocation of wait_for_proc_all (), which was registered by the parent
+ as an atexit () function.
+*/
+static int
+xargs_do_exec (struct buildcmd_control *ctl, void *usercontext, int argc, char **argv)
+{
+ pid_t child;
+ int fd[2];
+ int buf;
+ size_t r;
+
+ (void) ctl;
+ (void) argc;
+ (void) usercontext;
+
+ if (proc_max)
+ {
+ while (procs_executing >= proc_max)
+ {
+ wait_for_proc (false, 1u);
+ }
+ }
+
+ if (!query_before_executing || print_args (true))
+ {
+ if (!query_before_executing && print_command)
+ print_args (false);
+
+ /* Before forking, reap any already-exited child. We do this so
+ that we don't leave unreaped children around while we build a
+ new command line. For example this command will spend most
+ of its time waiting for sufficient arguments to launch
+ another command line:
+
+ seq 1 1000 | fmt | while read x ; do echo $x; sleep 1 ; done |
+ ./xargs -P 200 -n 20 sh -c 'echo "$@"; sleep $((1 + $RANDOM % 5))' sleeper
+ */
+ wait_for_proc (false, 0u);
+
+ if (pipe (fd))
+ error (EXIT_FAILURE, errno, _("could not create pipe before fork"));
+ fcntl (fd[1], F_SETFD, FD_CLOEXEC);
+
+ /* If we run out of processes, wait for a child to return and
+ try again. */
+ while ((child = fork ()) < 0 && errno == EAGAIN && procs_executing)
+ wait_for_proc (false, 1u);
+
+ switch (child)
+ {
+ case -1:
+ error (EXIT_FAILURE, errno, _("cannot fork"));
+
+ case 0: /* Child. */
+ {
+ close (fd[0]);
+ child_error = EXIT_SUCCESS;
+
+ prep_child_for_exec ();
+
+ if (bc_args_exceed_testing_limit (argv))
+ errno = E2BIG;
+ else
+ execvp (argv[0], argv);
+ if (errno)
+ {
+ /* Write errno value to parent. We do this even if
+ * the error was not E2BIG, because we need to
+ * distinguish successful execs from unsuccessful
+ * ones. The reason we need to do this is to know
+ * whether to reap the child here (preventing the
+ * exit status processing in wait_for_proc () from
+ * changing the value of child_error) or leave it
+ * for wait_for_proc () to handle. We need to have
+ * wait_for_proc () handle the exit values from the
+ * utility if we run it, for POSIX compliance on the
+ * handling of exit values.
+ */
+ write (fd[1], &errno, sizeof (int));
+ }
+
+ close (fd[1]);
+ if (E2BIG != errno)
+ {
+ error (0, errno, "%s", argv[0]);
+ }
+ /* The actual value returned here should be irrelevant,
+ * because the parent will test our value of errno.
+ */
+ _exit (errno == ENOENT ? XARGS_EXIT_COMMAND_NOT_FOUND : XARGS_EXIT_COMMAND_CANNOT_BE_RUN);
+
+ /*NOTREACHED*/
+ } /* child */
+
+ default:
+ {
+ /* Parent */
+ close (fd[1]);
+ }
+
+ } /* switch (child) */
+ /*fprintf (stderr, "forked child (bc_state.cmd_argc=%d) -> ", bc_state.cmd_argc);*/
+
+ /* We use safe_read here in order to avoid an error if
+ SIGUSR[12] is handled during the read system call. */
+ switch (r = safe_read (fd[0], &buf, sizeof (int)))
+ {
+ case SAFE_READ_ERROR:
+ {
+ close (fd[0]);
+ error (0, errno,
+ _("errno-buffer safe_read failed in xargs_do_exec "
+ "(this is probably a bug, please report it)"));
+ break;
+ }
+
+ case sizeof (int):
+ {
+ /* Failure */
+ int childstatus;
+
+ close (fd[0]);
+
+ /* we know the child is about to exit, so wait for that.
+ * We have to do this so that wait_for_proc () does not
+ * change the value of child_error on the basis of the
+ * return value -- since in this case we did not launch
+ * the utility.
+ *
+ * We do the wait before deciding if we failed in order to
+ * avoid creating a zombie, even briefly.
+ */
+ waitpid (child, &childstatus, 0);
+
+
+ if (E2BIG == buf)
+ {
+ return 0; /* Failure; caller should pass fewer args */
+ }
+ else if (ENOENT == buf)
+ {
+ exit (XARGS_EXIT_COMMAND_NOT_FOUND); /* command cannot be found */
+ }
+ else
+ {
+ exit (XARGS_EXIT_COMMAND_CANNOT_BE_RUN); /* command cannot be run */
+ }
+ break;
+ }
+
+ case 0:
+ {
+ /* Failed to read data from pipe; the exec must have
+ * succeeded. We call add_proc only in this case,
+ * because it increments procs_executing, and we only
+ * want to do that if we didn't already wait for the
+ * child.
+ */
+ add_proc (child);
+ break;
+ }
+ default:
+ {
+ error (EXIT_FAILURE, errno,
+ _("read returned unexpected value %zu; "
+ "this is probably a bug, please report it"), r);
+ }
+ } /* switch on bytes read */
+ close (fd[0]);
+ }
+ return 1; /* Success */
+}
+
+/* Execute the command if possible. */
+
+static void
+exec_if_possible (void)
+{
+ if (bc_ctl.replace_pat || initial_args ||
+ bc_state.cmd_argc == bc_ctl.initial_argc || bc_ctl.exit_if_size_exceeded)
+ return;
+ bc_do_exec (&bc_ctl, &bc_state);
+}
+
+/* Add the process with id PID to the list of processes that have
+ been executed. */
+
+static unsigned int
+add_proc (pid_t pid)
+{
+ unsigned int i, j;
+
+ /* Find an empty slot. */
+ for (i = 0; i < pids_alloc && pids[i]; i++)
+ ;
+
+ /* Extend the array if we failed. */
+ if (i == pids_alloc)
+ {
+ pids = x2nrealloc (pids, &pids_alloc, sizeof *pids);
+
+ /* Zero out the new slots. */
+ for (j=i; j<pids_alloc; ++j)
+ pids[j] = (pid_t)0;
+ }
+ /* Verify that we are not destroying the record of some existing child. */
+ assert (0 == pids[i]);
+
+ /* Remember the child. */
+ pids[i] = pid;
+ procs_executing++;
+ procs_executed = true;
+ return i;
+}
+
+
+/* If ALL is true, wait for all child processes to finish;
+ otherwise, wait for one child process to finish, or for another signal
+ that tells us that we can run more child processes.
+ Remove the processes that finish from the list of executing processes. */
+
+static void
+wait_for_proc (bool all, unsigned int minreap)
+{
+ unsigned int reaped = 0;
+
+ while (procs_executing)
+ {
+ unsigned int i;
+ int status;
+ pid_t pid;
+ int wflags = 0;
+
+ if (!all)
+ {
+ if (reaped >= minreap)
+ {
+ /* We already reaped enough children. To save system
+ * resources, reap any dead children anyway, but do not
+ * wait for any currently executing children to exit.
+
+ */
+ wflags = WNOHANG;
+ }
+ }
+
+ stop_waiting = 0;
+ do
+ {
+ /* Wait for any child. We used to use wait () here, but it's
+ * unlikely that that offers any portability advantage over
+ * wait these days.
+ */
+ while ((pid = waitpid (-1, &status, wflags)) == (pid_t) -1)
+ {
+ if (errno != EINTR)
+ error (EXIT_FAILURE, errno,
+ _("error waiting for child process"));
+
+ if (stop_waiting && !all)
+ {
+ /* Receipt of SIGUSR1 gave us an extra slot and we
+ * don't need to wait for all processes to finish.
+ * We can stop reaping now, but in any case check for
+ * further dead children without waiting for another
+ * to exit.
+ */
+ wflags = WNOHANG;
+ }
+ }
+
+ /* Find the entry in `pids' for the child process
+ that exited. */
+ if (pid)
+ {
+ for (i = 0; i < pids_alloc && pid != pids[i]; i++)
+ ;
+ }
+ }
+ while (pid && i == pids_alloc); /* A child died that we didn't start? */
+
+ if (!pid)
+ {
+ if (!(wflags & WNOHANG))
+ {
+ /* Nothing remained to be reaped. This should not
+ * happen, because procs_executing should contain the
+ * number of child processes still executing, so the
+ * loop should have terminated.
+ */
+ error (0, 0, _("WARNING: Lost track of %lu child processes"),
+ procs_executing);
+ }
+ else
+ {
+ /* Children are (probably) executing but are not ready
+ * to be reaped at the moment.
+ */
+ }
+ break;
+ }
+
+ /* Remove the child from the list. */
+ pids[i] = 0;
+ procs_executing--;
+ reaped++;
+
+ if (WEXITSTATUS (status) == CHILD_EXIT_PLEASE_STOP_IMMEDIATELY)
+ error (XARGS_EXIT_CLIENT_EXIT_255, 0,
+ _("%s: exited with status 255; aborting"), bc_state.cmd_argv[0]);
+ if (WIFSTOPPED (status))
+ error (XARGS_EXIT_CLIENT_FATAL_SIG, 0,
+ _("%s: stopped by signal %d"), bc_state.cmd_argv[0], WSTOPSIG (status));
+ if (WIFSIGNALED (status))
+ error (XARGS_EXIT_CLIENT_FATAL_SIG, 0,
+ _("%s: terminated by signal %d"), bc_state.cmd_argv[0], WTERMSIG (status));
+ if (WEXITSTATUS (status) != 0)
+ child_error = XARGS_EXIT_CLIENT_EXIT_NONZERO;
+ }
+}
+
+/* Wait for all child processes to finish. */
+
+static void
+wait_for_proc_all (void)
+{
+ static bool waiting = false;
+
+ /* This function was registered by the original, parent, process.
+ * The child processes must not call exit () to terminate, since this
+ * will mean that their exit status will be inappropriately changed.
+ * Instead the child processes should call _exit (). If someone
+ * forgets this rule, you may see the following assert () fail.
+ */
+ assert (getpid () == parent);
+
+ if (waiting)
+ return;
+
+ waiting = true;
+ wait_for_proc (true, 0u);
+ waiting = false;
+
+ if (original_exit_value != child_error)
+ {
+ /* wait_for_proc () changed the value of child_error (). This
+ * function is registered via atexit (), and so may have been
+ * called from exit (). We now know that the original value
+ * passed to exit () is no longer the exit status we require.
+ * The POSIX standard states that the behaviour if exit () is
+ * called more than once is undefined. Therefore we now have to
+ * exit with _exit () instead of exit ().
+ */
+ _exit (child_error);
+ }
+
+}
+
+
+/* Increment or decrement the number of processes we can start simultaneously,
+ when we receive a signal from the outside world.
+
+ We must take special care around proc_max == 0 (unlimited children),
+ proc_max == 1 (don't decrement to zero). */
+static void
+increment_proc_max (int ignore)
+{
+ (void) ignore;
+ /* If user increments from 0 to 1, we'll take it and serialize. */
+ if (proc_max < MAX_PROC_MAX)
+ proc_max++;
+ /* If we're waiting for a process to die before doing something,
+ no need to wait any more. */
+ stop_waiting = 1;
+}
+
+static void
+decrement_proc_max (int ignore)
+{
+ (void) ignore;
+ if (proc_max > 1)
+ proc_max--;
+}
+
+
+/* Return the value of the number represented in STR.
+ OPTION is the command line option to which STR is the argument.
+ If the value does not fall within the boundaries MIN and MAX,
+ Print an error message mentioning OPTION. If FATAL is true,
+ we also exit. */
+
+static long
+parse_num (char *str, int option, long int min, long int max, int fatal)
+{
+ char *eptr;
+ long val;
+
+ val = strtol (str, &eptr, 10);
+ if (eptr == str || *eptr)
+ {
+ fprintf (stderr, _("%s: invalid number for -%c option\n"),
+ program_name, option);
+ usage (stderr);
+ exit (EXIT_FAILURE);
+ }
+ else if (val < min)
+ {
+ fprintf (stderr, _("%s: value for -%c option should be >= %ld\n"),
+ program_name, option, min);
+ if (fatal)
+ {
+ usage (stderr);
+ exit (EXIT_FAILURE);
+ }
+ else
+ {
+ val = min;
+ }
+ }
+ else if (max >= 0 && val > max)
+ {
+ fprintf (stderr, _("%s: value for -%c option should be <= %ld\n"),
+ program_name, option, max);
+ if (fatal)
+ {
+ usage (stderr);
+ exit (EXIT_FAILURE);
+ }
+ else
+ {
+ val = max;
+ }
+ }
+ return val;
+}
+
+static void
+usage (FILE *stream)
+{
+ fprintf (stream,
+ _("Usage: %s [OPTION]... COMMAND [INITIAL-ARGS]...\n"),
+ program_name);
+
+#define HTL(t) fputs (t, stream);
+
+ HTL (_("Run COMMAND with arguments INITIAL-ARGS and more arguments read from input.\n"
+ "\n"));
+ HTL (_("Mandatory and optional arguments to long options are also\n"
+ "mandatory or optional for the corresponding short option.\n"));
+ HTL (_(" -0, --null items are separated by a null, not whitespace;\n"
+ " disables quote and backslash processing and\n"
+ " logical EOF processing\n"));
+ HTL (_(" -a, --arg-file=FILE read arguments from FILE, not standard input\n"));
+ HTL (_(" -d, --delimiter=CHARACTER items in input stream are separated by CHARACTER,\n"
+ " not by whitespace; disables quote and backslash\n"
+ " processing and logical EOF processing\n"));
+ HTL (_(" -E END set logical EOF string; if END occurs as a line\n"
+ " of input, the rest of the input is ignored\n"
+ " (ignored if -0 or -d was specified)\n"));
+ HTL (_(" -e, --eof[=END] equivalent to -E END if END is specified;\n"
+ " otherwise, there is no end-of-file string\n"));
+ HTL (_(" -I R same as --replace=R\n"));
+ HTL (_(" -i, --replace[=R] replace R in INITIAL-ARGS with names read\n"
+ " from standard input; if R is unspecified,\n"
+ " assume {}\n"));
+ HTL (_(" -L, --max-lines=MAX-LINES use at most MAX-LINES non-blank input lines per\n"
+ " command line\n"));
+ HTL (_(" -l[MAX-LINES] similar to -L but defaults to at most one non-\n"
+ " blank input line if MAX-LINES is not specified\n"));
+ HTL (_(" -n, --max-args=MAX-ARGS use at most MAX-ARGS arguments per command line\n"));
+ HTL (_(" -P, --max-procs=MAX-PROCS run at most MAX-PROCS processes at a time\n"));
+ HTL (_(" -p, --interactive prompt before running commands\n"));
+ HTL (_(" --process-slot-var=VAR set environment variable VAR in child processes\n"));
+ HTL (_(" -r, --no-run-if-empty if there are no arguments, then do not run COMMAND;\n"
+ " if this option is not given, COMMAND will be\n"
+ " run at least once\n"));
+ HTL (_(" -s, --max-chars=MAX-CHARS limit length of command line to MAX-CHARS\n"));
+ HTL (_(" --show-limits show limits on command-line length\n"));
+ HTL (_(" -t, --verbose print commands before executing them\n"));
+ HTL (_(" -x, --exit exit if the size (see -s) is exceeded\n"));
+
+ HTL (_(" --help display this help and exit\n"));
+ HTL (_(" --version output version information and exit\n"));
+ HTL (_("\n"
+ "Report bugs to <bug-findutils@gnu.org>.\n"));
+}