From cb5862792c144c3f2f9ef0d28fbb3aacae630f4f Mon Sep 17 00:00:00 2001
From: Akira Kakuto
Date: Fri, 25 Aug 2023 23:10:40 +0000
Subject: [PATCH] freetype 2.13.2
git-svn-id: svn://tug.org/texlive/trunk/Build/source@68062 c570f23f-e606-0410-a88d-b1316a301751
---
libs/README | 2 +-
libs/freetype2/ChangeLog | 5 +
libs/freetype2/TLpatches/ChangeLog | 5 +
libs/freetype2/TLpatches/TL-Changes | 2 +-
libs/freetype2/configure | 20 +-
libs/freetype2/freetype-src/CMakeLists.txt | 2 +-
libs/freetype2/freetype-src/ChangeLog | 266 +++++
libs/freetype2/freetype-src/README | 8 +-
.../freetype2/freetype-src/builds/freetype.mk | 2 +-
.../freetype2/freetype-src/builds/toplevel.mk | 31 +-
.../freetype-src/builds/unix/configure | 28 +-
.../freetype-src/builds/unix/configure.ac | 10 +-
.../freetype-src/builds/unix/configure.raw | 8 +-
.../builds/wince/vc2005-ce/index.html | 2 +-
.../builds/wince/vc2008-ce/index.html | 2 +-
.../builds/windows/vc2010/index.html | 2 +-
.../builds/windows/visualc/index.html | 2 +-
.../builds/windows/visualce/index.html | 2 +-
libs/freetype2/freetype-src/docs/CHANGES | 14 +
libs/freetype2/freetype-src/docs/VERSIONS.TXT | 1 +
.../freetype-src/docs/freetype-config.1 | 2 +-
.../freetype-src/docs/reference/404.html | 12 +-
.../docs/reference/ft2-auto_hinter.html | 12 +-
.../docs/reference/ft2-basic_types.html | 12 +-
.../docs/reference/ft2-bdf_fonts.html | 12 +-
.../docs/reference/ft2-bitmap_handling.html | 12 +-
.../docs/reference/ft2-bzip2.html | 12 +-
.../docs/reference/ft2-cache_subsystem.html | 12 +-
.../docs/reference/ft2-cff_driver.html | 12 +-
.../docs/reference/ft2-character_mapping.html | 12 +-
.../docs/reference/ft2-cid_fonts.html | 12 +-
.../docs/reference/ft2-color_management.html | 12 +-
.../docs/reference/ft2-computations.html | 12 +-
.../docs/reference/ft2-debugging_apis.html | 12 +-
.../docs/reference/ft2-error_code_values.html | 12 +-
.../reference/ft2-error_enumerations.html | 12 +-
.../docs/reference/ft2-face_creation.html | 12 +-
.../docs/reference/ft2-font_formats.html | 12 +-
.../reference/ft2-font_testing_macros.html | 12 +-
.../docs/reference/ft2-gasp_table.html | 12 +-
.../docs/reference/ft2-glyph_management.html | 12 +-
.../docs/reference/ft2-glyph_retrieval.html | 12 +-
.../docs/reference/ft2-glyph_stroker.html | 12 +-
.../docs/reference/ft2-glyph_variants.html | 12 +-
.../docs/reference/ft2-gx_validation.html | 12 +-
.../freetype-src/docs/reference/ft2-gzip.html | 12 +-
.../reference/ft2-header_file_macros.html | 12 +-
.../docs/reference/ft2-header_inclusion.html | 12 +-
.../docs/reference/ft2-incremental.html | 12 +-
.../docs/reference/ft2-index.html | 18 +-
.../reference/ft2-information_retrieval.html | 12 +-
.../docs/reference/ft2-layer_management.html | 12 +-
.../docs/reference/ft2-lcd_rendering.html | 12 +-
.../docs/reference/ft2-library_setup.html | 14 +-
.../docs/reference/ft2-list_processing.html | 12 +-
.../freetype-src/docs/reference/ft2-lzw.html | 12 +-
.../docs/reference/ft2-mac_specific.html | 12 +-
.../docs/reference/ft2-module_management.html | 12 +-
.../docs/reference/ft2-multiple_masters.html | 12 +-
.../docs/reference/ft2-ot_svg_driver.html | 12 +-
.../docs/reference/ft2-ot_validation.html | 12 +-
.../docs/reference/ft2-other_api_data.html | 12 +-
.../reference/ft2-outline_processing.html | 12 +-
.../docs/reference/ft2-parameter_tags.html | 12 +-
.../docs/reference/ft2-pcf_driver.html | 12 +-
.../docs/reference/ft2-pfr_fonts.html | 12 +-
.../docs/reference/ft2-preamble.html | 12 +-
.../docs/reference/ft2-properties.html | 12 +-
.../docs/reference/ft2-quick_advance.html | 12 +-
.../docs/reference/ft2-raster.html | 12 +-
.../docs/reference/ft2-sfnt_names.html | 12 +-
.../docs/reference/ft2-sizes_management.html | 12 +-
.../reference/ft2-sizing_and_scaling.html | 12 +-
.../docs/reference/ft2-svg_fonts.html | 12 +-
.../docs/reference/ft2-system_interface.html | 12 +-
.../docs/reference/ft2-t1_cid_driver.html | 12 +-
.../docs/reference/ft2-truetype_engine.html | 12 +-
.../docs/reference/ft2-truetype_tables.html | 12 +-
.../docs/reference/ft2-tt_driver.html | 12 +-
.../docs/reference/ft2-type1_tables.html | 12 +-
.../docs/reference/ft2-user_allocation.html | 12 +-
.../docs/reference/ft2-winfnt_fonts.html | 12 +-
.../freetype-src/docs/reference/index.html | 18 +-
.../docs/reference/search/search_index.json | 2 +-
.../docs/reference/sitemap.xml.gz | Bin 127 -> 127 bytes
.../freetype-src/include/freetype/freetype.h | 2 +-
.../include/freetype/internal/ftcalc.h | 4 +-
.../include/freetype/internal/tttypes.h | 15 -
.../freetype-src/src/autofit/afcjk.c | 6 +-
.../freetype-src/src/autofit/aflatin.c | 38 +-
libs/freetype2/freetype-src/src/base/ftcalc.c | 82 +-
libs/freetype2/freetype-src/src/base/ftobjs.c | 3 +-
.../freetype-src/src/base/ftstream.c | 8 +-
libs/freetype2/freetype-src/src/base/ftver.rc | 4 +-
libs/freetype2/freetype-src/src/cff/cffload.c | 9 +-
.../freetype2/freetype-src/src/cff/cffparse.c | 22 +-
.../freetype2/freetype-src/src/cff/cffparse.h | 4 +
libs/freetype2/freetype-src/src/gzip/rules.mk | 33 +-
.../freetype-src/src/psaux/cffdecode.c | 6 +-
.../freetype-src/src/psaux/pshints.c | 2 +-
.../freetype-src/src/psaux/t1decode.c | 4 +-
.../freetype2/freetype-src/src/sfnt/sfwoff2.c | 18 +-
libs/freetype2/freetype-src/src/sfnt/ttcolr.c | 4 +-
.../freetype-src/src/smooth/ftgrays.c | 11 +-
.../freetype-src/src/truetype/rules.mk | 3 +-
.../freetype-src/src/truetype/truetype.c | 1 -
.../freetype-src/src/truetype/ttdriver.c | 5 -
.../freetype-src/src/truetype/ttgload.c | 295 +----
.../freetype-src/src/truetype/ttgxvar.c | 8 +-
.../freetype-src/src/truetype/ttinterp.c | 834 +-------------
.../freetype-src/src/truetype/ttinterp.h | 74 --
.../freetype-src/src/truetype/ttobjs.c | 3 -
.../freetype-src/src/truetype/ttobjs.h | 2 -
.../freetype-src/src/truetype/ttsubpix.c | 1013 -----------------
.../freetype-src/src/truetype/ttsubpix.h | 110 --
.../freetype2/freetype-src/src/type1/t1load.c | 4 +-
.../freetype-src/src/type42/t42parse.c | 2 +-
.../freetype-src/subprojects/libpng.wrap | 18 +-
.../freetype-src/subprojects/zlib.wrap | 18 +-
libs/freetype2/freetype-src/vms_make.com | 772 +++++++++++--
libs/freetype2/version.ac | 2 +-
121 files changed, 1637 insertions(+), 2978 deletions(-)
delete mode 100644 libs/freetype2/freetype-src/src/truetype/ttsubpix.c
delete mode 100644 libs/freetype2/freetype-src/src/truetype/ttsubpix.h
diff --git a/libs/README b/libs/README
index f10d067e00..b91615e69d 100644
--- a/libs/README
+++ b/libs/README
@@ -12,7 +12,7 @@ See also comments in ../texk/README.
cairo 1.16.0 - checked 20oct18
http://cairographics.org/releases/
-freetype2 2.13.1 - checked 25jun23
+freetype2 2.13.2 - checked 26aug23
http://download.savannah.gnu.org/releases/freetype/
gd 2.3.3 - checked 13sep21
diff --git a/libs/freetype2/ChangeLog b/libs/freetype2/ChangeLog
index d1d81b64e6..cc788f3b9b 100644
--- a/libs/freetype2/ChangeLog
+++ b/libs/freetype2/ChangeLog
@@ -1,3 +1,8 @@
+2023-08-26 Akira Kakuto
+
+ Import freetype-2.13.2.
+ * version.ac: Adjusted.
+
2023-06-25 Akira Kakuto
Import freetype-2.13.1.
diff --git a/libs/freetype2/TLpatches/ChangeLog b/libs/freetype2/TLpatches/ChangeLog
index 8af763bdf2..6746cb742c 100644
--- a/libs/freetype2/TLpatches/ChangeLog
+++ b/libs/freetype2/TLpatches/ChangeLog
@@ -1,3 +1,8 @@
+2023-08-26 Akira Kakuto
+
+ Import freetype-2.13.2 source tree from:
+ http://download.savannah.gnu.org/releases/freetype.
+
2023-06-25 Akira Kakuto
Import freetype-2.13.1 source tree from:
diff --git a/libs/freetype2/TLpatches/TL-Changes b/libs/freetype2/TLpatches/TL-Changes
index df5897c6b8..f56040efb3 100644
--- a/libs/freetype2/TLpatches/TL-Changes
+++ b/libs/freetype2/TLpatches/TL-Changes
@@ -1,2 +1,2 @@
-Changes applied to the freetype-2.13.1/ tree as obtained from:
+Changes applied to the freetype-2.13.2/ tree as obtained from:
http://download.savannah.gnu.org/releases/freetype/.
diff --git a/libs/freetype2/configure b/libs/freetype2/configure
index 22d59442d7..dd4eb04a12 100755
--- a/libs/freetype2/configure
+++ b/libs/freetype2/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for FreeType (TeX Live) 2.13.1.
+# Generated by GNU Autoconf 2.71 for FreeType (TeX Live) 2.13.2.
#
# Report bugs to .
#
@@ -610,8 +610,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='FreeType (TeX Live)'
PACKAGE_TARNAME='freetype--tex-live-'
-PACKAGE_VERSION='2.13.1'
-PACKAGE_STRING='FreeType (TeX Live) 2.13.1'
+PACKAGE_VERSION='2.13.2'
+PACKAGE_STRING='FreeType (TeX Live) 2.13.2'
PACKAGE_BUGREPORT='tex-k@tug.org'
PACKAGE_URL=''
@@ -1278,7 +1278,7 @@ if test "$ac_init_help" = "long"; then
# 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 FreeType (TeX Live) 2.13.1 to adapt to many kinds of systems.
+\`configure' configures FreeType (TeX Live) 2.13.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1346,7 +1346,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of FreeType (TeX Live) 2.13.1:";;
+ short | recursive ) echo "Configuration of FreeType (TeX Live) 2.13.2:";;
esac
cat <<\_ACEOF
@@ -1443,7 +1443,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-FreeType (TeX Live) configure 2.13.1
+FreeType (TeX Live) configure 2.13.2
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@@ -1566,7 +1566,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by FreeType (TeX Live) $as_me 2.13.1, which was
+It was created by FreeType (TeX Live) $as_me 2.13.2, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@@ -4100,7 +4100,7 @@ fi
# Define the identity of the package.
PACKAGE='freetype--tex-live-'
- VERSION='2.13.1'
+ VERSION='2.13.2'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -5834,7 +5834,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by FreeType (TeX Live) $as_me 2.13.1, which was
+This file was extended by FreeType (TeX Live) $as_me 2.13.2, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -5893,7 +5893,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
-FreeType (TeX Live) config.status 2.13.1
+FreeType (TeX Live) config.status 2.13.2
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
diff --git a/libs/freetype2/freetype-src/CMakeLists.txt b/libs/freetype2/freetype-src/CMakeLists.txt
index d31ab175d1..8dbca01e65 100644
--- a/libs/freetype2/freetype-src/CMakeLists.txt
+++ b/libs/freetype2/freetype-src/CMakeLists.txt
@@ -164,7 +164,7 @@ project(freetype C)
set(VERSION_MAJOR "2")
set(VERSION_MINOR "13")
-set(VERSION_PATCH "1")
+set(VERSION_PATCH "2")
# Generate LIBRARY_VERSION and LIBRARY_SOVERSION.
set(LIBTOOL_REGEX "version_info='([0-9]+):([0-9]+):([0-9]+)'")
diff --git a/libs/freetype2/freetype-src/ChangeLog b/libs/freetype2/freetype-src/ChangeLog
index 3fa83e819d..ca58f007a1 100644
--- a/libs/freetype2/freetype-src/ChangeLog
+++ b/libs/freetype2/freetype-src/ChangeLog
@@ -1,3 +1,269 @@
+2023-08-25 Werner Lemberg
+
+ * Version 2.13.2 released.
+ ==========================
+
+ Tag sources with `VER-2-13-2'.
+
+ * docs/VERSION.TXT: Add entry for version 2.13.2.
+ * docs/CHANGES: Updated.
+ * docs/release, docs/README, builds/macs/README: Updated.
+
+ * README, src/base/ftver.rc, builds/windows/vc2010/index.html,
+ builds/windows/visualc/index.html, builds/windows/visualce/index.html,
+ builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html,
+ docs/freetype-config.1: s/2.13.1/2.13.2/, s/2131/2132/.
+
+ * include/freetype/freetype.h (FREETYPE_PATCH): Set to 2.
+
+ * builds/unix/configure.raw (version_info): Set to 26:1:20.
+ * CMakeLists.txt (VERSION_PATCH): Set to 2.
+
+2023-08-25 Alexei Podtelezhnikov
+
+ * src/base/ftcalc.c (FT_MulAddFix): Simplify 32-bit rounding.
+
+2023-08-25 Werner Lemberg
+
+ Fix clang warnings.
+
+ * src/cffload.c (cff_blend_doBlend): Fix type of `sum`.
+ * src/truetype/ttgxvar.c (tt_var_load_item_variation_store): Fix type of
+ `word_delta_count`.
+
+2023-08-24 Werner Lemberg
+
+ * subprojects/*.wrap: Updated.
+
+2023-08-24 Hugh McMaster
+
+ builds/unix/configure.raw: Use variable to specify minimum Python version.
+
+2023-08-24 Alexei Podtelezhnikov
+
+ * builds/toplevel.mk: Simplify version extraction.
+
+2023-08-22 Alexei Podtelezhnikov
+
+ [base] Improve the matrix degeneracy check.
+
+ Also fixes #1251.
+
+ * src/base/ftcalc.c (FT_Matrix_Check): To avoid overflow, scale by shifting.
+ * include/freetype/internal/ftcalc.h (FT_Matrix_Check): Update description.
+
+2023-08-22 Werner Lemberg
+
+ builds/toplevel.mk: Don't use `\#` in functions.
+
+ The behaviour changed in GNU make 4.3, where `#` (without the backslash)
+ would be necessary. Using a variable instead the code works with both older
+ and newer GNU make versions.
+
+ Fixes #1252.
+
+2023-08-19 Hugh McMaster
+
+ builds/freetype.mk: Invoke `mkdocs` as a Python module
+
+ FreeType's `refdoc` target currently allows users to override the
+ default Python path, which is useful for testing and development.
+
+ In contrast, `mkdocs` is invoked via the default Python path.
+
+ Invoking `mkdocs` via Python's module syntax allows for greater
+ flexibility, although there is no change for the default use case.
+
+2023-08-17 Ben Wagner
+
+ [base] Avoid UB with memcpy
+
+ `FT_NEW_ARRAY(p, 0)` sets `p` to `NULL`. `FT_Stream_ReadAt` with a
+ memory based stream uses `FT_MEM_COPY` which is `memcpy` which specifies
+ that it is undefined behavior for either the `src` or `dst` to be
+ `NULL`. Instead of forcing all callers work around calling
+ `FT_Stream_Read` when `buffer == NULL && count == 0` do the check in
+ `FT_StreamRead`. This allows any call with `count == 0` to succesfully
+ read zero bytes without UB.
+
+ * src/base/ftstream.c (FT_Stream_ReadAt): skip `FT_MEM_COPY` when
+ `count == 0`. (FT_Stream_TryRead): ditto
+
+ Fixes: #1250
+
+2023-08-12 Werner Lemberg
+
+ Fix warnings in tracing messages for 32bit compilation.
+
+ Since we now require C99, use `%td` for `ptrdiff_t` and `%zu` for `size_t`.
+
+2023-08-04 Ben Wagner
+
+ Avoid overflow in COLR bounds checks.
+
+ The values read into `base_glyphs_offset_v1` and `layer_offset_v1` may
+ be in the range 0xFFFFFFFD-0xFFFFFFFF. On systems where `unsigned long`
+ is 32 bits adding 4 to such values will wrap and pass bounds checks but
+ accessing values at such offsets will be out of bounds.
+
+ On the other hand `table_size` has already been tested to be at least
+ `COLRV1_HEADER_SIZE` (34) so it is safe to subtract 4 from it.
+
+ * src/sfnt/ttcolr.c (tt_face_load_colr): subtract 4 from `table_size`
+ instead of adding 4 to font data offsets in bounds checks
+
+ Fixes: https://crbug.com/1469348
+
+2023-08-02 Alexei Podtelezhnikov
+
+ * src/base/ftobjs.c (open_face_from_buffer): Silence `maybe-uninitialized`.
+
+ We never call this function without a `driver_name` (#1245).
+
+2023-07-29 Alexei Podtelezhnikov
+
+ [truetype] Reduce v40 footprint.
+
+ * src/truetype/ttgload.c (TT_HInt_Glyph, tt_loader_set_pp,
+ tt_loader_init): Refactor code.
+
+2023-07-27 Alexei Podtelezhnikov
+
+ [truetype] Remove Infinality for good (remaining bits).
+
+ * src/truetype/ttobjs.h: Remove remaining fields.
+ * src/truetype/ttinterp.c: Do not initialize them.
+ * include/freetype/internal/tttypes.h: Remove descriptions.
+
+2023-07-27 Alexei Podtelezhnikov
+
+ [truetype] Remove Infinality for good.
+
+ Remove everything `#ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY`,
+ which was undefined for a while now.
+
+ * include/freetype/internal/tttypes.h: Ditto.
+ * src/truetype/truetype.c: Ditto.
+ * src/truetype/ttdriver.c: Ditto.
+ * src/truetype/ttgload.c: Ditto.
+ * src/truetype/ttinterp.c: Ditto.
+ * src/truetype/ttinterp.h: Ditto.
+ * src/truetype/ttobjs.c: Ditto.
+ * src/truetype/ttsubpix.[ch]: Remove files.
+ * src/truetype/rules.mk: Don't mention "ttsubpix.c".
+
+2023-07-21 Jouk Jansen
+
+ * vms_make.com: Provide separate library compiled with C++.
+
+ Some types on OpenVMS x86_64 (for example, `long') have different sizes
+ depending on whether compiled with either C or C++. In particular,
+ X-Windows applications crash if linked with the C++ version.
+
+ This patch makes `vms_make.com` create a second version of the FreeType
+ library compiled with C++ if OpenVMS is running on the x86_64 platform.
+
+2023-07-21 Jouk Jansen
+
+ * vms_make.com: Fix typos.
+
+2023-07-21 Jouk Jansen
+
+ * src/smooth/ftgrays.c (FT_SSE2): Fix definition for VMS.
+
+2023-07-19 Jouk Jansen
+
+ vms_make.com: Make use of additional libraries optional.
+
+ Check whether `.olb` files are present.
+
+ Also check for the HarfBuzz library.
+
+2023-07-19 Jouk Jansen
+
+ vms_make.com: Add `/warn=noinfo` to `CFLAGS`.
+
+ This reduces enormously the informationals while compiling on x86_64 (i.e.,
+ which `.h` file is inluded form where).
+
+2023-07-18 Ben Wagner
+
+ [woff2] Clean up on large brotli expansion
+
+ * src/sfnt/sfwoff2.c (woff2_open_font): set error and goto cleanup
+
+ Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=60711
+
+2023-07-16 Werner Lemberg
+
+ [woff2] Avoid allocation bomb.
+
+ This is a fix for commit 85167dbd5, reported as
+
+ https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=60615
+
+ * src/sfnt/sfwoff2.c (MAX_SFNT_SIZE): New macro.
+ (woff2_open_font): Use it to limit the maximum size of an uncompressed WOFF2
+ font.
+
+2023-07-14 Werner Lemberg
+
+ [cff] Fix compiler warning.
+
+ * src/cff/cffparse.c, src/cff/cffparse.h: Make `cff_parse_fixed` a local
+ function.
+
+2023-07-14 Ben Wagner
+
+ [woff2] Remove sfnt size guess check
+
+ In WOFF the `totalSfntSize` must be correct, however in WOFF2 this value
+ is now just a hint and a conforming implementation must not reject
+ otherwise valid data if the `totalSfntSize` turns out not to be exact.
+
+ * src/sfnt/sfwoff2.c (woff2_open_font): remove check that uncompressed
+ woff2 data would fit in the sfnt size guess.
+
+ Fixes: #1235
+
+2023-07-14 Skef Iterum
+
+ [cff] Make blend operator work with floats in private dicts.
+
+ The CFF2 blend operator takes N default values and corresponding
+ sets of deltas and pushes N values specific to a designspace
+ location. CFF has a floating point numeric type and the FreeType
+ blending code was not converting those into its internal 16.16
+ Fixed type format.
+
+ Fixes #1243.
+
+ * src/cff/cffparse.c (do_fixed): Handle floating point numbers.
+ Also fix scaling overflow check for integer-to-fixed conversion.
+
+ * src/cff/cffload.c (cff_blend_doBlend): Updated.
+
+2023-07-08 Hin-Tak Leung
+
+ * src/truetype/ttgload.c (TT_Hint_Glyph): More mostly cosmetic update.
+
+ This is a follow-up to commit 49c74ac02, which creates a new local variable
+ "exec = loader->exec", and shortening a lot of "loader->exec". This commit
+ does two more such changes missed in that first commit.
+
+2023-07-06 Hugh McMaster
+
+ [gzip] Don't compile internal zlib development files when using system zlib.
+
+ `src/gzip/rules.mk` compiles the internal zlib sources even when using the
+ zlib development files provided by a host system. If the internal zlib
+ development files are not present, FreeType fails to build from source.
+
+ This patch ensures the internal zlib development files are only
+ prerequisites when not using zlib development files on a host system.
+
+ * src/gzip/rules.mk (GZIP_DRV_SRCS): Define conditionally.
+
2023-06-24 Werner Lemberg
* Version 2.13.1 released.
diff --git a/libs/freetype2/freetype-src/README b/libs/freetype2/freetype-src/README
index eb48e7e184..cd4c1d7d11 100644
--- a/libs/freetype2/freetype-src/README
+++ b/libs/freetype2/freetype-src/README
@@ -1,4 +1,4 @@
-FreeType 2.13.1
+FreeType 2.13.2
===============
Homepage: https://www.freetype.org
@@ -32,9 +32,9 @@ sites. Go to
and download one of the following files.
- freetype-doc-2.13.1.tar.xz
- freetype-doc-2.13.1.tar.gz
- ftdoc2131.zip
+ freetype-doc-2.13.2.tar.xz
+ freetype-doc-2.13.2.tar.gz
+ ftdoc2132.zip
To view the documentation online, go to
diff --git a/libs/freetype2/freetype-src/builds/freetype.mk b/libs/freetype2/freetype-src/builds/freetype.mk
index d96ded0720..b3fac80fd2 100644
--- a/libs/freetype2/freetype-src/builds/freetype.mk
+++ b/libs/freetype2/freetype-src/builds/freetype.mk
@@ -299,7 +299,7 @@ refdoc:
$(PUBLIC_DIR)/config/*.h \
$(PUBLIC_DIR)/cache/*.h
@echo Building static site...
- cd $(DOC_DIR) && mkdocs build
+ cd $(DOC_DIR) && $(PYTHON) -m mkdocs build
@echo Done.
# Variables for running `refdoc' with Python's `virtualenv'. The
diff --git a/libs/freetype2/freetype-src/builds/toplevel.mk b/libs/freetype2/freetype-src/builds/toplevel.mk
index 5a3ff2abd5..8d5063ebb0 100644
--- a/libs/freetype2/freetype-src/builds/toplevel.mk
+++ b/libs/freetype2/freetype-src/builds/toplevel.mk
@@ -198,27 +198,22 @@ modules:
include $(TOP_DIR)/builds/modules.mk
-# get FreeType version string, using a
-# poor man's `sed' emulation with make's built-in string functions
+# get FreeType version string using built-in string functions
#
+hash := \#
+
work := $(strip $(shell $(CAT) \
$(subst /,$(SEP),$(TOP_DIR)/include/freetype/freetype.h)))
-work := $(subst |,x,$(work))
-work := $(subst $(space),|,$(work))
-work := $(subst \#define|FREETYPE_MAJOR|,$(space),$(work))
-work := $(word 2,$(work))
-major := $(subst |,$(space),$(work))
-major := $(firstword $(major))
-
-work := $(subst \#define|FREETYPE_MINOR|,$(space),$(work))
-work := $(word 2,$(work))
-minor := $(subst |,$(space),$(work))
-minor := $(firstword $(minor))
-
-work := $(subst \#define|FREETYPE_PATCH|,$(space),$(work))
-work := $(word 2,$(work))
-patch := $(subst |,$(space),$(work))
-patch := $(firstword $(patch))
+
+work := $(subst $(hash)define$(space)FREETYPE_MAJOR$(space),MAjOR=,$(work))
+work := $(subst $(hash)define$(space)FREETYPE_MINOR$(space),MInOR=,$(work))
+work := $(subst $(hash)define$(space)FREETYPE_PATCH$(space),PAtCH=,$(work))
+
+major := $(subst MAjOR=,,$(filter MAjOR=%,$(work)))
+minor := $(subst MInOR=,,$(filter MInOR=%,$(work)))
+patch := $(subst PAtCH=,,$(filter PAtCH=%,$(work)))
+
+work :=
# ifneq ($(findstring x0x,x$(patch)x),)
# version := $(major).$(minor)
diff --git a/libs/freetype2/freetype-src/builds/unix/configure b/libs/freetype2/freetype-src/builds/unix/configure
index ee82443f43..580f18c3ca 100755
--- a/libs/freetype2/freetype-src/builds/unix/configure
+++ b/libs/freetype2/freetype-src/builds/unix/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for FreeType 2.13.1.
+# Generated by GNU Autoconf 2.71 for FreeType 2.13.2.
#
# Report bugs to .
#
@@ -621,8 +621,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='FreeType'
PACKAGE_TARNAME='freetype'
-PACKAGE_VERSION='2.13.1'
-PACKAGE_STRING='FreeType 2.13.1'
+PACKAGE_VERSION='2.13.2'
+PACKAGE_STRING='FreeType 2.13.2'
PACKAGE_BUGREPORT='freetype@nongnu.org'
PACKAGE_URL=''
@@ -1395,7 +1395,7 @@ if test "$ac_init_help" = "long"; then
# 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 FreeType 2.13.1 to adapt to many kinds of systems.
+\`configure' configures FreeType 2.13.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1462,7 +1462,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of FreeType 2.13.1:";;
+ short | recursive ) echo "Configuration of FreeType 2.13.2:";;
esac
cat <<\_ACEOF
@@ -1623,7 +1623,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-FreeType configure 2.13.1
+FreeType configure 2.13.2
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@@ -1974,7 +1974,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by FreeType $as_me 2.13.1, which was
+It was created by FreeType $as_me 2.13.2, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@@ -2736,7 +2736,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
# Don't forget to update `docs/VERSIONS.TXT'!
-version_info='26:0:20'
+version_info='26:1:20'
ft_version=`echo $version_info | tr : .`
@@ -16243,7 +16243,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
# Check for Python and docwriter
-
+PYTHON_MIN_VERSION=3.5
have_py3=no
have_docwriter=no
PIP=pip
@@ -16304,7 +16304,7 @@ if test "x$PYTHON" != "xmissing"; then
if test -n "$PYTHON"
then :
- ax_python_version="3.5"
+ ax_python_version="$PYTHON_MIN_VERSION"
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python version" >&5
printf %s "checking for python version... " >&6; }
@@ -17036,7 +17036,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by FreeType $as_me 2.13.1, which was
+This file was extended by FreeType $as_me 2.13.2, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -17104,7 +17104,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
-FreeType config.status 2.13.1
+FreeType config.status 2.13.2
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
@@ -18921,13 +18921,13 @@ if test $have_docwriter = no; then
\`make refdoc' will fail since pip package \`docwriter' is not installed.
To install, run \`$PIP install docwriter', or to use a Python
virtual environment, run \`make refdoc-venv' (requires pip package
- \`virtualenv'). These operations require Python >= 3.5.
+ \`virtualenv'). These operations require Python >= $PYTHON_MIN_VERSION.
" >&5
printf "%s\n" "$as_me: WARNING:
\`make refdoc' will fail since pip package \`docwriter' is not installed.
To install, run \`$PIP install docwriter', or to use a Python
virtual environment, run \`make refdoc-venv' (requires pip package
- \`virtualenv'). These operations require Python >= 3.5.
+ \`virtualenv'). These operations require Python >= $PYTHON_MIN_VERSION.
" >&2;}
fi
diff --git a/libs/freetype2/freetype-src/builds/unix/configure.ac b/libs/freetype2/freetype-src/builds/unix/configure.ac
index 9709b6a49a..5df9d86125 100644
--- a/libs/freetype2/freetype-src/builds/unix/configure.ac
+++ b/libs/freetype2/freetype-src/builds/unix/configure.ac
@@ -11,13 +11,13 @@
# indicate that you have read the license and understand and accept it
# fully.
-AC_INIT([FreeType], [2.13.1], [freetype@nongnu.org], [freetype])
+AC_INIT([FreeType], [2.13.2], [freetype@nongnu.org], [freetype])
AC_CONFIG_SRCDIR([ftconfig.h.in])
# Don't forget to update `docs/VERSIONS.TXT'!
-version_info='26:0:20'
+version_info='26:1:20'
AC_SUBST([version_info])
ft_version=`echo $version_info | tr : .`
AC_SUBST([ft_version])
@@ -966,14 +966,14 @@ esac
AX_PTHREAD([have_pthread=yes], [have_pthread=no])
# Check for Python and docwriter
-
+PYTHON_MIN_VERSION=3.5
have_py3=no
have_docwriter=no
PIP=pip
AC_CHECK_PROGS([PYTHON], [python3 python], [missing])
if test "x$PYTHON" != "xmissing"; then
- AX_PROG_PYTHON_VERSION([3.5], [have_py3=yes], [])
+ AX_PROG_PYTHON_VERSION([$PYTHON_MIN_VERSION], [have_py3=yes], [])
if test "x$have_py3" = "xyes"; then
PIP="$PYTHON -m $PIP"
@@ -1162,7 +1162,7 @@ if test $have_docwriter = no; then
`make refdoc' will fail since pip package `docwriter' is not installed.
To install, run `$PIP install docwriter', or to use a Python
virtual environment, run `make refdoc-venv' (requires pip package
- `virtualenv'). These operations require Python >= 3.5.
+ `virtualenv'). These operations require Python >= $PYTHON_MIN_VERSION.
])
fi
diff --git a/libs/freetype2/freetype-src/builds/unix/configure.raw b/libs/freetype2/freetype-src/builds/unix/configure.raw
index 2c152022f0..dc7426ee03 100644
--- a/libs/freetype2/freetype-src/builds/unix/configure.raw
+++ b/libs/freetype2/freetype-src/builds/unix/configure.raw
@@ -17,7 +17,7 @@ AC_CONFIG_SRCDIR([ftconfig.h.in])
# Don't forget to update `docs/VERSIONS.TXT'!
-version_info='26:0:20'
+version_info='26:1:20'
AC_SUBST([version_info])
ft_version=`echo $version_info | tr : .`
AC_SUBST([ft_version])
@@ -966,14 +966,14 @@ esac
AX_PTHREAD([have_pthread=yes], [have_pthread=no])
# Check for Python and docwriter
-
+PYTHON_MIN_VERSION=3.5
have_py3=no
have_docwriter=no
PIP=pip
AC_CHECK_PROGS([PYTHON], [python3 python], [missing])
if test "x$PYTHON" != "xmissing"; then
- AX_PROG_PYTHON_VERSION([3.5], [have_py3=yes], [])
+ AX_PROG_PYTHON_VERSION([$PYTHON_MIN_VERSION], [have_py3=yes], [])
if test "x$have_py3" = "xyes"; then
PIP="$PYTHON -m $PIP"
@@ -1162,7 +1162,7 @@ if test $have_docwriter = no; then
`make refdoc' will fail since pip package `docwriter' is not installed.
To install, run `$PIP install docwriter', or to use a Python
virtual environment, run `make refdoc-venv' (requires pip package
- `virtualenv'). These operations require Python >= 3.5.
+ `virtualenv'). These operations require Python >= $PYTHON_MIN_VERSION.
])
fi
diff --git a/libs/freetype2/freetype-src/builds/wince/vc2005-ce/index.html b/libs/freetype2/freetype-src/builds/wince/vc2005-ce/index.html
index cef32c12e0..8ea6cfdedc 100644
--- a/libs/freetype2/freetype-src/builds/wince/vc2005-ce/index.html
+++ b/libs/freetype2/freetype-src/builds/wince/vc2005-ce/index.html
@@ -21,7 +21,7 @@
PPC/SP WM6 (Windows Mobile 6)
-It compiles the following libraries from the FreeType 2.13.1 sources:
+It compiles the following libraries from the FreeType 2.13.2 sources:
diff --git a/libs/freetype2/freetype-src/builds/wince/vc2008-ce/index.html b/libs/freetype2/freetype-src/builds/wince/vc2008-ce/index.html
index 1d36f60217..a6e74f893a 100644
--- a/libs/freetype2/freetype-src/builds/wince/vc2008-ce/index.html
+++ b/libs/freetype2/freetype-src/builds/wince/vc2008-ce/index.html
@@ -21,7 +21,7 @@
PPC/SP WM6 (Windows Mobile 6)
-It compiles the following libraries from the FreeType 2.13.1 sources:
+It compiles the following libraries from the FreeType 2.13.2 sources:
diff --git a/libs/freetype2/freetype-src/builds/windows/vc2010/index.html b/libs/freetype2/freetype-src/builds/windows/vc2010/index.html
index 95e27e628c..ee9b59a2bf 100644
--- a/libs/freetype2/freetype-src/builds/windows/vc2010/index.html
+++ b/libs/freetype2/freetype-src/builds/windows/vc2010/index.html
@@ -12,7 +12,7 @@
This directory contains solution and project files for
Visual C++ 2010 or newer, named freetype.sln,
and freetype.vcxproj. It compiles the following libraries
-from the FreeType 2.13.1 sources:
+from the FreeType 2.13.2 sources:
- freetype.dll using 'Release' or 'Debug' configurations
diff --git a/libs/freetype2/freetype-src/builds/windows/visualc/index.html b/libs/freetype2/freetype-src/builds/windows/visualc/index.html
index de957a61a6..816605e074 100644
--- a/libs/freetype2/freetype-src/builds/windows/visualc/index.html
+++ b/libs/freetype2/freetype-src/builds/windows/visualc/index.html
@@ -12,7 +12,7 @@
This directory contains project files freetype.dsp for
Visual C++ 6.0, and freetype.vcproj for Visual C++ 2002
through 2008, which you might need to upgrade automatically.
-It compiles the following libraries from the FreeType 2.13.1 sources:
+It compiles the following libraries from the FreeType 2.13.2 sources:
- freetype.dll using 'Release' or 'Debug' configurations
diff --git a/libs/freetype2/freetype-src/builds/windows/visualce/index.html b/libs/freetype2/freetype-src/builds/windows/visualce/index.html
index 706924a74e..d9c8fe475a 100644
--- a/libs/freetype2/freetype-src/builds/windows/visualce/index.html
+++ b/libs/freetype2/freetype-src/builds/windows/visualce/index.html
@@ -21,7 +21,7 @@
- PPC/SP WM6 (Windows Mobile 6)
-It compiles the following libraries from the FreeType 2.13.1 sources:
+It compiles the following libraries from the FreeType 2.13.2 sources:
diff --git a/libs/freetype2/freetype-src/docs/CHANGES b/libs/freetype2/freetype-src/docs/CHANGES
index b6ad1ce5df..96cf607d70 100644
--- a/libs/freetype2/freetype-src/docs/CHANGES
+++ b/libs/freetype2/freetype-src/docs/CHANGES
@@ -1,3 +1,17 @@
+CHANGES BETWEEN 2.13.1 and 2.13.2 (2023-Aug-25)
+
+ I. MISCELLANEOUS
+
+ - Better support for CFF2 variation fonts.
+
+ - TrueType interpreter version 38 (also known as 'Infinality') has
+ been removed.
+
+ - Improved OpenVMS support.
+
+
+======================================================================
+
CHANGES BETWEEN 2.13.0 and 2.13.1 (2023-Jun-24)
I. MISCELLANEOUS
diff --git a/libs/freetype2/freetype-src/docs/VERSIONS.TXT b/libs/freetype2/freetype-src/docs/VERSIONS.TXT
index eb71fd0512..8b43c15837 100644
--- a/libs/freetype2/freetype-src/docs/VERSIONS.TXT
+++ b/libs/freetype2/freetype-src/docs/VERSIONS.TXT
@@ -60,6 +60,7 @@ found on _most_ systems, but not all of them:
release libtool so
-------------------------------
+ 2.13.2 26.1.20 6.20.1
2.13.1 26.0.20 6.20.0
2.13.0 25.0.19 6.19.0
2.12.1 24.3.18 6.18.3
diff --git a/libs/freetype2/freetype-src/docs/freetype-config.1 b/libs/freetype2/freetype-src/docs/freetype-config.1
index cc6f3006de..6ef1ac8f39 100644
--- a/libs/freetype2/freetype-src/docs/freetype-config.1
+++ b/libs/freetype2/freetype-src/docs/freetype-config.1
@@ -1,4 +1,4 @@
-.TH FREETYPE-CONFIG 1 "June 2023" "FreeType 2.13.1"
+.TH FREETYPE-CONFIG 1 "August 2023" "FreeType 2.13.2"
.
.
.SH NAME
diff --git a/libs/freetype2/freetype-src/docs/reference/404.html b/libs/freetype2/freetype-src/docs/reference/404.html
index 939c41b461..92d0484a4f 100644
--- a/libs/freetype2/freetype-src/docs/reference/404.html
+++ b/libs/freetype2/freetype-src/docs/reference/404.html
@@ -6,7 +6,7 @@
-
+
@@ -18,7 +18,7 @@
- FreeType-2.13.1 API Reference
+ FreeType-2.13.2 API Reference
@@ -77,7 +77,7 @@