pdftex[947] branches/stable/source/src: sync from tl r73590

commits+karl at tug.org commits+karl at tug.org
Sat Jan 25 18:53:19 CET 2025


Revision: 947
          https://tug.org/svn/pdftex?view=revision&revision=947
Author:   karl
Date:     2025-01-25 18:53:19 +0100 (Sat, 25 Jan 2025)
Log Message:
-----------
sync from tl r73590

Revision Links:
--------------
    https://tug.org/svn/pdftex?view=revision&revision=73590

Modified Paths:
--------------
    branches/stable/source/src/configure
    branches/stable/source/src/libs/README
    branches/stable/source/src/libs/configure
    branches/stable/source/src/libs/libpng/ChangeLog
    branches/stable/source/src/libs/libpng/README
    branches/stable/source/src/libs/libpng/TLpatches/ChangeLog
    branches/stable/source/src/libs/libpng/TLpatches/TL-Changes
    branches/stable/source/src/libs/libpng/configure
    branches/stable/source/src/libs/libpng/libpng-src/ANNOUNCE
    branches/stable/source/src/libs/libpng/libpng-src/CHANGES
    branches/stable/source/src/libs/libpng/libpng-src/CMakeLists.txt
    branches/stable/source/src/libs/libpng/libpng-src/Makefile.am
    branches/stable/source/src/libs/libpng/libpng-src/README
    branches/stable/source/src/libs/libpng/libpng-src/configure.ac
    branches/stable/source/src/libs/libpng/libpng-src/contrib/libtests/pngunknown.c
    branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/CHANGES.txt
    branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/CMakeLists.txt
    branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/png2pnm.c
    branches/stable/source/src/libs/libpng/libpng-src/libpng-manual.txt
    branches/stable/source/src/libs/libpng/libpng-src/libpng.3
    branches/stable/source/src/libs/libpng/libpng-src/libpngpf.3
    branches/stable/source/src/libs/libpng/libpng-src/png.5
    branches/stable/source/src/libs/libpng/libpng-src/png.c
    branches/stable/source/src/libs/libpng/libpng-src/png.h
    branches/stable/source/src/libs/libpng/libpng-src/pngconf.h
    branches/stable/source/src/libs/libpng/libpng-src/pngget.c
    branches/stable/source/src/libs/libpng/libpng-src/pnginfo.h
    branches/stable/source/src/libs/libpng/libpng-src/pnglibconf.h
    branches/stable/source/src/libs/libpng/libpng-src/pngpread.c
    branches/stable/source/src/libs/libpng/libpng-src/pngpriv.h
    branches/stable/source/src/libs/libpng/libpng-src/pngread.c
    branches/stable/source/src/libs/libpng/libpng-src/pngrutil.c
    branches/stable/source/src/libs/libpng/libpng-src/pngset.c
    branches/stable/source/src/libs/libpng/libpng-src/pngtest.c
    branches/stable/source/src/libs/libpng/libpng-src/pngtest.png
    branches/stable/source/src/libs/libpng/libpng-src/pngwrite.c
    branches/stable/source/src/libs/libpng/libpng-src/pngwutil.c
    branches/stable/source/src/libs/libpng/libpng-src/scripts/README.txt
    branches/stable/source/src/libs/libpng/libpng-src/scripts/libpng-config-head.in
    branches/stable/source/src/libs/libpng/libpng-src/scripts/libpng.pc.in
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.32sunu
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.64sunu
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.aix
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.atari
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.beos
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.clang
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.darwin
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.dec
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.dj2
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.emcc
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.freebsd
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.gcc
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hp64
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hpgcc
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hpux
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.ibmc
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.linux
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.mips
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.msys
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.netbsd
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.openbsd
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sco
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sggcc
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sgi
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.so9
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.solaris
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.std
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sunos
    branches/stable/source/src/libs/libpng/libpng-src/scripts/pnglibconf.dfa
    branches/stable/source/src/libs/libpng/libpng-src/scripts/pnglibconf.h.prebuilt
    branches/stable/source/src/libs/libpng/libpng-src/scripts/symbols.def
    branches/stable/source/src/libs/libpng/version.ac
    branches/stable/source/src/libs/xpdf/ChangeLog
    branches/stable/source/src/libs/xpdf/ac/xpdf.ac
    branches/stable/source/src/texk/configure
    branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm
    branches/stable/source/src/texk/web2c/ChangeLog
    branches/stable/source/src/texk/web2c/Makefile.in
    branches/stable/source/src/texk/web2c/configure
    branches/stable/source/src/texk/web2c/configure.ac
    branches/stable/source/src/texk/web2c/doc/luatex/luatex-backend.tex
    branches/stable/source/src/texk/web2c/doc/luatex/luatex-tex.tex
    branches/stable/source/src/texk/web2c/doc/luatex/luatex.pdf
    branches/stable/source/src/texk/web2c/doc/luatex/luatex.tex
    branches/stable/source/src/texk/web2c/pdftexdir/ChangeLog
    branches/stable/source/src/texk/web2c/pdftexdir/NEWS
    branches/stable/source/src/texk/web2c/pdftexdir/pdftex.web
    branches/stable/source/src/texk/web2c/tests/fix-changefile-lines.py
    branches/stable/source/src/utils/configure

Added Paths:
-----------
    branches/stable/source/src/libs/libpng/libpng-src/ci/README.md
    branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/.editorconfig
    branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.c89

Modified: branches/stable/source/src/configure
===================================================================
--- branches/stable/source/src/configure	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/configure	2025-01-25 17:53:19 UTC (rev 947)
@@ -6995,6 +6995,10 @@
 ## libs/pplib/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/pplib/
 ## configure options and TL libraries required for pplib
 
+test "x$need_pplib" = xyes && {
+  need_zlib=yes
+}
+
 ## libs/harfbuzz/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/harfbuzz/
 ## configure options and TL libraries required for harfbuzz
 

Modified: branches/stable/source/src/libs/README
===================================================================
--- branches/stable/source/src/libs/README	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/README	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,4 +1,4 @@
-$Id: README 73427 2025-01-11 23:22:13Z kakuto $
+$Id: README 73588 2025-01-25 02:34:51Z kakuto $
 Public domain.  Originally created by Karl Berry, 2005.
 
 Libraries we compile for TeX Live.
@@ -37,7 +37,7 @@
 libpaper 1.1.29 - checked 07jan24
   https://ftp.debian.org/debian/pool/main/libp/libpaper/
 
-libpng 1.6.45 - checked 08jan25
+libpng 1.6.46 - checked 25jan25
   https://sourceforge.net/projects/libpng/files/ - used by many
 
 lua 5.2.4

Modified: branches/stable/source/src/libs/configure
===================================================================
--- branches/stable/source/src/libs/configure	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/configure	2025-01-25 17:53:19 UTC (rev 947)
@@ -6117,6 +6117,10 @@
 ## libs/pplib/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/pplib/
 ## configure options and TL libraries required for pplib
 
+test "x$need_pplib" = xyes && {
+  need_zlib=yes
+}
+
 ## libs/harfbuzz/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/harfbuzz/
 ## configure options and TL libraries required for harfbuzz
 

Modified: branches/stable/source/src/libs/libpng/ChangeLog
===================================================================
--- branches/stable/source/src/libs/libpng/ChangeLog	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/ChangeLog	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,3 +1,13 @@
+2025-01-25 Akira Kakuto  <kakuto at jcom.zaq.ne.jp>
+
+	Import libpng-1.6.46.
+	* version.ac: Adjust.
+
+2025-01-08 Akira Kakuto  <kakuto at jcom.zaq.ne.jp>
+
+	Import libpng-1.6.45.
+	* version.ac: Adjust.
+
 2024-09-13 Akira Kakuto  <kakuto at jcom.zaq.ne.jp>
 
 	Import libpng-1.6.44.

Modified: branches/stable/source/src/libs/libpng/README
===================================================================
--- branches/stable/source/src/libs/libpng/README	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/README	2025-01-25 17:53:19 UTC (rev 947)
@@ -14,4 +14,4 @@
 =============================
 
 2009-07-23	Peter Breitenlohner <peb at mppmu.mpg.de>
-2025-01-08	Akira Kakuto <kakuto at jcom.zaq.ne.jp>
+2025-01-25	Akira Kakuto <kakuto at jcom.zaq.ne.jp>

Modified: branches/stable/source/src/libs/libpng/TLpatches/ChangeLog
===================================================================
--- branches/stable/source/src/libs/libpng/TLpatches/ChangeLog	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/TLpatches/ChangeLog	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,3 +1,7 @@
+2025-01-25  Akira Kakuto <kakuto at jcom.zaq.ne.jp>
+
+	Import libpng-1.6.46.
+
 2025-01-08  Akira Kakuto <kakuto at jcom.zaq.ne.jp>
 
 	Import libpng-1.6.45.

Modified: branches/stable/source/src/libs/libpng/TLpatches/TL-Changes
===================================================================
--- branches/stable/source/src/libs/libpng/TLpatches/TL-Changes	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/TLpatches/TL-Changes	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
-Changes applied to the libpng-1.6.45/ tree as obtained from:
-	https://sourceforge.net/projects/libpng/files/libpng16/1.6.45/
+Changes applied to the libpng-1.6.46/ tree as obtained from:
+	https://sourceforge.net/projects/libpng/files/libpng16/1.6.46/
 
 Copied:
 	scripts/pnglibconf.h.prebuilt -> pnglibconf.h

Modified: branches/stable/source/src/libs/libpng/configure
===================================================================
--- branches/stable/source/src/libs/libpng/configure	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/configure	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.72 for libpng (TeX Live) 1.6.45.
+# Generated by GNU Autoconf 2.72 for libpng (TeX Live) 1.6.46.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -604,8 +604,8 @@
 # Identity of this package.
 PACKAGE_NAME='libpng (TeX Live)'
 PACKAGE_TARNAME='libpng--tex-live-'
-PACKAGE_VERSION='1.6.45'
-PACKAGE_STRING='libpng (TeX Live) 1.6.45'
+PACKAGE_VERSION='1.6.46'
+PACKAGE_STRING='libpng (TeX Live) 1.6.46'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -1342,7 +1342,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 libpng (TeX Live) 1.6.45 to adapt to many kinds of systems.
+'configure' configures libpng (TeX Live) 1.6.46 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1414,7 +1414,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libpng (TeX Live) 1.6.45:";;
+     short | recursive ) echo "Configuration of libpng (TeX Live) 1.6.46:";;
    esac
   cat <<\_ACEOF
 
@@ -1534,7 +1534,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libpng (TeX Live) configure 1.6.45
+libpng (TeX Live) configure 1.6.46
 generated by GNU Autoconf 2.72
 
 Copyright (C) 2023 Free Software Foundation, Inc.
@@ -1861,7 +1861,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by libpng (TeX Live) $as_me 1.6.45, which was
+It was created by libpng (TeX Live) $as_me 1.6.46, which was
 generated by GNU Autoconf 2.72.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -4822,7 +4822,7 @@
 
 # Define the identity of the package.
  PACKAGE='libpng--tex-live-'
- VERSION='1.6.45'
+ VERSION='1.6.46'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -7996,7 +7996,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by libpng (TeX Live) $as_me 1.6.45, which was
+This file was extended by libpng (TeX Live) $as_me 1.6.46, which was
 generated by GNU Autoconf 2.72.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -8064,7 +8064,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-libpng (TeX Live) config.status 1.6.45
+libpng (TeX Live) config.status 1.6.46
 configured by $0, generated by GNU Autoconf 2.72,
   with options \\"\$ac_cs_config\\"
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/ANNOUNCE
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/ANNOUNCE	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/ANNOUNCE	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
-libpng 1.6.45 - January 7, 2025
-===============================
+libpng 1.6.46 - January 23, 2025
+================================
 
 This is a public release of libpng, intended for use in production code.
 
@@ -9,13 +9,13 @@
 
 Source files with LF line endings (for Unix/Linux):
 
- * libpng-1.6.45.tar.xz (LZMA-compressed, recommended)
- * libpng-1.6.45.tar.gz (deflate-compressed)
+ * libpng-1.6.46.tar.xz (LZMA-compressed, recommended)
+ * libpng-1.6.46.tar.gz (deflate-compressed)
 
 Source files with CRLF line endings (for Windows):
 
- * lpng1645.7z (LZMA-compressed, recommended)
- * lpng1645.zip (deflate-compressed)
+ * lpng1646.7z (LZMA-compressed, recommended)
+ * lpng1646.zip (deflate-compressed)
 
 Other information:
 
@@ -25,18 +25,17 @@
  * TRADEMARK.md
 
 
-Changes from version 1.6.44 to version 1.6.45
+Changes from version 1.6.45 to version 1.6.46
 ---------------------------------------------
 
- * Added support for the cICP chunk.
-   (Contributed by Lucas Chollet and John Bowler)
- * Adjusted and improved various checks in colorspace calculations.
+ * Added support for the mDCV and cLLI chunks.
    (Contributed by John Bowler)
- * Rearranged the write order of colorspace chunks for better conformance
-   with the PNG v3 draft specification.
+ * Fixed a build issue affecting C89 compilers.
+   This was a regression introduced in libpng-1.6.45.
    (Contributed by John Bowler)
- * Raised the minimum required CMake version from 3.6 to 3.14.
- * Forked off a development branch for libpng version 1.8.
+ * Added makefile.c89, specifically for testing C89 compilers.
+ * Cleaned up contrib/pngminus: corrected an old typo, removed an old
+   workaround, and updated the CMake file.
 
 
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net.

Modified: branches/stable/source/src/libs/libpng/libpng-src/CHANGES
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/CHANGES	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/CHANGES	2025-01-25 17:53:19 UTC (rev 947)
@@ -6229,6 +6229,16 @@
   Raised the minimum required CMake version from 3.6 to 3.14.
   Forked off a development branch for libpng version 1.8.
 
+Version 1.6.46 [January 23, 2025]
+  Added support for the mDCV and cLLI chunks.
+    (Contributed by John Bowler)
+  Fixed a build issue affecting C89 compilers.
+    This was a regression introduced in libpng-1.6.45.
+    (Contributed by John Bowler)
+  Added makefile.c89, specifically for testing C89 compilers.
+  Cleaned up contrib/pngminus: corrected an old typo, removed an old
+    workaround, and updated the CMake file.
+
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net.
 Subscription is required; visit
 https://lists.sourceforge.net/lists/listinfo/png-mng-implement

Modified: branches/stable/source/src/libs/libpng/libpng-src/CMakeLists.txt
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/CMakeLists.txt	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/CMakeLists.txt	2025-01-25 17:53:19 UTC (rev 947)
@@ -18,7 +18,7 @@
 
 set(PNGLIB_MAJOR 1)
 set(PNGLIB_MINOR 6)
-set(PNGLIB_REVISION 45)
+set(PNGLIB_REVISION 46)
 set(PNGLIB_SUBREVISION 0)
 #set(PNGLIB_SUBREVISION "git")
 set(PNGLIB_VERSION ${PNGLIB_MAJOR}.${PNGLIB_MINOR}.${PNGLIB_REVISION})

Modified: branches/stable/source/src/libs/libpng/libpng-src/Makefile.am
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/Makefile.am	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/Makefile.am	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 # Makefile.am, the source file for Makefile.in (and hence Makefile), is
 #
-# Copyright (c) 2018-2024 Cosmin Truta
+# Copyright (c) 2018-2025 Cosmin Truta
 # Copyright (c) 2004-2016 Glenn Randers-Pehrson
 #
 # This code is released under the libpng license.
@@ -199,7 +199,7 @@
 config.sub configure depcomp install-sh ltmain.sh missing
 
 # PNG_COPTS give extra options for the C compiler to be used on all compilation
-# steps (unless targe_CFLAGS is specified; that will take precedence over
+# steps (unless target_CFLAGS is specified; that will take precedence over
 # AM_CFLAGS)
 PNG_COPTS = @PNG_COPTS@
 AM_CFLAGS = ${PNG_COPTS}

Modified: branches/stable/source/src/libs/libpng/libpng-src/README
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/README	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/README	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,4 +1,4 @@
-README for libpng version 1.6.45
+README for libpng version 1.6.46
 ================================
 
 See the note about version numbers near the top of `png.h`.

Added: branches/stable/source/src/libs/libpng/libpng-src/ci/README.md
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/ci/README.md	                        (rev 0)
+++ branches/stable/source/src/libs/libpng/libpng-src/ci/README.md	2025-01-25 17:53:19 UTC (rev 947)
@@ -0,0 +1,25 @@
+Scripts for the Continuous Integration of the PNG Reference Library
+===================================================================
+
+Copyright Notice
+----------------
+
+Copyright (c) 2019-2024 Cosmin Truta.
+
+Use, modification and distribution are subject to the MIT License.
+Please see the accompanying file `LICENSE_MIT.txt` or visit
+https://opensource.org/license/mit
+
+File List
+---------
+
+    LICENSE_MIT.txt         ==>  The License file
+    README.md               ==>  This file
+    ci_lint.sh              ==>  Lint the source code
+    ci_shellify.sh          ==>  Convert select definitions to shell syntax
+    ci_verify_cmake.sh      ==>  Verify the build driven by CMakeLists.txt
+    ci_verify_configure.sh  ==>  Verify the build driven by configure
+    ci_verify_makefiles.sh  ==>  Verify the build driven by scripts/makefile.*
+    ci_verify_version.sh    ==>  Verify the consistency of version definitions
+    lib/ci.lib.sh           ==>  Shell utilities for the main ci_*.sh scripts
+    targets/*/ci_env.*.sh   ==>  Shell environments for cross-platform testing


Property changes on: branches/stable/source/src/libs/libpng/libpng-src/ci/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: branches/stable/source/src/libs/libpng/libpng-src/configure.ac
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/configure.ac	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/configure.ac	2025-01-25 17:53:19 UTC (rev 947)
@@ -25,7 +25,7 @@
 
 dnl Version number stuff here:
 
-AC_INIT([libpng],[1.6.45],[png-mng-implement at lists.sourceforge.net])
+AC_INIT([libpng],[1.6.46],[png-mng-implement at lists.sourceforge.net])
 AC_CONFIG_MACRO_DIR([scripts/autoconf])
 
 # libpng does not follow GNU file name conventions (hence 'foreign')
@@ -46,10 +46,10 @@
 dnl AM_PREREQ([1.11.2])
 dnl stop configure from automagically running automake
 
-PNGLIB_VERSION=1.6.45
+PNGLIB_VERSION=1.6.46
 PNGLIB_MAJOR=1
 PNGLIB_MINOR=6
-PNGLIB_RELEASE=45
+PNGLIB_RELEASE=46
 
 dnl End of version number stuff
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/contrib/libtests/pngunknown.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/contrib/libtests/pngunknown.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/contrib/libtests/pngunknown.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -113,6 +113,8 @@
 #define png_PLTE PNG_U32( 80,  76,  84,  69)
 #define png_bKGD PNG_U32( 98,  75,  71,  68)
 #define png_cHRM PNG_U32( 99,  72,  82,  77)
+#define png_cICP PNG_U32( 99,  73,  67,  80) /* PNGv3 */
+#define png_cLLI PNG_U32( 99,  76,  76,  73) /* PNGv3 */
 #define png_eXIf PNG_U32(101,  88,  73, 102) /* registered July 2017 */
 #define png_fRAc PNG_U32(102,  82,  65,  99) /* registered, not defined */
 #define png_gAMA PNG_U32(103,  65,  77,  65)
@@ -122,6 +124,7 @@
 #define png_hIST PNG_U32(104,  73,  83,  84)
 #define png_iCCP PNG_U32(105,  67,  67,  80)
 #define png_iTXt PNG_U32(105,  84,  88, 116)
+#define png_mDCV PNG_U32(109,  68,  67,  86) /* PNGv3 */
 #define png_oFFs PNG_U32(111,  70,  70, 115)
 #define png_pCAL PNG_U32(112,  67,  65,  76)
 #define png_pHYs PNG_U32(112,  72,  89, 115)
@@ -210,6 +213,20 @@
          1,
 #     endif
       1,  START, 0 },
+   { "cICP", PNG_INFO_cICP, png_cICP,
+#     ifdef PNG_READ_cICP_SUPPORTED
+         0,
+#     else
+         1,
+#     endif
+      1,  START, 0 },
+   { "cLLI", PNG_INFO_cLLI, png_cLLI,
+#     ifdef PNG_READ_cLLI_SUPPORTED
+         0,
+#     else
+         1,
+#     endif
+      1,  START, 0 },
    { "eXIf", PNG_INFO_eXIf, png_eXIf,
 #     ifdef PNG_READ_eXIf_SUPPORTED
          0,
@@ -245,6 +262,13 @@
          1,
 #     endif
       1, ABSENT, 0 },
+   { "mDCV", PNG_INFO_mDCV, png_mDCV,
+#     ifdef PNG_READ_mDCV_SUPPORTED
+         0,
+#     else
+         1,
+#     endif
+      1,  START, 0 },
    { "oFFs", PNG_INFO_oFFs, png_oFFs,
 #     ifdef PNG_READ_oFFs_SUPPORTED
          0,

Added: branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/.editorconfig
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/.editorconfig	                        (rev 0)
+++ branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/.editorconfig	2025-01-25 17:53:19 UTC (rev 947)
@@ -0,0 +1,29 @@
+# https://editorconfig.org
+
+root = true
+
+[*]
+charset = utf-8
+end_of_line = unset
+indent_size = unset
+indent_style = space
+insert_final_newline = true
+max_doc_length = 79
+max_line_length = 79
+trim_trailing_whitespace = true
+
+[*.[ch]]
+indent_size = 2
+indent_style = space
+
+[CMakeLists.txt]
+indent_size = 4
+indent_style = space
+max_doc_length = 79
+max_line_length = 99
+
+[{Makefile,makevms.com}]
+indent_size = unset
+indent_style = unset
+max_doc_length = 79
+max_line_length = 99

Modified: branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/CHANGES.txt
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/CHANGES.txt	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/CHANGES.txt	2025-01-25 17:53:19 UTC (rev 947)
@@ -11,3 +11,4 @@
         1.6 - 2018.08.05 - Improve portability and fix style (Cosmin Truta)
         1.7 - 2019.01.22 - Change license to MIT (Willem van Schaik)
         1.8 - 2024.01.09 - Fix, improve, modernize (Cosmin Truta)
+        1.9 - 2025.01.10 - Delete conditionally-compiled code (Cosmin Truta)

Modified: branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/CMakeLists.txt
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/CMakeLists.txt	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/CMakeLists.txt	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,9 +1,9 @@
-# Copyright (c) 2018-2024 Cosmin Truta
+# Copyright (c) 2018-2025 Cosmin Truta
 #
 # This software is released under the MIT license. For conditions of
 # distribution and use, see the LICENSE file part of this package.
 
-cmake_minimum_required(VERSION 3.5)
+cmake_minimum_required(VERSION 3.14)
 
 project(PNGMINUS C)
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/png2pnm.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/png2pnm.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/contrib/pngminus/png2pnm.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -66,7 +66,7 @@
           if ((fp_al = fopen (argv[argi], "wb")) == NULL)
           {
             fname_al = argv[argi];
-            fprintf (stderr, "PNM2PNG\n");
+            fprintf (stderr, "PNG2PNM\n");
             fprintf (stderr, "Error:  cannot create alpha-channel file %s\n",
                      argv[argi]);
             exit (1);
@@ -235,22 +235,6 @@
   /* set up (if applicable) the expansion of grayscale images to bit-depth 8 */
   png_set_expand_gray_1_2_4_to_8 (png_ptr);
 
-#ifdef NJET
-  /* downgrade 16-bit images to 8-bit */
-  if (bit_depth == 16)
-    png_set_strip_16 (png_ptr);
-  /* transform grayscale images into full-color */
-  if (color_type == PNG_COLOR_TYPE_GRAY ||
-      color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
-    png_set_gray_to_rgb (png_ptr);
-  /* if the PNG image has a gAMA chunk then gamma-correct the output image */
-  {
-    double file_gamma;
-    if (png_get_gAMA (png_ptr, info_ptr, &file_gamma))
-      png_set_gamma (png_ptr, (double) 2.2, file_gamma);
-  }
-#endif
-
   /* read the image file, with all of the above image transforms applied */
   png_read_png (png_ptr, info_ptr, 0, NULL);
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/libpng-manual.txt
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/libpng-manual.txt	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/libpng-manual.txt	2025-01-25 17:53:19 UTC (rev 947)
@@ -9,7 +9,7 @@
 
  Based on:
 
- libpng version 1.6.36, December 2018, through 1.6.45 - January 2025
+ libpng version 1.6.36, December 2018, through 1.6.46 - January 2025
  Updated and distributed by Cosmin Truta
  Copyright (c) 2018-2025 Cosmin Truta
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/libpng.3
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/libpng.3	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/libpng.3	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
-.TH LIBPNG 3 "January 7, 2025"
+.TH LIBPNG 3 "January 23, 2025"
 .SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.6.45
+libpng \- Portable Network Graphics (PNG) Reference Library 1.6.46
 
 .SH SYNOPSIS
 \fB#include <png.h>\fP
@@ -528,7 +528,7 @@
 
  Based on:
 
- libpng version 1.6.36, December 2018, through 1.6.45 - January 2025
+ libpng version 1.6.36, December 2018, through 1.6.46 - January 2025
  Updated and distributed by Cosmin Truta
  Copyright (c) 2018-2025 Cosmin Truta
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/libpngpf.3
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/libpngpf.3	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/libpngpf.3	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
-.TH LIBPNGPF 3 "January 7, 2025"
+.TH LIBPNGPF 3 "January 23, 2025"
 .SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.6.45
+libpng \- Portable Network Graphics (PNG) Reference Library 1.6.46
 (private functions)
 
 .SH SYNOPSIS

Modified: branches/stable/source/src/libs/libpng/libpng-src/png.5
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/png.5	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/png.5	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,4 +1,4 @@
-.TH PNG 5 "January 7, 2025"
+.TH PNG 5 "January 23, 2025"
 .SH NAME
 png \- Portable Network Graphics (PNG) format
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/png.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/png.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/png.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -13,7 +13,7 @@
 #include "pngpriv.h"
 
 /* Generate a compiler error if there is an old png.h in the search path. */
-typedef png_libpng_version_1_6_45 Your_png_h_is_not_version_1_6_45;
+typedef png_libpng_version_1_6_46 Your_png_h_is_not_version_1_6_46;
 
 /* Tells libpng that we have already handled the first "num_bytes" bytes
  * of the PNG file signature.  If the PNG data is embedded into another
@@ -793,7 +793,7 @@
    return PNG_STRING_COPYRIGHT
 #else
    return PNG_STRING_NEWLINE \
-      "libpng version 1.6.45" PNG_STRING_NEWLINE \
+      "libpng version 1.6.46" PNG_STRING_NEWLINE \
       "Copyright (c) 2018-2025 Cosmin Truta" PNG_STRING_NEWLINE \
       "Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson" \
       PNG_STRING_NEWLINE \
@@ -1544,57 +1544,60 @@
     *  Adobe Wide Gamut RGB
     *    0.258728243040113 0.724682314948566 0.016589442011321
     */
-   int error = 0;
+   {
+      int error = 0;
 
-   /* By the argument above overflow should be impossible here, however the
-    * code now simply returns a failure code.  The xy subtracts in the arguments
-    * to png_muldiv are *not* checked for overflow because the checks at the
-    * start guarantee they are in the range 0..110000 and png_fixed_point is a
-    * 32-bit signed number.
-    */
-   if (png_muldiv(&left, xy->greenx-xy->bluex, xy->redy - xy->bluey, 8) == 0)
-      return 1;
-   if (png_muldiv(&right, xy->greeny-xy->bluey, xy->redx - xy->bluex, 8) == 0)
-      return 1;
-   denominator = png_fp_sub(left, right, &error);
-   if (error) return 1;
+      /* By the argument above overflow should be impossible here, however the
+       * code now simply returns a failure code.  The xy subtracts in the
+       * arguments to png_muldiv are *not* checked for overflow because the
+       * checks at the start guarantee they are in the range 0..110000 and
+       * png_fixed_point is a 32-bit signed number.
+       */
+      if (png_muldiv(&left, xy->greenx-xy->bluex, xy->redy - xy->bluey, 8) == 0)
+         return 1;
+      if (png_muldiv(&right, xy->greeny-xy->bluey, xy->redx - xy->bluex, 8) ==
+            0)
+         return 1;
+      denominator = png_fp_sub(left, right, &error);
+      if (error) return 1;
 
-   /* Now find the red numerator. */
-   if (png_muldiv(&left, xy->greenx-xy->bluex, xy->whitey-xy->bluey, 8) == 0)
-      return 1;
-   if (png_muldiv(&right, xy->greeny-xy->bluey, xy->whitex-xy->bluex, 8) == 0)
-      return 1;
+      /* Now find the red numerator. */
+      if (png_muldiv(&left, xy->greenx-xy->bluex, xy->whitey-xy->bluey, 8) == 0)
+         return 1;
+      if (png_muldiv(&right, xy->greeny-xy->bluey, xy->whitex-xy->bluex, 8) ==
+            0)
+         return 1;
 
-   /* Overflow is possible here and it indicates an extreme set of PNG cHRM
-    * chunk values.  This calculation actually returns the reciprocal of the
-    * scale value because this allows us to delay the multiplication of white-y
-    * into the denominator, which tends to produce a small number.
-    */
-   if (png_muldiv(&red_inverse, xy->whitey, denominator,
-                  png_fp_sub(left, right, &error)) == 0 || error ||
-       red_inverse <= xy->whitey /* r+g+b scales = white scale */)
-      return 1;
+      /* Overflow is possible here and it indicates an extreme set of PNG cHRM
+       * chunk values.  This calculation actually returns the reciprocal of the
+       * scale value because this allows us to delay the multiplication of
+       * white-y into the denominator, which tends to produce a small number.
+       */
+      if (png_muldiv(&red_inverse, xy->whitey, denominator,
+                     png_fp_sub(left, right, &error)) == 0 || error ||
+          red_inverse <= xy->whitey /* r+g+b scales = white scale */)
+         return 1;
 
-   /* Similarly for green_inverse: */
-   if (png_muldiv(&left, xy->redy-xy->bluey, xy->whitex-xy->bluex, 8) == 0)
-      return 1;
-   if (png_muldiv(&right, xy->redx-xy->bluex, xy->whitey-xy->bluey, 8) == 0)
-      return 1;
-   if (png_muldiv(&green_inverse, xy->whitey, denominator,
-                  png_fp_sub(left, right, &error)) == 0 || error ||
-       green_inverse <= xy->whitey)
-      return 1;
+      /* Similarly for green_inverse: */
+      if (png_muldiv(&left, xy->redy-xy->bluey, xy->whitex-xy->bluex, 8) == 0)
+         return 1;
+      if (png_muldiv(&right, xy->redx-xy->bluex, xy->whitey-xy->bluey, 8) == 0)
+         return 1;
+      if (png_muldiv(&green_inverse, xy->whitey, denominator,
+                     png_fp_sub(left, right, &error)) == 0 || error ||
+          green_inverse <= xy->whitey)
+         return 1;
 
-   /* And the blue scale, the checks above guarantee this can't overflow but it
-    * can still produce 0 for extreme cHRM values.
-    */
-   blue_scale = png_fp_sub(png_fp_sub(png_reciprocal(xy->whitey),
-                                      png_reciprocal(red_inverse), &error),
-                           png_reciprocal(green_inverse), &error);
-   if (error || blue_scale <= 0)
-      return 1;
+      /* And the blue scale, the checks above guarantee this can't overflow but
+       * it can still produce 0 for extreme cHRM values.
+       */
+      blue_scale = png_fp_sub(png_fp_sub(png_reciprocal(xy->whitey),
+                                         png_reciprocal(red_inverse), &error),
+                              png_reciprocal(green_inverse), &error);
+      if (error || blue_scale <= 0)
+         return 1;
+   }
 
-
    /* And fill in the png_XYZ.  Again the subtracts are safe because of the
     * checks on the xy values at the start (the subtracts just calculate the
     * corresponding z values.)
@@ -3390,6 +3393,26 @@
 }
 #endif
 
+#if defined(PNG_FLOATING_POINT_SUPPORTED) && \
+   !defined(PNG_FIXED_POINT_MACRO_SUPPORTED) && \
+   (defined(PNG_cLLI_SUPPORTED) || defined(PNG_mDCV_SUPPORTED))
+png_uint_32
+png_fixed_ITU(png_const_structrp png_ptr, double fp, png_const_charp text)
+{
+   double r = floor(10000 * fp + .5);
+
+   if (r > 2147483647. || r < 0)
+      png_fixed_error(png_ptr, text);
+
+#  ifndef PNG_ERROR_TEXT_SUPPORTED
+   PNG_UNUSED(text)
+#  endif
+
+   return (png_uint_32)r;
+}
+#endif
+
+
 #if defined(PNG_GAMMA_SUPPORTED) || defined(PNG_COLORSPACE_SUPPORTED) ||\
     defined(PNG_INCH_CONVERSIONS_SUPPORTED) || defined(PNG_READ_pHYs_SUPPORTED)
 /* muldiv functions */

Modified: branches/stable/source/src/libs/libpng/libpng-src/png.h
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/png.h	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/png.h	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 /* png.h - header file for PNG reference library
  *
- * libpng version 1.6.45
+ * libpng version 1.6.46
  *
  * Copyright (c) 2018-2025 Cosmin Truta
  * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson
@@ -14,7 +14,7 @@
  *   libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger
  *   libpng versions 0.97, January 1998, through 1.6.35, July 2018:
  *     Glenn Randers-Pehrson
- *   libpng versions 1.6.36, December 2018, through 1.6.45, January 2025:
+ *   libpng versions 1.6.36, December 2018, through 1.6.46, January 2025:
  *     Cosmin Truta
  *   See also "Contributing Authors", below.
  */
@@ -238,7 +238,7 @@
  *    ...
  *    1.5.30                  15    10530  15.so.15.30[.0]
  *    ...
- *    1.6.45                  16    10645  16.so.16.45[.0]
+ *    1.6.46                  16    10646  16.so.16.46[.0]
  *
  *    Henceforth the source version will match the shared-library major and
  *    minor numbers; the shared-library major version number will be used for
@@ -274,7 +274,7 @@
  */
 
 /* Version information for png.h - this should match the version in png.c */
-#define PNG_LIBPNG_VER_STRING "1.6.45"
+#define PNG_LIBPNG_VER_STRING "1.6.46"
 #define PNG_HEADER_VERSION_STRING " libpng version " PNG_LIBPNG_VER_STRING "\n"
 
 /* The versions of shared library builds should stay in sync, going forward */
@@ -285,7 +285,7 @@
 /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */
 #define PNG_LIBPNG_VER_MAJOR   1
 #define PNG_LIBPNG_VER_MINOR   6
-#define PNG_LIBPNG_VER_RELEASE 45
+#define PNG_LIBPNG_VER_RELEASE 46
 
 /* This should be zero for a public release, or non-zero for a
  * development version.
@@ -316,7 +316,7 @@
  * From version 1.0.1 it is:
  * XXYYZZ, where XX=major, YY=minor, ZZ=release
  */
-#define PNG_LIBPNG_VER 10645 /* 1.6.45 */
+#define PNG_LIBPNG_VER 10646 /* 1.6.46 */
 
 /* Library configuration: these options cannot be changed after
  * the library has been built.
@@ -426,7 +426,7 @@
 /* This triggers a compiler error in png.c, if png.c and png.h
  * do not agree upon the version number.
  */
-typedef char* png_libpng_version_1_6_45;
+typedef char* png_libpng_version_1_6_46;
 
 /* Basic control structions.  Read libpng-manual.txt or libpng.3 for more info.
  *
@@ -744,7 +744,21 @@
 #define PNG_INFO_sCAL 0x4000U  /* ESR, 1.0.6 */
 #define PNG_INFO_IDAT 0x8000U  /* ESR, 1.0.6 */
 #define PNG_INFO_eXIf 0x10000U /* GR-P, 1.6.31 */
-#define PNG_INFO_cICP 0x20000U
+#define PNG_INFO_cICP 0x20000U /* PNGv3: 1.6.45 */
+#define PNG_INFO_cLLI 0x40000U /* PNGv3: 1.6.45 */
+#define PNG_INFO_mDCV 0x80000U /* PNGv3: 1.6.45 */
+/* APNG: these chunks are stored as unknown, these flags are never set
+ * however they are provided as a convenience for implementors of APNG and
+ * avoids any merge conflicts.
+ *
+ * Private chunks: these chunk names violate the chunk name recommendations
+ * because the chunk definitions have no signature and because the private
+ * chunks with these names have been reserved.  Private definitions should
+ * avoid them.
+ */
+#define PNG_INFO_acTL 0x100000U /* PNGv3: 1.6.45: unknown */
+#define PNG_INFO_fcTL 0x200000U /* PNGv3: 1.6.45: unknown */
+#define PNG_INFO_fdAT 0x400000U /* PNGv3: 1.6.45: unknown */
 
 /* This is used for the transformation routines, as some of them
  * change these values for the row.  It also should enable using
@@ -1976,9 +1990,12 @@
 
 #ifdef PNG_cICP_SUPPORTED
 PNG_EXPORT(250, png_uint_32, png_get_cICP, (png_const_structrp png_ptr,
-    png_inforp info_ptr, png_bytep colour_primaries,
+    png_const_inforp info_ptr, png_bytep colour_primaries,
     png_bytep transfer_function, png_bytep matrix_coefficients,
     png_bytep video_full_range_flag));
+#endif
+
+#ifdef PNG_cICP_SUPPORTED
 PNG_EXPORT(251, void, png_set_cICP, (png_const_structrp png_ptr,
     png_inforp info_ptr, png_byte colour_primaries,
     png_byte transfer_function, png_byte matrix_coefficients,
@@ -1985,6 +2002,32 @@
     png_byte video_full_range_flag));
 #endif
 
+#ifdef PNG_cLLI_SUPPORTED
+PNG_FP_EXPORT(252, png_uint_32, png_get_cLLI, (png_const_structrp png_ptr,
+         png_const_inforp info_ptr, double *maximum_content_light_level,
+         double *maximum_frame_average_light_level))
+PNG_FIXED_EXPORT(253, png_uint_32, png_get_cLLI_fixed,
+    (png_const_structrp png_ptr, png_const_inforp info_ptr,
+    /* The values below are in cd/m2 (nits) and are scaled by 10,000; not
+     * 100,000 as in the case of png_fixed_point.
+     */
+    png_uint_32p maximum_content_light_level_scaled_by_10000,
+    png_uint_32p maximum_frame_average_light_level_scaled_by_10000))
+#endif
+
+#ifdef PNG_cLLI_SUPPORTED
+PNG_FP_EXPORT(254, void, png_set_cLLI, (png_const_structrp png_ptr,
+         png_inforp info_ptr, double maximum_content_light_level,
+         double maximum_frame_average_light_level))
+PNG_FIXED_EXPORT(255, void, png_set_cLLI_fixed, (png_const_structrp png_ptr,
+    png_inforp info_ptr,
+    /* The values below are in cd/m2 (nits) and are scaled by 10,000; not
+     * 100,000 as in the case of png_fixed_point.
+     */
+    png_uint_32 maximum_content_light_level_scaled_by_10000,
+    png_uint_32 maximum_frame_average_light_level_scaled_by_10000))
+#endif
+
 #ifdef PNG_eXIf_SUPPORTED
 PNG_EXPORT(246, png_uint_32, png_get_eXIf, (png_const_structrp png_ptr,
     png_inforp info_ptr, png_bytep *exif));
@@ -2029,6 +2072,60 @@
     int color_type, int interlace_method, int compression_method,
     int filter_method));
 
+#ifdef PNG_mDCV_SUPPORTED
+PNG_FP_EXPORT(256, png_uint_32, png_get_mDCV, (png_const_structrp png_ptr,
+    png_const_inforp info_ptr,
+    /* The chromaticities of the mastering display.  As cHRM, but independent of
+     * the encoding endpoints in cHRM, or cICP, or iCCP.  These values will
+     * always be in the range 0 to 1.3107.
+     */
+    double *white_x, double *white_y, double *red_x, double *red_y,
+    double *green_x, double *green_y, double *blue_x, double *blue_y,
+    /* Mastering display luminance in cd/m2 (nits). */
+    double *mastering_display_maximum_luminance,
+    double *mastering_display_minimum_luminance))
+
+PNG_FIXED_EXPORT(257, png_uint_32, png_get_mDCV_fixed,
+    (png_const_structrp png_ptr, png_const_inforp info_ptr,
+    png_fixed_point *int_white_x, png_fixed_point *int_white_y,
+    png_fixed_point *int_red_x, png_fixed_point *int_red_y,
+    png_fixed_point *int_green_x, png_fixed_point *int_green_y,
+    png_fixed_point *int_blue_x, png_fixed_point *int_blue_y,
+    /* Mastering display luminance in cd/m2 (nits) multiplied (scaled) by
+     * 10,000.
+     */
+    png_uint_32p mastering_display_maximum_luminance_scaled_by_10000,
+    png_uint_32p mastering_display_minimum_luminance_scaled_by_10000))
+#endif
+
+#ifdef PNG_mDCV_SUPPORTED
+PNG_FP_EXPORT(258, void, png_set_mDCV, (png_const_structrp png_ptr,
+    png_inforp info_ptr,
+    /* The chromaticities of the mastering display.  As cHRM, but independent of
+     * the encoding endpoints in cHRM, or cICP, or iCCP.
+     */
+    double white_x, double white_y, double red_x, double red_y, double green_x,
+    double green_y, double blue_x, double blue_y,
+    /* Mastering display luminance in cd/m2 (nits). */
+    double mastering_display_maximum_luminance,
+    double mastering_display_minimum_luminance))
+
+PNG_FIXED_EXPORT(259, void, png_set_mDCV_fixed, (png_const_structrp png_ptr,
+    png_inforp info_ptr,
+    /* The admissible range of these values is not the full range of a PNG
+     * fixed point value.  Negative values cannot be encoded and the maximum
+     * value is about 1.3 */
+    png_fixed_point int_white_x, png_fixed_point int_white_y,
+    png_fixed_point int_red_x, png_fixed_point int_red_y,
+    png_fixed_point int_green_x, png_fixed_point int_green_y,
+    png_fixed_point int_blue_x, png_fixed_point int_blue_y,
+    /* These are PNG unsigned 4 byte values: 31-bit unsigned values.  The MSB
+     * must be zero.
+     */
+    png_uint_32 mastering_display_maximum_luminance_scaled_by_10000,
+    png_uint_32 mastering_display_minimum_luminance_scaled_by_10000))
+#endif
+
 #ifdef PNG_oFFs_SUPPORTED
 PNG_EXPORT(145, png_uint_32, png_get_oFFs, (png_const_structrp png_ptr,
    png_const_inforp info_ptr, png_int_32 *offset_x, png_int_32 *offset_y,
@@ -3249,7 +3346,7 @@
  * one to use is one more than this.)
  */
 #ifdef PNG_EXPORT_LAST_ORDINAL
-  PNG_EXPORT_LAST_ORDINAL(251);
+  PNG_EXPORT_LAST_ORDINAL(259);
 #endif
 
 #ifdef __cplusplus

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngconf.h
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngconf.h	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngconf.h	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 /* pngconf.h - machine-configurable file for libpng
  *
- * libpng version 1.6.45
+ * libpng version 1.6.46
  *
  * Copyright (c) 2018-2025 Cosmin Truta
  * Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngget.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngget.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngget.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -787,7 +787,7 @@
 #ifdef PNG_cICP_SUPPORTED
 png_uint_32 PNGAPI
 png_get_cICP(png_const_structrp png_ptr,
-             png_inforp info_ptr, png_bytep colour_primaries,
+             png_const_inforp info_ptr, png_bytep colour_primaries,
              png_bytep transfer_function, png_bytep matrix_coefficients,
              png_bytep video_full_range_flag)
 {
@@ -805,10 +805,115 @@
         return (PNG_INFO_cICP);
     }
 
-    return (0);
+    return 0;
 }
 #endif
 
+#ifdef PNG_cLLI_SUPPORTED
+#  ifdef PNG_FIXED_POINT_SUPPORTED
+png_uint_32 PNGAPI
+png_get_cLLI_fixed(png_const_structrp png_ptr, png_const_inforp info_ptr,
+    png_uint_32p maxCLL,
+    png_uint_32p maxFALL)
+{
+   png_debug1(1, "in %s retrieval function", "cLLI");
+
+   if (png_ptr != NULL && info_ptr != NULL &&
+       (info_ptr->valid & PNG_INFO_cLLI) != 0)
+   {
+      if (maxCLL != NULL) *maxCLL = info_ptr->maxCLL;
+      if (maxFALL != NULL) *maxFALL = info_ptr->maxFALL;
+      return PNG_INFO_cLLI;
+   }
+
+   return 0;
+}
+#  endif
+
+#  ifdef PNG_FLOATING_POINT_SUPPORTED
+png_uint_32 PNGAPI
+png_get_cLLI(png_const_structrp png_ptr, png_const_inforp info_ptr,
+      double *maxCLL, double *maxFALL)
+{
+   png_debug1(1, "in %s retrieval function", "cLLI(float)");
+
+   if (png_ptr != NULL && info_ptr != NULL &&
+       (info_ptr->valid & PNG_INFO_cLLI) != 0)
+   {
+      if (maxCLL != NULL) *maxCLL = info_ptr->maxCLL * .0001;
+      if (maxFALL != NULL) *maxFALL = info_ptr->maxFALL * .0001;
+      return PNG_INFO_cLLI;
+   }
+
+   return 0;
+}
+#  endif
+#endif /* cLLI */
+
+#ifdef PNG_mDCV_SUPPORTED
+#  ifdef PNG_FIXED_POINT_SUPPORTED
+png_uint_32 PNGAPI
+png_get_mDCV_fixed(png_const_structrp png_ptr, png_const_inforp info_ptr,
+    png_fixed_point *white_x, png_fixed_point *white_y,
+    png_fixed_point *red_x, png_fixed_point *red_y,
+    png_fixed_point *green_x, png_fixed_point *green_y,
+    png_fixed_point *blue_x, png_fixed_point *blue_y,
+    png_uint_32p mastering_maxDL, png_uint_32p mastering_minDL)
+{
+   png_debug1(1, "in %s retrieval function", "mDCV");
+
+   if (png_ptr != NULL && info_ptr != NULL &&
+       (info_ptr->valid & PNG_INFO_mDCV) != 0)
+   {
+      if (white_x != NULL) *white_x = info_ptr->mastering_white_x * 2;
+      if (white_y != NULL) *white_y = info_ptr->mastering_white_y * 2;
+      if (red_x != NULL) *red_x = info_ptr->mastering_red_x * 2;
+      if (red_y != NULL) *red_y = info_ptr->mastering_red_y * 2;
+      if (green_x != NULL) *green_x = info_ptr->mastering_green_x * 2;
+      if (green_y != NULL) *green_y = info_ptr->mastering_green_y * 2;
+      if (blue_x != NULL) *blue_x = info_ptr->mastering_blue_x * 2;
+      if (blue_y != NULL) *blue_y = info_ptr->mastering_blue_y * 2;
+      if (mastering_maxDL != NULL) *mastering_maxDL = info_ptr->mastering_maxDL;
+      if (mastering_minDL != NULL) *mastering_minDL = info_ptr->mastering_minDL;
+      return PNG_INFO_mDCV;
+   }
+
+   return 0;
+}
+#  endif
+
+#  ifdef PNG_FLOATING_POINT_SUPPORTED
+png_uint_32 PNGAPI
+png_get_mDCV(png_const_structrp png_ptr, png_const_inforp info_ptr,
+    double *white_x, double *white_y, double *red_x, double *red_y,
+    double *green_x, double *green_y, double *blue_x, double *blue_y,
+    double *mastering_maxDL, double *mastering_minDL)
+{
+   png_debug1(1, "in %s retrieval function", "mDCV(float)");
+
+   if (png_ptr != NULL && info_ptr != NULL &&
+       (info_ptr->valid & PNG_INFO_mDCV) != 0)
+   {
+      if (white_x != NULL) *white_x = info_ptr->mastering_white_x * .00002;
+      if (white_y != NULL) *white_y = info_ptr->mastering_white_y * .00002;
+      if (red_x != NULL) *red_x = info_ptr->mastering_red_x * .00002;
+      if (red_y != NULL) *red_y = info_ptr->mastering_red_y * .00002;
+      if (green_x != NULL) *green_x = info_ptr->mastering_green_x * .00002;
+      if (green_y != NULL) *green_y = info_ptr->mastering_green_y * .00002;
+      if (blue_x != NULL) *blue_x = info_ptr->mastering_blue_x * .00002;
+      if (blue_y != NULL) *blue_y = info_ptr->mastering_blue_y * .00002;
+      if (mastering_maxDL != NULL)
+         *mastering_maxDL = info_ptr->mastering_maxDL * .0001;
+      if (mastering_minDL != NULL)
+         *mastering_minDL = info_ptr->mastering_minDL * .0001;
+      return PNG_INFO_mDCV;
+   }
+
+   return 0;
+}
+#  endif /* FLOATING_POINT */
+#endif /* mDCV */
+
 #ifdef PNG_eXIf_SUPPORTED
 png_uint_32 PNGAPI
 png_get_eXIf(png_const_structrp png_ptr, png_inforp info_ptr,

Modified: branches/stable/source/src/libs/libpng/libpng-src/pnginfo.h
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pnginfo.h	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pnginfo.h	2025-01-25 17:53:19 UTC (rev 947)
@@ -115,6 +115,24 @@
    png_uint_32 iccp_proflen;  /* ICC profile data length */
 #endif
 
+#ifdef PNG_cLLI_SUPPORTED
+   png_uint_32 maxCLL;  /* cd/m2 (nits) * 10,000 */
+   png_uint_32 maxFALL;
+#endif
+
+#ifdef PNG_mDCV_SUPPORTED
+   png_uint_16 mastering_red_x;  /* CIE (xy) x * 50,000 */
+   png_uint_16 mastering_red_y;
+   png_uint_16 mastering_green_x;
+   png_uint_16 mastering_green_y;
+   png_uint_16 mastering_blue_x;
+   png_uint_16 mastering_blue_y;
+   png_uint_16 mastering_white_x;
+   png_uint_16 mastering_white_y;
+   png_uint_32 mastering_maxDL; /* cd/m2 (nits) * 10,000 */
+   png_uint_32 mastering_minDL;
+#endif
+
 #ifdef PNG_TEXT_SUPPORTED
    /* The tEXt, and zTXt chunks contain human-readable textual data in
     * uncompressed, compressed, and optionally compressed forms, respectively.

Modified: branches/stable/source/src/libs/libpng/libpng-src/pnglibconf.h
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pnglibconf.h	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pnglibconf.h	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 /* pnglibconf.h - library build configuration */
 
-/* libpng version 1.6.45 */
+/* libpng version 1.6.46 */
 
 /* Copyright (c) 2018-2025 Cosmin Truta */
 /* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson */
@@ -89,11 +89,13 @@
 #define PNG_READ_bKGD_SUPPORTED
 #define PNG_READ_cHRM_SUPPORTED
 #define PNG_READ_cICP_SUPPORTED
+#define PNG_READ_cLLI_SUPPORTED
 #define PNG_READ_eXIf_SUPPORTED
 #define PNG_READ_gAMA_SUPPORTED
 #define PNG_READ_hIST_SUPPORTED
 #define PNG_READ_iCCP_SUPPORTED
 #define PNG_READ_iTXt_SUPPORTED
+#define PNG_READ_mDCV_SUPPORTED
 #define PNG_READ_oFFs_SUPPORTED
 #define PNG_READ_pCAL_SUPPORTED
 #define PNG_READ_pHYs_SUPPORTED
@@ -160,11 +162,13 @@
 #define PNG_WRITE_bKGD_SUPPORTED
 #define PNG_WRITE_cHRM_SUPPORTED
 #define PNG_WRITE_cICP_SUPPORTED
+#define PNG_WRITE_cLLI_SUPPORTED
 #define PNG_WRITE_eXIf_SUPPORTED
 #define PNG_WRITE_gAMA_SUPPORTED
 #define PNG_WRITE_hIST_SUPPORTED
 #define PNG_WRITE_iCCP_SUPPORTED
 #define PNG_WRITE_iTXt_SUPPORTED
+#define PNG_WRITE_mDCV_SUPPORTED
 #define PNG_WRITE_oFFs_SUPPORTED
 #define PNG_WRITE_pCAL_SUPPORTED
 #define PNG_WRITE_pHYs_SUPPORTED
@@ -179,11 +183,13 @@
 #define PNG_bKGD_SUPPORTED
 #define PNG_cHRM_SUPPORTED
 #define PNG_cICP_SUPPORTED
+#define PNG_cLLI_SUPPORTED
 #define PNG_eXIf_SUPPORTED
 #define PNG_gAMA_SUPPORTED
 #define PNG_hIST_SUPPORTED
 #define PNG_iCCP_SUPPORTED
 #define PNG_iTXt_SUPPORTED
+#define PNG_mDCV_SUPPORTED
 #define PNG_oFFs_SUPPORTED
 #define PNG_pCAL_SUPPORTED
 #define PNG_pHYs_SUPPORTED

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngpread.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngpread.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngpread.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -317,6 +317,22 @@
    }
 
 #endif
+#ifdef PNG_READ_cLLI_SUPPORTED
+   else if (png_ptr->chunk_name == png_cLLI)
+   {
+      PNG_PUSH_SAVE_BUFFER_IF_FULL
+      png_handle_cLLI(png_ptr, info_ptr, png_ptr->push_length);
+   }
+
+#endif
+#ifdef PNG_READ_mDCV_SUPPORTED
+   else if (png_ptr->chunk_name == png_mDCV)
+   {
+      PNG_PUSH_SAVE_BUFFER_IF_FULL
+      png_handle_mDCV(png_ptr, info_ptr, png_ptr->push_length);
+   }
+
+#endif
 #ifdef PNG_READ_eXIf_SUPPORTED
    else if (png_ptr->chunk_name == png_eXIf)
    {

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngpriv.h
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngpriv.h	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngpriv.h	2025-01-25 17:53:19 UTC (rev 947)
@@ -782,6 +782,8 @@
 #ifdef PNG_FIXED_POINT_MACRO_SUPPORTED
 #define png_fixed(png_ptr, fp, s) ((fp) <= 21474 && (fp) >= -21474 ?\
     ((png_fixed_point)(100000 * (fp))) : (png_fixed_error(png_ptr, s),0))
+#define png_fixed_ITU(png_ptr, fp, s) ((fp) <= 214748 && (fp) >= 0 ?\
+    ((png_uint_32)(10000 * (fp))) : (png_fixed_error(png_ptr, s),0))
 #endif
 /* else the corresponding function is defined below, inside the scope of the
  * cplusplus test.
@@ -834,7 +836,8 @@
 #define png_PLTE PNG_U32( 80,  76,  84,  69)
 #define png_bKGD PNG_U32( 98,  75,  71,  68)
 #define png_cHRM PNG_U32( 99,  72,  82,  77)
-#define png_cICP PNG_U32( 99,  73,  67,  80)
+#define png_cICP PNG_U32( 99,  73,  67,  80) /* PNGv3 */
+#define png_cLLI PNG_U32( 99,  76,  76,  73) /* PNGv3 */
 #define png_eXIf PNG_U32(101,  88,  73, 102) /* registered July 2017 */
 #define png_fRAc PNG_U32(102,  82,  65,  99) /* registered, not defined */
 #define png_gAMA PNG_U32(103,  65,  77,  65)
@@ -844,6 +847,7 @@
 #define png_hIST PNG_U32(104,  73,  83,  84)
 #define png_iCCP PNG_U32(105,  67,  67,  80)
 #define png_iTXt PNG_U32(105,  84,  88, 116)
+#define png_mDCV PNG_U32(109,  68,  67,  86) /* PNGv3 */
 #define png_oFFs PNG_U32(111,  70,  70, 115)
 #define png_pCAL PNG_U32(112,  67,  65,  76)
 #define png_pHYs PNG_U32(112,  72,  89, 115)
@@ -971,6 +975,7 @@
    !defined(PNG_FIXED_POINT_MACRO_SUPPORTED) && \
    (defined(PNG_gAMA_SUPPORTED) || defined(PNG_cHRM_SUPPORTED) || \
    defined(PNG_sCAL_SUPPORTED) || defined(PNG_READ_BACKGROUND_SUPPORTED) || \
+   defined(PNG_mDCV_SUPPORTED) || \
    defined(PNG_READ_RGB_TO_GRAY_SUPPORTED)) || \
    (defined(PNG_sCAL_SUPPORTED) && \
    defined(PNG_FLOATING_ARITHMETIC_SUPPORTED))
@@ -978,6 +983,13 @@
    double fp, png_const_charp text),PNG_EMPTY);
 #endif
 
+#if defined(PNG_FLOATING_POINT_SUPPORTED) && \
+   !defined(PNG_FIXED_POINT_MACRO_SUPPORTED) && \
+   (defined(PNG_cLLI_SUPPORTED) || defined(PNG_mDCV_SUPPORTED))
+PNG_INTERNAL_FUNCTION(png_uint_32,png_fixed_ITU,(png_const_structrp png_ptr,
+   double fp, png_const_charp text),PNG_EMPTY);
+#endif
+
 /* Check the user version string for compatibility, returns false if the version
  * numbers aren't compatible.
  */
@@ -1137,6 +1149,20 @@
     png_byte matrix_coefficients, png_byte video_full_range_flag), PNG_EMPTY);
 #endif
 
+#ifdef PNG_WRITE_cLLI_SUPPORTED
+PNG_INTERNAL_FUNCTION(void,png_write_cLLI_fixed,(png_structrp png_ptr,
+   png_uint_32 maxCLL, png_uint_32 maxFALL), PNG_EMPTY);
+#endif
+
+#ifdef PNG_WRITE_mDCV_SUPPORTED
+PNG_INTERNAL_FUNCTION(void,png_write_mDCV_fixed,(png_structrp png_ptr,
+   png_uint_16 red_x, png_uint_16 red_y,
+   png_uint_16 green_x, png_uint_16 green_y,
+   png_uint_16 blue_x, png_uint_16 blue_y,
+   png_uint_16 white_x, png_uint_16 white_y,
+   png_uint_32 maxDL, png_uint_32 minDL), PNG_EMPTY);
+#endif
+
 #ifdef PNG_WRITE_sRGB_SUPPORTED
 PNG_INTERNAL_FUNCTION(void,png_write_sRGB,(png_structrp png_ptr,
     int intent),PNG_EMPTY);
@@ -1485,6 +1511,11 @@
         png_inforp info_ptr, png_uint_32 length),PNG_EMPTY);
 #endif
 
+#ifdef PNG_READ_cLLI_SUPPORTED
+PNG_INTERNAL_FUNCTION(void,png_handle_cLLI,(png_structrp png_ptr,
+        png_inforp info_ptr, png_uint_32 length),PNG_EMPTY);
+#endif
+
 #ifdef PNG_READ_eXIf_SUPPORTED
 PNG_INTERNAL_FUNCTION(void,png_handle_eXIf,(png_structrp png_ptr,
     png_inforp info_ptr, png_uint_32 length),PNG_EMPTY);
@@ -1510,6 +1541,11 @@
     png_inforp info_ptr, png_uint_32 length),PNG_EMPTY);
 #endif
 
+#ifdef PNG_READ_mDCV_SUPPORTED
+PNG_INTERNAL_FUNCTION(void,png_handle_mDCV,(png_structrp png_ptr,
+        png_inforp info_ptr, png_uint_32 length),PNG_EMPTY);
+#endif
+
 #ifdef PNG_READ_oFFs_SUPPORTED
 PNG_INTERNAL_FUNCTION(void,png_handle_oFFs,(png_structrp png_ptr,
     png_inforp info_ptr, png_uint_32 length),PNG_EMPTY);

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngread.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngread.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngread.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -179,6 +179,11 @@
          png_handle_cICP(png_ptr, info_ptr, length);
 #endif
 
+#ifdef PNG_READ_cLLI_SUPPORTED
+      else if (chunk_name == png_cLLI)
+         png_handle_cLLI(png_ptr, info_ptr, length);
+#endif
+
 #ifdef PNG_READ_eXIf_SUPPORTED
       else if (chunk_name == png_eXIf)
          png_handle_eXIf(png_ptr, info_ptr, length);
@@ -194,6 +199,11 @@
          png_handle_hIST(png_ptr, info_ptr, length);
 #endif
 
+#ifdef PNG_READ_mDCV_SUPPORTED
+      else if (chunk_name == png_mDCV)
+         png_handle_mDCV(png_ptr, info_ptr, length);
+#endif
+
 #ifdef PNG_READ_oFFs_SUPPORTED
       else if (chunk_name == png_oFFs)
          png_handle_oFFs(png_ptr, info_ptr, length);
@@ -861,6 +871,11 @@
          png_handle_cICP(png_ptr, info_ptr, length);
 #endif
 
+#ifdef PNG_READ_cLLI_SUPPORTED
+      else if (chunk_name == png_cLLI)
+         png_handle_cLLI(png_ptr, info_ptr, length);
+#endif
+
 #ifdef PNG_READ_eXIf_SUPPORTED
       else if (chunk_name == png_eXIf)
          png_handle_eXIf(png_ptr, info_ptr, length);
@@ -876,6 +891,11 @@
          png_handle_hIST(png_ptr, info_ptr, length);
 #endif
 
+#ifdef PNG_READ_mDCV_SUPPORTED
+      else if (chunk_name == png_mDCV)
+         png_handle_mDCV(png_ptr, info_ptr, length);
+#endif
+
 #ifdef PNG_READ_oFFs_SUPPORTED
       else if (chunk_name == png_oFFs)
          png_handle_oFFs(png_ptr, info_ptr, length);

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngrutil.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngrutil.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngrutil.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -2087,6 +2087,111 @@
 }
 #endif
 
+#ifdef PNG_READ_cLLI_SUPPORTED
+void /* PRIVATE */
+png_handle_cLLI(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length)
+{
+   png_byte buf[8];
+
+   png_debug(1, "in png_handle_cLLI");
+
+   if ((png_ptr->mode & PNG_HAVE_IHDR) == 0)
+      png_chunk_error(png_ptr, "missing IHDR");
+
+   else if ((png_ptr->mode & (PNG_HAVE_IDAT|PNG_HAVE_PLTE)) != 0)
+   {
+      png_crc_finish(png_ptr, length);
+      png_chunk_benign_error(png_ptr, "out of place");
+      return;
+   }
+
+   else if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_cLLI) != 0)
+   {
+      png_crc_finish(png_ptr, length);
+      png_chunk_benign_error(png_ptr, "duplicate");
+      return;
+   }
+
+   else if (length != 8)
+   {
+      png_crc_finish(png_ptr, length);
+      png_chunk_benign_error(png_ptr, "invalid");
+      return;
+   }
+
+   png_crc_read(png_ptr, buf, 8);
+
+   if (png_crc_finish(png_ptr, 0) != 0)
+      return;
+
+   /* The error checking happens here, this puts it in just one place: */
+   png_set_cLLI_fixed(png_ptr, info_ptr, png_get_uint_32(buf),
+         png_get_uint_32(buf+4));
+}
+#endif
+
+#ifdef PNG_READ_mDCV_SUPPORTED
+void /* PRIVATE */
+png_handle_mDCV(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length)
+{
+   png_byte buf[24];
+
+   png_debug(1, "in png_handle_mDCV");
+
+   if ((png_ptr->mode & PNG_HAVE_IHDR) == 0)
+      png_chunk_error(png_ptr, "missing IHDR");
+
+   else if ((png_ptr->mode & (PNG_HAVE_IDAT|PNG_HAVE_PLTE)) != 0)
+   {
+      png_crc_finish(png_ptr, length);
+      png_chunk_benign_error(png_ptr, "out of place");
+      return;
+   }
+
+   else if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_mDCV) != 0)
+   {
+      png_crc_finish(png_ptr, length);
+      png_chunk_benign_error(png_ptr, "duplicate");
+      return;
+   }
+
+   else if (length != 24)
+   {
+      png_crc_finish(png_ptr, length);
+      png_chunk_benign_error(png_ptr, "invalid");
+      return;
+   }
+
+   png_crc_read(png_ptr, buf, 24);
+
+   if (png_crc_finish(png_ptr, 0) != 0)
+      return;
+
+   /* The error checking happens here, this puts it in just one place.  The
+    * odd /50000 scaling factor makes it more difficult but the (x.y) values are
+    * only two bytes so a <<1 is safe.
+    *
+    * WARNING: the PNG specification defines the cHRM chunk to **start** with
+    * the white point (x,y).  The W3C PNG v3 specification puts the white point
+    * **after* R,G,B.  The x,y values in mDCV are also scaled by 50,000 and
+    * stored in just two bytes, whereas those in cHRM are scaled by 100,000 and
+    * stored in four bytes.  This is very, very confusing.  These APIs remove
+    * the confusion by copying the existing, well established, API.
+    */
+   png_set_mDCV_fixed(png_ptr, info_ptr,
+         png_get_uint_16(buf+12U) << 1U, /* white x */
+         png_get_uint_16(buf+14U) << 1U, /* white y */
+         png_get_uint_16(buf+ 0U) << 1U, /* red x */
+         png_get_uint_16(buf+ 2U) << 1U, /* red y */
+         png_get_uint_16(buf+ 4U) << 1U, /* green x */
+         png_get_uint_16(buf+ 6U) << 1U, /* green y */
+         png_get_uint_16(buf+ 8U) << 1U, /* blue x */
+         png_get_uint_16(buf+10U) << 1U, /* blue y */
+         png_get_uint_32(buf+16U), /* peak luminance */
+         png_get_uint_32(buf+20U));/* minimum perceivable luminance */
+}
+#endif
+
 #ifdef PNG_READ_eXIf_SUPPORTED
 void /* PRIVATE */
 png_handle_eXIf(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length)

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngset.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngset.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngset.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -159,6 +159,158 @@
 }
 #endif /* cICP */
 
+#ifdef PNG_cLLI_SUPPORTED
+void PNGFAPI
+png_set_cLLI_fixed(png_const_structrp png_ptr, png_inforp info_ptr,
+    /* The values below are in cd/m2 (nits) and are scaled by 10,000; not
+     * 100,000 as in the case of png_fixed_point.
+     */
+    png_uint_32 maxCLL, png_uint_32 maxFALL)
+{
+   png_debug1(1, "in %s storage function", "cLLI");
+
+   if (png_ptr == NULL || info_ptr == NULL)
+      return;
+
+   /* Check the light level range: */
+   if (maxCLL > 0x7FFFFFFFU || maxFALL > 0x7FFFFFFFU)
+   {
+      /* The limit is 200kcd/m2; somewhat bright but not inconceivable because
+       * human vision is said to run up to 100Mcd/m2.  The sun is about 2Gcd/m2.
+       *
+       * The reference sRGB monitor is 80cd/m2 and the limit of PQ encoding is
+       * 2kcd/m2.
+       */
+      png_chunk_report(png_ptr, "cLLI light level exceeds PNG limit",
+            PNG_CHUNK_WRITE_ERROR);
+      return;
+   }
+
+   info_ptr->maxCLL = maxCLL;
+   info_ptr->maxFALL = maxFALL;
+   info_ptr->valid |= PNG_INFO_cLLI;
+}
+
+#  ifdef PNG_FLOATING_POINT_SUPPORTED
+void PNGAPI
+png_set_cLLI(png_const_structrp png_ptr, png_inforp info_ptr,
+   double maxCLL, double maxFALL)
+{
+   png_set_cLLI_fixed(png_ptr, info_ptr,
+       png_fixed_ITU(png_ptr, maxCLL, "png_set_cLLI(maxCLL)"),
+       png_fixed_ITU(png_ptr, maxFALL, "png_set_cLLI(maxFALL)"));
+}
+#  endif /* FLOATING_POINT */
+#endif /* cLLI */
+
+#ifdef PNG_mDCV_SUPPORTED
+static png_uint_16
+png_ITU_fixed_16(png_const_structrp png_ptr, png_fixed_point v,
+   png_const_charp text)
+{
+   /* Return a safe uint16_t value scaled according to the ITU H273 rules for
+    * 16-bit display chromaticities.  Functions like the corresponding
+    * png_fixed() internal function with regard to errors: it's an error on
+    * write, a chunk_benign_error on read: See the definition of
+    * png_chunk_report in pngpriv.h.
+    */
+   v /= 2; /* rounds to 0 in C: avoids insignificant arithmetic errors */
+   if (v > 65535 || v < 0)
+      png_fixed_error(png_ptr, text);
+
+#  ifndef PNG_ERROR_TEXT_SUPPORTED
+   PNG_UNUSED(text)
+#  endif
+
+   return (png_uint_16)/*SAFE*/v;
+}
+
+void PNGAPI
+png_set_mDCV_fixed(png_const_structrp png_ptr, png_inforp info_ptr,
+    png_fixed_point white_x, png_fixed_point white_y,
+    png_fixed_point red_x, png_fixed_point red_y,
+    png_fixed_point green_x, png_fixed_point green_y,
+    png_fixed_point blue_x, png_fixed_point blue_y,
+    png_uint_32 maxDL,
+    png_uint_32 minDL)
+{
+   png_uint_16 rx, ry, gx, gy, bx, by, wx, wy;
+
+   png_debug1(1, "in %s storage function", "mDCV");
+
+   if (png_ptr == NULL || info_ptr == NULL)
+      return;
+
+   /* Check the input values to ensure they are in the expected range: */
+   rx = png_ITU_fixed_16(png_ptr, red_x, "png_set_mDCV(red(x))");
+   ry = png_ITU_fixed_16(png_ptr, red_y, "png_set_mDCV(red(y))");
+   gx = png_ITU_fixed_16(png_ptr, green_x, "png_set_mDCV(green(x))");
+   gy = png_ITU_fixed_16(png_ptr, green_y, "png_set_mDCV(green(y))");
+   bx = png_ITU_fixed_16(png_ptr, blue_x, "png_set_mDCV(blue(x))");
+   by = png_ITU_fixed_16(png_ptr, blue_y, "png_set_mDCV(blue(y))");
+   wx = png_ITU_fixed_16(png_ptr, white_x, "png_set_mDCV(white(x))");
+   wy = png_ITU_fixed_16(png_ptr, white_y, "png_set_mDCV(white(y))");
+
+   /* Check the light level range: */
+   if (maxDL > 0x7FFFFFFFU || minDL > 0x7FFFFFFFU)
+   {
+      /* The limit is 200kcd/m2; somewhat bright but not inconceivable because
+       * human vision is said to run up to 100Mcd/m2.  The sun is about 2Gcd/m2.
+       *
+       * The reference sRGB monitor is 80cd/m2 and the limit of PQ encoding is
+       * 2kcd/m2.
+       */
+      png_chunk_report(png_ptr, "mDCV display light level exceeds PNG limit",
+            PNG_CHUNK_WRITE_ERROR);
+      return;
+   }
+
+   /* All values are safe, the settings are accepted.
+    *
+    * IMPLEMENTATION NOTE: in practice the values can be checked and assigned
+    * but the result is confusing if a writing app calls png_set_mDCV more than
+    * once, the second time with an invalid value.  This approach is more
+    * obviously correct at the cost of typing and a very slight machine
+    * overhead.
+    */
+   info_ptr->mastering_red_x = rx;
+   info_ptr->mastering_red_y = ry;
+   info_ptr->mastering_green_x = gx;
+   info_ptr->mastering_green_y = gy;
+   info_ptr->mastering_blue_x = bx;
+   info_ptr->mastering_blue_y = by;
+   info_ptr->mastering_white_x = wx;
+   info_ptr->mastering_white_y = wy;
+   info_ptr->mastering_maxDL = maxDL;
+   info_ptr->mastering_minDL = minDL;
+   info_ptr->valid |= PNG_INFO_mDCV;
+}
+
+#  ifdef PNG_FLOATING_POINT_SUPPORTED
+void PNGAPI
+png_set_mDCV(png_const_structrp png_ptr, png_inforp info_ptr,
+    double white_x, double white_y, double red_x, double red_y, double green_x,
+    double green_y, double blue_x, double blue_y,
+    double maxDL, double minDL)
+{
+   png_set_mDCV_fixed(png_ptr, info_ptr,
+      /* The ITU approach is to scale by 50,000, not 100,000 so just divide
+       * the input values by 2 and use png_fixed:
+       */
+      png_fixed(png_ptr, white_x / 2, "png_set_mDCV(white(x))"),
+      png_fixed(png_ptr, white_y / 2, "png_set_mDCV(white(y))"),
+      png_fixed(png_ptr, red_x / 2, "png_set_mDCV(red(x))"),
+      png_fixed(png_ptr, red_y / 2, "png_set_mDCV(red(y))"),
+      png_fixed(png_ptr, green_x / 2, "png_set_mDCV(green(x))"),
+      png_fixed(png_ptr, green_y / 2, "png_set_mDCV(green(y))"),
+      png_fixed(png_ptr, blue_x / 2, "png_set_mDCV(blue(x))"),
+      png_fixed(png_ptr, blue_y / 2, "png_set_mDCV(blue(y))"),
+      png_fixed_ITU(png_ptr, maxDL, "png_set_mDCV(maxDL)"),
+      png_fixed_ITU(png_ptr, minDL, "png_set_mDCV(minDL)"));
+}
+#  endif /* FLOATING_POINT */
+#endif /* mDCV */
+
 #ifdef PNG_eXIf_SUPPORTED
 void PNGAPI
 png_set_eXIf(png_const_structrp png_ptr, png_inforp info_ptr,
@@ -1421,11 +1573,13 @@
          98,  75,  71,  68, '\0',  /* bKGD */
          99,  72,  82,  77, '\0',  /* cHRM */
          99,  73,  67,  80, '\0',  /* cICP */
+         99,  76,  76,  73, '\0',  /* cLLI */
         101,  88,  73, 102, '\0',  /* eXIf */
         103,  65,  77,  65, '\0',  /* gAMA */
         104,  73,  83,  84, '\0',  /* hIST */
         105,  67,  67,  80, '\0',  /* iCCP */
         105,  84,  88, 116, '\0',  /* iTXt */
+        109,  68,  67,  86, '\0',  /* mDCV */
         111,  70,  70, 115, '\0',  /* oFFs */
         112,  67,  65,  76, '\0',  /* pCAL */
         112,  72,  89, 115, '\0',  /* pHYs */

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngtest.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngtest.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngtest.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -50,7 +50,7 @@
 #define STDERR stdout
 
 /* Generate a compiler error if there is an old png.h in the search path. */
-typedef png_libpng_version_1_6_45 Your_png_h_is_not_version_1_6_45;
+typedef png_libpng_version_1_6_46 Your_png_h_is_not_version_1_6_46;
 
 /* Ensure that all version numbers in png.h are consistent with one another. */
 #if (PNG_LIBPNG_VER != PNG_LIBPNG_VER_MAJOR * 10000 + \
@@ -1142,6 +1142,30 @@
          png_set_gAMA_fixed(write_ptr, write_info_ptr, gamma);
    }
 #endif
+#ifdef PNG_cLLI_SUPPORTED
+   {
+      png_uint_32 maxCLL;
+      png_uint_32 maxFALL;
+
+      if (png_get_cLLI_fixed(read_ptr, read_info_ptr, &maxCLL, &maxFALL) != 0)
+         png_set_cLLI_fixed(write_ptr, write_info_ptr, maxCLL, maxFALL);
+   }
+#endif
+#ifdef PNG_mDCV_SUPPORTED
+   {
+      png_fixed_point white_x, white_y, red_x, red_y, green_x, green_y, blue_x,
+          blue_y;
+      png_uint_32 maxDL;
+      png_uint_32 minDL;
+
+      if (png_get_mDCV_fixed(read_ptr, read_info_ptr, &white_x, &white_y,
+               &red_x, &red_y, &green_x, &green_y, &blue_x, &blue_y,
+               &maxDL, &minDL) != 0)
+         png_set_mDCV_fixed(write_ptr, write_info_ptr, white_x, white_y,
+               red_x, red_y, green_x, green_y, blue_x, blue_y,
+               maxDL, minDL);
+   }
+#endif
 #else /* Use floating point versions */
 #ifdef PNG_FLOATING_POINT_SUPPORTED
 #ifdef PNG_cHRM_SUPPORTED
@@ -1165,6 +1189,29 @@
          png_set_gAMA(write_ptr, write_info_ptr, gamma);
    }
 #endif
+#ifdef PNG_cLLI_SUPPORTED
+   {
+      double maxCLL;
+      double maxFALL;
+
+      if (png_get_cLLI(read_ptr, read_info_ptr, &maxCLL, &maxFALL) != 0)
+         png_set_cLLI(write_ptr, write_info_ptr, maxCLL, maxFALL);
+   }
+#endif
+#ifdef PNG_mDCV_SUPPORTED
+   {
+      double white_x, white_y, red_x, red_y, green_x, green_y, blue_x, blue_y;
+      double maxDL;
+      double minDL;
+
+      if (png_get_mDCV(read_ptr, read_info_ptr, &white_x, &white_y,
+               &red_x, &red_y, &green_x, &green_y, &blue_x, &blue_y,
+               &maxDL, &minDL) != 0)
+         png_set_mDCV(write_ptr, write_info_ptr, white_x, white_y,
+               red_x, red_y, green_x, green_y, blue_x, blue_y,
+               maxDL, minDL);
+   }
+#endif
 #endif /* Floating point */
 #endif /* Fixed point */
 #ifdef PNG_cICP_SUPPORTED

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngtest.png
===================================================================
(Binary files differ)

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngwrite.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngwrite.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngwrite.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -157,7 +157,30 @@
     * space priority.  As above it therefore behooves libpng to write the colour
     * space chunks in the priority order so that a streaming app need not buffer
     * them.
+    *
+    * PNG v3: Chunks mDCV and cLLI provide ancillary information for the
+    * interpretation of the colourspace chunkgs but do not require support for
+    * those chunks so are outside the "COLORSPACE" check but before the write of
+    * the colourspace chunks themselves.
     */
+#ifdef PNG_WRITE_cLLI_SUPPORTED
+   if ((info_ptr->valid & PNG_INFO_cLLI) != 0)
+   {
+      png_write_cLLI_fixed(png_ptr, info_ptr->maxCLL, info_ptr->maxFALL);
+   }
+#endif
+#ifdef PNG_WRITE_mDCV_SUPPORTED
+   if ((info_ptr->valid & PNG_INFO_mDCV) != 0)
+   {
+      png_write_mDCV_fixed(png_ptr,
+         info_ptr->mastering_red_x, info_ptr->mastering_red_y,
+         info_ptr->mastering_green_x, info_ptr->mastering_green_y,
+         info_ptr->mastering_blue_x, info_ptr->mastering_blue_y,
+         info_ptr->mastering_white_x, info_ptr->mastering_white_y,
+         info_ptr->mastering_maxDL, info_ptr->mastering_minDL);
+   }
+#endif
+
 #ifdef PNG_COLORSPACE_SUPPORTED
 #  ifdef PNG_WRITE_cICP_SUPPORTED /* Priority 4 */
    if ((info_ptr->valid & PNG_INFO_cICP) != 0)

Modified: branches/stable/source/src/libs/libpng/libpng-src/pngwutil.c
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/pngwutil.c	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/pngwutil.c	2025-01-25 17:53:19 UTC (rev 947)
@@ -1511,6 +1511,50 @@
 }
 #endif
 
+#ifdef PNG_WRITE_cLLI_SUPPORTED
+void /* PRIVATE */
+png_write_cLLI_fixed(png_structrp png_ptr, png_uint_32 maxCLL,
+   png_uint_32 maxFALL)
+{
+   png_byte buf[8];
+
+   png_debug(1, "in png_write_cLLI_fixed");
+
+   png_save_uint_32(buf, maxCLL);
+   png_save_uint_32(buf + 4, maxFALL);
+
+   png_write_complete_chunk(png_ptr, png_cLLI, buf, 8);
+}
+#endif
+
+#ifdef PNG_WRITE_mDCV_SUPPORTED
+void /* PRIVATE */
+png_write_mDCV_fixed(png_structrp png_ptr,
+   png_uint_16 red_x, png_uint_16 red_y,
+   png_uint_16 green_x, png_uint_16 green_y,
+   png_uint_16 blue_x, png_uint_16 blue_y,
+   png_uint_16 white_x, png_uint_16 white_y,
+   png_uint_32 maxDL, png_uint_32 minDL)
+{
+   png_byte buf[24];
+
+   png_debug(1, "in png_write_mDCV_fixed");
+
+   png_save_uint_16(buf +  0, red_x);
+   png_save_uint_16(buf +  2, red_y);
+   png_save_uint_16(buf +  4, green_x);
+   png_save_uint_16(buf +  6, green_y);
+   png_save_uint_16(buf +  8, blue_x);
+   png_save_uint_16(buf + 10, blue_y);
+   png_save_uint_16(buf + 12, white_x);
+   png_save_uint_16(buf + 14, white_y);
+   png_save_uint_32(buf + 16, maxDL);
+   png_save_uint_32(buf + 20, minDL);
+
+   png_write_complete_chunk(png_ptr, png_mDCV, buf, 24);
+}
+#endif
+
 #ifdef PNG_WRITE_eXIf_SUPPORTED
 /* Write the Exif data */
 void /* PRIVATE */

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/README.txt
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/README.txt	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/README.txt	2025-01-25 17:53:19 UTC (rev 947)
@@ -8,6 +8,7 @@
     makefile.atari    =>  Atari makefile
     makefile.bc32     =>  Borland C makefile, for Win32
     makefile.beos     =>  BeOS makefile
+    makefile.c89      =>  Generic UNIX makefile for C89 (cc -std=c89)
     makefile.clang    =>  Generic clang makefile
     makefile.darwin   =>  Darwin makefile, for macOS (formerly Mac OS X)
     makefile.dec      =>  DEC Alpha UNIX makefile

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/libpng-config-head.in
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/libpng-config-head.in	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/libpng-config-head.in	2025-01-25 17:53:19 UTC (rev 947)
@@ -11,7 +11,7 @@
 
 # Modeled after libxml-config.
 
-version=1.6.45
+version=1.6.46
 prefix=""
 libdir=""
 libs=""

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/libpng.pc.in
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/libpng.pc.in	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/libpng.pc.in	2025-01-25 17:53:19 UTC (rev 947)
@@ -5,6 +5,6 @@
 
 Name: libpng
 Description: Loads and saves PNG files
-Version: 1.6.45
+Version: 1.6.46
 Libs: -L${libdir} -lpng16
 Cflags: -I${includedir}

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.32sunu
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.32sunu	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.32sunu	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 # makefile for libpng on Solaris 2.x with cc
 # Contributed by William L. Sebok, based on makefile.linux
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2002, 2006, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1998 Greg Roelofs
 # Copyright (C) 1996, 1997 Andreas Dilger
@@ -36,13 +36,10 @@
 ZLIBLIB=/usr/lib
 ZLIBINC=/usr/include
 
-WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
-	-Wmissing-declarations -Wtraditional -Wcast-align \
-	-Wstrict-prototypes -Wmissing-prototypes # -Wconversion
 CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS=$(SUN_CC_FLAGS) # $(WARNMORE) -g
+CFLAGS=$(SUN_CC_FLAGS) # -g
 ARFLAGS=rc
-LDFLAGS=$(SUN_LD_FLAGS) -L$(ZLIBLIB) -R$(ZLIBLIB) libpng.a -lz -lm
+LDFLAGS=$(SUN_LD_FLAGS) -L$(ZLIBLIB) -R$(ZLIBLIB) libpng.a -lz -lm # -g
 
 OBJS = png.o pngerror.o pngget.o pngmem.o pngpread.o \
        pngread.o pngrio.o pngrtran.o pngrutil.o pngset.o \
@@ -53,7 +50,7 @@
 .SUFFIXES:      .c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 .c.pic.o:
 	$(CC) -c $(CPPFLAGS) $(CFLAGS) -KPIC -o $@ $*.c

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.64sunu
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.64sunu	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.64sunu	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 # makefile for libpng on Solaris 2.x with cc
 # Contributed by William L. Sebok, based on makefile.linux
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2002, 2006, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1998 Greg Roelofs
 # Copyright (C) 1996, 1997 Andreas Dilger
@@ -36,13 +36,10 @@
 ZLIBLIB=/usr/lib
 ZLIBINC=/usr/include
 
-WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
-	-Wmissing-declarations -Wtraditional -Wcast-align \
-	-Wstrict-prototypes -Wmissing-prototypes # -Wconversion
 CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS=$(SUN_CC_FLAGS) # $(WARNMORE) -g
+CFLAGS=$(SUN_CC_FLAGS) # -g
 ARFLAGS=rc
-LDFLAGS=-L. -R. $(SUN_LD_FLAGS) -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng16 -lz -lm
+LDFLAGS=-L. -R. $(SUN_LD_FLAGS) -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng16 -lz -lm # -g
 
 OBJS = png.o pngerror.o pngget.o pngmem.o pngpread.o \
        pngread.o pngrio.o pngrtran.o pngrutil.o pngset.o \
@@ -53,7 +50,7 @@
 .SUFFIXES:      .c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 .c.pic.o:
 	$(CC) -c $(CPPFLAGS) $(CFLAGS) -KPIC -o $@ $*.c

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.aix
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.aix	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.aix	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng using gcc (generic, static library)
-# Copyright (C) 2000, 2020-2024 Cosmin Truta
+# Copyright (C) 2000, 2020-2025 Cosmin Truta
 # Copyright (C) 2002, 2006-2009, 2014 Glenn Randers-Pehrson
 # Copyright (C) 2000 Marc O. Gloor (AIX support added, from makefile.gcc)
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
@@ -22,9 +22,8 @@
 LIBNAME = libpng16
 PNGMAJ = 16
 
-WARNMORE =
 CPPFLAGS = -I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS = -O2 -Wall -Wextra -Wundef # $(WARNMORE) -g
+CFLAGS = -O2 # -g
 ARFLAGS = rc
 LDFLAGS = -L. -L$(ZLIBLIB) -lpng16 -lz -lm # -g
 
@@ -35,7 +34,7 @@
 
 # Targets
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: $(LIBNAME).a pngtest
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.atari
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.atari	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.atari	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng
-# Copyright (C) 2022 Cosmin Truta
+# Copyright (C) 2022-2025 Cosmin Truta
 # Copyright (C) 2002, 2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -28,7 +28,7 @@
 all: $(LBR) pngtest.ttp
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c
 
 $(LBR): $(OBJS)
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.beos
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.beos	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.beos	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 # makefile for libpng on BeOS x86 ELF with gcc
 # modified from makefile.linux by Sander Stoks
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2020-2025 Cosmin Truta
 # Copyright (C) 2002, 2006, 2008, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1999 Greg Roelofs
 # Copyright (C) 1996, 1997 Andreas Dilger
@@ -33,14 +33,10 @@
 # For i386:
 # ALIGN=-malign-loops=2 -malign-functions=2
 
-WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
-	-Wmissing-declarations -Wtraditional -Wcast-align \
-	-Wstrict-prototypes -Wmissing-prototypes # -Wconversion
-
 # On BeOS, -O1 is actually better than -O3.  This is a known bug but it's
 # still here in R4.5
 CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS=-O1 -funroll-loops $(ALIGN) -Wall -Wextra -Wundef # $(WARNMORE) -g
+CFLAGS=-O1 -funroll-loops $(ALIGN) # -g
 ARFLAGS=rc
 # LDFLAGS=-L. -Wl,-rpath,. -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) -lpng -lz
 LDFLAGS=-L. -Wl,-soname=$(LIBSOMAJ) -L$(ZLIBLIB) -lz # -g
@@ -58,7 +54,7 @@
 .SUFFIXES:      .c .o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: libpng.a $(LIBSO) pngtest
 

Added: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.c89
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.c89	                        (rev 0)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.c89	2025-01-25 17:53:19 UTC (rev 947)
@@ -0,0 +1,97 @@
+# makefile for libpng using an ANSI C89 compiler
+# Copyright (C) 2000, 2014, 2019-2025 Cosmin Truta
+# Copyright (C) 2008, 2014 Glenn Randers-Pehrson
+# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
+#
+# This code is released under the libpng license.
+# For conditions of distribution and use, see the disclaimer
+# and license in png.h
+
+# Location of the zlib library and include files
+ZLIBINC = ../zlib
+ZLIBLIB = ../zlib
+
+# Compiler, linker, lib and other tools
+#CC = c89
+CC = cc
+LD = $(CC)
+AR = ar
+RANLIB = ranlib
+CP = cp
+RM_F = rm -f
+
+# Compiler and linker flags
+NOHWOPT = -DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
+          -DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
+STDC = -pedantic-errors -std=c89
+WARN = -Wall -Wextra -Wundef
+WARNMORE = -Wcast-align -Wconversion -Wshadow -Wpointer-arith -Wwrite-strings \
+           -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes
+LOCAL_CPPFLAGS = $(NOHWOPT)
+CPPFLAGS = -I$(ZLIBINC) # -DPNG_DEBUG=5
+ALL_CPPFLAGS = $(LOCAL_CPPFLAGS) $(CPPFLAGS)
+LOCAL_CFLAGS = $(STDC) $(WARN) # $(WARNMORE)
+CFLAGS = -O2 # -g
+ALL_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS)
+ARFLAGS = rc
+LDFLAGS = -L$(ZLIBLIB) # -g
+LIBS = -lz -lm
+
+# File extensions
+EXEEXT =
+
+# Pre-built configuration
+# See scripts/pnglibconf.mak for more options
+PNGLIBCONF_H_PREBUILT = scripts/pnglibconf.h.prebuilt
+
+# File lists
+OBJS = png.o pngerror.o pngget.o pngmem.o pngpread.o \
+       pngread.o pngrio.o pngrtran.o pngrutil.o pngset.o \
+       pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
+
+# Targets
+all: static
+
+pnglibconf.h: $(PNGLIBCONF_H_PREBUILT)
+	$(CP) $(PNGLIBCONF_H_PREBUILT) $@
+
+.c.o:
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -o $@ $*.c
+
+static: libpng.a pngtest$(EXEEXT)
+
+shared:
+	@echo This is a generic makefile that cannot create shared libraries.
+	@echo Please use a configuration that is specific to your platform.
+	@false
+
+libpng.a: $(OBJS)
+	$(AR) $(ARFLAGS) $@ $(OBJS)
+	$(RANLIB) $@
+
+test: pngtest$(EXEEXT)
+	./pngtest$(EXEEXT)
+
+pngtest$(EXEEXT): pngtest.o libpng.a
+	$(LD) $(LDFLAGS) -o $@ pngtest.o libpng.a $(LIBS)
+
+clean:
+	$(RM_F) *.o libpng.a pngtest$(EXEEXT) pngout.png pnglibconf.h
+
+png.o:      png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngerror.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngget.o:   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngmem.o:   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngpread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngread.o:  png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngrio.o:   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngrtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngrutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngset.o:   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngtrans.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngwio.o:   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngwrite.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngwtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+pngwutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
+
+pngtest.o:  png.h pngconf.h pnglibconf.h

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.clang
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.clang	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.clang	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng using clang (generic, static library)
-# Copyright (C) 2000, 2014, 2019-2024 Cosmin Truta
+# Copyright (C) 2000, 2014, 2019-2025 Cosmin Truta
 # Copyright (C) 2008, 2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -21,13 +21,17 @@
 
 # Compiler and linker flags
 NOHWOPT = -DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
-	-DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
-WARNMORE = -Wwrite-strings -Wpointer-arith -Wshadow \
-	-Wmissing-declarations -Wtraditional -Wcast-align \
-	-Wstrict-prototypes -Wmissing-prototypes # -Wconversion
-DEFS = $(NOHWOPT)
-CPPFLAGS = -I$(ZLIBINC) $(DEFS) # -DPNG_DEBUG=5
-CFLAGS = -O2 -Wall -Wextra -Wundef # $(WARNMORE) -g
+          -DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
+STDC = -pedantic-errors # -std=c99
+WARN = -Wall -Wextra -Wundef
+WARNMORE = -Wcast-align -Wconversion -Wshadow -Wpointer-arith -Wwrite-strings \
+           -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes
+LOCAL_CPPFLAGS = $(NOHWOPT)
+CPPFLAGS = -I$(ZLIBINC) # -DPNG_DEBUG=5
+ALL_CPPFLAGS = $(LOCAL_CPPFLAGS) $(CPPFLAGS)
+LOCAL_CFLAGS = $(STDC) $(WARN) # $(WARNMORE)
+CFLAGS = -O2 # -g
+ALL_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS)
 ARFLAGS = rc
 LDFLAGS = -L$(ZLIBLIB) # -g
 LIBS = -lz -lm
@@ -51,7 +55,7 @@
 	$(CP) $(PNGLIBCONF_H_PREBUILT) $@
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -o $@ $*.c
 
 static: libpng.a pngtest$(EXEEXT)
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.darwin
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.darwin	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.darwin	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng on Darwin / macOS
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2014, 2018-2025 Cosmin Truta
 # Copyright (C) 2002, 2004, 2006, 2008, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 2001 Christoph Pfisterer
 # derived from makefile.linux:
@@ -10,10 +10,6 @@
 # For conditions of distribution and use, see the disclaimer
 # and license in png.h
 
-# Where the zlib library and include files are located
-ZLIBLIB=/usr/lib
-ZLIBINC=/usr/include
-
 # Library name:
 LIBNAME=libpng16
 PNGMAJ=16
@@ -30,13 +26,22 @@
 CP=cp
 RM_F=rm -f
 
-NOHWOPT=-DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
-        -DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
-DEFS=$(NOHWOPT)
-CPPFLAGS=-I$(ZLIBINC) $(DEFS)
-CFLAGS=-O3 -funroll-loops -Wall -Wextra -Wundef
-ARFLAGS=rc
-LDFLAGS=-L. -L$(ZLIBLIB) -lpng16 -lz
+# Compiler and linker flags
+NOHWOPT = -DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
+          -DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
+STDC = -pedantic-errors
+WARN = -Wall -Wextra -Wundef
+WARNMORE = -Wcast-align -Wconversion -Wshadow -Wpointer-arith -Wwrite-strings \
+           -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes
+LOCAL_CPPFLAGS = $(NOHWOPT)
+CPPFLAGS = # -DPNG_DEBUG=5
+ALL_CPPFLAGS = $(LOCAL_CPPFLAGS) $(CPPFLAGS)
+LOCAL_CFLAGS = $(STDC) $(WARN) # $(WARNMORE)
+CFLAGS = -O3 -funroll-loops # -g
+ALL_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS)
+ARFLAGS = rc
+LDFLAGS = -L. -lpng16 -lz # -g
+LDFLAGS_A = libpng.a -lz -lm # -g
 
 # Pre-built configuration
 # See scripts/pnglibconf.mak for more options
@@ -52,12 +57,12 @@
 .SUFFIXES:      .c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -o $@ $*.c
 
 .c.pic.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -fno-common -o $@ $*.c
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -fno-common -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest
+all: libpng.a $(LIBSO) pngtest pngtest-static
 
 pnglibconf.h: $(PNGLIBCONF_H_PREBUILT)
 	$(CP) $(PNGLIBCONF_H_PREBUILT) $@
@@ -71,15 +76,25 @@
 
 $(LIBSOMAJ): $(OBJSDLL)
 	$(CC) -dynamiclib \
-	 -current_version 16 -compatibility_version 16 \
-	 -o $(LIBSOMAJ) \
-	 $(OBJSDLL) -L$(ZLIBLIB) -lz
+	      -current_version 16 -compatibility_version 16 \
+	      -o $(LIBSOMAJ) \
+	      $(OBJSDLL) -lz
 
 pngtest: pngtest.o $(LIBSO)
 	$(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
 
-test: pngtest
+pngtest-static: pngtest.o libpng.a
+	$(CC) -o pngtest-static $(CFLAGS) pngtest.o $(LDFLAGS_A)
+
+test: pngtest pngtest-static
+	@echo ""
+	@echo "   Running pngtest dynamically linked with $(LIBSO):"
+	@echo ""
 	./pngtest
+	@echo ""
+	@echo "   Running pngtest statically linked with libpng.a:"
+	@echo ""
+	./pngtest-static
 
 install:
 	@echo "The $@ target is no longer supported by this makefile."
@@ -94,8 +109,9 @@
 	@false
 
 clean:
-	$(RM_F) *.o libpng.a pngtest pngout.png
+	$(RM_F) $(OBJS) $(OBJSDLL) libpng.a
 	$(RM_F) $(LIBNAME).*dylib pnglibconf.h
+	$(RM_F) pngtest*.o pngtest pngtest-static pngout.png
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.dec
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.dec	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.dec	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng on DEC Alpha Unix
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2020-2025 Cosmin Truta
 # Copyright (C) 2000-2002, 2006, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -30,7 +30,7 @@
 ZLIBINC=../zlib
 
 CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS=-std -w1 -O # -g
+CFLAGS=-std -w1 -O
 ARFLAGS=rc
 LDFLAGS=-L$(ZLIBLIB) -rpath $(ZLIBLIB) libpng.a -lz -lm
 
@@ -43,7 +43,7 @@
        pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: $(LIBSO) libpng.a pngtest
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.dj2
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.dj2	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.dj2	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # DJGPP (DOS gcc) makefile for libpng
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2020-2025 Cosmin Truta
 # Copyright (C) 2002, 2006, 2009-2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -11,7 +11,7 @@
 AR=ar
 RANLIB=ranlib
 CPPFLAGS=-I../zlib -DPNG_NO_SNPRINTF
-CFLAGS=-O
+CFLAGS=-O2 -Wall -Wextra -Wundef
 ARFLAGS=rc
 LDFLAGS=-L. -L../zlib/ -lpng -lz -lm
 
@@ -27,7 +27,7 @@
        pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: libpng.a pngtest
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.emcc
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.emcc	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.emcc	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng using emscripten
-# Copyright (C) 2000, 2014, 2019-2024 Cosmin Truta
+# Copyright (C) 2000, 2014, 2019-2025 Cosmin Truta
 # Copyright (C) 2021 Kirk Roerig
 # Copyright (C) 2008, 2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
@@ -20,8 +20,16 @@
 CP = cp
 RM_F = rm -f
 
+STDC = -pedantic-errors # -std=c99
+WARN = -Wall -Wextra -Wundef
+WARNMORE = -Wcast-align -Wconversion -Wshadow -Wpointer-arith -Wwrite-strings \
+           -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes
+LOCAL_CPPFLAGS =
 CPPFLAGS = -I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS = -O2 -Wall -Wextra -Wundef
+ALL_CPPFLAGS = $(LOCAL_CPPFLAGS) $(CPPFLAGS)
+LOCAL_CFLAGS = $(STDC) $(WARN) # $(WARNMORE)
+CFLAGS = -O2
+ALL_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS)
 ARFLAGS = rc
 LDFLAGS = -L$(ZLIBLIB)
 PNGTEST_LDFLAGS = --preload-file=pngtest.png
@@ -43,7 +51,7 @@
 	$(CP) $(PNGLIBCONF_H_PREBUILT) $@
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -o $@ $*.c
 
 static: libpng.a pngtest
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.freebsd
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.freebsd	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.freebsd	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng under FreeBSD
-# Copyright (C) 2020-2022 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2014 Glenn Randers-Pehrson and Andrey A. Chernov
 # Copyright (C) 2002, 2007, 2009 Glenn Randers-Pehrson and Andrey A. Chernov
 #
@@ -35,7 +35,7 @@
 	pngtrans.c pngwio.c pngwrite.c pngwtran.c pngwutil.c
 
 .c.o:
-	${CC} -c ${CPPFLAGS} ${CFLAGS} -o $@ $<
+	${CC} -c ${CPPFLAGS} ${CFLAGS} -o $@ $*.c
 
 pnglibconf.h:	${PNGLIBCONF_H_PREBUILT}
 	cp ${PNGLIBCONF_H_PREBUILT} $@

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.gcc
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.gcc	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.gcc	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng using gcc (generic, static library)
-# Copyright (C) 2000, 2014, 2019-2024 Cosmin Truta
+# Copyright (C) 2000, 2014, 2019-2025 Cosmin Truta
 # Copyright (C) 2008, 2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -21,13 +21,17 @@
 
 # Compiler and linker flags
 NOHWOPT = -DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
-	-DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
-WARNMORE = -Wwrite-strings -Wpointer-arith -Wshadow \
-	-Wmissing-declarations -Wtraditional -Wcast-align \
-	-Wstrict-prototypes -Wmissing-prototypes # -Wconversion
-DEFS = $(NOHWOPT)
-CPPFLAGS = -I$(ZLIBINC) $(DEFS) # -DPNG_DEBUG=5
-CFLAGS = -O2 -Wall -Wextra -Wundef # $(WARNMORE) -g
+          -DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
+STDC = -pedantic-errors # -std=c99
+WARN = -Wall -Wextra -Wundef
+WARNMORE = -Wcast-align -Wconversion -Wshadow -Wpointer-arith -Wwrite-strings \
+           -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes
+LOCAL_CPPFLAGS = $(NOHWOPT)
+CPPFLAGS = -I$(ZLIBINC) # -DPNG_DEBUG=5
+ALL_CPPFLAGS = $(LOCAL_CPPFLAGS) $(CPPFLAGS)
+LOCAL_CFLAGS = $(STDC) $(WARN) # $(WARNMORE)
+CFLAGS = -O2 # -g
+ALL_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS)
 ARFLAGS = rc
 LDFLAGS = -L$(ZLIBLIB) # -g
 LIBS = -lz -lm
@@ -51,7 +55,7 @@
 	$(CP) $(PNGLIBCONF_H_PREBUILT) $@
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -o $@ $*.c
 
 static: libpng.a pngtest$(EXEEXT)
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hp64
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hp64	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hp64	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng, HPUX (10.20 and 11.00) using the ANSI/C product.
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 1999-2002, 2006, 2009, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42
 # Contributed by Jim Rice and updated by Chris Schleicher, Hewlett Packard
@@ -56,7 +56,7 @@
 .SUFFIXES:	.c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 .c.pic.o:
 	$(CC) -c $(CPPFLAGS) $(CFLAGS) +z -o $@ $*.c

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hpgcc
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hpgcc	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hpgcc	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng on HP-UX using GCC with the HP ANSI/C linker.
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2002, 2006-2008, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 2001, Laurent faillie
 # Copyright (C) 1998, 1999 Greg Roelofs
@@ -37,12 +37,8 @@
 #   LDSHARED=ld -b
 #   SHAREDLIB=libz.sl
 
-WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
-	-Wmissing-declarations -Wtraditional -Wcast-align \
-	-Wstrict-prototypes -Wmissing-prototypes # -Wconversion
-
 CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS=-O3 -funroll-loops -Wall -Wextra -Wundef # $(WARNMORE) -g
+CFLAGS=-O3 -funroll-loops # -g
 ARFLAGS=rc
 #LDFLAGS=-L. -Wl,-rpath,. -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) -lpng16 -lz -lm # -g
 LDFLAGS=-L. -L$(ZLIBLIB) -lpng16 -lz -lm # -g
@@ -56,7 +52,7 @@
 .SUFFIXES:      .c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 .c.pic.o:
 	$(CC) -c $(CPPFLAGS) $(CFLAGS) -fPIC -o $@ $*.c

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hpux
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hpux	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.hpux	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng, HPUX (10.20 and 11.00) using the ANSI/C product.
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 1999-2002, 2006, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42
 # Contributed by Jim Rice and updated by Chris Schleicher, Hewlett Packard
@@ -55,7 +55,7 @@
 .SUFFIXES:	.c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 .c.pic.o:
 	$(CC) -c $(CPPFLAGS) $(CFLAGS) +z -o $@ $*.c

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.ibmc
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.ibmc	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.ibmc	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,7 +1,7 @@
 # Makefile for libpng (static)
 # IBM C version 3.x for Win32 and OS/2
 # Copyright (C) 2006, 2014 Glenn Randers-Pehrson
-# Copyright (C) 2000, 2020 Cosmin Truta
+# Copyright (C) 2000, 2020-2025 Cosmin Truta
 #
 # This code is released under the libpng license.
 # For conditions of distribution and use, see the disclaimer
@@ -46,7 +46,7 @@
 
 # Targets
 .c$(O):
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c
 
 all: libpng$(A) pngtest$(E)
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.linux
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.linux	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.linux	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng.a and libpng16.so on Linux ELF with gcc
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 1998, 1999, 2002, 2006, 2008, 2010-2014 Greg Roelofs and
 # Glenn Randers-Pehrson
 # Copyright (C) 1996, 1997 Andreas Dilger
@@ -24,24 +24,22 @@
 CP=cp
 RM_F=rm -f
 
-# Where the zlib library and include files are located.
-#ZLIBLIB=/usr/local/lib
-#ZLIBINC=/usr/local/include
-ZLIBLIB=../zlib
-ZLIBINC=../zlib
-
 # Compiler and linker flags
-NOHWOPT=-DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
-	-DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
-WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
-	-Wmissing-declarations -Wtraditional -Wcast-align \
-	-Wstrict-prototypes -Wmissing-prototypes # -Wconversion
-DEFS=$(NOHWOPT)
-CPPFLAGS=-I$(ZLIBINC) $(DEFS) # -DPNG_DEBUG=5
-CFLAGS=-O3 -funroll-loops -Wall -Wextra -Wundef # $(WARNMORE) -g
-ARFLAGS=rc
-LDFLAGS=-L. -Wl,-rpath,. -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) -lpng16 -lz -lm # -g
-LDFLAGS_A=-L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) libpng.a -lz -lm # -g
+NOHWOPT = -DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
+          -DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
+STDC = -pedantic-errors
+WARN = -Wall -Wextra -Wundef
+WARNMORE = -Wcast-align -Wconversion -Wshadow -Wpointer-arith -Wwrite-strings \
+           -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes
+LOCAL_CPPFLAGS = $(NOHWOPT)
+CPPFLAGS = # -DPNG_DEBUG=5
+ALL_CPPFLAGS = $(LOCAL_CPPFLAGS) $(CPPFLAGS)
+LOCAL_CFLAGS = $(STDC) $(WARN) # $(WARNMORE)
+CFLAGS = -O3 -funroll-loops # -g
+ALL_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS)
+ARFLAGS = rc
+LDFLAGS = -L. -Wl,-rpath,. -lpng16 -lz -lm # -g
+LDFLAGS_A = libpng.a -lz -lm # -g
 
 # Pre-built configuration
 # See scripts/pnglibconf.mak for more options
@@ -57,10 +55,10 @@
 .SUFFIXES:      .c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -o $@ $*.c
 
 .c.pic.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -fPIC -o $@ $*.c
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -fPIC -o $@ $*.c
 
 all: libpng.a $(LIBSO) pngtest pngtest-static
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.mips
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.mips	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.mips	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 1998-2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -26,7 +26,7 @@
        pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: libpng.a pngtest
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.msys
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.msys	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.msys	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng using MSYS/gcc (shared, static library)
-# Copyright (C) 2000, 2019-2024 Cosmin Truta
+# Copyright (C) 2000, 2019-2025 Cosmin Truta
 # Copyright (C) 2012 Glenn Randers-Pehrson and Christopher M. Wheeler
 #
 # Portions taken from makefile.linux and makefile.gcc:
@@ -21,12 +21,6 @@
 LIBSO=$(LIBNAME).dll
 LIBSOMAJ=$(LIBNAME).dll.$(PNGMAJ)
 
-# Where the zlib library and include files are located.
-#ZLIBLIB=../zlib
-#ZLIBINC=../zlib
-ZLIBLIB=/usr/local/lib
-ZLIBINC=/usr/local/include
-
 # Compiler, linker, lib and other tools
 CC = gcc
 LD = $(CC)
@@ -33,11 +27,22 @@
 AR = ar
 RANLIB = ranlib
 CP = cp
-RM_F = rm -rf
+RM_F = rm -f
 LN_SF = ln -sf
 
+# Compiler and linker flags
+NOHWOPT = -DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
+          -DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
+STDC = -pedantic-errors
+WARN = -Wall -Wextra -Wundef
+WARNMORE = -Wcast-align -Wconversion -Wshadow -Wpointer-arith -Wwrite-strings \
+           -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes
+LOCAL_CPPFLAGS = $(NOHWOPT)
 CPPFLAGS = # -DPNG_DEBUG=5
-CFLAGS = -O2 -Wall -Wextra -Wundef # -g
+ALL_CPPFLAGS = $(LOCAL_CPPFLAGS) $(CPPFLAGS)
+LOCAL_CFLAGS = $(STDC) $(WARN) # $(WARNMORE)
+CFLAGS = -O2 # -g
+ALL_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS)
 ARFLAGS = rc
 LDFLAGS = # -g
 LIBS = -lz -lm
@@ -61,7 +66,7 @@
 	$(CP) $(PNGLIBCONF_H_PREBUILT) $@
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) $<
+	$(CC) -c $(ALL_CPPFLAGS) $(ALL_CFLAGS) -o $@ $*.c
 
 static: libpng.a pngtest$(EXEEXT)
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.netbsd
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.netbsd	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.netbsd	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng on NetBSD
-# Copyright (C) 2020-2022 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2007-2009, 2014 Glenn Randers-Pehrson
 # Copyright (C) 2002 Patrick R.L. Welche
 #
@@ -32,7 +32,7 @@
 # .endif
 
 .c.o:
-	${CC} -c ${CPPFLAGS} ${CFLAGS} -o $@ $<
+	${CC} -c ${CPPFLAGS} ${CFLAGS} -o $@ $*.c
 
 pnglibconf.h:	${PNGLIBCONF_H_PREBUILT}
 	cp ${PNGLIBCONF_H_PREBUILT} $@

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.openbsd
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.openbsd	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.openbsd	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng
-# Copyright (C) 2020-2022 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2007-2009, 2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -26,7 +26,7 @@
 PNGLIBCONF_H_PREBUILT= scripts/pnglibconf.h.prebuilt
 
 .c.o:
-	${CC} -c ${CPPFLAGS} ${CFLAGS} -o $@ $<
+	${CC} -c ${CPPFLAGS} ${CFLAGS} -o $@ $*.c
 
 pnglibconf.h:	${PNGLIBCONF_H_PREBUILT}
 	cp ${PNGLIBCONF_H_PREBUILT} $@

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sco
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sco	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sco	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,7 +1,7 @@
 # makefile for SCO OSr5  ELF and Unixware 7 with Native cc
 # Contributed by Mike Hopkirk (hops at sco.com) modified from Makefile.lnx
 #   force ELF build dynamic linking, SONAME setting in lib and RPATH in app
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2002, 2006, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1998 Greg Roelofs
 # Copyright (C) 1996, 1997 Andreas Dilger
@@ -50,7 +50,7 @@
 .SUFFIXES:      .c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 .c.pic.o:
 	$(CC) -c $(CPPFLAGS) $(CFLAGS) -KPIC -o $@ $*.c

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sggcc
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sggcc	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sggcc	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng.a and libpng16.so, SGI IRIX with 'cc'
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2001-2002, 2006, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -35,9 +35,8 @@
 # See "man abi".  zlib must be built with the same ABI.
 ABI=
 
-WARNMORE=
 CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS=$(ABI) -O $(WARNMORE) -fPIC -mabi=n32 # -g
+CFLAGS=$(ABI) -O -fPIC -mabi=n32 # -g
 ARFLAGS=rc
 LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm # -g
 LDSHARED=cc $(ABI) -shared -soname $(LIBSOMAJ) \
@@ -53,7 +52,7 @@
        pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: libpng.a pngtest shared
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sgi
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sgi	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sgi	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng.a and libpng16.so, SGI IRIX with 'cc'
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2001-2002, 2006, 2007, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -35,11 +35,10 @@
 # See "man abi".  zlib must be built with the same ABI.
 ABI=
 
-WARNMORE=-fullwarn
 # Note: -KPIC is the default anyhow
 CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
-#CFLAGS= $(ABI) -O $(WARNMORE) -KPIC # -g
-CFLAGS=$(ABI) -O $(WARNMORE) # -g
+#CFLAGS=$(ABI) -O -fullwarn -KPIC # -g
+CFLAGS=$(ABI) -O -fullwarn # -g
 ARFLAGS=rc
 LDFLAGS_A=$(ABI) -L. -L$(ZLIBLIB) -lpng16 -lz -lm # -g
 LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm # -g
@@ -56,7 +55,7 @@
        pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: libpng.a pngtest shared
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.so9
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.so9	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.so9	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,7 +1,7 @@
 # makefile for libpng on Solaris 9 (beta) with Forte cc
 # Updated by Chad Schrock for Solaris 9
 # Contributed by William L. Sebok, based on makefile.linux
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2002, 2006, 2008, 2010-2014 Glenn Randers-Pehrson
 # Copyright (C) 1998-2001 Greg Roelofs
 # Copyright (C) 1996-1997 Andreas Dilger
@@ -19,7 +19,6 @@
 LIBSOMAJ=$(LIBNAME).so.$(PNGMAJ)
 
 # Utilities:
-# gcc 2.95 doesn't work.
 CC=cc
 AR=ar
 RANLIB=echo
@@ -56,7 +55,7 @@
 .SUFFIXES:      .c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 .c.pic.o:
 	$(CC) -c $(CPPFLAGS) $(CFLAGS) -KPIC -o $@ $*.c

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.solaris
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.solaris	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.solaris	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng on Solaris 2.x with gcc
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2004, 2006-2008, 2010-2014 Glenn Randers-Pehrson
 # Contributed by William L. Sebok, based on makefile.linux
 # Copyright (C) 1998 Greg Roelofs
@@ -34,11 +34,8 @@
 ZLIBLIB=/usr/local/lib
 ZLIBINC=/usr/local/include
 
-WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
-	-Wmissing-declarations -Wtraditional -Wcast-align \
-	-Wstrict-prototypes -Wmissing-prototypes # -Wconversion
 CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
-CFLAGS=-O -Wall -Wextra -Wundef # $(WARNMORE) -g
+CFLAGS=-O # -g
 ARFLAGS=rc
 LDFLAGS=-L. -R. -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng16 -lz -lm # -g
 
@@ -55,7 +52,7 @@
 .SUFFIXES:      .c .o .pic.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 .c.pic.o:
 	$(CC) -c $(CPPFLAGS) $(CFLAGS) -fPIC -o $@ $*.c

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.std
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.std	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.std	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2015, 2018-2025 Cosmin Truta
 # Copyright (C) 2002, 2006, 2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -23,7 +23,7 @@
 AWK = awk
 
 NOHWOPT = -DPNG_ARM_NEON_OPT=0 -DPNG_MIPS_MSA_OPT=0 \
-	-DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
+          -DPNG_POWERPC_VSX_OPT=0 -DPNG_INTEL_SSE_OPT=0
 DFNFLAGS = # DFNFLAGS contains -D options to use in the libpng build
 DFA_EXTRA = # extra files that can be used to control configuration
 CPPFLAGS = -I$(ZLIBINC) $(NOHWOPT) # -DPNG_DEBUG=5
@@ -41,7 +41,7 @@
        pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: libpng.a pngtest
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sunos
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sunos	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/makefile.sunos	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 # makefile for libpng
-# Copyright (C) 2020-2024 Cosmin Truta
+# Copyright (C) 2018-2025 Cosmin Truta
 # Copyright (C) 2002, 2006, 2014 Glenn Randers-Pehrson
 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
 #
@@ -33,7 +33,7 @@
        pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
 
 .c.o:
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $*.c
 
 all: libpng.a pngtest
 

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/pnglibconf.dfa
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/pnglibconf.dfa	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/pnglibconf.dfa	2025-01-25 17:53:19 UTC (rev 947)
@@ -847,11 +847,13 @@
 chunk bKGD
 chunk cHRM enables COLORSPACE
 chunk cICP enables COLORSPACE, GAMMA
+chunk cLLI
 chunk eXIf
 chunk gAMA enables GAMMA
 chunk hIST
 chunk iCCP enables COLORSPACE, GAMMA
 chunk iTXt enables TEXT
+chunk mDCV
 chunk oFFs
 chunk pCAL
 chunk pHYs

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/pnglibconf.h.prebuilt
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/pnglibconf.h.prebuilt	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/pnglibconf.h.prebuilt	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,6 @@
 /* pnglibconf.h - library build configuration */
 
-/* libpng version 1.6.45 */
+/* libpng version 1.6.46 */
 
 /* Copyright (c) 2018-2025 Cosmin Truta */
 /* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson */
@@ -89,11 +89,13 @@
 #define PNG_READ_bKGD_SUPPORTED
 #define PNG_READ_cHRM_SUPPORTED
 #define PNG_READ_cICP_SUPPORTED
+#define PNG_READ_cLLI_SUPPORTED
 #define PNG_READ_eXIf_SUPPORTED
 #define PNG_READ_gAMA_SUPPORTED
 #define PNG_READ_hIST_SUPPORTED
 #define PNG_READ_iCCP_SUPPORTED
 #define PNG_READ_iTXt_SUPPORTED
+#define PNG_READ_mDCV_SUPPORTED
 #define PNG_READ_oFFs_SUPPORTED
 #define PNG_READ_pCAL_SUPPORTED
 #define PNG_READ_pHYs_SUPPORTED
@@ -160,11 +162,13 @@
 #define PNG_WRITE_bKGD_SUPPORTED
 #define PNG_WRITE_cHRM_SUPPORTED
 #define PNG_WRITE_cICP_SUPPORTED
+#define PNG_WRITE_cLLI_SUPPORTED
 #define PNG_WRITE_eXIf_SUPPORTED
 #define PNG_WRITE_gAMA_SUPPORTED
 #define PNG_WRITE_hIST_SUPPORTED
 #define PNG_WRITE_iCCP_SUPPORTED
 #define PNG_WRITE_iTXt_SUPPORTED
+#define PNG_WRITE_mDCV_SUPPORTED
 #define PNG_WRITE_oFFs_SUPPORTED
 #define PNG_WRITE_pCAL_SUPPORTED
 #define PNG_WRITE_pHYs_SUPPORTED
@@ -179,11 +183,13 @@
 #define PNG_bKGD_SUPPORTED
 #define PNG_cHRM_SUPPORTED
 #define PNG_cICP_SUPPORTED
+#define PNG_cLLI_SUPPORTED
 #define PNG_eXIf_SUPPORTED
 #define PNG_gAMA_SUPPORTED
 #define PNG_hIST_SUPPORTED
 #define PNG_iCCP_SUPPORTED
 #define PNG_iTXt_SUPPORTED
+#define PNG_mDCV_SUPPORTED
 #define PNG_oFFs_SUPPORTED
 #define PNG_pCAL_SUPPORTED
 #define PNG_pHYs_SUPPORTED

Modified: branches/stable/source/src/libs/libpng/libpng-src/scripts/symbols.def
===================================================================
--- branches/stable/source/src/libs/libpng/libpng-src/scripts/symbols.def	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/libpng-src/scripts/symbols.def	2025-01-25 17:53:19 UTC (rev 947)
@@ -255,3 +255,11 @@
  png_set_eXIf_1 @249
  png_get_cICP @250
  png_set_cICP @251
+ png_get_cLLI @252
+ png_get_cLLI_fixed @253
+ png_set_cLLI @254
+ png_set_cLLI_fixed @255
+ png_get_mDCV @256
+ png_get_mDCV_fixed @257
+ png_set_mDCV @258
+ png_set_mDCV_fixed @259

Modified: branches/stable/source/src/libs/libpng/version.ac
===================================================================
--- branches/stable/source/src/libs/libpng/version.ac	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/libpng/version.ac	2025-01-25 17:53:19 UTC (rev 947)
@@ -8,4 +8,4 @@
 dnl --------------------------------------------------------
 dnl
 dnl  m4-include this file to define the current libpng version
-m4_define([libpng_version], [1.6.45])
+m4_define([libpng_version], [1.6.46])

Modified: branches/stable/source/src/libs/xpdf/ChangeLog
===================================================================
--- branches/stable/source/src/libs/xpdf/ChangeLog	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/xpdf/ChangeLog	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,3 +1,8 @@
+2025-01-21  Vincenzo Mantova <vlmantova at gmail.com>
+
+	* ac/xpdf.ac call gfxFont->isOk(), which is defined by vendor xpdf.
+	https://tug.org/pipermail/tlbuild/2024q2/005555.html
+
 2022-04-24  Akira Kakuto  <kakuto at jcom.zaq.ne.jp>
 
 	* Import xpdf-4.04.

Modified: branches/stable/source/src/libs/xpdf/ac/xpdf.ac
===================================================================
--- branches/stable/source/src/libs/xpdf/ac/xpdf.ac	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/libs/xpdf/ac/xpdf.ac	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,7 +1,7 @@
-dnl $Id: xpdf.ac 55138 2020-05-14 17:47:47Z karl $
+dnl $Id: xpdf.ac 73540 2025-01-21 15:14:18Z karl $
 ## libs/xpdf/ac/xpdf.ac: configure.ac fragment for the TeX Live subdirectory libs/xpdf/
 dnl
-dnl Copyright 2015-2020 Karl Berry <tex-live at tug.org>
+dnl Copyright 2015-2025 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
@@ -9,4 +9,4 @@
 ## TL sources)
 KPSE_TRY_LIBXX([xpdf],
                [#include <GfxFont.h>],
-               [GfxFont *gfxFont; gfxFont->decRefCnt();])
+               [GfxFont *gfxFont; gfxFont->isOk();])

Modified: branches/stable/source/src/texk/configure
===================================================================
--- branches/stable/source/src/texk/configure	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/configure	2025-01-25 17:53:19 UTC (rev 947)
@@ -6117,6 +6117,10 @@
 ## libs/pplib/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/pplib/
 ## configure options and TL libraries required for pplib
 
+test "x$need_pplib" = xyes && {
+  need_zlib=yes
+}
+
 ## libs/harfbuzz/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/harfbuzz/
 ## configure options and TL libraries required for harfbuzz
 

Modified: branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm
===================================================================
--- branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm	2025-01-25 17:53:19 UTC (rev 947)
@@ -7,7 +7,7 @@
 
 package TeXLive::TLUtils;
 
-my $svnrev = '$Revision: 71593 $';
+my $svnrev = '$Revision: 73556 $';
 my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
 sub module_revision { return $_modulerevision; }
 
@@ -3676,20 +3676,19 @@
   close(OUTFILE) || warn "close(>$dest) failed: $!";
 }
 
+# 

 sub parse_AddHyphen_line {
   my $line = shift;
   my %ret;
   # default values
-  my $default_lefthyphenmin = 2;
-  my $default_righthyphenmin = 3;
-  $ret{"lefthyphenmin"} = $default_lefthyphenmin;
-  $ret{"righthyphenmin"} = $default_righthyphenmin;
+  my $default_lefthyphenmin = -1;
+  my $default_righthyphenmin = -1;
   $ret{"synonyms"} = [];
   for my $p (quotewords('\s+', 0, "$line")) {
     my ($a, $b) = split /=/, $p;
     if ($a eq "name") {
       if (!$b) {
-        $ret{"error"} = "AddHyphen line needs name=something";
+        $ret{"error"} = "AddHyphen line needs name=something: $line";
         return %ret;
       }
       $ret{"name"} = $b;
@@ -3696,16 +3695,24 @@
       next;
     }
     if ($a eq "lefthyphenmin") {
-      $ret{"lefthyphenmin"} = ( $b ? $b : $default_lefthyphenmin );
+      if (! defined $b) {
+        $ret{"error"} = "AddHyphen line needs lefthyphenmin=something: $line";
+        return %ret;
+      }
+      $ret{"lefthyphenmin"} = $b;
       next;
     }
     if ($a eq "righthyphenmin") {
-      $ret{"righthyphenmin"} = ( $b ? $b : $default_righthyphenmin );
+      if (! defined $b) {
+        $ret{"error"} = "AddHyphen line needs righthyphenmin=something: $line";
+        return %ret;
+      }
+      $ret{"righthyphenmin"} = $b;
       next;
     }
     if ($a eq "file") {
       if (!$b) {
-        $ret{"error"} = "AddHyphen line needs file=something";
+        $ret{"error"} = "AddHyphen line needs file=something: $line ";
         return %ret;
       }
       $ret{"file"} = $b;
@@ -3712,33 +3719,63 @@
       next;
     }
     if ($a eq "file_patterns") {
-        $ret{"file_patterns"} = $b;
-        next;
+      # many are blank in hyph-utf8, don't check.
+      $ret{"file_patterns"} = $b;
+      next;
     }
     if ($a eq "file_exceptions") {
-        $ret{"file_exceptions"} = $b;
-        next;
+      # many are blank in hyph-utf8, don't check.
+      $ret{"file_exceptions"} = $b;
+      next;
     }
     if ($a eq "luaspecial") {
-        $ret{"luaspecial"} = $b;
-        next;
+      if (!$b) {
+        $ret{"error"} = "AddHyphen line needs luaspecial=something: $line";
+        return %ret;
+      }
+      $ret{"luaspecial"} = $b;
+      next;
     }
     if ($a eq "databases") {
+      if (!$b) {
+        $ret{"error"} = "AddHyphen line needs databases=something: $line";
+        return %ret;
+      }
       @{$ret{"databases"}} = split /,/, $b;
       next;
     }
     if ($a eq "synonyms") {
+      if (!$b) {
+        $ret{"error"} = "AddHyphen line needs synonyms=something: $line";
+        return %ret;
+      }
       @{$ret{"synonyms"}} = split /,/, $b;
       next;
     }
     if ($a eq "comment") {
-        $ret{"comment"} = $b;
-        next;
+      $ret{"comment"} = $b;
+      next;
     }
     # should not be reached at all
-    $ret{"error"} = "Unknown language directive $a";
+    $ret{"error"} = "Unknown AddHyphen directive $a: $line";
     return %ret;
   }
+  if (! $ret{"name"}) {
+    $ret{"error"} = "AddHyphen is missing name setting: $line";
+    return %ret;    
+  }
+  if ($ret{"lefthyphenmin"} !~ /^[0-9]$/) {
+    $ret{"lefthyphenmin"} = "" if ! $ret{"lefthyphenmin"}; #undef warning
+    $ret{"error"} = "AddHyphen has missing or bad "
+                    . " lefthyphenmin ($ret{lefthyphenmin}): $line";
+    return %ret;    
+  }
+  if ($ret{"righthyphenmin"} !~ /^[0-9]$/) {
+    $ret{"righthyphenmin"} = "" if ! $ret{"righthyphenmin"}; #undef warning
+    $ret{"error"} = "AddHyphen has missing or bad "
+                    . " righthyphenmin ($ret{righthyphenmin}): $line";
+    return %ret;    
+  }
   # this default value couldn't be set earlier
   if (not defined($ret{"databases"})) {
     if (defined $ret{"file_patterns"} or defined $ret{"file_exceptions"}

Modified: branches/stable/source/src/texk/web2c/ChangeLog
===================================================================
--- branches/stable/source/src/texk/web2c/ChangeLog	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/ChangeLog	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,3 +1,24 @@
+2025-01-24  Karl Berry  <karl at freefriends.org>
+
+	* configure.ac (KPSE_CHECK_FRAMEWORK, KPSE_FONTCONFIG_FLAGS)
+	[enable_xetex]: move these checks to below KPSE_KPATHSEA_FLAGS,
+	so that --with-system-kpathsea --without-xetex build will not
+	result in pkg-config not being checked for.
+	Report from balducci at units.it,
+	https://tug.org/pipermail/tex-k/2025-January/004147.html
+
+2025-01-21  Vincenzo Mantova <vlmantova at gmail.com>
+
+	* configure.ac (KPSE_HARFBUZZ_FLAGS): needed for lua[jit]hbtex,
+	not luatex[53].
+	(KPSE_CHECK_FRAMEWORK, KPSE_FONTCONFIG_FLAGS) [enable_xetex]:
+	make these checks conditional.
+	https://tug.org/pipermail/tlbuild/2024q2/005555.html
+
+2025-01-19  Karl Berry  <karl at freefriends.org>
+
+	* configure.ac (LIBS): 
+
 2025-01-01  Andreas Scherer  <https://ascherer.github.io>
 
 	* ctangleboot.cin: CWEB 4.12.1 release.

Modified: branches/stable/source/src/texk/web2c/Makefile.in
===================================================================
--- branches/stable/source/src/texk/web2c/Makefile.in	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/Makefile.in	2025-01-25 17:53:19 UTC (rev 947)
@@ -126,11 +126,11 @@
 	$(am__append_6) $(am__append_16) $(am__append_25) \
 	$(am__append_34) $(am__append_42) $(am__append_55) \
 	$(am__append_56) $(am__append_58) $(am__append_62) \
-	$(am__EXEEXT_46) $(am__append_68) $(am__append_71) \
-	$(am__append_76) $(am__append_81) $(am__append_84) \
-	$(am__append_105) $(am__append_106) $(am__append_107) \
-	$(am__append_108) $(am__append_110) $(am__append_118) \
-	$(am__append_120) $(am__append_122) $(am__append_145) \
+	$(am__EXEEXT_46) $(am__append_69) $(am__append_72) \
+	$(am__append_77) $(am__append_82) $(am__append_85) \
+	$(am__append_106) $(am__append_107) $(am__append_108) \
+	$(am__append_109) $(am__append_111) $(am__append_119) \
+	$(am__append_121) $(am__append_123) $(am__append_146) \
 	libmd5/md5.test
 @WEB_TRUE at am__append_1 = $(web_programs)
 @WEB_TRUE at am__append_2 = $(web_tests)
@@ -203,61 +203,65 @@
 @PWEB_TRUE at am__append_65 = $(pweb_tests)
 @UPTEX_TRUE at am__append_66 = uptex
 @UPWEB_TRUE at am__append_67 = $(upweb_programs)
- at UPTEX_TRUE@am__append_68 = $(uptex_tests)
- at UPTEX_TRUE@am__append_69 = uptrip.diffs
- at UPTEX_TRUE@am__append_70 = uptrip-clean
- at UPWEB_TRUE@am__append_71 = $(upweb_tests)
- at EUPTEX_TRUE@am__append_72 = euptex
- at EUPTEX_TRUE@@UPTEX_FALSE at am__append_73 = euptex$(EXEEXT):uptex
- at EUPTEX_TRUE@am__append_74 = euptex$(EXEEXT):eptex
- at EUPTEX_TRUE@@PTEX_FALSE at am__append_75 = euptex$(EXEEXT):ptex
- at EUPTEX_TRUE@am__append_76 = $(euptex_tests)
- at EUPTEX_TRUE@am__append_77 = euptrip.diffs
- at EUPTEX_TRUE@am__append_78 = euptrip-clean
- at HITEX_TRUE@am__append_79 = hitex hishrink histretch
- at HITEX_TRUE@am__append_80 = himktables
- at HITEX_TRUE@am__append_81 = $(hitex_tests)
- at MINGW32_TRUE@am__append_82 = \
+ at UPWEB_TRUE@am__append_68 = upbibtex$(EXEEXT):pbibtex \
+ at UPWEB_TRUE@	updvitype$(EXEEXT):pdvitype \
+ at UPWEB_TRUE@	uppltotf$(EXEEXT):ppltotf \
+ at UPWEB_TRUE@	uptftopl$(EXEEXT):ptftopl
+ at UPTEX_TRUE@am__append_69 = $(uptex_tests)
+ at UPTEX_TRUE@am__append_70 = uptrip.diffs
+ at UPTEX_TRUE@am__append_71 = uptrip-clean
+ at UPWEB_TRUE@am__append_72 = $(upweb_tests)
+ at EUPTEX_TRUE@am__append_73 = euptex
+ at EUPTEX_TRUE@@UPTEX_FALSE at am__append_74 = euptex$(EXEEXT):uptex
+ at EUPTEX_TRUE@am__append_75 = euptex$(EXEEXT):eptex
+ at EUPTEX_TRUE@@PTEX_FALSE at am__append_76 = euptex$(EXEEXT):ptex
+ at EUPTEX_TRUE@am__append_77 = $(euptex_tests)
+ at EUPTEX_TRUE@am__append_78 = euptrip.diffs
+ at EUPTEX_TRUE@am__append_79 = euptrip-clean
+ at HITEX_TRUE@am__append_80 = hitex hishrink histretch
+ at HITEX_TRUE@am__append_81 = himktables
+ at HITEX_TRUE@am__append_82 = $(hitex_tests)
+ at MINGW32_TRUE@am__append_83 = \
 @MINGW32_TRUE@	pdftexdir/regex/regex.c \
 @MINGW32_TRUE@	pdftexdir/regex/regex.h
 
- at PDFTEX_TRUE@am__append_83 = pdftex ttf2afm pdftosrc
- at PDFTEX_TRUE@am__append_84 = $(pdftex_tests) $(ttf2afm_tests) \
+ at PDFTEX_TRUE@am__append_84 = pdftex ttf2afm pdftosrc
+ at PDFTEX_TRUE@am__append_85 = $(pdftex_tests) $(ttf2afm_tests) \
 @PDFTEX_TRUE@	$(pdftosrc_tests)
- at LUATEX_TRUE@am__append_85 = luatex
- at LUATEX_TRUE@@WIN32_TRUE at am__append_86 = call_luatex
- at LUATEX_TRUE@@WIN32_TRUE at am__append_87 = install-luatex-links
- at LUATEX_TRUE@@WIN32_TRUE at am__append_88 = uninstall-luatex-links
- at LUATEX_TRUE@@WIN32_FALSE at am__append_89 = luatex$(EXEEXT):texlua luatex$(EXEEXT):texluac
- at LUAHBTEX_TRUE@am__append_90 = luahbtex
- at LUAHBTEX_TRUE@@WIN32_TRUE at am__append_91 = call_luahbtex
- at LUAHBTEX_TRUE@@WIN32_TRUE at am__append_92 = install-luahbtex-links
- at LUAHBTEX_TRUE@@WIN32_TRUE at am__append_93 = uninstall-luahbtex-links
+ at LUATEX_TRUE@am__append_86 = luatex
+ at LUATEX_TRUE@@WIN32_TRUE at am__append_87 = call_luatex
+ at LUATEX_TRUE@@WIN32_TRUE at am__append_88 = install-luatex-links
+ at LUATEX_TRUE@@WIN32_TRUE at am__append_89 = uninstall-luatex-links
+ at LUATEX_TRUE@@WIN32_FALSE at am__append_90 = luatex$(EXEEXT):texlua luatex$(EXEEXT):texluac
+ at LUAHBTEX_TRUE@am__append_91 = luahbtex
+ at LUAHBTEX_TRUE@@WIN32_TRUE at am__append_92 = call_luahbtex
+ at LUAHBTEX_TRUE@@WIN32_TRUE at am__append_93 = install-luahbtex-links
+ at LUAHBTEX_TRUE@@WIN32_TRUE at am__append_94 = uninstall-luahbtex-links
 # keep texlua[c] as links to luatex unless luatex is not installed.
- at LUAHBTEX_TRUE@@LUATEX_FALSE@@WIN32_FALSE at am__append_94 = luahbtex$(EXEEXT):texlua luahbtex$(EXEEXT):texluac
- at LUAJITTEX_TRUE@am__append_95 = luajittex
- at LUAJITTEX_TRUE@@WIN32_TRUE at am__append_96 = call_luajittex
- at LUAJITTEX_TRUE@@WIN32_TRUE at am__append_97 = install-luajittex-links
- at LUAJITTEX_TRUE@@WIN32_TRUE at am__append_98 = uninstall-luajittex-links
- at LUAJITTEX_TRUE@@WIN32_FALSE at am__append_99 = luajittex$(EXEEXT):texluajit luajittex$(EXEEXT):texluajitc
- at LUAJITHBTEX_TRUE@am__append_100 = luajithbtex
- at LUAJITHBTEX_TRUE@@WIN32_TRUE at am__append_101 = call_luajithbtex
- at LUAJITHBTEX_TRUE@@WIN32_TRUE at am__append_102 = install-luajithbtex-links
- at LUAJITHBTEX_TRUE@@WIN32_TRUE at am__append_103 = uninstall-luajithbtex-links
+ at LUAHBTEX_TRUE@@LUATEX_FALSE@@WIN32_FALSE at am__append_95 = luahbtex$(EXEEXT):texlua luahbtex$(EXEEXT):texluac
+ at LUAJITTEX_TRUE@am__append_96 = luajittex
+ at LUAJITTEX_TRUE@@WIN32_TRUE at am__append_97 = call_luajittex
+ at LUAJITTEX_TRUE@@WIN32_TRUE at am__append_98 = install-luajittex-links
+ at LUAJITTEX_TRUE@@WIN32_TRUE at am__append_99 = uninstall-luajittex-links
+ at LUAJITTEX_TRUE@@WIN32_FALSE at am__append_100 = luajittex$(EXEEXT):texluajit luajittex$(EXEEXT):texluajitc
+ at LUAJITHBTEX_TRUE@am__append_101 = luajithbtex
+ at LUAJITHBTEX_TRUE@@WIN32_TRUE at am__append_102 = call_luajithbtex
+ at LUAJITHBTEX_TRUE@@WIN32_TRUE at am__append_103 = install-luajithbtex-links
+ at LUAJITHBTEX_TRUE@@WIN32_TRUE at am__append_104 = uninstall-luajithbtex-links
 # keep texluajit[c] as links to luajittex unless luajittex is not installed.
- at LUAJITHBTEX_TRUE@@LUAJITTEX_FALSE@@WIN32_FALSE at am__append_104 = luajithbtex$(EXEEXT):texluajit luajithbtex$(EXEEXT):texluajitc
- at LUATEX_TRUE@am__append_105 = $(luatex_tests)
- at LUAHBTEX_TRUE@am__append_106 = $(luahbtex_tests)
- at LUAJITTEX_TRUE@am__append_107 = $(luajittex_tests)
- at LUAJITHBTEX_TRUE@am__append_108 = $(luajithbtex_tests)
- at TEXPROF_TRUE@am__append_109 = texprof texprofile
- at TEXPROF_TRUE@am__append_110 = $(texprof_tests)
- at XETEX_TRUE@am__append_111 = xetex
- at XETEX_MACOSX_TRUE@am__append_112 = -DXETEX_MAC
- at XETEX_MACOSX_TRUE@am__append_113 = -std=c++11
- at XETEX_MACOSX_FALSE@am__append_114 = $(FONTCONFIG_INCLUDES)
- at XETEX_MACOSX_FALSE@am__append_115 = $(FONTCONFIG_LIBS)
- at XETEX_MACOSX_TRUE@am__append_116 = \
+ at LUAJITHBTEX_TRUE@@LUAJITTEX_FALSE@@WIN32_FALSE at am__append_105 = luajithbtex$(EXEEXT):texluajit luajithbtex$(EXEEXT):texluajitc
+ at LUATEX_TRUE@am__append_106 = $(luatex_tests)
+ at LUAHBTEX_TRUE@am__append_107 = $(luahbtex_tests)
+ at LUAJITTEX_TRUE@am__append_108 = $(luajittex_tests)
+ at LUAJITHBTEX_TRUE@am__append_109 = $(luajithbtex_tests)
+ at TEXPROF_TRUE@am__append_110 = texprof texprofile
+ at TEXPROF_TRUE@am__append_111 = $(texprof_tests)
+ at XETEX_TRUE@am__append_112 = xetex
+ at XETEX_MACOSX_TRUE@am__append_113 = -DXETEX_MAC
+ at XETEX_MACOSX_TRUE@am__append_114 = -std=c++11
+ at XETEX_MACOSX_FALSE@am__append_115 = $(FONTCONFIG_INCLUDES)
+ at XETEX_MACOSX_FALSE@am__append_116 = $(FONTCONFIG_LIBS)
+ at XETEX_MACOSX_TRUE@am__append_117 = \
 @XETEX_MACOSX_TRUE@	xetexdir/XeTeXFontInst_Mac.cpp \
 @XETEX_MACOSX_TRUE@	xetexdir/XeTeXFontInst_Mac.h \
 @XETEX_MACOSX_TRUE@	xetexdir/XeTeXFontMgr_Mac.mm \
@@ -264,73 +268,73 @@
 @XETEX_MACOSX_TRUE@	xetexdir/XeTeXFontMgr_Mac.h \
 @XETEX_MACOSX_TRUE@	xetexdir/XeTeX_mac.c
 
- at XETEX_MACOSX_FALSE@am__append_117 = \
+ at XETEX_MACOSX_FALSE@am__append_118 = \
 @XETEX_MACOSX_FALSE@	xetexdir/XeTeXFontMgr_FC.cpp \
 @XETEX_MACOSX_FALSE@	xetexdir/XeTeXFontMgr_FC.h
 
- at XETEX_TRUE@am__append_118 = $(xetex_tests)
- at OTANGLE_TRUE@am__append_119 = $(omegaware_programs)
- at OTANGLE_TRUE@am__append_120 = $(OTANGLE_tests) $(OMFONTS_tests)
- at ALEPH_TRUE@am__append_121 = aleph
- at ALEPH_TRUE@am__append_122 = $(aleph_tests)
- at SYNCTEX_TRUE@am__append_123 = synctex
- at SYNCTEX_TRUE@am__append_124 = $(LTLIBSYNCTEX)
- at SYNCTEX_TRUE@am__append_125 = $(LIBSYNCTEX)
- at MINGW32_TRUE@am__append_126 = $(KPATHSEA_INCLUDES)
- at MINGW32_TRUE@am__append_127 = -lshlwapi $(KPATHSEA_LIBS)
- at MINGW32_TRUE@am__append_128 = -lshlwapi
- at TEX_SYNCTEX_TRUE@am__append_129 = -I$(srcdir)/synctexdir \
+ at XETEX_TRUE@am__append_119 = $(xetex_tests)
+ at OTANGLE_TRUE@am__append_120 = $(omegaware_programs)
+ at OTANGLE_TRUE@am__append_121 = $(OTANGLE_tests) $(OMFONTS_tests)
+ at ALEPH_TRUE@am__append_122 = aleph
+ at ALEPH_TRUE@am__append_123 = $(aleph_tests)
+ at SYNCTEX_TRUE@am__append_124 = synctex
+ at SYNCTEX_TRUE@am__append_125 = $(LTLIBSYNCTEX)
+ at SYNCTEX_TRUE@am__append_126 = $(LIBSYNCTEX)
+ at MINGW32_TRUE@am__append_127 = $(KPATHSEA_INCLUDES)
+ at MINGW32_TRUE@am__append_128 = -lshlwapi $(KPATHSEA_LIBS)
+ at MINGW32_TRUE@am__append_129 = -lshlwapi
+ at TEX_SYNCTEX_TRUE@am__append_130 = -I$(srcdir)/synctexdir \
 @TEX_SYNCTEX_TRUE@	$(ZLIB_INCLUDES) -D__SyncTeX__ \
 @TEX_SYNCTEX_TRUE@	-DSYNCTEX_ENGINE_H=\"synctex-tex.h\"
- at TEX_SYNCTEX_TRUE@am__append_130 = $(ZLIB_LIBS)
- at TEX_SYNCTEX_TRUE@am__append_131 = $(ZLIB_DEPEND)
- at TEX_SYNCTEX_TRUE@am__append_132 = \
+ at TEX_SYNCTEX_TRUE@am__append_131 = $(ZLIB_LIBS)
+ at TEX_SYNCTEX_TRUE@am__append_132 = $(ZLIB_DEPEND)
+ at TEX_SYNCTEX_TRUE@am__append_133 = \
 @TEX_SYNCTEX_TRUE@	synctexdir/synctex.c \
 @TEX_SYNCTEX_TRUE@	synctexdir/synctex.h \
 @TEX_SYNCTEX_TRUE@	synctexdir/synctex-common.h \
 @TEX_SYNCTEX_TRUE@	synctexdir/synctex-tex.h
 
- at ETEX_SYNCTEX_TRUE@am__append_133 = -I$(srcdir)/synctexdir \
+ at ETEX_SYNCTEX_TRUE@am__append_134 = -I$(srcdir)/synctexdir \
 @ETEX_SYNCTEX_TRUE@	$(ZLIB_INCLUDES) -D__SyncTeX__ \
 @ETEX_SYNCTEX_TRUE@	-DSYNCTEX_ENGINE_H=\"synctex-etex.h\"
- at ETEX_SYNCTEX_TRUE@am__append_134 = $(ZLIB_LIBS)
- at ETEX_SYNCTEX_TRUE@am__append_135 = $(ZLIB_DEPEND)
- at ETEX_SYNCTEX_TRUE@am__append_136 = \
+ at ETEX_SYNCTEX_TRUE@am__append_135 = $(ZLIB_LIBS)
+ at ETEX_SYNCTEX_TRUE@am__append_136 = $(ZLIB_DEPEND)
+ at ETEX_SYNCTEX_TRUE@am__append_137 = \
 @ETEX_SYNCTEX_TRUE@	synctexdir/synctex.c \
 @ETEX_SYNCTEX_TRUE@	synctexdir/synctex.h \
 @ETEX_SYNCTEX_TRUE@	synctexdir/synctex-common.h \
 @ETEX_SYNCTEX_TRUE@	synctexdir/synctex-etex.h
 
- at EUPTEX_SYNCTEX_TRUE@am__append_137 = -I$(srcdir)/synctexdir \
+ at EUPTEX_SYNCTEX_TRUE@am__append_138 = -I$(srcdir)/synctexdir \
 @EUPTEX_SYNCTEX_TRUE@	$(ZLIB_INCLUDES) -D__SyncTeX__ \
 @EUPTEX_SYNCTEX_TRUE@	-DSYNCTEX_ENGINE_H=\"synctex-euptex.h\"
- at EUPTEX_SYNCTEX_TRUE@am__append_138 = $(ZLIB_LIBS)
- at EUPTEX_SYNCTEX_TRUE@am__append_139 = $(ZLIB_DEPEND)
- at EUPTEX_SYNCTEX_TRUE@am__append_140 = \
+ at EUPTEX_SYNCTEX_TRUE@am__append_139 = $(ZLIB_LIBS)
+ at EUPTEX_SYNCTEX_TRUE@am__append_140 = $(ZLIB_DEPEND)
+ at EUPTEX_SYNCTEX_TRUE@am__append_141 = \
 @EUPTEX_SYNCTEX_TRUE@	synctexdir/synctex.c \
 @EUPTEX_SYNCTEX_TRUE@	synctexdir/synctex.h \
 @EUPTEX_SYNCTEX_TRUE@	synctexdir/synctex-common.h \
 @EUPTEX_SYNCTEX_TRUE@	synctexdir/synctex-euptex.h
 
- at PDFTEX_SYNCTEX_TRUE@am__append_141 = -I$(srcdir)/synctexdir \
+ at PDFTEX_SYNCTEX_TRUE@am__append_142 = -I$(srcdir)/synctexdir \
 @PDFTEX_SYNCTEX_TRUE@	-D__SyncTeX__ \
 @PDFTEX_SYNCTEX_TRUE@	-DSYNCTEX_ENGINE_H=\"synctex-pdftex.h\"
- at PDFTEX_SYNCTEX_TRUE@am__append_142 = \
+ at PDFTEX_SYNCTEX_TRUE@am__append_143 = \
 @PDFTEX_SYNCTEX_TRUE@	synctexdir/synctex.c \
 @PDFTEX_SYNCTEX_TRUE@	synctexdir/synctex.h \
 @PDFTEX_SYNCTEX_TRUE@	synctexdir/synctex-common.h \
 @PDFTEX_SYNCTEX_TRUE@	synctexdir/synctex-pdftex.h
 
- at XETEX_SYNCTEX_TRUE@am__append_143 = -I$(srcdir)/synctexdir \
+ at XETEX_SYNCTEX_TRUE@am__append_144 = -I$(srcdir)/synctexdir \
 @XETEX_SYNCTEX_TRUE@	-D__SyncTeX__ \
 @XETEX_SYNCTEX_TRUE@	-DSYNCTEX_ENGINE_H=\"synctex-xetex.h\"
- at XETEX_SYNCTEX_TRUE@am__append_144 = \
+ at XETEX_SYNCTEX_TRUE@am__append_145 = \
 @XETEX_SYNCTEX_TRUE@	synctexdir/synctex.c \
 @XETEX_SYNCTEX_TRUE@	synctexdir/synctex.h \
 @XETEX_SYNCTEX_TRUE@	synctexdir/synctex-common.h \
 @XETEX_SYNCTEX_TRUE@	synctexdir/synctex-xetex.h
 
- at SYNCTEX_TRUE@am__append_145 = $(synctex_tests)
+ at SYNCTEX_TRUE@am__append_146 = $(synctex_tests)
 subdir = .
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/web2c-disable.m4 \
@@ -3013,7 +3017,7 @@
 NMEDIT = @NMEDIT@
 OBJCXX = @OBJCXX@
 OBJCXXDEPMODE = @OBJCXXDEPMODE@
-OBJCXXFLAGS = @OBJCXXFLAGS@ $(am__append_113)
+OBJCXXFLAGS = @OBJCXXFLAGS@ $(am__append_114)
 OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
 OTANGLE = @OTANGLE@
@@ -3162,8 +3166,8 @@
 	libluaharfbuzz.a libluajitharfbuzz.a libxetex.a libsynctex.a \
 	libmd5.a
 EXTRA_LTLIBRARIES = libsynctex.la
-lib_LIBRARIES = $(am__append_125)
-lib_LTLIBRARIES = $(am__append_124)
+lib_LIBRARIES = $(am__append_126)
+lib_LTLIBRARIES = $(am__append_125)
 dist_man_MANS = synctexdir/man1/synctex.1 synctexdir/man5/synctex.5
 nodist_man_MANS = 
 TEST_EXTENSIONS = .pl .test
@@ -3712,25 +3716,24 @@
 CLEANFILES = $(EXTRA_PROGRAMS) $(EXTRA_LIBRARIES) $(EXTRA_LTLIBRARIES)
 TRIPTRAP_CLEAN = $(am__append_8) $(am__append_18) $(am__append_27) \
 	$(am__append_36) $(am__append_44) $(am__append_60) \
-	$(am__append_64) $(am__append_70) $(am__append_78)
+	$(am__append_64) $(am__append_71) $(am__append_79)
 TRIPTRAP = $(am__append_7) $(am__append_17) $(am__append_26) \
 	$(am__append_35) $(am__append_43) $(am__append_59) \
-	$(am__append_63) $(am__append_69) $(am__append_77)
+	$(am__append_63) $(am__append_70) $(am__append_78)
 bin_links = $(am__append_5) $(am__append_14) $(am__append_15) \
 	$(am__append_24) $(am__append_33) $(am__append_41) \
-	$(am__append_49) $(am__append_54) upbibtex$(EXEEXT):pbibtex \
-	updvitype$(EXEEXT):pdvitype uppltotf$(EXEEXT):ppltotf \
-	uptftopl$(EXEEXT):ptftopl $(am__append_73) $(am__append_74) \
-	$(am__append_75) $(am__append_89) $(am__append_94) \
-	$(am__append_99) $(am__append_104)
+	$(am__append_49) $(am__append_54) $(am__append_68) \
+	$(am__append_74) $(am__append_75) $(am__append_76) \
+	$(am__append_90) $(am__append_95) $(am__append_100) \
+	$(am__append_105)
 install_exe_links = $(am__append_12) $(am__append_22) $(am__append_31) \
 	$(am__append_39) $(am__append_47) $(am__append_52) \
-	$(am__append_87) $(am__append_92) $(am__append_97) \
-	$(am__append_102)
+	$(am__append_88) $(am__append_93) $(am__append_98) \
+	$(am__append_103)
 uninstall_exe_links = $(am__append_13) $(am__append_23) \
 	$(am__append_32) $(am__append_40) $(am__append_48) \
-	$(am__append_53) $(am__append_88) $(am__append_93) \
-	$(am__append_98) $(am__append_103)
+	$(am__append_53) $(am__append_89) $(am__append_94) \
+	$(am__append_99) $(am__append_104)
 NEVER_DIST = `find . $(NEVER_NAMES)` cwebdir/cweave.log \
 	cwebdir/cweave.trs cwebdir/ctwill.log cwebdir/ctwill.trs \
 	cwebdir/refsort.log cwebdir/refsort.trs cwebdir/twinx.log \
@@ -3907,18 +3910,18 @@
 initex_CPPFLAGS = -DEXEPROG=\"tex.exe\"
 nodist_initex_SOURCES = callexe.c
 initex_LDADD = 
-tex_CPPFLAGS = $(AM_CPPFLAGS) $(am__append_129)
+tex_CPPFLAGS = $(AM_CPPFLAGS) $(am__append_130)
 
 # With --enable-ipc, TeX may need to link with -lsocket.
-tex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_130)
+tex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_131)
 
 # TeX C sources
 tex_c_h = texini.c tex0.c texcoerce.h texd.h
 nodist_tex_SOURCES = $(tex_c_h) tex-pool.c
-dist_tex_SOURCES = texextra.c $(am__append_132)
+dist_tex_SOURCES = texextra.c $(am__append_133)
 
 # We must create texd.h before building the tex_OBJECTS.
-tex_prereq = texd.h $(am__append_131)
+tex_prereq = texd.h $(am__append_132)
 tex_ch_srcs = \
 	tex.web \
 	tex.ch \
@@ -4418,10 +4421,10 @@
 	mplibdir/pngout.w mplibdir/mpmath.w mplibdir/mpmathbinary.w \
 	mplibdir/mpmathinterval.w mplibdir/mpmathdecimal.w \
 	mplibdir/mpmathdouble.w mplibdir/mpstrings.w mplibdir/tfmin.w
-etex_CPPFLAGS = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) $(am__append_133)
+etex_CPPFLAGS = $(AM_CPPFLAGS) $(ZLIB_INCLUDES) $(am__append_134)
 
 # With --enable-ipc, e-TeX may need to link with -lsocket.
-etex_LDADD = $(LDADD) $(ZLIB_LIBS) $(ipc_socketlibs) $(am__append_134)
+etex_LDADD = $(LDADD) $(ZLIB_LIBS) $(ipc_socketlibs) $(am__append_135)
 etex_DEPENDENCIES = $(ZLIB_DEPEND)
 
 # e-TeX C sources
@@ -4428,11 +4431,11 @@
 etex_c_h = etexini.c etex0.c etexcoerce.h etexd.h
 nodist_etex_SOURCES = $(etex_c_h) etex-pool.c
 dist_etex_SOURCES = etexdir/etexextra.c etexdir/etexextra.h \
-	etexdir/etex_version.h $(am__append_136)
+	etexdir/etex_version.h $(am__append_137)
 
 # We must create etexd.h and etexdir/etex_version.h before building the
 # etex_OBJECTS.
-etex_prereq = etexd.h etexdir/etex_version.h $(am__append_135)
+etex_prereq = etexd.h etexdir/etex_version.h $(am__append_136)
 etex_web_srcs = \
 	tex.web \
 	etexdir/etex.ch
@@ -4578,11 +4581,11 @@
 	uptexdir/newjfm.test uptexdir/uparse.test uptexdir/gkhuge.test \
 	uptexdir/gk256.test
 euptex_CPPFLAGS = $(PTEXENC_INCLUDES) $(AM_CPPFLAGS) \
-	-I$(srcdir)/libmd5 $(ZLIB_INCLUDES) $(am__append_137)
+	-I$(srcdir)/libmd5 $(ZLIB_INCLUDES) $(am__append_138)
 
 # With --enable-ipc, e-upTeX may need to link with -lsocket.
 euptex_LDADD = libukanji.a $(pproglib) $(PTEXENC_LIBS) $(LDADD) \
-	$(ipc_socketlibs) libmd5.a $(ZLIB_LIBS) $(am__append_138)
+	$(ipc_socketlibs) libmd5.a $(ZLIB_LIBS) $(am__append_139)
 euptex_DEPENDENCIES = libukanji.a $(pproglib) $(PTEXENC_DEPEND) $(default_dependencies) libmd5.a $(ZLIB_DEPEND)
 
 # e-upTeX C sources
@@ -4589,12 +4592,12 @@
 euptex_c_h = euptexini.c euptex0.c euptexcoerce.h euptexd.h
 nodist_euptex_SOURCES = $(euptex_c_h) euptex-pool.c
 dist_euptex_SOURCES = euptexdir/euptexextra.c euptexdir/euptexextra.h \
-	$(am__append_140)
+	$(am__append_141)
 
 # We must create euptexd.h and [eu]ptexdir/[eu]ptex_version.h before building the euptex_OBJECTS.
 euptex_prereq = euptexd.h etexdir/etex_version.h \
 	uptexdir/ptex_version.h euptexdir/eptex_version.h \
-	uptexdir/uptex_version.h $(am__append_139)
+	uptexdir/uptex_version.h $(am__append_140)
 euptex_web_srcs = \
 	tex.web \
 	etexdir/etex.ch \
@@ -4718,7 +4721,7 @@
 	pdftexdir/writejbig2.c pdftexdir/writejpg.c \
 	pdftexdir/writepng.c pdftexdir/writet1.c pdftexdir/writet3.c \
 	pdftexdir/writettf.c pdftexdir/writettf.h pdftexdir/writezip.c \
-	$(am__append_82)
+	$(am__append_83)
 @MINGW32_TRUE at REGEX_INCLUDES = -I$(srcdir)/pdftexdir/regex
 EXTRA_libpdftex_a_SOURCES = pdftexdir/macnames.c \
 	pdftexdir/regex/regcomp.c pdftexdir/regex/regex_internal.c \
@@ -4734,7 +4737,7 @@
 # Force Automake to use CXXLD for linking
 nodist_EXTRA_pdftex_SOURCES = dummy.cxx
 pdf_tangle = WEBINPUTS=.:$(srcdir)/pdftexdir AM_V_P=$(AM_V_P) $(SHELL) ./tangle-sh $@ $(TANGLE)
-pdftex_CPPFLAGS = $(pdftex_cppflags) $(am__append_141)
+pdftex_CPPFLAGS = $(pdftex_cppflags) $(am__append_142)
 pdftex_CXXFLAGS = $(WARNING_CXXFLAGS)
 
 # With --enable-ipc, pdfTeX may need to link with -lsocket.
@@ -4747,7 +4750,7 @@
 nodist_pdftex_SOURCES = $(pdftex_c_h) pdftex-pool.c
 dist_pdftex_SOURCES = pdftexdir/pdftexextra.c pdftexdir/pdftexextra.h \
 	pdftexdir/pdftex_version.h pdftexdir/etex_version.h \
-	$(am__append_142)
+	$(am__append_143)
 pdftex_ch_srcs = \
 	pdftexdir/pdftex.web \
 	pdftexdir/tex.ch0 \
@@ -5455,18 +5458,18 @@
 xetex_cppflags = $(AM_CPPFLAGS) -I$(srcdir)/xetexdir $(ICU_INCLUDES) \
 	$(FREETYPE2_INCLUDES) $(TECKIT_INCLUDES) $(HARFBUZZ_INCLUDES) \
 	$(GRAPHITE2_INCLUDES) $(LIBPNG_INCLUDES) $(ZLIB_INCLUDES) \
-	$(PPLIB_INCLUDES) -I$(srcdir)/libmd5 $(am__append_112) \
-	$(am__append_114)
+	$(PPLIB_INCLUDES) -I$(srcdir)/libmd5 $(am__append_113) \
+	$(am__append_115)
 xetex_ldadd = $(libxetex) $(HARFBUZZ_LIBS) $(GRAPHITE2_LIBS) \
 	$(ICU_LIBS) $(ICU_LIBS_EXTRA) $(TECKIT_LIBS) $(LIBPNG_LIBS) \
 	$(FREETYPE2_LIBS) $(PPLIB_LIBS) $(ZLIB_LIBS) libmd5.a \
-	$(am__append_115)
+	$(am__append_116)
 xetex_dependencies = $(proglib) $(KPATHSEA_DEPEND) $(ICU_DEPEND) \
 	$(TECKIT_DEPEND) $(HARFBUZZ_DEPEND) $(GRAPHITE2_DEPEND) \
 	$(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_143)
+xetex_CPPFLAGS = $(xetex_cppflags) $(am__append_144)
 xetex_CFLAGS = $(WARNING_CFLAGS)
 xetex_CXXFLAGS = # $(WARNING_CXXFLAGS)
 xetex_LDADD = $(xetex_ldadd) $(LDADD) $(ipc_socketlibs)
@@ -5475,7 +5478,7 @@
 nodist_xetex_SOURCES = $(xetex_c_h) xetex-pool.c
 dist_xetex_SOURCES = xetexdir/xetexextra.c xetexdir/xetexextra.h \
 	xetexdir/etex_version.h xetexdir/xetex_version.h \
-	$(am__append_144)
+	$(am__append_145)
 xetex_ch_srcs = \
 	xetexdir/xetex.web \
 	xetexdir/tex.ch0 \
@@ -5509,7 +5512,7 @@
 	xetexdir/image/jpegimage.h xetexdir/image/mfileio.c \
 	xetexdir/image/mfileio.h xetexdir/image/numbers.c \
 	xetexdir/image/numbers.h xetexdir/image/pngimage.c \
-	xetexdir/image/pngimage.h $(am__append_116) $(am__append_117)
+	xetexdir/image/pngimage.h $(am__append_117) $(am__append_118)
 
 # We must create xetexd.h etc. before building the libxetex_a_OBJECTS.
 libxetex_prereq = xetexd.h $(xetex_dependencies)
@@ -5618,13 +5621,13 @@
 synctex_SOURCES = \
 	synctexdir/synctex_main.c
 
-synctex_CPPFLAGS = -I$(srcdir)/synctexdir $(am__append_126)
-synctex_LDADD = $(libsynctex) $(ZLIB_LIBS) $(am__append_127)
+synctex_CPPFLAGS = -I$(srcdir)/synctexdir $(am__append_127)
+synctex_LDADD = $(libsynctex) $(ZLIB_LIBS) $(am__append_128)
 libsynctex = $(LTLIBSYNCTEX) $(LIBSYNCTEX)
 libsynctex_la_CPPFLAGS = -I$(srcdir)/synctexdir $(ZLIB_INCLUDES) -DSYNCTEX_USE_LOCAL_HEADER
 libsynctex_a_CPPFLAGS = $(libsynctex_la_CPPFLAGS)
 libsynctex_la_LDFLAGS = -rpath @libdir@ -bindir @bindir@ -no-undefined -version-info $(SYNCTEX_LT_VERSINFO)
-libsynctex_la_LIBADD = $(ZLIB_LIBS) $(am__append_128)
+libsynctex_la_LIBADD = $(ZLIB_LIBS) $(am__append_129)
 libsynctex_la_SOURCES = \
 	synctexdir/synctex_parser.c \
 	synctexdir/synctex_parser_local.h \

Modified: branches/stable/source/src/texk/web2c/configure
===================================================================
--- branches/stable/source/src/texk/web2c/configure	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/configure	2025-01-25 17:53:19 UTC (rev 947)
@@ -672,6 +672,10 @@
 TANGLE
 TANGLEBOOT
 KPATHSEA_PATHS_H
+XETEX_MACOSX_FALSE
+XETEX_MACOSX_TRUE
+FONTCONFIG_LIBS
+FONTCONFIG_INCLUDES
 ICU_RULE
 ICU_DEPEND
 ICU_LIBS
@@ -758,6 +762,7 @@
 KPATHSEA_DEPEND
 KPATHSEA_LIBS
 KPATHSEA_INCLUDES
+PKG_CONFIG
 LEXLIB
 LEX_OUTPUT_ROOT
 LEX
@@ -842,11 +847,6 @@
 TEX_SYNCTEX_TRUE
 TEX_FALSE
 TEX_TRUE
-XETEX_MACOSX_FALSE
-XETEX_MACOSX_TRUE
-FONTCONFIG_LIBS
-FONTCONFIG_INCLUDES
-PKG_CONFIG
 ipc_socketlibs
 lua_socketlibs
 USE_DLOPEN_FALSE
@@ -1073,8 +1073,6 @@
 enable_web_progs
 enable_synctex
 enable_missing
-with_fontconfig_includes
-with_fontconfig_libdir
 with_x
 with_system_kpathsea
 with_system_ptexenc
@@ -1103,6 +1101,8 @@
 with_system_graphite2
 with_system_harfbuzz
 with_system_icu
+with_fontconfig_includes
+with_fontconfig_libdir
 enable_year2038
 '
       ac_precious_vars='build_alias
@@ -1838,10 +1838,6 @@
   --with-editor=CMD       invoke CMD from the `e' option [vi +%d '%s'] or
                           [texworks --position=%d "%s"]
   --with-mf-x-toolkit     use X toolkit for METAFONT
-  --with-fontconfig-includes=DIR
-                          fontconfig headers installed in DIR
-  --with-fontconfig-libdir=DIR
-                          fontconfig library installed in DIR
   --with-x                use the X Window System
   --with-system-kpathsea  use installed kpathsea headers and library (requires
                           pkg-config)
@@ -1887,6 +1883,10 @@
                           pkg-config)
   --with-system-icu       use installed ICU headers and libraries (requires
                           pkg-config or icu-config)
+  --with-fontconfig-includes=DIR
+                          fontconfig headers installed in DIR
+  --with-fontconfig-libdir=DIR
+                          fontconfig library installed in DIR
 
 Some influential environment variables:
   CC          C compiler command
@@ -24331,241 +24331,6 @@
 
 
 
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Mac OS X ApplicationServices framework" >&5
-printf %s "checking for Mac OS X ApplicationServices framework... " >&6; }
-if test ${kpse_cv_have_ApplicationServices+y}
-then :
-  printf %s "(cached) " >&6
-else case e in #(
-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ApplicationServices/ApplicationServices.h>
-int
-main (void)
-{
-CTFontRef font
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"
-then :
-  kpse_cv_have_ApplicationServices=yes
-else case e in #(
-  e) kpse_cv_have_ApplicationServices=no ;;
-esac
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;
-esac
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $kpse_cv_have_ApplicationServices" >&5
-printf "%s\n" "$kpse_cv_have_ApplicationServices" >&6; }
-if test "x$kpse_cv_have_ApplicationServices" = xyes
-then :
-
-printf "%s\n" "#define HAVE_APPLICATIONSERVICES 1" >>confdefs.h
-
-fi
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
-set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-printf %s "checking for $ac_word... " >&6; }
-if test ${ac_cv_prog_PKG_CONFIG+y}
-then :
-  printf %s "(cached) " >&6
-else case e in #(
-  e) if test -n "$PKG_CONFIG"; then
-  ac_cv_prog_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  case $as_dir in #(((
-    '') as_dir=./ ;;
-    */) ;;
-    *) as_dir=$as_dir/ ;;
-  esac
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
-    ac_cv_prog_PKG_CONFIG="${ac_tool_prefix}pkg-config"
-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi ;;
-esac
-fi
-PKG_CONFIG=$ac_cv_prog_PKG_CONFIG
-if test -n "$PKG_CONFIG"; then
-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
-printf "%s\n" "$PKG_CONFIG" >&6; }
-else
-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
-printf "%s\n" "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_PKG_CONFIG"; then
-  ac_ct_PKG_CONFIG=$PKG_CONFIG
-  # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-printf %s "checking for $ac_word... " >&6; }
-if test ${ac_cv_prog_ac_ct_PKG_CONFIG+y}
-then :
-  printf %s "(cached) " >&6
-else case e in #(
-  e) if test -n "$ac_ct_PKG_CONFIG"; then
-  ac_cv_prog_ac_ct_PKG_CONFIG="$ac_ct_PKG_CONFIG" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  case $as_dir in #(((
-    '') as_dir=./ ;;
-    */) ;;
-    *) as_dir=$as_dir/ ;;
-  esac
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
-    ac_cv_prog_ac_ct_PKG_CONFIG="pkg-config"
-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi ;;
-esac
-fi
-ac_ct_PKG_CONFIG=$ac_cv_prog_ac_ct_PKG_CONFIG
-if test -n "$ac_ct_PKG_CONFIG"; then
-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_PKG_CONFIG" >&5
-printf "%s\n" "$ac_ct_PKG_CONFIG" >&6; }
-else
-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
-printf "%s\n" "no" >&6; }
-fi
-
-  if test "x$ac_ct_PKG_CONFIG" = x; then
-    PKG_CONFIG="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    PKG_CONFIG=$ac_ct_PKG_CONFIG
-  fi
-else
-  PKG_CONFIG="$ac_cv_prog_PKG_CONFIG"
-fi
-
-
-# Check whether --with-fontconfig-includes was given.
-if test ${with_fontconfig_includes+y}
-then :
-  withval=$with_fontconfig_includes;
-fi
-
-# Check whether --with-fontconfig-libdir was given.
-if test ${with_fontconfig_libdir+y}
-then :
-  withval=$with_fontconfig_libdir;
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for installed fontconfig headers and library" >&5
-printf %s "checking for installed fontconfig headers and library... " >&6; }
-if test ${kpse_cv_have_fontconfig+y}
-then :
-  printf %s "(cached) " >&6
-else case e in #(
-  e) kpse_save_CPPFLAGS=$CPPFLAGS
-kpse_save_LIBS=$LIBS
-kpse_cv_fontconfig_includes=
-kpse_cv_fontconfig_libs='-lfontconfig'
-if test "x$with_fontconfig_includes:$with_fontconfig_libdir" != x:; then
-  if test "x$with_fontconfig_includes" != x; then
-    kpse_cv_fontconfig_includes="-I$with_fontconfig_includes"
-  fi
-  if test "x$with_fontconfig_libdir" != x; then
-    kpse_cv_fontconfig_libs="-L$with_fontconfig_libdir $kpse_cv_fontconfig_libs"
-  fi
-elif $PKG_CONFIG fontconfig; then
-  kpse_cv_fontconfig_includes=`$PKG_CONFIG fontconfig --cflags`
-  kpse_cv_fontconfig_libs=`$PKG_CONFIG fontconfig --libs`
-fi
-CPPFLAGS="$kpse_cv_fontconfig_includes $CPPFLAGS"
-LIBS="$kpse_cv_fontconfig_libs $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <fontconfig/fontconfig.h>
-int
-main (void)
-{
-FcObjectSet *os; FcInit();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"
-then :
-  kpse_cv_have_fontconfig=yes
-else case e in #(
-  e) kpse_cv_have_fontconfig=no ;;
-esac
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.beam \
-    conftest$ac_exeext conftest.$ac_ext
-CPPFLAGS=$kpse_save_CPPFLAGS
-LIBS=$kpse_save_LIBS ;;
-esac
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $kpse_cv_have_fontconfig" >&5
-printf "%s\n" "$kpse_cv_have_fontconfig" >&6; }
-if test "x$kpse_cv_have_fontconfig" = xyes; then
-  FONTCONFIG_INCLUDES=$kpse_cv_fontconfig_includes
-  FONTCONFIG_LIBS=$kpse_cv_fontconfig_libs
-
-printf "%s\n" "#define HAVE_LIBFONTCONFIG 1" >>confdefs.h
-
-fi
-
-
-
-if test "x$kpse_cv_have_ApplicationServices:$kpse_cv_have_fontconfig" = xno:no
-then :
-  if test "x$enable_xetex" = xyes
-then :
-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Sorry, neither ApplicationServices framework nor fontconfig library: disabling xetex" >&5
-printf "%s\n" "$as_me: WARNING: Sorry, neither ApplicationServices framework nor fontconfig library: disabling xetex" >&2;}
-if test "x$enable_missing" = xno
-then :
-  as_fn_error $? "terminating." "$LINENO" 5
-fi
-
-                       enable_xetex=no
-fi
-
-fi
- if test "x$kpse_cv_have_ApplicationServices" = xyes; then
-  XETEX_MACOSX_TRUE=
-  XETEX_MACOSX_FALSE='#'
-else
-  XETEX_MACOSX_TRUE='#'
-  XETEX_MACOSX_FALSE=
-fi
-
-
  if test "x$enable_tex" = xyes; then
   TEX_TRUE=
   TEX_FALSE='#'
@@ -25931,7 +25696,7 @@
 
 printf "%s\n" "#define X11WIN 1" >>confdefs.h
 
-fi
+fi # have X
  if test "x$with_mf_x_toolkit" = xyes; then
   MFXT_TRUE=
   MFXT_FALSE='#'
@@ -27250,6 +27015,8 @@
 
 
 
+# kpse_kpathsea_flags needs to pull in pkg-config, in case of a system
+# kpathsea being used. So nothing above should use pkg-config.
 kpse_save_CPPFLAGS=$CPPFLAGS
 kpse_save_LIBS=$LIBS
 
@@ -28839,6 +28606,110 @@
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 ac_link="./libtool --mode=link --tag=CC $ac_link"
 
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_PKG_CONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else case e in #(
+  e) if test -n "$PKG_CONFIG"; then
+  ac_cv_prog_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_PKG_CONFIG="${ac_tool_prefix}pkg-config"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi ;;
+esac
+fi
+PKG_CONFIG=$ac_cv_prog_PKG_CONFIG
+if test -n "$PKG_CONFIG"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+printf "%s\n" "$PKG_CONFIG" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_PKG_CONFIG"; then
+  ac_ct_PKG_CONFIG=$PKG_CONFIG
+  # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_PKG_CONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else case e in #(
+  e) if test -n "$ac_ct_PKG_CONFIG"; then
+  ac_cv_prog_ac_ct_PKG_CONFIG="$ac_ct_PKG_CONFIG" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_PKG_CONFIG="pkg-config"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi ;;
+esac
+fi
+ac_ct_PKG_CONFIG=$ac_cv_prog_ac_ct_PKG_CONFIG
+if test -n "$ac_ct_PKG_CONFIG"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_PKG_CONFIG" >&5
+printf "%s\n" "$ac_ct_PKG_CONFIG" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_ct_PKG_CONFIG" = x; then
+    PKG_CONFIG="false"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    PKG_CONFIG=$ac_ct_PKG_CONFIG
+  fi
+else
+  PKG_CONFIG="$ac_cv_prog_PKG_CONFIG"
+fi
+
 ##tldbg _KPSE_LIB_FLAGS: Setup kpathsea (-lkpathsea) flags.
 echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=kpathsea, libname=kpathsea, options=lt, tlincl=-IBLD/texk -ISRC/texk, tllib=BLD/texk/kpathsea/libkpathsea.la, tlextra=, rebuildsrcdeps=${top_srcdir}/../kpathsea/*.[ch], rebuildblddeps=${top_builddir}/../kpathsea/paths.h.' >&5
 ##tldbg _KPSE_LIB_FLAGS_TL: kpathsea (kpathsea) lt.
@@ -28907,6 +28778,7 @@
   KPATHSEA_INCLUDES="$KPATHSEA_INCLUDES -DNO_DEBUG"
 fi
 
+
 ##tldbg _KPSE_LIB_FLAGS: Setup ptexenc (-lptexenc) flags.
 echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=ptexenc, libname=ptexenc, options=lt, tlincl=-IBLD/texk/ptexenc -ISRC/texk/ptexenc, tllib=BLD/texk/ptexenc/libptexenc.la, tlextra=, rebuildsrcdeps=${top_srcdir}/../ptexenc/*.c ${top_srcdir}/../ptexenc/ptexenc/*.h, rebuildblddeps=.' >&5
 ##tldbg _KPSE_LIB_FLAGS_TL: ptexenc (ptexenc) lt.
@@ -29710,9 +29582,10 @@
 fi
 
 
-# LuaTeX and XeTeX need harfbuzz.
+# XeTeX and lua[jit]hbtex need harfbuzz, but not regular luatex[53].
 if test "x$enable_xetex" = xyes \
-   || test "x$enable_luatex" = xyes || test "x$enable_luatex53" = xyes; then
+   || test "x$enable_luahbtex" = xyes \
+   || test "x$enable_luajithbtex" = xyes; then
   ##tldbg _KPSE_LIB_FLAGS: Setup graphite2 (-lgraphite2) flags.
 echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=graphite2, libname=graphite2, options=, tlincl=-IBLD/libs/graphite2/include -DGRAPHITE2_STATIC, tllib=BLD/libs/graphite2/libgraphite2.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/graphite2/include/graphite2/Font.h.' >&5
 ##tldbg _KPSE_LIB_FLAGS_TL: graphite2 (graphite2) .
@@ -30042,8 +29915,143 @@
 	cd ${top_builddir}/../../libs/graphite2 && $(MAKE) $(AM_MAKEFLAGS) rebuild'
 fi
 
-fi # end xetex for icu/graphite
 
+  # XeTeX also needs fontconfig or the Mac ApplicationServices.
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Mac OS X ApplicationServices framework" >&5
+printf %s "checking for Mac OS X ApplicationServices framework... " >&6; }
+if test ${kpse_cv_have_ApplicationServices+y}
+then :
+  printf %s "(cached) " >&6
+else case e in #(
+  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <ApplicationServices/ApplicationServices.h>
+int
+main (void)
+{
+CTFontRef font
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+  kpse_cv_have_ApplicationServices=yes
+else case e in #(
+  e) kpse_cv_have_ApplicationServices=no ;;
+esac
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $kpse_cv_have_ApplicationServices" >&5
+printf "%s\n" "$kpse_cv_have_ApplicationServices" >&6; }
+if test "x$kpse_cv_have_ApplicationServices" = xyes
+then :
+
+printf "%s\n" "#define HAVE_APPLICATIONSERVICES 1" >>confdefs.h
+
+fi
+
+
+# Check whether --with-fontconfig-includes was given.
+if test ${with_fontconfig_includes+y}
+then :
+  withval=$with_fontconfig_includes;
+fi
+
+# Check whether --with-fontconfig-libdir was given.
+if test ${with_fontconfig_libdir+y}
+then :
+  withval=$with_fontconfig_libdir;
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for installed fontconfig headers and library" >&5
+printf %s "checking for installed fontconfig headers and library... " >&6; }
+if test ${kpse_cv_have_fontconfig+y}
+then :
+  printf %s "(cached) " >&6
+else case e in #(
+  e) kpse_save_CPPFLAGS=$CPPFLAGS
+kpse_save_LIBS=$LIBS
+kpse_cv_fontconfig_includes=
+kpse_cv_fontconfig_libs='-lfontconfig'
+if test "x$with_fontconfig_includes:$with_fontconfig_libdir" != x:; then
+  if test "x$with_fontconfig_includes" != x; then
+    kpse_cv_fontconfig_includes="-I$with_fontconfig_includes"
+  fi
+  if test "x$with_fontconfig_libdir" != x; then
+    kpse_cv_fontconfig_libs="-L$with_fontconfig_libdir $kpse_cv_fontconfig_libs"
+  fi
+elif $PKG_CONFIG fontconfig; then
+  kpse_cv_fontconfig_includes=`$PKG_CONFIG fontconfig --cflags`
+  kpse_cv_fontconfig_libs=`$PKG_CONFIG fontconfig --libs`
+fi
+CPPFLAGS="$kpse_cv_fontconfig_includes $CPPFLAGS"
+LIBS="$kpse_cv_fontconfig_libs $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <fontconfig/fontconfig.h>
+int
+main (void)
+{
+FcObjectSet *os; FcInit();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+  kpse_cv_have_fontconfig=yes
+else case e in #(
+  e) kpse_cv_have_fontconfig=no ;;
+esac
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
+    conftest$ac_exeext conftest.$ac_ext
+CPPFLAGS=$kpse_save_CPPFLAGS
+LIBS=$kpse_save_LIBS ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $kpse_cv_have_fontconfig" >&5
+printf "%s\n" "$kpse_cv_have_fontconfig" >&6; }
+if test "x$kpse_cv_have_fontconfig" = xyes; then
+  FONTCONFIG_INCLUDES=$kpse_cv_fontconfig_includes
+  FONTCONFIG_LIBS=$kpse_cv_fontconfig_libs
+
+printf "%s\n" "#define HAVE_LIBFONTCONFIG 1" >>confdefs.h
+
+fi
+
+
+
+  if test "x$kpse_cv_have_ApplicationServices:$kpse_cv_have_fontconfig" = xno:no
+then :
+  if test "x$enable_xetex" = xyes
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Sorry, neither ApplicationServices framework nor fontconfig library: disabling xetex" >&5
+printf "%s\n" "$as_me: WARNING: Sorry, neither ApplicationServices framework nor fontconfig library: disabling xetex" >&2;}
+if test "x$enable_missing" = xno
+then :
+  as_fn_error $? "terminating." "$LINENO" 5
+fi
+
+                       enable_xetex=no
+fi
+
+fi
+
+fi # end xetex for icu/graphite and fontconfig/mac font lookups.
+
+# Are we building XeTeX on Mac? Automake conditional required regardless.
+ if test "x$kpse_cv_have_ApplicationServices" = xyes; then
+  XETEX_MACOSX_TRUE=
+  XETEX_MACOSX_FALSE='#'
+else
+  XETEX_MACOSX_TRUE='#'
+  XETEX_MACOSX_FALSE=
+fi
+
+
 # Check size of off_t (using <kpathsea/config.h>)
 eval CPPFLAGS=\"$KPATHSEA_INCLUDES \$CPPFLAGS\"
 eval LIBS=\"$KPATHSEA_LIBS \$LIBS\"
@@ -30795,10 +30803,6 @@
   as_fn_error $? "conditional \"USE_DLOPEN\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
-if test -z "${XETEX_MACOSX_TRUE}" && test -z "${XETEX_MACOSX_FALSE}"; then
-  as_fn_error $? "conditional \"XETEX_MACOSX\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
 if test -z "${TEX_TRUE}" && test -z "${TEX_FALSE}"; then
   as_fn_error $? "conditional \"TEX\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -30940,6 +30944,10 @@
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 
+if test -z "${XETEX_MACOSX_TRUE}" && test -z "${XETEX_MACOSX_FALSE}"; then
+  as_fn_error $? "conditional \"XETEX_MACOSX\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${SYNCTEX_TRUE}" && test -z "${SYNCTEX_FALSE}"; then
   as_fn_error $? "conditional \"SYNCTEX\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5

Modified: branches/stable/source/src/texk/web2c/configure.ac
===================================================================
--- branches/stable/source/src/texk/web2c/configure.ac	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/configure.ac	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,7 +1,7 @@
-dnl $Id: configure.ac 71105 2024-04-28 16:42:00Z karl $
+dnl $Id: configure.ac 73585 2025-01-24 23:46:57Z karl $
 dnl Process this file with Autoconf to produce a configure script for Web2c.
 dnl
-dnl   Copyright 2015-2024 Karl Berry <tex-live at tug.org>
+dnl   Copyright 2015-2025 Karl Berry <tex-live at tug.org>
 dnl   Copyright 2009-2015 Peter Breitenlohner <tex-live at tug.org>
 dnl
 dnl   This file is free software; the copyright holder
@@ -156,12 +156,6 @@
 AC_SUBST([lua_socketlibs])
 AC_SUBST([ipc_socketlibs])
 
-KPSE_CHECK_FRAMEWORK([ApplicationServices], [CTFontRef font])
-KPSE_FONTCONFIG_FLAGS
-AS_IF([test "x$kpse_cv_have_ApplicationServices:$kpse_cv_have_fontconfig" = xno:no],
-      [WEB2C_DISABLE([xetex], [neither ApplicationServices framework nor fontconfig library])])
-AM_CONDITIONAL([XETEX_MACOSX], [test "x$kpse_cv_have_ApplicationServices" = xyes])
-
 dnl Generate *TEX and ALEPH conditionals.
 m4_foreach([Kpse_Prog], [kpse_tex_progs],
            [m4_ifset([Kpse_Prog],
@@ -207,7 +201,7 @@
   fi
   test "x$with_mf_x_toolkit" = xyes && x_tool_libs="-lXt"
   AC_DEFINE([X11WIN], 1, [Define to include X11 window in Metafont.])
-fi
+fi # have X
 AM_CONDITIONAL([MFXT], [test "x$with_mf_x_toolkit" = xyes])
 AC_SUBST([x_ext_lib])
 AC_SUBST([x_tool_libs])
@@ -260,7 +254,10 @@
 dnl FIXME: obsolete
 AC_TYPE_SIGNAL
 
+# kpse_kpathsea_flags needs to pull in pkg-config, in case of a system
+# kpathsea being used. So nothing above should use pkg-config.
 KPSE_KPATHSEA_FLAGS
+
 KPSE_PTEXENC_FLAGS
 KPSE_PPLIB_FLAGS
 KPSE_ZLIB_FLAGS
@@ -279,9 +276,10 @@
 KPSE_ZZIPLIB_FLAGS
 KPSE_TECKIT_FLAGS
 
-# LuaTeX and XeTeX need harfbuzz.
+# XeTeX and lua[jit]hbtex need harfbuzz, but not regular luatex[53].
 if test "x$enable_xetex" = xyes \
-   || test "x$enable_luatex" = xyes || test "x$enable_luatex53" = xyes; then
+   || test "x$enable_luahbtex" = xyes \
+   || test "x$enable_luajithbtex" = xyes; then
   KPSE_HARFBUZZ_FLAGS
 fi # end xetex/luatex for harfbuzz
 
@@ -289,8 +287,20 @@
 if test "x$enable_xetex" = xyes; then
   KPSE_ICU_FLAGS
   KPSE_GRAPHITE2_FLAGS
-fi # end xetex for icu/graphite
 
+  # XeTeX also needs fontconfig or the Mac ApplicationServices.
+  KPSE_CHECK_FRAMEWORK([ApplicationServices], [CTFontRef font])
+  KPSE_FONTCONFIG_FLAGS
+  AS_IF([test "x$kpse_cv_have_ApplicationServices:$kpse_cv_have_fontconfig" = xno:no],
+        [WEB2C_DISABLE([xetex],
+              [neither ApplicationServices framework nor fontconfig library])])
+
+fi # end xetex for icu/graphite and fontconfig/mac font lookups.
+
+# Are we building XeTeX on Mac? Automake conditional required regardless.
+AM_CONDITIONAL([XETEX_MACOSX],
+               [test "x$kpse_cv_have_ApplicationServices" = xyes])
+
 # Check size of off_t (using <kpathsea/config.h>)
 KPSE_ADD_FLAGS([kpathsea])
 AC_CHECK_SIZEOF([off_t], , AC_INCLUDES_DEFAULT

Modified: branches/stable/source/src/texk/web2c/doc/luatex/luatex-backend.tex
===================================================================
--- branches/stable/source/src/texk/web2c/doc/luatex/luatex-backend.tex	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/doc/luatex/luatex-backend.tex	2025-01-25 17:53:19 UTC (rev 947)
@@ -705,7 +705,7 @@
 is \type {MediaBox}.
 
 \starttyping
-pages = pdfe.getbox(<pdfe dictionary>,boxname)
+box_dimens <array> = pdfe.getbox(<pdfe dictionary>,boxname)
 \stoptyping
 
 \stopsubsection

Modified: branches/stable/source/src/texk/web2c/doc/luatex/luatex-tex.tex
===================================================================
--- branches/stable/source/src/texk/web2c/doc/luatex/luatex-tex.tex	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/doc/luatex/luatex-tex.tex	2025-01-25 17:53:19 UTC (rev 947)
@@ -2932,7 +2932,7 @@
 otherwise  returns \type{0} and an error message. 
 
 \startfunctioncall
-<string> res, cmd = kpse.check_permission(filename)
+<string> res, cmd = kpse.check_permission(<string> filename)
 \stopfunctioncall
 
 \stopsubsection

Modified: branches/stable/source/src/texk/web2c/doc/luatex/luatex.pdf
===================================================================
(Binary files differ)

Modified: branches/stable/source/src/texk/web2c/doc/luatex/luatex.tex
===================================================================
--- branches/stable/source/src/texk/web2c/doc/luatex/luatex.tex	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/doc/luatex/luatex.tex	2025-01-25 17:53:19 UTC (rev 947)
@@ -73,7 +73,7 @@
 \startdocument
   [manual=Lua\TeX,
    status=stable,
-   version=1.18]
+   version=1.20]
 
 \startnotmode[*export]
     \component luatex-titlepage

Modified: branches/stable/source/src/texk/web2c/pdftexdir/ChangeLog
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/ChangeLog	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/pdftexdir/ChangeLog	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,6 +1,31 @@
-2025-01-22  Thanh Han The  <hanthethanh at gmail.com>
+2025-01-25  Thanh Han The  <hanthethanh at gmail.com>
 
+	* pdftex.web (print_ignored_err): new @d.
+	(ignore_primitive_error_code, ignore_primitive_error): new primitive
+	\ignoreprimitiveerror.
+	(is_bit_set): new fn.
+	(finite_shrink): if it's set, make "Infinite glue shrinkage
+	found in box being split" error into warning.
+	(Generate all \eTeX): define it.
+	(Cases for |print_param|): print it.
+	Request from Frank Mittelbach, 22 Jul 2024 22:37:26 (private mail).
+
+2025-01-23  Thanh Han The  <hanthethanh at gmail.com>
+
+	* pdftex.web (Glob...): remove pdf_last_f; remove uses.
+	(pdf_set_f): test and set pdf_f.
+	(pdf_begin_string): new variable move_by_tm.
+	Test gen_faked_interword_space and new move_by_tm to determine
+	when to insert a space.
+	Report from Ulrike Fischer:
+	  https://tug.org/pipermail/pdftex/2024-July/009424.html
+	with followup from Ross Moore:
+	  https://tug.org/pipermail/pdftex/2025-January/009426.html
+
+2025-01-22  Karl Berry  <hanthethanh at gmail.com>
+
 	* pdftex.web (scale_image): rename resolution_ratio to one_inch.
+	Suggestion from Thanh.
 
 2025-01-18  Andreas Scherer  <https://ascherer.github.io>
 

Modified: branches/stable/source/src/texk/web2c/pdftexdir/NEWS
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/NEWS	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/pdftexdir/NEWS	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,8 +1,12 @@
 - changes:
   - new primitive \pdfptexuseunderscore: if positive or
-    if \pdfmajorversion >= 2, the PTEX.Fullbanner and other dictionary
-    entries use an _ instead of ., as in PTEX_Fullbanner.
+    if \pdfmajorversion >= 2, PTEX.Fullbanner and other dictionary
+    entry names use _ instead of ., as in "PTEX_Fullbanner".
+  - new primitive \ignoreprimitiveerror, enabled with -etex: if set
+    to 1, the error "Infinite glue shrinkage" becomes a warning
+    (exit status remains 0). Other values reserved for future use.
 - bugfixes:
+  - don't omit real spaces just because the font changes.
   - increase tolerance for detecting interword spaces in overfull lines.
   - ignore tiny resolutions like 1x1 embedded in images instead of
     exceeding \maxdimen.

Modified: branches/stable/source/src/texk/web2c/pdftexdir/pdftex.web
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/pdftex.web	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/pdftexdir/pdftex.web	2025-01-25 17:53:19 UTC (rev 947)
@@ -15863,7 +15863,7 @@
 end;
 
 function is_bit_set(n: integer; s: small_number): boolean;
-{check if s-th bit of n is set}
+{check if $s$-th bit (one-based) of $n$ is set}
 var m, i: integer;
 begin
   m := 1;

Modified: branches/stable/source/src/texk/web2c/tests/fix-changefile-lines.py
===================================================================
--- branches/stable/source/src/texk/web2c/tests/fix-changefile-lines.py	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/texk/web2c/tests/fix-changefile-lines.py	2025-01-25 17:53:19 UTC (rev 947)
@@ -1,5 +1,5 @@
 #!/usr/bin/env python3
-# $Id: fix-changefile-lines.py 71714 2024-07-05 12:57:53Z ascherer $
+# $Id: fix-changefile-lines.py 73541 2025-01-21 15:47:36Z ascherer $
 # Applied to tex.ch and mf.ch on 2024-06-03, following the request at:
 # https://tug.org/pipermail/tex-k/2024-June/004064.html
 """
@@ -171,11 +171,14 @@
             new_line = self._lines[self._chunk_start]
 
             new_line = re.sub(
-                    "\\[\\d+\\.\\d+\\]", f"[{part}.{section}]", new_line, 1)
+                    "\\[\\d+\\.\\d+\\]", f"[{part}.{section}]",
+                    new_line, count=1)
             new_line = re.sub(
-                    "^@x \\[\\d+\\]", f"@x [{section}]", new_line, 1)
+                    "^@x \\[\\d+\\]", f"@x [{section}]",
+                    new_line, count=1)
             new_line = re.sub(
-                    "l\\.\\d+", f"l.{line_number}", new_line, 1)
+                    "l\\.\\d+", f"l.{line_number}",
+                    new_line, count=1)
 
             # Force '[part.section] l.line' tag after '@x'; useful for untagged
             # change files, e.g., CWEB's '*-w2c.ch' monsters.
@@ -182,7 +185,7 @@
             if opt_handler.init_b:
                 new_line = re.sub(
                         "^@x", f"@x [{part}.{section}] l.{line_number}",
-                        new_line, 1)
+                        new_line, count=1)
 
             ch_line = self._lines[self._chunk_start]
             if new_line[:10] != ch_line[:10]:

Modified: branches/stable/source/src/utils/configure
===================================================================
--- branches/stable/source/src/utils/configure	2025-01-25 17:23:55 UTC (rev 946)
+++ branches/stable/source/src/utils/configure	2025-01-25 17:53:19 UTC (rev 947)
@@ -6117,6 +6117,10 @@
 ## libs/pplib/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/pplib/
 ## configure options and TL libraries required for pplib
 
+test "x$need_pplib" = xyes && {
+  need_zlib=yes
+}
+
 ## libs/harfbuzz/ac/withenable.ac: configure.ac fragment for the TeX Live subdirectory libs/harfbuzz/
 ## configure options and TL libraries required for harfbuzz
 



More information about the pdftex-commits mailing list.