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-62126] Reverse dependency between svm core and svm configure projects. #10905

Merged
merged 6 commits into from
Mar 22, 2025

Conversation

graalvmbot
Copy link
Collaborator

This PR is best reviewed commit-by-commit (though builds between commits likely do not work; this was a large change and my goal was to make it reviewable).

In order to do tracing from a native image, core needs access to ConfigurationSet and related classes. On master, configure depends on core, which prevents us from adding a dependency in the other direction. This change refactors the projects to break the dependency and adds a dependency from core to configure.

Essentially:

  • If a class is needed by both core and configure, we move it from com.oracle.svm.core.* to com.oracle.svm.configure (e.g., com.oracle.svm.core.configure.ConfigurationFile -> com.oracle.svm.configure.ConfigurationFile).
  • If a class is needed by additional classes, we move it to com.oracle.svm.util (e.g., TypeResult).

I had to also extract some logic out of core if a class could not be wholesale moved (e.g., NativeImageResourcePathRepresentation, GlobUtils).

There were also some places that configure was depending on hosted options like TreatAllTypeReachableConditionsAsTypeReached; I have removed those accesses and instead require the flag to be supplied as a parameter.

@oracle-contributor-agreement oracle-contributor-agreement bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Mar 21, 2025
@graalvmbot graalvmbot closed this Mar 22, 2025
@graalvmbot graalvmbot deleted the mdsouza/GR-62126-move-config-package branch March 22, 2025 15:53
@graalvmbot graalvmbot merged commit 6713c56 into master Mar 22, 2025
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OCA Verified All contributors have signed the Oracle Contributor Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants