From b07d7b7c66f75ac05491b3fee9cab812b20d88fe Mon Sep 17 00:00:00 2001 From: Adolf Belka Date: Mon, 15 Sep 2025 19:46:24 +0200 Subject: [PATCH] freetype: Update to version 2.14.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit - Update from version 2.13.3 to 2.14.1 - Update of rootfile - Changelog 2.14.1 This is an emergency release that fixes a couple of severe bugs introduced in version 2.14.0 and discovered right after the release; see issues #1349, #1353, #1354, #1355, and #1356. 2.14.0 IMPORTANT CHANGES - A new configuration macro `FT_CONFIG_OPTION_USE_HARFBUZZ_DYNAMIC` is available to load the HarfBuzz library dynamically (in addition to the standard static and dynamic linking modes); cmake, meson, and autotools support have been updated accordingly. Using this new feature makes it possible to avoid the circular dependency between HarfBuzz and FreeType. A side effect of this change is that FreeType no longer uses HarfBuzz header files (if HarfBuzz support is activated). This code was contributed by Behdad Esfahbod. - The auto-hinter got new abilities. . It can now better separate diacritic glyphs from base glyphs at small sizes by artificially moving diacritics up (or down) if necessary. . Tilde accent glyphs get vertically stretched at small sizes so that they don't degenerate to horizontal lines. . Diacritics directly attached to a base glyph (like the ogonek in character 'ę') no longer distort the shape of the base glyph. These features use a database (which currently has entries for Unicode characters up to U+FFFF, based on Unicode 17.0), handling scripts like Latin, Cyrillic, or Greek, but not Arabic or Indic scripts. FreeType needs to access a proper Unicode character map (or must be able to construct such a cmap) of a given font to make this work. The central algorithm and the foundation of this feature was Craig White's GSoC 2023 project. - Bitmap-only TrueType fonts now ignore the `FT_LOAD_NO_BITMAP` flag and proceed loading bitmaps instead of giving an error. This behavior is documented and implemented for other bitmap-only fonts. The flag was always meant to suppress the bitmap strikes in favor of outlines, not to ban them completely. IMPORTANT BUG FIXES - Users of the `TT_CONFIG_OPTION_GPOS_KERNING` configuration option should update; the 'GPOS' table wasn't correctly validated before access, which could lead to crashes with malformed font files. MISCELLANEOUS - `FT_Set_Var_Design_Coordinates` and `FT_Set_MM_Blend_Coordinates` now set the `FT_FACE_FLAG_VARIATION` bit in the `face_flag` field of `FT_Face` (i.e., the macro `FT_IS_VARIATION` returns true) also if any of the provided coordinates is different from the face's default value for the corresponding axis, that is, the set up face is not at its default position. - `FT_Load_Sfnt_Table` can now also load a font's table directory. - The TrueType instruction interpreter was optimized to produce a 15% gain in the glyph loading speed. - Handling of Variation Fonts is now considerably faster, thanks to contributions by Behdad Esfahbod. - TrueType and CFF glyph loading speed has been improved by 5-10% on modern 64-bit platforms as a result of better handling of fixed- point multiplication. - The BDF driver now loads fonts 75% faster. - 'GPOS' kern table handling (if the `TT_CONFIG_OPTION_GPOS_KERNING` configuration option is active) is now about 3.5 times faster than before. - Support for the (currently undocumented) 'flip' graphic type in the 'sbix' SFNT table as used in the `Apple Color Emoji.ttc` font (code provided by Andrew Murray). - `ftmulti` can now scroll through named instances and gracefully show static fonts. - The build file on OpenVMS now also creates a 32-bit version of the library. Signed-off-by: Adolf Belka Signed-off-by: Michael Tremer --- config/rootfiles/common/freetype | 2 +- lfs/freetype | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/config/rootfiles/common/freetype b/config/rootfiles/common/freetype index 81adc2503..0781a0f17 100644 --- a/config/rootfiles/common/freetype +++ b/config/rootfiles/common/freetype @@ -60,7 +60,7 @@ #usr/lib/libfreetype.la #usr/lib/libfreetype.so usr/lib/libfreetype.so.6 -usr/lib/libfreetype.so.6.20.2 +usr/lib/libfreetype.so.6.20.4 #usr/lib/pkgconfig/freetype2.pc #usr/share/aclocal/freetype2.m4 #usr/share/man/man1/freetype-config.1 diff --git a/lfs/freetype b/lfs/freetype index fa69e4e31..2a1d90aeb 100644 --- a/lfs/freetype +++ b/lfs/freetype @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2024 IPFire Team # +# Copyright (C) 2007-2025 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@ include Config -VER = 2.13.3 +VER = 2.14.1 THISAPP = freetype-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = f9591c6998df02b072adaf38a968e91deae8ed4d53ea0cb74d08982c4f0e48b1a98c1378a698164e4f730f07a3b0bea308a94fcc2e2b8ce9967dbf9478b599bd +$(DL_FILE)_BLAKE2 = 1dc62d337a93ca94f93496e60bdf9cbabed5867d66bb2f07669f1b5f81ef16f6cc57c401f51bb62d919680316f73902fafb6a167c45183872faaf984840b5ec7 install : $(TARGET) @@ -72,11 +72,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && sed -ri "s:.*(AUX_MODULES.*valid):\1:" modules.cfg cd $(DIR_APP) && sed -r "s:.*(#.*SUBPIXEL_RENDERING) .*:\1:" \ - -i include/freetype/config/ftoption.h + -i include/freetype/config/ftoption.h cd $(DIR_APP) && ./configure \ - --prefix=/usr \ - --enable-freetype-config \ - --disable-static + --prefix=/usr \ + --enable-freetype-config \ + --disable-static cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install @rm -rf $(DIR_APP) -- 2.47.3