-
Notifications
You must be signed in to change notification settings - Fork 212
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
Bump native-maven-plugin from 0.10.2 to 0.10.3 #1143
Conversation
The plugin introduced some "windows fix"[1] that causes current arg parsing to fail. Solution seems to be to split each arg in own line, but that introduced another set of challenges. [1] graalvm/native-build-tools#609
@gzm55 help please! The glibc patching test fails now, but this made me look in it more deeper and questions just grow... Your related commit: da20df0 We use GraalVM 22 to build (and release) mvnd, and I checked on my box GraalVM 22.0.2-graalce installation (Fedora 40 WS x86_64) the contents of the directory referenced from CI script
And CI script refers to files Can you help me here? |
Hi @cstamas , the following codes are used to patch the static libs using newer api, and the paths are fixed for ubuntu OS since the linux runner always runs on ubuntu-latest. The libs requiring patching are:
It works if github still provides ubuntu-20. but locking the runner os may introduce package conflicts on building process when the ubuntu-20 is dropped by other required tools. : patch common libraries
( find "$GRAALVM_HOME/lib/static/linux-amd64/glibc" -name '*.a'
ls -1 /lib/x86_64-linux-gnu/libz.a
ls -1 "$GRAALVM_HOME/lib/svm/clibraries/linux-amd64/libjvm.a"
ls -1 "$GRAALVM_HOME/lib/svm/clibraries/linux-amd64/liblibchelper.a"
) | while IFS= read -r input; do
output="client/target/graalvm-libs-for-glibc-2.12/$(basename -- "$input")"
objcopy --redefine-syms=client/src/main/resources/glibc/glibc.redef -- "$input" "$output" 2>/dev/null
done |
@cstamas from the failure output, it seems that the patched libs are all not linked when generating the native mvnd, no new glibc symbols are introduced by the new JVM. This pr tries to merge two lists from two profiles, but the |
@gzm55 Thanks for helping! Appending the arguments list seems solved. But you did not answer my original question: does the CI patching script needs any update or it is okay as it is? (for both, master and mvnd-1.x) TIA |
@gzm55 despite merged (just to make it move), can you pls review the CI script? |
@cstamas CI script for patching .a libs is still OK. i can list the .a files with fixed paths on a Ubuntu 24 box and graalvm-ce-java17-22.3.0:
the folder of lib/static/linux-amd64/glibc/ also exists, all .a libs under this folder are patched. |
Thanks! |
The plugin introduced some "windows fix"[1] that causes current arg parsing to fail. Solution seems to be to split each arg in own line, but that introduced another set of challenges.
[1] graalvm/native-build-tools#609
Supersedes #1133