RFR: 8373290: Update FreeType to 2.14.1

Jayathirth D V jdv at openjdk.org
Fri Feb 27 11:20:16 UTC 2026


Update FreeType used for font rendering to latest 2.14.1 version.

Newly added files in upstream without which our build fails, so including them:
src/java.desktop/share/native/libfreetype/src/autofit/afadjust.c
src/java.desktop/share/native/libfreetype/src/autofit/afadjust.h

Below files were present in 2.13.2 upstream but our build worked fine without them. But with FreeType 2.14.1 our build fails without these files, so added them also:
src/java.desktop/share/native/libfreetype/src/autofit/ft-hb.c
src/java.desktop/share/native/libfreetype/src/autofit/ft-hb.h

Below files should have been removed in 2.13.2 update itself as they were removed from upstream. So deleted them now:
src/java.desktop/share/native/libfreetype/src/truetype/ttsubpix.c
src/java.desktop/share/native/libfreetype/src/truetype/ttsubpix.h

With this FreeType 2.14.1 update we saw [JDK-8378623](https://bugs.openjdk.org/browse/JDK-8378623) test issue which is already resolved.

While CI testing one more test(javax/swing/text/html/CSS/8231286/HtmlFontSizeTest.java) failure was observed only on Oracle Linux 10. After FreeType update the ratio of width calculated in this test is "1.3757962" in our Oracle Linux 10 machines and it is rounding off to "1.4" and not the "1.3" value as expected in this test. Taking the average ratio out of both width and height for a larger font will give result in values near to the ideal "1.3" ratio. After making this test more robust it passes on all versions of all platforms in our CI. javax/swing/text/html/CSS/8231286/HtmlFontSizeTest.java update is also included in this PR.

After above test updates, overall testing is green with FreeType 2.14.1 update.

-------------

Commit messages:
 - Fix whitespaces
 - Make HtmlFontSizeTest more robust
 - Merge remote-tracking branch 'upstream/master' into freetype
 - Update legal file
 - Merge remote-tracking branch 'upstream/master' into freetype
 - Revert test specific change
 - Use different size so that cached FM is not used
 - Merge remote-tracking branch 'upstream/master' into freetype
 - Remove TTF files
 - Add TTF files
 - ... and 1 more: https://git.openjdk.org/jdk/compare/82ff0255...fb326fa0

Changes: https://git.openjdk.org/jdk/pull/29954/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=29954&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8373290
  Stats: 10403 lines in 286 files changed: 5453 ins; 3071 del; 1879 mod
  Patch: https://git.openjdk.org/jdk/pull/29954.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/29954/head:pull/29954

PR: https://git.openjdk.org/jdk/pull/29954


More information about the client-libs-dev mailing list