-
Notifications
You must be signed in to change notification settings - Fork 461
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
8227808: Make GTK3 libraries mandatory for building on Linux #61
Conversation
👋 Welcome back arapte! A progress list of the required criteria for merging this PR into |
Webrevs
|
def libsGTK3 = properties.getProperty("libsGTK3") | ||
if (cflagsGTK3 && libsGTK3) { | ||
gtk3CCFlags.addAll(cflagsGTK3.split(" ")) | ||
gtk3LinkFlags.addAll(libsGTK3.split(" ")) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here only variable names are changed to make them similar to the names used for gtk2 code.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works as expected. I recommend removing gtk-specific flags in the launcher.
Hi Johan, The PR is updated with this change, please take a look. |
@arapte This change can now be integrated. The commit message will be:
Since the source branch of this PR was last updated there have been 7 commits pushed to the
Since there are no conflicts, your changes will automatically be rebased on top of the above commits when integrating. If you prefer to do this manually, please merge
|
This will also need a second review from @johanvos |
/integrate |
@arapte The following commits have been pushed to master since your change was applied:
Your commit was automatically rebased without conflicts. Pushed as commit 4e005e4. |
Mailing list message from Ambarish Rapte on openjfx-dev: Changeset: 4e005e4 8227808: Make GTK3 libraries mandatory for building on Linux Reviewed-by: jvos, kcr ! buildSrc/linux.gradle |
Need for the change [JDK-8227808]:
Currently GTK3 is the default on Linux. However, there is build logic that will skip building glassgtk3 if the gtk3 development libraries are not installed. This creates a situation where the build will succeed, but the resulting JavaFX library will fail to run unless you explicitly force GTK2 with "-Djdk.gtk.version=2".
How to verify the change:
On a Linux system without gtk2 and gtk3 packages,
Clone jfx and run gradle sdk.
-> Build should fail with an error for missing GTK3 packages.
Install gtk3 packages, remove build directory and run gradle clean sdk.
-> Build should fail with an error for missing GTK2 packages.
Install gtk2 packages, remove build directory and run gradle clean sdk.
-> Build should finish without any error.
Build verification:
Run a JavaFX application with -Djdk.gtk.verbose=true
Verify the verbose message, the default glassgtk3 library should be used.
Run a JavaFX application with -Djdk.gtk.verbose=true -Djdk.gtk.version=2
Verify the verbose message, glassgtk2 library should be used.
Run a JavaFX application with -Djdk.gtk.verbose=true -Djdk.gtk.version=3
Verify the verbose message, glassgtk3 library should be used.
Progress
Issue
JDK-8227808: Make GTK3 libraries mandatory for building on Linux
Approvers