JDK-8278260 : JavaFX shared libraries not stripped on Linux or macOS
  • Type: Bug
  • Component: javafx
  • Sub-Component: build
  • Affected Version: 8,openjfx11,openjfx17
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2021-12-04
  • Updated: 2022-07-07
  • Resolved: 2021-12-16
Description
The JavaFX shared libraries on Linux (.so files) and macOS (.dylib files) include local symbols, even for Release builds. The build should stripped local symbols from the .so or .dylib files when building with "gradle -PCONF=Release".

This can be done by running "strip -x" on the shared libraries after linking.
Comments
A pull request was submitted for review. URL: https://git.openjdk.java.net/jfx11u/pull/71 Date: 2022-02-16 13:39:59 +0000
16-02-2022

A pull request was submitted for review. URL: https://git.openjdk.java.net/jfx17u/pull/31 Date: 2022-02-11 16:48:27 +0000
11-02-2022

Changeset: 1ebf7a24 Author: Kevin Rushforth <kcr@openjdk.org> Date: 2021-12-16 13:07:09 +0000 URL: https://git.openjdk.java.net/jfx/commit/1ebf7a24144b198e62b9b343821fdb155b9d703e
16-12-2021

This should be done for all shared libraries in the javafx.graphics, javafx.media, and javafx.web modules. The jfxwebkit library, in particular, is much larger than it needs to be. Linux: libjfxwebkit.so: 105 MB (unstripped) libjfxwebkit.so: 87 MB (strip -x) macOS: libjfxwebkit.dylib: 96 MB (unstripped) libjfxwebkit.dylib: 70 MB (strip -x)
04-12-2021