pdftex[825] branches/stable/source/src: sync with tl 55139 (no more

commits+karl at tug.org commits+karl at tug.org
Fri May 15 20:03:06 CEST 2020


Revision: 825
          http://tug.org/svn/pdftex?view=revision&revision=825
Author:   karl
Date:     2020-05-15 20:03:05 +0200 (Fri, 15 May 2020)
Log Message:
-----------
sync with tl 55139 (no more poppler)

Modified Paths:
--------------
    branches/stable/source/src/Makefile.in
    branches/stable/source/src/aclocal.m4
    branches/stable/source/src/auxdir/auxsub/Makefile.in
    branches/stable/source/src/auxdir/auxsub/aclocal.m4
    branches/stable/source/src/build-aux/config.guess
    branches/stable/source/src/build-aux/config.sub
    branches/stable/source/src/build-aux/texinfo.tex
    branches/stable/source/src/configure
    branches/stable/source/src/doc/ChangeLog
    branches/stable/source/src/doc/Makefile.in
    branches/stable/source/src/doc/build-tools.txt
    branches/stable/source/src/doc/tlbuild.info
    branches/stable/source/src/doc/tlbuild.texi
    branches/stable/source/src/libs/ChangeLog
    branches/stable/source/src/libs/Makefile.in
    branches/stable/source/src/libs/README
    branches/stable/source/src/libs/aclocal.m4
    branches/stable/source/src/libs/configure
    branches/stable/source/src/libs/libpng/Makefile.in
    branches/stable/source/src/libs/libpng/aclocal.m4
    branches/stable/source/src/libs/libpng/configure
    branches/stable/source/src/libs/libpng/include/Makefile.in
    branches/stable/source/src/libs/xpdf/ChangeLog
    branches/stable/source/src/libs/xpdf/Makefile.in
    branches/stable/source/src/libs/xpdf/ac/xpdf.ac
    branches/stable/source/src/libs/xpdf/aclocal.m4
    branches/stable/source/src/libs/xpdf/configure
    branches/stable/source/src/libs/xpdf/fofi/Makefile.in
    branches/stable/source/src/libs/xpdf/goo/Makefile.in
    branches/stable/source/src/libs/xpdf/splash/Makefile.in
    branches/stable/source/src/libs/xpdf/xpdf/Makefile.in
    branches/stable/source/src/libs/zlib/Makefile.in
    branches/stable/source/src/libs/zlib/aclocal.m4
    branches/stable/source/src/libs/zlib/configure
    branches/stable/source/src/libs/zlib/include/Makefile.in
    branches/stable/source/src/m4/ChangeLog
    branches/stable/source/src/m4/kpse-luajit-flags.m4
    branches/stable/source/src/m4/kpse-pkgs.m4
    branches/stable/source/src/m4/kpse-win32.m4
    branches/stable/source/src/m4/kpse-xpdf-flags.m4
    branches/stable/source/src/texk/Makefile.in
    branches/stable/source/src/texk/aclocal.m4
    branches/stable/source/src/texk/configure
    branches/stable/source/src/texk/kpathsea/ChangeLog
    branches/stable/source/src/texk/kpathsea/Makefile.in
    branches/stable/source/src/texk/kpathsea/aclocal.m4
    branches/stable/source/src/texk/kpathsea/c-auto.in
    branches/stable/source/src/texk/kpathsea/configure
    branches/stable/source/src/texk/kpathsea/doc/Makefile.in
    branches/stable/source/src/texk/kpathsea/knj.c
    branches/stable/source/src/texk/kpathsea/man/Makefile.in
    branches/stable/source/src/texk/kpathsea/readable.c
    branches/stable/source/src/texk/kpathsea/version.ac
    branches/stable/source/src/texk/kpathsea/win32/Makefile.in
    branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm
    branches/stable/source/src/texk/web2c/ChangeLog
    branches/stable/source/src/texk/web2c/Makefile.am
    branches/stable/source/src/texk/web2c/Makefile.in
    branches/stable/source/src/texk/web2c/ac/web2c.ac
    branches/stable/source/src/texk/web2c/aclocal.m4
    branches/stable/source/src/texk/web2c/configure
    branches/stable/source/src/texk/web2c/configure.ac
    branches/stable/source/src/texk/web2c/ctangleboot.cin
    branches/stable/source/src/texk/web2c/cwebboot.cin
    branches/stable/source/src/texk/web2c/cwebdir/ChangeLog
    branches/stable/source/src/texk/web2c/cwebdir/comm-w2c.ch
    branches/stable/source/src/texk/web2c/cwebdir/comm-w2c.h
    branches/stable/source/src/texk/web2c/cwebdir/ctang-w2c.ch
    branches/stable/source/src/texk/web2c/cwebdir/ctwill-w2c.ch
    branches/stable/source/src/texk/web2c/cwebdir/cweav-w2c.ch
    branches/stable/source/src/texk/web2c/cwebdir/po/de/cweb.po
    branches/stable/source/src/texk/web2c/cwebdir/po/de/web2c-help.po
    branches/stable/source/src/texk/web2c/cwebdir/po/it/cweb.po
    branches/stable/source/src/texk/web2c/cwebdir/po/web2c-help.pot
    branches/stable/source/src/texk/web2c/cwebdir/texinputs/Xcwebmac.tex
    branches/stable/source/src/texk/web2c/cwebdir/texinputs/dcwebmac.tex
    branches/stable/source/src/texk/web2c/cwebdir/texinputs/fcwebmac.tex
    branches/stable/source/src/texk/web2c/cwebdir/texinputs/icwebmac.tex
    branches/stable/source/src/texk/web2c/doc/Makefile.in
    branches/stable/source/src/texk/web2c/help.h
    branches/stable/source/src/texk/web2c/lib/Makefile.in
    branches/stable/source/src/texk/web2c/man/Makefile.in
    branches/stable/source/src/texk/web2c/omegafonts/Makefile.in
    branches/stable/source/src/texk/web2c/otps/Makefile.in
    branches/stable/source/src/texk/web2c/otps/win32/Makefile.in
    branches/stable/source/src/texk/web2c/pdftexdir/ChangeLog
    branches/stable/source/src/texk/web2c/pdftexdir/pdftex.ch
    branches/stable/source/src/texk/web2c/pdftexdir/pdftex.web
    branches/stable/source/src/texk/web2c/synctexdir/README.txt
    branches/stable/source/src/texk/web2c/synctexdir/synctex_main.c
    branches/stable/source/src/texk/web2c/synctexdir/synctex_parser.c
    branches/stable/source/src/texk/web2c/synctexdir/synctex_parser.h
    branches/stable/source/src/texk/web2c/synctexdir/synctex_parser_advanced.h
    branches/stable/source/src/texk/web2c/synctexdir/synctex_parser_utils.c
    branches/stable/source/src/texk/web2c/tex.ch
    branches/stable/source/src/texk/web2c/tiedir/ChangeLog
    branches/stable/source/src/texk/web2c/tiedir/tie-w2c.ch
    branches/stable/source/src/texk/web2c/tiedir/tie.w
    branches/stable/source/src/texk/web2c/web2c/Makefile.in
    branches/stable/source/src/texk/web2c/web2c/aclocal.m4
    branches/stable/source/src/texk/web2c/web2c/configure
    branches/stable/source/src/texk/web2c/window/Makefile.in
    branches/stable/source/src/utils/Makefile.in
    branches/stable/source/src/utils/aclocal.m4
    branches/stable/source/src/utils/configure
    branches/stable/source/src/version.ac

Added Paths:
-----------
    branches/stable/source/src/m4/kpse-pplib-flags.m4
    branches/stable/source/src/texk/web2c/cwebdir/texinputs/pdfwebtocfront.tex

Removed Paths:
-------------
    branches/stable/source/src/libs/poppler/
    branches/stable/source/src/m4/kpse-poppler-flags.m4
    branches/stable/source/src/texk/web2c/cwebboot.hin
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.68.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.69.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.70.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.71.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.75.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.83.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.86.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.71.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.72.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc
    branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.83.0.cc

Modified: branches/stable/source/src/Makefile.in
===================================================================
--- branches/stable/source/src/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -107,7 +107,7 @@
 	$(top_srcdir)/m4/kpse-options.m4 \
 	$(top_srcdir)/m4/kpse-pixman-flags.m4 \
 	$(top_srcdir)/m4/kpse-pkgs.m4 \
-	$(top_srcdir)/m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/m4/kpse-setup.m4 \
 	$(top_srcdir)/m4/kpse-teckit-flags.m4 \
@@ -173,6 +173,7 @@
 	$(top_srcdir)/texk/xdvik/ac/xdvik.ac \
 	$(top_srcdir)/texk/texlive/ac/withenable.ac \
 	$(top_srcdir)/texk/texlive/ac/texlive.ac \
+	$(top_srcdir)/libs/pplib/ac/withenable.ac \
 	$(top_srcdir)/libs/harfbuzz/ac/withenable.ac \
 	$(top_srcdir)/libs/icu/ac/withenable.ac \
 	$(top_srcdir)/libs/teckit/ac/withenable.ac \
@@ -179,7 +180,6 @@
 	$(top_srcdir)/libs/graphite2/ac/withenable.ac \
 	$(top_srcdir)/libs/zziplib/ac/withenable.ac \
 	$(top_srcdir)/libs/xpdf/ac/withenable.ac \
-	$(top_srcdir)/libs/poppler/ac/withenable.ac \
 	$(top_srcdir)/libs/mpfr/ac/withenable.ac \
 	$(top_srcdir)/libs/gmp/ac/withenable.ac \
 	$(top_srcdir)/libs/cairo/ac/withenable.ac \
@@ -205,7 +205,6 @@
 	$(top_srcdir)/libs/cairo/ac/cairo.ac \
 	$(top_srcdir)/libs/gmp/ac/gmp.ac \
 	$(top_srcdir)/libs/mpfr/ac/mpfr.ac \
-	$(top_srcdir)/libs/poppler/ac/poppler.ac \
 	$(top_srcdir)/libs/xpdf/ac/xpdf.ac \
 	$(top_srcdir)/libs/zziplib/ac/zziplib.ac \
 	$(top_srcdir)/libs/graphite2/ac/graphite2.ac \
@@ -492,7 +491,7 @@
 recurse_this = 
 recurse_top = 
 
-# $Id: Makefile.in 53614 2020-01-31 18:59:27Z karl $
+# $Id: Makefile.in 55138 2020-05-14 17:47:47Z karl $
 #
 # Requires $(recurse_this) and $(recurse_top).
 # Uses CONF_SUBDIRS and MAKE_SUBDIRS (set by kpse-setup.m4).
@@ -758,6 +757,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -800,6 +803,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -979,7 +984,7 @@
 	am--refresh check check-am clean clean-cscope clean-generic \
 	clean-libtool cscope cscopelist-am ctags ctags-am dist \
 	dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-shar \
-	dist-tarZ dist-xz dist-zip distcheck distclean \
+	dist-tarZ dist-xz dist-zip dist-zstd distcheck distclean \
 	distclean-generic distclean-libtool distclean-tags \
 	distcleancheck distdir distuninstallcheck dvi dvi-am html \
 	html-am info info-am install install-am install-data \

Modified: branches/stable/source/src/aclocal.m4
===================================================================
--- branches/stable/source/src/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -595,7 +597,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +618,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -638,7 +640,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -673,7 +675,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -716,7 +718,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -755,7 +757,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -784,7 +786,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +833,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -850,7 +852,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,7 +933,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -991,7 +993,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1019,7 +1021,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1038,7 +1040,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1187,7 +1189,7 @@
 m4_include([m4/kpse-options.m4])
 m4_include([m4/kpse-pixman-flags.m4])
 m4_include([m4/kpse-pkgs.m4])
-m4_include([m4/kpse-poppler-flags.m4])
+m4_include([m4/kpse-pplib-flags.m4])
 m4_include([m4/kpse-ptexenc-flags.m4])
 m4_include([m4/kpse-setup.m4])
 m4_include([m4/kpse-teckit-flags.m4])

Modified: branches/stable/source/src/auxdir/auxsub/Makefile.in
===================================================================
--- branches/stable/source/src/auxdir/auxsub/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/auxdir/auxsub/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -318,6 +318,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -360,6 +364,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -534,8 +540,8 @@
 
 .PHONY: all all-am am--refresh check check-am clean clean-generic \
 	cscopelist-am ctags-am dist dist-all dist-bzip2 dist-gzip \
-	dist-lzip dist-shar dist-tarZ dist-xz dist-zip distcheck \
-	distclean distclean-generic distcleancheck distdir \
+	dist-lzip dist-shar dist-tarZ dist-xz dist-zip dist-zstd \
+	distcheck distclean distclean-generic distcleancheck distdir \
 	distuninstallcheck 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 \

Modified: branches/stable/source/src/auxdir/auxsub/aclocal.m4
===================================================================
--- branches/stable/source/src/auxdir/auxsub/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/auxdir/auxsub/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -143,7 +143,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -340,7 +340,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -361,7 +361,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -383,7 +383,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -418,7 +418,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -457,7 +457,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -488,7 +488,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -569,7 +569,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -629,7 +629,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -657,7 +657,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -676,7 +676,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/build-aux/config.guess
===================================================================
--- branches/stable/source/src/build-aux/config.guess	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/build-aux/config.guess	2020-05-15 18:03:05 UTC (rev 825)
@@ -2,7 +2,7 @@
 # Attempt to guess a canonical system name.
 #   Copyright 1992-2020 Free Software Foundation, Inc.
 
-timestamp='2020-01-01'
+timestamp='2020-04-26'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -1629,7 +1629,13 @@
   https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
 and
   https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+EOF
 
+year=`echo $timestamp | sed 's,-.*,,'`
+# shellcheck disable=SC2003
+if test "`expr "\`date +%Y\`" - "$year"`" -lt 3 ; then
+   cat >&2 <<EOF
+
 If $0 has already been updated, send the following data and any
 information you think might be pertinent to config-patches at gnu.org to
 provide the necessary information to handle your system.
@@ -1656,6 +1662,7 @@
 UNAME_SYSTEM  = "$UNAME_SYSTEM"
 UNAME_VERSION = "$UNAME_VERSION"
 EOF
+fi
 
 exit 1
 

Modified: branches/stable/source/src/build-aux/config.sub
===================================================================
--- branches/stable/source/src/build-aux/config.sub	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/build-aux/config.sub	2020-05-15 18:03:05 UTC (rev 825)
@@ -2,7 +2,7 @@
 # Configuration validation subroutine script.
 #   Copyright 1992-2020 Free Software Foundation, Inc.
 
-timestamp='2020-01-01'
+timestamp='2020-05-04'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -1366,7 +1366,7 @@
 	     | skyos* | haiku* | rdos* | toppers* | drops* | es* \
 	     | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
 	     | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
-	     | nsk* | powerunix)
+	     | nsk* | powerunix* | genode*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	qnx*)

Modified: branches/stable/source/src/build-aux/texinfo.tex
===================================================================
--- branches/stable/source/src/build-aux/texinfo.tex	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/build-aux/texinfo.tex	2020-05-15 18:03:05 UTC (rev 825)
@@ -3,9 +3,9 @@
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2020-02-11.09}
+\def\texinfoversion{2020-05-07.17}
 %
-% Copyright 1985, 1986, 1988, 1990-2019 Free Software Foundation, Inc.
+% Copyright 1985, 1986, 1988, 1990-2020 Free Software Foundation, Inc.
 %
 % This texinfo.tex file is free software: you can redistribute it and/or
 % modify it under the terms of the GNU General Public License as
@@ -349,34 +349,19 @@
   \ifodd\pageno  \advance\hoffset by \bindingoffset
   \else \advance\hoffset by -\bindingoffset\fi
   %
+  \checkchapterpage
+  %
   % Retrieve the information for the headings from the marks in the page,
   % and call Plain TeX's \makeheadline and \makefootline, which use the
   % values in \headline and \footline.
   %
-  % This is used to check if we are on the first page of a chapter.
-  \ifcase1\the\savedtopmark\fi
-  \let\prevchaptername\thischaptername
-  \ifcase0\firstmark\fi
-  \let\curchaptername\thischaptername
-  %
-  \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
-  %
-  \ifx\curchaptername\prevchaptername
-    \let\thischapterheading\thischapter
-  \else
-    % \thischapterheading is the same as \thischapter except it is blank
-    % for the first page of a chapter.  This is to prevent the chapter name
-    % being shown twice.
-    \def\thischapterheading{}%
-  \fi
-  %
   % Common context changes for both heading and footing.
   % Do this outside of the \shipout so @code etc. will be expanded in
   % the headline as they should be, not taken literally (outputting ''code).
   \def\commonheadfootline{\let\hsize=\txipagewidth \texinfochars}
   %
+  \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
   \global\setbox\headlinebox = \vbox{\commonheadfootline \makeheadline}%
-  %
   \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
   \global\setbox\footlinebox = \vbox{\commonheadfootline \makefootline}%
   %
@@ -423,6 +408,24 @@
 \ifr at ggedbottom \kern-\dimen@ \vfil \fi}
 }
 
+% Check if we are on the first page of a chapter.
+\def\checkchapterpage{%
+  % Get the chapter that was current at the end of the last page
+  \ifcase1\the\savedtopmark\fi
+  \let\prevchaptername\thischaptername
+  %
+  \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
+  \let\curchaptername\thischaptername
+  %
+  \ifx\curchaptername\prevchaptername
+    \let\thischapterheading\thischapter
+  \else
+    % \thischapterheading is the same as \thischapter except it is blank
+    % for the first page of a chapter.  This is to prevent the chapter name
+    % being shown twice.
+    \def\thischapterheading{}%
+  \fi
+}
 
 % Argument parsing
 
@@ -1427,7 +1430,13 @@
       % subentries, which we calculated on our first read of the .toc above.
       %
       % We use the node names as the destinations.
+      %
+      % Currently we prefix the section name with the section number
+      % for chapter and appendix headings only in order to avoid too much
+      % horizontal space being required in the PDF viewer.
       \def\numchapentry##1##2##3##4{%
+        \dopdfoutline{##2 ##1}{count-\expnumber{chap##2}}{##3}{##4}}%
+      \def\unnchapentry##1##2##3##4{%
         \dopdfoutline{##1}{count-\expnumber{chap##2}}{##3}{##4}}%
       \def\numsecentry##1##2##3##4{%
         \dopdfoutline{##1}{count-\expnumber{sec##2}}{##3}{##4}}%
@@ -1669,9 +1678,13 @@
       % Therefore, we read toc only once.
       %
       % We use node names as destinations.
+      %
+      % Currently we prefix the section name with the section number
+      % for chapter and appendix headings only in order to avoid too much
+      % horizontal space being required in the PDF viewer.
       \def\partentry##1##2##3##4{}% ignore parts in the outlines
       \def\numchapentry##1##2##3##4{%
-        \dopdfoutline{##1}{1}{##3}{##4}}%
+        \dopdfoutline{##2 ##1}{1}{##3}{##4}}%
       \def\numsecentry##1##2##3##4{%
         \dopdfoutline{##1}{2}{##3}{##4}}%
       \def\numsubsecentry##1##2##3##4{%
@@ -1683,7 +1696,8 @@
       \let\appsecentry\numsecentry%
       \let\appsubsecentry\numsubsecentry%
       \let\appsubsubsecentry\numsubsubsecentry%
-      \let\unnchapentry\numchapentry%
+      \def\unnchapentry##1##2##3##4{%
+        \dopdfoutline{##1}{1}{##3}{##4}}%
       \let\unnsecentry\numsecentry%
       \let\unnsubsecentry\numsubsecentry%
       \let\unnsubsubsecentry\numsubsubsecentry%
@@ -2496,7 +2510,7 @@
 \def\it{\fam=\itfam \setfontstyle{it}}
 \def\sl{\fam=\slfam \setfontstyle{sl}}
 \def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf}
-\def\tt{\fam=\ttfam \setfontstyle{tt}}
+\def\tt{\fam=\ttfam \setfontstyle{tt}}\def\ttstylename{tt}
 
 % Texinfo sort of supports the sans serif font style, which plain TeX does not.
 % So we set up a \sf.
@@ -3101,10 +3115,10 @@
 
 % Allow a ragged right output to aid breaking long URL's.  There can
 % be a break at the \allowbreak with no extra glue (if the existing stretch in
-% the line is sufficent), a break at the \penalty100 with extra glue added
+% the line is sufficient), a break at the \penalty100 with extra glue added
 % at the end of the line, or no break at all here.
 %   Changing the value of the penalty and/or the amount of stretch affects how
-% preferrable one choice is over the other.
+% preferable one choice is over the other.
 \def\urefallowbreak{%
   \allowbreak
   \hskip 0pt plus 2 em\relax
@@ -3509,7 +3523,7 @@
 
 % @pounds{} is a sterling sign, which Knuth put in the CM italic font.
 %
-\def\pounds{{\it\$}}
+\def\pounds{\ifmonospace{\ecfont\char"BF}\else{\it\$}\fi}
 
 % @euro{} comes from a separate font, depending on the current style.
 % We use the free feym* fonts from the eurosym package by Henrik
@@ -3658,12 +3672,20 @@
 \fi
 
 % Quotes.
-\chardef\quotedblleft="5C
-\chardef\quotedblright=`\"
 \chardef\quoteleft=`\`
 \chardef\quoteright=`\'
 
+% only change font for tt for correct kerning and to avoid using
+% \ecfont unless necessary.
+\def\quotedblleft{%
+  \ifmonospace{\ecfont\char"10}\else{\char"5C}\fi
+}
 
+\def\quotedblright{%
+  \ifmonospace{\ecfont\char"11}\else{\char`\"}\fi
+}
+
+
 \message{page headings,}
 
 \newskip\titlepagetopglue \titlepagetopglue = 1.5in
@@ -7444,13 +7466,9 @@
 \newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount
 %
 % We typeset each line of the verbatim in an \hbox, so we can handle
-% tabs.  The \global is in case the verbatim line starts with an accent,
-% or some other command that starts with a begin-group.  Otherwise, the
-% entire \verbbox would disappear at the corresponding end-group, before
-% it is typeset.  Meanwhile, we can't have nested verbatim commands
-% (can we?), so the \global won't be overwriting itself.
+% tabs.
 \newbox\verbbox
-\def\starttabbox{\global\setbox\verbbox=\hbox\bgroup}
+\def\starttabbox{\setbox\verbbox=\hbox\bgroup}
 %
 \begingroup
   \catcode`\^^I=\active
@@ -7461,7 +7479,8 @@
       \divide\dimen\verbbox by\tabw
       \multiply\dimen\verbbox by\tabw % compute previous multiple of \tabw
       \advance\dimen\verbbox by\tabw  % advance to next multiple of \tabw
-      \wd\verbbox=\dimen\verbbox \box\verbbox \starttabbox
+      \wd\verbbox=\dimen\verbbox
+      \leavevmode\box\verbbox \starttabbox
     }%
   }
 \endgroup
@@ -7471,9 +7490,7 @@
   \let\nonarrowing = t%
   \nonfillstart
   \tt % easiest (and conventionally used) font for verbatim
-  % The \leavevmode here is for blank lines.  Otherwise, we would
-  % never \starttabbox and the \egroup would end verbatim mode.
-  \def\par{\leavevmode\egroup\box\verbbox\endgraf}%
+  \def\par{\egroup\box\verbbox\endgraf\starttabbox}%
   \tabexpand
   \setupmarkupstyle{verbatim}%
   % Respect line breaks,
@@ -7481,7 +7498,6 @@
   % make each space count.
   % Must do in this order:
   \obeylines \uncatcodespecials \sepspaces
-  \everypar{\starttabbox}%
 }
 
 % Do the @verb magic: verbatim text is quoted by unique
@@ -7516,9 +7532,12 @@
   % ignore everything up to the first ^^M, that's the newline at the end
   % of the @verbatim input line itself.  Otherwise we get an extra blank
   % line in the output.
-  \xdef\doverbatim#1^^M#2 at end verbatim{#2\noexpand\end\gobble verbatim}%
+  \xdef\doverbatim#1^^M#2 at end verbatim{%
+    \starttabbox#2\egroup\noexpand\end\gobble verbatim}%
   % We really want {...\end verbatim} in the body of the macro, but
   % without the active space; thus we have to use \xdef and \gobble.
+  % The \egroup ends the \verbbox started at the end of the last line in
+  % the block.
 \endgroup
 %
 \envdef\verbatim{%

Modified: branches/stable/source/src/configure
===================================================================
--- branches/stable/source/src/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -903,8 +903,6 @@
 with_system_teckit
 with_system_graphite2
 with_system_zziplib
-with_system_xpdf
-with_system_poppler
 with_system_mpfr
 with_mpfr_includes
 with_mpfr_libdir
@@ -1761,10 +1759,6 @@
                           (requires pkg-config)
   --with-system-zziplib   use installed zziplib headers and library (requires
                           pkg-config)
-  --with-system-xpdf      use installed poppler headers and library instead of
-                          xpdf library from TL (requires pkg-config)
-  --with-system-poppler   use installed poppler headers and library (requires
-                          pkg-config)
   --with-system-mpfr      use installed mpfr headers and library
   --with-mpfr-includes=DIR
                           mpfr headers installed in DIR
@@ -4519,7 +4513,7 @@
   need_zlib=yes
 }
 
-# $Id: web2c.ac 53078 2019-12-10 18:39:13Z karl $
+# $Id: web2c.ac 55138 2020-05-14 17:47:47Z karl $
 # texk/web2c/ac/web2c.ac: configure.ac fragment for the TeX Live subdirectory texk/web2c/
 ## configure options for TeX and MF
 
@@ -4702,6 +4696,7 @@
 esac
 
 test "x$enable_web2c:$enable_luatex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -4718,6 +4713,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajittex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -4734,6 +4730,7 @@
 esac
 
 test "x$enable_web2c:$enable_luahbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -4751,6 +4748,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajithbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -4823,7 +4821,7 @@
 fi
 
 test "x$enable_web2c:$enable_xetex" = xyes:yes && {
-  need_poppler=yes
+  need_pplib=yes
   need_libpng=yes
   need_freetype2=yes
   need_teckit=yes
@@ -5779,6 +5777,9 @@
 fi
 
 
+## libs/pplib/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/pplib/
+## configure options and TL libraries required for pplib
+
 ## libs/harfbuzz/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/harfbuzz/
 ## configure options and TL libraries required for harfbuzz
 
@@ -5982,11 +5983,7 @@
 
 ## libs/xpdf/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/xpdf/
 ## configure options and TL libraries required for xpdf
-
-# Check whether --with-system-xpdf was given.
-if test "${with_system_xpdf+set}" = set; then :
-  withval=$with_system_xpdf;
-fi
+: "kpse_xpdf_options - no-op"
 if test "x$with_system_xpdf" = x; then
   if test -f $srcdir/libs/xpdf/configure; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming \`xpdf' headers and library from TL tree" >&5
@@ -6010,50 +6007,6 @@
   fi
 fi
 
-## libs/poppler/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/poppler/
-## configure options and TL libraries required for poppler
-
-# Check whether --with-system-poppler was given.
-if test "${with_system_poppler+set}" = set; then :
-  withval=$with_system_poppler;
-fi
-if test "x$with_system_poppler" = x; then
-  if test -f $srcdir/libs/poppler/configure; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming \`poppler' headers and library from TL tree" >&5
-$as_echo "$as_me: Assuming \`poppler' headers and library from TL tree" >&6;}
-    with_system_poppler=no
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming installed \`poppler' headers and library" >&5
-$as_echo "$as_me: Assuming installed \`poppler' headers and library" >&6;}
-    with_system_poppler=yes
-  fi
-  ac_configure_args="$ac_configure_args '--with-system-poppler=$with_system_poppler'"
-elif test "x$with_system_poppler" = xyes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: Using installed \`poppler' headers and library" >&5
-$as_echo "$as_me: Using installed \`poppler' headers and library" >&6;}
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: Using \`poppler' headers and library from TL tree" >&5
-$as_echo "$as_me: Using \`poppler' headers and library from TL tree" >&6;}
-  if test "x$with_system_poppler" != xno; then
-    with_system_poppler=no
-    ac_configure_args="$ac_configure_args '--without-system-poppler'"
-  fi
-fi
-if test "x$with_system_poppler" = xyes; then
-  if test "x$with_system_zlib" = x; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}:   ->  installed \`zlib' headers and library" >&5
-$as_echo "$as_me:   ->  installed \`zlib' headers and library" >&6;}
-    with_system_zlib=yes
-    ac_configure_args="$ac_configure_args '--with-system-zlib'"
-  elif test "x$with_system_zlib" != xyes; then
-    as_fn_error $? "Sorry, \`--with-system-poppler' requires \`--with-system-zlib'" "$LINENO" 5
-  fi
-fi
-
-test "x$need_poppler" = xyes && {
-  need_zlib=yes
-}
-
 ## libs/mpfr/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/mpfr/
 ## configure options and TL libraries required for mpfr
 
@@ -21273,6 +21226,13 @@
   ZLIB_LIBS="-L$with_zlib_libdir $ZLIB_LIBS"
 fi
 
+if $PKG_CONFIG PPLIB; then
+  PPLIB_INCLUDES=`$PKG_CONFIG PPLIB --cflags`
+  PPLIB_LIBS=`$PKG_CONFIG PPLIB --libs`
+elif test "x$need_PPLIB:$with_system_PPLIB" = xyes:yes; then
+  as_fn_error $? "did not find PPLIB" "$LINENO" 5
+fi
+
 ##tldbg _KPSE_LIB_FLAGS_SYSTEM: libpaper (paper).
 if test "x$with_libpaper_includes" != x && test "x$with_libpaper_includes" != xyes; then
   LIBPAPER_INCLUDES="-I$with_libpaper_includes"
@@ -21522,26 +21482,8 @@
   MPFR_LIBS="-L$with_mpfr_libdir $MPFR_LIBS"
 fi
 
-if $PKG_CONFIG poppler --atleast-version=0.30; then
-  POPPLER_INCLUDES=`$PKG_CONFIG poppler --cflags`
-  POPPLER_LIBS=`$PKG_CONFIG poppler --libs`
-elif test "x$need_poppler:$with_system_poppler" = xyes:yes; then
-  as_fn_error $? "did not find poppler 0.30 or better" "$LINENO" 5
-fi
+: "kpse_xpdf_system_flags - no-op"
 
-POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-POPPLER_INCLUDES="$POPPLER_VERSION $POPPLER_INCLUDES"
-
-if $PKG_CONFIG poppler --atleast-version=0.12; then
-  XPDF_INCLUDES=`$PKG_CONFIG poppler --cflags`
-  XPDF_LIBS=`$PKG_CONFIG poppler --libs`
-elif test "x$need_xpdf:$with_system_xpdf" = xyes:yes; then
-  as_fn_error $? "did not find poppler 0.12 or better" "$LINENO" 5
-fi
-
-POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-XPDF_INCLUDES="$POPPLER_VERSION $XPDF_INCLUDES"
-
 if $PKG_CONFIG zziplib --atleast-version=0.12; then
   ZZIPLIB_INCLUDES=`$PKG_CONFIG zziplib --cflags`
   ZZIPLIB_LIBS=`$PKG_CONFIG zziplib --libs`
@@ -22094,47 +22036,9 @@
 $as_echo "$kpse_res" >&6; }
 fi
 
-## libs/poppler/ac/poppler.ac: configure.ac fragment for the TeX Live subdirectory libs/poppler/
-## basic check of system poppler
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test "x$need_poppler:$with_system_poppler" = xyes:yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking requested system \`poppler' library" >&5
-$as_echo_n "checking requested system \`poppler' library... " >&6; }
-  CPPFLAGS="$POPPLER_INCLUDES $CPPFLAGS"
-  LIBS="$POPPLER_LIBS $LIBS"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <GfxFont.h>
-int
-main ()
-{
-GfxFont *gfxFont; gfxFont->decRefCnt();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-  syslib_used=yes kpse_res=ok
-else
-  syslib_status=no kpse_res=failed
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $kpse_res" >&5
-$as_echo "$kpse_res" >&6; }
-fi
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
 ## libs/xpdf/ac/xpdf.ac: configure.ac fragment for the TeX Live subdirectory libs/xpdf/
-## basic check of system xpdf (poppler)
+## basic check of system xpdf (a.k.a. poppler, no longer supported in
+## TL sources)
 ac_ext=cpp
 ac_cpp='$CXXCPP $CPPFLAGS'
 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -24021,7 +23925,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }
@@ -24961,11 +24867,11 @@
 test "x$srcdir" = x. || msg_compiling="$msg_compiling
       from sources in $kpse_src"
 { $as_echo "$as_me:${as_lineno-$LINENO}: result:
-** Configuration summary for $PACKAGE_STRING (2020$with_banner_add):
+** Configuration summary for $PACKAGE_STRING (2021/dev$with_banner_add):
 
    $msg_compiling" >&5
 $as_echo "
-** Configuration summary for $PACKAGE_STRING (2020$with_banner_add):
+** Configuration summary for $PACKAGE_STRING (2021/dev$with_banner_add):
 
    $msg_compiling" >&6; }
 case $kpse_src$kpse_bld in

Modified: branches/stable/source/src/doc/ChangeLog
===================================================================
--- branches/stable/source/src/doc/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/doc/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,3 +1,8 @@
+2020-05-14  Karl Berry  <karl at freefriends.org>
+
+	* tlbuild.texi: remove poppler references.
+	* build-tools.txt: bison 3.6.1.
+
 2020-03-13  Karl Berry  <karl at tug.org>
 
 	* tlbuild.texi: update for 2020.

Modified: branches/stable/source/src/doc/Makefile.in
===================================================================
--- branches/stable/source/src/doc/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/doc/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -107,7 +107,7 @@
 	$(top_srcdir)/m4/kpse-options.m4 \
 	$(top_srcdir)/m4/kpse-pixman-flags.m4 \
 	$(top_srcdir)/m4/kpse-pkgs.m4 \
-	$(top_srcdir)/m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/m4/kpse-setup.m4 \
 	$(top_srcdir)/m4/kpse-teckit-flags.m4 \
@@ -173,6 +173,7 @@
 	$(top_srcdir)/texk/xdvik/ac/xdvik.ac \
 	$(top_srcdir)/texk/texlive/ac/withenable.ac \
 	$(top_srcdir)/texk/texlive/ac/texlive.ac \
+	$(top_srcdir)/libs/pplib/ac/withenable.ac \
 	$(top_srcdir)/libs/harfbuzz/ac/withenable.ac \
 	$(top_srcdir)/libs/icu/ac/withenable.ac \
 	$(top_srcdir)/libs/teckit/ac/withenable.ac \
@@ -179,7 +180,6 @@
 	$(top_srcdir)/libs/graphite2/ac/withenable.ac \
 	$(top_srcdir)/libs/zziplib/ac/withenable.ac \
 	$(top_srcdir)/libs/xpdf/ac/withenable.ac \
-	$(top_srcdir)/libs/poppler/ac/withenable.ac \
 	$(top_srcdir)/libs/mpfr/ac/withenable.ac \
 	$(top_srcdir)/libs/gmp/ac/withenable.ac \
 	$(top_srcdir)/libs/cairo/ac/withenable.ac \
@@ -205,7 +205,6 @@
 	$(top_srcdir)/libs/cairo/ac/cairo.ac \
 	$(top_srcdir)/libs/gmp/ac/gmp.ac \
 	$(top_srcdir)/libs/mpfr/ac/mpfr.ac \
-	$(top_srcdir)/libs/poppler/ac/poppler.ac \
 	$(top_srcdir)/libs/xpdf/ac/xpdf.ac \
 	$(top_srcdir)/libs/zziplib/ac/zziplib.ac \
 	$(top_srcdir)/libs/graphite2/ac/graphite2.ac \

Modified: branches/stable/source/src/doc/build-tools.txt
===================================================================
--- branches/stable/source/src/doc/build-tools.txt	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/doc/build-tools.txt	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
 autoconf (GNU Autoconf) 2.69
-automake (GNU automake) 1.16.1
-bison (GNU Bison) 3.5.2
+automake (GNU automake) 1.16.2
+bison (GNU Bison) 3.6.1
 flex 2.6.0
 ltmain.sh (GNU libtool) 2.4.6
 m4 (GNU M4) 1.4.18

Modified: branches/stable/source/src/doc/tlbuild.info
===================================================================
--- branches/stable/source/src/doc/tlbuild.info	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/doc/tlbuild.info	2020-05-15 18:03:05 UTC (rev 825)
@@ -167,9 +167,9 @@
 Automake/Autoconf output in general) work with any reasonable 'make'.
 
    A C++11 compiler is similarly required because of the third-party
-libraries ICU and Poppler; the program 'dvisvgm' also requires C++11.
-It is possible to build everything else with older compilers, but you
-have to remove the C++11-dependent sources.  *Note Build one package::.
+library ICU; the program 'dvisvgm' also requires C++11.  It is possible
+to build everything else with older compilers, but you have to remove
+the C++11-dependent sources.  *Note Build one package::.
 
    A few programs in the tree have additional requirements:
 
@@ -383,7 +383,7 @@
 source directories; specifying '--disable' for them does not suffice,
 unfortunately.  Specifically, before running 'configure':
 
-     rm -rf libs/icu libs/poppler libs/graphite2 texk/dvisvgm
+     rm -rf libs/icu libs/graphite2 texk/dvisvgm
 
    Also, even with '--disable-all-pkgs', dependencies are (currently)
 checked.  For instance, if a (non-MacOSX) system does not have
@@ -745,8 +745,8 @@
    Currently the versions we use are:
 
      autoconf (GNU Autoconf) 2.69
-     automake (GNU automake) 1.16.1
-     bison (GNU Bison) 3.5.2
+     automake (GNU automake) 1.16.2
+     bison (GNU Bison) 3.6.1
      flex 2.6.0
      ltmain.sh (GNU libtool) 2.4.6
      m4 (GNU M4) 1.4.18
@@ -1514,9 +1514,7 @@
 specifications.
 
    With LFS, there is no fixed limit on the size of PDF files created by
-'pdftex' or PostScript files created by 'dvips'.  The size of PDF images
-included by 'pdftex' or 'luatex' must, however, be <2GB when using
-'poppler' version 0.22 or before (even on 64-bit systems with LFS).
+'pdftex' or PostScript files created by 'dvips'.
 
 
 File: tlbuild.info,  Node: --disable-missing,  Next: --enable-compiler-warnings=LEVEL,  Prev: --disable-largefile,  Up: Global configure options
@@ -1856,10 +1854,9 @@
 * Menu:
 
 * Configure options for kpathsea::
-* Configure options for system poppler::
 
 
-File: tlbuild.info,  Node: Configure options for kpathsea,  Next: Configure options for system poppler,  Up: Library-specific configure options
+File: tlbuild.info,  Node: Configure options for kpathsea,  Up: Library-specific configure options
 
 7.3.1 Configure options for 'kpathsea'
 --------------------------------------
@@ -1886,24 +1883,6 @@
 overridden by the user in any case (*note kpathsea library::).
 
 
-File: tlbuild.info,  Node: Configure options for system poppler,  Prev: Configure options for kpathsea,  Up: Library-specific configure options
-
-7.3.2 Configure options for system 'poppler'
---------------------------------------------
-
-Building XeTeX requires 'poppler', either from the TL tree or system
-headers and library.  Building pdfTeX requires either 'xpdf' from the
-TeX Live tree or system 'poppler' headers and library.
-
-'--with-system-poppler'
-Use a system version (0.18 or newer) of 'poppler' for LuaTeX (or
-LuaJITTeX) and XeTeX, and use 'pkg-config' to obtain the required flags.
-
-'--with-system-xpdf'
-Use a system version (0.12 or newer) of 'poppler' (and 'pkg-config') for
-pdfTeX instead of 'xpdf' from the TL tree.  *Note --disable-largefile::.
-
-
 File: tlbuild.info,  Node: Variables for configure,  Prev: Library-specific configure options,  Up: Configure options
 
 7.4 Variables for configure
@@ -5416,10 +5395,6 @@
                                                                (line  9)
 * --with-system-libgs:                   Configure options for texk/dvisvgm.
                                                                (line  6)
-* --with-system-poppler:                 Configure options for system poppler.
-                                                               (line 11)
-* --with-system-xpdf:                    Configure options for system poppler.
-                                                               (line 15)
 * --with-xdvi-x-toolkit:                 xdvik package.        (line 21)
 * --with-xdvi-x-toolkit=KIT:             Configure options for texk/xdvik.
                                                                (line  9)
@@ -5509,8 +5484,6 @@
                                                                (line  6)
 * configure options, for kpathsea:       Configure options for kpathsea.
                                                                (line  6)
-* configure options, for system poppler: Configure options for system poppler.
-                                                               (line  6)
 * configure options, for texk/texlive:   Configure options for texk/texlive.
                                                                (line  6)
 * configure options, for web2c:          Configure options for texk/web2c.
@@ -5761,8 +5734,6 @@
                                                                (line 23)
 * plain.tex, not in source tree:         Installing.           (line  8)
 * png library:                           png library.          (line  6)
-* poppler:                               Configure options for system poppler.
-                                                               (line  6)
 * PostScript files, size of:             --disable-largefile.  (line 11)
 * Preining, Norbert:                     Distro builds.        (line 54)
 * preloaded binaries:                    Configure options for texk/web2c.
@@ -5867,8 +5838,6 @@
                                                                (line 13)
 * Xlib:                                  Configure options for texk/web2c.
                                                                (line 22)
-* xpdf as library:                       Configure options for system poppler.
-                                                               (line  6)
 * xz:                                    Linked scripts.       (line 23)
 * zlib library:                          zlib library.         (line  6)
 
@@ -5879,399 +5848,398 @@
 Node: Introduction2118
 Node: Overview of build system3943
 Node: Prerequisites5994
-Node: Building8603
-Node: Build iteration9989
-Node: Build problems11030
-Node: Build in parallel11484
-Node: Build distribution12088
-Node: Build one package12736
-Node: Build one engine16415
-Node: Cross compilation17464
-Node: Cross configuring18744
-Node: Cross problems20421
-Node: Installing22083
-Node: Installation directories23103
-Node: Linked scripts24921
-Node: Distro builds26412
-Node: Layout and infrastructure28788
-Node: Build system tools29619
-Node: Top-level directories31836
-Node: Autoconf macros34072
-Node: General setup macros34834
-Node: Macros for programs35709
-Node: Macros for compilers36510
-Node: Macros for libraries37918
-Node: Macros for library and header flags38344
-Node: Macros for Windows40255
-Node: Library modules41842
-Node: png library42331
-Node: zlib library44679
-Node: freetype library45194
-Node: kpathsea library45890
-Node: Program modules47269
-Node: t1utils package47697
-Node: xindy package48242
-Node: xdvik package49356
-Node: asymptote50415
-Node: Extending TeX Live50911
-Node: Adding a new program module51694
-Node: Adding a new generic library module55033
-Node: Adding a new TeX-specific library module57262
-Node: Configure options57960
-Node: Global configure options59341
-Node: --disable-native-texlive-build59883
-Node: --prefix --bindir ...60845
-Node: --disable-largefile61385
-Node: --disable-missing62086
-Node: --enable-compiler-warnings=LEVEL62487
-Node: --enable-cxx-runtime-hack63143
-Node: --enable-maintainer-mode63563
-Node: --enable-multiplatform64092
-Node: --enable-shared64665
-Node: --enable-silent-rules65036
-Node: --without-ln-s65488
-Node: --without-x65835
-Node: Program-specific configure options66023
-Node: --enable-PROG --disable-PROG66666
-Node: --disable-all-pkgs66939
-Node: Configure options for texk/web2c67722
-Node: Configure options for texk/bibtex-x70260
-Node: Configure options for texk/dvipdfm-x70803
-Node: Configure options for texk/dvisvgm71579
-Node: Configure options for texk/texlive72460
-Node: Configure options for texk/xdvik72881
-Node: Configure options for utils/xindy73502
-Node: Library-specific configure options74392
-Node: Configure options for kpathsea75394
-Node: Configure options for system poppler76143
-Node: Variables for configure76907
-Node: Coding conventions78333
-Node: Declarations and definitions79048
-Node: Const81222
-Node: Continuous integration83086
-Node: Transfer from Subversion to Github83750
-Node: Automatic update of the Git mirror85912
-Node: CI testing on Travis-CI86494
-Node: Releases on Github87203
-Node: install-tl87643
-Node: install-tl NAME88012
-Node: install-tl SYNOPSIS88170
-Node: install-tl DESCRIPTION88428
-Node: install-tl REFERENCES89488
-Node: install-tl OPTIONS90012
-Ref: install-tl *-gui* [[=]_module_]90353
-Ref: install-tl text90561
-Ref: install-tl tcl90681
-Ref: install-tl wizard91023
-Ref: install-tl expert91156
-Ref: install-tl perltk91278
-Ref: install-tl *-no-gui*91824
-Ref: install-tl *-lang* _llcode_91914
-Ref: install-tl *-repository* _url|path_92670
-Ref: install-tl *-select-repository*93558
-Ref: install-tl *-all-options*93994
-Ref: install-tl *-custom-bin* _path_94249
-Ref: install-tl *-debug-translation*95083
-Ref: install-tl *-force-platform* _platform_95302
-Ref: install-tl *-help*, *--help*, *-?*95546
-Ref: install-tl *-in-place*95959
-Ref: install-tl *-init-from-profile* _profile_file_96504
-Ref: install-tl *-logfile* _file_96773
-Ref: install-tl *-no-cls*97124
-Ref: install-tl *-no-persistent-downloads*97272
-Ref: install-tl *-persistent-downloads*97297
-Ref: install-tl *-no-verify-downloads*97915
-Ref: install-tl *-non-admin*98278
-Ref: install-tl *-portable*98371
-Ref: install-tl *-print-platform*98510
-Ref: install-tl *-profile* _profile_file_98708
-Ref: install-tl *-q*98929
-Ref: install-tl *-scheme* _scheme_98991
-Ref: install-tl *-v*99465
-Ref: install-tl *-version*, *--version*99620
-Node: install-tl PROFILES99754
-Ref: install-tl instopt_adjustpath (default 0 on Unix, 1 on Windows)102620
-Ref: install-tl instopt_adjustrepo (default 1)102696
-Ref: install-tl instopt_letter (default 0)102833
-Ref: install-tl instopt_portable (default 0)102924
-Ref: install-tl instopt_write18_restricted (default 1)103020
-Node: install-tl ENVIRONMENT VARIABLES104359
-Ref: install-tl TEXLIVE_DOWNLOADER104737
-Ref: install-tl TL_DOWNLOAD_PROGRAM104760
-Ref: install-tl TL_DOWNLOAD_ARGS104780
-Ref: install-tl TEXLIVE_INSTALL_ENV_NOCHECK104984
-Ref: install-tl TEXLIVE_INSTALL_NO_CONTEXT_CACHE105186
-Ref: install-tl TEXLIVE_INSTALL_NO_IMPORT105295
-Ref: install-tl TEXLIVE_INSTALL_NO_WELCOME105447
-Ref: install-tl TEXLIVE_INSTALL_PREFIX105569
-Ref: install-tl TEXLIVE_INSTALL_TEXDIR105595
-Ref: install-tl TEXLIVE_INSTALL_TEXMFCONFIG105626
-Ref: install-tl TEXLIVE_INSTALL_TEXMFVAR105654
-Ref: install-tl TEXLIVE_INSTALL_TEXMFHOME105683
-Ref: install-tl TEXLIVE_INSTALL_TEXMFLOCAL105713
-Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSCONFIG105747
-Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSVAR105778
-Ref: install-tl NOPERLDOC106149
-Node: install-tl AUTHORS AND COPYRIGHT106213
-Node: tlmgr106626
-Node: tlmgr NAME107111
-Node: tlmgr SYNOPSIS107243
-Node: tlmgr DESCRIPTION107433
-Node: tlmgr EXAMPLES108532
-Ref: tlmgr tlmgr option repository ctan108783
-Ref: tlmgr tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet108855
-Ref: tlmgr tlmgr update --list109460
-Ref: tlmgr tlmgr update --all109553
-Ref: tlmgr tlmgr info _what_109710
-Node: tlmgr OPTIONS109972
-Ref: tlmgr *--repository* _url|path_110492
-Ref: tlmgr /some/local/dir111678
-Ref: tlmgr file:/some/local/dir111707
-Ref: tlmgr ctan111780
-Ref: tlmgr http://mirror.ctan.org/systems/texlive/tlnet111833
-Ref: tlmgr http://server/path/to/tlnet112174
-Ref: tlmgr https://server/path/to/tlnet112555
-Ref: tlmgr ftp://server/path/to/tlnet113023
-Ref: tlmgr user at machine:/path/to/tlnet113155
-Ref: tlmgr scp://user@machine/path/to/tlnet113196
-Ref: tlmgr ssh://user@machine/path/to/tlnet113237
-Ref: tlmgr *--gui* [_action_]113630
-Ref: tlmgr *--gui-lang* _llcode_114443
-Ref: tlmgr *--debug-translation*115179
-Ref: tlmgr *--machine-readable*115382
-Ref: tlmgr *--no-execute-actions*115650
-Ref: tlmgr *--package-logfile* _file_115843
-Ref: tlmgr *--pause*116097
-Ref: tlmgr *--persistent-downloads*116252
-Ref: tlmgr *--no-persistent-downloads*116280
-Ref: tlmgr *--pin-file*116774
-Ref: tlmgr *--usermode*116992
-Ref: tlmgr *--usertree* _dir_117112
-Ref: tlmgr *--verify-repo=[none|main|all]*117238
-Node: tlmgr ACTIONS118137
-Node: tlmgr help118998
-Node: tlmgr version119475
-Node: tlmgr backup119738
-Ref: tlmgr *backup [_option_...] --all*119909
-Ref: tlmgr *backup [_option_...] _pkg_...*119942
-Ref: tlmgr *--backupdir* _directory_121008
-Ref: tlmgr *--all*121225
-Ref: tlmgr *--clean*[=_N_]121477
-Ref: tlmgr *--dry-run*121804
-Node: tlmgr candidates _pkg_121934
-Node: tlmgr check [_option_...] [depends|executes|files|runfiles|texmfdbs|all]122289
-Ref: tlmgr *depends*122803
-Ref: tlmgr *executes*123145
-Ref: tlmgr *files*123260
-Ref: tlmgr *runfiles*123396
-Ref: tlmgr *texmfdbs*123533
-Ref: tlmgr - all items in TEXMFDBS have the !! prefix.123763
-Ref: tlmgr - all items in TEXMFBDS have an ls-R file (if they exist at all).123839
-Ref: tlmgr - all items in TEXMF with !! are listed in TEXMFDBS.123904
-Ref: tlmgr - all items in TEXMF with an ls-R file are listed in TEXMFDBS.123979
-Ref: tlmgr *--use-svn*124004
-Node: tlmgr conf124145
-Ref: tlmgr *conf [texmf|tlmgr|updmap [--conffile _file_] [--delete] [_key_ [_value_]]]*124433
-Ref: tlmgr *conf auxtrees [--conffile _file_] [show|add|remove] [_value_]*124497
-Node: tlmgr dump-tlpdb [_option_...] [--json]126912
-Ref: tlmgr *--local*127345
-Ref: tlmgr *--remote*127384
-Ref: tlmgr *--json*127422
-Node: tlmgr generate127993
-Ref: tlmgr *generate [_option_...] language*128189
-Ref: tlmgr *generate [_option_...] language.dat*128228
-Ref: tlmgr *generate [_option_...] language.def*128267
-Ref: tlmgr *generate [_option_...] language.dat.lua*128310
-Ref: tlmgr *--dest* _output_file_130637
-Ref: tlmgr *--localcfg* _local_conf_file_131213
-Ref: tlmgr *--rebuild-sys*131336
-Node: tlmgr gui132151
-Node: tlmgr info132329
-Ref: tlmgr *info [_option_...] _pkg_...*132491
-Ref: tlmgr *info [_option_...] collections*132525
-Ref: tlmgr *info [_option_...] schemes*132555
-Ref: tlmgr *--list*134085
-Ref: tlmgr *--only-installed*134399
-Ref: tlmgr *--only-remote*134587
-Ref: tlmgr *--data item1,item2,...*134891
-Ref: tlmgr *--json* 1135472
-Node: tlmgr init-usertree135855
-Node: tlmgr install [_option_...] _pkg_...136236
-Ref: tlmgr *--dry-run* 1136744
-Ref: tlmgr *--file*136861
-Ref: tlmgr *--force*137083
-Ref: tlmgr *--no-depends*137303
-Ref: tlmgr *--no-depends-at-all*137462
-Ref: tlmgr *--reinstall*137862
-Ref: tlmgr *--with-doc*138240
-Ref: tlmgr *--with-src*138253
-Node: tlmgr key138981
-Ref: tlmgr *key list*139139
-Ref: tlmgr *key add _file_*139157
-Ref: tlmgr *key remove _keyid_*139179
-Node: tlmgr list139773
-Node: tlmgr option139935
-Ref: tlmgr *option [--json] [show]*140090
-Ref: tlmgr *option [--json] showall|help*140121
-Ref: tlmgr *option _key_ [_value_]*140147
-Node: tlmgr paper144725
-Ref: tlmgr *paper [a4|letter]*144874
-Ref: tlmgr *<[xdvi|pdftex|dvips|dvipdfmx|context|psutils] paper [_papersize_|--list]*>144950
-Ref: tlmgr *paper --json*144965
-Node: tlmgr path146180
-Ref: tlmgr *path [--w32mode=user|admin] add*146341
-Ref: tlmgr *path [--w32mode=user|admin] remove*146378
-Node: tlmgr pinning147863
-Ref: tlmgr pinning show148104
-Ref: tlmgr pinning add _repo_ _pkgglob_...148177
-Ref: tlmgr pinning remove _repo_ _pkgglob_...148296
-Ref: tlmgr pinning remove _repo_ --all148449
-Node: tlmgr platform148503
-Ref: tlmgr *platform list|add|remove _platform_...*148689
-Ref: tlmgr *platform set _platform_*148716
-Ref: tlmgr *platform set auto*148737
-Ref: tlmgr *--dry-run* 2149614
-Node: tlmgr postaction149733
-Ref: tlmgr *postaction [_option_...] install [shortcut|fileassoc|script] [_pkg_...]*149963
-Ref: tlmgr *postaction [_option_...] remove [shortcut|fileassoc|script] [_pkg_...]*150037
-Ref: tlmgr *--w32mode=[user|admin]*150352
-Ref: tlmgr *--fileassocmode=[1|2]*150768
-Ref: tlmgr *--all* 1151053
-Node: tlmgr print-platform151108
-Node: tlmgr print-platform-info151439
-Node: tlmgr remove [_option_...] _pkg_...151739
-Ref: tlmgr *--all* 2152223
-Ref: tlmgr *--backup*152333
-Ref: tlmgr *--backupdir* _directory_ 1152359
-Ref: tlmgr *--no-depends* 1152764
-Ref: tlmgr *--no-depends-at-all* 1152826
-Ref: tlmgr *--force* 1152929
-Ref: tlmgr *--dry-run* 3153402
-Node: tlmgr repository153738
-Ref: tlmgr *repository list*153926
-Ref: tlmgr *repository list _path|url|tag_*153960
-Ref: tlmgr *repository add _path_ [_tag_]*153993
-Ref: tlmgr *repository remove _path|tag_*154025
-Ref: tlmgr *repository set _path_[#_tag_] [_path_[#_tag_] ...]*154079
-Ref: tlmgr *repository status*154100
-Ref: tlmgr The tag (which can be the same as the url);155327
-Node: tlmgr restore155805
-Ref: tlmgr *restore [_option_...] _pkg_ [_rev_]*155984
-Ref: tlmgr *restore [_option_...] --all*156014
-Ref: tlmgr *--all* 3156714
-Ref: tlmgr *--backupdir* _directory_ 2156928
-Ref: tlmgr *--dry-run* 4157109
-Ref: tlmgr *--force* 2157241
-Ref: tlmgr *--json* 2157287
-Node: tlmgr search157614
-Ref: tlmgr *search [_option_...] _what_*157778
-Ref: tlmgr *search [_option_...] --file _what_*157815
-Ref: tlmgr *search [_option_...] --all _what_*157851
-Ref: tlmgr *--file* 1158071
-Ref: tlmgr *--all* 4158133
-Ref: tlmgr *--global*158222
-Ref: tlmgr *--word*158349
-Node: tlmgr shell158664
-Ref: tlmgr protocol159399
-Ref: tlmgr help 1159463
-Ref: tlmgr version 1159516
-Ref: tlmgr quit, end, bye, byebye, EOF159584
-Ref: tlmgr restart159605
-Ref: tlmgr load [local|remote]159728
-Ref: tlmgr save159798
-Ref: tlmgr get [_var_] =item set [_var_ [_val_]]159921
-Node: tlmgr show160522
-Node: tlmgr uninstall160689
-Node: tlmgr update [_option_...] [_pkg_...]160919
-Ref: tlmgr *--all* 5161290
-Ref: tlmgr *--self*163469
-Ref: tlmgr *--dry-run* 5164233
-Ref: tlmgr *--list* [_pkg_]164410
-Ref: tlmgr *--exclude* _pkg_165099
-Ref: tlmgr *--no-auto-remove* [_pkg_...]165899
-Ref: tlmgr *--no-auto-install* [_pkg_...]166383
-Ref: tlmgr *--reinstall-forcibly-removed*167145
-Ref: tlmgr *--backup* 1167680
-Ref: tlmgr *--backupdir* _directory_ 3167706
-Ref: tlmgr *--no-depends* 2168872
-Ref: tlmgr *--no-depends-at-all* 2169075
-Ref: tlmgr *--force* 3169178
-Node: tlmgr CONFIGURATION FILE FOR TLMGR170198
-Ref: tlmgr auto-remove, value 0 or 1 (default 1), same as command-line option.171205
-Ref: tlmgr gui-expertmode, value 0 or 1 (default 1). This switches between the full GUI and a simplified GUI with only the most common settings.171342
-Ref: tlmgr gui-lang _llcode_, with a language code value as with the command-line option.171424
-Ref: tlmgr no-checksums, value 0 or 1 (default 0, see below).171478
-Ref: tlmgr persistent-downloads, value 0 or 1 (default 1), same as command-line option.171558
-Ref: tlmgr require-verification, value 0 or 1 (default 0), same as command-line option.171638
-Ref: tlmgr update-exclude, value: comma-separated list of packages (no space allowed). Same as the command line option --exclude for the action update.171786
-Ref: tlmgr verify-downloads, value 0 or 1 (default 1), same as command-line option.171862
-Ref: tlmgr allowed-actions _action1_ [,_action_,...] The value is a comma-separated list of tlmgr actions which are allowed to be executed when tlmgr is invoked in system mode (that is, without --usermode).172131
-Node: tlmgr CRYPTOGRAPHIC VERIFICATION173219
-Node: tlmgr Configuration of GnuPG invocation175392
-Node: tlmgr USER MODE176030
-Node: tlmgr User mode install178876
-Node: tlmgr User mode backup, restore, remove, update180020
-Node: tlmgr User mode generate, option, paper180462
-Node: tlmgr MULTIPLE REPOSITORIES180838
-Node: tlmgr Pinning182567
-Node: tlmgr GUI FOR TLMGR184490
-Node: tlmgr Main display186139
-Node: tlmgr Display configuration area186391
-Ref: tlmgr Status186752
-Ref: tlmgr Category186916
-Ref: tlmgr Match187102
-Ref: tlmgr Selection187283
-Ref: tlmgr Display configuration buttons187487
-Node: tlmgr Package list area187670
-Ref: tlmgr a checkbox188254
-Ref: tlmgr package name188390
-Ref: tlmgr local revision (and version)188489
-Ref: tlmgr remote revision (and version)188864
-Ref: tlmgr short description189161
-Node: tlmgr Main display action buttons189206
-Ref: tlmgr Update all installed189472
-Ref: tlmgr Update189844
-Ref: tlmgr Install189894
-Ref: tlmgr Remove190080
-Ref: tlmgr Backup190258
-Node: tlmgr Menu bar190415
-Ref: tlmgr tlmgr menu190638
-Ref: tlmgr Options menu190946
-Ref: tlmgr Actions menu192029
-Ref: tlmgr Help menu192457
-Node: tlmgr GUI options192591
-Ref: tlmgr -background _color_192837
-Ref: tlmgr -font " _fontname_ _fontsize_ "192902
-Ref: tlmgr -foreground _color_193060
-Ref: tlmgr -geometry _geomspec_193112
-Ref: tlmgr -xrm _xresource_193304
-Node: tlmgr MACHINE-READABLE OUTPUT193573
-Node: tlmgr Machine-readable update and install output194383
-Ref: tlmgr location-url _location_195659
-Ref: tlmgr total-bytes _count_195875
-Ref: tlmgr _pkgname_196285
-Ref: tlmgr _status_196495
-Ref: tlmgr d196573
-Ref: tlmgr f196633
-Ref: tlmgr u196812
-Ref: tlmgr r196858
-Ref: tlmgr a196981
-Ref: tlmgr i197159
-Ref: tlmgr I197278
-Ref: tlmgr _localrev_197380
-Ref: tlmgr _serverrev_197487
-Ref: tlmgr _size_197599
-Ref: tlmgr _runtime_197768
-Ref: tlmgr _esttot_197838
-Node: tlmgr Machine-readable option output197871
-Node: tlmgr ENVIRONMENT VARIABLES198383
-Ref: tlmgr TEXLIVE_COMPRESSOR198894
-Ref: tlmgr TEXLIVE_DOWNLOADER199742
-Ref: tlmgr TL_DOWNLOAD_PROGRAM199765
-Ref: tlmgr TL_DOWNLOAD_ARGS199785
-Ref: tlmgr TEXLIVE_PREFER_OWN200811
-Node: tlmgr AUTHORS AND COPYRIGHT201635
-Node: Index202033
+Node: Building8590
+Node: Build iteration9976
+Node: Build problems11017
+Node: Build in parallel11471
+Node: Build distribution12075
+Node: Build one package12723
+Node: Build one engine16389
+Node: Cross compilation17438
+Node: Cross configuring18718
+Node: Cross problems20395
+Node: Installing22057
+Node: Installation directories23077
+Node: Linked scripts24895
+Node: Distro builds26386
+Node: Layout and infrastructure28762
+Node: Build system tools29593
+Node: Top-level directories31810
+Node: Autoconf macros34046
+Node: General setup macros34808
+Node: Macros for programs35683
+Node: Macros for compilers36484
+Node: Macros for libraries37892
+Node: Macros for library and header flags38318
+Node: Macros for Windows40229
+Node: Library modules41816
+Node: png library42305
+Node: zlib library44653
+Node: freetype library45168
+Node: kpathsea library45864
+Node: Program modules47243
+Node: t1utils package47671
+Node: xindy package48216
+Node: xdvik package49330
+Node: asymptote50389
+Node: Extending TeX Live50885
+Node: Adding a new program module51668
+Node: Adding a new generic library module55007
+Node: Adding a new TeX-specific library module57236
+Node: Configure options57934
+Node: Global configure options59315
+Node: --disable-native-texlive-build59857
+Node: --prefix --bindir ...60819
+Node: --disable-largefile61359
+Node: --disable-missing61901
+Node: --enable-compiler-warnings=LEVEL62302
+Node: --enable-cxx-runtime-hack62958
+Node: --enable-maintainer-mode63378
+Node: --enable-multiplatform63907
+Node: --enable-shared64480
+Node: --enable-silent-rules64851
+Node: --without-ln-s65303
+Node: --without-x65650
+Node: Program-specific configure options65838
+Node: --enable-PROG --disable-PROG66481
+Node: --disable-all-pkgs66754
+Node: Configure options for texk/web2c67537
+Node: Configure options for texk/bibtex-x70075
+Node: Configure options for texk/dvipdfm-x70618
+Node: Configure options for texk/dvisvgm71394
+Node: Configure options for texk/texlive72275
+Node: Configure options for texk/xdvik72696
+Node: Configure options for utils/xindy73317
+Node: Library-specific configure options74207
+Node: Configure options for kpathsea75168
+Node: Variables for configure75872
+Node: Coding conventions77298
+Node: Declarations and definitions78013
+Node: Const80187
+Node: Continuous integration82051
+Node: Transfer from Subversion to Github82715
+Node: Automatic update of the Git mirror84877
+Node: CI testing on Travis-CI85459
+Node: Releases on Github86168
+Node: install-tl86608
+Node: install-tl NAME86977
+Node: install-tl SYNOPSIS87135
+Node: install-tl DESCRIPTION87393
+Node: install-tl REFERENCES88453
+Node: install-tl OPTIONS88977
+Ref: install-tl *-gui* [[=]_module_]89318
+Ref: install-tl text89526
+Ref: install-tl tcl89646
+Ref: install-tl wizard89988
+Ref: install-tl expert90121
+Ref: install-tl perltk90243
+Ref: install-tl *-no-gui*90789
+Ref: install-tl *-lang* _llcode_90879
+Ref: install-tl *-repository* _url|path_91635
+Ref: install-tl *-select-repository*92523
+Ref: install-tl *-all-options*92959
+Ref: install-tl *-custom-bin* _path_93214
+Ref: install-tl *-debug-translation*94048
+Ref: install-tl *-force-platform* _platform_94267
+Ref: install-tl *-help*, *--help*, *-?*94511
+Ref: install-tl *-in-place*94924
+Ref: install-tl *-init-from-profile* _profile_file_95469
+Ref: install-tl *-logfile* _file_95738
+Ref: install-tl *-no-cls*96089
+Ref: install-tl *-no-persistent-downloads*96237
+Ref: install-tl *-persistent-downloads*96262
+Ref: install-tl *-no-verify-downloads*96880
+Ref: install-tl *-non-admin*97243
+Ref: install-tl *-portable*97336
+Ref: install-tl *-print-platform*97475
+Ref: install-tl *-profile* _profile_file_97673
+Ref: install-tl *-q*97894
+Ref: install-tl *-scheme* _scheme_97956
+Ref: install-tl *-v*98430
+Ref: install-tl *-version*, *--version*98585
+Node: install-tl PROFILES98719
+Ref: install-tl instopt_adjustpath (default 0 on Unix, 1 on Windows)101585
+Ref: install-tl instopt_adjustrepo (default 1)101661
+Ref: install-tl instopt_letter (default 0)101798
+Ref: install-tl instopt_portable (default 0)101889
+Ref: install-tl instopt_write18_restricted (default 1)101985
+Node: install-tl ENVIRONMENT VARIABLES103324
+Ref: install-tl TEXLIVE_DOWNLOADER103702
+Ref: install-tl TL_DOWNLOAD_PROGRAM103725
+Ref: install-tl TL_DOWNLOAD_ARGS103745
+Ref: install-tl TEXLIVE_INSTALL_ENV_NOCHECK103949
+Ref: install-tl TEXLIVE_INSTALL_NO_CONTEXT_CACHE104151
+Ref: install-tl TEXLIVE_INSTALL_NO_IMPORT104260
+Ref: install-tl TEXLIVE_INSTALL_NO_WELCOME104412
+Ref: install-tl TEXLIVE_INSTALL_PREFIX104534
+Ref: install-tl TEXLIVE_INSTALL_TEXDIR104560
+Ref: install-tl TEXLIVE_INSTALL_TEXMFCONFIG104591
+Ref: install-tl TEXLIVE_INSTALL_TEXMFVAR104619
+Ref: install-tl TEXLIVE_INSTALL_TEXMFHOME104648
+Ref: install-tl TEXLIVE_INSTALL_TEXMFLOCAL104678
+Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSCONFIG104712
+Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSVAR104743
+Ref: install-tl NOPERLDOC105114
+Node: install-tl AUTHORS AND COPYRIGHT105178
+Node: tlmgr105591
+Node: tlmgr NAME106076
+Node: tlmgr SYNOPSIS106208
+Node: tlmgr DESCRIPTION106398
+Node: tlmgr EXAMPLES107497
+Ref: tlmgr tlmgr option repository ctan107748
+Ref: tlmgr tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet107820
+Ref: tlmgr tlmgr update --list108425
+Ref: tlmgr tlmgr update --all108518
+Ref: tlmgr tlmgr info _what_108675
+Node: tlmgr OPTIONS108937
+Ref: tlmgr *--repository* _url|path_109457
+Ref: tlmgr /some/local/dir110643
+Ref: tlmgr file:/some/local/dir110672
+Ref: tlmgr ctan110745
+Ref: tlmgr http://mirror.ctan.org/systems/texlive/tlnet110798
+Ref: tlmgr http://server/path/to/tlnet111139
+Ref: tlmgr https://server/path/to/tlnet111520
+Ref: tlmgr ftp://server/path/to/tlnet111988
+Ref: tlmgr user at machine:/path/to/tlnet112120
+Ref: tlmgr scp://user@machine/path/to/tlnet112161
+Ref: tlmgr ssh://user@machine/path/to/tlnet112202
+Ref: tlmgr *--gui* [_action_]112595
+Ref: tlmgr *--gui-lang* _llcode_113408
+Ref: tlmgr *--debug-translation*114144
+Ref: tlmgr *--machine-readable*114347
+Ref: tlmgr *--no-execute-actions*114615
+Ref: tlmgr *--package-logfile* _file_114808
+Ref: tlmgr *--pause*115062
+Ref: tlmgr *--persistent-downloads*115217
+Ref: tlmgr *--no-persistent-downloads*115245
+Ref: tlmgr *--pin-file*115739
+Ref: tlmgr *--usermode*115957
+Ref: tlmgr *--usertree* _dir_116077
+Ref: tlmgr *--verify-repo=[none|main|all]*116203
+Node: tlmgr ACTIONS117102
+Node: tlmgr help117963
+Node: tlmgr version118440
+Node: tlmgr backup118703
+Ref: tlmgr *backup [_option_...] --all*118874
+Ref: tlmgr *backup [_option_...] _pkg_...*118907
+Ref: tlmgr *--backupdir* _directory_119973
+Ref: tlmgr *--all*120190
+Ref: tlmgr *--clean*[=_N_]120442
+Ref: tlmgr *--dry-run*120769
+Node: tlmgr candidates _pkg_120899
+Node: tlmgr check [_option_...] [depends|executes|files|runfiles|texmfdbs|all]121254
+Ref: tlmgr *depends*121768
+Ref: tlmgr *executes*122110
+Ref: tlmgr *files*122225
+Ref: tlmgr *runfiles*122361
+Ref: tlmgr *texmfdbs*122498
+Ref: tlmgr - all items in TEXMFDBS have the !! prefix.122728
+Ref: tlmgr - all items in TEXMFBDS have an ls-R file (if they exist at all).122804
+Ref: tlmgr - all items in TEXMF with !! are listed in TEXMFDBS.122869
+Ref: tlmgr - all items in TEXMF with an ls-R file are listed in TEXMFDBS.122944
+Ref: tlmgr *--use-svn*122969
+Node: tlmgr conf123110
+Ref: tlmgr *conf [texmf|tlmgr|updmap [--conffile _file_] [--delete] [_key_ [_value_]]]*123398
+Ref: tlmgr *conf auxtrees [--conffile _file_] [show|add|remove] [_value_]*123462
+Node: tlmgr dump-tlpdb [_option_...] [--json]125877
+Ref: tlmgr *--local*126310
+Ref: tlmgr *--remote*126349
+Ref: tlmgr *--json*126387
+Node: tlmgr generate126958
+Ref: tlmgr *generate [_option_...] language*127154
+Ref: tlmgr *generate [_option_...] language.dat*127193
+Ref: tlmgr *generate [_option_...] language.def*127232
+Ref: tlmgr *generate [_option_...] language.dat.lua*127275
+Ref: tlmgr *--dest* _output_file_129602
+Ref: tlmgr *--localcfg* _local_conf_file_130178
+Ref: tlmgr *--rebuild-sys*130301
+Node: tlmgr gui131116
+Node: tlmgr info131294
+Ref: tlmgr *info [_option_...] _pkg_...*131456
+Ref: tlmgr *info [_option_...] collections*131490
+Ref: tlmgr *info [_option_...] schemes*131520
+Ref: tlmgr *--list*133050
+Ref: tlmgr *--only-installed*133364
+Ref: tlmgr *--only-remote*133552
+Ref: tlmgr *--data item1,item2,...*133856
+Ref: tlmgr *--json* 1134437
+Node: tlmgr init-usertree134820
+Node: tlmgr install [_option_...] _pkg_...135201
+Ref: tlmgr *--dry-run* 1135709
+Ref: tlmgr *--file*135826
+Ref: tlmgr *--force*136048
+Ref: tlmgr *--no-depends*136268
+Ref: tlmgr *--no-depends-at-all*136427
+Ref: tlmgr *--reinstall*136827
+Ref: tlmgr *--with-doc*137205
+Ref: tlmgr *--with-src*137218
+Node: tlmgr key137946
+Ref: tlmgr *key list*138104
+Ref: tlmgr *key add _file_*138122
+Ref: tlmgr *key remove _keyid_*138144
+Node: tlmgr list138738
+Node: tlmgr option138900
+Ref: tlmgr *option [--json] [show]*139055
+Ref: tlmgr *option [--json] showall|help*139086
+Ref: tlmgr *option _key_ [_value_]*139112
+Node: tlmgr paper143690
+Ref: tlmgr *paper [a4|letter]*143839
+Ref: tlmgr *<[xdvi|pdftex|dvips|dvipdfmx|context|psutils] paper [_papersize_|--list]*>143915
+Ref: tlmgr *paper --json*143930
+Node: tlmgr path145145
+Ref: tlmgr *path [--w32mode=user|admin] add*145306
+Ref: tlmgr *path [--w32mode=user|admin] remove*145343
+Node: tlmgr pinning146828
+Ref: tlmgr pinning show147069
+Ref: tlmgr pinning add _repo_ _pkgglob_...147142
+Ref: tlmgr pinning remove _repo_ _pkgglob_...147261
+Ref: tlmgr pinning remove _repo_ --all147414
+Node: tlmgr platform147468
+Ref: tlmgr *platform list|add|remove _platform_...*147654
+Ref: tlmgr *platform set _platform_*147681
+Ref: tlmgr *platform set auto*147702
+Ref: tlmgr *--dry-run* 2148579
+Node: tlmgr postaction148698
+Ref: tlmgr *postaction [_option_...] install [shortcut|fileassoc|script] [_pkg_...]*148928
+Ref: tlmgr *postaction [_option_...] remove [shortcut|fileassoc|script] [_pkg_...]*149002
+Ref: tlmgr *--w32mode=[user|admin]*149317
+Ref: tlmgr *--fileassocmode=[1|2]*149733
+Ref: tlmgr *--all* 1150018
+Node: tlmgr print-platform150073
+Node: tlmgr print-platform-info150404
+Node: tlmgr remove [_option_...] _pkg_...150704
+Ref: tlmgr *--all* 2151188
+Ref: tlmgr *--backup*151298
+Ref: tlmgr *--backupdir* _directory_ 1151324
+Ref: tlmgr *--no-depends* 1151729
+Ref: tlmgr *--no-depends-at-all* 1151791
+Ref: tlmgr *--force* 1151894
+Ref: tlmgr *--dry-run* 3152367
+Node: tlmgr repository152703
+Ref: tlmgr *repository list*152891
+Ref: tlmgr *repository list _path|url|tag_*152925
+Ref: tlmgr *repository add _path_ [_tag_]*152958
+Ref: tlmgr *repository remove _path|tag_*152990
+Ref: tlmgr *repository set _path_[#_tag_] [_path_[#_tag_] ...]*153044
+Ref: tlmgr *repository status*153065
+Ref: tlmgr The tag (which can be the same as the url);154292
+Node: tlmgr restore154770
+Ref: tlmgr *restore [_option_...] _pkg_ [_rev_]*154949
+Ref: tlmgr *restore [_option_...] --all*154979
+Ref: tlmgr *--all* 3155679
+Ref: tlmgr *--backupdir* _directory_ 2155893
+Ref: tlmgr *--dry-run* 4156074
+Ref: tlmgr *--force* 2156206
+Ref: tlmgr *--json* 2156252
+Node: tlmgr search156579
+Ref: tlmgr *search [_option_...] _what_*156743
+Ref: tlmgr *search [_option_...] --file _what_*156780
+Ref: tlmgr *search [_option_...] --all _what_*156816
+Ref: tlmgr *--file* 1157036
+Ref: tlmgr *--all* 4157098
+Ref: tlmgr *--global*157187
+Ref: tlmgr *--word*157314
+Node: tlmgr shell157629
+Ref: tlmgr protocol158364
+Ref: tlmgr help 1158428
+Ref: tlmgr version 1158481
+Ref: tlmgr quit, end, bye, byebye, EOF158549
+Ref: tlmgr restart158570
+Ref: tlmgr load [local|remote]158693
+Ref: tlmgr save158763
+Ref: tlmgr get [_var_] =item set [_var_ [_val_]]158886
+Node: tlmgr show159487
+Node: tlmgr uninstall159654
+Node: tlmgr update [_option_...] [_pkg_...]159884
+Ref: tlmgr *--all* 5160255
+Ref: tlmgr *--self*162434
+Ref: tlmgr *--dry-run* 5163198
+Ref: tlmgr *--list* [_pkg_]163375
+Ref: tlmgr *--exclude* _pkg_164064
+Ref: tlmgr *--no-auto-remove* [_pkg_...]164864
+Ref: tlmgr *--no-auto-install* [_pkg_...]165348
+Ref: tlmgr *--reinstall-forcibly-removed*166110
+Ref: tlmgr *--backup* 1166645
+Ref: tlmgr *--backupdir* _directory_ 3166671
+Ref: tlmgr *--no-depends* 2167837
+Ref: tlmgr *--no-depends-at-all* 2168040
+Ref: tlmgr *--force* 3168143
+Node: tlmgr CONFIGURATION FILE FOR TLMGR169163
+Ref: tlmgr auto-remove, value 0 or 1 (default 1), same as command-line option.170170
+Ref: tlmgr gui-expertmode, value 0 or 1 (default 1). This switches between the full GUI and a simplified GUI with only the most common settings.170307
+Ref: tlmgr gui-lang _llcode_, with a language code value as with the command-line option.170389
+Ref: tlmgr no-checksums, value 0 or 1 (default 0, see below).170443
+Ref: tlmgr persistent-downloads, value 0 or 1 (default 1), same as command-line option.170523
+Ref: tlmgr require-verification, value 0 or 1 (default 0), same as command-line option.170603
+Ref: tlmgr update-exclude, value: comma-separated list of packages (no space allowed). Same as the command line option --exclude for the action update.170751
+Ref: tlmgr verify-downloads, value 0 or 1 (default 1), same as command-line option.170827
+Ref: tlmgr allowed-actions _action1_ [,_action_,...] The value is a comma-separated list of tlmgr actions which are allowed to be executed when tlmgr is invoked in system mode (that is, without --usermode).171096
+Node: tlmgr CRYPTOGRAPHIC VERIFICATION172184
+Node: tlmgr Configuration of GnuPG invocation174357
+Node: tlmgr USER MODE174995
+Node: tlmgr User mode install177841
+Node: tlmgr User mode backup, restore, remove, update178985
+Node: tlmgr User mode generate, option, paper179427
+Node: tlmgr MULTIPLE REPOSITORIES179803
+Node: tlmgr Pinning181532
+Node: tlmgr GUI FOR TLMGR183455
+Node: tlmgr Main display185104
+Node: tlmgr Display configuration area185356
+Ref: tlmgr Status185717
+Ref: tlmgr Category185881
+Ref: tlmgr Match186067
+Ref: tlmgr Selection186248
+Ref: tlmgr Display configuration buttons186452
+Node: tlmgr Package list area186635
+Ref: tlmgr a checkbox187219
+Ref: tlmgr package name187355
+Ref: tlmgr local revision (and version)187454
+Ref: tlmgr remote revision (and version)187829
+Ref: tlmgr short description188126
+Node: tlmgr Main display action buttons188171
+Ref: tlmgr Update all installed188437
+Ref: tlmgr Update188809
+Ref: tlmgr Install188859
+Ref: tlmgr Remove189045
+Ref: tlmgr Backup189223
+Node: tlmgr Menu bar189380
+Ref: tlmgr tlmgr menu189603
+Ref: tlmgr Options menu189911
+Ref: tlmgr Actions menu190994
+Ref: tlmgr Help menu191422
+Node: tlmgr GUI options191556
+Ref: tlmgr -background _color_191802
+Ref: tlmgr -font " _fontname_ _fontsize_ "191867
+Ref: tlmgr -foreground _color_192025
+Ref: tlmgr -geometry _geomspec_192077
+Ref: tlmgr -xrm _xresource_192269
+Node: tlmgr MACHINE-READABLE OUTPUT192538
+Node: tlmgr Machine-readable update and install output193348
+Ref: tlmgr location-url _location_194624
+Ref: tlmgr total-bytes _count_194840
+Ref: tlmgr _pkgname_195250
+Ref: tlmgr _status_195460
+Ref: tlmgr d195538
+Ref: tlmgr f195598
+Ref: tlmgr u195777
+Ref: tlmgr r195823
+Ref: tlmgr a195946
+Ref: tlmgr i196124
+Ref: tlmgr I196243
+Ref: tlmgr _localrev_196345
+Ref: tlmgr _serverrev_196452
+Ref: tlmgr _size_196564
+Ref: tlmgr _runtime_196733
+Ref: tlmgr _esttot_196803
+Node: tlmgr Machine-readable option output196836
+Node: tlmgr ENVIRONMENT VARIABLES197348
+Ref: tlmgr TEXLIVE_COMPRESSOR197859
+Ref: tlmgr TEXLIVE_DOWNLOADER198707
+Ref: tlmgr TL_DOWNLOAD_PROGRAM198730
+Ref: tlmgr TL_DOWNLOAD_ARGS198750
+Ref: tlmgr TEXLIVE_PREFER_OWN199776
+Node: tlmgr AUTHORS AND COPYRIGHT200600
+Node: Index200998
 
 End Tag Table
 

Modified: branches/stable/source/src/doc/tlbuild.texi
===================================================================
--- branches/stable/source/src/doc/tlbuild.texi	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/doc/tlbuild.texi	2020-05-15 18:03:05 UTC (rev 825)
@@ -233,10 +233,9 @@
 
 @cindex C++11, required
 A C++11 compiler is similarly required because of the third-party
-libraries ICU and Poppler; the program @code{dvisvgm} also requires
-C++11.  It is possible to build everything else with older compilers,
-but you have to remove the C++11-dependent sources.  @xref{Build one
-package}.
+library ICU; the program @code{dvisvgm} also requires C++11.  It is
+possible to build everything else with older compilers, but you have
+to remove the C++11-dependent sources.  @xref{Build one package}.
 
 A few programs in the tree have additional requirements:
 
@@ -504,7 +503,7 @@
 suffice, unfortunately.  Specifically, before running @code{configure}:
 
 @example
-rm -rf libs/icu libs/poppler libs/graphite2 texk/dvisvgm
+rm -rf libs/icu libs/graphite2 texk/dvisvgm
 @end example
 
 @vindex --enable-missing @r{to ignore dependencies}
@@ -1895,10 +1894,7 @@
 @cindex PDF files, size of
 @cindex PostScript files, size of
 With LFS, there is no fixed limit on the size of PDF files created by
- at file{pdftex} or PostScript files created by @file{dvips}.  The size
-of PDF images included by @file{pdftex} or @file{luatex} must, however,
-be @math{<2}GB when using @file{poppler} version at tie{}0.22 or before
-(even on 64-bit systems with LFS).
+ at file{pdftex} or PostScript files created by @file{dvips}.
 
 
 @node @code{--disable-missing}
@@ -2292,10 +2288,8 @@
 
 @menu
 * Configure options for @code{kpathsea}::
-* Configure options for system @code{poppler}::
 @end menu
 
-
 @node Configure options for @code{kpathsea}
 @subsection Configure options for @code{kpathsea}
 
@@ -2325,28 +2319,6 @@
 The default can be overridden by the user in any case
 (@pxref{@code{kpathsea} library}).
 
- at node Configure options for system @code{poppler}
- at subsection Configure options for system @code{poppler}
-
- at cindex @code{configure} options, for system @code{poppler}
-
- at pindex poppler
- at pindex xpdf @r{as library}
-Building Xe at TeX{} requires @code{poppler}, either from the TL tree or
-system headers and library.  Building pdf at TeX{} requires either
- at code{xpdf} from the @TL{} tree or system @code{poppler} headers and
-library.
-
- at vindex --with-system-poppler
- at noindent @code{--with-system-poppler}@*Use a system version (0.18 or
-newer) of @code{poppler} for Lua at TeX{} (or LuaJIT at TeX{}) and Xe at TeX{},
-and use @file{pkg-config} to obtain the required flags.
-
- at vindex --with-system-xpdf
- at noindent @code{--with-system-xpdf}@*Use a system version (0.12 or newer)
-of @code{poppler} (and @file{pkg-config}) for pdf at TeX{} instead of
- at code{xpdf} from the TL tree.  @xref{@code{--disable-largefile}}.
-
 @node Variables for configure
 @section Variables for configure
 

Modified: branches/stable/source/src/libs/ChangeLog
===================================================================
--- branches/stable/source/src/libs/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,3 +1,12 @@
+2020-05-14  Karl Berry  <karl at freefriends.org>
+
+	* poppler: remove.
+	See source/m4/kpse-xpdf-flags.m4 for some discussion.
+
+2020-04-21 Luigi Scarso <luigi.scarso at gmail.com>
+
+	* pplib: move from luatexdir, add test.
+
 2018-08-30  Karl Berry  <karl at freefriends.org>
 
 	* potrace: remove, now bundled with dvisvgm (its only user).

Modified: branches/stable/source/src/libs/Makefile.in
===================================================================
--- branches/stable/source/src/libs/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -107,7 +107,6 @@
 	$(top_srcdir)/../m4/kpse-options.m4 \
 	$(top_srcdir)/../m4/kpse-pixman-flags.m4 \
 	$(top_srcdir)/../m4/kpse-pkgs.m4 \
-	$(top_srcdir)/../m4/kpse-poppler-flags.m4 \
 	$(top_srcdir)/../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../m4/kpse-setup.m4 \
 	$(top_srcdir)/../m4/kpse-teckit-flags.m4 \
@@ -171,6 +170,7 @@
 	$(top_srcdir)/../texk/xdvik/ac/xdvik.ac \
 	$(top_srcdir)/../texk/texlive/ac/withenable.ac \
 	$(top_srcdir)/../texk/texlive/ac/texlive.ac \
+	$(top_srcdir)/../libs/pplib/ac/withenable.ac \
 	$(top_srcdir)/../libs/harfbuzz/ac/withenable.ac \
 	$(top_srcdir)/../libs/icu/ac/withenable.ac \
 	$(top_srcdir)/../libs/teckit/ac/withenable.ac \
@@ -177,7 +177,6 @@
 	$(top_srcdir)/../libs/graphite2/ac/withenable.ac \
 	$(top_srcdir)/../libs/zziplib/ac/withenable.ac \
 	$(top_srcdir)/../libs/xpdf/ac/withenable.ac \
-	$(top_srcdir)/../libs/poppler/ac/withenable.ac \
 	$(top_srcdir)/../libs/mpfr/ac/withenable.ac \
 	$(top_srcdir)/../libs/gmp/ac/withenable.ac \
 	$(top_srcdir)/../libs/cairo/ac/withenable.ac \
@@ -665,6 +664,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -707,6 +710,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -883,16 +888,17 @@
 	am--refresh check check-am clean clean-cscope clean-generic \
 	cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
 	dist-gzip dist-hook dist-lzip dist-shar dist-tarZ dist-xz \
-	dist-zip distcheck distclean distclean-generic distclean-tags \
-	distcleancheck distdir distuninstallcheck 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 installdirs-am maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
-	pdf-am ps ps-am tags tags-am uninstall uninstall-am
+	dist-zip dist-zstd distcheck distclean distclean-generic \
+	distclean-tags distcleancheck distdir distuninstallcheck 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 installdirs-am \
+	maintainer-clean maintainer-clean-generic mostlyclean \
+	mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
+	uninstall-am
 
 .PRECIOUS: Makefile
 

Modified: branches/stable/source/src/libs/README
===================================================================
--- branches/stable/source/src/libs/README	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/README	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,4 +1,4 @@
-$Id: README 53461 2020-01-19 23:36:31Z kakuto $
+$Id: README 55138 2020-05-14 17:47:47Z karl $
 Public domain.  Originally created by Karl Berry, 2005.
 
 Libraries we compile for TeX Live.
@@ -12,16 +12,16 @@
 cairo 1.16.0 - checked 20oct18
   http://cairographics.org/releases/
 
-freetype2 2.10.1 - checked 02jul19
+freetype2 2.10.2 - checked 10may20
   http://savannah.nongnu.org/download/freetype/
 
-gd 2.2.5 - checked 30aug17
+gd 2.3.0 - checked 10apr20
   https://github.com/libgd/libgd/releases
 
 gmp 6.2.0 - checked 20jan20
   http://ftp.gnu.org/gnu/gmp/
 
-graphite2 1.3.13 - checked 21dec18
+graphite2 1.3.14 - checked 10apr20
   http://sourceforge.net/projects/silgraphite/files/graphite2/
   (requires C++11)
 
@@ -49,15 +49,14 @@
 mpfr 4.0.2 - checked 1jan19
   http://ftp.gnu.org/gnu/mpfr/
 
-pixman 0.38.4 - checked 03may19
+pixman 0.40.0 - checked 21apr20
   http://cairographics.org/releases/
 
-poppler 0.68.0 - checked 20aug18
-  http://poppler.freedesktop.org/ - used by xetex
-  (requires C++11)
+pplib 2.05.0 - checked 21apr20
+  https://github.com/contextgarden/pplib
 
-teckit 2.5.9 - checked 03may19
-  https://github.com/silnrsi/teckit/archive/2.5.9.tar.gz
+teckit 2.5.10 - checked 06may20
+  https://github.com/silnrsi/teckit/archive/2.5.10.tar.gz
 
 xpdf 4.02 - checked 29sep19
   http://www.xpdfreader.com/download.html

Modified: branches/stable/source/src/libs/aclocal.m4
===================================================================
--- branches/stable/source/src/libs/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -595,7 +597,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +618,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -638,7 +640,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -673,7 +675,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -716,7 +718,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -755,7 +757,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -784,7 +786,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +833,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -850,7 +852,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,7 +933,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -991,7 +993,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1019,7 +1021,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1038,7 +1040,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1187,7 +1189,6 @@
 m4_include([../m4/kpse-options.m4])
 m4_include([../m4/kpse-pixman-flags.m4])
 m4_include([../m4/kpse-pkgs.m4])
-m4_include([../m4/kpse-poppler-flags.m4])
 m4_include([../m4/kpse-ptexenc-flags.m4])
 m4_include([../m4/kpse-setup.m4])
 m4_include([../m4/kpse-teckit-flags.m4])

Modified: branches/stable/source/src/libs/configure
===================================================================
--- branches/stable/source/src/libs/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for TeX Live libs 2020.
+# Generated by GNU Autoconf 2.69 for TeX Live libs 2021/dev.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -579,8 +579,8 @@
 # Identity of this package.
 PACKAGE_NAME='TeX Live libs'
 PACKAGE_TARNAME='tex-live-libs'
-PACKAGE_VERSION='2020'
-PACKAGE_STRING='TeX Live libs 2020'
+PACKAGE_VERSION='2021/dev'
+PACKAGE_STRING='TeX Live libs 2021/dev'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -812,8 +812,6 @@
 with_system_teckit
 with_system_graphite2
 with_system_zziplib
-with_system_xpdf
-with_system_poppler
 with_system_mpfr
 with_mpfr_includes
 with_mpfr_libdir
@@ -1395,7 +1393,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures TeX Live libs 2020 to adapt to many kinds of systems.
+\`configure' configures TeX Live libs 2021/dev to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1465,7 +1463,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of TeX Live libs 2020:";;
+     short | recursive ) echo "Configuration of TeX Live libs 2021/dev:";;
    esac
   cat <<\_ACEOF
 
@@ -1642,10 +1640,6 @@
                           (requires pkg-config)
   --with-system-zziplib   use installed zziplib headers and library (requires
                           pkg-config)
-  --with-system-xpdf      use installed poppler headers and library instead of
-                          xpdf library from TL (requires pkg-config)
-  --with-system-poppler   use installed poppler headers and library (requires
-                          pkg-config)
   --with-system-mpfr      use installed mpfr headers and library
   --with-mpfr-includes=DIR
                           mpfr headers installed in DIR
@@ -1753,7 +1747,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-TeX Live libs configure 2020
+TeX Live libs configure 2021/dev
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1854,7 +1848,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by TeX Live libs $as_me 2020, which was
+It was created by TeX Live libs $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3699,7 +3693,7 @@
   need_zlib=yes
 }
 
-# $Id: web2c.ac 53078 2019-12-10 18:39:13Z karl $
+# $Id: web2c.ac 55138 2020-05-14 17:47:47Z karl $
 # texk/web2c/ac/web2c.ac: configure.ac fragment for the TeX Live subdirectory texk/web2c/
 ## configure options for TeX and MF
 
@@ -3882,6 +3876,7 @@
 esac
 
 test "x$enable_web2c:$enable_luatex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -3898,6 +3893,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajittex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -3914,6 +3910,7 @@
 esac
 
 test "x$enable_web2c:$enable_luahbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -3931,6 +3928,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajithbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -4003,7 +4001,7 @@
 fi
 
 test "x$enable_web2c:$enable_xetex" = xyes:yes && {
-  need_poppler=yes
+  need_pplib=yes
   need_libpng=yes
   need_freetype2=yes
   need_teckit=yes
@@ -4959,6 +4957,9 @@
 fi
 
 
+## libs/pplib/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/pplib/
+## configure options and TL libraries required for pplib
+
 ## libs/harfbuzz/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/harfbuzz/
 ## configure options and TL libraries required for harfbuzz
 
@@ -5112,11 +5113,7 @@
 
 ## libs/xpdf/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/xpdf/
 ## configure options and TL libraries required for xpdf
-
-# Check whether --with-system-xpdf was given.
-if test "${with_system_xpdf+set}" = set; then :
-  withval=$with_system_xpdf;
-fi
+: "kpse_xpdf_options - no-op"
 if test "x$with_system_xpdf" = x; then
   if test -f $srcdir/../libs/xpdf/configure; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming \`xpdf' headers and library from TL tree" >&5
@@ -5130,40 +5127,6 @@
   ac_configure_args="$ac_configure_args '--with-system-xpdf=$with_system_xpdf'"
 fi
 
-## libs/poppler/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/poppler/
-## configure options and TL libraries required for poppler
-
-# Check whether --with-system-poppler was given.
-if test "${with_system_poppler+set}" = set; then :
-  withval=$with_system_poppler;
-fi
-if test "x$with_system_poppler" = x; then
-  if test -f $srcdir/../libs/poppler/configure; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming \`poppler' headers and library from TL tree" >&5
-$as_echo "$as_me: Assuming \`poppler' headers and library from TL tree" >&6;}
-    with_system_poppler=no
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming installed \`poppler' headers and library" >&5
-$as_echo "$as_me: Assuming installed \`poppler' headers and library" >&6;}
-    with_system_poppler=yes
-  fi
-  ac_configure_args="$ac_configure_args '--with-system-poppler=$with_system_poppler'"
-fi
-if test "x$with_system_poppler" = xyes; then
-  if test "x$with_system_zlib" = x; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}:   ->  installed \`zlib' headers and library" >&5
-$as_echo "$as_me:   ->  installed \`zlib' headers and library" >&6;}
-    with_system_zlib=yes
-    ac_configure_args="$ac_configure_args '--with-system-zlib'"
-  elif test "x$with_system_zlib" != xyes; then
-    as_fn_error $? "Sorry, \`--with-system-poppler' requires \`--with-system-zlib'" "$LINENO" 5
-  fi
-fi
-
-test "x$need_poppler" = xyes && {
-  need_zlib=yes
-}
-
 ## libs/mpfr/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/mpfr/
 ## configure options and TL libraries required for mpfr
 
@@ -6132,7 +6095,7 @@
 
 # Define the identity of the package.
  PACKAGE='tex-live-libs'
- VERSION='2020'
+ VERSION='2021/dev'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -6468,6 +6431,10 @@
 echo 'tldbg:_KPSE_RECURSE called: list=libs, text=generic libraries, cond=test "x$with_system_[]Kpse_pkg" != xyes && test "x$need_[]Kpse_pkg" = xyes, prefix=.' >&5
 MAKE_SUBDIRS=
 CONF_SUBDIRS=
+if test -x $srcdir/pplib/configure; then
+  test "x$with_system_pplib" != xyes && test "x$need_pplib" = xyes && MAKE_SUBDIRS="pplib $MAKE_SUBDIRS"
+  CONF_SUBDIRS="pplib $CONF_SUBDIRS"
+fi
 if test -x $srcdir/harfbuzz/configure; then
   test "x$with_system_harfbuzz" != xyes && test "x$need_harfbuzz" = xyes && MAKE_SUBDIRS="harfbuzz $MAKE_SUBDIRS"
   CONF_SUBDIRS="harfbuzz $CONF_SUBDIRS"
@@ -6492,10 +6459,6 @@
   test "x$with_system_xpdf" != xyes && test "x$need_xpdf" = xyes && MAKE_SUBDIRS="xpdf $MAKE_SUBDIRS"
   CONF_SUBDIRS="xpdf $CONF_SUBDIRS"
 fi
-if test -x $srcdir/poppler/configure; then
-  test "x$with_system_poppler" != xyes && test "x$need_poppler" = xyes && MAKE_SUBDIRS="poppler $MAKE_SUBDIRS"
-  CONF_SUBDIRS="poppler $CONF_SUBDIRS"
-fi
 if test -x $srcdir/mpfr/configure; then
   test "x$with_system_mpfr" != xyes && test "x$need_mpfr" = xyes && MAKE_SUBDIRS="mpfr $MAKE_SUBDIRS"
   CONF_SUBDIRS="mpfr $CONF_SUBDIRS"
@@ -7117,7 +7080,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by TeX Live libs $as_me 2020, which was
+This file was extended by TeX Live libs $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -7174,7 +7137,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-TeX Live libs config.status 2020
+TeX Live libs config.status 2021/dev
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -7805,7 +7768,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/libs/libpng/Makefile.in
===================================================================
--- branches/stable/source/src/libs/libpng/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/libpng/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -229,8 +229,8 @@
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 	cscope check recheck distdir distdir-am dist dist-all \
 	distcheck
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
-	$(LISP)config.h.in
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
+	config.h.in
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
 # *not* preserved.
@@ -1200,6 +1200,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -1242,6 +1246,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -1479,7 +1485,7 @@
 	clean-checkPROGRAMS clean-cscope clean-generic \
 	clean-noinstLIBRARIES cscope cscopelist-am ctags ctags-am dist \
 	dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-shar \
-	dist-tarZ dist-xz dist-zip distcheck distclean \
+	dist-tarZ dist-xz dist-zip dist-zstd distcheck distclean \
 	distclean-compile distclean-generic distclean-hdr \
 	distclean-tags distcleancheck distdir distuninstallcheck dvi \
 	dvi-am html html-am info info-am install install-am \

Modified: branches/stable/source/src/libs/libpng/aclocal.m4
===================================================================
--- branches/stable/source/src/libs/libpng/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/libpng/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # Figure out how to run the assembler.                      -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -78,7 +78,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -130,7 +130,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -161,7 +161,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -352,7 +352,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -391,7 +391,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -418,7 +420,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -615,7 +617,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -636,7 +638,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -658,7 +660,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -693,7 +695,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -736,7 +738,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -775,7 +777,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -804,7 +806,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -851,7 +853,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -870,7 +872,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -951,7 +953,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1011,7 +1013,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1039,7 +1041,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1058,7 +1060,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/libs/libpng/configure
===================================================================
--- branches/stable/source/src/libs/libpng/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/libpng/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -7532,7 +7532,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/libs/libpng/include/Makefile.in
===================================================================
--- branches/stable/source/src/libs/libpng/include/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/libpng/include/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/libs/xpdf/ChangeLog
===================================================================
--- branches/stable/source/src/libs/xpdf/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,3 +1,7 @@
+2020-05-14  Karl Berry  <karl at freefriends.org>
+
+	* ac/xpdf.ac: doc change for poppler no longer supported in TL.
+
 2019-09-29  Akira Kakuto  <kakuto at w32tex.org>
 
 	* Import xpdf-4.02.

Modified: branches/stable/source/src/libs/xpdf/Makefile.in
===================================================================
--- branches/stable/source/src/libs/xpdf/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -277,8 +277,8 @@
   $(am__extra_recursive_targets)
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 	cscope distdir distdir-am dist dist-all distcheck
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
-	$(LISP)aconf.h.in
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
+	aconf.h.in
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
 # *not* preserved.
@@ -1039,6 +1039,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -1081,6 +1085,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -1377,18 +1383,18 @@
 	am--depfiles am--refresh check check-am clean clean-cscope \
 	clean-generic clean-noinstLIBRARIES cscope cscopelist-am ctags \
 	ctags-am dist dist-all dist-bzip2 dist-gzip dist-hook \
-	dist-lzip dist-shar dist-tarZ dist-xz dist-zip distcheck \
-	distclean distclean-compile distclean-generic distclean-hdr \
-	distclean-tags distcleancheck distdir distuninstallcheck 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 installdirs-am \
-	maintainer-clean maintainer-clean-generic mostlyclean \
-	mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
-	tags tags-am uninstall uninstall-am
+	dist-lzip dist-shar dist-tarZ dist-xz dist-zip dist-zstd \
+	distcheck distclean distclean-compile distclean-generic \
+	distclean-hdr distclean-tags distcleancheck distdir \
+	distuninstallcheck 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 \
+	installdirs-am maintainer-clean maintainer-clean-generic \
+	mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
+	ps ps-am tags tags-am uninstall uninstall-am
 
 .PRECIOUS: Makefile
 

Modified: branches/stable/source/src/libs/xpdf/ac/xpdf.ac
===================================================================
--- branches/stable/source/src/libs/xpdf/ac/xpdf.ac	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/ac/xpdf.ac	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,9 +1,12 @@
+dnl $Id: xpdf.ac 55138 2020-05-14 17:47:47Z karl $
 ## libs/xpdf/ac/xpdf.ac: configure.ac fragment for the TeX Live subdirectory libs/xpdf/
 dnl
-dnl Copyright (C) 2009 Peter Breitenlohner <tex-live at tug.org>
+dnl Copyright 2015-2020 Karl Berry <tex-live at tug.org>
+dnl Copyright 2009-2015 Peter Breitenlohner <tex-live at tug.org>
 dnl You may freely use, modify and/or distribute this file.
 dnl
-## basic check of system xpdf (poppler)
+## basic check of system xpdf (a.k.a. poppler, no longer supported in
+## TL sources)
 KPSE_TRY_LIBXX([xpdf],
                [#include <GfxFont.h>],
                [GfxFont *gfxFont; gfxFont->decRefCnt();])

Modified: branches/stable/source/src/libs/xpdf/aclocal.m4
===================================================================
--- branches/stable/source/src/libs/xpdf/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -595,7 +597,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +618,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -638,7 +640,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -673,7 +675,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -716,7 +718,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -755,7 +757,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -784,7 +786,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +833,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -850,7 +852,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,7 +933,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -991,7 +993,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1019,7 +1021,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1038,7 +1040,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/libs/xpdf/configure
===================================================================
--- branches/stable/source/src/libs/xpdf/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -7620,7 +7620,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/libs/xpdf/fofi/Makefile.in
===================================================================
--- branches/stable/source/src/libs/xpdf/fofi/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/fofi/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/libs/xpdf/goo/Makefile.in
===================================================================
--- branches/stable/source/src/libs/xpdf/goo/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/goo/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/libs/xpdf/splash/Makefile.in
===================================================================
--- branches/stable/source/src/libs/xpdf/splash/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/splash/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/libs/xpdf/xpdf/Makefile.in
===================================================================
--- branches/stable/source/src/libs/xpdf/xpdf/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/xpdf/xpdf/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/libs/zlib/Makefile.in
===================================================================
--- branches/stable/source/src/libs/zlib/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/zlib/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -203,8 +203,8 @@
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 	cscope check recheck distdir distdir-am dist dist-all \
 	distcheck
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
-	$(LISP)config.h.in
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
+	config.h.in
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
 # *not* preserved.
@@ -1139,6 +1139,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -1181,6 +1185,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -1406,7 +1412,7 @@
 	clean-checkPROGRAMS clean-cscope clean-generic \
 	clean-noinstLIBRARIES cscope cscopelist-am ctags ctags-am dist \
 	dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-shar \
-	dist-tarZ dist-xz dist-zip distcheck distclean \
+	dist-tarZ dist-xz dist-zip dist-zstd distcheck distclean \
 	distclean-compile distclean-generic distclean-hdr \
 	distclean-tags distcleancheck distdir distuninstallcheck dvi \
 	dvi-am html html-am info info-am install install-am \

Modified: branches/stable/source/src/libs/zlib/aclocal.m4
===================================================================
--- branches/stable/source/src/libs/zlib/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/zlib/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -595,7 +597,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +618,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -638,7 +640,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -673,7 +675,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -716,7 +718,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -755,7 +757,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -784,7 +786,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +833,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -850,7 +852,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,7 +933,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -991,7 +993,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1019,7 +1021,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1038,7 +1040,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/libs/zlib/configure
===================================================================
--- branches/stable/source/src/libs/zlib/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/zlib/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -7000,7 +7000,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/libs/zlib/include/Makefile.in
===================================================================
--- branches/stable/source/src/libs/zlib/include/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/libs/zlib/include/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/m4/ChangeLog
===================================================================
--- branches/stable/source/src/m4/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/m4/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,3 +1,16 @@
+2020-05-14  Karl Berry  <karl at freefriends.org>
+
+	* kpse-pkgs.m4 (KPSE_LIBS_PKGS),
+	(KPSE_POPPLER_SYSTEM_FLAGS): remove poppler.
+	* kpse-poppler-flags.m4: remove file.
+	* kpse-xpdf-flags.m4 (KPSE_XPDF_OPTIONS): no more system option.
+	(KPSE_XPDF_SYSTEM_FLAGS): no-op.
+
+2020-04-21 Luigi Scarso <luigi.scarso at gmail.com>
+
+	* kpse-pkgs.m4 (KPSE_LIBS_PKGS): add pplib.
+	* Add kpse-pplib-flags.m4.
+
 2020-03-14  Karl Berry  <karl at freefriends.org>
 
 	* kpse-setup.m4 (KPSE_SETUP): make that powerpc*, not powerpc-*.

Modified: branches/stable/source/src/m4/kpse-luajit-flags.m4
===================================================================
--- branches/stable/source/src/m4/kpse-luajit-flags.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/m4/kpse-luajit-flags.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,4 +1,4 @@
-# $Id$
+# $Id: kpse-luajit-flags.m4 55138 2020-05-14 17:47:47Z karl $
 # Public macros for the TeX Live (TL) tree.
 # Copyright 2019 Karl Berry <tex-live at tug.org>
 # Copyright 2014 Peter Breitenlohner <tex-live at tug.org>

Modified: branches/stable/source/src/m4/kpse-pkgs.m4
===================================================================
--- branches/stable/source/src/m4/kpse-pkgs.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/m4/kpse-pkgs.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# $Id: kpse-pkgs.m4 49640 2019-01-08 18:57:53Z karl $
+# $Id: kpse-pkgs.m4 55138 2020-05-14 17:47:47Z karl $
 # Private Autoconf macros for the TeX Live (TL) tree.
-# Copyright 2016-2019 Karl Berry <tex-live at tug.org>
+# Copyright 2016-2020 Karl Berry <tex-live at tug.org>
 # Copyright 2009-2015 Peter Breitenlohner <tex-live at tug.org>
 #
 # This file is free software; the copyright holder
@@ -25,6 +25,7 @@
 # Each library must precede required other libraries (if any).
 AC_DEFUN([KPSE_LIBS_PKGS], [dnl
 m4_define([kpse_libs_pkgs], [dnl
+pplib
 harfbuzz
 icu
 teckit
@@ -31,7 +32,6 @@
 graphite2
 zziplib
 xpdf
-poppler
 mpfr
 gmp
 cairo
@@ -58,6 +58,7 @@
 AC_REQUIRE([KPSE_KPATHSEA_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_PTEXENC_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_ZLIB_SYSTEM_FLAGS])[]dnl
+AC_REQUIRE([KPSE_PPLIB_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_LIBPAPER_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_LIBPNG_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_FREETYPE2_SYSTEM_FLAGS])[]dnl
@@ -66,7 +67,6 @@
 AC_REQUIRE([KPSE_CAIRO_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_GMP_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_MPFR_SYSTEM_FLAGS])[]dnl
-AC_REQUIRE([KPSE_POPPLER_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_XPDF_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_ZZIPLIB_SYSTEM_FLAGS])[]dnl
 AC_REQUIRE([KPSE_GRAPHITE2_SYSTEM_FLAGS])[]dnl

Deleted: branches/stable/source/src/m4/kpse-poppler-flags.m4
===================================================================
--- branches/stable/source/src/m4/kpse-poppler-flags.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/m4/kpse-poppler-flags.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,34 +0,0 @@
-# Public macros for the TeX Live (TL) tree.
-# Copyright (C) 2011-2015 Peter Breitenlohner <tex-live at tug.org>
-#
-# This file is free software; the copyright holder
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# KPSE_POPPLER_FLAGS
-# ------------------
-# Provide the configure option '--with-system-poppler' (if in the TL tree).
-#
-# Set the make variables POPPLER_INCLUDES and POPPLER_LIBS to the CPPFLAGS and
-# LIBS required for the `-lpoppler' library in libs/poppler/ of the TL tree.
-AC_DEFUN([KPSE_POPPLER_FLAGS], [dnl
-AC_REQUIRE([KPSE_CHECK_WIN32])[]dnl
-AC_REQUIRE([KPSE_ZLIB_FLAGS])[]dnl
-_KPSE_LIB_FLAGS([poppler], [poppler], [],
-                [-IBLD/libs/poppler/include],
-                [BLD/libs/poppler/libpoppler.a], [],
-                [], [${top_builddir}/../../libs/poppler/include/Stream.h])[]dnl
-test "x$kpse_cv_have_win32" = xno || POPPLER_LIBS="$POPPLER_LIBS -lgdi32"
-]) # KPSE_POPPLER_FLAGS
-
-# KPSE_POPPLER_OPTIONS([WITH-SYSTEM])
-# -----------------------------------
-AC_DEFUN([KPSE_POPPLER_OPTIONS], [_KPSE_LIB_OPTIONS([poppler], [$1], [pkg-config])])
-
-# KPSE_POPPLER_SYSTEM_FLAGS
-# -------------------------
-AC_DEFUN([KPSE_POPPLER_SYSTEM_FLAGS], [dnl
-_KPSE_PKG_CONFIG_FLAGS([poppler], [poppler], [0.30])
-POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-POPPLER_INCLUDES="$POPPLER_VERSION $POPPLER_INCLUDES"
-]) # KPSE_POPPLER_SYSTEM_FLAGS

Added: branches/stable/source/src/m4/kpse-pplib-flags.m4
===================================================================
--- branches/stable/source/src/m4/kpse-pplib-flags.m4	                        (rev 0)
+++ branches/stable/source/src/m4/kpse-pplib-flags.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -0,0 +1,30 @@
+# Public macros for the TeX Live (TL) tree.
+# Copyright (C) 2009-2015 Peter Breitenlohner <tex-live at tug.org>
+#
+# This file is free software; the copyright holder
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 0
+
+# KPSE_PPLIB_FLAGS
+# -----------------
+# Provide the configure options '--with-system-PPLIB' (if in the TL tree).
+#
+# Set the make variables PPLIB_INCLUDES and PPLIB_LIBS to the CPPFLAGS and
+# LIBS required for the `-lpplib' library in libs/pplib/ of the TL tree.
+AC_DEFUN([KPSE_PPLIB_FLAGS], [dnl
+AC_REQUIRE([KPSE_SAVE_FLAGS])[]dnl
+_KPSE_LIB_FLAGS([pplib], [pplib], [tree],
+                [-IBLD/libs/pplib/include], [BLD/libs/pplib/libpplib.a], [],
+                [], [${top_builddir}/../../libs/pplib/include/pplib.h])[]dnl
+]) # KPSE_PPLIB_FLAGS
+
+# KPSE_PPLIB_OPTIONS([WITH-SYSTEM])
+# ----------------------------------
+AC_DEFUN([KPSE_PPLIB_OPTIONS], [_KPSE_LIB_OPTIONS([PPLIB], [$1], [pkg-config])])
+
+# KPSE_PPLIB_SYSTEM_FLAGS
+# ------------------------
+AC_DEFUN([KPSE_PPLIB_SYSTEM_FLAGS], [dnl
+_KPSE_PKG_CONFIG_FLAGS([PPLIB], [PPLIB])])


Property changes on: branches/stable/source/src/m4/kpse-pplib-flags.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Modified: branches/stable/source/src/m4/kpse-win32.m4
===================================================================
--- branches/stable/source/src/m4/kpse-win32.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/m4/kpse-win32.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,4 +1,4 @@
-# $Id$
+# $Id: kpse-win32.m4 55138 2020-05-14 17:47:47Z karl $
 # Public macros for the TeX Live (TL) tree.
 # Copyright 2016-2019 Karl Berry <tex-live at tug.org>
 # Copyright 2009-2015 Peter Breitenlohner <tex-live at tug.org>

Modified: branches/stable/source/src/m4/kpse-xpdf-flags.m4
===================================================================
--- branches/stable/source/src/m4/kpse-xpdf-flags.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/m4/kpse-xpdf-flags.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,10 +1,30 @@
+# $Id: kpse-xpdf-flags.m4 55138 2020-05-14 17:47:47Z karl $
 # Public macros for the TeX Live (TL) tree.
-# Copyright (C) 2009-2015 Peter Breitenlohner <tex-live at tug.org>
+# Copyright 2015-2020 Karl Berry <tex-live at tug.org>
+# Copyright 2009-2015 Peter Breitenlohner <tex-live at tug.org>
 #
 # This file is free software; the copyright holder
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
+# 
+# Support for our semi-homegrown libs/xpdf library. This is derived
+# from xpdf source code, but xpdf does not distribute it as a library.
+# It is used by pdftex (and nothing else) to read PDF images.
+# Other engines use the semi-homegrown pplib library (q.v.) for that.
 
+# The well-known poppler library is also originally derived from xpdf
+# source code, but has been greatly revised and extended. TL used to
+# (sort of) support poppler as the system xpdf, but after the TL 2020
+# release we dropped this, because we switched XeTeX to use pplib, and
+# nothing else used poppler. (No engines ever used poppler to generate
+# their PDF output).
+# 
+# poppler is aggressively developed, with requirements for new compilers
+# and language versions. That's fine for them, but since we don't need
+# anything new, it has become too time-consuming and problematic to
+# continue to support it in the TL sources, when we don't have any
+# requirement for it.
+
 # KPSE_XPDF_FLAGS
 # ---------------
 # Provide the configure option '--with-system-xpdf' (if in the TL tree).
@@ -20,19 +40,25 @@
 test "x$kpse_cv_have_win32" = xno || XPDF_LIBS="$XPDF_LIBS -lgdi32"
 ]) # KPSE_XPDF_FLAGS
 
-# KPSE_XPDF_OPTIONS([WITH-SYSTEM])
+# KPSE_XPDF_OPTIONS([WITH-SYSTEM]) -- as above, no more poppler.
+# Keep this macro's expansion as a valid shell command, though.
+# since it is used internally in the configure scripts.
 # --------------------------------
-AC_DEFUN([KPSE_XPDF_OPTIONS],
-[m4_ifval([$1],
-          [AC_ARG_WITH([system-xpdf],
-                       AS_HELP_STRING([--with-system-xpdf],
-                                      [use installed poppler headers and library instead of xpdf library from TL (requires pkg-config)]))])[]dnl
+AC_DEFUN([KPSE_XPDF_OPTIONS], [dnl
+: "kpse_xpdf_options - no-op"
 ]) # KPSE_XPDF_OPTIONS
+dnl [m4_ifval([$1],
+dnl           [AC_ARG_WITH([system-xpdf],
+dnl                        AS_HELP_STRING([--with-system-xpdf],
+dnl                                       [use installed poppler headers and library instead of xpdf library from TL (requires pkg-config)]))])[]dnl
+dnl ]) # KPSE_XPDF_OPTIONS
 
-# KPSE_XPDF_SYSTEM_FLAGS
+# KPSE_XPDF_SYSTEM_FLAGS -- as above, no more poppler.
 # ----------------------
 AC_DEFUN([KPSE_XPDF_SYSTEM_FLAGS], [dnl
-_KPSE_PKG_CONFIG_FLAGS([xpdf], [poppler], [0.12])
-POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-XPDF_INCLUDES="$POPPLER_VERSION $XPDF_INCLUDES"
+: "kpse_xpdf_system_flags - no-op"
 ]) # KPSE_XPDF_SYSTEM_FLAGS
+dnl _KPSE_PKG_CONFIG_FLAGS([xpdf], [poppler], [0.12])
+dnl POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
+dnl XPDF_INCLUDES="$POPPLER_VERSION $XPDF_INCLUDES"
+dnl ]) # KPSE_XPDF_SYSTEM_FLAGS

Modified: branches/stable/source/src/texk/Makefile.in
===================================================================
--- branches/stable/source/src/texk/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -107,7 +107,6 @@
 	$(top_srcdir)/../m4/kpse-options.m4 \
 	$(top_srcdir)/../m4/kpse-pixman-flags.m4 \
 	$(top_srcdir)/../m4/kpse-pkgs.m4 \
-	$(top_srcdir)/../m4/kpse-poppler-flags.m4 \
 	$(top_srcdir)/../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../m4/kpse-setup.m4 \
 	$(top_srcdir)/../m4/kpse-teckit-flags.m4 \
@@ -171,6 +170,7 @@
 	$(top_srcdir)/../texk/xdvik/ac/xdvik.ac \
 	$(top_srcdir)/../texk/texlive/ac/withenable.ac \
 	$(top_srcdir)/../texk/texlive/ac/texlive.ac \
+	$(top_srcdir)/../libs/pplib/ac/withenable.ac \
 	$(top_srcdir)/../libs/harfbuzz/ac/withenable.ac \
 	$(top_srcdir)/../libs/icu/ac/withenable.ac \
 	$(top_srcdir)/../libs/teckit/ac/withenable.ac \
@@ -177,7 +177,6 @@
 	$(top_srcdir)/../libs/graphite2/ac/withenable.ac \
 	$(top_srcdir)/../libs/zziplib/ac/withenable.ac \
 	$(top_srcdir)/../libs/xpdf/ac/withenable.ac \
-	$(top_srcdir)/../libs/poppler/ac/withenable.ac \
 	$(top_srcdir)/../libs/mpfr/ac/withenable.ac \
 	$(top_srcdir)/../libs/gmp/ac/withenable.ac \
 	$(top_srcdir)/../libs/cairo/ac/withenable.ac \
@@ -668,6 +667,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -710,6 +713,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -886,16 +891,17 @@
 	am--refresh check check-am clean clean-cscope clean-generic \
 	cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
 	dist-gzip dist-hook dist-lzip dist-shar dist-tarZ dist-xz \
-	dist-zip distcheck distclean distclean-generic distclean-tags \
-	distcleancheck distdir distuninstallcheck 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 installdirs-am maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
-	pdf-am ps ps-am tags tags-am uninstall uninstall-am
+	dist-zip dist-zstd distcheck distclean distclean-generic \
+	distclean-tags distcleancheck distdir distuninstallcheck 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 installdirs-am \
+	maintainer-clean maintainer-clean-generic mostlyclean \
+	mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
+	uninstall-am
 
 .PRECIOUS: Makefile
 

Modified: branches/stable/source/src/texk/aclocal.m4
===================================================================
--- branches/stable/source/src/texk/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -595,7 +597,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +618,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -638,7 +640,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -673,7 +675,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -716,7 +718,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -755,7 +757,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -784,7 +786,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +833,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -850,7 +852,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,7 +933,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -991,7 +993,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1019,7 +1021,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1038,7 +1040,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1187,7 +1189,6 @@
 m4_include([../m4/kpse-options.m4])
 m4_include([../m4/kpse-pixman-flags.m4])
 m4_include([../m4/kpse-pkgs.m4])
-m4_include([../m4/kpse-poppler-flags.m4])
 m4_include([../m4/kpse-ptexenc-flags.m4])
 m4_include([../m4/kpse-setup.m4])
 m4_include([../m4/kpse-teckit-flags.m4])

Modified: branches/stable/source/src/texk/configure
===================================================================
--- branches/stable/source/src/texk/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for TeX Live texk 2020.
+# Generated by GNU Autoconf 2.69 for TeX Live texk 2021/dev.
 #
 # Report bugs to <tex-live at tug.org>.
 #
@@ -579,8 +579,8 @@
 # Identity of this package.
 PACKAGE_NAME='TeX Live texk'
 PACKAGE_TARNAME='tex-live-texk'
-PACKAGE_VERSION='2020'
-PACKAGE_STRING='TeX Live texk 2020'
+PACKAGE_VERSION='2021/dev'
+PACKAGE_STRING='TeX Live texk 2021/dev'
 PACKAGE_BUGREPORT='tex-live at tug.org'
 PACKAGE_URL=''
 
@@ -812,8 +812,6 @@
 with_system_teckit
 with_system_graphite2
 with_system_zziplib
-with_system_xpdf
-with_system_poppler
 with_system_mpfr
 with_mpfr_includes
 with_mpfr_libdir
@@ -1395,7 +1393,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures TeX Live texk 2020 to adapt to many kinds of systems.
+\`configure' configures TeX Live texk 2021/dev to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1465,7 +1463,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of TeX Live texk 2020:";;
+     short | recursive ) echo "Configuration of TeX Live texk 2021/dev:";;
    esac
   cat <<\_ACEOF
 
@@ -1642,10 +1640,6 @@
                           (requires pkg-config)
   --with-system-zziplib   use installed zziplib headers and library (requires
                           pkg-config)
-  --with-system-xpdf      use installed poppler headers and library instead of
-                          xpdf library from TL (requires pkg-config)
-  --with-system-poppler   use installed poppler headers and library (requires
-                          pkg-config)
   --with-system-mpfr      use installed mpfr headers and library
   --with-mpfr-includes=DIR
                           mpfr headers installed in DIR
@@ -1753,7 +1747,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-TeX Live texk configure 2020
+TeX Live texk configure 2021/dev
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1854,7 +1848,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by TeX Live texk $as_me 2020, which was
+It was created by TeX Live texk $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3699,7 +3693,7 @@
   need_zlib=yes
 }
 
-# $Id: web2c.ac 53078 2019-12-10 18:39:13Z karl $
+# $Id: web2c.ac 55138 2020-05-14 17:47:47Z karl $
 # texk/web2c/ac/web2c.ac: configure.ac fragment for the TeX Live subdirectory texk/web2c/
 ## configure options for TeX and MF
 
@@ -3882,6 +3876,7 @@
 esac
 
 test "x$enable_web2c:$enable_luatex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -3898,6 +3893,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajittex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -3914,6 +3910,7 @@
 esac
 
 test "x$enable_web2c:$enable_luahbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -3931,6 +3928,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajithbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -4003,7 +4001,7 @@
 fi
 
 test "x$enable_web2c:$enable_xetex" = xyes:yes && {
-  need_poppler=yes
+  need_pplib=yes
   need_libpng=yes
   need_freetype2=yes
   need_teckit=yes
@@ -4959,6 +4957,9 @@
 fi
 
 
+## libs/pplib/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/pplib/
+## configure options and TL libraries required for pplib
+
 ## libs/harfbuzz/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/harfbuzz/
 ## configure options and TL libraries required for harfbuzz
 
@@ -5112,11 +5113,7 @@
 
 ## libs/xpdf/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/xpdf/
 ## configure options and TL libraries required for xpdf
-
-# Check whether --with-system-xpdf was given.
-if test "${with_system_xpdf+set}" = set; then :
-  withval=$with_system_xpdf;
-fi
+: "kpse_xpdf_options - no-op"
 if test "x$with_system_xpdf" = x; then
   if test -f $srcdir/../libs/xpdf/configure; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming \`xpdf' headers and library from TL tree" >&5
@@ -5130,40 +5127,6 @@
   ac_configure_args="$ac_configure_args '--with-system-xpdf=$with_system_xpdf'"
 fi
 
-## libs/poppler/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/poppler/
-## configure options and TL libraries required for poppler
-
-# Check whether --with-system-poppler was given.
-if test "${with_system_poppler+set}" = set; then :
-  withval=$with_system_poppler;
-fi
-if test "x$with_system_poppler" = x; then
-  if test -f $srcdir/../libs/poppler/configure; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming \`poppler' headers and library from TL tree" >&5
-$as_echo "$as_me: Assuming \`poppler' headers and library from TL tree" >&6;}
-    with_system_poppler=no
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming installed \`poppler' headers and library" >&5
-$as_echo "$as_me: Assuming installed \`poppler' headers and library" >&6;}
-    with_system_poppler=yes
-  fi
-  ac_configure_args="$ac_configure_args '--with-system-poppler=$with_system_poppler'"
-fi
-if test "x$with_system_poppler" = xyes; then
-  if test "x$with_system_zlib" = x; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}:   ->  installed \`zlib' headers and library" >&5
-$as_echo "$as_me:   ->  installed \`zlib' headers and library" >&6;}
-    with_system_zlib=yes
-    ac_configure_args="$ac_configure_args '--with-system-zlib'"
-  elif test "x$with_system_zlib" != xyes; then
-    as_fn_error $? "Sorry, \`--with-system-poppler' requires \`--with-system-zlib'" "$LINENO" 5
-  fi
-fi
-
-test "x$need_poppler" = xyes && {
-  need_zlib=yes
-}
-
 ## libs/mpfr/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/mpfr/
 ## configure options and TL libraries required for mpfr
 
@@ -6132,7 +6095,7 @@
 
 # Define the identity of the package.
  PACKAGE='tex-live-texk'
- VERSION='2020'
+ VERSION='2021/dev'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -7173,7 +7136,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by TeX Live texk $as_me 2020, which was
+This file was extended by TeX Live texk $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -7230,7 +7193,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-TeX Live texk config.status 2020
+TeX Live texk config.status 2021/dev
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -7861,7 +7824,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/texk/kpathsea/ChangeLog
===================================================================
--- branches/stable/source/src/texk/kpathsea/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,3 +1,14 @@
+2020-04-28  Akira Kakuto  <kakuto at w32tex.org>
+
+	* readable.c, knj.c: Support very long input path name,
+	longer than _MAX_PATH for Windows, if it really exists and
+	input name is given in full-absolute path in a command line.
+	(Windows only).
+
+2020-04-10  Karl Berry  <karl at tug.org>
+
+	* version.ac: now 6.3.3/dev since TL'20 is released.
+
 2020-03-27  Karl Berry  <karl at tug.org>
 
 	* TeX Live 2020.

Modified: branches/stable/source/src/texk/kpathsea/Makefile.in
===================================================================
--- branches/stable/source/src/texk/kpathsea/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -375,8 +375,8 @@
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 	cscope check recheck distdir distdir-am dist dist-all \
 	distcheck
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
-	$(LISP)c-auto.in
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
+	c-auto.in
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
 # *not* preserved.
@@ -1974,6 +1974,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -2016,6 +2020,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -2345,8 +2351,8 @@
 	clean-binPROGRAMS clean-cscope clean-generic \
 	clean-libLTLIBRARIES clean-libtool cscope cscopelist-am ctags \
 	ctags-am dist dist-all dist-bzip2 dist-gzip dist-lzip \
-	dist-shar dist-tarZ dist-xz dist-zip distcheck distclean \
-	distclean-compile distclean-generic distclean-hdr \
+	dist-shar dist-tarZ dist-xz dist-zip dist-zstd distcheck \
+	distclean distclean-compile distclean-generic distclean-hdr \
 	distclean-libtool distclean-tags distcleancheck distdir \
 	distuninstallcheck dvi dvi-am html html-am info info-am \
 	install install-am install-binPROGRAMS install-data \

Modified: branches/stable/source/src/texk/kpathsea/aclocal.m4
===================================================================
--- branches/stable/source/src/texk/kpathsea/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -595,7 +597,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +618,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -638,7 +640,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -673,7 +675,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -716,7 +718,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -755,7 +757,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -784,7 +786,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +833,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -850,7 +852,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,7 +933,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -991,7 +993,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1019,7 +1021,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1038,7 +1040,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/texk/kpathsea/c-auto.in
===================================================================
--- branches/stable/source/src/texk/kpathsea/c-auto.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/c-auto.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -23,7 +23,7 @@
 #define KPATHSEA_C_AUTO_H
 
 /* kpathsea: the version string. */
-#define KPSEVERSION "kpathsea version 6.3.2"
+#define KPSEVERSION "kpathsea version 6.3.3/dev"
 
 /* Define to 1 if the `closedir' function returns void instead of `int'. */
 #undef CLOSEDIR_VOID

Modified: branches/stable/source/src/texk/kpathsea/configure
===================================================================
--- branches/stable/source/src/texk/kpathsea/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Kpathsea 6.3.2.
+# Generated by GNU Autoconf 2.69 for Kpathsea 6.3.3/dev.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='Kpathsea'
 PACKAGE_TARNAME='kpathsea'
-PACKAGE_VERSION='6.3.2'
-PACKAGE_STRING='Kpathsea 6.3.2'
+PACKAGE_VERSION='6.3.3/dev'
+PACKAGE_STRING='Kpathsea 6.3.3/dev'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -1339,7 +1339,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Kpathsea 6.3.2 to adapt to many kinds of systems.
+\`configure' configures Kpathsea 6.3.3/dev to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1409,7 +1409,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Kpathsea 6.3.2:";;
+     short | recursive ) echo "Configuration of Kpathsea 6.3.3/dev:";;
    esac
   cat <<\_ACEOF
 
@@ -1537,7 +1537,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Kpathsea configure 6.3.2
+Kpathsea configure 6.3.3/dev
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2376,7 +2376,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Kpathsea $as_me 6.3.2, which was
+It was created by Kpathsea $as_me 6.3.3/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2757,14 +2757,14 @@
 
 
 
-KPSEVERSION=6.3.2
+KPSEVERSION=6.3.3/dev
 
 
-KPSE_LT_VERSINFO=9:2:3
+KPSE_LT_VERSINFO=9:3:3
 
 
 
- WEB2CVERSION=" (TeX Live 2020)"
+ WEB2CVERSION=" (TeX Live 2021/dev)"
 
 
 am__api_version='1.16'
@@ -8073,7 +8073,7 @@
 
 # Define the identity of the package.
  PACKAGE='kpathsea'
- VERSION='6.3.2'
+ VERSION='6.3.3/dev'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -14697,7 +14697,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Kpathsea $as_me 6.3.2, which was
+This file was extended by Kpathsea $as_me 6.3.3/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -14763,7 +14763,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-Kpathsea config.status 6.3.2
+Kpathsea config.status 6.3.3/dev
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -15862,7 +15862,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/texk/kpathsea/doc/Makefile.in
===================================================================
--- branches/stable/source/src/texk/kpathsea/doc/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/doc/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/texk/kpathsea/knj.c
===================================================================
--- branches/stable/source/src/texk/kpathsea/knj.c	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/knj.c	2020-05-15 18:03:05 UTC (rev 825)
@@ -116,12 +116,39 @@
     FILE *f;
     wchar_t *fnamew, modew[4];
     int i;
+    unsigned char *fnn;
+    unsigned char *p;
+    size_t len;
 
     assert(filename && mode);
-
-    fnamew = get_wstring_from_mbstring(kpse->File_system_codepage, filename, fnamew=NULL);
+    len = strlen(filename);
+/*
+  Support very long input path name, longer than _MAX_PATH for
+  Windows, if it really exists and input name is given in
+  full-absolute path in a command line.
+*/
+    fnn = xmalloc(len + 10);
+    if (len > 2 && ((filename[0] == '/' && filename[1] == '/') ||
+        (filename[0] == '\\' && filename[1] == '\\' &&
+         filename[2] != '?'))) {
+       filename += 2;
+       strcpy (fnn, "\\\\?\\UNC\\");
+       strcat (fnn, filename);
+    } else if (len > 2 && filename[1] == ':') {
+       strcpy (fnn, "\\\\?\\");
+       strcat (fnn, filename);
+    } else {
+       strcpy (fnn, filename);
+    }
+    for (p = fnn; *p; p++) {
+      if (*p == '/')
+         *p = '\\';
+    }
+    
+    fnamew = get_wstring_from_mbstring(kpse->File_system_codepage, fnn, fnamew=NULL);
     for(i=0; (modew[i]=(wchar_t)mode[i]); i++) {} /* mode[i] must be ASCII */
     f = _wfopen(fnamew, modew);
+    free (fnn);
     if (f == NULL)
         FATAL_PERROR(filename);
     if (KPATHSEA_DEBUG_P (KPSE_DEBUG_FOPEN)) {
@@ -149,12 +176,39 @@
     FILE *f;
     wchar_t *fnamew, modew[4];
     int i;
+    unsigned char *fnn;
+    unsigned char *p;
+    size_t len;
 
     assert(filename && mode);
+    len = strlen(filename);
+/*
+  Support very long input path name, longer than _MAX_PATH for
+  Windows, if it really exists and input name is given in
+  full-absolute path in a command line.
+*/
+    fnn = xmalloc(len + 10);
+    if (len > 2 && ((filename[0] == '/' && filename[1] == '/') ||
+        (filename[0] == '\\' && filename[1] == '\\' &&
+         filename[2] != '?'))) {
+       filename += 2;
+       strcpy (fnn, "\\\\?\\UNC\\");
+       strcat (fnn, filename);
+    } else if (len > 2 && filename[1] == ':') {
+       strcpy (fnn, "\\\\?\\");
+       strcat (fnn, filename);
+    } else {
+       strcpy (fnn, filename);
+    }
+    for (p = fnn; *p; p++) {
+      if (*p == '/')
+         *p = '\\';
+    }
 
-    fnamew = get_wstring_from_mbstring(kpse->File_system_codepage, filename, fnamew=NULL);
+    fnamew = get_wstring_from_mbstring(kpse->File_system_codepage, fnn, fnamew=NULL);
     for(i=0; (modew[i]=(wchar_t)mode[i]); i++) {} /* mode[i] must be ASCII */
     f = _wfopen(fnamew, modew);
+    free (fnn);
     if (f != NULL) {
         if (KPATHSEA_DEBUG_P (KPSE_DEBUG_FOPEN)) {
             DEBUGF_START ();

Modified: branches/stable/source/src/texk/kpathsea/man/Makefile.in
===================================================================
--- branches/stable/source/src/texk/kpathsea/man/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/man/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/texk/kpathsea/readable.c
===================================================================
--- branches/stable/source/src/texk/kpathsea/readable.c	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/readable.c	2020-05-15 18:03:05 UTC (rev 825)
@@ -41,7 +41,34 @@
 READABLE(kpathsea kpse, const_string fn, unsigned int st)
 {
   wchar_t *fnw;
-  fnw = get_wstring_from_mbstring(kpse->File_system_codepage, fn, fnw=NULL);
+  unsigned char *fnn;
+  unsigned char *p;
+  size_t len = strlen(fn);
+
+  fnn = xmalloc(len + 10);
+/*
+  Support very long input path name, longer than _MAX_PATH for
+  Windows, if it really exists and input name is given in
+  full-absolute path in a command line.
+*/
+  if (len > 2 && ((fn[0] == '/' && fn[1] == '/') ||
+      (fn[0] == '\\' && fn[1] == '\\' && fn[2] != '?'))) {
+    fn += 2;
+    strcpy (fnn, "\\\\?\\UNC\\");
+    strcat (fnn, fn);
+  } else if (len > 2 && fn[1] == ':') {
+    strcpy (fnn, "\\\\?\\");
+    strcat (fnn, fn);
+  } else {
+    strcpy (fnn, fn);
+  }
+
+  for (p = fnn; *p; p++) {
+    if (*p == '/')
+      *p = '\\';
+  }
+
+  fnw = get_wstring_from_mbstring(kpse->File_system_codepage, fnn, fnw=NULL);
   if ((st = GetFileAttributesW(fnw)) != 0xFFFFFFFF) {
     /* succeeded */
     errno = 0;
@@ -58,6 +85,7 @@
       break;
     }
   }
+  free (fnn);
   if (fnw)
     free (fnw);
   return ((st != 0xFFFFFFFF) && !(st & FILE_ATTRIBUTE_DIRECTORY));

Modified: branches/stable/source/src/texk/kpathsea/version.ac
===================================================================
--- branches/stable/source/src/texk/kpathsea/version.ac	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/version.ac	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,4 +1,4 @@
-dnl $Id: version.ac 53427 2020-01-16 22:02:50Z karl $
+dnl $Id: version.ac 54634 2020-04-10 00:57:04Z karl $
 dnl   Copyright 2016-2020 Karl Berry <tex-live at tug.org>
 dnl   Copyright 2011-2015 Peter Breitenlohner <tex-live at tug.org>
 dnl
@@ -20,4 +20,4 @@
 dnl --------------------------------------------------------
 dnl
 dnl This file is m4-included from configure.ac.
-m4_define([kpse_version], [6.3.2])
+m4_define([kpse_version], [6.3.3/dev])

Modified: branches/stable/source/src/texk/kpathsea/win32/Makefile.in
===================================================================
--- branches/stable/source/src/texk/kpathsea/win32/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/kpathsea/win32/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm
===================================================================
--- branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm	2020-05-15 18:03:05 UTC (rev 825)
@@ -5,7 +5,7 @@
 
 package TeXLive::TLUtils;
 
-my $svnrev = '$Revision: 54143 $';
+my $svnrev = '$Revision: 54629 $';
 my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
 sub module_revision { return $_modulerevision; }
 
@@ -544,7 +544,7 @@
 
 sub initialize_global_tmpdir {
   $::tl_tmpdir = File::Temp::tempdir(CLEANUP => 1);
-  ddebug("tl_tempdir: creating global tempdir $::tl_tmpdir\n");
+  ddebug("initialize_global_tmpdir: creating global tempdir $::tl_tmpdir\n");
   return ($::tl_tmpdir);
 }
 
@@ -558,7 +558,7 @@
 sub tl_tmpdir {
   initialize_global_tmpdir() if (!defined($::tl_tmpdir));
   my $tmp = File::Temp::tempdir(DIR => $::tl_tmpdir, CLEANUP => 1);
-  ddebug("tl_tempdir: creating tempdir $tmp\n");
+  ddebug("tl_tmpdir: creating tempdir $tmp\n");
   return ($tmp);
 }
 
@@ -2213,7 +2213,10 @@
     if ($tlchecksum ne $checksum) {
       tlwarn("TLUtils::check_file: checksums differ for $xzfile:\n");
       tlwarn("TLUtils::check_file:   tlchecksum=$tlchecksum, arg=$checksum\n");
-      $check_file_tmpdir = File::Temp::tempdir("tlcheckfileXXXXXXXX");
+      # on Windows passing a pattern creates the tmpdir in PWD
+      # which means that it will be tried to be created on the DVD
+      # $check_file_tmpdir = File::Temp::tempdir("tlcheckfileXXXXXXXX");
+      $check_file_tmpdir = File::Temp::tempdir();
       tlwarn("TLUtils::check_file:   removing $xzfile, "
              . "but saving copy in $check_file_tmpdir\n");
       copy($xzfile, $check_file_tmpdir);

Modified: branches/stable/source/src/texk/web2c/ChangeLog
===================================================================
--- branches/stable/source/src/texk/web2c/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,3 +1,57 @@
+2020-05-14  Karl Berry  <karl at freefriends.org>
+
+	* Makefile.am (POPPLER_RULE): remove.
+	* ac/web2c.ac (kpse_tex_progs) <xetex>: now depends on pplib
+	instead of poppler.
+	* configure.ac (KPSE_POPPLER_FLAGS): remove.
+
+2020-05-05  Andreas Scherer  <https://ascherer.github.io>
+
+	* mft.ch: Restore section numbering from mft.web.
+	* vftovp.ch: Restore section numbering from vftovp.web.
+
+2020-05-04  Andreas Scherer  <https://ascherer.github.io>
+
+	* tex.ch: Restore section numbering from tex.web.
+
+2020-05-03  Andreas Scherer  <https://ascherer.github.io>
+
+	* bibtex.ch: Restore section numbering from bibtex.web.
+
+2020-04-28  Andreas Scherer  <https://ascherer.github.io>
+
+	* cwebboot.cin: Purge standard headers already in KPathSea.
+
+2020-04-27  Andreas Scherer  <https://ascherer.github.io>
+
+	* ctangleboot.cin,
+	* cwebboot.cin: Use enum'erated program identifiers.
+
+2020-04-23  Tomas Rokicki  <rokicki at gmail.com>
+        and Karl Berry  <karl at freefriends.org>
+
+	* patgen.web,
+	* pktogf.web,
+	* pktype.web: fix trivial typos and clarify public domain status.
+	No code changes.
+	(These .web files are not maintained by DEK, per
+	https://tug.org/TUGbpat/tb35-1/tb109knut.pdf page 2.)
+
+2020-04-13  Andreas Scherer  <https://ascherer.github.io>
+
+	* ctangleboot.cin: Add comment for section 6.
+
+2020-04-11  Andreas Scherer  <https://ascherer.github.io>
+
+	* ctangleboot.cin,
+	* cwebboot.cin: Rearrange 'common variables'.
+
+2020-03-30  Andreas Scherer  <https://ascherer.github.io>
+
+	* ctangleboot.cin,
+	* cwebboot.cin,
+	* help.h: Add new option '-t' to CWEB.
+
 2020-03-27  Karl Berry  <karl at tug.org>
 
 	* TeX Live 2020.

Modified: branches/stable/source/src/texk/web2c/Makefile.am
===================================================================
--- branches/stable/source/src/texk/web2c/Makefile.am	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/Makefile.am	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-## $Id: Makefile.am 51577 2019-07-08 06:07:11Z lscarso $
+## $Id: Makefile.am 55138 2020-05-14 17:47:47Z karl $
 ## Makefile.am for the TeX Live subdirectory texk/web2c/.
 ##
-## Copyright 2017      Karl Berry <tex-live at tug.org>
+## Copyright 2017-2020 Karl Berry <tex-live at tug.org>
 ## Copyright 2009-2015 Peter Breitenlohner <tex-live at tug.org>
 ## You may freely use, modify and/or distribute this file.
 ##
@@ -107,8 +107,8 @@
 @MPFR_RULE@
 ## Rebuild libxpdf
 @XPDF_RULE@
-## Rebuild poppler
- at POPPLER_RULE@
+## Rebuild pplib
+ at PPLIB_RULE@
 ## Rebuild libzzip
 @ZZIPLIB_RULE@
 ## Rebuild libTEXkit
@@ -237,7 +237,6 @@
 include $(srcdir)/luatexdir/am/luafontforge.am
 include $(srcdir)/luatexdir/am/libluatex.am
 include $(srcdir)/luatexdir/am/luaffi.am
-include $(srcdir)/luatexdir/am/luapplib.am 
 include $(srcdir)/luatexdir/am/luatex.am
 
 

Modified: branches/stable/source/src/texk/web2c/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -383,7 +383,7 @@
 	$(top_srcdir)/../../m4/kpse-macos-framework.m4 \
 	$(top_srcdir)/../../m4/kpse-mpfr-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-pixman-flags.m4 \
-	$(top_srcdir)/../../m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/../../m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-socket-libs.m4 \
 	$(top_srcdir)/../../m4/kpse-teckit-flags.m4 \
@@ -629,38 +629,9 @@
 	luatexdir/slnunicode/libluajitmisc_a-slnunico.$(OBJEXT)
 nodist_libluajitmisc_a_OBJECTS = $(am__objects_5)
 libluajitmisc_a_OBJECTS = $(nodist_libluajitmisc_a_OBJECTS)
-libluajitpplib_a_AR = $(AR) $(ARFLAGS)
-libluajitpplib_a_LIBADD =
-am__objects_6 =  \
-	luatexdir/luapplib/src/libluajitpplib_a-pparray.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-ppdict.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-ppheap.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-ppload.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-ppstream.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-pptest1.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-pptest2.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-pptest3.$(OBJEXT) \
-	luatexdir/luapplib/src/libluajitpplib_a-ppxref.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utillog.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.$(OBJEXT)
-nodist_libluajitpplib_a_OBJECTS = $(am__objects_6)
-libluajitpplib_a_OBJECTS = $(nodist_libluajitpplib_a_OBJECTS)
 libluajitsocket_a_AR = $(AR) $(ARFLAGS)
 libluajitsocket_a_LIBADD =
-am__objects_7 =  \
+am__objects_6 =  \
 	luatexdir/luasocket/src/libluajitsocket_a-auxiliar.$(OBJEXT) \
 	luatexdir/luasocket/src/libluajitsocket_a-buffer.$(OBJEXT) \
 	luatexdir/luasocket/src/libluajitsocket_a-compat.$(OBJEXT) \
@@ -677,7 +648,7 @@
 	luatexdir/luasocket/src/libluajitsocket_a-tcp.$(OBJEXT) \
 	luatexdir/luasocket/src/libluajitsocket_a-timeout.$(OBJEXT) \
 	luatexdir/luasocket/src/libluajitsocket_a-udp.$(OBJEXT)
-nodist_libluajitsocket_a_OBJECTS = $(am__objects_7)
+nodist_libluajitsocket_a_OBJECTS = $(am__objects_6)
 libluajitsocket_a_OBJECTS = $(nodist_libluajitsocket_a_OBJECTS)
 libluajittex_a_AR = $(AR) $(ARFLAGS)
 libluajittex_a_LIBADD =
@@ -684,7 +655,7 @@
 dist_libluajittex_a_OBJECTS =  \
 	luatexdir/lua/libluajittex_a-lstrlibext.$(OBJEXT) \
 	luatexdir/lua/libluajittex_a-texluajitc.$(OBJEXT)
-am__objects_8 = luatexdir/luafontloader/src/libluajittex_a-ffdummies.$(OBJEXT) \
+am__objects_7 = luatexdir/luafontloader/src/libluajittex_a-ffdummies.$(OBJEXT) \
 	luatexdir/luafontloader/src/libluajittex_a-luafflib.$(OBJEXT) \
 	luatexdir/dvi/libluajittex_a-dvigen.$(OBJEXT) \
 	luatexdir/font/libluajittex_a-dofont.$(OBJEXT) \
@@ -796,23 +767,23 @@
 	luatexdir/utils/libluajittex_a-managed-sa.$(OBJEXT) \
 	luatexdir/utils/libluajittex_a-unistring.$(OBJEXT) \
 	synctexdir/libluajittex_a-synctex.$(OBJEXT)
-am__objects_9 =
-nodist_libluajittex_a_OBJECTS = $(am__objects_8) $(am__objects_9)
+am__objects_8 =
+nodist_libluajittex_a_OBJECTS = $(am__objects_7) $(am__objects_8)
 libluajittex_a_OBJECTS = $(dist_libluajittex_a_OBJECTS) \
 	$(nodist_libluajittex_a_OBJECTS)
 libluajittexspecific_a_AR = $(AR) $(ARFLAGS)
 libluajittexspecific_a_LIBADD =
-am__objects_10 =  \
+am__objects_9 =  \
 	luatexdir/utils/libluajittexspecific_a-utils.$(OBJEXT) \
 	luatexdir/lua/libluajittexspecific_a-luastuff.$(OBJEXT) \
 	luatexdir/lua/libluajittexspecific_a-luainit.$(OBJEXT) \
 	luatexdir/tex/libluajittexspecific_a-printing.$(OBJEXT)
-nodist_libluajittexspecific_a_OBJECTS = $(am__objects_10)
+nodist_libluajittexspecific_a_OBJECTS = $(am__objects_9)
 libluajittexspecific_a_OBJECTS =  \
 	$(nodist_libluajittexspecific_a_OBJECTS)
 libluamisc_a_AR = $(AR) $(ARFLAGS)
 libluamisc_a_LIBADD =
-am__objects_11 =  \
+am__objects_10 =  \
 	luatexdir/luafilesystem/src/libluamisc_a-lfs.$(OBJEXT) \
 	luatexdir/luamd5/libluamisc_a-md5.$(OBJEXT) \
 	luatexdir/luamd5/libluamisc_a-md5lib.$(OBJEXT) \
@@ -821,40 +792,11 @@
 	luatexdir/luazlib/libluamisc_a-lgzip.$(OBJEXT) \
 	luatexdir/luazlib/libluamisc_a-lzlib.$(OBJEXT) \
 	luatexdir/slnunicode/libluamisc_a-slnunico.$(OBJEXT)
-nodist_libluamisc_a_OBJECTS = $(am__objects_11)
+nodist_libluamisc_a_OBJECTS = $(am__objects_10)
 libluamisc_a_OBJECTS = $(nodist_libluamisc_a_OBJECTS)
-libluapplib_a_AR = $(AR) $(ARFLAGS)
-libluapplib_a_LIBADD =
-am__objects_12 =  \
-	luatexdir/luapplib/src/libluapplib_a-pparray.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-ppcrypt.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-ppdict.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-ppheap.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-ppload.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-ppstream.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-pptest1.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-pptest2.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-pptest3.$(OBJEXT) \
-	luatexdir/luapplib/src/libluapplib_a-ppxref.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilflate.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilfpred.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utiliof.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utillog.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utillzw.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilmd5.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilmem.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilnumber.$(OBJEXT) \
-	luatexdir/luapplib/src/util/libluapplib_a-utilsha.$(OBJEXT)
-nodist_libluapplib_a_OBJECTS = $(am__objects_12)
-libluapplib_a_OBJECTS = $(nodist_libluapplib_a_OBJECTS)
 libluasocket_a_AR = $(AR) $(ARFLAGS)
 libluasocket_a_LIBADD =
-am__objects_13 =  \
+am__objects_11 =  \
 	luatexdir/luasocket/src/libluasocket_a-auxiliar.$(OBJEXT) \
 	luatexdir/luasocket/src/libluasocket_a-buffer.$(OBJEXT) \
 	luatexdir/luasocket/src/libluasocket_a-compat.$(OBJEXT) \
@@ -871,7 +813,7 @@
 	luatexdir/luasocket/src/libluasocket_a-tcp.$(OBJEXT) \
 	luatexdir/luasocket/src/libluasocket_a-timeout.$(OBJEXT) \
 	luatexdir/luasocket/src/libluasocket_a-udp.$(OBJEXT)
-nodist_libluasocket_a_OBJECTS = $(am__objects_13)
+nodist_libluasocket_a_OBJECTS = $(am__objects_11)
 libluasocket_a_OBJECTS = $(nodist_libluasocket_a_OBJECTS)
 libluatex_a_AR = $(AR) $(ARFLAGS)
 libluatex_a_LIBADD =
@@ -879,7 +821,7 @@
 	luatexdir/lua/libluatex_a-lstrlibext.$(OBJEXT) \
 	luatexdir/lua/libluatex_a-helpers.$(OBJEXT) \
 	luatexdir/lua/libluatex_a-texluac.$(OBJEXT)
-am__objects_14 =  \
+am__objects_12 =  \
 	luatexdir/luafontloader/src/libluatex_a-ffdummies.$(OBJEXT) \
 	luatexdir/luafontloader/src/libluatex_a-luafflib.$(OBJEXT) \
 	luatexdir/dvi/libluatex_a-dvigen.$(OBJEXT) \
@@ -992,16 +934,16 @@
 	luatexdir/utils/libluatex_a-managed-sa.$(OBJEXT) \
 	luatexdir/utils/libluatex_a-unistring.$(OBJEXT) \
 	synctexdir/libluatex_a-synctex.$(OBJEXT)
-nodist_libluatex_a_OBJECTS = $(am__objects_14) $(am__objects_9)
+nodist_libluatex_a_OBJECTS = $(am__objects_12) $(am__objects_8)
 libluatex_a_OBJECTS = $(dist_libluatex_a_OBJECTS) \
 	$(nodist_libluatex_a_OBJECTS)
 libluatexspecific_a_AR = $(AR) $(ARFLAGS)
 libluatexspecific_a_LIBADD =
-am__objects_15 = luatexdir/utils/libluatexspecific_a-utils.$(OBJEXT) \
+am__objects_13 = luatexdir/utils/libluatexspecific_a-utils.$(OBJEXT) \
 	luatexdir/lua/libluatexspecific_a-luastuff.$(OBJEXT) \
 	luatexdir/lua/libluatexspecific_a-luainit.$(OBJEXT) \
 	luatexdir/tex/libluatexspecific_a-printing.$(OBJEXT)
-nodist_libluatexspecific_a_OBJECTS = $(am__objects_15)
+nodist_libluatexspecific_a_OBJECTS = $(am__objects_13)
 libluatexspecific_a_OBJECTS = $(nodist_libluatexspecific_a_OBJECTS)
 libmd5_a_AR = $(AR) $(ARFLAGS)
 libmd5_a_LIBADD =
@@ -1009,16 +951,16 @@
 libmd5_a_OBJECTS = $(am_libmd5_a_OBJECTS)
 libmf_a_AR = $(AR) $(ARFLAGS)
 libmf_a_LIBADD =
-am__objects_16 = mfini.$(OBJEXT) mf0.$(OBJEXT)
-nodist_libmf_a_OBJECTS = $(am__objects_16) mf-pool.$(OBJEXT)
+am__objects_14 = mfini.$(OBJEXT) mf0.$(OBJEXT)
+nodist_libmf_a_OBJECTS = $(am__objects_14) mf-pool.$(OBJEXT)
 libmf_a_OBJECTS = $(nodist_libmf_a_OBJECTS)
 libmflua_a_AR = $(AR) $(ARFLAGS)
 libmflua_a_LIBADD =
 dist_libmflua_a_OBJECTS = luatexdir/lua/libmflua_a-lkpselib.$(OBJEXT) \
 	mfluadir/libmflua_a-mfluac.$(OBJEXT)
-am__objects_17 = libmflua_a-mfluaini.$(OBJEXT) \
+am__objects_15 = libmflua_a-mfluaini.$(OBJEXT) \
 	libmflua_a-mflua0.$(OBJEXT)
-nodist_libmflua_a_OBJECTS = $(am__objects_17) \
+nodist_libmflua_a_OBJECTS = $(am__objects_15) \
 	libmflua_a-mflua-pool.$(OBJEXT)
 libmflua_a_OBJECTS = $(dist_libmflua_a_OBJECTS) \
 	$(nodist_libmflua_a_OBJECTS)
@@ -1027,35 +969,35 @@
 dist_libmfluajit_a_OBJECTS =  \
 	luatexdir/lua/libmfluajit_a-lkpselib.$(OBJEXT) \
 	mfluadir/libmfluajit_a-mfluac.$(OBJEXT)
-am__objects_18 = libmfluajit_a-mfluajitini.$(OBJEXT) \
+am__objects_16 = libmfluajit_a-mfluajitini.$(OBJEXT) \
 	libmfluajit_a-mfluajit0.$(OBJEXT)
-nodist_libmfluajit_a_OBJECTS = $(am__objects_18) \
+nodist_libmfluajit_a_OBJECTS = $(am__objects_16) \
 	libmfluajit_a-mfluajit-pool.$(OBJEXT)
 libmfluajit_a_OBJECTS = $(dist_libmfluajit_a_OBJECTS) \
 	$(nodist_libmfluajit_a_OBJECTS)
 libmplibbackends_a_AR = $(AR) $(ARFLAGS)
 libmplibbackends_a_LIBADD =
-am__objects_19 = libmplibbackends_a-pngout.$(OBJEXT)
-am__objects_20 = libmplibbackends_a-svgout.$(OBJEXT)
-nodist_libmplibbackends_a_OBJECTS = $(am__objects_19) \
-	$(am__objects_20)
+am__objects_17 = libmplibbackends_a-pngout.$(OBJEXT)
+am__objects_18 = libmplibbackends_a-svgout.$(OBJEXT)
+nodist_libmplibbackends_a_OBJECTS = $(am__objects_17) \
+	$(am__objects_18)
 libmplibbackends_a_OBJECTS = $(nodist_libmplibbackends_a_OBJECTS)
 libmplibcore_a_AR = $(AR) $(ARFLAGS)
 libmplibcore_a_LIBADD =
-am__objects_21 = libmplibcore_a-mp.$(OBJEXT)
-am__objects_22 = libmplibcore_a-mpmath.$(OBJEXT)
-am__objects_23 = libmplibcore_a-mpmathdecimal.$(OBJEXT)
-am__objects_24 = libmplibcore_a-mpmathdouble.$(OBJEXT)
-am__objects_25 = libmplibcore_a-mpstrings.$(OBJEXT)
-am__objects_26 = libmplibcore_a-psout.$(OBJEXT)
+am__objects_19 = libmplibcore_a-mp.$(OBJEXT)
+am__objects_20 = libmplibcore_a-mpmath.$(OBJEXT)
+am__objects_21 = libmplibcore_a-mpmathdecimal.$(OBJEXT)
+am__objects_22 = libmplibcore_a-mpmathdouble.$(OBJEXT)
+am__objects_23 = libmplibcore_a-mpstrings.$(OBJEXT)
+am__objects_24 = libmplibcore_a-psout.$(OBJEXT)
 nodist_libmplibcore_a_OBJECTS = libmplibcore_a-tfmin.$(OBJEXT) \
-	$(am__objects_21) $(am__objects_22) $(am__objects_23) \
-	$(am__objects_24) $(am__objects_25) $(am__objects_26)
+	$(am__objects_19) $(am__objects_20) $(am__objects_21) \
+	$(am__objects_22) $(am__objects_23) $(am__objects_24)
 libmplibcore_a_OBJECTS = $(nodist_libmplibcore_a_OBJECTS)
 libmplibextramath_a_AR = $(AR) $(ARFLAGS)
 libmplibextramath_a_LIBADD =
-am__objects_27 = libmplibextramath_a-mpmathbinary.$(OBJEXT)
-nodist_libmplibextramath_a_OBJECTS = $(am__objects_27)
+am__objects_25 = libmplibextramath_a-mpmathbinary.$(OBJEXT)
+nodist_libmplibextramath_a_OBJECTS = $(am__objects_25)
 libmplibextramath_a_OBJECTS = $(nodist_libmplibextramath_a_OBJECTS)
 libmputil_a_AR = $(AR) $(ARFLAGS)
 libmputil_a_LIBADD =
@@ -1077,7 +1019,7 @@
 	pdftexdir/writepng.c pdftexdir/writet1.c pdftexdir/writet3.c \
 	pdftexdir/writettf.c pdftexdir/writettf.h pdftexdir/writezip.c \
 	pdftexdir/regex/regex.c pdftexdir/regex/regex.h
- at MINGW32_TRUE@am__objects_28 =  \
+ at MINGW32_TRUE@am__objects_26 =  \
 @MINGW32_TRUE@	pdftexdir/regex/libpdftex_a-regex.$(OBJEXT)
 am_libpdftex_a_OBJECTS = pdftexdir/libpdftex_a-avl.$(OBJEXT) \
 	pdftexdir/libpdftex_a-avlstuff.$(OBJEXT) \
@@ -1098,13 +1040,13 @@
 	pdftexdir/libpdftex_a-writet1.$(OBJEXT) \
 	pdftexdir/libpdftex_a-writet3.$(OBJEXT) \
 	pdftexdir/libpdftex_a-writettf.$(OBJEXT) \
-	pdftexdir/libpdftex_a-writezip.$(OBJEXT) $(am__objects_28)
+	pdftexdir/libpdftex_a-writezip.$(OBJEXT) $(am__objects_26)
 libpdftex_a_OBJECTS = $(am_libpdftex_a_OBJECTS)
 libsynctex_a_AR = $(AR) $(ARFLAGS)
 libsynctex_a_LIBADD =
-am__objects_29 = synctexdir/libsynctex_a-synctex_parser.$(OBJEXT) \
+am__objects_27 = synctexdir/libsynctex_a-synctex_parser.$(OBJEXT) \
 	synctexdir/libsynctex_a-synctex_parser_utils.$(OBJEXT)
-nodist_libsynctex_a_OBJECTS = $(am__objects_29)
+nodist_libsynctex_a_OBJECTS = $(am__objects_27)
 libsynctex_a_OBJECTS = $(nodist_libsynctex_a_OBJECTS)
 libukanji_a_AR = $(AR) $(ARFLAGS)
 libukanji_a_LIBADD =
@@ -1144,10 +1086,10 @@
 	xetexdir/XeTeXFontInst_Mac.h xetexdir/XeTeXFontMgr_Mac.mm \
 	xetexdir/XeTeXFontMgr_Mac.h xetexdir/XeTeX_mac.c \
 	xetexdir/XeTeXFontMgr_FC.cpp xetexdir/XeTeXFontMgr_FC.h
- at XETEX_MACOSX_TRUE@am__objects_30 = xetexdir/libxetex_a-XeTeXFontInst_Mac.$(OBJEXT) \
+ at XETEX_MACOSX_TRUE@am__objects_28 = xetexdir/libxetex_a-XeTeXFontInst_Mac.$(OBJEXT) \
 @XETEX_MACOSX_TRUE@	xetexdir/libxetex_a-XeTeXFontMgr_Mac.$(OBJEXT) \
 @XETEX_MACOSX_TRUE@	xetexdir/libxetex_a-XeTeX_mac.$(OBJEXT)
- at XETEX_MACOSX_FALSE@am__objects_31 = xetexdir/libxetex_a-XeTeXFontMgr_FC.$(OBJEXT)
+ at XETEX_MACOSX_FALSE@am__objects_29 = xetexdir/libxetex_a-XeTeXFontMgr_FC.$(OBJEXT)
 am_libxetex_a_OBJECTS = xetexdir/libxetex_a-XeTeXFontInst.$(OBJEXT) \
 	xetexdir/libxetex_a-XeTeXFontMgr.$(OBJEXT) \
 	xetexdir/libxetex_a-XeTeXLayoutInterface.$(OBJEXT) \
@@ -1161,8 +1103,8 @@
 	xetexdir/image/libxetex_a-jpegimage.$(OBJEXT) \
 	xetexdir/image/libxetex_a-mfileio.$(OBJEXT) \
 	xetexdir/image/libxetex_a-numbers.$(OBJEXT) \
-	xetexdir/image/libxetex_a-pngimage.$(OBJEXT) $(am__objects_30) \
-	$(am__objects_31)
+	xetexdir/image/libxetex_a-pngimage.$(OBJEXT) $(am__objects_28) \
+	$(am__objects_29)
 libxetex_a_OBJECTS = $(am_libxetex_a_OBJECTS)
 am__DEPENDENCIES_1 =
 libsynctex_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
@@ -1180,8 +1122,8 @@
 dist_aleph_OBJECTS = alephdir/aleph-aleph.$(OBJEXT) \
 	alephdir/aleph-alephbis.$(OBJEXT) \
 	alephdir/aleph-alephextra.$(OBJEXT)
-am__objects_32 = aleph-alephini.$(OBJEXT) aleph-aleph0.$(OBJEXT)
-nodist_aleph_OBJECTS = $(am__objects_32) aleph-aleph-pool.$(OBJEXT)
+am__objects_30 = aleph-alephini.$(OBJEXT) aleph-aleph0.$(OBJEXT)
+nodist_aleph_OBJECTS = $(am__objects_30) aleph-aleph-pool.$(OBJEXT)
 aleph_OBJECTS = $(dist_aleph_OBJECTS) $(nodist_aleph_OBJECTS)
 am__DEPENDENCIES_2 = $(proglib) $(am__DEPENDENCIES_1)
 aleph_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1)
@@ -1258,12 +1200,12 @@
 	eptexdir/eptexextra.h eptexdir/eptex_version.h \
 	synctexdir/synctex.c synctexdir/synctex.h \
 	synctexdir/synctex-common.h synctexdir/synctex-eptex.h
- at EPTEX_SYNCTEX_TRUE@am__objects_33 =  \
+ at EPTEX_SYNCTEX_TRUE@am__objects_31 =  \
 @EPTEX_SYNCTEX_TRUE@	synctexdir/eptex-synctex.$(OBJEXT)
 dist_eptex_OBJECTS = eptexdir/eptex-eptexextra.$(OBJEXT) \
-	$(am__objects_33)
-am__objects_34 = eptex-eptexini.$(OBJEXT) eptex-eptex0.$(OBJEXT)
-nodist_eptex_OBJECTS = $(am__objects_34) eptex-eptex-pool.$(OBJEXT)
+	$(am__objects_31)
+am__objects_32 = eptex-eptexini.$(OBJEXT) eptex-eptex0.$(OBJEXT)
+nodist_eptex_OBJECTS = $(am__objects_32) eptex-eptex-pool.$(OBJEXT)
 eptex_OBJECTS = $(dist_eptex_OBJECTS) $(nodist_eptex_OBJECTS)
 @EPTEX_SYNCTEX_TRUE at am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1)
 am__dist_etex_SOURCES_DIST = etexdir/etexextra.c etexdir/etexextra.h \
@@ -1270,10 +1212,10 @@
 	etexdir/etex_version.h synctexdir/synctex.c \
 	synctexdir/synctex.h synctexdir/synctex-common.h \
 	synctexdir/synctex-etex.h
- at ETEX_SYNCTEX_TRUE@am__objects_35 = synctexdir/etex-synctex.$(OBJEXT)
-dist_etex_OBJECTS = etexdir/etex-etexextra.$(OBJEXT) $(am__objects_35)
-am__objects_36 = etex-etexini.$(OBJEXT) etex-etex0.$(OBJEXT)
-nodist_etex_OBJECTS = $(am__objects_36) etex-etex-pool.$(OBJEXT)
+ at ETEX_SYNCTEX_TRUE@am__objects_33 = synctexdir/etex-synctex.$(OBJEXT)
+dist_etex_OBJECTS = etexdir/etex-etexextra.$(OBJEXT) $(am__objects_33)
+am__objects_34 = etex-etexini.$(OBJEXT) etex-etex0.$(OBJEXT)
+nodist_etex_OBJECTS = $(am__objects_34) etex-etex-pool.$(OBJEXT)
 etex_OBJECTS = $(dist_etex_OBJECTS) $(nodist_etex_OBJECTS)
 @ETEX_SYNCTEX_TRUE at am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1)
 am__dist_euptex_SOURCES_DIST = euptexdir/euptexextra.c \
@@ -1280,12 +1222,12 @@
 	euptexdir/euptexextra.h synctexdir/synctex.c \
 	synctexdir/synctex.h synctexdir/synctex-common.h \
 	synctexdir/synctex-euptex.h
- at EUPTEX_SYNCTEX_TRUE@am__objects_37 =  \
+ at EUPTEX_SYNCTEX_TRUE@am__objects_35 =  \
 @EUPTEX_SYNCTEX_TRUE@	synctexdir/euptex-synctex.$(OBJEXT)
 dist_euptex_OBJECTS = euptexdir/euptex-euptexextra.$(OBJEXT) \
-	$(am__objects_37)
-am__objects_38 = euptex-euptexini.$(OBJEXT) euptex-euptex0.$(OBJEXT)
-nodist_euptex_OBJECTS = $(am__objects_38) euptex-euptex-pool.$(OBJEXT)
+	$(am__objects_35)
+am__objects_36 = euptex-euptexini.$(OBJEXT) euptex-euptex0.$(OBJEXT)
+nodist_euptex_OBJECTS = $(am__objects_36) euptex-euptex-pool.$(OBJEXT)
 euptex_OBJECTS = $(dist_euptex_OBJECTS) $(nodist_euptex_OBJECTS)
 @EUPTEX_SYNCTEX_TRUE at am__DEPENDENCIES_5 = $(am__DEPENDENCIES_1)
 am_gftodvi_OBJECTS =
@@ -1304,40 +1246,40 @@
 nodist_initex_OBJECTS = initex-callexe.$(OBJEXT)
 initex_OBJECTS = $(nodist_initex_OBJECTS)
 initex_DEPENDENCIES =
-am__objects_39 = luatexdir/luahbtex-luatex.$(OBJEXT) \
+am__objects_37 = luatexdir/luahbtex-luatex.$(OBJEXT) \
 	mplibdir/luahbtex-lmplib.$(OBJEXT)
-nodist_luahbtex_OBJECTS = $(am__objects_39)
+nodist_luahbtex_OBJECTS = $(am__objects_37)
 luahbtex_OBJECTS = $(nodist_luahbtex_OBJECTS)
 am__DEPENDENCIES_6 = $(am__DEPENDENCIES_1)
 am__DEPENDENCIES_7 = libmplibcore.a $(am__DEPENDENCIES_1) \
 	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
 	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_2) libmputil.a libunilib.a libmd5.a \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) libmputil.a \
+	libunilib.a libmd5.a $(am__DEPENDENCIES_1)
 luahbtex_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(luahbtex_CXXFLAGS) \
 	$(CXXFLAGS) $(luahbtex_LDFLAGS) $(LDFLAGS) -o $@
-am__objects_40 = luatexdir/luajithbtex-luatex.$(OBJEXT) \
+am__objects_38 = luatexdir/luajithbtex-luatex.$(OBJEXT) \
 	mplibdir/luajithbtex-lmplib.$(OBJEXT)
-nodist_luajithbtex_OBJECTS = $(am__objects_40)
+nodist_luajithbtex_OBJECTS = $(am__objects_38)
 luajithbtex_OBJECTS = $(nodist_luajithbtex_OBJECTS)
 luajithbtex_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(luajithbtex_CXXFLAGS) \
 	$(CXXFLAGS) $(luajithbtex_LDFLAGS) $(LDFLAGS) -o $@
-am__objects_41 = luatexdir/luajittex-luatex.$(OBJEXT) \
+am__objects_39 = luatexdir/luajittex-luatex.$(OBJEXT) \
 	mplibdir/luajittex-lmplib.$(OBJEXT)
-nodist_luajittex_OBJECTS = $(am__objects_41)
+nodist_luajittex_OBJECTS = $(am__objects_39)
 luajittex_OBJECTS = $(nodist_luajittex_OBJECTS)
 am__DEPENDENCIES_8 = libmplibcore.a $(am__DEPENDENCIES_1) \
 	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_2) libmputil.a libunilib.a libmd5.a \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) libmputil.a \
+	libunilib.a libmd5.a $(am__DEPENDENCIES_1)
 luajittex_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
 	$(luajittex_LDFLAGS) $(LDFLAGS) -o $@
-am__objects_42 = luatexdir/luatex-luatex.$(OBJEXT) \
+am__objects_40 = luatexdir/luatex-luatex.$(OBJEXT) \
 	mplibdir/luatex-lmplib.$(OBJEXT)
-nodist_luatex_OBJECTS = $(am__objects_42)
+nodist_luatex_OBJECTS = $(am__objects_40)
 luatex_OBJECTS = $(nodist_luatex_OBJECTS)
 luatex_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
@@ -1363,8 +1305,8 @@
 mflua_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
 	$(mflua_LDFLAGS) $(LDFLAGS) -o $@
-am__objects_43 = mfluadir/mflua_nowin-mfluaextra.$(OBJEXT)
-nodist_mflua_nowin_OBJECTS = $(am__objects_43)
+am__objects_41 = mfluadir/mflua_nowin-mfluaextra.$(OBJEXT)
+nodist_mflua_nowin_OBJECTS = $(am__objects_41)
 mflua_nowin_OBJECTS = $(nodist_mflua_nowin_OBJECTS)
 mflua_nowin_DEPENDENCIES = libmflua.a $(am__DEPENDENCIES_2) \
 	$(windowlib) $(am__DEPENDENCIES_6)
@@ -1378,8 +1320,8 @@
 mfluajit_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
 	$(mfluajit_LDFLAGS) $(LDFLAGS) -o $@
-am__objects_44 = mfluajitdir/mfluajit_nowin-mfluajitextra.$(OBJEXT)
-nodist_mfluajit_nowin_OBJECTS = $(am__objects_44)
+am__objects_42 = mfluajitdir/mfluajit_nowin-mfluajitextra.$(OBJEXT)
+nodist_mfluajit_nowin_OBJECTS = $(am__objects_42)
 mfluajit_nowin_OBJECTS = $(nodist_mfluajit_nowin_OBJECTS)
 mfluajit_nowin_DEPENDENCIES = libmfluajit.a $(am__DEPENDENCIES_2) \
 	$(windowlib) $(am__DEPENDENCIES_1)
@@ -1391,8 +1333,8 @@
 mft_OBJECTS = $(nodist_mft_OBJECTS)
 mft_LDADD = $(LDADD)
 mft_DEPENDENCIES = $(proglib) $(am__DEPENDENCIES_1)
-am__objects_45 = mpost-mpxout.$(OBJEXT)
-nodist_mpost_OBJECTS = mpost-mpost.$(OBJEXT) $(am__objects_45)
+am__objects_43 = mpost-mpxout.$(OBJEXT)
+nodist_mpost_OBJECTS = mpost-mpost.$(OBJEXT) $(am__objects_43)
 mpost_OBJECTS = $(nodist_mpost_OBJECTS)
 mpost_DEPENDENCIES = libmplibcore.a libmplibextramath.a \
 	libmplibbackends.a $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
@@ -1425,12 +1367,12 @@
 	pdftexdir/etex_version.h synctexdir/synctex.c \
 	synctexdir/synctex.h synctexdir/synctex-common.h \
 	synctexdir/synctex-pdftex.h
- at PDFTEX_SYNCTEX_TRUE@am__objects_46 =  \
+ at PDFTEX_SYNCTEX_TRUE@am__objects_44 =  \
 @PDFTEX_SYNCTEX_TRUE@	synctexdir/pdftex-synctex.$(OBJEXT)
 dist_pdftex_OBJECTS = pdftexdir/pdftex-pdftexextra.$(OBJEXT) \
-	$(am__objects_46)
-am__objects_47 = pdftex-pdftexini.$(OBJEXT) pdftex-pdftex0.$(OBJEXT)
-nodist_pdftex_OBJECTS = $(am__objects_47) pdftex-pdftex-pool.$(OBJEXT)
+	$(am__objects_44)
+am__objects_45 = pdftex-pdftexini.$(OBJEXT) pdftex-pdftex0.$(OBJEXT)
+nodist_pdftex_OBJECTS = $(am__objects_45) pdftex-pdftex-pool.$(OBJEXT)
 pdftex_OBJECTS = $(dist_pdftex_OBJECTS) $(nodist_pdftex_OBJECTS)
 am__DEPENDENCIES_11 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
 	$(am__DEPENDENCIES_1) libmd5.a
@@ -1457,20 +1399,20 @@
 pltotf_OBJECTS = $(nodist_pltotf_OBJECTS)
 pltotf_LDADD = $(LDADD)
 pltotf_DEPENDENCIES = $(proglib) $(am__DEPENDENCIES_1)
-am__objects_48 = pmpost-pmp.$(OBJEXT)
-am__objects_49 = pmpost-pmpmath.$(OBJEXT)
-am__objects_50 = pmpost-pmpmathbinary.$(OBJEXT)
-am__objects_51 = pmpost-pmpmathdecimal.$(OBJEXT)
-am__objects_52 = pmpost-pmpmathdouble.$(OBJEXT)
-am__objects_53 = pmpost-pmpstrings.$(OBJEXT)
-am__objects_54 = pmpost-pmpxout.$(OBJEXT)
-am__objects_55 = pmpost-ppngout.$(OBJEXT)
-am__objects_56 = pmpost-ppsout.$(OBJEXT)
-am__objects_57 = pmpost-psvgout.$(OBJEXT)
-nodist_pmpost_OBJECTS = $(am__objects_48) $(am__objects_49) \
-	$(am__objects_50) $(am__objects_51) $(am__objects_52) \
-	pmpost-pmpost.$(OBJEXT) $(am__objects_53) $(am__objects_54) \
-	$(am__objects_55) $(am__objects_56) $(am__objects_57) \
+am__objects_46 = pmpost-pmp.$(OBJEXT)
+am__objects_47 = pmpost-pmpmath.$(OBJEXT)
+am__objects_48 = pmpost-pmpmathbinary.$(OBJEXT)
+am__objects_49 = pmpost-pmpmathdecimal.$(OBJEXT)
+am__objects_50 = pmpost-pmpmathdouble.$(OBJEXT)
+am__objects_51 = pmpost-pmpstrings.$(OBJEXT)
+am__objects_52 = pmpost-pmpxout.$(OBJEXT)
+am__objects_53 = pmpost-ppngout.$(OBJEXT)
+am__objects_54 = pmpost-ppsout.$(OBJEXT)
+am__objects_55 = pmpost-psvgout.$(OBJEXT)
+nodist_pmpost_OBJECTS = $(am__objects_46) $(am__objects_47) \
+	$(am__objects_48) $(am__objects_49) $(am__objects_50) \
+	pmpost-pmpost.$(OBJEXT) $(am__objects_51) $(am__objects_52) \
+	$(am__objects_53) $(am__objects_54) $(am__objects_55) \
 	pmpost-ptfmin.$(OBJEXT)
 pmpost_OBJECTS = $(nodist_pmpost_OBJECTS)
 pmpost_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
@@ -1488,10 +1430,10 @@
 	ptexdir/ptex_version.h synctexdir/synctex.c \
 	synctexdir/synctex.h synctexdir/synctex-common.h \
 	synctexdir/synctex-ptex.h
- at PTEX_SYNCTEX_TRUE@am__objects_58 = synctexdir/ptex-synctex.$(OBJEXT)
-dist_ptex_OBJECTS = ptexdir/ptex-ptexextra.$(OBJEXT) $(am__objects_58)
-am__objects_59 = ptex-ptexini.$(OBJEXT) ptex-ptex0.$(OBJEXT)
-nodist_ptex_OBJECTS = $(am__objects_59) ptex-ptex-pool.$(OBJEXT)
+ at PTEX_SYNCTEX_TRUE@am__objects_56 = synctexdir/ptex-synctex.$(OBJEXT)
+dist_ptex_OBJECTS = ptexdir/ptex-ptexextra.$(OBJEXT) $(am__objects_56)
+am__objects_57 = ptex-ptexini.$(OBJEXT) ptex-ptex0.$(OBJEXT)
+nodist_ptex_OBJECTS = $(am__objects_57) ptex-ptex-pool.$(OBJEXT)
 ptex_OBJECTS = $(dist_ptex_OBJECTS) $(nodist_ptex_OBJECTS)
 @PTEX_SYNCTEX_TRUE at am__DEPENDENCIES_12 = $(am__DEPENDENCIES_1)
 am_ptftopl_OBJECTS =
@@ -1512,10 +1454,10 @@
 am__dist_tex_SOURCES_DIST = texextra.c synctexdir/synctex.c \
 	synctexdir/synctex.h synctexdir/synctex-common.h \
 	synctexdir/synctex-tex.h
- at TEX_SYNCTEX_TRUE@am__objects_60 = synctexdir/tex-synctex.$(OBJEXT)
-dist_tex_OBJECTS = tex-texextra.$(OBJEXT) $(am__objects_60)
-am__objects_61 = tex-texini.$(OBJEXT) tex-tex0.$(OBJEXT)
-nodist_tex_OBJECTS = $(am__objects_61) tex-tex-pool.$(OBJEXT)
+ at TEX_SYNCTEX_TRUE@am__objects_58 = synctexdir/tex-synctex.$(OBJEXT)
+dist_tex_OBJECTS = tex-texextra.$(OBJEXT) $(am__objects_58)
+am__objects_59 = tex-texini.$(OBJEXT) tex-tex0.$(OBJEXT)
+nodist_tex_OBJECTS = $(am__objects_59) tex-tex-pool.$(OBJEXT)
 tex_OBJECTS = $(dist_tex_OBJECTS) $(nodist_tex_OBJECTS)
 @TEX_SYNCTEX_TRUE at am__DEPENDENCIES_14 = $(am__DEPENDENCIES_1)
 tex_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \
@@ -1540,21 +1482,21 @@
 nodist_updvitype_OBJECTS = updvitype-updvitype.$(OBJEXT)
 updvitype_OBJECTS = $(am_updvitype_OBJECTS) \
 	$(nodist_updvitype_OBJECTS)
-am__objects_62 = upmpost-pmp.$(OBJEXT)
-am__objects_63 = upmpost-pmpmath.$(OBJEXT)
-am__objects_64 = upmpost-pmpmathbinary.$(OBJEXT)
-am__objects_65 = upmpost-pmpmathdecimal.$(OBJEXT)
-am__objects_66 = upmpost-pmpmathdouble.$(OBJEXT)
-am__objects_67 = upmpost-pmpstrings.$(OBJEXT)
-am__objects_68 = upmpost-pmpxout.$(OBJEXT)
-am__objects_69 = upmpost-ppngout.$(OBJEXT)
-am__objects_70 = upmpost-ppsout.$(OBJEXT)
-am__objects_71 = upmpost-psvgout.$(OBJEXT)
-am__objects_72 = $(am__objects_62) $(am__objects_63) $(am__objects_64) \
-	$(am__objects_65) $(am__objects_66) upmpost-pmpost.$(OBJEXT) \
-	$(am__objects_67) $(am__objects_68) $(am__objects_69) \
-	$(am__objects_70) $(am__objects_71) upmpost-ptfmin.$(OBJEXT)
-nodist_upmpost_OBJECTS = $(am__objects_72)
+am__objects_60 = upmpost-pmp.$(OBJEXT)
+am__objects_61 = upmpost-pmpmath.$(OBJEXT)
+am__objects_62 = upmpost-pmpmathbinary.$(OBJEXT)
+am__objects_63 = upmpost-pmpmathdecimal.$(OBJEXT)
+am__objects_64 = upmpost-pmpmathdouble.$(OBJEXT)
+am__objects_65 = upmpost-pmpstrings.$(OBJEXT)
+am__objects_66 = upmpost-pmpxout.$(OBJEXT)
+am__objects_67 = upmpost-ppngout.$(OBJEXT)
+am__objects_68 = upmpost-ppsout.$(OBJEXT)
+am__objects_69 = upmpost-psvgout.$(OBJEXT)
+am__objects_70 = $(am__objects_60) $(am__objects_61) $(am__objects_62) \
+	$(am__objects_63) $(am__objects_64) upmpost-pmpost.$(OBJEXT) \
+	$(am__objects_65) $(am__objects_66) $(am__objects_67) \
+	$(am__objects_68) $(am__objects_69) upmpost-ptfmin.$(OBJEXT)
+nodist_upmpost_OBJECTS = $(am__objects_70)
 upmpost_OBJECTS = $(nodist_upmpost_OBJECTS)
 am__DEPENDENCIES_16 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
 	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
@@ -1568,12 +1510,12 @@
 	uptexdir/uptexextra.h uptexdir/uptex_version.h \
 	synctexdir/synctex.c synctexdir/synctex.h \
 	synctexdir/synctex-common.h synctexdir/synctex-uptex.h
- at UPTEX_SYNCTEX_TRUE@am__objects_73 =  \
+ at UPTEX_SYNCTEX_TRUE@am__objects_71 =  \
 @UPTEX_SYNCTEX_TRUE@	synctexdir/uptex-synctex.$(OBJEXT)
 dist_uptex_OBJECTS = uptexdir/uptex-uptexextra.$(OBJEXT) \
-	$(am__objects_73)
-am__objects_74 = uptex-uptexini.$(OBJEXT) uptex-uptex0.$(OBJEXT)
-nodist_uptex_OBJECTS = $(am__objects_74) uptex-uptex-pool.$(OBJEXT)
+	$(am__objects_71)
+am__objects_72 = uptex-uptexini.$(OBJEXT) uptex-uptex0.$(OBJEXT)
+nodist_uptex_OBJECTS = $(am__objects_72) uptex-uptex-pool.$(OBJEXT)
 uptex_OBJECTS = $(dist_uptex_OBJECTS) $(nodist_uptex_OBJECTS)
 @UPTEX_SYNCTEX_TRUE at am__DEPENDENCIES_17 = $(am__DEPENDENCIES_1)
 am_uptftopl_OBJECTS =
@@ -1612,12 +1554,12 @@
 	xetexdir/xetex_version.h synctexdir/synctex.c \
 	synctexdir/synctex.h synctexdir/synctex-common.h \
 	synctexdir/synctex-xetex.h
- at XETEX_SYNCTEX_TRUE@am__objects_75 =  \
+ at XETEX_SYNCTEX_TRUE@am__objects_73 =  \
 @XETEX_SYNCTEX_TRUE@	synctexdir/xetex-synctex.$(OBJEXT)
 dist_xetex_OBJECTS = xetexdir/xetex-xetexextra.$(OBJEXT) \
-	$(am__objects_75)
-am__objects_76 = xetex-xetexini.$(OBJEXT) xetex-xetex0.$(OBJEXT)
-nodist_xetex_OBJECTS = $(am__objects_76) xetex-xetex-pool.$(OBJEXT)
+	$(am__objects_73)
+am__objects_74 = xetex-xetexini.$(OBJEXT) xetex-xetex0.$(OBJEXT)
+nodist_xetex_OBJECTS = $(am__objects_74) xetex-xetex-pool.$(OBJEXT)
 xetex_OBJECTS = $(dist_xetex_OBJECTS) $(nodist_xetex_OBJECTS)
 @XETEX_MACOSX_FALSE at am__DEPENDENCIES_18 = $(am__DEPENDENCIES_1)
 am__DEPENDENCIES_19 = $(libxetex) $(am__DEPENDENCIES_1) \
@@ -1946,54 +1888,6 @@
 	luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5lib.Po \
 	luatexdir/luapeg/$(DEPDIR)/libluajitmisc_a-lpeg.Po \
 	luatexdir/luapeg/$(DEPDIR)/libluamisc_a-lpeg.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Po \
-	luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Po \
-	luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Po \
 	luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po \
 	luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-buffer.Po \
 	luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-compat.Po \
@@ -2306,12 +2200,11 @@
 	$(libluajitharfbuzz_a_SOURCES) \
 	$(nodist_libluajithbtexspecific_a_SOURCES) \
 	$(nodist_libluajitmisc_a_SOURCES) \
-	$(nodist_libluajitpplib_a_SOURCES) \
 	$(nodist_libluajitsocket_a_SOURCES) \
 	$(dist_libluajittex_a_SOURCES) \
 	$(nodist_libluajittex_a_SOURCES) \
 	$(nodist_libluajittexspecific_a_SOURCES) \
-	$(nodist_libluamisc_a_SOURCES) $(nodist_libluapplib_a_SOURCES) \
+	$(nodist_libluamisc_a_SOURCES) \
 	$(nodist_libluasocket_a_SOURCES) $(dist_libluatex_a_SOURCES) \
 	$(nodist_libluatex_a_SOURCES) \
 	$(nodist_libluatexspecific_a_SOURCES) $(libmd5_a_SOURCES) \
@@ -2428,8 +2321,8 @@
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 	cscope check recheck distdir distdir-am dist dist-all \
 	distcheck
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
-	$(LISP)c-auto.in
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
+	c-auto.in
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
 # *not* preserved.
@@ -2647,7 +2540,6 @@
 	$(srcdir)/luatexdir/am/luafontforge.am \
 	$(srcdir)/luatexdir/am/luaharfbuzz.am \
 	$(srcdir)/luatexdir/am/luamisc.am \
-	$(srcdir)/luatexdir/am/luapplib.am \
 	$(srcdir)/luatexdir/am/luasocket.am \
 	$(srcdir)/luatexdir/am/luatex.am \
 	$(srcdir)/mfluadir/am/mflua.am \
@@ -2848,9 +2740,9 @@
 PIXMAN_INCLUDES = @PIXMAN_INCLUDES@
 PIXMAN_LIBS = @PIXMAN_LIBS@
 PKG_CONFIG = @PKG_CONFIG@
-POPPLER_DEPEND = @POPPLER_DEPEND@
-POPPLER_INCLUDES = @POPPLER_INCLUDES@
-POPPLER_LIBS = @POPPLER_LIBS@
+PPLIB_DEPEND = @PPLIB_DEPEND@
+PPLIB_INCLUDES = @PPLIB_INCLUDES@
+PPLIB_LIBS = @PPLIB_LIBS@
 PTEXENC_DEPEND = @PTEXENC_DEPEND@
 PTEXENC_INCLUDES = @PTEXENC_INCLUDES@
 PTEXENC_LIBS = @PTEXENC_LIBS@
@@ -2961,8 +2853,6 @@
 #EXTRA_LIBRARIES += libluamisc.a liblua53misc.a  libluajitmisc.a
 
 #EXTRA_LIBRARIES += libluaffi.a  liblua53ffi.a 
-
-#EXTRA_LIBRARIES += libluapplib.a liblua53pplib.a libluajitpplib.a
 EXTRA_LIBRARIES = libmf.a libmflua.a libmfluajit.a libmputil.a \
 	libmplibcore.a libmplibextramath.a libmplibbackends.a \
 	libkanji.a libukanji.a libpdftex.a libluasocket.a \
@@ -2969,9 +2859,8 @@
 	libluajitsocket.a libluamisc.a libluajitmisc.a libunilib.a \
 	libff.a libluatex.a libluajittex.a libluatexspecific.a \
 	libluajittexspecific.a libluahbtexspecific.a \
-	libluajithbtexspecific.a libluaffi.a libluapplib.a \
-	libluajitpplib.a libluaharfbuzz.a libluajitharfbuzz.a \
-	libxetex.a libsynctex.a libmd5.a
+	libluajithbtexspecific.a libluaffi.a libluaharfbuzz.a \
+	libluajitharfbuzz.a libxetex.a libsynctex.a libmd5.a
 EXTRA_LTLIBRARIES = libsynctex.la
 lib_LIBRARIES = $(am__append_122)
 lib_LTLIBRARIES = $(am__append_121)
@@ -4155,13 +4044,14 @@
         luatexdir/luasocket/src/udp.h \
         luatexdir/luasocket/src/usocket.h 
 
-libluamisc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) libluasocket.a libluaffi.a libluapplib.a
-#liblua53misc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) liblua53socket.a liblua53ffi.a liblua53pplib.a
-libluajitmisc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) libluajitsocket.a libluajitpplib.a
-libluamisc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUA_INCLUDES)
-#liblua53misc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(LUA_LUA53_INCLUDES)
+libluamisc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) libluasocket.a libluaffi.a 
+#liblua53misc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) liblua53socket.a liblua53ffi.a 
+libluajitmisc_a_DEPENDENCIES = $(ZZIPLIB_DEPEND) libluajitsocket.a 
+libluamisc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(PPLIB_INCLUDES) $(LUA_INCLUDES)
+#liblua53misc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) $(PPLIB_INCLUDES) $(LUA_LUA53_INCLUDES)
 libluajitmisc_a_CPPFLAGS = $(ZLIB_INCLUDES) $(ZZIPLIB_INCLUDES) \
-	$(LUAJIT_INCLUDES) -DLuajitTeX -I$(srcdir)/luatexdir
+	$(PPLIB_INCLUDES) $(LUAJIT_INCLUDES) -DLuajitTeX \
+	-I$(srcdir)/luatexdir
 libluamisc_a_CFLAGS = # $(WARNING_CFLAGS)
 #liblua53misc_a_CFLAGS = # $(WARNING_CFLAGS)
 libluajitmisc_a_CFLAGS = # $(WARNING_CFLAGS)
@@ -4289,9 +4179,9 @@
 libluatex_a_DEPENDENCIES = libff.a libluamisc.a 
 libluajittex_a_DEPENDENCIES = libff.a libluajitmisc.a 
 libluatex_a_preflags = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) \
-	$(LIBPNG_INCLUDES) $(HARFBUZZ_INCLUDES) -I$(srcdir)/libmd5 \
-	-DpdfTeX -I$(srcdir)/luatexdir -I$(srcdir)/luatexdir/unilib \
-	-I$(srcdir)/luatexdir/luapplib/src/util \
+	$(LIBPNG_INCLUDES) $(HARFBUZZ_INCLUDES) $(PPLIB_INCLUDES) \
+	-I$(srcdir)/libmd5 -DpdfTeX -I$(srcdir)/luatexdir \
+	-I$(srcdir)/luatexdir/unilib \
 	-I$(srcdir)/luatexdir/luafontloader/fontforge/inc \
 	-DLUA_FF_LIB=1 \
 	-I$(srcdir)/luatexdir/luafontloader/fontforge/fontforge \
@@ -4635,91 +4525,15 @@
 	luatexdir/luaffi/ffi.h \
 	luatexdir/luaffi/parser.c
 
-libluapplib_a_DEPENDENCIES = $(ZLIB_DEPEND)
-#liblua53pplib_a_DEPENDENCIES = $(ZLIB_DEPEND)
-libluajitpplib_a_DEPENDENCIES = $(ZLIB_DEPEND)
-libluapplib_a_CPPFLAGS = \
-	-I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/src -I$(top_srcdir)/luatexdir/luapplib/src/util $(ZLIB_INCLUDES) $(LUA_INCLUDES)
 
-
-#liblua53pplib_a_CPPFLAGS = \
-#	-I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/src -I$(top_srcdir)/luatexdir/luapplib/src/util $(ZLIB_INCLUDES) $(LUA_LUA53_INCLUDES)
-libluajitpplib_a_CPPFLAGS = \
-	-I$(top_srcdir)/luatexdir/luapplib -I$(top_srcdir)/luatexdir/luapplib/src -I$(top_srcdir)/luatexdir/luapplib/src/util $(ZLIB_INCLUDES) $(LUAJIT_INCLUDES)
-
-libluapplib_a_CFLAGS = # $(WARNING_CFLAGS)
-libluajitpplib_a_CFLAGS = # $(WARNING_CFLAGS)
-nodist_libluapplib_a_SOURCES = $(libluapplib_sources)
-#nodist_liblua53pplib_a_SOURCES = $(libluapplib_sources)
-nodist_libluajitpplib_a_SOURCES = $(libluapplib_sources)
-libluapplib_sources = \
-	luatexdir/luapplib/src/ppapi.h \
-	luatexdir/luapplib/src/pparray.c \
-	luatexdir/luapplib/src/pparray.h \
-	luatexdir/luapplib/src/ppconf.h \
-	luatexdir/luapplib/src/ppcrypt.c \
-	luatexdir/luapplib/src/ppcrypt.h \
-	luatexdir/luapplib/src/ppdict.c \
-	luatexdir/luapplib/src/ppdict.h \
-	luatexdir/luapplib/src/ppfilter.h \
-	luatexdir/luapplib/src/ppheap.c \
-	luatexdir/luapplib/src/ppheap.h \
-	luatexdir/luapplib/src/pplib.h \
-	luatexdir/luapplib/src/ppload.c \
-	luatexdir/luapplib/src/ppload.h \
-	luatexdir/luapplib/src/ppstream.c \
-	luatexdir/luapplib/src/ppstream.h \
-	luatexdir/luapplib/src/pptest1.c \
-	luatexdir/luapplib/src/pptest2.c \
-	luatexdir/luapplib/src/pptest3.c \
-	luatexdir/luapplib/src/ppxref.c \
-	luatexdir/luapplib/src/ppxref.h \
-	luatexdir/luapplib/src/util/utilbasexx.c \
-	luatexdir/luapplib/src/util/utilbasexx.h \
-	luatexdir/luapplib/src/util/utilcrypt.c \
-	luatexdir/luapplib/src/util/utilcrypt.h \
-	luatexdir/luapplib/src/util/utilcryptdef.h \
-	luatexdir/luapplib/src/util/utildecl.h \
-	luatexdir/luapplib/src/util/utilflate.c \
-	luatexdir/luapplib/src/util/utilflate.h \
-	luatexdir/luapplib/src/util/utilfpred.c \
-	luatexdir/luapplib/src/util/utilfpred.h \
-	luatexdir/luapplib/src/util/utiliof.c \
-	luatexdir/luapplib/src/util/utiliof.h \
-	luatexdir/luapplib/src/util/utillog.c \
-	luatexdir/luapplib/src/util/utillog.h \
-	luatexdir/luapplib/src/util/utillzw.c \
-	luatexdir/luapplib/src/util/utillzw.h \
-	luatexdir/luapplib/src/util/utilmd5.c \
-	luatexdir/luapplib/src/util/utilmd5.h \
-	luatexdir/luapplib/src/util/utilmem.c \
-	luatexdir/luapplib/src/util/utilmem.h \
-	luatexdir/luapplib/src/util/utilmemallc.h \
-	luatexdir/luapplib/src/util/utilmemallh.h \
-	luatexdir/luapplib/src/util/utilmemheap.c \
-	luatexdir/luapplib/src/util/utilmemheap.h \
-	luatexdir/luapplib/src/util/utilmemheapiof.c \
-	luatexdir/luapplib/src/util/utilmemheapiof.h \
-	luatexdir/luapplib/src/util/utilmeminfo.c \
-	luatexdir/luapplib/src/util/utilmeminfo.h \
-	luatexdir/luapplib/src/util/utilnumber.c \
-	luatexdir/luapplib/src/util/utilnumber.h \
-	luatexdir/luapplib/src/util/utilplat.h \
-	luatexdir/luapplib/src/util/utilsha.c \
-	luatexdir/luapplib/src/util/utilsha.h 
-
-
-#liblua53pplib_sources = $(libluapplib_sources)
-libluajitpplib_sources = $(libluapplib_sources)
-
 # Force Automake to use CXXLD for linking
 nodist_EXTRA_luahbtex_SOURCES = dummy.cxx
 nodist_EXTRA_luajithbtex_SOURCES = dummy.cxx
-luatex_preflags = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) $(LIBPNG_INCLUDES) 
+luatex_preflags = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) $(LIBPNG_INCLUDES) $(PPLIB_INCLUDES)
 luatex_postflags = -I$(srcdir)/libmd5 -DpdfTeX -I$(srcdir)/luatexdir \
 	-I$(srcdir)/mplibdir -Dextra_version_info=`date +-%Y%m%d%H` \
 	-I$(srcdir)/synctexdir -DSYNCTEX_ENGINE_H='<synctex-luatex.h>'
-luahbtex_preflags = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) $(LIBPNG_INCLUDES) $(HARFBUZZ_INCLUDES)
+luahbtex_preflags = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) $(LIBPNG_INCLUDES) $(HARFBUZZ_INCLUDES) $(PPLIB_INCLUDES)
 luahbtex_postflags = -I$(srcdir)/libmd5 -DpdfTeX -I$(srcdir)/luatexdir \
 	-I$(srcdir)/mplibdir -Dextra_version_info=`date +-%Y%m%d%H` \
 	-DLUATEX_HARFBUZZ_ENABLED -I$(srcdir)/synctexdir \
@@ -4737,15 +4551,15 @@
 luahbtex_LDFLAGS = -export-dynamic
 luajithbtex_LDFLAGS = -export-dynamic $(LUAJIT_LDEXTRA)
 luatex_postldadd = libmplibcore.a $(ZZIPLIB_LIBS) $(LIBPNG_LIBS) \
-	$(ZLIB_LIBS) $(LDADD) libmputil.a libunilib.a libmd5.a \
-	$(lua_socketlibs)
+	$(ZLIB_LIBS) $(PPLIB_LIBS) $(LDADD) libmputil.a libunilib.a \
+	libmd5.a $(lua_socketlibs)
 luahbtex_postldadd = libmplibcore.a $(ZZIPLIB_LIBS) $(LIBPNG_LIBS) \
-	$(ZLIB_LIBS) $(HARFBUZZ_LIBS) $(GRAPHITE2_LIBS) $(LDADD) \
-	libmputil.a libunilib.a libmd5.a $(lua_socketlibs)
-luatex_LDADD = libluatex.a libluatexspecific.a libluatex.a libff.a libluamisc.a libluasocket.a libluaffi.a libluapplib.a $(LUA_LIBS) $(luatex_postldadd)
-luajittex_LDADD = libluajittex.a libluajittexspecific.a libluajittex.a libff.a libluajitmisc.a libluajitsocket.a libluajitpplib.a  $(LUAJIT_LIBS) $(luatex_postldadd)
-luahbtex_LDADD = libluatex.a libluahbtexspecific.a libluatex.a libff.a libluamisc.a libluasocket.a libluaffi.a libluapplib.a libluaharfbuzz.a $(LUA_LIBS) $(luahbtex_postldadd)
-luajithbtex_LDADD = libluajittex.a libluajithbtexspecific.a libluajittex.a libff.a libluajitmisc.a libluajitsocket.a libluajitpplib.a libluajitharfbuzz.a $(LUAJIT_LIBS) $(luahbtex_postldadd)
+	$(ZLIB_LIBS) $(HARFBUZZ_LIBS) $(GRAPHITE2_LIBS) $(PPLIB_LIBS) \
+	$(LDADD) libmputil.a libunilib.a libmd5.a $(lua_socketlibs)
+luatex_LDADD = libluatex.a libluatexspecific.a libluatex.a libff.a libluamisc.a libluasocket.a libluaffi.a  $(LUA_LIBS) $(luatex_postldadd)
+luajittex_LDADD = libluajittex.a libluajittexspecific.a libluajittex.a libff.a libluajitmisc.a libluajitsocket.a   $(LUAJIT_LIBS) $(luatex_postldadd)
+luahbtex_LDADD = libluatex.a libluahbtexspecific.a libluatex.a libff.a libluamisc.a libluasocket.a libluaffi.a  libluaharfbuzz.a $(LUA_LIBS) $(luahbtex_postldadd)
+luajithbtex_LDADD = libluajittex.a libluajithbtexspecific.a libluajittex.a libff.a libluajitmisc.a libluajitsocket.a libluajitharfbuzz.a $(LUAJIT_LIBS) $(luahbtex_postldadd)
 
 #not here ?
 #LIBTOOLFLAGS += --preserve-dup-deps
@@ -4815,24 +4629,22 @@
 libxetex = libxetex.a
 xetex_cppflags = $(AM_CPPFLAGS) -I$(srcdir)/xetexdir $(ICU_INCLUDES) \
 	$(FREETYPE2_INCLUDES) $(TECKIT_INCLUDES) $(HARFBUZZ_INCLUDES) \
-	$(GRAPHITE2_INCLUDES) $(POPPLER_INCLUDES) $(LIBPNG_INCLUDES) \
-	$(ZLIB_INCLUDES) -I$(srcdir)/libmd5 $(am__append_109) \
+	$(GRAPHITE2_INCLUDES) $(LIBPNG_INCLUDES) $(ZLIB_INCLUDES) \
+	$(PPLIB_INCLUDES) -I$(srcdir)/libmd5 $(am__append_109) \
 	$(am__append_111)
 xetex_ldadd = $(libxetex) $(HARFBUZZ_LIBS) $(GRAPHITE2_LIBS) \
-	$(ICU_LIBS) $(ICU_LIBS_EXTRA) $(TECKIT_LIBS) $(POPPLER_LIBS) \
-	$(LIBPNG_LIBS) $(FREETYPE2_LIBS) $(ZLIB_LIBS) libmd5.a \
+	$(ICU_LIBS) $(ICU_LIBS_EXTRA) $(TECKIT_LIBS) $(LIBPNG_LIBS) \
+	$(FREETYPE2_LIBS) $(ZLIB_LIBS) $(PPLIB_LIBS) libmd5.a \
 	$(am__append_112)
 xetex_dependencies = $(proglib) $(KPATHSEA_DEPEND) $(ICU_DEPEND) \
 	$(TECKIT_DEPEND) $(HARFBUZZ_DEPEND) $(GRAPHITE2_DEPEND) \
-	$(POPPLER_DEPEND) $(LIBPNG_DEPEND) $(FREETYPE2_DEPEND) \
-	$(ZLIB_DEPEND) libmd5.a
+	$(LIBPNG_DEPEND) $(FREETYPE2_DEPEND) $(ZLIB_DEPEND) \
+	$(PPLIB_DEPEND) libmd5.a
 @XETEX_MACOSX_TRUE at xetex_LDFLAGS = -framework ApplicationServices -framework Cocoa
 xetex_CPPFLAGS = $(xetex_cppflags) $(am__append_151)
 xetex_CFLAGS = $(WARNING_CFLAGS)
 xetex_CXXFLAGS = # $(WARNING_CXXFLAGS)
 xetex_LDADD = $(xetex_ldadd) $(LDADD) $(ipc_socketlibs)
-
-# We must create libxetex.a etc before building the xetex_OBJECTS
 xetex_prereq = $(libxetex) xetexdir/etex_version.h xetexdir/xetex_version.h
 xetex_c_h = xetexini.c xetex0.c xetexcoerce.h xetexd.h
 nodist_xetex_SOURCES = $(xetex_c_h) xetex-pool.c
@@ -5092,7 +4904,7 @@
 .SUFFIXES: .c .cc .cin .cpp .cxx .h .hin .lo .log .mm .o .obj .p .pin .pl .pl$(EXEEXT) .test .test$(EXEEXT) .trs
 am--refresh: Makefile
 	@:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/../../am/dist_hook.am $(srcdir)/am/bootstrap.am $(srcdir)/am/web.am $(srcdir)/am/cweb.am $(srcdir)/am/texmf.am $(srcdir)/mfluadir/am/mflua.am $(srcdir)/mfluajitdir/am/mfluajit.am $(srcdir)/mplibdir/am/mplib.am $(srcdir)/pmpostdir/am/pmpost.am $(srcdir)/mplibdir/am/libmputil.am $(srcdir)/mplibdir/am/libmplib.am $(srcdir)/etexdir/am/etex.am $(srcdir)/ptexdir/am/ptex.am $(srcdir)/eptexdir/am/eptex.am $(srcdir)/uptexdir/am/uptex.am $(srcdir)/euptexdir/am/euptex.am $(srcdir)/pdftexdir/am/libpdftex.am $(srcdir)/pdftexdir/am/pdftex.am $(srcdir)/pdftexdir/am/ttf2afm.am $(srcdir)/pdftexdir/am/pdftosrc.am $(srcdir)/luatexdir/am/luasocket.am $(srcdir)/luatexdir/am/luamisc.am $(srcdir)/luatexdir/am/libunilib.am $(srcdir)/luatexdir/am/luafontforge.am $(srcdir)/luatexdir/am/libluatex.am $(srcdir)/luatexdir/am/luaffi.am $(srcdir)/luatexdir/am/luapplib.am $(srcdir)/luatexdir/am/luatex.am $(srcdir)/luatexdir/am/luaharfbuzz.am $(srcdir)/xetexdir/am/xetex.am $(srcdir)/omegaware/am/omegaware.am $(srcdir)/alephdir/am/aleph.am $(srcdir)/synctexdir/am/synctex.am $(srcdir)/libmd5/am/md5.am $(srcdir)/../../am/bin_links.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/../../am/dist_hook.am $(srcdir)/am/bootstrap.am $(srcdir)/am/web.am $(srcdir)/am/cweb.am $(srcdir)/am/texmf.am $(srcdir)/mfluadir/am/mflua.am $(srcdir)/mfluajitdir/am/mfluajit.am $(srcdir)/mplibdir/am/mplib.am $(srcdir)/pmpostdir/am/pmpost.am $(srcdir)/mplibdir/am/libmputil.am $(srcdir)/mplibdir/am/libmplib.am $(srcdir)/etexdir/am/etex.am $(srcdir)/ptexdir/am/ptex.am $(srcdir)/eptexdir/am/eptex.am $(srcdir)/uptexdir/am/uptex.am $(srcdir)/euptexdir/am/euptex.am $(srcdir)/pdftexdir/am/libpdftex.am $(srcdir)/pdftexdir/am/pdftex.am $(srcdir)/pdftexdir/am/ttf2afm.am $(srcdir)/pdftexdir/am/pdftosrc.am $(srcdir)/luatexdir/am/luasocket.am $(srcdir)/luatexdir/am/luamisc.am $(srcdir)/luatexdir/am/libunilib.am $(srcdir)/luatexdir/am/luafontforge.am $(srcdir)/luatexdir/am/libluatex.am $(srcdir)/luatexdir/am/luaffi.am $(srcdir)/luatexdir/am/luatex.am $(srcdir)/luatexdir/am/luaharfbuzz.am $(srcdir)/xetexdir/am/xetex.am $(srcdir)/omegaware/am/omegaware.am $(srcdir)/alephdir/am/aleph.am $(srcdir)/synctexdir/am/synctex.am $(srcdir)/libmd5/am/md5.am $(srcdir)/../../am/bin_links.am $(am__configure_deps)
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
@@ -5114,7 +4926,7 @@
 	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
 	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
 	esac;
-$(srcdir)/../../am/dist_hook.am $(srcdir)/am/bootstrap.am $(srcdir)/am/web.am $(srcdir)/am/cweb.am $(srcdir)/am/texmf.am $(srcdir)/mfluadir/am/mflua.am $(srcdir)/mfluajitdir/am/mfluajit.am $(srcdir)/mplibdir/am/mplib.am $(srcdir)/pmpostdir/am/pmpost.am $(srcdir)/mplibdir/am/libmputil.am $(srcdir)/mplibdir/am/libmplib.am $(srcdir)/etexdir/am/etex.am $(srcdir)/ptexdir/am/ptex.am $(srcdir)/eptexdir/am/eptex.am $(srcdir)/uptexdir/am/uptex.am $(srcdir)/euptexdir/am/euptex.am $(srcdir)/pdftexdir/am/libpdftex.am $(srcdir)/pdftexdir/am/pdftex.am $(srcdir)/pdftexdir/am/ttf2afm.am $(srcdir)/pdftexdir/am/pdftosrc.am $(srcdir)/luatexdir/am/luasocket.am $(srcdir)/luatexdir/am/luamisc.am $(srcdir)/luatexdir/am/libunilib.am $(srcdir)/luatexdir/am/luafontforge.am $(srcdir)/luatexdir/am/libluatex.am $(srcdir)/luatexdir/am/luaffi.am $(srcdir)/luatexdir/am/luapplib.am $(srcdir)/luatexdir/am/luatex.am $(srcdir)/luatexdir/am/luaharfbuzz.am $(srcdir)/xetexdir/am/xetex.am $(srcdir)/omegaware/am/omegaware.am $(srcdir)/alephdir/am/aleph.am $(srcdir)/synctexdir/am/synctex.am $(srcdir)/libmd5/am/md5.am $(srcdir)/../../am/bin_links.am $(am__empty):
+$(srcdir)/../../am/dist_hook.am $(srcdir)/am/bootstrap.am $(srcdir)/am/web.am $(srcdir)/am/cweb.am $(srcdir)/am/texmf.am $(srcdir)/mfluadir/am/mflua.am $(srcdir)/mfluajitdir/am/mfluajit.am $(srcdir)/mplibdir/am/mplib.am $(srcdir)/pmpostdir/am/pmpost.am $(srcdir)/mplibdir/am/libmputil.am $(srcdir)/mplibdir/am/libmplib.am $(srcdir)/etexdir/am/etex.am $(srcdir)/ptexdir/am/ptex.am $(srcdir)/eptexdir/am/eptex.am $(srcdir)/uptexdir/am/uptex.am $(srcdir)/euptexdir/am/euptex.am $(srcdir)/pdftexdir/am/libpdftex.am $(srcdir)/pdftexdir/am/pdftex.am $(srcdir)/pdftexdir/am/ttf2afm.am $(srcdir)/pdftexdir/am/pdftosrc.am $(srcdir)/luatexdir/am/luasocket.am $(srcdir)/luatexdir/am/luamisc.am $(srcdir)/luatexdir/am/libunilib.am $(srcdir)/luatexdir/am/luafontforge.am $(srcdir)/luatexdir/am/libluatex.am $(srcdir)/luatexdir/am/luaffi.am $(srcdir)/luatexdir/am/luatex.am $(srcdir)/luatexdir/am/luaharfbuzz.am $(srcdir)/xetexdir/am/xetex.am $(srcdir)/omegaware/am/omegaware.am $(srcdir)/alephdir/am/aleph.am $(srcdir)/synctexdir/am/synctex.am $(srcdir)/libmd5/am/md5.am $(srcdir)/../../am/bin_links.am $(am__empty):
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 	$(SHELL) ./config.status --recheck
@@ -5631,95 +5443,6 @@
 	$(AM_V_at)-rm -f libluajitmisc.a
 	$(AM_V_AR)$(libluajitmisc_a_AR) libluajitmisc.a $(libluajitmisc_a_OBJECTS) $(libluajitmisc_a_LIBADD)
 	$(AM_V_at)$(RANLIB) libluajitmisc.a
-luatexdir/luapplib/src/$(am__dirstamp):
-	@$(MKDIR_P) luatexdir/luapplib/src
-	@: > luatexdir/luapplib/src/$(am__dirstamp)
-luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) luatexdir/luapplib/src/$(DEPDIR)
-	@: > luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-pparray.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-ppdict.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-ppheap.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-ppload.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-ppstream.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-pptest1.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-pptest2.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-pptest3.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluajitpplib_a-ppxref.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/$(am__dirstamp):
-	@$(MKDIR_P) luatexdir/luapplib/src/util
-	@: > luatexdir/luapplib/src/util/$(am__dirstamp)
-luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) luatexdir/luapplib/src/util/$(DEPDIR)
-	@: > luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utillog.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-
-libluajitpplib.a: $(libluajitpplib_a_OBJECTS) $(libluajitpplib_a_DEPENDENCIES) $(EXTRA_libluajitpplib_a_DEPENDENCIES) 
-	$(AM_V_at)-rm -f libluajitpplib.a
-	$(AM_V_AR)$(libluajitpplib_a_AR) libluajitpplib.a $(libluajitpplib_a_OBJECTS) $(libluajitpplib_a_LIBADD)
-	$(AM_V_at)$(RANLIB) libluajitpplib.a
 luatexdir/luasocket/src/$(am__dirstamp):
 	@$(MKDIR_P) luatexdir/luasocket/src
 	@: > luatexdir/luasocket/src/$(am__dirstamp)
@@ -6232,83 +5955,6 @@
 	$(AM_V_at)-rm -f libluamisc.a
 	$(AM_V_AR)$(libluamisc_a_AR) libluamisc.a $(libluamisc_a_OBJECTS) $(libluamisc_a_LIBADD)
 	$(AM_V_at)$(RANLIB) libluamisc.a
-luatexdir/luapplib/src/libluapplib_a-pparray.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-ppcrypt.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-ppdict.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-ppheap.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-ppload.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-ppstream.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-pptest1.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-pptest2.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-pptest3.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/libluapplib_a-ppxref.$(OBJEXT):  \
-	luatexdir/luapplib/src/$(am__dirstamp) \
-	luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilflate.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilfpred.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utiliof.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utillog.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utillzw.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilmd5.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilmem.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilnumber.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-luatexdir/luapplib/src/util/libluapplib_a-utilsha.$(OBJEXT):  \
-	luatexdir/luapplib/src/util/$(am__dirstamp) \
-	luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-
-libluapplib.a: $(libluapplib_a_OBJECTS) $(libluapplib_a_DEPENDENCIES) $(EXTRA_libluapplib_a_DEPENDENCIES) 
-	$(AM_V_at)-rm -f libluapplib.a
-	$(AM_V_AR)$(libluapplib_a_AR) libluapplib.a $(libluapplib_a_OBJECTS) $(libluapplib_a_LIBADD)
-	$(AM_V_at)$(RANLIB) libluapplib.a
 luatexdir/luasocket/src/libluasocket_a-auxiliar.$(OBJEXT):  \
 	luatexdir/luasocket/src/$(am__dirstamp) \
 	luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp)
@@ -7448,8 +7094,6 @@
 	-rm -f luatexdir/luaharfbuzz/src/luaharfbuzz/*.$(OBJEXT)
 	-rm -f luatexdir/luamd5/*.$(OBJEXT)
 	-rm -f luatexdir/luapeg/*.$(OBJEXT)
-	-rm -f luatexdir/luapplib/src/*.$(OBJEXT)
-	-rm -f luatexdir/luapplib/src/util/*.$(OBJEXT)
 	-rm -f luatexdir/luasocket/src/*.$(OBJEXT)
 	-rm -f luatexdir/luazip/src/*.$(OBJEXT)
 	-rm -f luatexdir/luazlib/*.$(OBJEXT)
@@ -7823,54 +7467,6 @@
 @AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5lib.Po at am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapeg/$(DEPDIR)/libluajitmisc_a-lpeg.Po at am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapeg/$(DEPDIR)/libluamisc_a-lpeg.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Po at am__quote@ # am--include-marker
- at AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Po at am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po at am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-buffer.Po at am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote at luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-compat.Po at am__quote@ # am--include-marker
@@ -9414,342 +9010,6 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitmisc_a_CPPFLAGS) $(CPPFLAGS) $(libluajitmisc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/slnunicode/libluajitmisc_a-slnunico.obj `if test -f 'luatexdir/slnunicode/slnunico.c'; then $(CYGPATH_W) 'luatexdir/slnunicode/slnunico.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/slnunicode/slnunico.c'; fi`
 
-luatexdir/luapplib/src/libluajitpplib_a-pparray.o: luatexdir/luapplib/src/pparray.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-pparray.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-pparray.o `test -f 'luatexdir/luapplib/src/pparray.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pparray.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pparray.c' object='luatexdir/luapplib/src/libluajitpplib_a-pparray.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-pparray.o `test -f 'luatexdir/luapplib/src/pparray.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pparray.c
-
-luatexdir/luapplib/src/libluajitpplib_a-pparray.obj: luatexdir/luapplib/src/pparray.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-pparray.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-pparray.obj `if test -f 'luatexdir/luapplib/src/pparray.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pparray.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pparray.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pparray.c' object='luatexdir/luapplib/src/libluajitpplib_a-pparray.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-pparray.obj `if test -f 'luatexdir/luapplib/src/pparray.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pparray.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pparray.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.o: luatexdir/luapplib/src/ppcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.o `test -f 'luatexdir/luapplib/src/ppcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppcrypt.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.o `test -f 'luatexdir/luapplib/src/ppcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppcrypt.c
-
-luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.obj: luatexdir/luapplib/src/ppcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.obj `if test -f 'luatexdir/luapplib/src/ppcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppcrypt.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppcrypt.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppcrypt.obj `if test -f 'luatexdir/luapplib/src/ppcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppcrypt.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-ppdict.o: luatexdir/luapplib/src/ppdict.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppdict.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppdict.o `test -f 'luatexdir/luapplib/src/ppdict.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppdict.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppdict.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppdict.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppdict.o `test -f 'luatexdir/luapplib/src/ppdict.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppdict.c
-
-luatexdir/luapplib/src/libluajitpplib_a-ppdict.obj: luatexdir/luapplib/src/ppdict.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppdict.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppdict.obj `if test -f 'luatexdir/luapplib/src/ppdict.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppdict.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppdict.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppdict.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppdict.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppdict.obj `if test -f 'luatexdir/luapplib/src/ppdict.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppdict.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppdict.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-ppheap.o: luatexdir/luapplib/src/ppheap.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppheap.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppheap.o `test -f 'luatexdir/luapplib/src/ppheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppheap.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppheap.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppheap.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppheap.o `test -f 'luatexdir/luapplib/src/ppheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppheap.c
-
-luatexdir/luapplib/src/libluajitpplib_a-ppheap.obj: luatexdir/luapplib/src/ppheap.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppheap.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppheap.obj `if test -f 'luatexdir/luapplib/src/ppheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppheap.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppheap.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppheap.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppheap.obj `if test -f 'luatexdir/luapplib/src/ppheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppheap.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-ppload.o: luatexdir/luapplib/src/ppload.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppload.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppload.o `test -f 'luatexdir/luapplib/src/ppload.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppload.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppload.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppload.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppload.o `test -f 'luatexdir/luapplib/src/ppload.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppload.c
-
-luatexdir/luapplib/src/libluajitpplib_a-ppload.obj: luatexdir/luapplib/src/ppload.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppload.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppload.obj `if test -f 'luatexdir/luapplib/src/ppload.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppload.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppload.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppload.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppload.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppload.obj `if test -f 'luatexdir/luapplib/src/ppload.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppload.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppload.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-ppstream.o: luatexdir/luapplib/src/ppstream.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppstream.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppstream.o `test -f 'luatexdir/luapplib/src/ppstream.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppstream.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppstream.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppstream.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppstream.o `test -f 'luatexdir/luapplib/src/ppstream.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppstream.c
-
-luatexdir/luapplib/src/libluajitpplib_a-ppstream.obj: luatexdir/luapplib/src/ppstream.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppstream.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppstream.obj `if test -f 'luatexdir/luapplib/src/ppstream.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppstream.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppstream.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppstream.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppstream.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppstream.obj `if test -f 'luatexdir/luapplib/src/ppstream.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppstream.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppstream.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-pptest1.o: luatexdir/luapplib/src/pptest1.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-pptest1.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest1.o `test -f 'luatexdir/luapplib/src/pptest1.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest1.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest1.c' object='luatexdir/luapplib/src/libluajitpplib_a-pptest1.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest1.o `test -f 'luatexdir/luapplib/src/pptest1.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest1.c
-
-luatexdir/luapplib/src/libluajitpplib_a-pptest1.obj: luatexdir/luapplib/src/pptest1.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-pptest1.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest1.obj `if test -f 'luatexdir/luapplib/src/pptest1.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest1.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest1.c' object='luatexdir/luapplib/src/libluajitpplib_a-pptest1.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest1.obj `if test -f 'luatexdir/luapplib/src/pptest1.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest1.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-pptest2.o: luatexdir/luapplib/src/pptest2.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-pptest2.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest2.o `test -f 'luatexdir/luapplib/src/pptest2.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest2.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest2.c' object='luatexdir/luapplib/src/libluajitpplib_a-pptest2.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest2.o `test -f 'luatexdir/luapplib/src/pptest2.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest2.c
-
-luatexdir/luapplib/src/libluajitpplib_a-pptest2.obj: luatexdir/luapplib/src/pptest2.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-pptest2.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest2.obj `if test -f 'luatexdir/luapplib/src/pptest2.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest2.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest2.c' object='luatexdir/luapplib/src/libluajitpplib_a-pptest2.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest2.obj `if test -f 'luatexdir/luapplib/src/pptest2.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest2.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-pptest3.o: luatexdir/luapplib/src/pptest3.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-pptest3.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest3.o `test -f 'luatexdir/luapplib/src/pptest3.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest3.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest3.c' object='luatexdir/luapplib/src/libluajitpplib_a-pptest3.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest3.o `test -f 'luatexdir/luapplib/src/pptest3.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest3.c
-
-luatexdir/luapplib/src/libluajitpplib_a-pptest3.obj: luatexdir/luapplib/src/pptest3.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-pptest3.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest3.obj `if test -f 'luatexdir/luapplib/src/pptest3.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest3.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest3.c' object='luatexdir/luapplib/src/libluajitpplib_a-pptest3.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-pptest3.obj `if test -f 'luatexdir/luapplib/src/pptest3.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest3.c'; fi`
-
-luatexdir/luapplib/src/libluajitpplib_a-ppxref.o: luatexdir/luapplib/src/ppxref.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppxref.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppxref.o `test -f 'luatexdir/luapplib/src/ppxref.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppxref.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppxref.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppxref.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppxref.o `test -f 'luatexdir/luapplib/src/ppxref.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppxref.c
-
-luatexdir/luapplib/src/libluajitpplib_a-ppxref.obj: luatexdir/luapplib/src/ppxref.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluajitpplib_a-ppxref.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Tpo -c -o luatexdir/luapplib/src/libluajitpplib_a-ppxref.obj `if test -f 'luatexdir/luapplib/src/ppxref.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppxref.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppxref.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppxref.c' object='luatexdir/luapplib/src/libluajitpplib_a-ppxref.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluajitpplib_a-ppxref.obj `if test -f 'luatexdir/luapplib/src/ppxref.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppxref.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppxref.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.o: luatexdir/luapplib/src/util/utilbasexx.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.o `test -f 'luatexdir/luapplib/src/util/utilbasexx.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilbasexx.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilbasexx.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.o `test -f 'luatexdir/luapplib/src/util/utilbasexx.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilbasexx.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.obj: luatexdir/luapplib/src/util/utilbasexx.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.obj `if test -f 'luatexdir/luapplib/src/util/utilbasexx.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilbasexx.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilbasexx.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilbasexx.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilbasexx.obj `if test -f 'luatexdir/luapplib/src/util/utilbasexx.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilbasexx.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilbasexx.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.o: luatexdir/luapplib/src/util/utilcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.o `test -f 'luatexdir/luapplib/src/util/utilcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilcrypt.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.o `test -f 'luatexdir/luapplib/src/util/utilcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilcrypt.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.obj: luatexdir/luapplib/src/util/utilcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.obj `if test -f 'luatexdir/luapplib/src/util/utilcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilcrypt.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilcrypt.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilcrypt.obj `if test -f 'luatexdir/luapplib/src/util/utilcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilcrypt.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.o: luatexdir/luapplib/src/util/utilflate.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.o `test -f 'luatexdir/luapplib/src/util/utilflate.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilflate.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilflate.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.o `test -f 'luatexdir/luapplib/src/util/utilflate.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilflate.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.obj: luatexdir/luapplib/src/util/utilflate.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.obj `if test -f 'luatexdir/luapplib/src/util/utilflate.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilflate.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilflate.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilflate.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilflate.obj `if test -f 'luatexdir/luapplib/src/util/utilflate.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilflate.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilflate.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.o: luatexdir/luapplib/src/util/utilfpred.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.o `test -f 'luatexdir/luapplib/src/util/utilfpred.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilfpred.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilfpred.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.o `test -f 'luatexdir/luapplib/src/util/utilfpred.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilfpred.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.obj: luatexdir/luapplib/src/util/utilfpred.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.obj `if test -f 'luatexdir/luapplib/src/util/utilfpred.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilfpred.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilfpred.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilfpred.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilfpred.obj `if test -f 'luatexdir/luapplib/src/util/utilfpred.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilfpred.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilfpred.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.o: luatexdir/luapplib/src/util/utiliof.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.o `test -f 'luatexdir/luapplib/src/util/utiliof.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utiliof.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utiliof.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.o `test -f 'luatexdir/luapplib/src/util/utiliof.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utiliof.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.obj: luatexdir/luapplib/src/util/utiliof.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.obj `if test -f 'luatexdir/luapplib/src/util/utiliof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utiliof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utiliof.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utiliof.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utiliof.obj `if test -f 'luatexdir/luapplib/src/util/utiliof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utiliof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utiliof.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utillog.o: luatexdir/luapplib/src/util/utillog.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utillog.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utillog.o `test -f 'luatexdir/luapplib/src/util/utillog.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utillog.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utillog.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utillog.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utillog.o `test -f 'luatexdir/luapplib/src/util/utillog.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utillog.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utillog.obj: luatexdir/luapplib/src/util/utillog.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utillog.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utillog.obj `if test -f 'luatexdir/luapplib/src/util/utillog.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utillog.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utillog.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utillog.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utillog.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utillog.obj `if test -f 'luatexdir/luapplib/src/util/utillog.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utillog.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utillog.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.o: luatexdir/luapplib/src/util/utillzw.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.o `test -f 'luatexdir/luapplib/src/util/utillzw.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utillzw.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utillzw.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.o `test -f 'luatexdir/luapplib/src/util/utillzw.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utillzw.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.obj: luatexdir/luapplib/src/util/utillzw.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.obj `if test -f 'luatexdir/luapplib/src/util/utillzw.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utillzw.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utillzw.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utillzw.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utillzw.obj `if test -f 'luatexdir/luapplib/src/util/utillzw.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utillzw.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utillzw.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.o: luatexdir/luapplib/src/util/utilmd5.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.o `test -f 'luatexdir/luapplib/src/util/utilmd5.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmd5.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmd5.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.o `test -f 'luatexdir/luapplib/src/util/utilmd5.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmd5.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.obj: luatexdir/luapplib/src/util/utilmd5.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.obj `if test -f 'luatexdir/luapplib/src/util/utilmd5.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmd5.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmd5.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmd5.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmd5.obj `if test -f 'luatexdir/luapplib/src/util/utilmd5.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmd5.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmd5.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.o: luatexdir/luapplib/src/util/utilmem.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.o `test -f 'luatexdir/luapplib/src/util/utilmem.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmem.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmem.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.o `test -f 'luatexdir/luapplib/src/util/utilmem.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmem.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.obj: luatexdir/luapplib/src/util/utilmem.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.obj `if test -f 'luatexdir/luapplib/src/util/utilmem.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmem.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmem.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmem.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmem.obj `if test -f 'luatexdir/luapplib/src/util/utilmem.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmem.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmem.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.o: luatexdir/luapplib/src/util/utilmemheap.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.o `test -f 'luatexdir/luapplib/src/util/utilmemheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmemheap.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmemheap.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.o `test -f 'luatexdir/luapplib/src/util/utilmemheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmemheap.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.obj: luatexdir/luapplib/src/util/utilmemheap.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.obj `if test -f 'luatexdir/luapplib/src/util/utilmemheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmemheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmemheap.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmemheap.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheap.obj `if test -f 'luatexdir/luapplib/src/util/utilmemheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmemheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmemheap.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.o: luatexdir/luapplib/src/util/utilmemheapiof.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.o `test -f 'luatexdir/luapplib/src/util/utilmemheapiof.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmemheapiof.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmemheapiof.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.o `test -f 'luatexdir/luapplib/src/util/utilmemheapiof.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmemheapiof.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.obj: luatexdir/luapplib/src/util/utilmemheapiof.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.obj `if test -f 'luatexdir/luapplib/src/util/utilmemheapiof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmemheapiof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmemheapiof.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmemheapiof.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmemheapiof.obj `if test -f 'luatexdir/luapplib/src/util/utilmemheapiof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmemheapiof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmemheapiof.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.o: luatexdir/luapplib/src/util/utilmeminfo.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.o `test -f 'luatexdir/luapplib/src/util/utilmeminfo.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmeminfo.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmeminfo.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.o `test -f 'luatexdir/luapplib/src/util/utilmeminfo.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmeminfo.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.obj: luatexdir/luapplib/src/util/utilmeminfo.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.obj `if test -f 'luatexdir/luapplib/src/util/utilmeminfo.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmeminfo.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmeminfo.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmeminfo.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilmeminfo.obj `if test -f 'luatexdir/luapplib/src/util/utilmeminfo.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmeminfo.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmeminfo.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.o: luatexdir/luapplib/src/util/utilnumber.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.o `test -f 'luatexdir/luapplib/src/util/utilnumber.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilnumber.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilnumber.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.o `test -f 'luatexdir/luapplib/src/util/utilnumber.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilnumber.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.obj: luatexdir/luapplib/src/util/utilnumber.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.obj `if test -f 'luatexdir/luapplib/src/util/utilnumber.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilnumber.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilnumber.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilnumber.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilnumber.obj `if test -f 'luatexdir/luapplib/src/util/utilnumber.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilnumber.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilnumber.c'; fi`
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.o: luatexdir/luapplib/src/util/utilsha.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.o `test -f 'luatexdir/luapplib/src/util/utilsha.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilsha.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilsha.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.o `test -f 'luatexdir/luapplib/src/util/utilsha.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilsha.c
-
-luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.obj: luatexdir/luapplib/src/util/utilsha.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Tpo -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.obj `if test -f 'luatexdir/luapplib/src/util/utilsha.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilsha.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilsha.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilsha.c' object='luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitpplib_a_CPPFLAGS) $(CPPFLAGS) $(libluajitpplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluajitpplib_a-utilsha.obj `if test -f 'luatexdir/luapplib/src/util/utilsha.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilsha.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilsha.c'; fi`
-
 luatexdir/luasocket/src/libluajitsocket_a-auxiliar.o: luatexdir/luasocket/src/auxiliar.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajitsocket_a_CPPFLAGS) $(CPPFLAGS) $(libluajitsocket_a_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/libluajitsocket_a-auxiliar.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Tpo -c -o luatexdir/luasocket/src/libluajitsocket_a-auxiliar.o `test -f 'luatexdir/luasocket/src/auxiliar.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/auxiliar.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Tpo luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po
@@ -11738,342 +10998,6 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluamisc_a_CPPFLAGS) $(CPPFLAGS) $(libluamisc_a_CFLAGS) $(CFLAGS) -c -o luatexdir/slnunicode/libluamisc_a-slnunico.obj `if test -f 'luatexdir/slnunicode/slnunico.c'; then $(CYGPATH_W) 'luatexdir/slnunicode/slnunico.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/slnunicode/slnunico.c'; fi`
 
-luatexdir/luapplib/src/libluapplib_a-pparray.o: luatexdir/luapplib/src/pparray.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-pparray.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-pparray.o `test -f 'luatexdir/luapplib/src/pparray.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pparray.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pparray.c' object='luatexdir/luapplib/src/libluapplib_a-pparray.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-pparray.o `test -f 'luatexdir/luapplib/src/pparray.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pparray.c
-
-luatexdir/luapplib/src/libluapplib_a-pparray.obj: luatexdir/luapplib/src/pparray.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-pparray.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-pparray.obj `if test -f 'luatexdir/luapplib/src/pparray.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pparray.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pparray.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pparray.c' object='luatexdir/luapplib/src/libluapplib_a-pparray.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-pparray.obj `if test -f 'luatexdir/luapplib/src/pparray.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pparray.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pparray.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-ppcrypt.o: luatexdir/luapplib/src/ppcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppcrypt.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppcrypt.o `test -f 'luatexdir/luapplib/src/ppcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppcrypt.c' object='luatexdir/luapplib/src/libluapplib_a-ppcrypt.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppcrypt.o `test -f 'luatexdir/luapplib/src/ppcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppcrypt.c
-
-luatexdir/luapplib/src/libluapplib_a-ppcrypt.obj: luatexdir/luapplib/src/ppcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppcrypt.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppcrypt.obj `if test -f 'luatexdir/luapplib/src/ppcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppcrypt.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppcrypt.c' object='luatexdir/luapplib/src/libluapplib_a-ppcrypt.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppcrypt.obj `if test -f 'luatexdir/luapplib/src/ppcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppcrypt.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-ppdict.o: luatexdir/luapplib/src/ppdict.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppdict.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppdict.o `test -f 'luatexdir/luapplib/src/ppdict.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppdict.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppdict.c' object='luatexdir/luapplib/src/libluapplib_a-ppdict.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppdict.o `test -f 'luatexdir/luapplib/src/ppdict.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppdict.c
-
-luatexdir/luapplib/src/libluapplib_a-ppdict.obj: luatexdir/luapplib/src/ppdict.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppdict.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppdict.obj `if test -f 'luatexdir/luapplib/src/ppdict.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppdict.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppdict.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppdict.c' object='luatexdir/luapplib/src/libluapplib_a-ppdict.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppdict.obj `if test -f 'luatexdir/luapplib/src/ppdict.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppdict.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppdict.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-ppheap.o: luatexdir/luapplib/src/ppheap.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppheap.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppheap.o `test -f 'luatexdir/luapplib/src/ppheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppheap.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppheap.c' object='luatexdir/luapplib/src/libluapplib_a-ppheap.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppheap.o `test -f 'luatexdir/luapplib/src/ppheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppheap.c
-
-luatexdir/luapplib/src/libluapplib_a-ppheap.obj: luatexdir/luapplib/src/ppheap.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppheap.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppheap.obj `if test -f 'luatexdir/luapplib/src/ppheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppheap.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppheap.c' object='luatexdir/luapplib/src/libluapplib_a-ppheap.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppheap.obj `if test -f 'luatexdir/luapplib/src/ppheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppheap.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-ppload.o: luatexdir/luapplib/src/ppload.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppload.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppload.o `test -f 'luatexdir/luapplib/src/ppload.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppload.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppload.c' object='luatexdir/luapplib/src/libluapplib_a-ppload.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppload.o `test -f 'luatexdir/luapplib/src/ppload.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppload.c
-
-luatexdir/luapplib/src/libluapplib_a-ppload.obj: luatexdir/luapplib/src/ppload.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppload.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppload.obj `if test -f 'luatexdir/luapplib/src/ppload.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppload.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppload.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppload.c' object='luatexdir/luapplib/src/libluapplib_a-ppload.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppload.obj `if test -f 'luatexdir/luapplib/src/ppload.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppload.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppload.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-ppstream.o: luatexdir/luapplib/src/ppstream.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppstream.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppstream.o `test -f 'luatexdir/luapplib/src/ppstream.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppstream.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppstream.c' object='luatexdir/luapplib/src/libluapplib_a-ppstream.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppstream.o `test -f 'luatexdir/luapplib/src/ppstream.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppstream.c
-
-luatexdir/luapplib/src/libluapplib_a-ppstream.obj: luatexdir/luapplib/src/ppstream.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppstream.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppstream.obj `if test -f 'luatexdir/luapplib/src/ppstream.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppstream.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppstream.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppstream.c' object='luatexdir/luapplib/src/libluapplib_a-ppstream.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppstream.obj `if test -f 'luatexdir/luapplib/src/ppstream.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppstream.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppstream.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-pptest1.o: luatexdir/luapplib/src/pptest1.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-pptest1.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-pptest1.o `test -f 'luatexdir/luapplib/src/pptest1.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest1.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest1.c' object='luatexdir/luapplib/src/libluapplib_a-pptest1.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-pptest1.o `test -f 'luatexdir/luapplib/src/pptest1.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest1.c
-
-luatexdir/luapplib/src/libluapplib_a-pptest1.obj: luatexdir/luapplib/src/pptest1.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-pptest1.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-pptest1.obj `if test -f 'luatexdir/luapplib/src/pptest1.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest1.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest1.c' object='luatexdir/luapplib/src/libluapplib_a-pptest1.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-pptest1.obj `if test -f 'luatexdir/luapplib/src/pptest1.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest1.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest1.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-pptest2.o: luatexdir/luapplib/src/pptest2.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-pptest2.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-pptest2.o `test -f 'luatexdir/luapplib/src/pptest2.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest2.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest2.c' object='luatexdir/luapplib/src/libluapplib_a-pptest2.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-pptest2.o `test -f 'luatexdir/luapplib/src/pptest2.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest2.c
-
-luatexdir/luapplib/src/libluapplib_a-pptest2.obj: luatexdir/luapplib/src/pptest2.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-pptest2.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-pptest2.obj `if test -f 'luatexdir/luapplib/src/pptest2.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest2.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest2.c' object='luatexdir/luapplib/src/libluapplib_a-pptest2.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-pptest2.obj `if test -f 'luatexdir/luapplib/src/pptest2.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest2.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest2.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-pptest3.o: luatexdir/luapplib/src/pptest3.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-pptest3.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-pptest3.o `test -f 'luatexdir/luapplib/src/pptest3.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest3.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest3.c' object='luatexdir/luapplib/src/libluapplib_a-pptest3.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-pptest3.o `test -f 'luatexdir/luapplib/src/pptest3.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/pptest3.c
-
-luatexdir/luapplib/src/libluapplib_a-pptest3.obj: luatexdir/luapplib/src/pptest3.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-pptest3.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-pptest3.obj `if test -f 'luatexdir/luapplib/src/pptest3.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest3.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/pptest3.c' object='luatexdir/luapplib/src/libluapplib_a-pptest3.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-pptest3.obj `if test -f 'luatexdir/luapplib/src/pptest3.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/pptest3.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/pptest3.c'; fi`
-
-luatexdir/luapplib/src/libluapplib_a-ppxref.o: luatexdir/luapplib/src/ppxref.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppxref.o -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppxref.o `test -f 'luatexdir/luapplib/src/ppxref.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppxref.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppxref.c' object='luatexdir/luapplib/src/libluapplib_a-ppxref.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppxref.o `test -f 'luatexdir/luapplib/src/ppxref.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/ppxref.c
-
-luatexdir/luapplib/src/libluapplib_a-ppxref.obj: luatexdir/luapplib/src/ppxref.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/libluapplib_a-ppxref.obj -MD -MP -MF luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Tpo -c -o luatexdir/luapplib/src/libluapplib_a-ppxref.obj `if test -f 'luatexdir/luapplib/src/ppxref.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppxref.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppxref.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Tpo luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/ppxref.c' object='luatexdir/luapplib/src/libluapplib_a-ppxref.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/libluapplib_a-ppxref.obj `if test -f 'luatexdir/luapplib/src/ppxref.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/ppxref.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/ppxref.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.o: luatexdir/luapplib/src/util/utilbasexx.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.o `test -f 'luatexdir/luapplib/src/util/utilbasexx.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilbasexx.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilbasexx.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.o `test -f 'luatexdir/luapplib/src/util/utilbasexx.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilbasexx.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.obj: luatexdir/luapplib/src/util/utilbasexx.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.obj `if test -f 'luatexdir/luapplib/src/util/utilbasexx.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilbasexx.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilbasexx.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilbasexx.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilbasexx.obj `if test -f 'luatexdir/luapplib/src/util/utilbasexx.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilbasexx.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilbasexx.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.o: luatexdir/luapplib/src/util/utilcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.o `test -f 'luatexdir/luapplib/src/util/utilcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilcrypt.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.o `test -f 'luatexdir/luapplib/src/util/utilcrypt.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilcrypt.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.obj: luatexdir/luapplib/src/util/utilcrypt.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.obj `if test -f 'luatexdir/luapplib/src/util/utilcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilcrypt.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilcrypt.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilcrypt.obj `if test -f 'luatexdir/luapplib/src/util/utilcrypt.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilcrypt.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilcrypt.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilflate.o: luatexdir/luapplib/src/util/utilflate.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilflate.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilflate.o `test -f 'luatexdir/luapplib/src/util/utilflate.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilflate.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilflate.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilflate.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilflate.o `test -f 'luatexdir/luapplib/src/util/utilflate.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilflate.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilflate.obj: luatexdir/luapplib/src/util/utilflate.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilflate.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilflate.obj `if test -f 'luatexdir/luapplib/src/util/utilflate.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilflate.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilflate.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilflate.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilflate.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilflate.obj `if test -f 'luatexdir/luapplib/src/util/utilflate.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilflate.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilflate.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilfpred.o: luatexdir/luapplib/src/util/utilfpred.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilfpred.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilfpred.o `test -f 'luatexdir/luapplib/src/util/utilfpred.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilfpred.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilfpred.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilfpred.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilfpred.o `test -f 'luatexdir/luapplib/src/util/utilfpred.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilfpred.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilfpred.obj: luatexdir/luapplib/src/util/utilfpred.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilfpred.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilfpred.obj `if test -f 'luatexdir/luapplib/src/util/utilfpred.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilfpred.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilfpred.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilfpred.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilfpred.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilfpred.obj `if test -f 'luatexdir/luapplib/src/util/utilfpred.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilfpred.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilfpred.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utiliof.o: luatexdir/luapplib/src/util/utiliof.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utiliof.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utiliof.o `test -f 'luatexdir/luapplib/src/util/utiliof.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utiliof.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utiliof.c' object='luatexdir/luapplib/src/util/libluapplib_a-utiliof.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utiliof.o `test -f 'luatexdir/luapplib/src/util/utiliof.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utiliof.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utiliof.obj: luatexdir/luapplib/src/util/utiliof.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utiliof.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utiliof.obj `if test -f 'luatexdir/luapplib/src/util/utiliof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utiliof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utiliof.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utiliof.c' object='luatexdir/luapplib/src/util/libluapplib_a-utiliof.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utiliof.obj `if test -f 'luatexdir/luapplib/src/util/utiliof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utiliof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utiliof.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utillog.o: luatexdir/luapplib/src/util/utillog.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utillog.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utillog.o `test -f 'luatexdir/luapplib/src/util/utillog.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utillog.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utillog.c' object='luatexdir/luapplib/src/util/libluapplib_a-utillog.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utillog.o `test -f 'luatexdir/luapplib/src/util/utillog.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utillog.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utillog.obj: luatexdir/luapplib/src/util/utillog.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utillog.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utillog.obj `if test -f 'luatexdir/luapplib/src/util/utillog.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utillog.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utillog.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utillog.c' object='luatexdir/luapplib/src/util/libluapplib_a-utillog.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utillog.obj `if test -f 'luatexdir/luapplib/src/util/utillog.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utillog.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utillog.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utillzw.o: luatexdir/luapplib/src/util/utillzw.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utillzw.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utillzw.o `test -f 'luatexdir/luapplib/src/util/utillzw.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utillzw.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utillzw.c' object='luatexdir/luapplib/src/util/libluapplib_a-utillzw.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utillzw.o `test -f 'luatexdir/luapplib/src/util/utillzw.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utillzw.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utillzw.obj: luatexdir/luapplib/src/util/utillzw.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utillzw.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utillzw.obj `if test -f 'luatexdir/luapplib/src/util/utillzw.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utillzw.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utillzw.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utillzw.c' object='luatexdir/luapplib/src/util/libluapplib_a-utillzw.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utillzw.obj `if test -f 'luatexdir/luapplib/src/util/utillzw.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utillzw.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utillzw.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmd5.o: luatexdir/luapplib/src/util/utilmd5.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmd5.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmd5.o `test -f 'luatexdir/luapplib/src/util/utilmd5.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmd5.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmd5.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmd5.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmd5.o `test -f 'luatexdir/luapplib/src/util/utilmd5.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmd5.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmd5.obj: luatexdir/luapplib/src/util/utilmd5.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmd5.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmd5.obj `if test -f 'luatexdir/luapplib/src/util/utilmd5.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmd5.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmd5.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmd5.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmd5.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmd5.obj `if test -f 'luatexdir/luapplib/src/util/utilmd5.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmd5.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmd5.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmem.o: luatexdir/luapplib/src/util/utilmem.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmem.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmem.o `test -f 'luatexdir/luapplib/src/util/utilmem.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmem.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmem.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmem.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmem.o `test -f 'luatexdir/luapplib/src/util/utilmem.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmem.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmem.obj: luatexdir/luapplib/src/util/utilmem.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmem.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmem.obj `if test -f 'luatexdir/luapplib/src/util/utilmem.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmem.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmem.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmem.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmem.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmem.obj `if test -f 'luatexdir/luapplib/src/util/utilmem.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmem.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmem.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.o: luatexdir/luapplib/src/util/utilmemheap.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.o `test -f 'luatexdir/luapplib/src/util/utilmemheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmemheap.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmemheap.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.o `test -f 'luatexdir/luapplib/src/util/utilmemheap.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmemheap.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.obj: luatexdir/luapplib/src/util/utilmemheap.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.obj `if test -f 'luatexdir/luapplib/src/util/utilmemheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmemheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmemheap.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmemheap.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmemheap.obj `if test -f 'luatexdir/luapplib/src/util/utilmemheap.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmemheap.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmemheap.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.o: luatexdir/luapplib/src/util/utilmemheapiof.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.o `test -f 'luatexdir/luapplib/src/util/utilmemheapiof.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmemheapiof.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmemheapiof.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.o `test -f 'luatexdir/luapplib/src/util/utilmemheapiof.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmemheapiof.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.obj: luatexdir/luapplib/src/util/utilmemheapiof.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.obj `if test -f 'luatexdir/luapplib/src/util/utilmemheapiof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmemheapiof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmemheapiof.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmemheapiof.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmemheapiof.obj `if test -f 'luatexdir/luapplib/src/util/utilmemheapiof.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmemheapiof.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmemheapiof.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.o: luatexdir/luapplib/src/util/utilmeminfo.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.o `test -f 'luatexdir/luapplib/src/util/utilmeminfo.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmeminfo.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmeminfo.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.o `test -f 'luatexdir/luapplib/src/util/utilmeminfo.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilmeminfo.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.obj: luatexdir/luapplib/src/util/utilmeminfo.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.obj `if test -f 'luatexdir/luapplib/src/util/utilmeminfo.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmeminfo.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmeminfo.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilmeminfo.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilmeminfo.obj `if test -f 'luatexdir/luapplib/src/util/utilmeminfo.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilmeminfo.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilmeminfo.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilnumber.o: luatexdir/luapplib/src/util/utilnumber.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilnumber.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilnumber.o `test -f 'luatexdir/luapplib/src/util/utilnumber.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilnumber.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilnumber.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilnumber.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilnumber.o `test -f 'luatexdir/luapplib/src/util/utilnumber.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilnumber.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilnumber.obj: luatexdir/luapplib/src/util/utilnumber.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilnumber.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilnumber.obj `if test -f 'luatexdir/luapplib/src/util/utilnumber.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilnumber.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilnumber.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilnumber.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilnumber.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilnumber.obj `if test -f 'luatexdir/luapplib/src/util/utilnumber.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilnumber.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilnumber.c'; fi`
-
-luatexdir/luapplib/src/util/libluapplib_a-utilsha.o: luatexdir/luapplib/src/util/utilsha.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilsha.o -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilsha.o `test -f 'luatexdir/luapplib/src/util/utilsha.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilsha.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilsha.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilsha.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilsha.o `test -f 'luatexdir/luapplib/src/util/utilsha.c' || echo '$(srcdir)/'`luatexdir/luapplib/src/util/utilsha.c
-
-luatexdir/luapplib/src/util/libluapplib_a-utilsha.obj: luatexdir/luapplib/src/util/utilsha.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -MT luatexdir/luapplib/src/util/libluapplib_a-utilsha.obj -MD -MP -MF luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Tpo -c -o luatexdir/luapplib/src/util/libluapplib_a-utilsha.obj `if test -f 'luatexdir/luapplib/src/util/utilsha.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilsha.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilsha.c'; fi`
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Tpo luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='luatexdir/luapplib/src/util/utilsha.c' object='luatexdir/luapplib/src/util/libluapplib_a-utilsha.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluapplib_a_CPPFLAGS) $(CPPFLAGS) $(libluapplib_a_CFLAGS) $(CFLAGS) -c -o luatexdir/luapplib/src/util/libluapplib_a-utilsha.obj `if test -f 'luatexdir/luapplib/src/util/utilsha.c'; then $(CYGPATH_W) 'luatexdir/luapplib/src/util/utilsha.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/luapplib/src/util/utilsha.c'; fi`
-
 luatexdir/luasocket/src/libluasocket_a-auxiliar.o: luatexdir/luasocket/src/auxiliar.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluasocket_a_CPPFLAGS) $(CPPFLAGS) $(libluasocket_a_CFLAGS) $(CFLAGS) -MT luatexdir/luasocket/src/libluasocket_a-auxiliar.o -MD -MP -MF luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-auxiliar.Tpo -c -o luatexdir/luasocket/src/libluasocket_a-auxiliar.o `test -f 'luatexdir/luasocket/src/auxiliar.c' || echo '$(srcdir)/'`luatexdir/luasocket/src/auxiliar.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-auxiliar.Tpo luatexdir/luasocket/src/$(DEPDIR)/libluasocket_a-auxiliar.Po
@@ -17318,6 +16242,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -17360,6 +16288,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -17506,10 +16436,6 @@
 	-rm -f luatexdir/luamd5/$(am__dirstamp)
 	-rm -f luatexdir/luapeg/$(DEPDIR)/$(am__dirstamp)
 	-rm -f luatexdir/luapeg/$(am__dirstamp)
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/$(am__dirstamp)
-	-rm -f luatexdir/luapplib/src/$(am__dirstamp)
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/$(am__dirstamp)
-	-rm -f luatexdir/luapplib/src/util/$(am__dirstamp)
 	-rm -f luatexdir/luasocket/src/$(DEPDIR)/$(am__dirstamp)
 	-rm -f luatexdir/luasocket/src/$(am__dirstamp)
 	-rm -f luatexdir/luazip/src/$(DEPDIR)/$(am__dirstamp)
@@ -17909,54 +16835,6 @@
 	-rm -f luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5lib.Po
 	-rm -f luatexdir/luapeg/$(DEPDIR)/libluajitmisc_a-lpeg.Po
 	-rm -f luatexdir/luapeg/$(DEPDIR)/libluamisc_a-lpeg.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Po
 	-rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po
 	-rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-buffer.Po
 	-rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-compat.Po
@@ -18609,54 +17487,6 @@
 	-rm -f luatexdir/luamd5/$(DEPDIR)/libluamisc_a-md5lib.Po
 	-rm -f luatexdir/luapeg/$(DEPDIR)/libluajitmisc_a-lpeg.Po
 	-rm -f luatexdir/luapeg/$(DEPDIR)/libluamisc_a-lpeg.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pparray.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppcrypt.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppdict.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppheap.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppload.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppstream.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest1.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest2.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-pptest3.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluajitpplib_a-ppxref.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pparray.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppcrypt.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppdict.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppheap.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppload.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppstream.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest1.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest2.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-pptest3.Po
-	-rm -f luatexdir/luapplib/src/$(DEPDIR)/libluapplib_a-ppxref.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilbasexx.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilcrypt.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilflate.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilfpred.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utiliof.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillog.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utillzw.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmd5.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmem.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheap.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmemheapiof.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilmeminfo.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilnumber.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluajitpplib_a-utilsha.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilbasexx.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilcrypt.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilflate.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilfpred.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utiliof.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillog.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utillzw.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmd5.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmem.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheap.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmemheapiof.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilmeminfo.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilnumber.Po
-	-rm -f luatexdir/luapplib/src/util/$(DEPDIR)/libluapplib_a-utilsha.Po
 	-rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-auxiliar.Po
 	-rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-buffer.Po
 	-rm -f luatexdir/luasocket/src/$(DEPDIR)/libluajitsocket_a-compat.Po
@@ -18941,11 +17771,11 @@
 	clean-libLIBRARIES clean-libLTLIBRARIES clean-libtool \
 	clean-local clean-noinstPROGRAMS cscope cscopelist-am ctags \
 	ctags-am dist dist-all dist-bzip2 dist-gzip dist-hook \
-	dist-lzip dist-shar dist-tarZ dist-xz dist-zip distcheck \
-	distclean distclean-compile distclean-generic distclean-hdr \
-	distclean-libtool distclean-tags distcleancheck distdir \
-	distuninstallcheck dvi dvi-am html html-am info info-am \
-	install install-am install-binPROGRAMS install-data \
+	dist-lzip dist-shar dist-tarZ dist-xz dist-zip dist-zstd \
+	distcheck distclean distclean-compile distclean-generic \
+	distclean-hdr distclean-libtool distclean-tags distcleancheck \
+	distdir distuninstallcheck dvi dvi-am html html-am info \
+	info-am install install-am install-binPROGRAMS install-data \
 	install-data-am install-dvi install-dvi-am install-exec \
 	install-exec-am install-exec-hook install-html install-html-am \
 	install-info install-info-am install-libLIBRARIES \
@@ -18995,7 +17825,7 @@
 @GMP_RULE@
 @MPFR_RULE@
 @XPDF_RULE@
- at POPPLER_RULE@
+ at PPLIB_RULE@
 @ZZIPLIB_RULE@
 @TECKIT_RULE@
 @ICU_RULE@
@@ -19847,10 +18677,6 @@
 #liblua53ffi_sources = $(libluaffi_sources)
 #EXTRA_DIST 
 
-$(libluapplib_a_OBJECTS): $(LUA_DEPEND)
-#$(liblua53pplib_a_OBJECTS): $(LUA_DEPEND)
-$(libluajitpplib_a_OBJECTS): $(LUAJIT_DEPEND)
-
 $(luatex_OBJECTS): libluatex.a
 $(luajittex_OBJECTS): libluajittex.a
 
@@ -20038,7 +18864,7 @@
 synctexdir/synctex.log: synctex$(EXEEXT)
 libmd5/md5.log: md5main$(EXEEXT)
 
-# $Id: Makefile.in 54133 2020-03-06 21:48:55Z karl $
+# $Id: Makefile.in 55138 2020-05-14 17:47:47Z karl $
 # am/bin_links.am: Makefile fragment for bindir links.
 .PHONY: install-bin-links uninstall-bin-links
 

Modified: branches/stable/source/src/texk/web2c/ac/web2c.ac
===================================================================
--- branches/stable/source/src/texk/web2c/ac/web2c.ac	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/ac/web2c.ac	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# $Id: web2c.ac 53078 2019-12-10 18:39:13Z karl $
+# $Id: web2c.ac 55138 2020-05-14 17:47:47Z karl $
 # texk/web2c/ac/web2c.ac: configure.ac fragment for the TeX Live subdirectory texk/web2c/
 dnl
-dnl Copyright 2016-2019 Karl Berry <tex-live at tug.org>
+dnl Copyright 2015-2019 Karl Berry <tex-live at tug.org>
 dnl Copyright 2009-2015 Peter Breitenlohner <tex-live at tug.org>
 dnl You may freely use, modify and/or distribute this file.
 dnl
@@ -37,14 +37,14 @@
 [[euptex],    [yes], [yes], [e-upTeX],    [ptexenc zlib]],
 [[aleph],     [yes], [],    [Aleph],      []],
 [[pdftex],    [yes], [yes], [pdfTeX],     [xpdf libpng zlib]],
-[[luatex],    [yes], [],    [LuaTeX],     [libpng zziplib lua53]],
-[[luajittex], [yes], [],    [LuaJITTeX],  [libpng zziplib luajit]],
-[[luahbtex],    [yes], [],    [LuaHBTeX],     [libpng zziplib lua53 harfbuzz]],
-[[luajithbtex], [yes], [],    [LuaHBJITTeX],  [libpng zziplib luajit harfbuzz]],
+[[luatex],    [yes], [],    [LuaTeX],     [pplib libpng zziplib lua53]],
+[[luajittex], [yes], [],    [LuaJITTeX],  [pplib libpng zziplib luajit]],
+[[luahbtex],    [yes], [],    [LuaHBTeX],     [pplib libpng zziplib lua53 harfbuzz]],
+[[luajithbtex], [yes], [],    [LuaHBJITTeX],  [pplib libpng zziplib luajit harfbuzz]],
 [[mp],        [yes], [],    [MetaPost],   [mpfr cairo libpng]],
 [[pmp],       [yes], [],    [pMetaPost],  [mpfr cairo libpng ptexenc]],
 [[upmp],      [yes], [],    [upMetaPost], [mpfr cairo libpng ptexenc]],
-[[xetex],     [yes], [yes], [XeTeX],      [poppler libpng freetype2 teckit harfbuzz]],
+[[xetex],     [yes], [yes], [XeTeX],      [pplib libpng freetype2 teckit harfbuzz]],
 ])[]dnl
 m4_foreach([Kpse_Prog], [kpse_tex_progs],
            [m4_ifset([Kpse_Prog],

Modified: branches/stable/source/src/texk/web2c/aclocal.m4
===================================================================
--- branches/stable/source/src/texk/web2c/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_COND_IF                                            -*- Autoconf -*-
 
-# Copyright (C) 2008-2018 Free Software Foundation, Inc.
+# Copyright (C) 2008-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -147,7 +147,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -178,7 +178,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -369,7 +369,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -408,7 +408,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -435,7 +437,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -632,7 +634,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -653,7 +655,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -675,7 +677,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -710,7 +712,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -753,7 +755,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -792,7 +794,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -821,7 +823,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -868,7 +870,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -887,7 +889,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -968,7 +970,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1028,7 +1030,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1056,7 +1058,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1075,7 +1077,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1230,7 +1232,7 @@
 m4_include([../../m4/kpse-macos-framework.m4])
 m4_include([../../m4/kpse-mpfr-flags.m4])
 m4_include([../../m4/kpse-pixman-flags.m4])
-m4_include([../../m4/kpse-poppler-flags.m4])
+m4_include([../../m4/kpse-pplib-flags.m4])
 m4_include([../../m4/kpse-ptexenc-flags.m4])
 m4_include([../../m4/kpse-socket-libs.m4])
 m4_include([../../m4/kpse-teckit-flags.m4])

Modified: branches/stable/source/src/texk/web2c/configure
===================================================================
--- branches/stable/source/src/texk/web2c/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Web2C 2020.
+# Generated by GNU Autoconf 2.69 for Web2C 2021/dev.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='Web2C'
 PACKAGE_TARNAME='web2c'
-PACKAGE_VERSION='2020'
-PACKAGE_STRING='Web2C 2020'
+PACKAGE_VERSION='2021/dev'
+PACKAGE_STRING='Web2C 2021/dev'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -676,10 +676,6 @@
 XPDF_DEPEND
 XPDF_LIBS
 XPDF_INCLUDES
-POPPLER_RULE
-POPPLER_DEPEND
-POPPLER_LIBS
-POPPLER_INCLUDES
 MPFR_RULE
 MPFR_DEPEND
 MPFR_LIBS
@@ -721,6 +717,10 @@
 ZLIB_DEPEND
 ZLIB_LIBS
 ZLIB_INCLUDES
+PPLIB_RULE
+PPLIB_DEPEND
+PPLIB_LIBS
+PPLIB_INCLUDES
 PTEXENC_RULE
 PTEXENC_DEPEND
 PTEXENC_LIBS
@@ -1053,8 +1053,6 @@
 with_system_mpfr
 with_mpfr_includes
 with_mpfr_libdir
-with_system_poppler
-with_system_xpdf
 with_system_zziplib
 with_system_teckit
 with_system_graphite2
@@ -1620,7 +1618,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Web2C 2020 to adapt to many kinds of systems.
+\`configure' configures Web2C 2021/dev to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1694,7 +1692,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Web2C 2020:";;
+     short | recursive ) echo "Configuration of Web2C 2021/dev:";;
    esac
   cat <<\_ACEOF
 
@@ -1812,10 +1810,6 @@
   --with-mpfr-includes=DIR
                           mpfr headers installed in DIR
   --with-mpfr-libdir=DIR  mpfr library installed in DIR
-  --with-system-poppler   use installed poppler headers and library (requires
-                          pkg-config)
-  --with-system-xpdf      use installed poppler headers and library instead of
-                          xpdf library from TL (requires pkg-config)
   --with-system-zziplib   use installed zziplib headers and library (requires
                           pkg-config)
   --with-system-teckit    use installed teckit headers and library (requires
@@ -1917,7 +1911,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Web2C configure 2020
+Web2C configure 2021/dev
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -3006,7 +3000,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Web2C $as_me 2020, which was
+It was created by Web2C $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3387,7 +3381,7 @@
 
 
 
-WEB2CVERSION=2020
+WEB2CVERSION=2021/dev
 
 
 am__api_version='1.16'
@@ -8696,7 +8690,7 @@
 
 # Define the identity of the package.
  PACKAGE='web2c'
- VERSION='2020'
+ VERSION='2021/dev'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -18600,7 +18594,7 @@
 
 # Include additional code for web2c.
 
-# $Id: web2c.ac 53078 2019-12-10 18:39:13Z karl $
+# $Id: web2c.ac 55138 2020-05-14 17:47:47Z karl $
 # texk/web2c/ac/web2c.ac: configure.ac fragment for the TeX Live subdirectory texk/web2c/
 ## configure options for TeX and MF
 
@@ -18783,6 +18777,7 @@
 esac
 
 test "x$enable_web2c:$enable_luatex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -18799,6 +18794,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajittex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -18815,6 +18811,7 @@
 esac
 
 test "x$enable_web2c:$enable_luahbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -18832,6 +18829,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajithbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -18904,7 +18902,7 @@
 fi
 
 test "x$enable_web2c:$enable_xetex" = xyes:yes && {
-  need_poppler=yes
+  need_pplib=yes
   need_libpng=yes
   need_freetype2=yes
   need_teckit=yes
@@ -19032,11 +19030,10 @@
 
 
 
-# XeTeX now requires C++11 because poppler does :(.
-# XeTeX also requires C+11 because of ICU.
+# XeTeX now requires C++11 because ICU does :(.
 if test "x$enable_xetex" = xyes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++11, since XeTeX enabled" >&5
-$as_echo "$as_me: checking for C++11, since XeTeX enabled" >&6;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++11, since XeTeX is enabled" >&5
+$as_echo "$as_me: checking for C++11, since XeTeX is enabled" >&6;}
     ax_cxx_compile_alternatives="11 0x"    ax_cxx_compile_cxx11_required=true
   ac_ext=cpp
 ac_cpp='$CXXCPP $CPPFLAGS'
@@ -23688,7 +23685,7 @@
 Report bugs to <bug-libtool at gnu.org>."
 
 lt_cl_version="\
-Web2C config.lt 2020
+Web2C config.lt 2021/dev
 configured by $0, generated by GNU Autoconf 2.69.
 
 Copyright (C) 2011 Free Software Foundation, Inc.
@@ -24943,6 +24940,18 @@
 	cd ${top_builddir}/../ptexenc && $(MAKE) $(AM_MAKEFLAGS) rebuild'
 fi
 
+##tldbg _KPSE_LIB_FLAGS: Setup pplib (-lpplib) flags.
+echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=pplib, libname=pplib, options=tree, tlincl=-IBLD/libs/pplib/include, tllib=BLD/libs/pplib/libpplib.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/pplib/include/pplib.h.' >&5
+##tldbg _KPSE_LIB_FLAGS_TL: pplib (pplib) tree.
+  PPLIB_INCLUDES="-I$kpse_BLD/libs/pplib/include"
+  PPLIB_LIBS="$kpse_BLD/libs/pplib/libpplib.a"
+  PPLIB_DEPEND='${top_builddir}/../../libs/pplib/libpplib.a'
+  PPLIB_RULE='# Rebuild libpplib
+$(PPLIB_DEPEND): ${top_builddir}/../../libs/pplib/include/pplib.h
+	cd ${top_builddir}/../../libs/pplib && $(MAKE) $(AM_MAKEFLAGS) rebuild
+${top_builddir}/../../libs/pplib/include/pplib.h:
+	cd ${top_builddir}/../../libs/pplib && $(MAKE) $(AM_MAKEFLAGS) rebuild'
+
 ##tldbg _KPSE_LIB_FLAGS: Setup zlib (-lz) flags.
 echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=zlib, libname=z, options=, tlincl=-IBLD/libs/zlib/include, tllib=BLD/libs/zlib/libz.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/zlib/include/zconf.h.' >&5
 ##tldbg _KPSE_LIB_FLAGS_TL: zlib (z) .
@@ -25494,54 +25503,12 @@
 	cd ${top_builddir}/../../libs/mpfr && $(MAKE) $(AM_MAKEFLAGS) rebuild'
 fi
 
-##tldbg _KPSE_LIB_FLAGS: Setup poppler (-lpoppler) flags.
-echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=poppler, libname=poppler, options=, tlincl=-IBLD/libs/poppler/include, tllib=BLD/libs/poppler/libpoppler.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/poppler/include/Stream.h.' >&5
-##tldbg _KPSE_LIB_FLAGS_TL: poppler (poppler) .
-
-# Check whether --with-system-poppler was given.
-if test "${with_system_poppler+set}" = set; then :
-  withval=$with_system_poppler;
-fi
-if test "x$with_system_poppler" = xyes; then
-  if $PKG_CONFIG poppler --atleast-version=0.30; then
-  POPPLER_INCLUDES=`$PKG_CONFIG poppler --cflags`
-  POPPLER_LIBS=`$PKG_CONFIG poppler --libs`
-elif test "x$need_poppler:$with_system_poppler" = xyes:yes; then
-  as_fn_error $? "did not find poppler 0.30 or better" "$LINENO" 5
-fi
-
-POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-POPPLER_INCLUDES="$POPPLER_VERSION $POPPLER_INCLUDES"
-else
-  POPPLER_INCLUDES="-I$kpse_BLD/libs/poppler/include"
-  POPPLER_LIBS="$kpse_BLD/libs/poppler/libpoppler.a"
-  POPPLER_DEPEND='${top_builddir}/../../libs/poppler/libpoppler.a'
-  POPPLER_RULE='# Rebuild libpoppler
-$(POPPLER_DEPEND): ${top_builddir}/../../libs/poppler/include/Stream.h
-	cd ${top_builddir}/../../libs/poppler && $(MAKE) $(AM_MAKEFLAGS) rebuild
-${top_builddir}/../../libs/poppler/include/Stream.h:
-	cd ${top_builddir}/../../libs/poppler && $(MAKE) $(AM_MAKEFLAGS) rebuild'
-fi
-test "x$kpse_cv_have_win32" = xno || POPPLER_LIBS="$POPPLER_LIBS -lgdi32"
-
 ##tldbg _KPSE_LIB_FLAGS: Setup xpdf (-lxpdf) flags.
 echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=xpdf, libname=xpdf, options=, tlincl=-DPDF_PARSER_ONLY -IBLD/libs/xpdf -IBLD/libs/xpdf/goo -IBLD/libs/xpdf/xpdf, tllib=BLD/libs/xpdf/libxpdf.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/xpdf/xpdf/Stream.h.' >&5
 ##tldbg _KPSE_LIB_FLAGS_TL: xpdf (xpdf) .
-
-# Check whether --with-system-xpdf was given.
-if test "${with_system_xpdf+set}" = set; then :
-  withval=$with_system_xpdf;
-fi
+: "kpse_xpdf_options - no-op"
 if test "x$with_system_xpdf" = xyes; then
-  if $PKG_CONFIG poppler --atleast-version=0.12; then
-  XPDF_INCLUDES=`$PKG_CONFIG poppler --cflags`
-  XPDF_LIBS=`$PKG_CONFIG poppler --libs`
-elif test "x$need_xpdf:$with_system_xpdf" = xyes:yes; then
-  as_fn_error $? "did not find poppler 0.12 or better" "$LINENO" 5
-fi
-
-POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-XPDF_INCLUDES="$POPPLER_VERSION $XPDF_INCLUDES"
+  : "kpse_xpdf_system_flags - no-op"
 else
   XPDF_INCLUDES="-DPDF_PARSER_ONLY -I$kpse_BLD/libs/xpdf -I$kpse_BLD/libs/xpdf/goo -I$kpse_BLD/libs/xpdf/xpdf"
   XPDF_LIBS="$kpse_BLD/libs/xpdf/libxpdf.a"
@@ -25974,9 +25941,6 @@
 fi
 
 
-eval CPPFLAGS=\"$POPPLER_INCLUDES \$CPPFLAGS\"
-eval LIBS=\"$POPPLER_LIBS \$LIBS\"
-
 ac_ext=cpp
 ac_cpp='$CXXCPP $CPPFLAGS'
 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -27134,7 +27098,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Web2C $as_me 2020, which was
+This file was extended by Web2C $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -27204,7 +27168,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-Web2C config.status 2020
+Web2C config.status 2021/dev
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -28447,7 +28411,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/texk/web2c/configure.ac
===================================================================
--- branches/stable/source/src/texk/web2c/configure.ac	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/configure.ac	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,4 +1,4 @@
-dnl $Id: configure.ac 51470 2019-06-26 16:09:52Z karl $
+dnl $Id: configure.ac 55138 2020-05-14 17:47:47Z karl $
 dnl Process this file with Autoconf to produce a configure script for Web2c.
 dnl
 dnl   Copyright 2018-2019 Karl Berry <tex-live at tug.org>
@@ -46,10 +46,9 @@
 KPSE_WEB2C_PREPARE
 m4_include([ac/web2c.ac])
 
-# XeTeX now requires C++11 because poppler does :(.
-# XeTeX also requires C+11 because of ICU.
+# XeTeX now requires C++11 because ICU does :(.
 if test "x$enable_xetex" = xyes; then
-  AC_MSG_NOTICE([checking for C++11, since XeTeX enabled])
+  AC_MSG_NOTICE([checking for C++11, since XeTeX is enabled])
   AX_CXX_COMPILE_STDCXX([11])
 fi
 
@@ -249,6 +248,7 @@
 
 KPSE_KPATHSEA_FLAGS
 KPSE_PTEXENC_FLAGS
+KPSE_PPLIB_FLAGS
 KPSE_ZLIB_FLAGS
 KPSE_LUA53_FLAGS
 KPSE_LUA52_FLAGS
@@ -259,7 +259,6 @@
 KPSE_CAIRO_FLAGS
 KPSE_GMP_FLAGS
 KPSE_MPFR_FLAGS
-KPSE_POPPLER_FLAGS
 KPSE_XPDF_FLAGS
 KPSE_ZZIPLIB_FLAGS
 KPSE_TECKIT_FLAGS
@@ -304,7 +303,6 @@
 AC_SUBST([KPATHSEA_PATHS_H])
 
 dnl Check for Object::initCmd(const char *) etc
-KPSE_ADD_FLAGS([poppler])
 AC_LANG_PUSH([C++])
 AC_MSG_CHECKING([for Object::[initCmd(const char*)] etc])
 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <Object.h>]],

Modified: branches/stable/source/src/texk/web2c/ctangleboot.cin
===================================================================
--- branches/stable/source/src/texk/web2c/ctangleboot.cin	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/ctangleboot.cin	2020-05-15 18:03:05 UTC (rev 825)
@@ -8,7 +8,7 @@
 #line 83 "cwebdir/ctangle.w"
 
 /*:2*//*6:*/
-#line 45 "cwebdir/comm-w2c.h"
+#line 52 "cwebdir/comm-w2c.h"
 
 #ifndef HAVE_GETTEXT
 #define HAVE_GETTEXT 0
@@ -47,11 +47,8 @@
 #define stack_size 50
 #define buf_size 1000 \
 
-#define ctangle 0
-#define cweave 1
-#define ctwill 2 \
+#define _(STRING) gettext(STRING)  \
 
-#define _(STRING) gettext(STRING) 
 #define and_and 04
 #define lt_lt 020
 #define gt_gt 021
@@ -100,6 +97,7 @@
 #define show_banner flags['b']
 #define show_progress flags['p']
 #define show_happiness flags['h']
+#define temporary_output flags['t']
 #define make_xrefs flags['x'] \
 
 #define update_terminal fflush(stdout) 
@@ -164,24 +162,27 @@
 #line 66 "cwebdir/ctangle.w"
 
 /*5:*/
-#line 37 "cwebdir/comm-w2c.h"
+#line 34 "cwebdir/comm-w2c.h"
 
 typedef bool boolean;
 typedef uint8_t eight_bits;
 typedef uint16_t sixteen_bits;
-extern int program;
+typedef enum{
+ctangle,cweave,ctwill
+}cweb;
+extern cweb program;
 extern int phase;
 
 /*:5*//*7:*/
-#line 79 "cwebdir/comm-w2c.h"
+#line 86 "cwebdir/comm-w2c.h"
 
-char section_text[longest_name+1];
-char*section_text_end= section_text+longest_name;
-char*id_first;
-char*id_loc;
+extern char section_text[];
+extern char*section_text_end;
+extern char*id_first;
+extern char*id_loc;
 
 /*:7*//*8:*/
-#line 94 "cwebdir/comm-w2c.h"
+#line 101 "cwebdir/comm-w2c.h"
 
 extern char buffer[];
 extern char*buffer_end;
@@ -189,7 +190,7 @@
 extern char*limit;
 
 /*:8*//*9:*/
-#line 109 "cwebdir/comm-w2c.h"
+#line 116 "cwebdir/comm-w2c.h"
 
 typedef struct name_info{
 char*byte_start;
@@ -223,7 +224,7 @@
 extern void sprint_section_name(char*,name_pointer);
 
 /*:9*//*10:*/
-#line 150 "cwebdir/comm-w2c.h"
+#line 157 "cwebdir/comm-w2c.h"
 
 extern int history;
 extern int wrap_up(void);
@@ -232,7 +233,7 @@
 extern void overflow(const char*);
 
 /*:10*//*11:*/
-#line 165 "cwebdir/comm-w2c.h"
+#line 172 "cwebdir/comm-w2c.h"
 
 extern int include_depth;
 extern FILE*file[];
@@ -256,7 +257,7 @@
 extern void reset_input(void);
 
 /*:11*//*12:*/
-#line 188 "cwebdir/comm-w2c.h"
+#line 195 "cwebdir/comm-w2c.h"
 
 extern sixteen_bits section_count;
 extern boolean changed_section[];
@@ -264,7 +265,7 @@
 extern boolean print_where;
 
 /*:12*//*13:*/
-#line 200 "cwebdir/comm-w2c.h"
+#line 208 "cwebdir/comm-w2c.h"
 
 extern int argc;
 extern char**argv;
@@ -271,7 +272,7 @@
 extern boolean flags[];
 
 /*:13*//*14:*/
-#line 212 "cwebdir/comm-w2c.h"
+#line 220 "cwebdir/comm-w2c.h"
 
 extern FILE*C_file;
 extern FILE*tex_file;
@@ -281,7 +282,7 @@
 extern FILE*active_file;
 
 /*:14*//*15:*/
-#line 222 "cwebdir/comm-w2c.h"
+#line 230 "cwebdir/comm-w2c.h"
 
 extern void common_init(void);
 extern void print_stats(void);
@@ -763,13 +764,13 @@
 #line 779 "cwebdir/ctang-w2c.ch"
 
 char x[BUFSIZ],y[BUFSIZ];
-int x_size,y_size,comparison;
+int x_size,y_size,comparison= false;
 
 if((check_file= fopen(check_file_name,"r"))==NULL)
 fatal(_("! Cannot open output file "),check_file_name);
 
 
-/*100:*/
+if(temporary_output)/*100:*/
 #line 794 "cwebdir/ctang-w2c.ch"
 
 do{
@@ -831,13 +832,13 @@
 #line 779 "cwebdir/ctang-w2c.ch"
 
 char x[BUFSIZ],y[BUFSIZ];
-int x_size,y_size,comparison;
+int x_size,y_size,comparison= false;
 
 if((check_file= fopen(check_file_name,"r"))==NULL)
 fatal(_("! Cannot open output file "),check_file_name);
 
 
-/*100:*/
+if(temporary_output)/*100:*/
 #line 794 "cwebdir/ctang-w2c.ch"
 
 do{

Modified: branches/stable/source/src/texk/web2c/cwebboot.cin
===================================================================
--- branches/stable/source/src/texk/web2c/cwebboot.cin	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebboot.cin	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,37 +1,14 @@
 /*1:*/
 #line 58 "cwebdir/common.w"
 
-/*5:*/
-#line 102 "cwebdir/common.w"
+/*85:*/
+#line 1209 "cwebdir/comm-w2c.ch"
 
-#include <ctype.h> 
-
-/*:5*//*8:*/
-#line 165 "cwebdir/common.w"
-
-#include <stdio.h> 
-
-/*:8*//*22:*/
-#line 471 "cwebdir/common.w"
-
-#include <stdlib.h>  
-
-/*:22*//*81:*/
-#line 1118 "cwebdir/comm-w2c.ch"
-
-#include <string.h> 
-#line 1417 "cwebdir/common.w"
-
-#line 1125 "cwebdir/comm-w2c.ch"
-/*:81*//*85:*/
-#line 1164 "cwebdir/comm-w2c.ch"
-
 #include <stdbool.h>  
 #include <stddef.h>  
-#include <stdint.h>  
 
 /*:85*//*88:*/
-#line 1206 "cwebdir/comm-w2c.ch"
+#line 1250 "cwebdir/comm-w2c.ch"
 
 #ifndef HAVE_GETTEXT
 #define HAVE_GETTEXT 0
@@ -48,7 +25,7 @@
 #endif
 
 /*:88*//*90:*/
-#line 1296 "cwebdir/comm-w2c.ch"
+#line 1340 "cwebdir/comm-w2c.ch"
 
 typedef bool boolean;
 #define HAVE_BOOLEAN
@@ -62,10 +39,6 @@
 /*:90*/
 #line 59 "cwebdir/common.w"
 
-#define ctangle 0
-#define cweave 1
-#define ctwill 2 \
-
 #define and_and 04
 #define lt_lt 020
 #define gt_gt 021
@@ -111,6 +84,7 @@
 
 #define too_long() {include_depth--; \
 err_print(_("! Include file name too long") ) ;goto restart;} \
+ \
 
 #define max_bytes 1000000 \
 
@@ -160,6 +134,7 @@
 #define show_progress flags['p']
 #define show_stats flags['s']
 #define show_happiness flags['h']
+#define temporary_output flags['t']
 #define make_xrefs flags['x'] \
 
 #define flag_change (**argv!='-') 
@@ -187,11 +162,26 @@
 /*2:*/
 #line 73 "cwebdir/common.w"
 
-#line 56 "cwebdir/comm-w2c.ch"
-int program;
+#line 51 "cwebdir/comm-w2c.ch"
+typedef uint8_t eight_bits;
+typedef uint16_t sixteen_bits;
+#line 58 "cwebdir/comm-w2c.ch"
+typedef enum{
+ctangle,cweave,ctwill
+}cweb;
+cweb program;
 #line 76 "cwebdir/common.w"
 
-/*:2*//*7:*/
+/*:2*//*6:*/
+#line 104 "cwebdir/comm-w2c.ch"
+
+char section_text[longest_name+1];
+char*section_text_end= section_text+longest_name;
+char*id_first;
+char*id_loc;
+#line 138 "cwebdir/common.w"
+
+/*:6*//*7:*/
 #line 159 "cwebdir/common.w"
 
 char buffer[long_buf_size];
@@ -199,6 +189,7 @@
 char*limit= buffer;
 char*loc= buffer;
 
+#line 129 "cwebdir/comm-w2c.ch"
 /*:7*//*10:*/
 #line 214 "cwebdir/common.w"
 
@@ -219,9 +210,6 @@
 /*:10*//*20:*/
 #line 418 "cwebdir/common.w"
 
-#line 264 "cwebdir/comm-w2c.ch"
-typedef uint8_t eight_bits;
-typedef uint16_t sixteen_bits;
 #line 420 "cwebdir/common.w"
 sixteen_bits section_count;
 boolean changed_section[max_sections];
@@ -249,7 +237,7 @@
 }dummy;
 
 /*:40*//*55:*/
-#line 703 "cwebdir/comm-w2c.ch"
+#line 740 "cwebdir/comm-w2c.ch"
 
 void*equiv_or_xref;
 #line 1064 "cwebdir/common.w"
@@ -291,10 +279,10 @@
 char C_file_name[max_file_name_length];
 char tex_file_name[max_file_name_length];
 char idx_file_name[max_file_name_length];
-#line 863 "cwebdir/comm-w2c.ch"
+#line 901 "cwebdir/comm-w2c.ch"
 char scn_file_name[max_file_name_length];
 char check_file_name[max_file_name_length];
-#line 870 "cwebdir/comm-w2c.ch"
+#line 908 "cwebdir/comm-w2c.ch"
 boolean flags[128];
 const char*use_language= "";
 #line 1228 "cwebdir/common.w"
@@ -305,15 +293,15 @@
 FILE*C_file;
 FILE*tex_file;
 FILE*idx_file;
-#line 1051 "cwebdir/comm-w2c.ch"
+#line 1098 "cwebdir/comm-w2c.ch"
 FILE*scn_file;
 FILE*check_file;
-#line 1058 "cwebdir/comm-w2c.ch"
+#line 1105 "cwebdir/comm-w2c.ch"
 FILE*active_file;
 char*found_filename;
 #line 1376 "cwebdir/common.w"
 
-#line 1075 "cwebdir/comm-w2c.ch"
+#line 1122 "cwebdir/comm-w2c.ch"
 /*:77*/
 #line 61 "cwebdir/common.w"
 
@@ -328,7 +316,7 @@
 char*change_limit;
 
 /*:11*//*86:*/
-#line 1180 "cwebdir/comm-w2c.ch"
+#line 1224 "cwebdir/comm-w2c.ch"
 
 char cb_banner[max_banner];
 string texmf_locale;
@@ -343,7 +331,7 @@
 /*33:*/
 #line 650 "cwebdir/common.w"
 
-#line 432 "cwebdir/comm-w2c.ch"
+#line 469 "cwebdir/comm-w2c.ch"
 extern boolean names_match(name_pointer,const char*,size_t,eight_bits);
 #line 652 "cwebdir/common.w"
 
@@ -350,7 +338,7 @@
 /*:33*//*38:*/
 #line 703 "cwebdir/common.w"
 
-#line 462 "cwebdir/comm-w2c.ch"
+#line 499 "cwebdir/comm-w2c.ch"
 extern void init_p(name_pointer,eight_bits);
 #line 705 "cwebdir/common.w"
 
@@ -357,7 +345,7 @@
 /*:38*//*46:*/
 #line 852 "cwebdir/common.w"
 
-#line 542 "cwebdir/comm-w2c.ch"
+#line 579 "cwebdir/comm-w2c.ch"
 extern void init_node(name_pointer);
 #line 854 "cwebdir/common.w"
 
@@ -364,7 +352,7 @@
 /*:46*//*53:*/
 #line 1017 "cwebdir/common.w"
 
-#line 668 "cwebdir/comm-w2c.ch"
+#line 705 "cwebdir/comm-w2c.ch"
 static int section_name_cmp(char**,int,name_pointer);
 #line 1019 "cwebdir/common.w"
 
@@ -371,7 +359,7 @@
 /*:53*//*57:*/
 #line 1092 "cwebdir/common.w"
 
-#line 710 "cwebdir/comm-w2c.ch"
+#line 747 "cwebdir/comm-w2c.ch"
 extern void err_print(const char*);
 #line 1094 "cwebdir/common.w"
 
@@ -378,16 +366,16 @@
 /*:57*//*60:*/
 #line 1140 "cwebdir/common.w"
 
-#line 737 "cwebdir/comm-w2c.ch"
+#line 774 "cwebdir/comm-w2c.ch"
 extern int wrap_up(void);
 extern void print_stats(void);
 #line 1143 "cwebdir/common.w"
 
-#line 748 "cwebdir/comm-w2c.ch"
+#line 785 "cwebdir/comm-w2c.ch"
 /*:60*//*63:*/
 #line 1173 "cwebdir/common.w"
 
-#line 811 "cwebdir/comm-w2c.ch"
+#line 848 "cwebdir/comm-w2c.ch"
 extern void fatal(const char*,const char*);
 extern void overflow(const char*);
 #line 1175 "cwebdir/common.w"
@@ -395,12 +383,12 @@
 /*:63*//*69:*/
 #line 1251 "cwebdir/common.w"
 
-#line 891 "cwebdir/comm-w2c.ch"
+#line 938 "cwebdir/comm-w2c.ch"
 static void scan_args(void);
 #line 1253 "cwebdir/common.w"
 
 /*:69*//*83:*/
-#line 1140 "cwebdir/comm-w2c.ch"
+#line 1184 "cwebdir/comm-w2c.ch"
 
 boolean get_line(void);
 name_pointer id_lookup(const char*,const char*,char);
@@ -413,7 +401,7 @@
 void sprint_section_name(char*,name_pointer);
 
 /*:83*//*84:*/
-#line 1153 "cwebdir/comm-w2c.ch"
+#line 1197 "cwebdir/comm-w2c.ch"
 
 static boolean input_ln(FILE*);
 static int web_strcmp(char*,int,char*,int);
@@ -423,7 +411,7 @@
 static void prime_the_change_buffer(void);
 
 /*:84*//*98:*/
-#line 1397 "cwebdir/comm-w2c.ch"
+#line 1441 "cwebdir/comm-w2c.ch"
 
 static void cb_usage(const_string str);
 static void cb_usagehelp(const_string*message,const_string bug_email);
@@ -436,12 +424,12 @@
 /*:1*//*4:*/
 #line 89 "cwebdir/common.w"
 
-#line 63 "cwebdir/comm-w2c.ch"
+#line 68 "cwebdir/comm-w2c.ch"
 void
 common_init(void)
 #line 92 "cwebdir/common.w"
 {
-#line 72 "cwebdir/comm-w2c.ch"
+#line 77 "cwebdir/comm-w2c.ch"
 /*30:*/
 #line 621 "cwebdir/common.w"
 
@@ -460,18 +448,18 @@
 root= NULL;
 
 /*:41*/
-#line 72 "cwebdir/comm-w2c.ch"
+#line 77 "cwebdir/comm-w2c.ch"
 
 /*91:*/
-#line 1311 "cwebdir/comm-w2c.ch"
+#line 1355 "cwebdir/comm-w2c.ch"
 
 kpse_set_program_name(argv[0],"cweb");
 
 /*:91*/
-#line 73 "cwebdir/comm-w2c.ch"
+#line 78 "cwebdir/comm-w2c.ch"
 
 /*89:*/
-#line 1262 "cwebdir/comm-w2c.ch"
+#line 1306 "cwebdir/comm-w2c.ch"
 
 setlocale(LC_MESSAGES,setlocale(LC_CTYPE,""));
 texmf_locale= kpse_var_expand("${TEXMFLOCALEDIR}");
@@ -487,18 +475,20 @@
 
 
 /*:89*/
-#line 74 "cwebdir/comm-w2c.ch"
+#line 79 "cwebdir/comm-w2c.ch"
 
 /*68:*/
 #line 1233 "cwebdir/common.w"
 
+#line 915 "cwebdir/comm-w2c.ch"
+temporary_output= 1;
 #line 1235 "cwebdir/common.w"
 
 /*:68*/
-#line 75 "cwebdir/comm-w2c.ch"
+#line 80 "cwebdir/comm-w2c.ch"
 
 /*78:*/
-#line 1075 "cwebdir/comm-w2c.ch"
+#line 1122 "cwebdir/comm-w2c.ch"
 
 scan_args();
 if(program==ctangle){
@@ -525,7 +515,7 @@
 #line 1388 "cwebdir/common.w"
 
 /*:78*/
-#line 76 "cwebdir/comm-w2c.ch"
+#line 81 "cwebdir/comm-w2c.ch"
 
 #line 96 "cwebdir/common.w"
 }
@@ -533,7 +523,7 @@
 /*:4*//*9:*/
 #line 172 "cwebdir/common.w"
 
-#line 103 "cwebdir/comm-w2c.ch"
+#line 136 "cwebdir/comm-w2c.ch"
 static boolean input_ln(
 FILE*fp)
 #line 175 "cwebdir/common.w"
@@ -543,12 +533,12 @@
 if(feof(fp))return(0);
 limit= k= buffer;
 while(k<=buffer_end&&(c= getc(fp))!=EOF&&c!='\n')
-#line 110 "cwebdir/comm-w2c.ch"
+#line 143 "cwebdir/comm-w2c.ch"
 if((*(k++)= c)!=' '&&c!='\r')limit= k;
 #line 182 "cwebdir/common.w"
 if(k> buffer_end)
 if((c= getc(fp))!=EOF&&c!='\n'){
-#line 116 "cwebdir/comm-w2c.ch"
+#line 149 "cwebdir/comm-w2c.ch"
 ungetc(c,fp);loc= buffer;err_print(_("! Input line too long"));
 #line 185 "cwebdir/common.w"
 
@@ -561,7 +551,7 @@
 /*:9*//*12:*/
 #line 251 "cwebdir/common.w"
 
-#line 142 "cwebdir/comm-w2c.ch"
+#line 175 "cwebdir/comm-w2c.ch"
 static void
 prime_the_change_buffer(void)
 #line 254 "cwebdir/common.w"
@@ -575,13 +565,13 @@
 if(!input_ln(change_file))return;
 if(limit<buffer+2)continue;
 if(buffer[0]!='@')continue;
-#line 149 "cwebdir/comm-w2c.ch"
+#line 182 "cwebdir/comm-w2c.ch"
 if(xisupper(buffer[1]))buffer[1]= tolower((eight_bits)buffer[1]);
 #line 272 "cwebdir/common.w"
 if(buffer[1]=='x')break;
 if(buffer[1]=='y'||buffer[1]=='z'||buffer[1]=='i'){
 loc= buffer+2;
-#line 155 "cwebdir/comm-w2c.ch"
+#line 188 "cwebdir/comm-w2c.ch"
 err_print(_("! Missing @x in change file"));
 #line 276 "cwebdir/common.w"
 
@@ -597,7 +587,7 @@
 do{
 change_line++;
 if(!input_ln(change_file)){
-#line 161 "cwebdir/comm-w2c.ch"
+#line 194 "cwebdir/comm-w2c.ch"
 err_print(_("! Change file ended after @x"));
 #line 287 "cwebdir/common.w"
 
@@ -612,7 +602,7 @@
 #line 292 "cwebdir/common.w"
 
 {
-#line 168 "cwebdir/comm-w2c.ch"
+#line 201 "cwebdir/comm-w2c.ch"
 change_limit= change_buffer+(ptrdiff_t)(limit-buffer);
 strncpy(change_buffer,buffer,(size_t)(limit-buffer+1));
 #line 296 "cwebdir/common.w"
@@ -626,7 +616,7 @@
 /*:12*//*16:*/
 #line 320 "cwebdir/common.w"
 
-#line 176 "cwebdir/comm-w2c.ch"
+#line 209 "cwebdir/comm-w2c.ch"
 static void
 check_change(void)
 #line 323 "cwebdir/common.w"
@@ -641,7 +631,7 @@
 while(1){
 changing= 1;print_where= 1;change_line++;
 if(!input_ln(change_file)){
-#line 183 "cwebdir/comm-w2c.ch"
+#line 216 "cwebdir/comm-w2c.ch"
 err_print(_("! Change file ended before @y"));
 #line 335 "cwebdir/common.w"
 
@@ -649,7 +639,7 @@
 return;
 }
 if(limit> buffer+1&&buffer[0]=='@'){
-#line 189 "cwebdir/comm-w2c.ch"
+#line 222 "cwebdir/comm-w2c.ch"
 char xyz_code= xisupper(buffer[1])?tolower((eight_bits)buffer[1]):buffer[1];
 #line 341 "cwebdir/common.w"
 /*17:*/
@@ -656,7 +646,7 @@
 #line 358 "cwebdir/common.w"
 
 if(xyz_code=='x'||xyz_code=='z'){
-#line 201 "cwebdir/comm-w2c.ch"
+#line 234 "cwebdir/comm-w2c.ch"
 loc= buffer+2;err_print(_("! Where is the matching @y?"));
 #line 361 "cwebdir/common.w"
 
@@ -665,7 +655,7 @@
 if(n> 0){
 loc= buffer+2;
 printf("\n! Hmm... %d ",n);
-#line 207 "cwebdir/comm-w2c.ch"
+#line 240 "cwebdir/comm-w2c.ch"
 err_print(_("of the preceding lines failed to match"));
 #line 368 "cwebdir/common.w"
 
@@ -682,7 +672,7 @@
 #line 292 "cwebdir/common.w"
 
 {
-#line 168 "cwebdir/comm-w2c.ch"
+#line 201 "cwebdir/comm-w2c.ch"
 change_limit= change_buffer+(ptrdiff_t)(limit-buffer);
 strncpy(change_buffer,buffer,(size_t)(limit-buffer+1));
 #line 296 "cwebdir/common.w"
@@ -694,7 +684,7 @@
 changing= 0;cur_line++;
 while(!input_ln(cur_file)){
 if(include_depth==0){
-#line 195 "cwebdir/comm-w2c.ch"
+#line 228 "cwebdir/comm-w2c.ch"
 err_print(_("! CWEB file ended during a change"));
 #line 349 "cwebdir/common.w"
 
@@ -709,7 +699,7 @@
 /*:16*//*18:*/
 #line 378 "cwebdir/common.w"
 
-#line 214 "cwebdir/comm-w2c.ch"
+#line 247 "cwebdir/comm-w2c.ch"
 void
 reset_input(void)
 #line 381 "cwebdir/common.w"
@@ -718,7 +708,7 @@
 /*19:*/
 #line 393 "cwebdir/common.w"
 
-#line 225 "cwebdir/comm-w2c.ch"
+#line 258 "cwebdir/comm-w2c.ch"
 if((found_filename= kpse_find_cweb(web_file_name))==NULL||
 (web_file= fopen(found_filename,"r"))==NULL){
 fatal(_("! Cannot open input file "),web_file_name);
@@ -733,7 +723,7 @@
 
 
 web_file_open= 1;
-#line 241 "cwebdir/comm-w2c.ch"
+#line 274 "cwebdir/comm-w2c.ch"
 if((found_filename= kpse_find_cweb(change_file_name))==NULL||
 (change_file= fopen(found_filename,"r"))==NULL){
 fatal(_("! Cannot open change file "),change_file_name);
@@ -758,7 +748,7 @@
 /*:18*//*21:*/
 #line 426 "cwebdir/common.w"
 
-#line 271 "cwebdir/comm-w2c.ch"
+#line 302 "cwebdir/comm-w2c.ch"
 boolean get_line(void)
 #line 428 "cwebdir/common.w"
 {
@@ -769,7 +759,7 @@
 {
 change_line++;
 if(!input_ln(change_file)){
-#line 370 "cwebdir/comm-w2c.ch"
+#line 407 "cwebdir/comm-w2c.ch"
 err_print(_("! Change file ended without @z"));
 #line 541 "cwebdir/common.w"
 
@@ -784,12 +774,12 @@
 }
 *limit= ' ';
 if(buffer[0]=='@'){
-#line 376 "cwebdir/comm-w2c.ch"
+#line 413 "cwebdir/comm-w2c.ch"
 if(xisupper(buffer[1]))buffer[1]= tolower((eight_bits)buffer[1]);
 #line 554 "cwebdir/common.w"
 if(buffer[1]=='x'||buffer[1]=='y'){
 loc= buffer+2;
-#line 382 "cwebdir/comm-w2c.ch"
+#line 419 "cwebdir/comm-w2c.ch"
 err_print(_("! Where is the matching @z?"));
 #line 557 "cwebdir/common.w"
 
@@ -835,7 +825,7 @@
 loc= buffer+2;*limit= '"';
 while(*loc==' '||*loc=='\t')loc++;
 if(loc>=limit){
-#line 277 "cwebdir/comm-w2c.ch"
+#line 308 "cwebdir/comm-w2c.ch"
 err_print(_("! Include file name not given"));
 #line 443 "cwebdir/common.w"
 
@@ -842,7 +832,7 @@
 goto restart;
 }
 if(include_depth>=max_include_depth-1){
-#line 283 "cwebdir/comm-w2c.ch"
+#line 314 "cwebdir/comm-w2c.ch"
 err_print(_("! Too many nested includes"));
 #line 448 "cwebdir/common.w"
 
@@ -852,7 +842,7 @@
 /*23:*/
 #line 474 "cwebdir/common.w"
 {
-#line 319 "cwebdir/comm-w2c.ch"
+#line 356 "cwebdir/comm-w2c.ch"
 char*cur_file_name_end= cur_file_name+max_file_name_length-1;
 char*k= cur_file_name;
 #line 479 "cwebdir/common.w"
@@ -866,7 +856,7 @@
 if(k> cur_file_name_end)too_long();
 
 *k= '\0';
-#line 326 "cwebdir/comm-w2c.ch"
+#line 363 "cwebdir/comm-w2c.ch"
 if((found_filename= kpse_find_cweb(cur_file_name))!=NULL&&
 (cur_file= fopen(found_filename,"r"))!=NULL){
 
@@ -880,7 +870,7 @@
 cur_line= 0;print_where= 1;
 goto restart;
 }
-#line 364 "cwebdir/comm-w2c.ch"
+#line 401 "cwebdir/comm-w2c.ch"
 include_depth--;err_print(_("! Cannot open include file"));goto restart;
 #line 518 "cwebdir/common.w"
 }
@@ -892,11 +882,11 @@
 return 1;
 }
 
-#line 298 "cwebdir/comm-w2c.ch"
+#line 329 "cwebdir/comm-w2c.ch"
 /*:21*//*26:*/
 #line 569 "cwebdir/common.w"
 
-#line 392 "cwebdir/comm-w2c.ch"
+#line 429 "cwebdir/comm-w2c.ch"
 void
 check_complete(void){
 if(change_limit!=change_buffer){
@@ -904,7 +894,7 @@
 limit= buffer+(ptrdiff_t)(change_limit-change_buffer);
 #line 575 "cwebdir/common.w"
 changing= 1;change_depth= include_depth;loc= buffer;
-#line 402 "cwebdir/comm-w2c.ch"
+#line 439 "cwebdir/comm-w2c.ch"
 err_print(_("! Change file entry did not match"));
 #line 577 "cwebdir/common.w"
 
@@ -914,7 +904,7 @@
 /*:26*//*35:*/
 #line 660 "cwebdir/common.w"
 
-#line 444 "cwebdir/comm-w2c.ch"
+#line 481 "cwebdir/comm-w2c.ch"
 name_pointer
 id_lookup(
 const char*first,
@@ -927,7 +917,7 @@
 int l;
 name_pointer p;
 if(last==NULL)for(last= first;*last!='\0';last++);
-#line 456 "cwebdir/comm-w2c.ch"
+#line 493 "cwebdir/comm-w2c.ch"
 l= (int)(last-first);
 #line 673 "cwebdir/common.w"
 /*36:*/
@@ -956,13 +946,13 @@
 if(p==name_ptr)/*39:*/
 #line 706 "cwebdir/common.w"
 {
-#line 469 "cwebdir/comm-w2c.ch"
+#line 506 "cwebdir/comm-w2c.ch"
 if(byte_ptr+l> byte_mem_end)overflow(_("byte memory"));
 if(name_ptr>=name_dir_end)overflow(_("name"));
 #line 709 "cwebdir/common.w"
 strncpy(byte_ptr,first,l);
 (++name_ptr)->byte_start= byte_ptr+= l;
-#line 476 "cwebdir/comm-w2c.ch"
+#line 513 "cwebdir/comm-w2c.ch"
 init_p(p,t);
 #line 712 "cwebdir/common.w"
 }
@@ -976,7 +966,7 @@
 /*:35*//*42:*/
 #line 764 "cwebdir/common.w"
 
-#line 484 "cwebdir/comm-w2c.ch"
+#line 521 "cwebdir/comm-w2c.ch"
 void
 print_section_name(
 name_pointer p)
@@ -987,7 +977,7 @@
 while(p!=name_dir){
 ss= (p+1)->byte_start-1;
 if(*ss==' '&&ss>=s){
-#line 494 "cwebdir/comm-w2c.ch"
+#line 531 "cwebdir/comm-w2c.ch"
 term_write(s,(size_t)(ss-s));p= q->link;q= p;
 }else{
 term_write(s,(size_t)(ss+1-s));p= name_dir;q= NULL;
@@ -1001,7 +991,7 @@
 /*:42*//*43:*/
 #line 783 "cwebdir/common.w"
 
-#line 505 "cwebdir/comm-w2c.ch"
+#line 542 "cwebdir/comm-w2c.ch"
 void
 sprint_section_name(
 char*dest,
@@ -1017,7 +1007,7 @@
 }else{
 ss++;p= name_dir;
 }
-#line 514 "cwebdir/comm-w2c.ch"
+#line 551 "cwebdir/comm-w2c.ch"
 strncpy(dest,s,(size_t)(ss-s)),dest+= ss-s;
 #line 799 "cwebdir/common.w"
 s= p->byte_start;
@@ -1028,7 +1018,7 @@
 /*:43*//*44:*/
 #line 804 "cwebdir/common.w"
 
-#line 522 "cwebdir/comm-w2c.ch"
+#line 559 "cwebdir/comm-w2c.ch"
 void
 print_prefix_name(
 name_pointer p)
@@ -1043,7 +1033,7 @@
 /*:44*//*45:*/
 #line 825 "cwebdir/common.w"
 
-#line 532 "cwebdir/comm-w2c.ch"
+#line 569 "cwebdir/comm-w2c.ch"
 static int web_strcmp(
 char*j,
 int j_len,
@@ -1063,7 +1053,7 @@
 /*:45*//*47:*/
 #line 855 "cwebdir/common.w"
 
-#line 554 "cwebdir/comm-w2c.ch"
+#line 591 "cwebdir/comm-w2c.ch"
 static name_pointer
 add_section_name(
 name_pointer par,
@@ -1075,9 +1065,9 @@
 {
 name_pointer p= name_ptr;
 char*s= first_chunk(p);
-#line 566 "cwebdir/comm-w2c.ch"
+#line 603 "cwebdir/comm-w2c.ch"
 int name_len= (int)(last-first)+ispref;
-#line 573 "cwebdir/comm-w2c.ch"
+#line 610 "cwebdir/comm-w2c.ch"
 if(s+name_len> byte_mem_end)overflow(_("byte memory"));
 if(name_ptr+1>=name_dir_end)overflow(_("name"));
 #line 869 "cwebdir/common.w"
@@ -1099,7 +1089,7 @@
 /*:47*//*48:*/
 #line 884 "cwebdir/common.w"
 
-#line 585 "cwebdir/comm-w2c.ch"
+#line 622 "cwebdir/comm-w2c.ch"
 static void
 extend_section_name(
 name_pointer p,
@@ -1110,9 +1100,9 @@
 {
 char*s;
 name_pointer q= p+1;
-#line 596 "cwebdir/comm-w2c.ch"
+#line 633 "cwebdir/comm-w2c.ch"
 int name_len= (int)(last-first)+ispref;
-#line 602 "cwebdir/comm-w2c.ch"
+#line 639 "cwebdir/comm-w2c.ch"
 if(name_ptr>=name_dir_end)overflow(_("name"));
 #line 896 "cwebdir/common.w"
 while(q->link!=name_dir)q= q->link;
@@ -1119,7 +1109,7 @@
 q->link= name_ptr;
 s= name_ptr->byte_start;
 name_ptr->link= name_dir;
-#line 608 "cwebdir/comm-w2c.ch"
+#line 645 "cwebdir/comm-w2c.ch"
 if(s+name_len> byte_mem_end)overflow(_("byte memory"));
 #line 901 "cwebdir/common.w"
 (++name_ptr)->byte_start= byte_ptr= s+name_len;
@@ -1130,7 +1120,7 @@
 /*:48*//*49:*/
 #line 912 "cwebdir/common.w"
 
-#line 617 "cwebdir/comm-w2c.ch"
+#line 654 "cwebdir/comm-w2c.ch"
 name_pointer
 section_lookup(
 char*first,char*last,
@@ -1143,7 +1133,7 @@
 name_pointer r= NULL;
 name_pointer par= NULL;
 
-#line 626 "cwebdir/comm-w2c.ch"
+#line 663 "cwebdir/comm-w2c.ch"
 int name_len= (int)(last-first)+1;
 #line 925 "cwebdir/common.w"
 /*50:*/
@@ -1157,12 +1147,12 @@
 p= (c==less?p->llink:p->rlink);
 }else{
 if(r!=NULL){
-#line 632 "cwebdir/comm-w2c.ch"
+#line 669 "cwebdir/comm-w2c.ch"
 fputs(_("\n! Ambiguous prefix: matches <"),stdout);
 #line 946 "cwebdir/common.w"
 
 print_prefix_name(p);
-#line 638 "cwebdir/comm-w2c.ch"
+#line 675 "cwebdir/comm-w2c.ch"
 fputs(_(">\n and <"),stdout);
 #line 949 "cwebdir/common.w"
 print_prefix_name(r);
@@ -1196,7 +1186,7 @@
 
 case prefix:
 if(!ispref){
-#line 644 "cwebdir/comm-w2c.ch"
+#line 681 "cwebdir/comm-w2c.ch"
 fputs(_("\n! New name is a prefix of <"),stdout);
 #line 975 "cwebdir/common.w"
 
@@ -1210,7 +1200,7 @@
 extend_section_name(r,first,last+1,ispref);
 return r;
 case bad_extension:
-#line 650 "cwebdir/comm-w2c.ch"
+#line 687 "cwebdir/comm-w2c.ch"
 fputs(_("\n! New name extends <"),stdout);
 #line 987 "cwebdir/common.w"
 
@@ -1218,12 +1208,12 @@
 err_print(">");
 return r;
 default:
-#line 656 "cwebdir/comm-w2c.ch"
+#line 693 "cwebdir/comm-w2c.ch"
 fputs(_("\n! Section name incompatible with <"),stdout);
 #line 993 "cwebdir/common.w"
 
 print_prefix_name(r);
-#line 662 "cwebdir/comm-w2c.ch"
+#line 699 "cwebdir/comm-w2c.ch"
 fputs(_(">,\n which abbreviates <"),stdout);
 #line 996 "cwebdir/common.w"
 print_section_name(r);
@@ -1239,7 +1229,7 @@
 /*:49*//*54:*/
 #line 1020 "cwebdir/common.w"
 
-#line 677 "cwebdir/comm-w2c.ch"
+#line 714 "cwebdir/comm-w2c.ch"
 static int section_name_cmp(
 char**pfirst,
 int len,
@@ -1258,7 +1248,7 @@
 switch(c= web_strcmp(first,len,s,ss-s)){
 case equal:if(q==name_dir)
 if(ispref){
-#line 686 "cwebdir/comm-w2c.ch"
+#line 723 "cwebdir/comm-w2c.ch"
 *pfirst= first+(ptrdiff_t)(ss-s);
 #line 1039 "cwebdir/common.w"
 return extension;
@@ -1267,7 +1257,7 @@
 case extension:
 if(!ispref)return bad_extension;
 first+= ss-s;
-#line 692 "cwebdir/comm-w2c.ch"
+#line 729 "cwebdir/comm-w2c.ch"
 if(q!=name_dir){len-= (int)(ss-s);s= q->byte_start;r= q;continue;}
 #line 1046 "cwebdir/common.w"
 *pfirst= first;return extension;
@@ -1279,7 +1269,7 @@
 /*:54*//*58:*/
 #line 1095 "cwebdir/common.w"
 
-#line 718 "cwebdir/comm-w2c.ch"
+#line 755 "cwebdir/comm-w2c.ch"
 void
 err_print(
 const char*s)
@@ -1291,7 +1281,7 @@
 #line 1115 "cwebdir/common.w"
 
 {if(changing&&include_depth==change_depth)
-#line 728 "cwebdir/comm-w2c.ch"
+#line 765 "cwebdir/comm-w2c.ch"
 printf(_(". (l. %d of change file)\n"),change_line);
 else if(include_depth==0)printf(_(". (l. %d)\n"),cur_line);
 else printf(_(". (l. %d of include file %s)\n"),cur_line,cur_file_name);
@@ -1318,18 +1308,18 @@
 /*:58*//*61:*/
 #line 1150 "cwebdir/common.w"
 
-#line 767 "cwebdir/comm-w2c.ch"
+#line 804 "cwebdir/comm-w2c.ch"
 int wrap_up(void){
 if(show_progress)new_line;
 #line 1153 "cwebdir/common.w"
 if(show_stats)
 print_stats();
-#line 774 "cwebdir/comm-w2c.ch"
+#line 811 "cwebdir/comm-w2c.ch"
 /*62:*/
 #line 1160 "cwebdir/common.w"
 
 switch(history){
-#line 798 "cwebdir/comm-w2c.ch"
+#line 835 "cwebdir/comm-w2c.ch"
 case spotless:
 if(show_happiness)puts(_("(No errors were found.)"));break;
 case harmless_message:
@@ -1342,10 +1332,10 @@
 }
 
 /*:62*/
-#line 774 "cwebdir/comm-w2c.ch"
+#line 811 "cwebdir/comm-w2c.ch"
 
 /*87:*/
-#line 1191 "cwebdir/comm-w2c.ch"
+#line 1235 "cwebdir/comm-w2c.ch"
 
 if(C_file)fclose(C_file);
 if(tex_file)fclose(tex_file);
@@ -1354,9 +1344,9 @@
 remove(check_file_name);
 
 /*:87*/
-#line 775 "cwebdir/comm-w2c.ch"
+#line 812 "cwebdir/comm-w2c.ch"
 
-#line 782 "cwebdir/comm-w2c.ch"
+#line 819 "cwebdir/comm-w2c.ch"
 switch(history){
 case harmless_message:return RETURN_WARN;
 case error_message:return RETURN_ERROR;
@@ -1367,13 +1357,13 @@
 }
 
 /*:61*//*64:*/
-#line 820 "cwebdir/comm-w2c.ch"
+#line 857 "cwebdir/comm-w2c.ch"
 void
 fatal(
 const char*s,const char*t)
 #line 1182 "cwebdir/common.w"
 {
-#line 828 "cwebdir/comm-w2c.ch"
+#line 865 "cwebdir/comm-w2c.ch"
 if(*s)fputs(s,stdout);
 #line 1184 "cwebdir/common.w"
 err_print(t);
@@ -1381,13 +1371,13 @@
 }
 
 /*:64*//*65:*/
-#line 836 "cwebdir/comm-w2c.ch"
+#line 873 "cwebdir/comm-w2c.ch"
 void
 overflow(
 const char*t)
 #line 1193 "cwebdir/common.w"
 {
-#line 844 "cwebdir/comm-w2c.ch"
+#line 881 "cwebdir/comm-w2c.ch"
 printf(_("\n! Sorry, %s capacity exceeded"),t);fatal("","");
 #line 1195 "cwebdir/common.w"
 }
@@ -1396,7 +1386,7 @@
 /*:65*//*70:*/
 #line 1254 "cwebdir/common.w"
 
-#line 898 "cwebdir/comm-w2c.ch"
+#line 945 "cwebdir/comm-w2c.ch"
 static void
 scan_args(void)
 #line 1257 "cwebdir/common.w"
@@ -1408,7 +1398,7 @@
 
 #line 1264 "cwebdir/common.w"
 
-#line 910 "cwebdir/comm-w2c.ch"
+#line 957 "cwebdir/comm-w2c.ch"
 
 #if defined DEV_NULL
 strncpy(change_file_name,DEV_NULL,max_file_name_length-2);
@@ -1423,13 +1413,13 @@
 while(--argc> 0){
 #line 1266 "cwebdir/common.w"
 if((**(++argv)=='-'||**argv=='+')&&*(*argv+1))/*74:*/
-#line 988 "cwebdir/comm-w2c.ch"
+#line 1035 "cwebdir/comm-w2c.ch"
 
 {
 if(strcmp("-help",*argv)==0||strcmp("--help",*argv)==0)
 
 /*94:*/
-#line 1336 "cwebdir/comm-w2c.ch"
+#line 1380 "cwebdir/comm-w2c.ch"
 
 cb_usagehelp(program==ctangle?CTANGLEHELP:
 program==cweave?CWEAVEHELP:CTWILLHELP,NULL);
@@ -1436,12 +1426,12 @@
 
 
 /*:94*/
-#line 992 "cwebdir/comm-w2c.ch"
+#line 1039 "cwebdir/comm-w2c.ch"
 
 if(strcmp("-version",*argv)==0||strcmp("--version",*argv)==0)
 
 /*96:*/
-#line 1378 "cwebdir/comm-w2c.ch"
+#line 1422 "cwebdir/comm-w2c.ch"
 
 printversionandexit(cb_banner,
 program==ctwill?"Donald E. Knuth":"Silvio Levy and Donald E. Knuth",
@@ -1449,7 +1439,7 @@
 
 
 /*:96*/
-#line 995 "cwebdir/comm-w2c.ch"
+#line 1042 "cwebdir/comm-w2c.ch"
 
 if(strcmp("-verbose",*argv)==0||strcmp("--verbose",*argv)==0)
 
@@ -1468,14 +1458,14 @@
 if(sscanf(++dot_pos,"%u",&kpathsea_debug)!=1)/*75:*/
 #line 1352 "cwebdir/common.w"
 
-#line 1038 "cwebdir/comm-w2c.ch"
+#line 1085 "cwebdir/comm-w2c.ch"
 cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill");
 
 #line 1363 "cwebdir/common.w"
 
-#line 1045 "cwebdir/comm-w2c.ch"
+#line 1092 "cwebdir/comm-w2c.ch"
 /*:75*/
-#line 1010 "cwebdir/comm-w2c.ch"
+#line 1057 "cwebdir/comm-w2c.ch"
 
 while(isdigit(*dot_pos))dot_pos++;
 dot_pos--;
@@ -1484,7 +1474,7 @@
 use_language= ++dot_pos;
 break;
 }else
-#line 1023 "cwebdir/comm-w2c.ch"
+#line 1070 "cwebdir/comm-w2c.ch"
  flags[(eight_bits)*dot_pos]= flag_change;
 #line 1350 "cwebdir/common.w"
 }
@@ -1494,7 +1484,7 @@
 
 else{
 s= name_pos= *argv;dot_pos= NULL;
-#line 931 "cwebdir/comm-w2c.ch"
+#line 978 "cwebdir/comm-w2c.ch"
 while(*s){
 if(*s=='.')dot_pos= s++;
 else if(*s==DIR_SEPARATOR||*s==DEVICE_SEPARATOR||*s=='/')
@@ -1509,7 +1499,7 @@
 {
 if(s-*argv> max_file_name_length-5)
 /*76:*/
-#line 1045 "cwebdir/comm-w2c.ch"
+#line 1092 "cwebdir/comm-w2c.ch"
 fatal(_("! Filename too long\n"),*argv);
 #line 1365 "cwebdir/common.w"
 
@@ -1538,12 +1528,12 @@
 #line 1310 "cwebdir/common.w"
 
 {
-#line 963 "cwebdir/comm-w2c.ch"
+#line 1010 "cwebdir/comm-w2c.ch"
 if(strcmp(*argv,"-")!=0){
 #line 1314 "cwebdir/common.w"
 if(s-*argv> max_file_name_length-4)
 /*76:*/
-#line 1045 "cwebdir/comm-w2c.ch"
+#line 1092 "cwebdir/comm-w2c.ch"
 fatal(_("! Filename too long\n"),*argv);
 #line 1365 "cwebdir/common.w"
 
@@ -1554,7 +1544,7 @@
 if(dot_pos==NULL)
 sprintf(change_file_name,"%s.ch",*argv);
 else strcpy(change_file_name,*argv);
-#line 970 "cwebdir/comm-w2c.ch"
+#line 1017 "cwebdir/comm-w2c.ch"
 }
 found_change= 1;
 #line 1321 "cwebdir/common.w"
@@ -1569,7 +1559,7 @@
 {
 if(s-*argv> max_file_name_length-5)
 /*76:*/
-#line 1045 "cwebdir/comm-w2c.ch"
+#line 1092 "cwebdir/comm-w2c.ch"
 fatal(_("! Filename too long\n"),*argv);
 #line 1365 "cwebdir/common.w"
 
@@ -1585,7 +1575,7 @@
 }else{
 strcpy(tex_file_name,*argv);
 strcpy(C_file_name,*argv);
-#line 977 "cwebdir/comm-w2c.ch"
+#line 1024 "cwebdir/comm-w2c.ch"
 if(make_xrefs){
 #line 1336 "cwebdir/common.w"
 *dot_pos= 0;
@@ -1596,7 +1586,7 @@
 found_out= 1;
 }
 
-#line 987 "cwebdir/comm-w2c.ch"
+#line 1034 "cwebdir/comm-w2c.ch"
 /*:73*/
 #line 1277 "cwebdir/common.w"
 
@@ -1603,12 +1593,12 @@
 else/*75:*/
 #line 1352 "cwebdir/common.w"
 
-#line 1038 "cwebdir/comm-w2c.ch"
+#line 1085 "cwebdir/comm-w2c.ch"
  cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill");
 
 #line 1363 "cwebdir/common.w"
 
-#line 1045 "cwebdir/comm-w2c.ch"
+#line 1092 "cwebdir/comm-w2c.ch"
 /*:75*/
 #line 1278 "cwebdir/common.w"
 ;
@@ -1617,12 +1607,12 @@
 if(!found_web)/*75:*/
 #line 1352 "cwebdir/common.w"
 
-#line 1038 "cwebdir/comm-w2c.ch"
+#line 1085 "cwebdir/comm-w2c.ch"
 cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill");
 
 #line 1363 "cwebdir/common.w"
 
-#line 1045 "cwebdir/comm-w2c.ch"
+#line 1092 "cwebdir/comm-w2c.ch"
 /*:75*/
 #line 1281 "cwebdir/common.w"
 ;
@@ -1629,9 +1619,9 @@
 #line 1283 "cwebdir/common.w"
 }
 
-#line 950 "cwebdir/comm-w2c.ch"
+#line 997 "cwebdir/comm-w2c.ch"
 /*:70*//*95:*/
-#line 1344 "cwebdir/comm-w2c.ch"
+#line 1388 "cwebdir/comm-w2c.ch"
 
 static void cb_usage(const_string str)
 {
@@ -1664,7 +1654,7 @@
 }
 
 /*:95*//*97:*/
-#line 1386 "cwebdir/comm-w2c.ch"
+#line 1430 "cwebdir/comm-w2c.ch"
 
 void cb_show_banner(void)
 {

Deleted: branches/stable/source/src/texk/web2c/cwebboot.hin
===================================================================
--- branches/stable/source/src/texk/web2c/cwebboot.hin	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebboot.hin	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,65 +0,0 @@
-/*84:*/
-#line 786 "cwebdir/comm-w2c.ch"
-
-/* Prototypes for functions, either
- * declared in common.w and used in ctangle.w and cweave.w, or
- * used in common.w and declared in ctangle.w and cweave.w.  */
-/*35:*/
-#line 344 "cwebdir/comm-w2c.ch"
-
-extern int names_match(name_pointer,const char*,int,char);
-#line 652 "cwebdir/common.w"
-
-/*:35*//*40:*/
-#line 402 "cwebdir/comm-w2c.ch"
-
-extern void init_p(name_pointer p,char t);
-#line 705 "cwebdir/common.w"
-
-/*:40*//*48:*/
-#line 468 "cwebdir/comm-w2c.ch"
-
-extern void init_node(name_pointer node);
-#line 854 "cwebdir/common.w"
-
-/*:48*//*59:*/
-#line 539 "cwebdir/comm-w2c.ch"
-
-extern void err_print(const char*);
-#line 1094 "cwebdir/common.w"
-
-/*:59*//*62:*/
-#line 559 "cwebdir/comm-w2c.ch"
-
-extern int wrap_up(void);
-extern void print_stats(void);
-#line 1143 "cwebdir/common.w"
-
-/*:62*//*65:*/
-#line 578 "cwebdir/comm-w2c.ch"
-
-extern void fatal(const char*,const char*);
-extern void overflow(const char*);
-#line 1175 "cwebdir/common.w"
-
-/*:65*//*83:*/
-#line 767 "cwebdir/comm-w2c.ch"
-
-extern void common_init(void);
-extern int input_ln(FILE*fp);
-extern void reset_input(void);
-extern int get_line(void);
-extern void check_complete(void);
-extern name_pointer id_lookup(const char*first,const char*last,char t);
-extern void print_section_name(name_pointer p);
-extern void sprint_section_name(char*dest,name_pointer p);
-extern name_pointer section_lookup(char*first,char*last,int ispref);
-#line 1417 "cwebdir/common.w"
-
-#line 782 "cwebdir/comm-w2c.ch"
-/*:83*/
-#line 790 "cwebdir/comm-w2c.ch"
-
-extern const char*versionstring;
-
-/*:84*/

Modified: branches/stable/source/src/texk/web2c/cwebdir/ChangeLog
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,3 +1,62 @@
+2020-05-07  Andreas Scherer  <https://ascherer.github.io>
+
+	* texinputs/Xcwebmac.tex: Amend macros from knuth.drv (n
+	github.com/oberdiek/latex-tds) to move table-of-contents
+	up front in PDF output (on second TeX run).
+
+2020-04-30  Andreas Scherer  <https://ascherer.github.io>
+
+	* comm-w2c.ch: Clarify §95 and fix missing type format.
+
+2020-04-29  Andreas Scherer  <https://ascherer.github.io>
+
+	* comm-w2c.ch: Purge irrelevant mention of .web extension.
+
+2020-04-28  Andreas Scherer  <https://ascherer.github.io>
+
+	* comm-w2c.ch: Purge standard headers already in KPathSea.
+
+2020-04-27  Andreas Scherer  <https://ascherer.github.io>
+
+	* comm-w2c.ch,
+	* comm-w2c.h: Use enum'erated program identifiers.
+	Reshuffle typedef's to fix formatting in §7 of COMMON.
+
+2020-04-16  Andreas Scherer  <https://ascherer.github.io>
+
+	* cweav-w2c.ch,
+	* ctwill-w2c.ch: Fix missing hyphen.
+
+2020-04-14  Andreas Scherer  <https://ascherer.github.io>
+
+	* cweav-w2c.ch,
+	* ctwill-w2c.ch: Fix uppercase spelling for COMMON module.
+
+2020-04-13  Andreas Scherer  <https://ascherer.github.io>
+
+	* ctwill-w2c.ch: Print CTWILL user manual on two pages.
+
+2020-04-13  Andreas Scherer  <https://ascherer.github.io>
+
+	* cweav-w2c.ch,
+	* ctwill-w2c.ch: Move reference to global variable 'use_language'
+	from 'main' to section 'Extensions'.
+
+2020-04-13  Andreas Scherer  <https://ascherer.github.io>
+
+	* comm-w2c.h: Add comment for section 6 in CWEB programs.
+
+2020-04-11  Andreas Scherer  <https://ascherer.github.io>
+
+	* comm-w2c.ch, comm-w2c.h: Rearrange 'common variables'.
+
+2020-03-30  Andreas Scherer  <https://ascherer.github.io>
+
+	* comm-w2c.ch, comm-w2c.h, ctang-w2c.ch, ctwill-w2c.ch, cweav-w2c.ch,
+	* po/de/cweb.po, po/de/web2c-help.po,
+	* po/it/cweb.po,
+	* po/web2c-help.pot: Add new option '-t'.
+
 2020-02-01  Andreas Scherer  <https://ascherer.github.io>
 
 	* ctang-w2c.ch: Fix verbosity bug in ctangle.

Modified: branches/stable/source/src/texk/web2c/cwebdir/comm-w2c.ch
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/comm-w2c.ch	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/comm-w2c.ch	2020-05-15 18:03:05 UTC (rev 825)
@@ -43,17 +43,22 @@
 @d cweave 1
 @y
 |program|. And \.{CTWILL} adds some extra twists.
+ at z
 
- at d ctangle 0
- at d cweave 1
- at d ctwill 2
+ at x
+typedef short boolean;
+ at y
+typedef uint8_t eight_bits;
+typedef uint16_t sixteen_bits;
 @z
 
 @x
-typedef short boolean;
 boolean program; /* \.{CWEAVE} or \.{CTANGLE}? */
 @y
-int program; /* \.{CWEAVE} or \.{CTANGLE} or \.{CTWILL}? */
+typedef enum {
+  ctangle, cweave, ctwill
+} cweb;
+cweb program; /* \.{CTANGLE} or \.{CWEAVE} or \.{CTWILL}? */
 @z
 
 @x
@@ -77,6 +82,15 @@
 @z
 
 @x
+\.{ctype.h} header file.
+
+@<Include files@>=
+#include <ctype.h>
+ at y
+\.{ctype.h} header file, included through the \Kpathsea/ interface.
+ at z
+
+ at x
 @d not_eq 032 /* `\.{!=}'\,;  corresponds to MIT's {\tentex\char'32} */
 @y
 @d non_eq 032 /* `\.{!=}'\,;  corresponds to MIT's {\tentex\char'32} */
@@ -83,6 +97,18 @@
 @z
 
 @x
+ at d minus_gt_ast 027 /* `\.{->*}'\,;  corresponds to MIT's {\tentex\char'27} */
+ at y
+ at d minus_gt_ast 027 /* `\.{->*}'\,;  corresponds to MIT's {\tentex\char'27} */
+
+@<Definitions...@>=
+char section_text[longest_name+1]; /* name being sought for */
+char *section_text_end = section_text+longest_name; /* end of |section_text| */
+char *id_first; /* where the current identifier begins in the buffer */
+char *id_loc; /* just after the current identifier in the buffer */
+ at z
+
+ at x
 @d buf_size 100 /* for \.{CWEAVE} and \.{CTANGLE} */
 @y
 @d buf_size 1000 /* for \.{CWEAVE} and \.{CTANGLE} */
@@ -97,6 +123,13 @@
 @z
 
 @x
+@ @<Include files@>=
+#include <stdio.h>
+ at y
+@ Most of the standard \CEE/ interface comes from \Kpathsea/.
+ at z
+
+ at x
 int input_ln(fp) /* copies a line into |buffer| or returns 0 */
 FILE *fp; /* what file to read from */
 @y
@@ -261,8 +294,6 @@
 @x
 typedef unsigned short sixteen_bits;
 @y
-typedef uint8_t eight_bits;
-typedef uint16_t sixteen_bits;
 @z
 
 @x
@@ -311,6 +342,12 @@
 @z
 
 @x
+@<Include...@>=
+#include <stdlib.h> /* declaration of |getenv| and |exit| */
+ at y
+ at z
+
+ at x
   char temp_file_name[max_file_name_length];
   char *cur_file_name_end=cur_file_name+max_file_name_length-1;
   char *k=cur_file_name, *kk;
@@ -854,6 +891,7 @@
 @d show_happiness flags['h'] /* should lack of errors be announced? */
 @y
 @d show_happiness flags['h'] /* should lack of errors be announced? */
+ at d temporary_output flags['t'] /* should temporary output take precedence? */
 @d make_xrefs flags['x'] /* should cross references be output? */
 @z
 
@@ -874,9 +912,18 @@
 @x
 show_banner=show_happiness=show_progress=1;
 @y
+temporary_output=1; /* Check temporary output for changes */
 @z
 
 @x
+file.  It may have an extension, or it may omit the extension to get |".w"| or
+|".web"| added.  The \TEX/ output file name is formed by replacing the \.{CWEB}
+ at y
+file.  It may have an extension, or it may omit the extension to get |".w"|
+added.  The \TEX/ output file name is formed by replacing the \.{CWEB}
+ at z
+
+ at x
 An omitted change file argument means that |"/dev/null"| should be used,
 when no changes are desired.
 @y
@@ -1110,13 +1157,10 @@
 extern int strncmp(); /* compare up to $n$ string characters */
 extern char* strncpy(); /* copy up to $n$ string characters */
 @y
-@ For string handling we include the {\mc ANSI C} system header file instead
-of predeclaring the standard system functions |strlen|, |strcmp|, |strcpy|,
-|strncmp|, and |strncpy|.
+@ For string handling we include the {\mc ANSI C} system header file---through
+the \Kpathsea/ interface---instead of predeclaring the standard system
+functions |strlen|, |strcmp|, |strcpy|, |strncmp|, and |strncpy|.
 @^system dependencies@>
-
-@<Include...@>=
-#include <string.h>
 @z
 
 @x
@@ -1134,7 +1178,7 @@
 additional material follows below.
 
 @* Function declarations. Here are declarations---conforming to
-{\mc ANSI~C}---of all functions in this code that appear in |"common.h"|
+{\mc ANSI~C}---of all functions in this code that appear in \.{common.h}
 and thus should agree with \.{CTANGLE} and \.{CWEAVE}.
 
 @<Predecl...@>=
@@ -1148,7 +1192,7 @@
 void reset_input(void);@/
 void sprint_section_name(char *,name_pointer);@/
 
-@ The following functions are private to |"common.w"|.
+@ The following functions are private to \.{common.w}.
 
 @<Predecl...@>=
 static boolean input_ln(FILE *);@/
@@ -1159,12 +1203,12 @@
 static void prime_the_change_buffer(void);@/
 
 @* Standard C library interfaces.  This updated version of \.{CWEB} uses
-standard C types for boolean values, pointers, and objects with fixed sizes.
+standard C types for boolean values, pointers, and objects with fixed sizes
+(already in \Kpathsea/).
 
 @<Include files@>=
 #include <stdbool.h> /* type definition of |bool| */
 #include <stddef.h> /* type definition of |ptrdiff_t| */
-#include <stdint.h> /* type definition of |uint8_t| et al. */
 
 @ The |scan_args| and |cb_show_banner| routines and the |bindtextdomain|
 argument string need a few extra variables.
@@ -1238,7 +1282,7 @@
 does \\{not} set |HAVE_GETTEXT| at build-time, so \.{i18n} is ``off'' by
 default.  If you want to create \.{CWEB} executables with NLS support, you
 have to recompile the \TeX~Live sources with a positive value for
-|HAVE_GETTEXT| both in \.{"comm-w2c.ch"} and \.{"comm-w2c.h"}.  Also you
+|HAVE_GETTEXT| both in \.{comm-w2c.ch} and \.{comm-w2c.h}.  Also you
 have to ``compile'' the NLS catalogs provided for \.{CWEB} in the source
 tree with \.{msgfmt} and store the resulting \.{.mo} files at an appropriate
 place in the file system.
@@ -1312,7 +1356,7 @@
 kpse_set_program_name(argv[0], "cweb");
 
 @ When the files you expect are not found, the thing to do is to enable
-`kpathsea' runtime debugging by assigning to the |kpathsea_debug| variable a
+\Kpathsea/ runtime debugging by assigning to the |kpathsea_debug| variable a
 small number via the `\.{-d}' option. The meaning of this number is shown
 below. To set more than one debugging option, simply sum the corresponding
 numbers.
@@ -1338,9 +1382,9 @@
   program==cweave ? CWEAVEHELP : CTWILLHELP, NULL);
 @.--help@>
 
-@ Special variants from \Kpathsea/ for i18n/t10n.
+@ Special variants from Web2c's `\.{lib/usage.c}', adapted for \.{i18n}/\.{t10n}.
 We simply filter the strings through the catalogs (if available).
-
+ at s const_string int
 @c
 static void cb_usage (const_string str)
 {

Modified: branches/stable/source/src/texk/web2c/cwebdir/comm-w2c.h
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/comm-w2c.h	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/comm-w2c.h	2020-05-15 18:03:05 UTC (rev 825)
@@ -26,9 +26,6 @@
 
 First comes general stuff:
 
- at d ctangle 0
- at d cweave 1
- at d ctwill 2
 
 @s boolean int
 @s uint8_t int
@@ -38,10 +35,20 @@
 typedef bool boolean;
 typedef uint8_t eight_bits;
 typedef uint16_t sixteen_bits;
-extern int program; /* \.{CWEAVE} or \.{CTANGLE} or \.{CTWILL}? */
+typedef enum {
+  ctangle, cweave, ctwill
+} cweb;
+extern cweb program; /* \.{CTANGLE} or \.{CWEAVE} or \.{CTWILL}? */
 extern int phase; /* which phase are we in? */
 
-@ @d _(STRING) gettext(STRING)
+@ You may have noticed that almost all \.{"strings"} in the \.{CWEB} sources
+are placed in the context of the `|_|'~macro.  This is just a shortcut for the
+`|gettext|' function from the ``GNU~gettext utilities.'' For systems that do
+not have this library installed, we wrap things for neutral behavior without
+internationalization.
+
+ at d _(STRING) gettext(STRING)
+
 @<Include files@>=
 #ifndef HAVE_GETTEXT
 #define HAVE_GETTEXT 0
@@ -77,10 +84,10 @@
 @d minus_gt_ast 027 /* `\.{->*}'\,;  corresponds to MIT's {\tentex\char'27} */
 
 @<Common code...@>=
-char section_text[longest_name+1]; /* name being sought for */
-char *section_text_end = section_text+longest_name; /* end of |section_text| */
-char *id_first; /* where the current identifier begins in the buffer */
-char *id_loc; /* just after the current identifier in the buffer */
+extern char section_text[]; /* name being sought for */
+extern char *section_text_end; /* end of |section_text| */
+extern char *id_first; /* where the current identifier begins in the buffer */
+extern char *id_loc; /* just after the current identifier in the buffer */
 
 @ Code related to input routines:
 
@@ -195,6 +202,7 @@
 @d show_banner flags['b'] /* should the banner line be printed? */
 @d show_progress flags['p'] /* should progress reports be printed? */
 @d show_happiness flags['h'] /* should lack of errors be announced? */
+ at d temporary_output flags['t'] /* should temporary output take precedence? */
 @d make_xrefs flags['x'] /* should cross references be output? */
 
 @<Common code...@>=

Modified: branches/stable/source/src/texk/web2c/cwebdir/ctang-w2c.ch
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/ctang-w2c.ch	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/ctang-w2c.ch	2020-05-15 18:03:05 UTC (rev 825)
@@ -778,13 +778,13 @@
 
 @ @<Set up the comparison of temporary output@>=
   char x[BUFSIZ],y[BUFSIZ];
-  int x_size,y_size,comparison;
+  int x_size,y_size,comparison=false;
 
   if((check_file=fopen(check_file_name,"r"))==NULL)
     fatal(_("! Cannot open output file "),check_file_name);
 @.Cannot open output file@>
 
-  @<Compare the temporary output to the previous output@>@;
+  if (temporary_output) @<Compare the temporary output...@>@;
 
   fclose(C_file); C_file=NULL;
   fclose(check_file); check_file=NULL;
@@ -791,7 +791,7 @@
 
 @ We hope that this runs fast on most systems.
 
-@<Compare the temp...@>=
+@<Compare the temporary output to the previous output@>=
 do {
   x_size = fread(x,1,BUFSIZ,C_file);
   y_size = fread(y,1,BUFSIZ,check_file);

Modified: branches/stable/source/src/texk/web2c/cwebdir/ctwill-w2c.ch
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/ctwill-w2c.ch	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/ctwill-w2c.ch	2020-05-15 18:03:05 UTC (rev 825)
@@ -246,8 +246,6 @@
 $$\.{@@\$printf "<stdio.h>" \\zip@@>}$$
 will generate a mini-index entry like `\\{printf}, \.{<stdio.h>}.'.
 
-\vfill\eject
-
 A special ``proofmode'' is provided so that you can check \.{CTWILL}'s
 conclusions about cross-references. Run \.{CTWILL} with the
 flag \.{+P}, and \TeX\ will produce a specially formatted document
@@ -292,13 +290,6 @@
 @z
 
 @x
-  argc=ac; argv=av;
- at y
-  extern const char *use_language; /* prefix to \.{cwebmac.tex} in \TEX/ output */
-  argc=ac; argv=av;
- at z
-
- at x
   program=cweave;
 @y
   program=ctwill;
@@ -3152,6 +3143,12 @@
 static void squash(scrap_pointer,short,eight_bits,short,short);@/
 static void update_node(name_pointer p);@/
 
+@* Language setting.  This global variable is defined and set in \.{COMMON} by
+the `\.{+l}' (or `\.{-l}') command-line option.
+
+@<Global var...@>=
+extern const char *use_language; /* prefix to \.{cwebmac.tex} in \TEX/ output */
+
 @* Output file update.  Most \CEE/ projects are controlled by a
 \.{Makefile} that automatically takes care of the temporal dependecies
 between the different source modules.  It is suitable that \.{CWEB} doesn't
@@ -3163,13 +3160,13 @@
 @<Update the result...@>=
 if((tex_file=fopen(tex_file_name,"r"))!=NULL) {
   char x[BUFSIZ],y[BUFSIZ];
-  int x_size,y_size,comparison;
+  int x_size,y_size,comparison=false;
 
   if((check_file=fopen(check_file_name,"r"))==NULL)
     fatal(_("! Cannot open output file "),check_file_name);
 @.Cannot open output file@>
 
-  @<Compare the temporary output to the previous output@>@;
+  if (temporary_output) @<Compare the temporary output...@>@;
 
   fclose(tex_file); tex_file=NULL;
   fclose(check_file); check_file=NULL;
@@ -3182,7 +3179,7 @@
 
 @ We hope that this runs fast on most systems.
 
-@<Compare the temp...@>=
+@<Compare the temporary output to the previous output@>=
 do {
   x_size = fread(x,1,BUFSIZ,tex_file);
   y_size = fread(y,1,BUFSIZ,check_file);

Modified: branches/stable/source/src/texk/web2c/cwebdir/cweav-w2c.ch
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/cweav-w2c.ch	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/cweav-w2c.ch	2020-05-15 18:03:05 UTC (rev 825)
@@ -72,13 +72,6 @@
 @z
 
 @x
-  argc=ac; argv=av;
- at y
-  extern const char *use_language; /* prefix to \.{cwebmac.tex} in \TEX/ output */
-  argc=ac; argv=av;
- at z
-
- at x
   make_xrefs=force_lines=make_pb=1; /* controlled by command-line options */
   common_init();
   @<Set initial values@>;
@@ -1915,6 +1908,12 @@
 static void squash(scrap_pointer,short,eight_bits,short,short);@/
 static void update_node(name_pointer p);@/
 
+@* Language setting.  This global variable is defined and set in \.{COMMON} by
+the `\.{+l}' (or `\.{-l}') command-line option.
+
+@<Global var...@>=
+extern const char *use_language; /* prefix to \.{cwebmac.tex} in \TEX/ output */
+
 @* Output file update.  Most \CEE/ projects are controlled by a
 \.{Makefile} that automatically takes care of the temporal dependecies
 between the different source modules.  It is suitable that \.{CWEB} doesn't
@@ -1926,13 +1925,13 @@
 @<Update the result...@>=
 if((tex_file=fopen(tex_file_name,"r"))!=NULL) {
   char x[BUFSIZ],y[BUFSIZ];
-  int x_size,y_size,comparison;
+  int x_size,y_size,comparison=false;
 
   if((check_file=fopen(check_file_name,"r"))==NULL)
     fatal(_("! Cannot open output file "),check_file_name);
 @.Cannot open output file@>
 
-  @<Compare the temporary output to the previous output@>@;
+  if (temporary_output) @<Compare the temporary output...@>@;
 
   fclose(tex_file); tex_file=NULL;
   fclose(check_file); check_file=NULL;
@@ -1945,7 +1944,7 @@
 
 @ We hope that this runs fast on most systems.
 
-@<Compare the temp...@>=
+@<Compare the temporary output to the previous output@>=
 do {
   x_size = fread(x,1,BUFSIZ,tex_file);
   y_size = fread(y,1,BUFSIZ,check_file);

Modified: branches/stable/source/src/texk/web2c/cwebdir/po/de/cweb.po
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/po/de/cweb.po	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/po/de/cweb.po	2020-05-15 18:03:05 UTC (rev 825)
@@ -425,6 +425,7 @@
 "h [+] Bestätige einen fehlerfreien Lauf\n"
 "p [+] Zeige einen Zwischenbericht\n"
 "s [-] Melde die Verbrauchsstatistik\n"
+"t [+] Vergleiche temporäre Ausgabe nach Änderungen\n"
 
 #: comm-i18n.ch:287
 msgid ""
@@ -442,6 +443,7 @@
 "x [+] Füge Indexe und Inhaltsverzeichnisse ein\n"
 "lX [] Verwende die Makros für Sprache X aus Xcwebmac.tex\n"
 "s [-] Melde die Verbrauchsstatistik\n"
+"t [+] Vergleiche temporäre Ausgabe nach Änderungen\n"
 
 #: comm-i18n.ch:290
 msgid ""
@@ -460,6 +462,7 @@
 "P [-] Benutze 'proofmac.tex' statt 'ctwimac.tex'\n"
 "lX [] Verwende die Makros für Sprache X aus X{ctwimac|proofmac}.tex\n"
 "s [-] Melde die Verbrauchsstatistik\n"
+"t [+] Vergleiche temporäre Ausgabe nach Änderungen\n"
 
 #: ctang-i18n.ch:131 cweav-i18n.ch:53 cweav-i18n.ch:119
 msgid "! Use @l in limbo only"

Modified: branches/stable/source/src/texk/web2c/cwebdir/po/de/web2c-help.po
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/po/de/web2c-help.po	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/po/de/web2c-help.po	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,14 +1,14 @@
 # International version of CWEB (CWEBbin, TeXLive).
-# Copyright (C) 2018 Andreas Scherer et al.
+# Copyright (C) 2020 Andreas Scherer et al.
 # This file is distributed under the same license as the CWEB package.
-# Andreas Scherer <https://ascherer.github.io>, 2018.
+# Andreas Scherer <https://ascherer.github.io>, 2020.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: CWEBbin 2018\n"
+"Project-Id-Version: CWEBbin 2020\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-01-19 23:24+0100\n"
-"PO-Revision-Date: 2019-01-19 23:24+0100\n"
+"POT-Creation-Date: 2020-03-30 12:09+0100\n"
+"PO-Revision-Date: 2020-03-30 12:09+0100\n"
 "Last-Translator: Andreas Scherer <andreas_github at freenet.de>\n"
 "Language-Team: German\n"
 "Language: de\n"
@@ -25,7 +25,7 @@
 msgid "  Tangle WEBFILE with CHANGEFILE into a C/C++ program."
 msgstr "  Verknüpfe WEBFILE mit CHANGEFILE in ein C/C++ Programm."
 
-#: help.h:54 help.h:73 help.h:98
+#: help.h:54 help.h:74 help.h:100
 msgid "  Default CHANGEFILE is /dev/null;"
 msgstr "  Vorgabe für CHANGEFILE ist /dev/null;"
 
@@ -33,94 +33,98 @@
 msgid "  C output goes to the basename of WEBFILE extended with `.c'"
 msgstr "  C Ausgabe geht in den Hauptnamen des WEBFILE erweitert um `.c',"
 
-#: help.h:56 help.h:75 help.h:100
+#: help.h:56 help.h:76 help.h:102
 msgid "  unless otherwise specified by OUTFILE; in this case, '-' specifies"
 msgstr "  sofern nicht ein anderes OUTFILE angegeben ist; in diesem Fall"
 
-#: help.h:57 help.h:76 help.h:101
+#: help.h:57 help.h:77 help.h:103
 msgid "  a null CHANGEFILE."
 msgstr "  bezeichnet '-' ein leeres CHANGEFILE."
 
-#: help.h:59 help.h:78 help.h:103
+#: help.h:59 help.h:79 help.h:105
 msgid "+b          print banner line on terminal"
 msgstr "+b          schreibe die Startmeldung"
 
-#: help.h:60 help.h:79 help.h:104
+#: help.h:60 help.h:80 help.h:106
 msgid "+h          print success message on completion"
 msgstr "+h          schreibe die Erfolgsmeldung am Ende"
 
-#: help.h:61 help.h:80 help.h:105
+#: help.h:61 help.h:81 help.h:107
 msgid "+p          print progress report messages"
 msgstr "+p          schreibe die Fortschrittsmeldungen"
 
-#: help.h:62 help.h:81 help.h:106
+#: help.h:62 help.h:82 help.h:108
 msgid "+/-q        shortcut for '-bhp'; also '--quiet' (default)"
 msgstr "+/-q        Kurzform für '-bhp'; auch '--quiet' (Vorgabe)"
 
-#: help.h:63 help.h:82 help.h:107
+#: help.h:63 help.h:83 help.h:109
 msgid "+/-v        shortcut for '+bhp'; also '--verbose'"
 msgstr "+/-v        Kurzform für '+bhp'; auch '--verbose'"
 
-#: help.h:64 help.h:89 help.h:115
+#: help.h:64 help.h:90 help.h:117
 msgid "+s          print usage statistics"
 msgstr "+s          melde die Verbrauchsstatistik"
 
-#: help.h:65 help.h:90 help.h:116
+#: help.h:65 help.h:91 help.h:118
+msgid "-t          ignore temporary output irrespective of changes"
+msgstr "-t          ignoriere temporäre Ausgabe unabhängig von Änderungen"
+
+#: help.h:65 help.h:91 help.h:118
 msgid "--help      display this help and exit"
 msgstr "--help      zeige diesen Hilfetext und ende"
 
-#: help.h:66 help.h:91 help.h:117
+#: help.h:66 help.h:92 help.h:119
 msgid "--version   output version information and exit"
 msgstr "--version   zeige die Versionsinformation und ende"
 
-#: help.h:71
+#: help.h:72
 msgid "Usage: cweave [OPTIONS] WEBFILE[.w] [{CHANGEFILE[.ch]|-} [OUTFILE[.tex]]]"
 msgstr "Aufruf: cweave [OPTIONS] WEBFILE[.w] [{CHANGEFILE[.ch]|-} [OUTFILE[.tex]]]"
 
-#: help.h:72
+#: help.h:73
 msgid "  Weave WEBFILE with CHANGEFILE into a TeX document."
 msgstr "  Verwebe WEBFILE mit CHANGEFILE in ein TeX Dokument."
 
-#: help.h:74 help.h:99
+#: help.h:75 help.h:101
 msgid "  TeX output goes to the basename of WEBFILE extended with `.tex'"
 msgstr "  TeX Ausgabe geht in den Hauptnamen des WEBFILE erweitert um `.tex',"
 
-#: help.h:83 help.h:108
+#: help.h:84 help.h:110
 msgid "-e          do not enclose C material in \\PB{...}"
 msgstr "-e          schließe C Material nicht in \\PB{...} ein"
 
-#: help.h:84 help.h:109
+#: help.h:85 help.h:111
 msgid "-f          do not force a newline after every C statement in output"
 msgstr "-f          erzwinge keinen Zeilenumbruch nach jedem C Statement"
 
-#: help.h:85 help.h:110
+#: help.h:86 help.h:112
 msgid "-i          suppress indentation of parameter declarations"
 msgstr "-i          unterdrücke die Einrückung von Parameterdeklarationen"
 
-#: help.h:86 help.h:111
+#: help.h:87 help.h:113
 msgid "-o          suppress separation of declarations and statements"
 msgstr "-o          unterdrücke die Trennung von Deklarationen und Statements"
 
-#: help.h:87 help.h:112
+#: help.h:88 help.h:114
 msgid "-x          omit indices, section names, table of contents"
 msgstr "-x          verzichte auf Indexe, Abschnittnamen und Inhaltsverzeichnis"
 
-#: help.h:88
+#: help.h:89
 msgid "+lX         use macros for language X as of Xcwebmac.tex"
 msgstr "+lX         benutze Macros für Sprache X aus Xcwebmac.tex"
 
-#: help.h:96
+#: help.h:98
 msgid "Usage: ctwill [OPTIONS] WEBFILE[.w] [{CHANGEFILE[.ch]|-} [OUTFILE[.tex]]]"
 msgstr "Aufruf: ctwill [OPTIONS] WEBFILE[.w] [{CHANGEFILE[.ch]|-} [OUTFILE[.tex]]]"
 
-#: help.h:97
+#: help.h:99
 msgid "  Weave WEBFILE with CHANGEFILE into a TeX document with mini-indexes."
 msgstr "  Verwebe WEBFILE mit CHANGEFILE in ein TeX Dokument mit Miniindexen."
 
-#: help.h:113
+#: help.h:115
 msgid "+P          \\input ctproofmac.tex instead of ctwimac.tex"
 msgstr "+P          \\input ctproofmac.tex an Stelle von ctwimac.tex"
 
-#: help.h:114
+#: help.h:116
 msgid "+/-lX       use macros for language X as of Xct{wi|proof}mac.tex"
 msgstr "+/-lX       benutze Macros für Sprache X aus Xct{wi|proof}mac.tex"

Modified: branches/stable/source/src/texk/web2c/cwebdir/po/it/cweb.po
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/po/it/cweb.po	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/po/it/cweb.po	2020-05-15 18:03:05 UTC (rev 825)
@@ -426,6 +426,7 @@
 "h [+] stampa un messaggio di \"buon fine\"\n"
 "p [+] mostra andamento elaborazione\n"
 "s [-] mostra statistiche\n"
+"t [+] compare temporary output for changes\n"
 
 #: comm-i18n.ch:287
 msgid ""
@@ -443,6 +444,7 @@
 "x [+] include indici\n"
 "lX [] usa macro in lingua X contenute in Xcwebmac.tex\n"
 "s [-] mostra statistiche\n"
+"t [+] compare temporary output for changes\n"
 
 #: comm-i18n.ch:290
 msgid ""
@@ -461,6 +463,7 @@
 "P [-] include 'proofmac.tex' invece di 'ctwimac.tex'\n"
 "lX [] usa macro in lingua X contenute in X{ctwi|proof}mac.tex\n"
 "s [-] mostra statistiche\n"
+"t [+] compare temporary output for changes\n"
 
 #: ctang-i18n.ch:131 cweav-i18n.ch:53 cweav-i18n.ch:119
 msgid "! Use @l in limbo only"

Modified: branches/stable/source/src/texk/web2c/cwebdir/po/web2c-help.pot
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/po/web2c-help.pot	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/po/web2c-help.pot	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,14 +1,14 @@
 # International version of CWEB (CWEBbin, TeXLive).
-# Copyright (C) 2019 Andreas Scherer et al.
+# Copyright (C) 2020 Andreas Scherer et al.
 # This file is distributed under the same license as the CWEB package.
-# Andreas Scherer <https://ascherer.github.io>, 2019.
+# Andreas Scherer <https://ascherer.github.io>, 2020.
 #
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: CWEBbin 2019\n"
+"Project-Id-Version: CWEBbin 2020\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-01-19 23:24+0100\n"
+"POT-Creation-Date: 2020-03-30 12:09+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
@@ -26,7 +26,7 @@
 msgid "  Tangle WEBFILE with CHANGEFILE into a C/C++ program."
 msgstr ""
 
-#: help.h:54 help.h:73 help.h:98
+#: help.h:54 help.h:74 help.h:100
 msgid "  Default CHANGEFILE is /dev/null;"
 msgstr ""
 
@@ -34,96 +34,100 @@
 msgid "  C output goes to the basename of WEBFILE extended with `.c'"
 msgstr ""
 
-#: help.h:56 help.h:75 help.h:100
+#: help.h:56 help.h:76 help.h:102
 msgid "  unless otherwise specified by OUTFILE; in this case, '-' specifies"
 msgstr ""
 
-#: help.h:57 help.h:76 help.h:101
+#: help.h:57 help.h:77 help.h:103
 msgid "  a null CHANGEFILE."
 msgstr ""
 
-#: help.h:59 help.h:78 help.h:103
+#: help.h:59 help.h:79 help.h:105
 msgid "+b          print banner line on terminal"
 msgstr ""
 
-#: help.h:60 help.h:79 help.h:104
+#: help.h:60 help.h:80 help.h:106
 msgid "+h          print success message on completion"
 msgstr ""
 
-#: help.h:61 help.h:80 help.h:105
+#: help.h:61 help.h:81 help.h:107
 msgid "+p          print progress report messages"
 msgstr ""
 
-#: help.h:62 help.h:81 help.h:106
+#: help.h:62 help.h:82 help.h:108
 msgid "+/-q        shortcut for '-bhp'; also '--quiet' (default)"
 msgstr ""
 
-#: help.h:63 help.h:82 help.h:107
+#: help.h:63 help.h:83 help.h:109
 msgid "+/-v        shortcut for '+bhp'; also '--verbose'"
 msgstr ""
 
-#: help.h:64 help.h:89 help.h:115
+#: help.h:64 help.h:90 help.h:117
 msgid "+s          print usage statistics"
 msgstr ""
 
-#: help.h:65 help.h:90 help.h:116
+#: help.h:65 help.h:91 help.h:118
+msgid "-t          ignore temporary output irrespective of changes"
+msgstr ""
+
+#: help.h:66 help.h:92 help.h:119
 msgid "--help      display this help and exit"
 msgstr ""
 
-#: help.h:66 help.h:91 help.h:117
+#: help.h:67 help.h:93 help.h:120
 msgid "--version   output version information and exit"
 msgstr ""
 
-#: help.h:71
+#: help.h:72
 msgid ""
 "Usage: cweave [OPTIONS] WEBFILE[.w] [{CHANGEFILE[.ch]|-} [OUTFILE[.tex]]]"
 msgstr ""
 
-#: help.h:72
+#: help.h:73
 msgid "  Weave WEBFILE with CHANGEFILE into a TeX document."
 msgstr ""
 
-#: help.h:74 help.h:99
+#: help.h:75 help.h:101
 msgid "  TeX output goes to the basename of WEBFILE extended with `.tex'"
 msgstr ""
 
-#: help.h:83 help.h:108
+#: help.h:84 help.h:110
 msgid "-e          do not enclose C material in \\PB{...}"
 msgstr ""
 
-#: help.h:84 help.h:109
+#: help.h:85 help.h:111
 msgid "-f          do not force a newline after every C statement in output"
 msgstr ""
 
-#: help.h:85 help.h:110
+#: help.h:86 help.h:112
 msgid "-i          suppress indentation of parameter declarations"
 msgstr ""
 
-#: help.h:86 help.h:111
+#: help.h:87 help.h:113
 msgid "-o          suppress separation of declarations and statements"
 msgstr ""
 
-#: help.h:87 help.h:112
+#: help.h:88 help.h:114
 msgid "-x          omit indices, section names, table of contents"
 msgstr ""
 
-#: help.h:88
+#: help.h:89
 msgid "+lX         use macros for language X as of Xcwebmac.tex"
 msgstr ""
 
-#: help.h:96
+#: help.h:98
 msgid ""
 "Usage: ctwill [OPTIONS] WEBFILE[.w] [{CHANGEFILE[.ch]|-} [OUTFILE[.tex]]]"
 msgstr ""
 
-#: help.h:97
+#: help.h:99
 msgid "  Weave WEBFILE with CHANGEFILE into a TeX document with mini-indexes."
 msgstr ""
 
-#: help.h:113
+#: help.h:115
 msgid "+P          \\input ctproofmac.tex instead of ctwimac.tex"
 msgstr ""
 
-#: help.h:114
+#: help.h:116
 msgid "+/-lX       use macros for language X as of Xct{wi|proof}mac.tex"
 msgstr ""

Modified: branches/stable/source/src/texk/web2c/cwebdir/texinputs/Xcwebmac.tex
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/texinputs/Xcwebmac.tex	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/texinputs/Xcwebmac.tex	2020-05-15 18:03:05 UTC (rev 825)
@@ -26,8 +26,7 @@
 % Version 3.64 [p21] --- Andreas Scherer, Octobre 2005
 % Version 3.64 [2018] --- Andreas Scherer, Octobre 2018
 
-\ifx\undefined\documentclass\input cwebmac.tex
-\else\endinput\fi % LaTeX will use other macros
+\ifx\undefined\botofcontents\input cwebmac.tex\fi
 
 \xdef\fmtversion{\fmtversion[2018]}
 

Modified: branches/stable/source/src/texk/web2c/cwebdir/texinputs/dcwebmac.tex
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/texinputs/dcwebmac.tex	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/texinputs/dcwebmac.tex	2020-05-15 18:03:05 UTC (rev 825)
@@ -28,10 +28,9 @@
 % Version 3.64 [p21] --- Andreas Scherer, Octobre 2005
 % Version 3.64 [p22] --- Andreas Scherer, March 2016
 
-\ifx\undefined\documentclass\input Xcwebmac.tex
-\else\endinput\fi % LaTeX will use other macros
+\ifx\undefined\botofcontents\input cwebmac.tex\fi
 
-\input dcwebstrings.tex
+\input dcwebstrings.tex % German translations for some tags and strings
 
 \def\.#1{\leavevmode\hbox{\tentex % typewriter type for strings
   \ifx\Cstringchars\undefined\else\Cstringchars\fi % special string characters

Modified: branches/stable/source/src/texk/web2c/cwebdir/texinputs/fcwebmac.tex
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/texinputs/fcwebmac.tex	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/texinputs/fcwebmac.tex	2020-05-15 18:03:05 UTC (rev 825)
@@ -30,8 +30,7 @@
 
 % french translations --- Denis Roegel, 18 September 1994
 
-\ifx\undefined\documentclass\input Xcwebmac.tex
-\else\endinput\fi % LaTeX will use other macros
+\ifx\undefined\botofcontents\input cwebmac.tex\fi
 
 \def\.#1{\leavevmode\hbox{\tentex % typewriter type for strings
   \ifx\Cstringchars\undefined\else\Cstringchars\fi % special string characters
@@ -50,8 +49,7 @@
 \def\ATH{{\acrofalse\X\kern-.5em:D\'efinitions du pr\'eprocesseur\X}}
 
 \def\A{\note{Voir aussi la section}} % xref for doubly defined section name
-\def\As{\note{Voir aussi les sections}} % xref for multiply defined 
-                                        % section name
+\def\As{\note{Voir aussi les sections}} % xref for multiply defined section name
 
 \def\ET{ et~} % conjunction between two section numbers
 \def\ETs{ et~} % conjunction between the last two of several section numbers

Modified: branches/stable/source/src/texk/web2c/cwebdir/texinputs/icwebmac.tex
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/texinputs/icwebmac.tex	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/cwebdir/texinputs/icwebmac.tex	2020-05-15 18:03:05 UTC (rev 825)
@@ -28,8 +28,7 @@
 % Version 3.64 [p21] --- Andreas Scherer, Octobre 2005
 % Version 3.64 [p22] --- Andreas Scherer, March 2016
 
-\ifx\undefined\documentclass\input Xcwebmac.tex
-\else\endinput\fi % LaTeX will use other macros
+\ifx\undefined\botofcontents\input cwebmac.tex\fi
 
 \def\.#1{\leavevmode\hbox{\tentex % typewriter type for strings
   \ifx\Cstringchars\undefined\else\Cstringchars\fi % special string characters

Added: branches/stable/source/src/texk/web2c/cwebdir/texinputs/pdfwebtocfront.tex
===================================================================
--- branches/stable/source/src/texk/web2c/cwebdir/texinputs/pdfwebtocfront.tex	                        (rev 0)
+++ branches/stable/source/src/texk/web2c/cwebdir/texinputs/pdfwebtocfront.tex	2020-05-15 18:03:05 UTC (rev 825)
@@ -0,0 +1,59 @@
+%
+% Move contents page to the front
+%
+% Code from knuth.drv in https://github.com/oberdiek/latex-tds
+% Works with pdftex and xetex.
+%
+\ifx\detokenize\undefined\endinput\fi
+\newread\testread
+\openin\testread=\contentsfile\relax
+\ifeof\testread % First run
+\else % Second run
+  \let\ORGcon\con
+  \def\con{%
+    \ifnum\pageno=1 \global\titletrue\fi
+    \begingroup
+      \let\end\relax
+      \ORGcon
+    \endgroup
+    \let\con\end
+  }%
+  \expandafter\let\csname ORGN\expandafter\endcsname
+                  \csname N\endcsname
+  \expandafter\outer\expandafter\def\csname N\endcsname{%
+    \con
+    \advance\pageno by -1\relax
+    \expandafter\let\csname N\expandafter\endcsname
+                    \csname ORGN\endcsname
+    \csname N\endcsname
+  }%
+  \begingroup
+    \def\num{0}%
+    \edef\x{\jobname}%
+    \edef\y{\detokenize{tex}}%
+    \ifx\x\y
+      \def\num{1}%
+    \else
+      \edef\y{\detokenize{mf}}%
+      \ifx\x\y
+        \def\num{1}%
+      \fi
+    \fi
+  \expandafter\endgroup\ifnum\num=1 %
+    \def\contentspagenumber{2}%
+    \let\ORGpageno\pageno
+    \def\pageno{%
+      \let\pageno\ORGpageno
+      \expandafter\let\csname ORGN\expandafter\endcsname
+                      \csname N\endcsname
+      \expandafter\outer\expandafter\def\csname N\endcsname{%
+        \con
+        \advance\pageno by -1\relax
+        \expandafter\let\csname N\expandafter\endcsname
+                        \csname ORGN\endcsname
+        \csname N\endcsname
+      }%
+      \pageno
+    }%
+  \fi
+\fi


Property changes on: branches/stable/source/src/texk/web2c/cwebdir/texinputs/pdfwebtocfront.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: branches/stable/source/src/texk/web2c/doc/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/doc/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/doc/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -113,7 +113,7 @@
 	$(top_srcdir)/../../m4/kpse-macos-framework.m4 \
 	$(top_srcdir)/../../m4/kpse-mpfr-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-pixman-flags.m4 \
-	$(top_srcdir)/../../m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/../../m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-socket-libs.m4 \
 	$(top_srcdir)/../../m4/kpse-teckit-flags.m4 \
@@ -359,9 +359,9 @@
 PIXMAN_INCLUDES = @PIXMAN_INCLUDES@
 PIXMAN_LIBS = @PIXMAN_LIBS@
 PKG_CONFIG = @PKG_CONFIG@
-POPPLER_DEPEND = @POPPLER_DEPEND@
-POPPLER_INCLUDES = @POPPLER_INCLUDES@
-POPPLER_LIBS = @POPPLER_LIBS@
+PPLIB_DEPEND = @PPLIB_DEPEND@
+PPLIB_INCLUDES = @PPLIB_INCLUDES@
+PPLIB_LIBS = @PPLIB_LIBS@
 PTEXENC_DEPEND = @PTEXENC_DEPEND@
 PTEXENC_INCLUDES = @PTEXENC_INCLUDES@
 PTEXENC_LIBS = @PTEXENC_LIBS@

Modified: branches/stable/source/src/texk/web2c/help.h
===================================================================
--- branches/stable/source/src/texk/web2c/help.h	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/help.h	2020-05-15 18:03:05 UTC (rev 825)
@@ -62,6 +62,7 @@
     "+/-q        shortcut for '-bhp'; also '--quiet' (default)",
     "+/-v        shortcut for '+bhp'; also '--verbose'",
     "+s          print usage statistics",
+    "-t          ignore temporary output irrespective of changes",
     "--help      display this help and exit",
     "--version   output version information and exit",
     NULL
@@ -87,6 +88,7 @@
     "-x          omit indices, section names, table of contents",
     "+lX         use macros for language X as of Xcwebmac.tex",
     "+s          print usage statistics",
+    "-t          ignore temporary output irrespective of changes",
     "--help      display this help and exit",
     "--version   output version information and exit",
     NULL
@@ -113,6 +115,7 @@
     "+P          \\input ctproofmac.tex instead of ctwimac.tex",
     "+/-lX       use macros for language X as of Xct{wi|proof}mac.tex",
     "+s          print usage statistics",
+    "-t          ignore temporary output irrespective of changes",
     "--help      display this help and exit",
     "--version   output version information and exit",
     NULL

Modified: branches/stable/source/src/texk/web2c/lib/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/lib/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/lib/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -115,7 +115,7 @@
 	$(top_srcdir)/../../m4/kpse-macos-framework.m4 \
 	$(top_srcdir)/../../m4/kpse-mpfr-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-pixman-flags.m4 \
-	$(top_srcdir)/../../m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/../../m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-socket-libs.m4 \
 	$(top_srcdir)/../../m4/kpse-teckit-flags.m4 \
@@ -365,9 +365,9 @@
 PIXMAN_INCLUDES = @PIXMAN_INCLUDES@
 PIXMAN_LIBS = @PIXMAN_LIBS@
 PKG_CONFIG = @PKG_CONFIG@
-POPPLER_DEPEND = @POPPLER_DEPEND@
-POPPLER_INCLUDES = @POPPLER_INCLUDES@
-POPPLER_LIBS = @POPPLER_LIBS@
+PPLIB_DEPEND = @PPLIB_DEPEND@
+PPLIB_INCLUDES = @PPLIB_INCLUDES@
+PPLIB_LIBS = @PPLIB_LIBS@
 PTEXENC_DEPEND = @PTEXENC_DEPEND@
 PTEXENC_INCLUDES = @PTEXENC_INCLUDES@
 PTEXENC_LIBS = @PTEXENC_LIBS@

Modified: branches/stable/source/src/texk/web2c/man/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/man/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/man/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -136,7 +136,7 @@
 	$(top_srcdir)/../../m4/kpse-macos-framework.m4 \
 	$(top_srcdir)/../../m4/kpse-mpfr-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-pixman-flags.m4 \
-	$(top_srcdir)/../../m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/../../m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-socket-libs.m4 \
 	$(top_srcdir)/../../m4/kpse-teckit-flags.m4 \
@@ -343,9 +343,9 @@
 PIXMAN_INCLUDES = @PIXMAN_INCLUDES@
 PIXMAN_LIBS = @PIXMAN_LIBS@
 PKG_CONFIG = @PKG_CONFIG@
-POPPLER_DEPEND = @POPPLER_DEPEND@
-POPPLER_INCLUDES = @POPPLER_INCLUDES@
-POPPLER_LIBS = @POPPLER_LIBS@
+PPLIB_DEPEND = @PPLIB_DEPEND@
+PPLIB_INCLUDES = @PPLIB_INCLUDES@
+PPLIB_LIBS = @PPLIB_LIBS@
 PTEXENC_DEPEND = @PTEXENC_DEPEND@
 PTEXENC_INCLUDES = @PTEXENC_INCLUDES@
 PTEXENC_LIBS = @PTEXENC_LIBS@

Modified: branches/stable/source/src/texk/web2c/omegafonts/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/omegafonts/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/omegafonts/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -118,7 +118,7 @@
 	$(top_srcdir)/../../m4/kpse-macos-framework.m4 \
 	$(top_srcdir)/../../m4/kpse-mpfr-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-pixman-flags.m4 \
-	$(top_srcdir)/../../m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/../../m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-socket-libs.m4 \
 	$(top_srcdir)/../../m4/kpse-teckit-flags.m4 \
@@ -590,9 +590,9 @@
 PIXMAN_INCLUDES = @PIXMAN_INCLUDES@
 PIXMAN_LIBS = @PIXMAN_LIBS@
 PKG_CONFIG = @PKG_CONFIG@
-POPPLER_DEPEND = @POPPLER_DEPEND@
-POPPLER_INCLUDES = @POPPLER_INCLUDES@
-POPPLER_LIBS = @POPPLER_LIBS@
+PPLIB_DEPEND = @PPLIB_DEPEND@
+PPLIB_INCLUDES = @PPLIB_INCLUDES@
+PPLIB_LIBS = @PPLIB_LIBS@
 PTEXENC_DEPEND = @PTEXENC_DEPEND@
 PTEXENC_INCLUDES = @PTEXENC_INCLUDES@
 PTEXENC_LIBS = @PTEXENC_LIBS@

Modified: branches/stable/source/src/texk/web2c/otps/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/otps/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/otps/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -118,7 +118,7 @@
 	$(top_srcdir)/../../m4/kpse-macos-framework.m4 \
 	$(top_srcdir)/../../m4/kpse-mpfr-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-pixman-flags.m4 \
-	$(top_srcdir)/../../m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/../../m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-socket-libs.m4 \
 	$(top_srcdir)/../../m4/kpse-teckit-flags.m4 \
@@ -624,9 +624,9 @@
 PIXMAN_INCLUDES = @PIXMAN_INCLUDES@
 PIXMAN_LIBS = @PIXMAN_LIBS@
 PKG_CONFIG = @PKG_CONFIG@
-POPPLER_DEPEND = @POPPLER_DEPEND@
-POPPLER_INCLUDES = @POPPLER_INCLUDES@
-POPPLER_LIBS = @POPPLER_LIBS@
+PPLIB_DEPEND = @PPLIB_DEPEND@
+PPLIB_INCLUDES = @PPLIB_INCLUDES@
+PPLIB_LIBS = @PPLIB_LIBS@
 PTEXENC_DEPEND = @PTEXENC_DEPEND@
 PTEXENC_INCLUDES = @PTEXENC_INCLUDES@
 PTEXENC_LIBS = @PTEXENC_LIBS@

Modified: branches/stable/source/src/texk/web2c/otps/win32/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/otps/win32/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/otps/win32/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -115,7 +115,7 @@
 	$(top_srcdir)/../../m4/kpse-macos-framework.m4 \
 	$(top_srcdir)/../../m4/kpse-mpfr-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-pixman-flags.m4 \
-	$(top_srcdir)/../../m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/../../m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-socket-libs.m4 \
 	$(top_srcdir)/../../m4/kpse-teckit-flags.m4 \
@@ -344,9 +344,9 @@
 PIXMAN_INCLUDES = @PIXMAN_INCLUDES@
 PIXMAN_LIBS = @PIXMAN_LIBS@
 PKG_CONFIG = @PKG_CONFIG@
-POPPLER_DEPEND = @POPPLER_DEPEND@
-POPPLER_INCLUDES = @POPPLER_INCLUDES@
-POPPLER_LIBS = @POPPLER_LIBS@
+PPLIB_DEPEND = @PPLIB_DEPEND@
+PPLIB_INCLUDES = @PPLIB_INCLUDES@
+PPLIB_LIBS = @PPLIB_LIBS@
 PTEXENC_DEPEND = @PTEXENC_DEPEND@
 PTEXENC_INCLUDES = @PTEXENC_INCLUDES@
 PTEXENC_LIBS = @PTEXENC_LIBS@

Modified: branches/stable/source/src/texk/web2c/pdftexdir/ChangeLog
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,3 +1,30 @@
+2020-05-14  Karl Berry  <karl at freefriends.org>
+
+	* pdftoepdf-poppler0.68.0.cc,
+	* pdftoepdf-poppler0.69.0.cc,
+	* pdftoepdf-poppler0.70.0.cc,
+	* pdftoepdf-poppler0.71.0.cc,
+	* pdftoepdf-poppler0.72.0.cc,
+	* pdftoepdf-poppler0.75.0.cc,
+	* pdftoepdf-poppler0.76.0.cc,
+	* pdftoepdf-poppler0.83.0.cc,
+	* pdftoepdf-poppler0.86.0.cc,
+	* pdftosrc-newpoppler.cc,
+	* pdftosrc-poppler0.71.0.cc,
+	* pdftosrc-poppler0.72.0.cc,
+	* pdftosrc-poppler0.76.0.cc,
+	* pdftosrc-poppler0.83.0.cc: remove these interim stabs at poppler
+	support; now poppler is not supported in TL.
+	See source/m4/kpse-xpdf-flags.m4 for some discussion.
+
+2020-03-28  Thanh Han The  <hanthethanh at gmail.com>
+
+	* pdftex.web (load_expand_font, vf_def_font): do not call
+	copy_expand_params on null_font.
+	Original report from Robert Schlicht,
+	https://tug.org/pipermail/tex-live/2020-March/045099.html
+	https://mailman.ntg.nl/pipermail/ntg-pdftex/2020-March/004307.html
+
 2020-03-27  Karl Berry  <karl at tug.org>
 
 	* TeX Live 2020, pdftex 1.40.21.

Modified: branches/stable/source/src/texk/web2c/pdftexdir/pdftex.ch
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftex.ch	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftex.ch	2020-05-15 18:03:05 UTC (rev 825)
@@ -156,7 +156,7 @@
   begin
   @<Get substitution information, check it, goto |found|
   if all is ok, otherwise goto |continue|@>;
-found: @<Print character substition tracing log@>;
+found: @<Print character substitution tracing log@>;
   @<(\pdfTeX) Rebuild character using substitution information@>;
   end
 

Modified: branches/stable/source/src/texk/web2c/pdftexdir/pdftex.web
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftex.web	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftex.web	2020-05-15 18:03:05 UTC (rev 825)
@@ -17434,7 +17434,8 @@
         else
             k := read_font_info(null_cs, s, "", font_size[f]);
     end;
-    copy_expand_params(k, f, e);
+    if k <> null_font then
+        copy_expand_params(k, f, e);
     load_expand_font := k;
 end;
 
@@ -17990,12 +17991,12 @@
             vf_local_font_warning(f, k, "checksum mismatch");
         if ds <> font_dsize[k] then
             vf_local_font_warning(f, k, "design size mismatch");
+        if (pdf_font_step[f] <> 0) then
+            set_expand_params(k, pdf_font_auto_expand[f],
+                              pdf_font_expand_ratio[pdf_font_stretch[f]],
+                              -pdf_font_expand_ratio[pdf_font_shrink[f]],
+                              pdf_font_step[f], pdf_font_expand_ratio[f]);
     end;
-    if (pdf_font_step[f] <> 0) then
-        set_expand_params(k, pdf_font_auto_expand[f],
-                          pdf_font_expand_ratio[pdf_font_stretch[f]],
-                          -pdf_font_expand_ratio[pdf_font_shrink[f]],
-                          pdf_font_step[f], pdf_font_expand_ratio[f]);
     vf_def_font := k;
 end;
 

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.68.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.68.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.68.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1113 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.59.0, ..., 0.68.0.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static GBool isInit = gFalse;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i);
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i);
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor");
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->getCString());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i);
-        if (fontRef.isRef())
-            copyFont(obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = s->getCString();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i);
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = ((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = new GlobalParams();
-        globalParams->setErrQuiet(gFalse);
-        isInit = gTrue;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        LinkDest *link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref.num, ref.gen);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-        delete link;
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata");
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]);
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group");
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd(copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i));
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-        // see above for globalParams
-        delete globalParams;
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.69.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.69.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.69.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1113 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.69.0.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static GBool isInit = gFalse;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i);
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = (char *)obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i);
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor");
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->getCString());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i);
-        if (fontRef.isRef())
-            copyFont((char *)obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = s->getCString();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i);
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = ((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = new GlobalParams();
-        globalParams->setErrQuiet(gFalse);
-        isInit = gTrue;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        LinkDest *link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref.num, ref.gen);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-        delete link;
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata");
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]);
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group");
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i));
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = (char *)obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, (char *)key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-        // see above for globalParams
-        delete globalParams;
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.70.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.70.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.70.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1113 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.70.0 or 0.70.1.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static GBool isInit = gFalse;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i);
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = (char *)obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i);
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor");
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->getCString());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i);
-        if (fontRef.isRef())
-            copyFont((char *)obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = (char *)s->getCString();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i);
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = (char *)((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static const PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    const PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = new GlobalParams();
-        globalParams->setErrQuiet(gFalse);
-        isInit = gTrue;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        LinkDest *link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref.num, ref.gen);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-        delete link;
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    const PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata");
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]);
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group");
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i));
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = (char *)obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, (char *)key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-        // see above for globalParams
-        delete globalParams;
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.71.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.71.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.71.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1113 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.71.0.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static bool isInit = false;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i);
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = (char *)obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i);
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor");
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->getCString());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i);
-        if (fontRef.isRef())
-            copyFont((char *)obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = (char *)s->getCString();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i);
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = (char *)((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static const PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    const PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = new GlobalParams();
-        globalParams->setErrQuiet(false);
-        isInit = true;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        LinkDest *link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref.num, ref.gen);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-        delete link;
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    const PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata");
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]);
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group");
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i));
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = (char *)obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, (char *)key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-        // see above for globalParams
-        delete globalParams;
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1114 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.72.0 or newer versions.
-It is tested upto the poppler 0.74.0.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static bool isInit = false;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i);
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = (char *)obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i);
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor");
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->c_str());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i);
-        if (fontRef.isRef())
-            copyFont((char *)obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = (char *)s->c_str();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i);
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = (char *)((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static const PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    const PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = new GlobalParams();
-        globalParams->setErrQuiet(false);
-        isInit = true;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        LinkDest *link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref.num, ref.gen);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-        delete link;
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    const PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata");
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]);
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group");
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i));
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = (char *)obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, (char *)key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-        // see above for globalParams
-        delete globalParams;
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.75.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.75.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.75.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1113 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.75.0.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static bool isInit = false;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i).copy();
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = (char *)obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i).copy();
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor").copy();
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->c_str());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i).copy();
-        if (fontRef.isRef())
-            copyFont((char *)obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = (char *)s->c_str();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i).copy();
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = (char *)((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static const PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    const PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = new GlobalParams();
-        globalParams->setErrQuiet(false);
-        isInit = true;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        LinkDest *link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref.num, ref.gen);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-        delete link;
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    const PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF().copy();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata").copy();
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]).copy();
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group").copy();
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i).copy());
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = (char *)obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, (char *)key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-        // see above for globalParams
-        delete globalParams;
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1113 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.76.0 upto 0.82.0.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static bool isInit = false;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i).copy();
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = (char *)obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i).copy();
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor").copy();
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->c_str());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i).copy();
-        if (fontRef.isRef())
-            copyFont((char *)obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = (char *)s->c_str();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i).copy();
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = (char *)((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static const PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    const PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = new GlobalParams();
-        globalParams->setErrQuiet(false);
-        isInit = true;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        LinkDest *link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-        delete link;
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    const PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF().copy();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata").copy();
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]).copy();
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group").copy();
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i).copy());
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = (char *)obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, (char *)key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-        // see above for globalParams
-        delete globalParams;
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.83.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.83.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.83.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1111 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.83.0 up to 0.85.0.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static bool isInit = false;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i).copy();
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = (char *)obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i).copy();
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor").copy();
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->c_str());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i).copy();
-        if (fontRef.isRef())
-            copyFont((char *)obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = (char *)s->c_str();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i).copy();
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = (char *)((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static const PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    const PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = std::make_unique<GlobalParams>();
-        globalParams->setErrQuiet(false);
-        isInit = true;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        LinkDest *link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-        delete link;
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    const PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF().copy();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata").copy();
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]).copy();
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group").copy();
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i).copy());
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = (char *)obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, (char *)key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.86.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.86.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftoepdf-poppler0.86.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,1110 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. A little modifications are made to avoid a crash for
-some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.86.0 or newer versions.
-POPPLER_VERSION should be defined.
-*/
-
-/* Do this early in order to avoid a conflict between
-   MINGW32 <rpcndr.h> defining 'boolean' as 'unsigned char' and
-   <kpathsea/types.h> defining Pascal's boolean as 'int'.
-*/
-#include <w2c/config.h>
-#include <kpathsea/lib.h>
-
-#include <stdlib.h>
-#include <math.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#include <dirent.h>
-#include <poppler-config.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#define GString GooString
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Link.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-// This file is mostly C and not very much C++; it's just used to interface
-// the functions of xpdf, which are written in C++.
-
-extern "C" {
-#include <pdftexdir/ptexmac.h>
-#include <pdftexdir/pdftex-common.h>
-
-// These functions from pdftex.web gets declared in pdftexcoerce.h in the
-// usual web2c way, but we cannot include that file here because C++
-// does not allow it.
-extern int getpdfsuppresswarningpagegroup(void);
-extern integer getpdfsuppressptexinfo(void);
-extern integer zround(double);
-}
-
-// The prefix "PTEX" for the PDF keys is special to pdfTeX;
-// this has been registered with Adobe by Hans Hagen.
-
-#define pdfkeyprefix "PTEX"
-
-#define MASK_SUPPRESS_PTEX_FULLBANNER 0x01
-#define MASK_SUPPRESS_PTEX_FILENAME   0x02
-#define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
-#define MASK_SUPPRESS_PTEX_INFODICT   0x08
-
-// When copying the Resources of the selected page, all objects are copied
-// recusively top-down. Indirect objects however are not fetched during
-// copying, but get a new object number from pdfTeX and then will be
-// appended into a linked list. Duplicates are checked and removed from the
-// list of indirect objects during appending.
-
-enum InObjType {
-    objFont,
-    objFontDesc,
-    objOther
-};
-
-struct InObj {
-    Ref ref;                    // ref in original PDF
-    InObjType type;             // object type
-    InObj *next;                // next entry in list of indirect objects
-    int num;                    // new object number in output PDF
-    fd_entry *fd;               // pointer to /FontDescriptor object structure
-    int enc_objnum;             // Encoding for objFont
-    int written;                // has it been written to output PDF?
-};
-
-struct UsedEncoding {
-    int enc_objnum;
-    GfxFont *font;
-    UsedEncoding *next;
-};
-
-static InObj *inObjList;
-static UsedEncoding *encodingList;
-static bool isInit = false;
-
-// --------------------------------------------------------------------
-// Maintain list of open embedded PDF files
-// --------------------------------------------------------------------
-
-struct PdfDocument {
-    char *file_name;
-    PDFDoc *doc;
-    XRef *xref;
-    InObj *inObjList;
-    int occurences;             // number of references to the document; the doc can be
-    // deleted when this is negative
-    PdfDocument *next;
-};
-
-static PdfDocument *pdfDocuments = 0;
-
-static XRef *xref = 0;
-
-// Returns pointer to PdfDocument record for PDF file.
-// Creates a new record if it doesn't exist yet.
-// xref is made current for the document.
-
-static PdfDocument *find_add_document(char *file_name)
-{
-    PdfDocument *p = pdfDocuments;
-    while (p && strcmp(p->file_name, file_name) != 0)
-        p = p->next;
-    if (p) {
-        xref = p->xref;
-        (p->occurences)++;
-        return p;
-    }
-    p = new PdfDocument;
-    p->file_name = xstrdup(file_name);
-    p->xref = xref = 0;
-    p->occurences = 0;
-    GString *docName = new GString(p->file_name);
-    p->doc = new PDFDoc(docName);       // takes ownership of docName
-    if (!p->doc->isOk() || !p->doc->okToPrint()) {
-        pdftex_fail("xpdf: reading PDF image failed");
-    }
-    p->inObjList = 0;
-    p->next = pdfDocuments;
-    pdfDocuments = p;
-    return p;
-}
-
-// Deallocate a PdfDocument with all its resources
-
-static void delete_document(PdfDocument * pdf_doc)
-{
-    PdfDocument **p = &pdfDocuments;
-    while (*p && *p != pdf_doc)
-        p = &((*p)->next);
-    // should not happen:
-    if (!*p)
-        return;
-    // unlink from list
-    *p = pdf_doc->next;
-    // free pdf_doc's resources
-    InObj *r, *n;
-    for (r = pdf_doc->inObjList; r != 0; r = n) {
-        n = r->next;
-        delete r;
-    }
-    xref = pdf_doc->xref;
-    delete pdf_doc->doc;
-    xfree(pdf_doc->file_name);
-    delete pdf_doc;
-}
-
-// --------------------------------------------------------------------
-
-static int addEncoding(GfxFont * gfont)
-{
-    UsedEncoding *n;
-    n = new UsedEncoding;
-    n->next = encodingList;
-    encodingList = n;
-    n->font = gfont;
-    n->enc_objnum = pdfnewobjnum();
-    return n->enc_objnum;
-}
-
-#define addFont(ref, fd, enc_objnum) \
-        addInObj(objFont, ref, fd, enc_objnum)
-
-// addFontDesc is only used to avoid writing the original FontDescriptor
-// from the PDF file.
-
-#define addFontDesc(ref, fd) \
-        addInObj(objFontDesc, ref, fd, 0)
-
-#define addOther(ref) \
-        addInObj(objOther, ref, 0, 0)
-
-static int addInObj(InObjType type, Ref ref, fd_entry * fd, int e)
-{
-    InObj *p, *q, *n = new InObj;
-    if (ref.num == 0)
-        pdftex_fail("PDF inclusion: invalid reference");
-    n->ref = ref;
-    n->type = type;
-    n->next = 0;
-    n->fd = fd;
-    n->enc_objnum = e;
-    n->written = 0;
-    if (inObjList == 0)
-        inObjList = n;
-    else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                delete n;
-                return p->num;
-            }
-            q = p;
-        }
-        // it is important to add new objects at the end of the list,
-        // because new objects are being added while the list is being
-        // written out.
-        q->next = n;
-    }
-    if (type == objFontDesc)
-        n->num = get_fd_objnum(fd);
-    else
-        n->num = pdfnewobjnum();
-    return n->num;
-}
-
-#if 0 /* unusewd */
-static int getNewObjectNumber(Ref ref)
-{
-    InObj *p;
-    if (inObjList == 0) {
-        pdftex_fail("No objects copied yet");
-    } else {
-        for (p = inObjList; p != 0; p = p->next) {
-            if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-                return p->num;
-            }
-        }
-        pdftex_fail("Object not yet copied: %i %i", ref.num, ref.gen);
-    }
-#ifdef _MSC_VER
-    /* Never reached, but without __attribute__((noreturn)) for pdftex_fail()
-       MSVC 5.0 requires an int return value.  */
-    return -60000;
-#endif
-}
-#endif
-
-static void copyObject(Object *);
-
-static void copyName(char *s)
-{
-    pdf_puts("/");
-    for (; *s != 0; s++) {
-        if (isdigit(*s) || isupper(*s) || islower(*s) || *s == '_' ||
-            *s == '.' || *s == '-' || *s == '+')
-            pdfout(*s);
-        else
-            pdf_printf("#%.2X", *s & 0xFF);
-    }
-}
-
-static void copyDictEntry(Object * obj, int i)
-{
-    Object obj1;
-    copyName((char *)obj->dictGetKey(i));
-    pdf_puts(" ");
-    obj1 = obj->dictGetValNF(i).copy();
-    copyObject(&obj1);
-    pdf_puts("\n");
-}
-
-static void copyDict(Object * obj)
-{
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i)
-        copyDictEntry(obj, i);
-}
-
-static void copyFontDict(Object * obj, InObj * r)
-{
-    int i, l;
-    char *key;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("<<\n");
-    assert(r->type == objFont); // FontDescriptor is in fd_tree
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        key = (char *)obj->dictGetKey(i);
-        if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
-            || strncmp("BaseFont", key, strlen("BaseFont")) == 0
-            || strncmp("Encoding", key, strlen("Encoding")) == 0)
-            continue;           // skip original values
-        copyDictEntry(obj, i);
-    }
-    // write new FontDescriptor, BaseFont, and Encoding
-    pdf_printf("/FontDescriptor %d 0 R\n", get_fd_objnum(r->fd));
-    pdf_printf("/BaseFont %d 0 R\n", get_fn_objnum(r->fd));
-    pdf_printf("/Encoding %d 0 R\n", r->enc_objnum);
-    pdf_puts(">>");
-}
-
-static void copyStream(Stream * str)
-{
-    int c, c2 = 0;
-    str->reset();
-    while ((c = str->getChar()) != EOF) {
-        pdfout(c);
-        c2 = c;
-    }
-    pdflastbyte = c2;
-}
-
-static void copyProcSet(Object * obj)
-{
-    int i, l;
-    Object procset;
-    if (!obj->isArray())
-        pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/ProcSet [ ");
-    for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-        procset = obj->arrayGetNF(i).copy();
-        if (!procset.isName())
-            pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
-                        procset.getTypeName());
-        copyName((char *)procset.getName());
-        pdf_puts(" ");
-    }
-    pdf_puts("]\n");
-}
-
-#define REPLACE_TYPE1C true
-
-static bool embeddableFont(Object * fontdesc)
-{
-    Object fontfile, ffsubtype;
-
-    if (!fontdesc->isDict())
-        return false;
-    fontfile = fontdesc->dictLookup("FontFile");
-    if (fontfile.isStream())
-        return true;
-    if (REPLACE_TYPE1C) {
-        fontfile = fontdesc->dictLookup("FontFile3");
-        if (!fontfile.isStream())
-            return false;
-        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-    }
-    return false;
-}
-
-static void copyFont(char *tag, Object * fontRef)
-{
-    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-        stemV;
-    GfxFont *gfont;
-    fd_entry *fd;
-    fm_entry *fontmap;
-    // Check whether the font has already been embedded before analysing it.
-    InObj *p;
-    Ref ref = fontRef->getRef();
-    for (p = inObjList; p; p = p->next) {
-        if (p->ref.num == ref.num && p->ref.gen == ref.gen) {
-            copyName(tag);
-            pdf_printf(" %d 0 R ", p->num);
-            return;
-        }
-    }
-    // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-    // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
-    fontdict = fontRef->fetch(xref);
-    fontdesc = Object(objNull);
-    if (fontdict.isDict()) {
-        subtype = fontdict.dictLookup("Subtype");
-        basefont = fontdict.dictLookup("BaseFont");
-        fontdescRef = fontdict.dictLookupNF("FontDescriptor").copy();
-        if (fontdescRef.isRef()) {
-            fontdesc = fontdescRef.fetch(xref);
-        }
-    }
-    if (!fixedinclusioncopyfont && fontdict.isDict()
-        && subtype.isName()
-        && !strcmp(subtype.getName(), "Type1")
-        && basefont.isName()
-        && fontdescRef.isRef()
-        && fontdesc.isDict()
-        && embeddableFont(&fontdesc)
-        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
-        // round /StemV value, since the PDF input is a float
-        // (see Font Descriptors in PDF reference), but we only store an
-        // integer, since we don't want to change the struct.
-        stemV = fontdesc.dictLookup("StemV");
-        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-        charset = fontdesc.dictLookup("CharSet");
-        if (!charset.isNull() &&
-            charset.isString() && is_subsetable(fontmap))
-            epdf_mark_glyphs(fd, (char *)charset.getString()->c_str());
-        else
-            embed_whole_font(fd);
-        addFontDesc(fontdescRef.getRef(), fd);
-        copyName(tag);
-        gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
-                                  fontdict.getDict());
-        pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                       addEncoding(gfont)));
-    } else {
-        copyName(tag);
-        pdf_puts(" ");
-        copyObject(fontRef);
-    }
-}
-
-static void copyFontResources(Object * obj)
-{
-    Object fontRef;
-    int i, l;
-    if (!obj->isDict())
-        pdftex_fail("PDF inclusion: invalid font resources dict type <%s>",
-                    obj->getTypeName());
-    pdf_puts("/Font << ");
-    for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
-        fontRef = obj->dictGetValNF(i).copy();
-        if (fontRef.isRef())
-            copyFont((char *)obj->dictGetKey(i), &fontRef);
-        else if (fontRef.isDict()) {   // some programs generate pdf with embedded font object
-            copyName((char *)obj->dictGetKey(i));
-            pdf_puts(" ");
-            copyObject(&fontRef);
-        }
-        else
-            pdftex_fail("PDF inclusion: invalid font in reference type <%s>",
-                        fontRef.getTypeName());
-    }
-    pdf_puts(">>\n");
-}
-
-static void copyOtherResources(Object * obj, char *key)
-{
-    // copies all other resources (write_epdf handles Fonts and ProcSets),
-
-    // if Subtype is present, it must be a name
-    if (strcmp("Subtype", key) == 0) {
-        if (!obj->isName()) {
-            pdftex_warn("PDF inclusion: Subtype in Resources dict is not a name"
-                        " (key '%s', type <%s>); ignored.",
-                        key, obj->getTypeName());
-            return;
-        }
-    } else if (!obj->isDict()) {
-        //FIXME: Write the message only to the log file
-        pdftex_warn("PDF inclusion: invalid other resource which is no dict"
-                    " (key '%s', type <%s>); ignored.",
-                    key, obj->getTypeName());
-        return;
-    }
-    copyName(key);
-    pdf_puts(" ");
-    copyObject(obj);
-}
-
-// Function onverts double to string; very small and very large numbers
-// are NOT converted to scientific notation.
-// n must be a number or real conforming to the implementation limits
-// of PDF as specified in appendix C.1 of the PDF Ref.
-// These are:
-// maximum value of ints is +2^32
-// maximum value of reals is +2^15
-// smalles values of reals is 1/(2^16)
-
-static char *convertNumToPDF(double n)
-{
-    static const int precision = 6;
-    static const int fact = (int) 1E6;  // must be 10^precision
-    static const double epsilon = 0.5E-6;       // 2epsilon must be 10^-precision
-    static char buf[64];
-    // handle very small values: return 0
-    if (fabs(n) < epsilon) {
-        buf[0] = '0';
-        buf[1] = '\0';
-    } else {
-        char ints[64];
-        int bindex = 0, sindex = 0;
-        int ival, fval;
-        // handle the sign part if n is negative
-        if (n < 0) {
-            buf[bindex++] = '-';
-            n = -n;
-        }
-        n += epsilon;           // for rounding
-        // handle the integer part, simply with sprintf
-        ival = (int) floor(n);
-        n -= ival;
-        sprintf(ints, "%d", ival);
-        while (ints[sindex] != 0)
-            buf[bindex++] = ints[sindex++];
-        // handle the fractional part up to 'precision' digits
-        fval = (int) floor(n * fact);
-        if (fval) {
-            // set a dot
-            buf[bindex++] = '.';
-            sindex = bindex + precision;
-            buf[sindex--] = '\0';
-            // fill up trailing zeros with the string terminator NULL
-            while (((fval % 10) == 0) && (sindex >= bindex)) {
-                buf[sindex--] = '\0';
-                fval /= 10;
-            }
-            // fill up the fractional part back to front
-            while (sindex >= bindex) {
-                buf[sindex--] = (fval % 10) + '0';
-                fval /= 10;
-            }
-        } else
-            buf[bindex++] = 0;
-    }
-    return (char *) buf;
-}
-
-static void copyObject(Object * obj)
-{
-    Object obj1;
-    int i, l, c;
-    Ref ref;
-    char *p;
-    GString *s;
-    if (obj->isBool()) {
-        pdf_printf("%s", obj->getBool()? "true" : "false");
-    } else if (obj->isInt()) {
-        pdf_printf("%i", obj->getInt());
-    } else if (obj->isReal()) {
-        pdf_printf("%s", convertNumToPDF(obj->getReal()));
-    } else if (obj->isNum()) {
-        pdf_printf("%s", convertNumToPDF(obj->getNum()));
-    } else if (obj->isString()) {
-        s = (GooString *)obj->getString();
-        p = (char *)s->c_str();
-        l = s->getLength();
-        if (strlen(p) == (unsigned int) l) {
-            pdf_puts("(");
-            for (; *p != 0; p++) {
-                c = (unsigned char) *p;
-                if (c == '(' || c == ')' || c == '\\')
-                    pdf_printf("\\%c", c);
-                else if (c < 0x20 || c > 0x7F)
-                    pdf_printf("\\%03o", c);
-                else
-                    pdfout(c);
-            }
-            pdf_puts(")");
-        } else {
-            pdf_puts("<");
-            for (i = 0; i < l; i++) {
-                c = s->getChar(i) & 0xFF;
-                pdf_printf("%.2x", c);
-            }
-            pdf_puts(">");
-        }
-    } else if (obj->isName()) {
-        copyName((char *)obj->getName());
-    } else if (obj->isNull()) {
-        pdf_puts("null");
-    } else if (obj->isArray()) {
-        pdf_puts("[");
-        for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
-            obj1 = obj->arrayGetNF(i).copy();
-            if (!obj1.isName())
-                pdf_puts(" ");
-            copyObject(&obj1);
-        }
-        pdf_puts("]");
-    } else if (obj->isDict()) {
-        pdf_puts("<<\n");
-        copyDict(obj);
-        pdf_puts(">>");
-    } else if (obj->isStream()) {
-        pdf_puts("<<\n");
-        copyDict(obj->getStream()->getDictObject());
-        pdf_puts(">>\n");
-        pdf_puts("stream\n");
-        copyStream(obj->getStream()->getUndecodedStream());
-        pdf_puts("\nendstream");
-    } else if (obj->isRef()) {
-        ref = obj->getRef();
-        if (ref.num == 0) {
-            pdftex_fail
-                ("PDF inclusion: reference to invalid object"
-                 " (is the included pdf broken?)");
-        } else
-            pdf_printf("%d 0 R", addOther(ref));
-    } else {
-        pdftex_fail("PDF inclusion: type <%s> cannot be copied",
-                    obj->getTypeName());
-    }
-}
-
-static void writeRefs()
-{
-    InObj *r;
-    for (r = inObjList; r != 0; r = r->next) {
-        if (!r->written) {
-            r->written = 1;
-            Object obj1 = xref->fetch(r->ref.num, r->ref.gen);
-            if (r->type == objFont) {
-                assert(!obj1.isStream());
-                pdfbeginobj(r->num, 2);         // \pdfobjcompresslevel = 2 is for this
-                copyFontDict(&obj1, r);
-                pdf_puts("\n");
-                pdfendobj();
-            } else if (r->type != objFontDesc) {        // /FontDescriptor is written via write_fontdescriptor()
-                if (obj1.isStream())
-                    pdfbeginobj(r->num, 0);
-                else
-                    pdfbeginobj(r->num, 2);     // \pdfobjcompresslevel = 2 is for this
-                copyObject(&obj1);
-                pdf_puts("\n");
-                pdfendobj();
-            }
-        }
-    }
-}
-
-static void writeEncodings()
-{
-    UsedEncoding *r, *n;
-    char *glyphNames[256], *s;
-    int i;
-    for (r = encodingList; r != 0; r = r->next) {
-        for (i = 0; i < 256; i++) {
-            if (r->font->isCIDFont()) {
-                pdftex_fail
-                    ("PDF inclusion: CID fonts are not supported"
-                     " (try to disable font replacement to fix this)");
-            }
-            if ((s = (char *)((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
-                glyphNames[i] = s;
-            else
-                glyphNames[i] = notdef;
-        }
-        epdf_write_enc(glyphNames, r->enc_objnum);
-    }
-    for (r = encodingList; r != 0; r = n) {
-        n = r->next;
-#ifdef POPPLER_VERSION
-        r->font->decRefCnt();
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-        delete r;
-    }
-}
-
-// get the pagebox according to the pagebox_spec
-static const PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
-{
-    if (pagebox_spec == pdfboxspecmedia)
-        return page->getMediaBox();
-    else if (pagebox_spec == pdfboxspeccrop)
-        return page->getCropBox();
-    else if (pagebox_spec == pdfboxspecbleed)
-        return page->getBleedBox();
-    else if (pagebox_spec == pdfboxspectrim)
-        return page->getTrimBox();
-    else if (pagebox_spec == pdfboxspecart)
-        return page->getArtBox();
-    else
-        pdftex_fail("PDF inclusion: unknown value of pagebox spec (%i)",
-                    (int) pagebox_spec);
-    return page->getMediaBox(); // to make the compiler happy
-}
-
-
-// Reads various information about the PDF and sets it up for later inclusion.
-// This will fail if the PDF version of the PDF is higher than
-// minor_pdf_version_wanted or page_name is given and can not be found.
-// It makes no sense to give page_name _and_ page_num.
-// Returns the page number.
-
-int
-read_pdf_info(char *image_name, char *page_name, int page_num,
-              int pagebox_spec, int major_pdf_version_wanted, int minor_pdf_version_wanted,
-              int pdf_inclusion_errorlevel)
-{
-    PdfDocument *pdf_doc;
-    Page *page;
-    const PDFRectangle *pagebox;
-#ifdef POPPLER_VERSION
-    int pdf_major_version_found, pdf_minor_version_found;
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    // initialize
-    if (!isInit) {
-        globalParams = std::make_unique<GlobalParams>();
-        globalParams->setErrQuiet(false);
-        isInit = true;
-    }
-    // open PDF file
-    pdf_doc = find_add_document(image_name);
-    epdf_doc = (void *) pdf_doc;
-
-    // check PDF version
-    // this works only for PDF 1.x -- but since any versions of PDF newer
-    // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
-    // then have to changed drastically anyway.
-#ifdef POPPLER_VERSION
-    pdf_major_version_found = pdf_doc->doc->getPDFMajorVersion();
-    pdf_minor_version_found = pdf_doc->doc->getPDFMinorVersion();
-    if ((pdf_major_version_found > major_pdf_version_wanted)
-     || (pdf_minor_version_found > minor_pdf_version_wanted)) {
-        const char *msg =
-            "PDF inclusion: found PDF version <%d.%d>, but at most version <%d.%d> allowed";
-        if (pdf_inclusion_errorlevel > 0) {
-            pdftex_fail(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        } else if (pdf_inclusion_errorlevel < 0) {
-            ; /* do nothing */
-        } else { /* = 0, give warning */
-            pdftex_warn(msg, pdf_major_version_found, pdf_minor_version_found, major_pdf_version_wanted, minor_pdf_version_wanted);
-        }
-    }
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-    epdf_num_pages = pdf_doc->doc->getCatalog()->getNumPages();
-    if (page_name) {
-        // get page by name
-        GString name(page_name);
-        std::unique_ptr<LinkDest> link = pdf_doc->doc->findDest(&name);
-        if (link == 0 || !link->isOk())
-            pdftex_fail("PDF inclusion: invalid destination <%s>", page_name);
-        Ref ref = link->getPageRef();
-        page_num = pdf_doc->doc->getCatalog()->findPage(ref);
-        if (page_num == 0)
-            pdftex_fail("PDF inclusion: destination is not a page <%s>",
-                        page_name);
-    } else {
-        // get page by number
-        if (page_num <= 0 || page_num > epdf_num_pages)
-            pdftex_fail("PDF inclusion: required page does not exist <%i>",
-                        epdf_num_pages);
-    }
-    // get the required page
-    page = pdf_doc->doc->getCatalog()->getPage(page_num);
-
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, pagebox_spec);
-    if (pagebox->x2 > pagebox->x1) {
-        epdf_orig_x = pagebox->x1;
-        epdf_width = pagebox->x2 - pagebox->x1;
-    } else {
-        epdf_orig_x = pagebox->x2;
-        epdf_width = pagebox->x1 - pagebox->x2;
-    }
-    if (pagebox->y2 > pagebox->y1) {
-        epdf_orig_y = pagebox->y1;
-        epdf_height = pagebox->y2 - pagebox->y1;
-    } else {
-        epdf_orig_y = pagebox->y2;
-        epdf_height = pagebox->y1 - pagebox->y2;
-    }
-
-    // get page rotation
-    epdf_rotate = page->getRotate() % 360;
-    if (epdf_rotate < 0)
-        epdf_rotate += 360;
-
-    // page group
-    if (page->getGroup() != NULL)
-        epdf_has_page_group = 1;    // only flag that page group is present;
-                                    // the actual object number will be
-                                    // generated in pdftex.web
-    else
-        epdf_has_page_group = 0;    // no page group present
-
-    pdf_doc->xref = pdf_doc->doc->getXRef();
-    return page_num;
-}
-
-// writes the current epf_doc.
-// Here the included PDF is copied, so most errors that can happen during PDF
-// inclusion will arise here.
-
-void write_epdf(void)
-{
-    Page *page;
-    Ref *pageRef;
-    Dict *pageDict;
-    Object contents, obj1, obj2, pageObj, dictObj;
-    Object groupDict;
-    bool writeSepGroup = false;
-    Object info;
-    char *key;
-    char s[256];
-    int i, l;
-    int rotate;
-    double scale[6] = { 0, 0, 0, 0, 0, 0 };
-    bool writematrix = false;
-    int suppress_ptex_info = getpdfsuppressptexinfo();
-    static const char *pageDictKeys[] = {
-        "LastModified",
-        "Metadata",
-        "PieceInfo",
-        "SeparationInfo",
-//         "Group",
-//         "Resources",
-        NULL
-    };
-
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    (pdf_doc->occurences)--;
-    xref = pdf_doc->xref;
-    inObjList = pdf_doc->inObjList;
-    encodingList = 0;
-    page = pdf_doc->doc->getCatalog()->getPage(epdf_selected_page);
-    pageRef = pdf_doc->doc->getCatalog()->getPageRef(epdf_selected_page);
-    pageObj = xref->fetch(pageRef->num, pageRef->gen);
-    pageDict = pageObj.getDict();
-    rotate = page->getRotate();
-    const PDFRectangle *pagebox;
-    // write the Page header
-    pdf_puts("/Type /XObject\n");
-    pdf_puts("/Subtype /Form\n");
-    pdf_puts("/FormType 1\n");
-
-    // write additional information
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_FILENAME) == 0) {
-        pdf_printf("/%s.FileName (%s)\n", pdfkeyprefix,
-                   convertStringToPDFString(pdf_doc->file_name,
-                                            strlen(pdf_doc->file_name)));
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_PAGENUMBER) == 0) {
-        pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
-    }
-    if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
-        info = pdf_doc->doc->getDocInfoNF().copy();
-        if (info.isRef()) {
-            // the info dict must be indirect (PDF Ref p. 61)
-            pdf_printf("/%s.InfoDict ", pdfkeyprefix);
-            pdf_printf("%d 0 R\n", addOther(info.getRef()));
-        }
-    }
-    // get the pagebox (media, crop...) to use.
-    pagebox = get_pagebox(page, epdf_page_box);
-
-    // handle page rotation
-    if (rotate != 0) {
-        if (rotate % 90 == 0) {
-            // this handles only the simple case: multiple of 90s but these
-            // are the only values allowed according to the reference
-            // (v1.3, p. 78).
-            // the image is rotated around its center.
-            // the /Rotate key is clockwise while the matrix is
-            // counterclockwise :-%
-            tex_printf(", page is rotated %d degrees", rotate);
-            switch (rotate) {
-            case 90:
-                scale[1] = -1;
-                scale[2] = 1;
-                scale[4] = pagebox->x1 - pagebox->y1;
-                scale[5] = pagebox->y1 + pagebox->x2;
-                writematrix = true;
-                break;
-            case 180:
-                scale[0] = scale[3] = -1;
-                scale[4] = pagebox->x1 + pagebox->x2;
-                scale[5] = pagebox->y1 + pagebox->y2;
-                writematrix = true;
-                break;          // width and height are exchanged
-            case 270:
-                scale[1] = 1;
-                scale[2] = -1;
-                scale[4] = pagebox->x1 + pagebox->y2;
-                scale[5] = pagebox->y1 - pagebox->x1;
-                writematrix = true;
-                break;
-            }
-            if (writematrix) {  // The matrix is only written if the image is rotated.
-                sprintf(s, "/Matrix [%.8f %.8f %.8f %.8f %.8f %.8f]\n",
-                        scale[0],
-                        scale[1], scale[2], scale[3], scale[4], scale[5]);
-                pdf_puts(stripzeros(s));
-            }
-        }
-    }
-
-    sprintf(s, "/BBox [%.8f %.8f %.8f %.8f]\n",
-            pagebox->x1, pagebox->y1, pagebox->x2, pagebox->y2);
-    pdf_puts(stripzeros(s));
-
-    // Metadata validity check (as a stream it must be indirect)
-    dictObj = pageDict->lookupNF("Metadata").copy();
-    if (!dictObj.isNull() && !dictObj.isRef())
-        pdftex_warn("PDF inclusion: /Metadata must be indirect object");
-
-    // copy selected items in Page dictionary except Resources & Group
-    for (i = 0; pageDictKeys[i] != NULL; i++) {
-        dictObj = pageDict->lookupNF(pageDictKeys[i]).copy();
-        if (!dictObj.isNull()) {
-            pdf_newline();
-            pdf_printf("/%s ", pageDictKeys[i]);
-            copyObject(&dictObj); // preserves indirection
-        }
-    } 
-
-    // handle page group
-    dictObj = pageDict->lookupNF("Group").copy();
-    if (!dictObj.isNull()) {
-        if (pdfpagegroupval == 0) { 
-            // another pdf with page group was included earlier on the
-            // same page; copy the Group entry as is.  See manual for
-            // info on why this is a warning.
-            if (getpdfsuppresswarningpagegroup() == 0) {
-                pdftex_warn
-    ("PDF inclusion: multiple pdfs with page group included in a single page");
-            }
-            pdf_newline();
-            pdf_puts("/Group ");
-            copyObject(&dictObj);
-        } else {
-            // write Group dict as a separate object, since the Page dict also refers to it
-            dictObj = pageDict->lookup("Group");
-            if (!dictObj.isDict())
-                pdftex_fail("PDF inclusion: /Group dict missing");
-            writeSepGroup = true;
-/*
-This part is only a single line
-            groupDict = Object(page->getGroup());
-in the original patch. In this case, however, pdftex crashes at
-"delete pdf_doc->doc" in "delete_document()" for inclusion of some
-kind of pdf images, for example, figure_missing.pdf in gnuplot.
-A change
-            groupDict = Object(page->getGroup()).copy();
-does not improve the situation.
-The changes below seem to work fine. 
-*/
-// begin modification
-            groupDict = pageDict->lookup("Group");
-            const Dict& dic1 = page->getGroup();
-            const Dict& dic2 = groupDict.getDict();
-            // replace dic2 in groupDict with dic1
-            l = dic2.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictRemove(dic2.getKey(i));
-            }
-            l = dic1.getLength();
-            for (i = 0; i < l; i++) {
-                groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
-                                  dic1.getValNF(i).copy());
-            }
-// end modification
-            pdf_printf("/Group %ld 0 R\n", (long)pdfpagegroupval);
-        }
-    }
-
-    // write the Resources dictionary
-    if (page->getResourceDict() == NULL) {
-        // Resources can be missing (files without them have been spotted
-        // in the wild); in which case the /Resouces of the /Page will be used.
-        // "This practice is not recommended".
-        pdftex_warn
-            ("PDF inclusion: /Resources missing. 'This practice is not recommended' (PDF Ref)");
-    } else {
-        Object *obj1 = page->getResourceDictObject();
-        if (!obj1->isDict())
-            pdftex_fail("PDF inclusion: invalid resources dict type <%s>",
-                        obj1->getTypeName());
-        pdf_newline();
-        pdf_puts("/Resources <<\n");
-        for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
-            obj2 = obj1->dictGetVal(i);
-            key = (char *)obj1->dictGetKey(i);
-            if (strcmp("Font", key) == 0)
-                copyFontResources(&obj2);
-            else if (strcmp("ProcSet", key) == 0)
-                copyProcSet(&obj2);
-            else
-                copyOtherResources(&obj2, (char *)key);
-        }
-        pdf_puts(">>\n");
-    }
-
-    // write the page contents
-    contents = page->getContents();
-    if (contents.isStream()) {
-
-        // Variant A: get stream and recompress under control
-        // of \pdfcompresslevel
-        //
-        // pdfbeginstream();
-        // copyStream(contents->getStream());
-        // pdfendstream();
-
-        // Variant B: copy stream without recompressing
-        //
-        obj1 = contents.streamGetDict()->lookup("F");
-        if (!obj1.isNull()) {
-            pdftex_fail("PDF inclusion: Unsupported external stream");
-        }
-        obj1 = contents.streamGetDict()->lookup("Length");
-        assert(!obj1.isNull());
-        pdf_puts("/Length ");
-        copyObject(&obj1);
-        pdf_puts("\n");
-        obj1 = contents.streamGetDict()->lookup("Filter");
-        if (!obj1.isNull()) {
-            pdf_puts("/Filter ");
-            copyObject(&obj1);
-            pdf_puts("\n");
-            obj1 = contents.streamGetDict()->lookup("DecodeParms");
-            if (!obj1.isNull()) {
-                pdf_puts("/DecodeParms ");
-                copyObject(&obj1);
-                pdf_puts("\n");
-            }
-        }
-        pdf_puts(">>\nstream\n");
-        copyStream(contents.getStream()->getUndecodedStream());
-        pdfendstream();
-    } else if (contents.isArray()) {
-        pdfbeginstream();
-        for (i = 0, l = contents.arrayGetLength(); i < l; ++i) {
-            Object contentsobj = contents.arrayGet(i);
-            copyStream(contentsobj.getStream());
-            if (i < l - 1)
-                pdf_newline();  // add a newline after each stream except the last
-        }
-        pdfendstream();
-    } else {                    // the contents are optional, but we need to include an empty stream
-        pdfbeginstream();
-        pdfendstream();
-    }
-
-    // write out all indirect objects
-    writeRefs();
-
-    // write out all used encodings (and delete list)
-    writeEncodings();
-
-    // write the Group dict if needed
-    if (writeSepGroup) {
-        pdfbeginobj(pdfpagegroupval, 2);
-        copyObject(&groupDict);
-        pdf_puts("\n");
-        pdfendobj();
-        pdfpagegroupval = 0;    // only the 1st included pdf on a page gets its
-                                // Group included in the Page dict
-    }
-
-    // save object list, xref
-    pdf_doc->inObjList = inObjList;
-    pdf_doc->xref = xref;
-}
-
-// Called when an image has been written and it's resources in image_tab are
-// freed and it's not referenced anymore.
-
-void epdf_delete()
-{
-    PdfDocument *pdf_doc = (PdfDocument *) epdf_doc;
-    xref = pdf_doc->xref;
-    if (pdf_doc->occurences < 0) {
-        delete_document(pdf_doc);
-    }
-}
-
-// Called when PDF embedding system is finalized.
-// Now deallocate all remaining PdfDocuments.
-
-void epdf_check_mem()
-{
-    if (isInit) {
-        PdfDocument *p, *n;
-        for (p = pdfDocuments; p; p = n) {
-            n = p->next;
-            delete_document(p);
-        }
-    }
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,208 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. The poppler should be 0.59.0 or newer versions.
-It is tested upto the poppler 0.70.1.
-POPPLER_VERSION should be defined.
-*/
-
-#include <w2c/config.h>
-
-#include <stdlib.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#define GString GooString
-#define xpdfVersion POPPLER_VERSION
-#include <dirent.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Lexer.h"
-#include "Parser.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-static XRef *xref = 0;
-
-int main(int argc, char *argv[])
-{
-    char *p, buf[1024];
-    PDFDoc *doc;
-    GString *fileName;
-    Stream *s;
-    Object srcStream, srcName, catalogDict;
-    FILE *outfile;
-    char *outname;
-    int objnum = 0, objgen = 0;
-    bool extract_xref_table = false;
-    int c;
-    fprintf(stderr, "pdftosrc version %s\n", xpdfVersion);
-    if (argc < 2) {
-        fprintf(stderr,
-                "Usage: pdftosrc <PDF-file> [<stream-object-number>]\n");
-        exit(1);
-    }
-    fileName = new GString(argv[1]);
-    globalParams = new GlobalParams();
-    doc = new PDFDoc(fileName);
-    if (!doc->isOk()) {
-        fprintf(stderr, "Invalid PDF file\n");
-        exit(1);
-    }
-    if (argc >= 3) {
-        objnum = atoi(argv[2]);
-        if (argc >= 4)
-            objgen = atoi(argv[3]);
-    }
-    xref = doc->getXRef();
-    catalogDict = xref->getCatalog();
-    if (!catalogDict.isDict("Catalog")) {
-        fprintf(stderr, "No Catalog found\n");
-        exit(1);
-    }
-    srcStream = Object(objNull);
-    if (objnum == 0) {
-        srcStream = catalogDict.dictLookup("SourceObject");
-        static char const_SourceFile[] = "SourceFile";
-        if (!srcStream.isStream(const_SourceFile)) {
-            fprintf(stderr, "No SourceObject found\n");
-            exit(1);
-        }
-        srcName = srcStream.getStream()->getDict()->lookup("SourceName");
-        if (!srcName.isString()) {
-            fprintf(stderr, "No SourceName found\n");
-            exit(1);
-        }
-        outname = (char *)srcName.getString()->getCString();
-        // We cannot free srcName, as objname shares its string.
-        // srcName.free();
-    } else if (objnum > 0) {
-        srcStream = xref->fetch(objnum, objgen);
-        if (!srcStream.isStream()) {
-            fprintf(stderr, "Not a Stream object\n");
-            exit(1);
-        }
-        sprintf(buf, "%s", fileName->getCString());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        if (objgen == 0)
-            sprintf(p, ".%i", objnum);
-        else
-            sprintf(p, ".%i+%i", objnum, objgen);
-        outname = buf;
-    } else {                    // objnum < 0 means we are extracting the XRef table
-        extract_xref_table = true;
-        sprintf(buf, "%s", fileName->getCString());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        sprintf(p, ".xref");
-        outname = buf;
-    }
-    if (!(outfile = fopen(outname, "wb"))) {
-        fprintf(stderr, "Cannot open file \"%s\" for writing\n", outname);
-        exit(1);
-    }
-    if (extract_xref_table) {
-        int size = xref->getNumObjects();
-        int i;
-        for (i = 0; i < size; i++) {
-            if (xref->getEntry(i)->offset == 0xffffffff)
-                break;
-        }
-        size = i;
-        fprintf(outfile, "xref\n");
-        fprintf(outfile, "0 %i\n", size);
-        for (i = 0; i < size; i++) {
-            XRefEntry *e = xref->getEntry(i);
-            if (e->type != xrefEntryCompressed)
-                fprintf(outfile, "%.10lu %.5i %s\n",
-                        (long unsigned) e->offset, e->gen,
-                        (e->type == xrefEntryFree ? "f" : "n"));
-            else {              // e->offset is the object number of the object stream
-                Stream *str;
-                Lexer *lexer;
-                Parser *parser;
-                Object objStr, obj1, obj2;
-                int nObjects, first, n;
-                int localOffset = 0;
-                Guint firstOffset;
-
-                objStr = xref->fetch(e->offset, 0);
-                assert(objStr.isStream());
-                obj1 = objStr.streamGetDict()->lookup("N");
-                nObjects = obj1.getInt();
-                obj1 = objStr.streamGetDict()->lookup("First");
-                first = obj1.getInt();
-                firstOffset = objStr.getStream()->getBaseStream()->getStart() + first;
-
-                // parse the header: object numbers and offsets
-                objStr.streamReset();
-                str = new EmbedStream(objStr.getStream(), Object(objNull), gTrue, first);
-                lexer = new Lexer(xref, str);
-                parser = new Parser(xref, lexer, gFalse);
-                for (n = 0; n < nObjects; ++n) {
-                    obj1 = parser->getObj();
-                    obj2 = parser->getObj();
-                    if (n == e->gen)
-                        localOffset = obj2.getInt();
-                }
-                while (str->getChar() != EOF) ;
-                delete parser;
-
-                fprintf(outfile, "%.10lu 00000 n\n",
-                        (long unsigned)(firstOffset + localOffset));
-            }
-        }
-    } else {
-        s = srcStream.getStream();
-        s->reset();
-        while ((c = s->getChar()) != EOF)
-            fputc(c, outfile);
-    }
-    if (objnum == 0)
-        fprintf(stderr, "Source file extracted to %s\n", outname);
-    else if (objnum > 0)
-        fprintf(stderr, "Stream object extracted to %s\n", outname);
-    else
-        fprintf(stderr, "Cross-reference table extracted to %s\n", outname);
-    fclose(outfile);
-    delete doc;
-    delete globalParams;
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.71.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.71.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.71.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,207 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. The poppler should be 0.71.0.
-POPPLER_VERSION should be defined.
-*/
-
-#include <w2c/config.h>
-
-#include <stdlib.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#define GString GooString
-#define xpdfVersion POPPLER_VERSION
-#include <dirent.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Lexer.h"
-#include "Parser.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-static XRef *xref = 0;
-
-int main(int argc, char *argv[])
-{
-    char *p, buf[1024];
-    PDFDoc *doc;
-    GString *fileName;
-    Stream *s;
-    Object srcStream, srcName, catalogDict;
-    FILE *outfile;
-    char *outname;
-    int objnum = 0, objgen = 0;
-    bool extract_xref_table = false;
-    int c;
-    fprintf(stderr, "pdftosrc version %s\n", xpdfVersion);
-    if (argc < 2) {
-        fprintf(stderr,
-                "Usage: pdftosrc <PDF-file> [<stream-object-number>]\n");
-        exit(1);
-    }
-    fileName = new GString(argv[1]);
-    globalParams = new GlobalParams();
-    doc = new PDFDoc(fileName);
-    if (!doc->isOk()) {
-        fprintf(stderr, "Invalid PDF file\n");
-        exit(1);
-    }
-    if (argc >= 3) {
-        objnum = atoi(argv[2]);
-        if (argc >= 4)
-            objgen = atoi(argv[3]);
-    }
-    xref = doc->getXRef();
-    catalogDict = xref->getCatalog();
-    if (!catalogDict.isDict("Catalog")) {
-        fprintf(stderr, "No Catalog found\n");
-        exit(1);
-    }
-    srcStream = Object(objNull);
-    if (objnum == 0) {
-        srcStream = catalogDict.dictLookup("SourceObject");
-        static char const_SourceFile[] = "SourceFile";
-        if (!srcStream.isStream(const_SourceFile)) {
-            fprintf(stderr, "No SourceObject found\n");
-            exit(1);
-        }
-        srcName = srcStream.getStream()->getDict()->lookup("SourceName");
-        if (!srcName.isString()) {
-            fprintf(stderr, "No SourceName found\n");
-            exit(1);
-        }
-        outname = (char *)srcName.getString()->getCString();
-        // We cannot free srcName, as objname shares its string.
-        // srcName.free();
-    } else if (objnum > 0) {
-        srcStream = xref->fetch(objnum, objgen);
-        if (!srcStream.isStream()) {
-            fprintf(stderr, "Not a Stream object\n");
-            exit(1);
-        }
-        sprintf(buf, "%s", fileName->getCString());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        if (objgen == 0)
-            sprintf(p, ".%i", objnum);
-        else
-            sprintf(p, ".%i+%i", objnum, objgen);
-        outname = buf;
-    } else {                    // objnum < 0 means we are extracting the XRef table
-        extract_xref_table = true;
-        sprintf(buf, "%s", fileName->getCString());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        sprintf(p, ".xref");
-        outname = buf;
-    }
-    if (!(outfile = fopen(outname, "wb"))) {
-        fprintf(stderr, "Cannot open file \"%s\" for writing\n", outname);
-        exit(1);
-    }
-    if (extract_xref_table) {
-        int size = xref->getNumObjects();
-        int i;
-        for (i = 0; i < size; i++) {
-            if (xref->getEntry(i)->offset == 0xffffffff)
-                break;
-        }
-        size = i;
-        fprintf(outfile, "xref\n");
-        fprintf(outfile, "0 %i\n", size);
-        for (i = 0; i < size; i++) {
-            XRefEntry *e = xref->getEntry(i);
-            if (e->type != xrefEntryCompressed)
-                fprintf(outfile, "%.10lu %.5i %s\n",
-                        (long unsigned) e->offset, e->gen,
-                        (e->type == xrefEntryFree ? "f" : "n"));
-            else {              // e->offset is the object number of the object stream
-                Stream *str;
-                Lexer *lexer;
-                Parser *parser;
-                Object objStr, obj1, obj2;
-                int nObjects, first, n;
-                int localOffset = 0;
-                Guint firstOffset;
-
-                objStr = xref->fetch(e->offset, 0);
-                assert(objStr.isStream());
-                obj1 = objStr.streamGetDict()->lookup("N");
-                nObjects = obj1.getInt();
-                obj1 = objStr.streamGetDict()->lookup("First");
-                first = obj1.getInt();
-                firstOffset = objStr.getStream()->getBaseStream()->getStart() + first;
-
-                // parse the header: object numbers and offsets
-                objStr.streamReset();
-                str = new EmbedStream(objStr.getStream(), Object(objNull), true, first);
-                lexer = new Lexer(xref, str);
-                parser = new Parser(xref, lexer, false);
-                for (n = 0; n < nObjects; ++n) {
-                    obj1 = parser->getObj();
-                    obj2 = parser->getObj();
-                    if (n == e->gen)
-                        localOffset = obj2.getInt();
-                }
-                while (str->getChar() != EOF) ;
-                delete parser;
-
-                fprintf(outfile, "%.10lu 00000 n\n",
-                        (long unsigned)(firstOffset + localOffset));
-            }
-        }
-    } else {
-        s = srcStream.getStream();
-        s->reset();
-        while ((c = s->getChar()) != EOF)
-            fputc(c, outfile);
-    }
-    if (objnum == 0)
-        fprintf(stderr, "Source file extracted to %s\n", outname);
-    else if (objnum > 0)
-        fprintf(stderr, "Stream object extracted to %s\n", outname);
-    else
-        fprintf(stderr, "Cross-reference table extracted to %s\n", outname);
-    fclose(outfile);
-    delete doc;
-    delete globalParams;
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.72.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.72.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.72.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,208 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. The poppler should be 0.72.0 or newer versions.
-It is tested upto the poppler 0.75.0.
-POPPLER_VERSION should be defined.
-*/
-
-#include <w2c/config.h>
-
-#include <stdlib.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#define GString GooString
-#define xpdfVersion POPPLER_VERSION
-#include <dirent.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Lexer.h"
-#include "Parser.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-static XRef *xref = 0;
-
-int main(int argc, char *argv[])
-{
-    char *p, buf[1024];
-    PDFDoc *doc;
-    GString *fileName;
-    Stream *s;
-    Object srcStream, srcName, catalogDict;
-    FILE *outfile;
-    char *outname;
-    int objnum = 0, objgen = 0;
-    bool extract_xref_table = false;
-    int c;
-    fprintf(stderr, "pdftosrc version %s\n", xpdfVersion);
-    if (argc < 2) {
-        fprintf(stderr,
-                "Usage: pdftosrc <PDF-file> [<stream-object-number>]\n");
-        exit(1);
-    }
-    fileName = new GString(argv[1]);
-    globalParams = new GlobalParams();
-    doc = new PDFDoc(fileName);
-    if (!doc->isOk()) {
-        fprintf(stderr, "Invalid PDF file\n");
-        exit(1);
-    }
-    if (argc >= 3) {
-        objnum = atoi(argv[2]);
-        if (argc >= 4)
-            objgen = atoi(argv[3]);
-    }
-    xref = doc->getXRef();
-    catalogDict = xref->getCatalog();
-    if (!catalogDict.isDict("Catalog")) {
-        fprintf(stderr, "No Catalog found\n");
-        exit(1);
-    }
-    srcStream = Object(objNull);
-    if (objnum == 0) {
-        srcStream = catalogDict.dictLookup("SourceObject");
-        static char const_SourceFile[] = "SourceFile";
-        if (!srcStream.isStream(const_SourceFile)) {
-            fprintf(stderr, "No SourceObject found\n");
-            exit(1);
-        }
-        srcName = srcStream.getStream()->getDict()->lookup("SourceName");
-        if (!srcName.isString()) {
-            fprintf(stderr, "No SourceName found\n");
-            exit(1);
-        }
-        outname = (char *)srcName.getString()->c_str();
-        // We cannot free srcName, as objname shares its string.
-        // srcName.free();
-    } else if (objnum > 0) {
-        srcStream = xref->fetch(objnum, objgen);
-        if (!srcStream.isStream()) {
-            fprintf(stderr, "Not a Stream object\n");
-            exit(1);
-        }
-        sprintf(buf, "%s", fileName->c_str());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        if (objgen == 0)
-            sprintf(p, ".%i", objnum);
-        else
-            sprintf(p, ".%i+%i", objnum, objgen);
-        outname = buf;
-    } else {                    // objnum < 0 means we are extracting the XRef table
-        extract_xref_table = true;
-        sprintf(buf, "%s", fileName->c_str());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        sprintf(p, ".xref");
-        outname = buf;
-    }
-    if (!(outfile = fopen(outname, "wb"))) {
-        fprintf(stderr, "Cannot open file \"%s\" for writing\n", outname);
-        exit(1);
-    }
-    if (extract_xref_table) {
-        int size = xref->getNumObjects();
-        int i;
-        for (i = 0; i < size; i++) {
-            if (xref->getEntry(i)->offset == 0xffffffff)
-                break;
-        }
-        size = i;
-        fprintf(outfile, "xref\n");
-        fprintf(outfile, "0 %i\n", size);
-        for (i = 0; i < size; i++) {
-            XRefEntry *e = xref->getEntry(i);
-            if (e->type != xrefEntryCompressed)
-                fprintf(outfile, "%.10lu %.5i %s\n",
-                        (long unsigned) e->offset, e->gen,
-                        (e->type == xrefEntryFree ? "f" : "n"));
-            else {              // e->offset is the object number of the object stream
-                Stream *str;
-                Lexer *lexer;
-                Parser *parser;
-                Object objStr, obj1, obj2;
-                int nObjects, first, n;
-                int localOffset = 0;
-                unsigned int firstOffset;
-
-                objStr = xref->fetch(e->offset, 0);
-                assert(objStr.isStream());
-                obj1 = objStr.streamGetDict()->lookup("N");
-                nObjects = obj1.getInt();
-                obj1 = objStr.streamGetDict()->lookup("First");
-                first = obj1.getInt();
-                firstOffset = objStr.getStream()->getBaseStream()->getStart() + first;
-
-                // parse the header: object numbers and offsets
-                objStr.streamReset();
-                str = new EmbedStream(objStr.getStream(), Object(objNull), true, first);
-                lexer = new Lexer(xref, str);
-                parser = new Parser(xref, lexer, false);
-                for (n = 0; n < nObjects; ++n) {
-                    obj1 = parser->getObj();
-                    obj2 = parser->getObj();
-                    if (n == e->gen)
-                        localOffset = obj2.getInt();
-                }
-                while (str->getChar() != EOF) ;
-                delete parser;
-
-                fprintf(outfile, "%.10lu 00000 n\n",
-                        (long unsigned)(firstOffset + localOffset));
-            }
-        }
-    } else {
-        s = srcStream.getStream();
-        s->reset();
-        while ((c = s->getChar()) != EOF)
-            fputc(c, outfile);
-    }
-    if (objnum == 0)
-        fprintf(stderr, "Source file extracted to %s\n", outname);
-    else if (objnum > 0)
-        fprintf(stderr, "Stream object extracted to %s\n", outname);
-    else
-        fprintf(stderr, "Cross-reference table extracted to %s\n", outname);
-    fclose(outfile);
-    delete doc;
-    delete globalParams;
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,206 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. The poppler should be 0.76.0 upto 0.82.0.
-POPPLER_VERSION should be defined.
-*/
-
-#include <w2c/config.h>
-
-#include <stdlib.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#define GString GooString
-#define xpdfVersion POPPLER_VERSION
-#include <dirent.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Lexer.h"
-#include "Parser.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-static XRef *xref = 0;
-
-int main(int argc, char *argv[])
-{
-    char *p, buf[1024];
-    PDFDoc *doc;
-    GString *fileName;
-    Stream *s;
-    Object srcStream, srcName, catalogDict;
-    FILE *outfile;
-    char *outname;
-    int objnum = 0, objgen = 0;
-    bool extract_xref_table = false;
-    int c;
-    fprintf(stderr, "pdftosrc version %s\n", xpdfVersion);
-    if (argc < 2) {
-        fprintf(stderr,
-                "Usage: pdftosrc <PDF-file> [<stream-object-number>]\n");
-        exit(1);
-    }
-    fileName = new GString(argv[1]);
-    globalParams = new GlobalParams();
-    doc = new PDFDoc(fileName);
-    if (!doc->isOk()) {
-        fprintf(stderr, "Invalid PDF file\n");
-        exit(1);
-    }
-    if (argc >= 3) {
-        objnum = atoi(argv[2]);
-        if (argc >= 4)
-            objgen = atoi(argv[3]);
-    }
-    xref = doc->getXRef();
-    catalogDict = xref->getCatalog();
-    if (!catalogDict.isDict("Catalog")) {
-        fprintf(stderr, "No Catalog found\n");
-        exit(1);
-    }
-    srcStream = Object(objNull);
-    if (objnum == 0) {
-        srcStream = catalogDict.dictLookup("SourceObject");
-        static char const_SourceFile[] = "SourceFile";
-        if (!srcStream.isStream(const_SourceFile)) {
-            fprintf(stderr, "No SourceObject found\n");
-            exit(1);
-        }
-        srcName = srcStream.getStream()->getDict()->lookup("SourceName");
-        if (!srcName.isString()) {
-            fprintf(stderr, "No SourceName found\n");
-            exit(1);
-        }
-        outname = (char *)srcName.getString()->c_str();
-        // We cannot free srcName, as objname shares its string.
-        // srcName.free();
-    } else if (objnum > 0) {
-        srcStream = xref->fetch(objnum, objgen);
-        if (!srcStream.isStream()) {
-            fprintf(stderr, "Not a Stream object\n");
-            exit(1);
-        }
-        sprintf(buf, "%s", fileName->c_str());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        if (objgen == 0)
-            sprintf(p, ".%i", objnum);
-        else
-            sprintf(p, ".%i+%i", objnum, objgen);
-        outname = buf;
-    } else {                    // objnum < 0 means we are extracting the XRef table
-        extract_xref_table = true;
-        sprintf(buf, "%s", fileName->c_str());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        sprintf(p, ".xref");
-        outname = buf;
-    }
-    if (!(outfile = fopen(outname, "wb"))) {
-        fprintf(stderr, "Cannot open file \"%s\" for writing\n", outname);
-        exit(1);
-    }
-    if (extract_xref_table) {
-        int size = xref->getNumObjects();
-        int i;
-        for (i = 0; i < size; i++) {
-            if (xref->getEntry(i)->offset == 0xffffffff)
-                break;
-        }
-        size = i;
-        fprintf(outfile, "xref\n");
-        fprintf(outfile, "0 %i\n", size);
-        for (i = 0; i < size; i++) {
-            XRefEntry *e = xref->getEntry(i);
-            if (e->type != xrefEntryCompressed)
-                fprintf(outfile, "%.10lu %.5i %s\n",
-                        (long unsigned) e->offset, e->gen,
-                        (e->type == xrefEntryFree ? "f" : "n"));
-            else {              // e->offset is the object number of the object stream
-                Stream *str;
-                Lexer *lexer;
-                Parser *parser;
-                Object objStr, obj1, obj2;
-                int nObjects, first, n;
-                int localOffset = 0;
-                unsigned int firstOffset;
-
-                objStr = xref->fetch(e->offset, 0);
-                assert(objStr.isStream());
-                obj1 = objStr.streamGetDict()->lookup("N");
-                nObjects = obj1.getInt();
-                obj1 = objStr.streamGetDict()->lookup("First");
-                first = obj1.getInt();
-                firstOffset = objStr.getStream()->getBaseStream()->getStart() + first;
-
-                // parse the header: object numbers and offsets
-                objStr.streamReset();
-                str = new EmbedStream(objStr.getStream(), Object(objNull), true, first);
-                parser = new Parser(xref, str, false);
-                for (n = 0; n < nObjects; ++n) {
-                    obj1 = parser->getObj();
-                    obj2 = parser->getObj();
-                    if (n == e->gen)
-                        localOffset = obj2.getInt();
-                }
-                while (str->getChar() != EOF) ;
-                delete parser;
-
-                fprintf(outfile, "%.10lu 00000 n\n",
-                        (long unsigned)(firstOffset + localOffset));
-            }
-        }
-    } else {
-        s = srcStream.getStream();
-        s->reset();
-        while ((c = s->getChar()) != EOF)
-            fputc(c, outfile);
-    }
-    if (objnum == 0)
-        fprintf(stderr, "Source file extracted to %s\n", outname);
-    else if (objnum > 0)
-        fprintf(stderr, "Stream object extracted to %s\n", outname);
-    else
-        fprintf(stderr, "Cross-reference table extracted to %s\n", outname);
-    fclose(outfile);
-    delete doc;
-    delete globalParams;
-}

Deleted: branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.83.0.cc
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.83.0.cc	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftosrc-poppler0.83.0.cc	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,205 +0,0 @@
-/*
-Copyright 1996-2017 Han The Thanh, <thanh at pdftex.org>
-
-This file is part of pdfTeX.
-
-pdfTeX 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 2 of the License, or
-(at your option) any later version.
-
-pdfTeX 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/>.
-*/
-
-/*
-This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
-https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. The poppler should be 0.83.0 or newer versions.
-POPPLER_VERSION should be defined.
-*/
-
-#include <w2c/config.h>
-
-#include <stdlib.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef POPPLER_VERSION
-#define GString GooString
-#define xpdfVersion POPPLER_VERSION
-#include <dirent.h>
-#include <goo/GooString.h>
-#include <goo/gmem.h>
-#include <goo/gfile.h>
-#else
-#error POPPLER_VERSION should be defined.
-#endif
-#include <assert.h>
-
-#include "Object.h"
-#include "Stream.h"
-#include "Lexer.h"
-#include "Parser.h"
-#include "Array.h"
-#include "Dict.h"
-#include "XRef.h"
-#include "Catalog.h"
-#include "Page.h"
-#include "GfxFont.h"
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
-
-static XRef *xref = 0;
-
-int main(int argc, char *argv[])
-{
-    char *p, buf[1024];
-    PDFDoc *doc;
-    GString *fileName;
-    Stream *s;
-    Object srcStream, srcName, catalogDict;
-    FILE *outfile;
-    char *outname;
-    int objnum = 0, objgen = 0;
-    bool extract_xref_table = false;
-    int c;
-    fprintf(stderr, "pdftosrc version %s\n", xpdfVersion);
-    if (argc < 2) {
-        fprintf(stderr,
-                "Usage: pdftosrc <PDF-file> [<stream-object-number>]\n");
-        exit(1);
-    }
-    fileName = new GString(argv[1]);
-    globalParams = std::make_unique<GlobalParams>();
-    doc = new PDFDoc(fileName);
-    if (!doc->isOk()) {
-        fprintf(stderr, "Invalid PDF file\n");
-        exit(1);
-    }
-    if (argc >= 3) {
-        objnum = atoi(argv[2]);
-        if (argc >= 4)
-            objgen = atoi(argv[3]);
-    }
-    xref = doc->getXRef();
-    catalogDict = xref->getCatalog();
-    if (!catalogDict.isDict("Catalog")) {
-        fprintf(stderr, "No Catalog found\n");
-        exit(1);
-    }
-    srcStream = Object(objNull);
-    if (objnum == 0) {
-        srcStream = catalogDict.dictLookup("SourceObject");
-        static const char *const_SourceFile = "SourceFile";
-        if (!srcStream.isDict(const_SourceFile)) {
-            fprintf(stderr, "No SourceObject found\n");
-            exit(1);
-        }
-        srcName = srcStream.getStream()->getDict()->lookup("SourceName");
-        if (!srcName.isString()) {
-            fprintf(stderr, "No SourceName found\n");
-            exit(1);
-        }
-        outname = (char *)srcName.getString()->c_str();
-        // We cannot free srcName, as objname shares its string.
-        // srcName.free();
-    } else if (objnum > 0) {
-        srcStream = xref->fetch(objnum, objgen);
-        if (!srcStream.isStream()) {
-            fprintf(stderr, "Not a Stream object\n");
-            exit(1);
-        }
-        sprintf(buf, "%s", fileName->c_str());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        if (objgen == 0)
-            sprintf(p, ".%i", objnum);
-        else
-            sprintf(p, ".%i+%i", objnum, objgen);
-        outname = buf;
-    } else {                    // objnum < 0 means we are extracting the XRef table
-        extract_xref_table = true;
-        sprintf(buf, "%s", fileName->c_str());
-        if ((p = strrchr(buf, '.')) == 0)
-            p = strchr(buf, 0);
-        sprintf(p, ".xref");
-        outname = buf;
-    }
-    if (!(outfile = fopen(outname, "wb"))) {
-        fprintf(stderr, "Cannot open file \"%s\" for writing\n", outname);
-        exit(1);
-    }
-    if (extract_xref_table) {
-        int size = xref->getNumObjects();
-        int i;
-        for (i = 0; i < size; i++) {
-            if (xref->getEntry(i)->offset == 0xffffffff)
-                break;
-        }
-        size = i;
-        fprintf(outfile, "xref\n");
-        fprintf(outfile, "0 %i\n", size);
-        for (i = 0; i < size; i++) {
-            XRefEntry *e = xref->getEntry(i);
-            if (e->type != xrefEntryCompressed)
-                fprintf(outfile, "%.10lu %.5i %s\n",
-                        (long unsigned) e->offset, e->gen,
-                        (e->type == xrefEntryFree ? "f" : "n"));
-            else {              // e->offset is the object number of the object stream
-                Stream *str;
-                Lexer *lexer;
-                Parser *parser;
-                Object objStr, obj1, obj2;
-                int nObjects, first, n;
-                int localOffset = 0;
-                unsigned int firstOffset;
-
-                objStr = xref->fetch(e->offset, 0);
-                assert(objStr.isStream());
-                obj1 = objStr.streamGetDict()->lookup("N");
-                nObjects = obj1.getInt();
-                obj1 = objStr.streamGetDict()->lookup("First");
-                first = obj1.getInt();
-                firstOffset = objStr.getStream()->getBaseStream()->getStart() + first;
-
-                // parse the header: object numbers and offsets
-                objStr.streamReset();
-                str = new EmbedStream(objStr.getStream(), Object(objNull), true, first);
-                parser = new Parser(xref, str, false);
-                for (n = 0; n < nObjects; ++n) {
-                    obj1 = parser->getObj();
-                    obj2 = parser->getObj();
-                    if (n == e->gen)
-                        localOffset = obj2.getInt();
-                }
-                while (str->getChar() != EOF) ;
-                delete parser;
-
-                fprintf(outfile, "%.10lu 00000 n\n",
-                        (long unsigned)(firstOffset + localOffset));
-            }
-        }
-    } else {
-        s = srcStream.getStream();
-        s->reset();
-        while ((c = s->getChar()) != EOF)
-            fputc(c, outfile);
-    }
-    if (objnum == 0)
-        fprintf(stderr, "Source file extracted to %s\n", outname);
-    else if (objnum > 0)
-        fprintf(stderr, "Stream object extracted to %s\n", outname);
-    else
-        fprintf(stderr, "Cross-reference table extracted to %s\n", outname);
-    fclose(outfile);
-    delete doc;
-}

Modified: branches/stable/source/src/texk/web2c/synctexdir/README.txt
===================================================================
--- branches/stable/source/src/texk/web2c/synctexdir/README.txt	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/synctexdir/README.txt	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,176 +1 @@
-# Copyright (c) 2008, 2009, 2010, 2011 jerome DOT laurens AT u-bourgogne DOT fr
-#
-# This file is part of the SyncTeX package.
-#
-# License:
-# --------
-# Permission is hereby granted, free of charge, to any person
-# obtaining a copy of this software and associated documentation
-# files (the "Software"), to deal in the Software without
-# restriction, including without limitation the rights to use,
-# copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the
-# Software is furnished to do so, subject to the following
-# conditions:
-#
-# The above copyright notice and this permission notice shall be
-# included in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-# OTHER DEALINGS IN THE SOFTWARE
-#
-# Except as contained in this notice, the name of the copyright holder  
-# shall not be used in advertising or otherwise to promote the sale,  
-# use or other dealings in this Software without prior written  
-# authorization from the copyright holder.
-#
-# Acknowledgments:
-# ----------------
-# The author received useful remarks from the pdfTeX developers, especially Hahn The Thanh,
-# and significant help from XeTeX developer Jonathan Kew
-# 
-# Nota Bene:
-# ----------
-# If you include or use a significant part of the synctex package into a software,
-# I would appreciate to be listed as contributor and see "SyncTeX" highlighted.
-# 
-# Version 1
-# Thu Jun 19 09:39:21 UTC 2008
-
-
-This file gives the .synctex file specifications.
-
-SyncTeX output file specifications, Version 2, Lun 31 mar 2008 13:50:31 UTC
-===========================================================================
-This is an EBNF file specification extended by ICU regex patterns
-(enclosed between 2 '/'s)
-
-The whole synctex file is made of various records gathered into four different sections:
-
-<synctex file> ::= <preamble> <contents> <postamble> <post scriptum>
-
-Each record is a sequence of text characters following an end of record mark or starting the file,
-and ending with an end of record mark.
-The first characters of a record will determine the type of the record.
-
-<end of record mark> ::= /\n/
-<end of record> ::= /[^\n]*/<end of record mark>
-
-The preamble:
--------------
-
-<preamble> ::= <control record> <input record>* <informations> <forthcoming records>
-
-<control record> ::= /SyncTeX Version:/<version><end of record mark>
-<SyncTeX> ::= 
-<version> ::= /1/
-
-<input record> ::= /Input:/<tag information><end of record mark>
-<tag information> ::= <tag>/:/<file name><end of record mark>
-<tag> ::= <integer>
-<file name> ::= /[^<end of record mark>]*/
-This is used to give a shortcut to filenames.
-
-<informations> ::= <output record>? <magnification record>? <unit record>? <x offset record>? <y offset record>?
-
-<output record> ::= /Output:/<output><end of record mark>
-<output> ::= /dvi|pdf|xdv|[0-9a-zA-Z]*/
-
-<magnification record> ::= /Magnification:/<magnification><end of record>
-<magnification> ::= <integer>
-This is the TeX magnification.
-
-<unit record> ::= /Unit:<unit><end of record>/
-<unit> ::= <integer>
-The SyncTeX unit is <unit> scaled point, 1 in general, 8192 when not given.
-
-<x offset record> ::= /X Offset:/<x offset><end of record>
-<x offset> ::= <integer>
-<y offset record> ::= /Y Offset:/<y offset><end of record>
-<y offset> ::= <integer>
-The offset or the origin of the system of coordinates from the top left point of the page.
-This defaults to 1in for both the vertical and horizontal offsets.
-Both offsets are given in this section in scaled point unit.
-
-<forthcoming records>: The preamble, like any other section may contain in the future any other kind of record,
-except the one starting the next section. In order to ensure some forwards compatibility,
-parsers should anticipate and parse unknown records: an unexpected record should be silently ignored by the parser.
-This means that this format is somehow open an more types of records can be added without breaking existing software.
-
-The preamble ends when a record is found that fits the following section.
-
-The contents:
--------------
-<contents> ::= <contents record><sheet(1)><i line>*<sheet(2)><i line>*...<sheet(N)><i line>*
-
-<contents record>::=/Contents:/<byte offset><end of record>/
-<offset> ::= <byte offset>
-<sheet(n)> ::= <sheet(n) start><v content>*<sheet end>
-<sheet(n) start> ::= /{/<byte offset>/:/<the integer n><end of record>/
-<sheet end> ::= /}/<byte offset><end of record>
-
-<box content> ::= <vbox section>|<hbox section>|<void vbox record>|<void hbox record>
-<vbox section> ::= (<vbox start record><vbox content>*<vbox stop record>)|<box content>*
-<hbox content> ::= <glue record>|<kern record>|<math record>|<box content>
-<hbox section> ::= <hbox start record><box content>*<hbox stop record> 
-
-<void vbox record> ::= /v/<link>/:/<point>/:/<size><end of record>
-<void hbox record> ::= /h/<link>/:/<point>/:/<size><end of record>
-<size> ::= <W>/,/<H>/,/<D>
-<W> ::= <integer>
-<H> ::= <integer>
-<D> ::= <integer>
-<link> ::= <tag>/,/<line>(/,/<column>)?
-<line> ::= <integer>
-<column> ::= <integer>
-
-<current record> ::= /x/<link>/:/<point><end of record>
-<kern record> ::= /k/<link>/:/<point>/:/<W><end of record>
-<glue record> ::= /g/<link>/:/<point><end of record>
-<math record> ::= /$/<link>/:/<point><end of record>
-
-The byte offset is an implicit anchor to navigate the synctex file from sheet to sheet.
-
-The postamble:
---------------
-The postamble closes the file
-If there is no postamble, it means that the typesetting process did not end correctly.
-<postamble> ::= <postamble record><number of objects record>
-
-<postamble record> ::= /Postamble:/<byte offset><end of record>
-<number of objects record> ::= /Count:/<integer><end of record>
-
-The post scriptum:
-------------------
-The post scriptum contains material possibly added by 3rd parties.
-It allows to append some transformation (shift and magnify).
-Typically, one applies a dvi to pdf filter with offset options and magnification,
-then he appends the same options to the synctex file, for example
-
-	dvipdfmx -m 0.486 -x 9472573sp -y 13.3dd source.dvi
-	echo "X Offset:9472573" >> source.synctex
-	echo "Y Offset:13.3dd" >> source.synctex
-	echo "Magnification:0.486" >> source.synctex
-
-
-<post scriptum> ::= (<magnification line>|<x offset line>|<y offset line>)*
-<magnification line> ::= /Magnification:/<post magnification><end of line mark>
-<post magnification> ::= <unsigned decimal float>
-<x offset line> ::= /X Offset:/<post x offset><end of line mark>
-<post x offset> ::= <sign><unsigned decimal float><offset unit>
-<y offset> ::= <x offset>
-<sign> ::= /(+|-)?/
-<offset unit> ::= /(in|cm|mm|pt|bp|pc|sp|dd|cc|nd|nc)?/
-<end of line mark> ::= /[\n\r]*/
-<y offset line> ::= /Y Offset:/<post y offset><end of line mark>
-<post y offset> ::= <sign><unsigned decimal float><offset unit>
-
-This second information will override the offset and magnification previously available in the preamble section.
-All the numbers are encoded using the decimal representation with "C" locale.
-
+The .synctex file specifications is now available as a man page with `man 5 synctex`.

Modified: branches/stable/source/src/texk/web2c/synctexdir/synctex_main.c
===================================================================
--- branches/stable/source/src/texk/web2c/synctexdir/synctex_main.c	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/synctexdir/synctex_main.c	2020-05-15 18:03:05 UTC (rev 825)
@@ -382,7 +382,7 @@
     printf("input:%s\n",Ps->input);
     printf("viewer:%s\n",Ps->viewer);
     printf("before:%s\n",Ps->before);
-    printf("offset:%i\n",Ps->offset);
+    printf("offset:%u\n",Ps->offset);
     printf("middle:%s\n",Ps->middle);
     printf("after:%s\n",Ps->after);
     printf("output:%s\n",Ps->output);
@@ -466,7 +466,7 @@
                     TEST("&{width}", "%f",fabs(synctex_node_box_visible_width(node)));
                     TEST("&{height}","%f",fmax(synctex_node_box_visible_height(node)+synctex_node_box_visible_depth(node),1));
                     TEST("&{before}","%s",(Ps->before && strlen(Ps->before)<SYNCTEX_STR_SIZE?Ps->before:""));
-                    TEST("&{offset}","%i",Ps->offset);
+                    TEST("&{offset}","%u",Ps->offset);
                     TEST("&{middle}","%s",(Ps->middle && strlen(Ps->middle)<SYNCTEX_STR_SIZE?Ps->middle:""));
                     TEST("&{after}", "%s",(Ps->after && strlen(Ps->after)<SYNCTEX_STR_SIZE?Ps->after:""));
 #                   undef TEST
@@ -673,7 +673,7 @@
     printf("y:%f\n",Ps->y);
     printf("almost output:%s\n",Ps->output);
     printf("editor:%s\n",Ps->editor);
-    printf("offset:%i\n",Ps->offset);
+    printf("offset:%u\n",Ps->offset);
     printf("context:%s\n",Ps->context);
     printf("cwd:%s\n",getcwd(NULL,0));
 #endif
@@ -743,7 +743,7 @@
                     TEST("&{input}",  "%s",input);
                     TEST("&{line}",   "%i",synctex_node_line(node));
                     TEST("&{column}", "%i",-1);
-                    TEST("&{offset}", "%i",Ps->offset);
+                    TEST("&{offset}", "%u",Ps->offset);
                     TEST("&{context}","%s",Ps->context);
 #                   undef TEST
                     break;

Modified: branches/stable/source/src/texk/web2c/synctexdir/synctex_parser.c
===================================================================
--- branches/stable/source/src/texk/web2c/synctexdir/synctex_parser.c	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/synctexdir/synctex_parser.c	2020-05-15 18:03:05 UTC (rev 825)
@@ -279,7 +279,7 @@
  *  Free the given node by sending the free message.
  *  - parameter NODE: of type synctex_node_p
  */
-void synctex_node_free(synctex_node_p node) {
+static void synctex_node_free(synctex_node_p node) {
     SYNCTEX_MSG_SEND(node,free);
 }
 #   if defined(SYNCTEX_TESTING)
@@ -436,7 +436,7 @@
 /*
  *  _synctex_tree_set_... methods return the old value.
  *  The return value of _synctex_tree_set_child and 
- *  _synctex_tree_set_sibling must be released somehown.
+ *  _synctex_tree_set_sibling must be released somehow.
  */
 DEFINE_SYNCTEX_TREE__GETSETRESET(sibling)
 DEFINE_SYNCTEX_TREE_GETSETRESET(parent)
@@ -648,12 +648,12 @@
             quoteless_synctex_name = NULL;
         }
     }
-    /*  The operation is successfull, return the arguments by value.    */
+    /*  The operation is successful, return the arguments by value.    */
     open.status = SYNCTEX_STATUS_OK;
     return open;
 }
 
-/*	Opens the ouput file, taking into account the eventual build_directory.
+/*	Opens the output file, taking into account the eventual build_directory.
  *	- returns: an open structure which status is
  *      SYNCTEX_STATUS_OK on success,
  *      SYNCTEX_STATUS_ERROR on failure.
@@ -707,7 +707,7 @@
     } /* if (build_directory...) */
     return open;
 }
-void synctex_reader_free(synctex_reader_p reader) {
+static void synctex_reader_free(synctex_reader_p reader) {
     if (reader) {
         _synctex_free(reader->output);
         _synctex_free(reader->synctex);
@@ -720,7 +720,7 @@
  *  Return reader on success.
  *  Deallocate reader and return NULL on failure.
  */
-synctex_reader_p synctex_reader_init_with_output_file(synctex_reader_p reader, const char * output, const char * build_directory) {
+static synctex_reader_p synctex_reader_init_with_output_file(synctex_reader_p reader, const char * output, const char * build_directory) {
     if (reader) {
         /*  now open the synctex file */
         synctex_open_s open = _synctex_open_v2(output,build_directory,0,synctex_ADD_QUOTES);
@@ -2828,20 +2828,6 @@
     return _synctex_node_sibling_or_parents(node);
 }
 /**
- *  The next nodes corresponds to a deep first tree traversal.
- *  Does not create child proxies as side effect contrary to
- *  the synctex_node_next method above.
- *  May loop infinitely many times if the tree
- *  is not properly built (contains loops).
- */
-synctex_node_p _synctex_node_next(synctex_node_p node) {
-    synctex_node_p N = _synctex_tree_child(node);
-    if (N) {
-        return N;
-    }
-    return _synctex_node_sibling_or_parents(node);
-}
-/**
  *  The node which argument is the sibling.
  *  - return: NULL if the argument has no parent or
  *      is the first child of its parent.
@@ -5165,7 +5151,7 @@
     /* At least 1 more character */
     zs = _synctex_buffer_get_available_size(scanner,1);
     if (zs.size == 0){
-        _synctex_error("Uncomplete synctex file, postamble missing.");
+        _synctex_error("Incomplete synctex file, postamble missing.");
         SYNCTEX_RETURN(SYNCTEX_STATUS_ERROR);
     }
     goto main_loop;
@@ -5182,13 +5168,13 @@
             --ignored_form_depth;
         }
         if (_synctex_next_line(scanner)<SYNCTEX_STATUS_OK) {
-            _synctex_error("Uncomplete container.");
+            _synctex_error("Incomplete container.");
             SYNCTEX_RETURN(SYNCTEX_STATUS_ERROR);
         }
     } else {
         zs = _synctex_buffer_get_available_size(scanner,1);
         if (zs.size == 0){
-            _synctex_error("Uncomplete synctex file, postamble missing.");
+            _synctex_error("Incomplete synctex file, postamble missing.");
             SYNCTEX_RETURN(SYNCTEX_STATUS_ERROR);
         }
     }
@@ -5264,7 +5250,7 @@
                 synctex_node_log(child);
 #   endif
                 if (_synctex_next_line(scanner)<SYNCTEX_STATUS_OK) {
-                    _synctex_error("Uncomplete container.");
+                    _synctex_error("Incomplete container.");
                     SYNCTEX_RETURN(SYNCTEX_STATUS_ERROR);
                 }
                 last_k = last_g = NULL;
@@ -5373,7 +5359,7 @@
                     sibling = _synctex_tree_child(parent);
                     _synctex_data_set_point(sibling,_synctex_data_point_V(parent));
                     if (last_k && last_g && (child = synctex_node_child(parent))) {
-                        /* Find the node preceeding last_k */
+                        /* Find the node preceding last_k */
                         synctex_node_p next;
                         while ((next = __synctex_tree_sibling(child))) {
                             if (next == last_k) {
@@ -5397,7 +5383,7 @@
 #   endif
                 }
                 if (_synctex_next_line(scanner)<SYNCTEX_STATUS_OK) {
-                    _synctex_error("Uncomplete container.");
+                    _synctex_error("Incomplete container.");
                     SYNCTEX_RETURN(SYNCTEX_STATUS_ERROR);
                 }
                 last_k = last_g = NULL;
@@ -5678,7 +5664,7 @@
     }
     zs = _synctex_buffer_get_available_size(scanner,1);
     if (zs.size == 0){
-        _synctex_error("Uncomplete synctex file, postamble missing.");
+        _synctex_error("Incomplete synctex file, postamble missing.");
         SYNCTEX_RETURN(SYNCTEX_STATUS_ERROR);
     }
     last_k = last_g = NULL;
@@ -5944,11 +5930,11 @@
 /*  Used when parsing the synctex file
  */
 static synctex_status_t _synctex_scan_content(synctex_scanner_p scanner) {
-    scanner->reader->lastv = -1;
-    synctex_status_t status = 0;
     if (NULL == scanner) {
         return SYNCTEX_STATUS_BAD_ARGUMENT;
     }
+    scanner->reader->lastv = -1;
+    synctex_status_t status = 0;
     /*  Find where this section starts */
 content_not_found:
     status = _synctex_match_string(scanner,"Content:");
@@ -5956,7 +5942,7 @@
         return status;
     }
     if (_synctex_next_line(scanner)<SYNCTEX_STATUS_OK) {
-        _synctex_error("Uncomplete Content.");
+        _synctex_error("Incomplete Content.");
         return SYNCTEX_STATUS_ERROR;
     }
     if (status == SYNCTEX_STATUS_NOT_OK) {
@@ -6062,8 +6048,8 @@
     scanner->pre_magnification = 1000;
     scanner->pre_unit = 8192;
     scanner->pre_x_offset = scanner->pre_y_offset = 578;
-    /*  initialize the offset with a fake unprobable value,
-     *  If there is a post scriptum section, this value will be overriden by the real life value */
+    /*  initialize the offset with a fake improbable value,
+     *  If there is a post scriptum section, this value will be overridden by the real life value */
     scanner->x_offset = scanner->y_offset = 6.027e23f;
     scanner->reader->line_number = 1;
     
@@ -7613,7 +7599,7 @@
                 width = _synctex_data_width(node);
                 min = _synctex_data_h(node);
                 max = min + (width>0?width:-width);
-                /*  We allways have min <= max */
+                /*  We always have min <= max */
                 if (hit->h<min) {
                     nd.distance = min - hit->h; /*  regions 1+4+7, result is > 0 */
                 } else if (hit->h>max) {
@@ -7627,7 +7613,7 @@
                 width = synctex_node_width(node);
                 min = synctex_node_h(node);
                 max = min + (width>0?width:-width);
-                /*  We allways have min <= max */
+                /*  We always have min <= max */
                 if (hit->h<min) {
                     nd.distance = min - hit->h; /*  regions 1+4+7, result is > 0 */
                 } else if (hit->h>max) {
@@ -7642,7 +7628,7 @@
                 width = synctex_node_hbox_width(node);
                 min = synctex_node_hbox_h(node);
                 max = min + (width>0?width:-width);
-                /*  We allways have min <= max */
+                /*  We always have min <= max */
                 if (hit->h<min) {
                     nd.distance = min - hit->h; /*  regions 1+4+7, result is > 0 */
                 } else if (hit->h>max) {
@@ -7754,7 +7740,7 @@
             min = synctex_node_v(node);
             max = min + _synctex_abs(_synctex_data_depth(node));
             min -= _synctex_abs(_synctex_data_height(node));
-            /*  We allways have min <= max */
+            /*  We always have min <= max */
             if (hit->v<min) {
                 nd.distance = min - hit->v; /*  regions 1+2+3, result is > 0 */
             } else if (hit->v>max) {
@@ -7768,7 +7754,7 @@
             min = synctex_node_v(node);
             max = min + _synctex_abs(synctex_node_depth(node));
             min -= _synctex_abs(synctex_node_height(node));
-            /*  We allways have min <= max */
+            /*  We always have min <= max */
             if (hit->v<min) {
                 nd.distance = min - hit->v; /*  regions 1+2+3, result is > 0 */
             } else if (hit->v>max) {
@@ -7785,7 +7771,7 @@
             max = min + (depth>0?depth:-depth);
             height = synctex_node_hbox_height(node);
             min -= (height>0?height:-height);
-            /*  We allways have min <= max */
+            /*  We always have min <= max */
             if (hit->v<min) {
                 nd.distance = min - hit->v; /*  regions 1+2+3, result is > 0 */
             } else if (hit->v>max) {
@@ -7801,7 +7787,7 @@
             min = _synctex_data_v(node);
             max = min + _synctex_abs(_synctex_data_depth(_synctex_tree_parent(node)));
             min -= _synctex_abs(_synctex_data_height(_synctex_tree_parent(node)));
-            /*  We allways have min <= max */
+            /*  We always have min <= max */
             if (hit->v<min) {
                 nd.distance = min - hit->v; /*  regions 1+2+3, result is > 0 */
             } else if (hit->v>max) {
@@ -8394,10 +8380,10 @@
     gzFile as_gzFile;
     FILE * as_FILE_p;
     void * as_ptr;
-} syncex_file_u;
+} synctex_file_u;
 
 struct synctex_updater_t {
-    syncex_file_u file;
+    synctex_file_u file;
     synctex_print_f print;
     synctex_close_f close;
     int length;             /*  the number of chars appended */
@@ -8560,6 +8546,20 @@
 #       pragma mark -
 #       pragma mark Testers
 #   endif
+/**
+ *  The next nodes corresponds to a deep first tree traversal.
+ *  Does not create child proxies as side effect contrary to
+ *  the synctex_node_next method above.
+ *  May loop infinitely many times if the tree
+ *  is not properly built (contains loops).
+ */
+static synctex_node_p _synctex_node_next(synctex_node_p node) {
+    synctex_node_p N = _synctex_tree_child(node);
+    if (N) {
+        return N;
+    }
+    return _synctex_node_sibling_or_parents(node);
+}
 static int _synctex_input_copy_name(synctex_node_p input, char * name) {
     char * copy = _synctex_malloc(strlen(name)+1);
     memcpy(copy,name,strlen(name)+1);

Modified: branches/stable/source/src/texk/web2c/synctexdir/synctex_parser.h
===================================================================
--- branches/stable/source/src/texk/web2c/synctexdir/synctex_parser.h	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/synctexdir/synctex_parser.h	2020-05-15 18:03:05 UTC (rev 825)
@@ -146,7 +146,7 @@
     
     /*  The main entry points.
      *  Given the file name, a line and a column number, synctex_display_query returns the number of nodes
-     *  satisfying the contrain. Use code like
+     *  satisfying the constrain. Use code like
      *
      *      if(synctex_display_query(scanner,name,line,column,page_hint)>0) {
      *         synctex_node_p node;
@@ -165,7 +165,7 @@
      * - highlight just the character using that information
      *
      *  Given the page and the position in the page, synctex_edit_query returns the number of nodes
-     *  satisfying the contrain. Use code like
+     *  satisfying the constrain. Use code like
      *
      *     if(synctex_edit_query(scanner,page,h,v)>0) {
      *         synctex_node_p node;
@@ -230,7 +230,7 @@
      *          synctex_node_box_visible_depth(node)
      *      );
      *  The visible dimensions are bigger than real ones
-     *  to compensate 0 width boxes or nodes intentionnaly
+     *  to compensate 0 width boxes or nodes intentionally
      *  put outside the box (using \kern for example).
      *  - parameter node: a node.
      *  - returns: a float.
@@ -248,7 +248,7 @@
      *  as opposite to TeX coordinates.
      *  The origin is at the top left corner of the page.
      *  The visible dimensions are bigger than real ones
-     *  to compensate 0 width boxes or nodes intentionnaly
+     *  to compensate 0 width boxes or nodes intentionally
      *  put outside the box (using \kern for example).
      *  All nodes have coordinates, but all nodes don't
      *  have non null size. For example, math nodes
@@ -389,7 +389,7 @@
      *  The scanner owns a list of sheet siblings and
      *  a list of form siblings.
      *  Sheets or forms have one child which is a box:
-     *  theie contents.
+     *  their contents.
      *  - argument page: 1 based sheet page number.
      *  - argument tag: 1 based form tag number.
      */

Modified: branches/stable/source/src/texk/web2c/synctexdir/synctex_parser_advanced.h
===================================================================
--- branches/stable/source/src/texk/web2c/synctexdir/synctex_parser_advanced.h	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/synctexdir/synctex_parser_advanced.h	2020-05-15 18:03:05 UTC (rev 825)
@@ -449,7 +449,7 @@
      */
     void synctex_iterator_free(synctex_iterator_p iterator);
     /**
-     *  Wether the iterator actually points to an object.
+     *  Whether the iterator actually points to an object.
      *  - argument iterator: the object to iterate on...
      */
     synctex_bool_t synctex_iterator_has_next(synctex_iterator_p iterator);

Modified: branches/stable/source/src/texk/web2c/synctexdir/synctex_parser_utils.c
===================================================================
--- branches/stable/source/src/texk/web2c/synctexdir/synctex_parser_utils.c	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/synctexdir/synctex_parser_utils.c	2020-05-15 18:03:05 UTC (rev 825)
@@ -48,7 +48,6 @@
 
 #include <limits.h>
 #include <ctype.h>
-#include <string.h>
 
 #include <sys/stat.h>
 
@@ -87,7 +86,7 @@
 #   include <syslog.h>
 #endif
 
-int _synctex_log(int level, const char * prompt, const char * reason,va_list arg) {
+static int _synctex_log(int level, const char * prompt, const char * reason,va_list arg) {
 	int result;
 #	ifdef SYNCTEX_RECENT_WINDOWS
 	{/*	This code is contributed by William Blum.
@@ -301,7 +300,7 @@
   if(src && dest_ref) {
       const char * lpc;
 #		define dest (*dest_ref)
-		dest = NULL;	/*	Default behavior: no change and sucess. */
+		dest = NULL;	/*	Default behavior: no change and success. */
 		lpc = _synctex_last_path_component(src);
 		if(strlen(lpc)) {
 			if(strchr(lpc,' ') && lpc[0]!='"' && lpc[strlen(lpc)-1]!='"') {
@@ -351,6 +350,7 @@
 		size_t len = strlen(temp);
 		if(UINT_MAX-len<size) {
 			_synctex_error("!  _synctex_merge_strings: Capacity exceeded.");
+			va_end(arg);
 			return NULL;
 		}
 		size+=len;
@@ -371,6 +371,7 @@
 						_synctex_error("!  _synctex_merge_strings: Copy problem");
 						free(result);
 						result = NULL;
+						va_end(arg);
 						return NULL;
 					}
 					dest += size;
@@ -388,7 +389,7 @@
 
 /*  The purpose of _synctex_get_name is to find the name of the synctex file.
  *  There is a list of possible filenames from which we return the most recent one and try to remove all the others.
- *  With two runs of pdftex or xetex we are sure the the synctex file is really the most appropriate.
+ *  With two runs of pdftex or xetex we are sure the synctex file is really the most appropriate.
  */
 int _synctex_get_name(const char * output, const char * build_directory, char ** synctex_name_ref, synctex_io_mode_t * io_mode_ref)
 {

Modified: branches/stable/source/src/texk/web2c/tex.ch
===================================================================
--- branches/stable/source/src/texk/web2c/tex.ch	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/tex.ch	2020-05-15 18:03:05 UTC (rev 825)
@@ -12,7 +12,7 @@
 % (12/21/87) ETM Brought up to TeX 2.7
 % (01/14/88) ETM Brought up to TeX 2.9
 % (02/20/88) PAM Revised format and module numbers
-% (03/01/88) ETM Eliminated some unused variables and unnecesary tests
+% (03/01/88) ETM Eliminated some unused variables and unnecessary tests
 % (05/09/88) ETM Added yet another casting bug fix
 % (06/21/88) ETM Brought up to TeX version 2.93
 % (12/11/88) ETM Brought up to TeX version 2.94
@@ -554,7 +554,7 @@
 @!font_max:integer; {maximum internal font number; ok to exceed |max_quarterword|
   and must be at most |font_base|+|max_font_max|}
 @!font_k:integer; {loop variable for initialization}
-@!hyph_size:integer; {maximun number of hyphen exceptions}
+@!hyph_size:integer; {maximum number of hyphen exceptions}
 @!trie_size:integer; {space for hyphenation patterns; should be larger for
   \.{INITEX} than it is in production versions of \TeX.  50000 is
   needed for English, German, and Portuguese.}
@@ -975,7 +975,7 @@
 @^inner loop@>@^system dependencies@>
 
 The \.{WEB} source for \TeX\ defines |hi(#)==#+min_halfword| which can be
-simplified when |min_halfword=0|.  The Web2C implemetation of \TeX\ can use
+simplified when |min_halfword=0|.  The Web2C implementation of \TeX\ can use
 |hi(#)==#| together with |min_halfword<0| as long as |max_halfword| is
 sufficiently large.
 
@@ -1493,30 +1493,6 @@
 absorbing:begin print(" while scanning text"); info(p):=right_brace_token+"}";
 @z
 
- at x [25.366] expansion depth check
-The |expand| subroutine is used when |cur_cmd>max_command|. It removes a
- at y
-@ Sometimes, recursive calls to the following |expand| routine may
-cause exhaustion of the run-time calling stack, resulting in
-forced execution stops by the operating system. To diminish the chance
-of this happening, a counter is used to keep track of the recursion
-depth, in conjunction with a constant called |expand_depth|.
-
-This does not catch all possible infinite recursion loops, just the ones
-that exhaust the application calling stack. The actual maximum value of
-|expand_depth| is outside of our control, but the initial setting of
-|10000| should be enough to prevent problems.
-@^system dependencies@>
-
-@<Global...@>=
-expand_depth_count:integer;
-
-@ @<Set init...@>=
-expand_depth_count:=0;
-
-@ The |expand| subroutine is used when |cur_cmd>max_command|. It removes a
- at z
-
 @x [25.366]
 begin cv_backup:=cur_val; cvl_backup:=cur_val_level; radix_backup:=radix;
 @y
@@ -1931,53 +1907,6 @@
 done: end_name; name_in_progress:=false;
 warning_index := save_warning_index; {restore |warning_index|}
 end;
-
-@ When |scan_file_name| starts it looks for a |left_brace|
-(skipping \.{\\relax}es, as other \.{\\toks}-like primitives).
-If a |left_brace| is found, then the procedure scans a file
-name contained in a balanced token list, expanding tokens as
-it goes. When the scanner finds the balanced token list, it
-is converted into a string and fed character-by-character to
-|more_name| to do its job the same as in the ``normal'' file
-name scanning.
-
- at p procedure scan_file_name_braced;
-var
-  @!save_scanner_status: small_number; {|scanner_status| upon entry}
-  @!save_def_ref: pointer; {|def_ref| upon entry, important if inside `\.{\\message}}
-  @!save_cur_cs: pointer;
-  @!s: str_number; {temp string}
-  @!p: pointer; {temp pointer}
-  @!i: integer; {loop tally}
-  @!save_stop_at_space: boolean; {this should be in tex.ch}
-  @!dummy: boolean;
-    {Initialising}
-begin save_scanner_status := scanner_status; {|scan_toks| sets |scanner_status| to |absorbing|}
-  save_def_ref := def_ref; {|scan_toks| uses |def_ref| to point to the token list just read}
-  save_cur_cs := cur_cs; {we set |cur_cs| back a few tokens to use in runaway errors}
-    {Scanning a token list}
-  cur_cs := warning_index; {for possible runaway error}
-  {mimick |call_func| from pdfTeX}
-  if scan_toks(false, true) <> 0 then do_nothing; {actually do the scanning}
-  {s := tokens_to_string(def_ref);}
-  old_setting := selector; selector:=new_string;
-  show_token_list(link(def_ref),null,pool_size-pool_ptr);
-  selector := old_setting;
-  s := make_string;
-  {turns the token list read in a string to input}
-    {Restoring some variables}
-  delete_token_ref(def_ref); {remove the token list from memory}
-  def_ref := save_def_ref; {and restore |def_ref|}
-  cur_cs := save_cur_cs; {restore |cur_cs|}
-  scanner_status := save_scanner_status; {restore |scanner_status|}
-    {Passing the read string to the input machinery}
-  save_stop_at_space := stop_at_space; {save |stop_at_space|}
-  stop_at_space := false; {set |stop_at_space| to false to allow spaces in file names}
-  begin_name;
-  for i:=str_start[s] to str_start[s+1]-1 do
-    dummy := more_name(str_pool[i]); {add each read character to the current file name}
-  stop_at_space := save_stop_at_space; {restore |stop_at_space|}
-end;
 @z
 
 @x [29.530] l.10245 - prompt_file_name: prevent empty filenames.
@@ -2582,7 +2511,7 @@
 horizontal list.
 %
 % 91/05/08 \charsubdefmax bug detected by Bernd Raichle
-Because the user can change character substitions or
+Because the user can change character substitutions or
 \.{\\charsubdefmax} on the fly, we have to test a again
 for valid substitutions.
 %
@@ -2779,7 +2708,7 @@
 @ For more than 255 trie op codes, the three fields |trie_link|, |trie_char|,
 and |trie_op| will no longer fit into one memory word; thus using web2c
 we define |trie| as three array instead of an array of records.
-The variant will be implented by reusing the opcode field later on with
+The variant will be implemented by reusing the opcode field later on with
 another macro.
 
 @d trie_link(#)==trie_trl[#] {``downward'' link in a trie}
@@ -3968,7 +3897,7 @@
 @y  24061
 dump_int(hyph_count);
 if hyph_next <= hyph_prime then hyph_next:=hyph_size;
-dump_int(hyph_next);{minumum value of |hyphen_size| needed}
+dump_int(hyph_next);{minimum value of |hyphen_size| needed}
 for k:=0 to hyph_size do if hyph_word[k]<>0 then
   begin dump_int(k+65536*hyph_link[k]);
         {assumes number of hyphen exceptions does not exceed 65535}
@@ -4498,7 +4427,7 @@
 @* \[54/web2c] System-dependent changes for Web2c.
 Here are extra variables for Web2c.  (This numbering of the
 system-dependent section allows easy integration of Web2c and e-\TeX, etc.)
-@^<system dependencies@>
+@^system dependencies@>
 
 @<Glob...@>=
 @!edit_name_start: pool_pointer; {where the filename to switch to starts}
@@ -4679,7 +4608,7 @@
 @!mltex_p: boolean;
 
 @ The boolean variable |mltex_enabled_p| is used to enable ML\TeX's
-character substitution.  It is initialised to |false|.  When loading
+character substitution.  It is initialized to |false|.  When loading
 a \.{FMT} it is set to the value of the boolean |mltex_p| saved in
 the \.{FMT} file.  Additionally it is set to the value of |mltex_p|
 in Ini\TeX.
@@ -4785,7 +4714,7 @@
 character substitution definition for this character.  If a valid
 character substitution exists \.{DVI} code is created as if
 |make_accent| was used.  In all other cases the status of the
-substituion for this character has been changed between the creation
+substitution for this character has been changed between the creation
 of the character node in the hlist and the output of the page---the
 created \.{DVI} code will be correct but the visual result will be
 undefined.
@@ -4802,7 +4731,7 @@
   begin
   @<Get substitution information, check it, goto |found|
   if all is ok, otherwise goto |continue|@>;
-found: @<Print character substition tracing log@>;
+found: @<Print character substitution tracing log@>;
   @<Rebuild character using substitution information@>;
   end
 
@@ -4809,7 +4738,7 @@
 
 @ The global variables for the code to substitute a virtual character
 can be declared as local.  Nonetheless we declare them as global to
-avoid stack overflows because |hlist_out| can be called recursivly.
+avoid stack overflows because |hlist_out| can be called recursively.
 
 @<Glob...@>=
 @!accent_c,@!base_c,@!replace_c:integer;
@@ -4822,7 +4751,7 @@
 
 
 @ Get the character substitution information in |char_sub_code| for
-the character |c|.  The current code checks that the substition
+the character |c|.  The current code checks that the substitution
 exists and is valid and all substitution characters exist in the
 font, so we can {\it not\/} substitute a character used in a
 substitution.  This simplifies the code because we have not to check
@@ -4858,7 +4787,7 @@
 
 @ For |tracinglostchars>99| the substitution is shown in the log file.
 
-@<Print character substition tracing log@>=
+@<Print character substitution tracing log@>=
  if tracing_lost_chars>99 then
    begin begin_diagnostic;
    print_nl("Using character substitution: ");
@@ -4991,5 +4920,75 @@
     get_nullstr := "";
 end;
 
+
+@* \[54/web2c] More changes for Web2c.
+% Related to [25.366] expansion depth check
+Sometimes, recursive calls to the |expand| routine may
+cause exhaustion of the run-time calling stack, resulting in
+forced execution stops by the operating system. To diminish the chance
+of this happening, a counter is used to keep track of the recursion
+depth, in conjunction with a constant called |expand_depth|.
+
+This does not catch all possible infinite recursion loops, just the ones
+that exhaust the application calling stack. The actual maximum value of
+|expand_depth| is outside of our control, but the initial setting of
+|10000| should be enough to prevent problems.
+@^system dependencies@>
+
+@<Global...@>=
+expand_depth_count:integer;
+
+@ @<Set init...@>=
+expand_depth_count:=0;
+
+@ % Related to [29.526] expansion depth check
+When |scan_file_name| starts it looks for a |left_brace|
+(skipping \.{\\relax}es, as other \.{\\toks}-like primitives).
+If a |left_brace| is found, then the procedure scans a file
+name contained in a balanced token list, expanding tokens as
+it goes. When the scanner finds the balanced token list, it
+is converted into a string and fed character-by-character to
+|more_name| to do its job the same as in the ``normal'' file
+name scanning.
+
+ at p procedure scan_file_name_braced;
+var
+  @!save_scanner_status: small_number; {|scanner_status| upon entry}
+  @!save_def_ref: pointer; {|def_ref| upon entry, important if inside `\.{\\message}}
+  @!save_cur_cs: pointer;
+  @!s: str_number; {temp string}
+  @!p: pointer; {temp pointer}
+  @!i: integer; {loop tally}
+  @!save_stop_at_space: boolean; {this should be in tex.ch}
+  @!dummy: boolean;
+    {Initializing}
+begin save_scanner_status := scanner_status; {|scan_toks| sets |scanner_status| to |absorbing|}
+  save_def_ref := def_ref; {|scan_toks| uses |def_ref| to point to the token list just read}
+  save_cur_cs := cur_cs; {we set |cur_cs| back a few tokens to use in runaway errors}
+    {Scanning a token list}
+  cur_cs := warning_index; {for possible runaway error}
+  {mimick |call_func| from pdfTeX}
+  if scan_toks(false, true) <> 0 then do_nothing; {actually do the scanning}
+  {|s := tokens_to_string(def_ref);|}
+  old_setting := selector; selector:=new_string;
+  show_token_list(link(def_ref),null,pool_size-pool_ptr);
+  selector := old_setting;
+  s := make_string;
+  {turns the token list read in a string to input}
+    {Restoring some variables}
+  delete_token_ref(def_ref); {remove the token list from memory}
+  def_ref := save_def_ref; {and restore |def_ref|}
+  cur_cs := save_cur_cs; {restore |cur_cs|}
+  scanner_status := save_scanner_status; {restore |scanner_status|}
+    {Passing the read string to the input machinery}
+  save_stop_at_space := stop_at_space; {save |stop_at_space|}
+  stop_at_space := false; {set |stop_at_space| to false to allow spaces in file names}
+  begin_name;
+  for i:=str_start[s] to str_start[s+1]-1 do
+    dummy := more_name(str_pool[i]); {add each read character to the current file name}
+  stop_at_space := save_stop_at_space; {restore |stop_at_space|}
+end;
+
+
 @* \[55] Index.
 @z

Modified: branches/stable/source/src/texk/web2c/tiedir/ChangeLog
===================================================================
--- branches/stable/source/src/texk/web2c/tiedir/ChangeLog	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/tiedir/ChangeLog	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,22 @@
+2020-04-30  Andreas Scherer  <https://ascherer.github.io>
+
+	* tie-w2c.ch: Fix type format in section 60.
+
+2020-04-27  Andreas Scherer  <https://ascherer.github.io>
+
+	* tie-w2c.ch: Editorial modifications for tie.w.
+
+2020-04-26  Andreas Scherer  <https://ascherer.github.io>
+
+	* tie-w2c.ch: Fix several typos in tie.w.
+
+2020-04-23  Andreas Scherer  <https://ascherer.github.io>
+
+	* tie-w2c.ch: Fix typographic deviations from original tie.
+
 2018-01-18  Karl Berry  <karl at tug.org>
 
-	* tie.w (print, print_ln): printf %s instead of direct string
+	* tie-w2c.w (print, print_ln): printf %s instead of direct string
 	(from Debian).
 
 2014-02-12  Peter Breitenlohner  <peb at mppmu.mpg.de>

Modified: branches/stable/source/src/texk/web2c/tiedir/tie-w2c.ch
===================================================================
--- branches/stable/source/src/texk/web2c/tiedir/tie-w2c.ch	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/tiedir/tie-w2c.ch	2020-05-15 18:03:05 UTC (rev 825)
@@ -17,7 +17,9 @@
 typedef char* string;
 @y
 @ Furthermore we include the additional types |boolean| and |string|.
-/* boolean, false, true; string; all from cpascal.h */
+/* |boolean|, |false|, |true|; |string|; all from \.{<kpathsea/simpletypes.h>} */
+ at s boolean int
+ at s string int
 @z
 
 @x -- we need more input files.
@@ -28,16 +30,81 @@
 /* we don't think that anyone needs more than 32 change files,
 @z
 
+ at x
+ at d print(a)  fprintf(term_out,a) /* `|print|' means write on the terminal */
+ at y
+ at d print(a)  fprintf(term_out,"%s",a) /* `|print|' means write on the terminal */
+ at z
+
+ at x
+ at d print_ln(v)  {fprintf(term_out,v);term_new_line;}
+ at y
+ at d print_ln(v)  {fprintf(term_out,"%s",v);term_new_line;}
+ at z
+
 @x -- add to global includes.
 #include <stdio.h>
 @y
-#include "cpascal.h"
-#include <stdio.h>
+#include "cpascal.h" /* |decr| and |incr| */
 #include <kpathsea/kpathsea.h>
-/* Also redefine usage to avoid clash with function from lib. */
-#define usage tieusage
+#define usage tieusage /* Also redefine |usage| to avoid clash with function from lib. */
 @z
 
+Section 16: Remove redundant #include directives.
+
+ at x l.483
+This should cause no trouble in any \Cl\ program.
+@^system dependencies@>
+
+@<Global |#include|s@>=
+#ifdef __STDC__
+#include <stdlib.h>
+#else
+#include <malloc.h>
+#endif
+ at y
+This should cause no trouble in any \Cl\ program.
+The \.{kpathsea} include files handle the definition of |malloc()|,
+too.
+@^system dependencies@>
+ at z
+
+Sections 18 and 19: use enum as requested in tie.w
+
+ at x l.530
+#define search 0
+#define test 1
+#define reading 2
+#define ignore 3
+typedef int in_file_modes; /* should be |enum(search,test,reading,ignore)| */
+#define unknown 0
+#define master 1
+#define chf 2
+typedef int file_types; /* should be |enum(unknown,master,chf)| */
+ at y
+typedef enum {
+    search,
+    test,
+    reading,
+    ignore } in_file_modes;
+typedef enum {
+    unknown,
+    master,
+    chf } file_types;
+ at z
+
+ at x l.548
+#define normal 0
+#define pre 1
+#define post 2
+typedef int out_md_type; /* should be |enum(normal,pre,post)| */
+ at y
+typedef enum {
+    normal,
+    pre,
+    post } out_md_type;
+ at z
+
 @x l.617
 void get_line(i)
 	file_index i;
@@ -124,6 +191,32 @@
 e_of_ch_preamble (file_index i)
 @z
 
+ at x l.1005
+a line to write and |test_input| ist set to |none|.
+ at y
+a line to write and |test_input| is set to |none|.
+ at z
+
+Section 48: fix indentation of nested loop.
+
+ at x l.1044
+if (prod_chf==chf) {
+  loop @+ {
+    @<Test for normal, |break| when done@>@;
+    @<Test for pre, |break| when done@>@;
+    @<Test for post, |break| when done@>@;
+  }
+} else
+ at y
+if (prod_chf==chf)
+  loop @+ {
+    @<Test for normal, |break| when done@>@;
+    @<Test for pre, |break| when done@>@;
+    @<Test for post, |break| when done@>@;
+  }
+else
+ at z
+
 @x
 void usage()
 {
@@ -135,6 +228,12 @@
    print("Usage: tie -m|-c outfile master changefile(s)");
 @z
 
+ at x l.1169
+change files.  The names fo the file parameters will be inserted into
+ at y
+change files.  The names of the file parameters will be inserted into
+ at z
+
 @x
 main(argc,argv)
         int argc; string *argv;
@@ -152,9 +251,19 @@
   print_ln(copyright); /* include the copyright notice */
 @z
 
+ at x l.1256
+Additionaly we report the history to the user, although this may not
+ at y
+Additionally we report the history to the user, although this may not
+ at z
+
 @x
+@<Print the job |history|@>=
 {string msg;
 @y
+ at s const_string int
+
+@<Print the job |history|@>=
 {const_string msg;
 @z
 
@@ -163,4 +272,4 @@
 @y
       default: /* Anything except spotless, troublesome, or fatal is a bug. */
       case fatal: msg="That was a fatal error, my friend";  break;
- at z
\ No newline at end of file
+ at z

Modified: branches/stable/source/src/texk/web2c/tiedir/tie.w
===================================================================
--- branches/stable/source/src/texk/web2c/tiedir/tie.w	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/tiedir/tie.w	2020-05-15 18:03:05 UTC (rev 825)
@@ -25,7 +25,7 @@
 %		also repaired loop control for end of changes test (92-09-24)
 % Version 2.4 included <stdlib.h> instead of <malloc.h> when
 %		used with ANSI-C				   (92-12-17)
-% See ChangeLog for further changes.
+%
 
 % Here is TeX material that gets inserted after \input cwebmac
 
@@ -458,7 +458,7 @@
 
 @^system dependencies@>
 @d term_out  stdout
- at d print(a)  fprintf(term_out,"%s",a) /* `|print|' means write on the terminal */
+ at d print(a)  fprintf(term_out,a) /* `|print|' means write on the terminal */
 @d print2(a,b)  fprintf(term_out,a,b) /* same with two arguments */
 @d print3(a,b,c)  fprintf(term_out,a,b,c) /* same with three arguments */
 @d print_c(v)  fputc(v,term_out); /* print a single character */
@@ -465,7 +465,7 @@
 @d new_line(v)  fputc('\n',v) /* start new line */
 @d term_new_line  new_line(term_out)
 	/* start new line of the terminal */
- at d print_ln(v)  {fprintf(term_out,"%s",v);term_new_line;}
+ at d print_ln(v)  {fprintf(term_out,v);term_new_line;}
 	/* `|print|' and then start new line */
 @d print2_ln(a,b)  {print2(a,b);term_new_line;} /* same with two arguments */
 @d print3_ln(a,b,c)  {print3(a,b,c);term_new_line;}

Modified: branches/stable/source/src/texk/web2c/web2c/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/web2c/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/web2c/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -212,8 +212,8 @@
   esac
 DATA = $(dist_noinst_DATA) $(nodist_noinst_DATA)
 HEADERS = $(noinst_HEADERS)
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
-	$(LISP)c-auto.in
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
+	c-auto.in
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
 # *not* preserved.
@@ -691,6 +691,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -733,6 +737,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -933,18 +939,19 @@
 	check-am clean clean-cscope clean-generic clean-libtool \
 	clean-noinstPROGRAMS cscope cscopelist-am ctags ctags-am dist \
 	dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
-	dist-xz dist-zip distcheck distclean distclean-compile \
-	distclean-generic distclean-hdr distclean-libtool \
-	distclean-local distclean-tags distcleancheck distdir \
-	distuninstallcheck 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-compile mostlyclean-generic mostlyclean-libtool \
-	pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am
+	dist-xz dist-zip dist-zstd distcheck distclean \
+	distclean-compile distclean-generic distclean-hdr \
+	distclean-libtool distclean-local distclean-tags \
+	distcleancheck distdir distuninstallcheck 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-compile \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags tags-am uninstall uninstall-am
 
 .PRECIOUS: Makefile
 

Modified: branches/stable/source/src/texk/web2c/web2c/aclocal.m4
===================================================================
--- branches/stable/source/src/texk/web2c/web2c/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/web2c/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -595,7 +597,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +618,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -638,7 +640,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -673,7 +675,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -716,7 +718,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -755,7 +757,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -784,7 +786,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +833,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -850,7 +852,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,7 +933,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -991,7 +993,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1019,7 +1021,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1038,7 +1040,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,

Modified: branches/stable/source/src/texk/web2c/web2c/configure
===================================================================
--- branches/stable/source/src/texk/web2c/web2c/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/web2c/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Web2C Tools 2020.
+# Generated by GNU Autoconf 2.69 for Web2C Tools 2021/dev.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='Web2C Tools'
 PACKAGE_TARNAME='web2c-tools'
-PACKAGE_VERSION='2020'
-PACKAGE_STRING='Web2C Tools 2020'
+PACKAGE_VERSION='2021/dev'
+PACKAGE_STRING='Web2C Tools 2021/dev'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -1328,7 +1328,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Web2C Tools 2020 to adapt to many kinds of systems.
+\`configure' configures Web2C Tools 2021/dev to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1398,7 +1398,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Web2C Tools 2020:";;
+     short | recursive ) echo "Configuration of Web2C Tools 2021/dev:";;
    esac
   cat <<\_ACEOF
 
@@ -1521,7 +1521,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Web2C Tools configure 2020
+Web2C Tools configure 2021/dev
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2360,7 +2360,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Web2C Tools $as_me 2020, which was
+It was created by Web2C Tools $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -8047,7 +8047,7 @@
 
 # Define the identity of the package.
  PACKAGE='web2c-tools'
- VERSION='2020'
+ VERSION='2021/dev'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -14576,7 +14576,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Web2C Tools $as_me 2020, which was
+This file was extended by Web2C Tools $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -14642,7 +14642,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-Web2C Tools config.status 2020
+Web2C Tools config.status 2021/dev
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -15737,7 +15737,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/texk/web2c/window/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/window/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/texk/web2c/window/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -115,7 +115,7 @@
 	$(top_srcdir)/../../m4/kpse-macos-framework.m4 \
 	$(top_srcdir)/../../m4/kpse-mpfr-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-pixman-flags.m4 \
-	$(top_srcdir)/../../m4/kpse-poppler-flags.m4 \
+	$(top_srcdir)/../../m4/kpse-pplib-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../../m4/kpse-socket-libs.m4 \
 	$(top_srcdir)/../../m4/kpse-teckit-flags.m4 \
@@ -359,9 +359,9 @@
 PIXMAN_INCLUDES = @PIXMAN_INCLUDES@
 PIXMAN_LIBS = @PIXMAN_LIBS@
 PKG_CONFIG = @PKG_CONFIG@
-POPPLER_DEPEND = @POPPLER_DEPEND@
-POPPLER_INCLUDES = @POPPLER_INCLUDES@
-POPPLER_LIBS = @POPPLER_LIBS@
+PPLIB_DEPEND = @PPLIB_DEPEND@
+PPLIB_INCLUDES = @PPLIB_INCLUDES@
+PPLIB_LIBS = @PPLIB_LIBS@
 PTEXENC_DEPEND = @PTEXENC_DEPEND@
 PTEXENC_INCLUDES = @PTEXENC_INCLUDES@
 PTEXENC_LIBS = @PTEXENC_LIBS@

Modified: branches/stable/source/src/utils/Makefile.in
===================================================================
--- branches/stable/source/src/utils/Makefile.in	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/utils/Makefile.in	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.2 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -107,7 +107,6 @@
 	$(top_srcdir)/../m4/kpse-options.m4 \
 	$(top_srcdir)/../m4/kpse-pixman-flags.m4 \
 	$(top_srcdir)/../m4/kpse-pkgs.m4 \
-	$(top_srcdir)/../m4/kpse-poppler-flags.m4 \
 	$(top_srcdir)/../m4/kpse-ptexenc-flags.m4 \
 	$(top_srcdir)/../m4/kpse-setup.m4 \
 	$(top_srcdir)/../m4/kpse-teckit-flags.m4 \
@@ -171,6 +170,7 @@
 	$(top_srcdir)/../texk/xdvik/ac/xdvik.ac \
 	$(top_srcdir)/../texk/texlive/ac/withenable.ac \
 	$(top_srcdir)/../texk/texlive/ac/texlive.ac \
+	$(top_srcdir)/../libs/pplib/ac/withenable.ac \
 	$(top_srcdir)/../libs/harfbuzz/ac/withenable.ac \
 	$(top_srcdir)/../libs/icu/ac/withenable.ac \
 	$(top_srcdir)/../libs/teckit/ac/withenable.ac \
@@ -177,7 +177,6 @@
 	$(top_srcdir)/../libs/graphite2/ac/withenable.ac \
 	$(top_srcdir)/../libs/zziplib/ac/withenable.ac \
 	$(top_srcdir)/../libs/xpdf/ac/withenable.ac \
-	$(top_srcdir)/../libs/poppler/ac/withenable.ac \
 	$(top_srcdir)/../libs/mpfr/ac/withenable.ac \
 	$(top_srcdir)/../libs/gmp/ac/withenable.ac \
 	$(top_srcdir)/../libs/cairo/ac/withenable.ac \
@@ -665,6 +664,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -707,6 +710,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -883,16 +888,17 @@
 	am--refresh check check-am clean clean-cscope clean-generic \
 	cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
 	dist-gzip dist-hook dist-lzip dist-shar dist-tarZ dist-xz \
-	dist-zip distcheck distclean distclean-generic distclean-tags \
-	distcleancheck distdir distuninstallcheck 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 installdirs-am maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
-	pdf-am ps ps-am tags tags-am uninstall uninstall-am
+	dist-zip dist-zstd distcheck distclean distclean-generic \
+	distclean-tags distcleancheck distdir distuninstallcheck 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 installdirs-am \
+	maintainer-clean maintainer-clean-generic mostlyclean \
+	mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
+	uninstall-am
 
 .PRECIOUS: Makefile
 

Modified: branches/stable/source/src/utils/aclocal.m4
===================================================================
--- branches/stable/source/src/utils/aclocal.m4	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/utils/aclocal.m4	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.2], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.2])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -58,7 +58,7 @@
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -595,7 +597,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +618,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -638,7 +640,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -673,7 +675,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -716,7 +718,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -755,7 +757,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -784,7 +786,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +833,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -850,7 +852,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,7 +933,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -991,7 +993,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1019,7 +1021,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1038,7 +1040,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1187,7 +1189,6 @@
 m4_include([../m4/kpse-options.m4])
 m4_include([../m4/kpse-pixman-flags.m4])
 m4_include([../m4/kpse-pkgs.m4])
-m4_include([../m4/kpse-poppler-flags.m4])
 m4_include([../m4/kpse-ptexenc-flags.m4])
 m4_include([../m4/kpse-setup.m4])
 m4_include([../m4/kpse-teckit-flags.m4])

Modified: branches/stable/source/src/utils/configure
===================================================================
--- branches/stable/source/src/utils/configure	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/utils/configure	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for TeX Live utils 2020.
+# Generated by GNU Autoconf 2.69 for TeX Live utils 2021/dev.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -579,8 +579,8 @@
 # Identity of this package.
 PACKAGE_NAME='TeX Live utils'
 PACKAGE_TARNAME='tex-live-utils'
-PACKAGE_VERSION='2020'
-PACKAGE_STRING='TeX Live utils 2020'
+PACKAGE_VERSION='2021/dev'
+PACKAGE_STRING='TeX Live utils 2021/dev'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -812,8 +812,6 @@
 with_system_teckit
 with_system_graphite2
 with_system_zziplib
-with_system_xpdf
-with_system_poppler
 with_system_mpfr
 with_mpfr_includes
 with_mpfr_libdir
@@ -1395,7 +1393,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures TeX Live utils 2020 to adapt to many kinds of systems.
+\`configure' configures TeX Live utils 2021/dev to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1465,7 +1463,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of TeX Live utils 2020:";;
+     short | recursive ) echo "Configuration of TeX Live utils 2021/dev:";;
    esac
   cat <<\_ACEOF
 
@@ -1642,10 +1640,6 @@
                           (requires pkg-config)
   --with-system-zziplib   use installed zziplib headers and library (requires
                           pkg-config)
-  --with-system-xpdf      use installed poppler headers and library instead of
-                          xpdf library from TL (requires pkg-config)
-  --with-system-poppler   use installed poppler headers and library (requires
-                          pkg-config)
   --with-system-mpfr      use installed mpfr headers and library
   --with-mpfr-includes=DIR
                           mpfr headers installed in DIR
@@ -1753,7 +1747,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-TeX Live utils configure 2020
+TeX Live utils configure 2021/dev
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1854,7 +1848,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by TeX Live utils $as_me 2020, which was
+It was created by TeX Live utils $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3699,7 +3693,7 @@
   need_zlib=yes
 }
 
-# $Id: web2c.ac 53078 2019-12-10 18:39:13Z karl $
+# $Id: web2c.ac 55138 2020-05-14 17:47:47Z karl $
 # texk/web2c/ac/web2c.ac: configure.ac fragment for the TeX Live subdirectory texk/web2c/
 ## configure options for TeX and MF
 
@@ -3882,6 +3876,7 @@
 esac
 
 test "x$enable_web2c:$enable_luatex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -3898,6 +3893,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajittex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -3914,6 +3910,7 @@
 esac
 
 test "x$enable_web2c:$enable_luahbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_lua53=yes
@@ -3931,6 +3928,7 @@
 esac
 
 test "x$enable_web2c:$enable_luajithbtex" = xyes:yes && {
+  need_pplib=yes
   need_libpng=yes
   need_zziplib=yes
   need_luajit=yes
@@ -4003,7 +4001,7 @@
 fi
 
 test "x$enable_web2c:$enable_xetex" = xyes:yes && {
-  need_poppler=yes
+  need_pplib=yes
   need_libpng=yes
   need_freetype2=yes
   need_teckit=yes
@@ -4959,6 +4957,9 @@
 fi
 
 
+## libs/pplib/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/pplib/
+## configure options and TL libraries required for pplib
+
 ## libs/harfbuzz/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/harfbuzz/
 ## configure options and TL libraries required for harfbuzz
 
@@ -5112,11 +5113,7 @@
 
 ## libs/xpdf/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/xpdf/
 ## configure options and TL libraries required for xpdf
-
-# Check whether --with-system-xpdf was given.
-if test "${with_system_xpdf+set}" = set; then :
-  withval=$with_system_xpdf;
-fi
+: "kpse_xpdf_options - no-op"
 if test "x$with_system_xpdf" = x; then
   if test -f $srcdir/../libs/xpdf/configure; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming \`xpdf' headers and library from TL tree" >&5
@@ -5130,40 +5127,6 @@
   ac_configure_args="$ac_configure_args '--with-system-xpdf=$with_system_xpdf'"
 fi
 
-## libs/poppler/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/poppler/
-## configure options and TL libraries required for poppler
-
-# Check whether --with-system-poppler was given.
-if test "${with_system_poppler+set}" = set; then :
-  withval=$with_system_poppler;
-fi
-if test "x$with_system_poppler" = x; then
-  if test -f $srcdir/../libs/poppler/configure; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming \`poppler' headers and library from TL tree" >&5
-$as_echo "$as_me: Assuming \`poppler' headers and library from TL tree" >&6;}
-    with_system_poppler=no
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Assuming installed \`poppler' headers and library" >&5
-$as_echo "$as_me: Assuming installed \`poppler' headers and library" >&6;}
-    with_system_poppler=yes
-  fi
-  ac_configure_args="$ac_configure_args '--with-system-poppler=$with_system_poppler'"
-fi
-if test "x$with_system_poppler" = xyes; then
-  if test "x$with_system_zlib" = x; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}:   ->  installed \`zlib' headers and library" >&5
-$as_echo "$as_me:   ->  installed \`zlib' headers and library" >&6;}
-    with_system_zlib=yes
-    ac_configure_args="$ac_configure_args '--with-system-zlib'"
-  elif test "x$with_system_zlib" != xyes; then
-    as_fn_error $? "Sorry, \`--with-system-poppler' requires \`--with-system-zlib'" "$LINENO" 5
-  fi
-fi
-
-test "x$need_poppler" = xyes && {
-  need_zlib=yes
-}
-
 ## libs/mpfr/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/mpfr/
 ## configure options and TL libraries required for mpfr
 
@@ -6132,7 +6095,7 @@
 
 # Define the identity of the package.
  PACKAGE='tex-live-utils'
- VERSION='2020'
+ VERSION='2021/dev'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -7097,7 +7060,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by TeX Live utils $as_me 2020, which was
+This file was extended by TeX Live utils $as_me 2021/dev, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -7154,7 +7117,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-TeX Live utils config.status 2020
+TeX Live utils config.status 2021/dev
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -7785,7 +7748,9 @@
     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }

Modified: branches/stable/source/src/version.ac
===================================================================
--- branches/stable/source/src/version.ac	2020-05-14 18:05:47 UTC (rev 824)
+++ branches/stable/source/src/version.ac	2020-05-15 18:03:05 UTC (rev 825)
@@ -1,4 +1,4 @@
-dnl $Id: version.ac 53427 2020-01-16 22:02:50Z karl $
+dnl $Id: version.ac 54634 2020-04-10 00:57:04Z karl $
 dnl   Copyright 2016-2020 Karl Berry <tex-live at tug.org>
 dnl   Copyright 2010-2015 Peter Breitenlohner <tex-live at tug.org>
 dnl
@@ -9,4 +9,4 @@
 dnl --------------------------------------------------------
 dnl
 dnl  m4-include this file to define the current TeX Live version
-m4_define([tex_live_version], [2020])
+m4_define([tex_live_version], [2021/dev])



More information about the pdftex-commits mailing list.