Skip to content

Conversation

@judovana
Copy link
Contributor

@judovana judovana commented Nov 14, 2025

Without

index 00d35a69844..3464eb15e88 100644
--- a/jdk/make/lib/Awt2dLibraries.gmk
+++ b/jdk/make/lib/Awt2dLibraries.gmk
@@ -541,6 +541,7 @@ else
          E_STATEMENT_NOT_REACHED \
          E_END_OF_LOOP_CODE_NOT_REACHED, \
       DISABLED_WARNINGS_microsoft := 4267 4244 4312, \
+      DISABLED_WARNINGS_gcc := implicit-fallthrough, \
       LDFLAGS := $(LDFLAGS_JDKLIB) \
           $(call SET_SHARED_LIBRARY_ORIGIN), \
   ))

which needs
openjdk/jdk11u@f74d0ae#diff-a634b106e57d9efbd1270664b8b79b2048b035a109b6f5220c4d39a4293d4458 and few others:
https://github.com/openjdk/jdk11u/blame/518c6c5dd04dda28d9468e89cc9e322b72fcbcd3/make/lib/Awt2dLibraries.gmk


Progress

  • Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • JDK-8261170 needs maintainer approval
  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue

Issue

  • JDK-8261170: Upgrade to FreeType 2.10.4 (Bug - P3 - Requested) ⚠️ Issue is already resolved. Consider making this a "backport pull request" by setting the PR title to Backport <hash> with the hash of the original commit. See Backports.

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk8u-dev.git pull/720/head:pull/720
$ git checkout pull/720

Update a local copy of the PR:
$ git checkout pull/720
$ git pull https://git.openjdk.org/jdk8u-dev.git pull/720/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 720

View PR using the GUI difftool:
$ git pr show -t 720

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jdk8u-dev/pull/720.diff

Using Webrev

Link to Webrev Comment

Without

index 00d35a69844..3464eb15e88 100644
--- a/jdk/make/lib/Awt2dLibraries.gmk
+++ b/jdk/make/lib/Awt2dLibraries.gmk
@@ -541,6 +541,7 @@ else
          E_STATEMENT_NOT_REACHED \
          E_END_OF_LOOP_CODE_NOT_REACHED, \
       DISABLED_WARNINGS_microsoft := 4267 4244 4312, \
+      DISABLED_WARNINGS_gcc := implicit-fallthrough, \
       LDFLAGS := $(LDFLAGS_JDKLIB) \
           $(call SET_SHARED_LIBRARY_ORIGIN), \
   ))

which needs
openjdk/jdk11u@f74d0ae#diff-a634b106e57d9efbd1270664b8b79b2048b035a109b6f5220c4d39a4293d4458
and few others:
https://github.com/openjdk/jdk11u/blame/518c6c5dd04dda28d9468e89cc9e322b72fcbcd3/make/lib/Awt2dLibraries.gmk
@bridgekeeper
Copy link

bridgekeeper bot commented Nov 14, 2025

👋 Welcome back jvanek! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk
Copy link

openjdk bot commented Nov 14, 2025

❗ This change is not yet ready to be integrated.
See the Progress checklist in the description for automated requirements.

@judovana
Copy link
Contributor Author

judovana commented Nov 14, 2025

runtime/containers/docker/TestCPUAwareness.java from linux x64 nor gc/6581734/Test6581734.java
gc/concurrentMarkSweep/SystemGCOnForegroundCollector.java on linux i686 does not looks related. Am running it locally, and wills tart full multi paltform/multi OS QA in Monday. Any inputs welcomed, especially about the 8199639: Introduce SetupJdkLibrary and SetupJdkExecutable.

@judovana
Copy link
Contributor Author

In future updates, following changes to build happens:

  • 8222362: Upgrade to Freetype 2.10.0
index bad68c7d3e2..9c7c251779f 100644
--- a/make/lib/Awt2dLibraries.gmk
+++ b/make/lib/Awt2dLibraries.gmk
@@ -503,6 +503,8 @@ else
   LIBFREETYPE_CFLAGS := -I$(BUILD_LIBFREETYPE_HEADER_DIRS)
   ifeq ($(OPENJDK_TARGET_OS), windows)
     LIBFREETYPE_LIBS := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfreetype/freetype.lib
+    # freetype now requires you to manually define this (see ftconfig.h)
+    BUILD_LIBFREETYPE_CFLAGS += -DDLL_EXPORT
   else
     LIBFREETYPE_LIBS := -lfreetype
   endif
@@ -516,8 +518,8 @@ else
       DISABLED_WARNINGS_solstudio := \
          E_STATEMENT_NOT_REACHED \
          E_END_OF_LOOP_CODE_NOT_REACHED, \
-      DISABLED_WARNINGS_microsoft := 4267 4244 4312 4819, \
-      DISABLED_WARNINGS_gcc := implicit-fallthrough, \
+      DISABLED_WARNINGS_microsoft := 4018 4267 4244 4312 4819, \
+      DISABLED_WARNINGS_gcc := implicit-fallthrough cast-function-type bad-function-cast, \
       LDFLAGS := $(LDFLAGS_JDKLIB) \
           $(call SET_SHARED_LIBRARY_ORIGIN), \
   ))
  • 8306881: Update FreeType to 2.13.0
index 19ef7ba0410..fecbb248a7c 100644
--- a/make/lib/Awt2dLibraries.gmk
+++ b/make/lib/Awt2dLibraries.gmk
@@ -527,6 +527,7 @@ else
          E_END_OF_LOOP_CODE_NOT_REACHED, \
       DISABLED_WARNINGS_microsoft := 4018 4267 4244 4312 4819, \
       DISABLED_WARNINGS_gcc := implicit-fallthrough cast-function-type bad-function-cast, \
+      DISABLED_WARNINGS_clang := missing-declarations, \
       LDFLAGS := $(LDFLAGS_JDKLIB) \
           $(call SET_SHARED_LIBRARY_ORIGIN), \
   ))

and side one:

  • 8324347: Enable "maybe-uninitialized" warning for FreeType
index 73bb9325194..37f35dd3214 100644
--- a/make/lib/Awt2dLibraries.gmk
+++ b/make/lib/Awt2dLibraries.gmk
@@ -516,7 +516,6 @@ else
     LIBFREETYPE_LIBS := -lfreetype
   endif
 
-  # gcc_ftobjs.c := maybe-uninitialized required for GCC 7 builds.
   $(eval $(call SetupJdkLibrary, BUILD_LIBFREETYPE, \
       NAME := freetype, \
       OPTIMIZATION := HIGHEST, \
@@ -529,7 +528,6 @@ else
       DISABLED_WARNINGS_microsoft := 4018 4267 4244 4312 4819, \
       DISABLED_WARNINGS_gcc := implicit-fallthrough cast-function-type bad-function-cast, \
       DISABLED_WARNINGS_clang := missing-declarations, \
-      DISABLED_WARNINGS_gcc_ftobjs.c := maybe-uninitialized, \
       LDFLAGS := $(LDFLAGS_JDKLIB) \
           $(call SET_SHARED_LIBRARY_ORIGIN), \
   ))

@gnu-andrew
Copy link
Member

gnu-andrew commented Nov 19, 2025

I think we may need to merge this with at least 8222362: "Upgrade to Freetype 2.10.0" as the 2.9.1 is not public and so Skara can't pick it up as a backport. As long as both bugs are credited and in separate commits I'm fine with this.

As to the warning flags, we should just add them as CFLAGS. The -DDLL_EXPORT is actually already there. It should be easy enough to just add things like BUILD_LIBFREETYPE_CFLAGS += -Wno-implicit-fallthrough when on Linux. However, I'm not sure we even need them on 8u - at least not immediately - as I don't think it builds with warnings as errors for the JDK code as it stands.

@judovana
Copy link
Contributor Author

Hi @gnu-andrew ! Sure thing, I tried all the backports up to 13, and they apply moreover cleanly. So its ok for me to add individual commits, each with one freetype bump here, up to 2.10 as you suggests.

Thanx a lot for guidance on flags, Thats exactly what I htough, an holed you guys will vote for. I will apply the 2.10 now, and ignore the makefiles changes. If my QA will fail, will elaborate on them one by one as you suggested.

ok?

@judovana judovana changed the title 8203367: Upgrade to freetype 2.9.1 8222362: Upgrade to Freetype 2.10.0 Nov 19, 2025
@judovana
Copy link
Contributor Author

Ok, now updated to 2.10. As noted before, umiteed hunks were:

--- jdk/make/lib/Awt2dLibraries.gmk
+++ jdk/make/lib/Awt2dLibraries.gmk
@@ -503,6 +503,8 @@ else
   LIBFREETYPE_CFLAGS := -I$(BUILD_LIBFREETYPE_HEADER_DIRS)
   ifeq ($(OPENJDK_TARGET_OS), windows)
     LIBFREETYPE_LIBS := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfreetype/freetype.lib
+    # freetype now requires you to manually define this (see ftconfig.h)
+    BUILD_LIBFREETYPE_CFLAGS += -DDLL_EXPORT
   else
     LIBFREETYPE_LIBS := -lfreetype
   endif
@@ -516,8 +518,8 @@ else
       DISABLED_WARNINGS_solstudio := \
          E_STATEMENT_NOT_REACHED \
          E_END_OF_LOOP_CODE_NOT_REACHED, \
-      DISABLED_WARNINGS_microsoft := 4267 4244 4312 4819, \
-      DISABLED_WARNINGS_gcc := implicit-fallthrough, \
+      DISABLED_WARNINGS_microsoft := 4018 4267 4244 4312 4819, \
+      DISABLED_WARNINGS_gcc := implicit-fallthrough cast-function-type bad-function-cast, \
       LDFLAGS := $(LDFLAGS_JDKLIB) \
           $(call SET_SHARED_LIBRARY_ORIGIN), \
   ))

@openjdk openjdk bot added the rfr Pull request is ready for review label Nov 19, 2025
@mlbridge
Copy link

mlbridge bot commented Nov 19, 2025

Webrevs

@judovana
Copy link
Contributor Author

So far the testinmg is gooing good. As for GHA:
Linux 86 and x64 runtime/containers/docker/TestCPUAwareness.java
macos x64: many com/sun/jdi/ ... does not seem to be realted.

Will be back in Monday after I run our local QA. If all is good, will add another layer(s)

@openjdk openjdk bot added the approval Requires approval; will be removed when approval is received label Nov 20, 2025
@judovana judovana changed the title 8222362: Upgrade to Freetype 2.10.0 8227324: Upgrade to freetype 2.10.1 Nov 20, 2025
@judovana judovana changed the title 8227324: Upgrade to freetype 2.10.1 8247867: Upgrade to freetype 2.10.2 Nov 20, 2025
@judovana judovana changed the title 8247867: Upgrade to freetype 2.10.2 8261170: Upgrade to freetype 2.10.4 Nov 20, 2025
@openjdk openjdk bot changed the title 8261170: Upgrade to freetype 2.10.4 8261170: Upgrade to FreeType 2.10.4 Nov 20, 2025
@judovana
Copy link
Contributor Author

judovana commented Nov 20, 2025

Hello! On
8203367: Upgrade to freetype 2.9.1 - I run buildability and full jtregs on on x64 linux (passed except few known trouble making tests)
8222362: Upgrade to Freetype 2.10.0 - - I run buildability on x64 win+linux, aarrch64 + ppc64 linux and quite a lot of tests we usually run in IBM (again on x64 win+linux, aarrch64 + ppc64 linux); passed buildability, tests still run
8227324: Upgrade to freetype 2.10.1 - I run buildability and jtregs tier1 on x64 linux ; passed
8247867: Upgrade to freetype 2.10.2 - I run buildability and jtregs tier1 on x64 linux ; passed
8261170: Upgrade to freetype 2.10.4 - I run buildability and jtregs tier1 on x64 linux ; passed . Will run "full qa" as for 2.10.0 , once it is finished.

Done and out for now.

@judovana
Copy link
Contributor Author

The sec_infra are failing with

 security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#digicerttlseccrootg5 
security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#digicerttlsrsarootg5 
security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#quovadisrootca1g3 
security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#quovadisrootca2g3 
security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#quovadisrootca3g3 

Several jrtreg failures with runtime/containers/docker/TestCPUAwareness.java

Otherwise GHas are good.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approval Requires approval; will be removed when approval is received rfr Pull request is ready for review

Development

Successfully merging this pull request may close these issues.

2 participants