Skip to content
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

[GR-60173] Register custom module-info compilation participant for JDK builds without JMODs #10161

Closed
wants to merge 2 commits into from

Conversation

jerboaa
Copy link
Collaborator

@jerboaa jerboaa commented Nov 26, 2024

With JEP 493, part of JDK 24, it's possible to have JDK builds without the jmods folder. Currently substratevm builds assume jmods are always present. This patch adds an extension to mx so as to produce custom javac args when specific substratevm dependencies get compiled.

All of this is activated only when --no-jlinking option is being used. It's a no-op for regular GraalVM builds.

This patch depends on (which adds the needed abstractions to mx):
graalvm/mx#287

Edit: mx version 7.35.1 has the needed dependency. This is what 485f2eb updates to.

Closes: graalvm#808

@jerboaa jerboaa force-pushed the add_upgrade_module_jep493 branch from 1f0ed93 to ba73706 Compare November 26, 2024 19:54
@jerboaa jerboaa changed the title Register custom javac arg processor for JDK builds without JMODs Register custom module-info compilation participant for JDK builds without JMODs Nov 26, 2024
@jerboaa jerboaa force-pushed the add_upgrade_module_jep493 branch from a00e006 to 485f2eb Compare November 27, 2024 12:24
@jerboaa
Copy link
Collaborator Author

jerboaa commented Nov 27, 2024

@olpaw Could you help reviewing this please? Thank you!

@olpaw olpaw changed the title Register custom module-info compilation participant for JDK builds without JMODs [GR-60173] Register custom module-info compilation participant for JDK builds without JMODs Nov 28, 2024
@olpaw
Copy link
Member

olpaw commented Nov 28, 2024

@olpaw Could you help reviewing this please? Thank you!

I created an internal issue. Waiting for review comments to be addressed.

@jerboaa
Copy link
Collaborator Author

jerboaa commented Nov 28, 2024

Thanks for the review. Working on an update.

With JEP 493, part of JDK 24, it's possible to have JDK builds without
the `jmods` folder. Currently substratevm builds assume `jmods` are
always present. This patch adds an extension to mx so as to produce
custom javac args when specific substratevm dependencies get compiled.

All of this is activated only when `--no-jlinking` option is being
used.

This patch depends on (which adds the needed abstractions to mx):
graalvm/mx#287
@jerboaa jerboaa force-pushed the add_upgrade_module_jep493 branch from 485f2eb to b72ef98 Compare November 28, 2024 14:18
@jerboaa
Copy link
Collaborator Author

jerboaa commented Nov 28, 2024

@olpaw Updated the PR. Thanks again!

Copy link
Member

@olpaw olpaw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good. Integrating ... ⏳

@jerboaa
Copy link
Collaborator Author

jerboaa commented Dec 2, 2024

@olpaw Not sure if integration worked/works for this. Do I need to resolve the conflict or would that be counter-productive?

@olpaw
Copy link
Member

olpaw commented Dec 2, 2024

@olpaw Not sure if integration worked/works for this. Do I need to resolve the conflict or would that be counter-productive?

No worries. Already took care of that.

graalvmbot pushed a commit that referenced this pull request Dec 3, 2024
…K builds without JMODs #10161.

PullRequest: graal/19464
@olpaw
Copy link
Member

olpaw commented Dec 3, 2024

Your PR is on master:
7d964fa
Merge commit was:
36c69ed

@olpaw olpaw closed this Dec 3, 2024
@jerboaa
Copy link
Collaborator Author

jerboaa commented Dec 3, 2024

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
building native-image OCA Verified All contributors have signed the Oracle Contributor Agreement. redhat-interest
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[GraalVM for JDK 24] Add support for building based on a JDK that has JEP 493 enabled
3 participants