-
-
Notifications
You must be signed in to change notification settings - Fork 301
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
Native Image CI job #970
Native Image CI job #970
Conversation
Example builds can be found here: https://github.com/KevinRoebert/signal-cli/actions/runs/2460031442 |
301ca82
to
bd2d0f8
Compare
Currently no Windows support. GraalVM in version 22.1.0 has a bug on windows. See oracle/graal#4502
bd2d0f8
to
3181ebf
Compare
Thanks, I think it would be good to have it a bit more similar to the repackage-native-libs.yml job |
And what steps do you mean specifically? For example, I tried to use the same signal-client builds (even the same job) as from the |
jobs: | ||
native-image: | ||
env: | ||
LIBSIGNAL_VERSION: 0.17.0 |
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.
would be good to have the libsignal version determined automatically, like it's done in https://github.com/AsamK/signal-cli/blob/master/.github/workflows/repackage-native-libs.yml#L40
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.
How to do this without downloading the packed version? Can I just read it from a file or gradle property?
Or just using always the latest version?
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.
Where does the libsignal-client-<version>.jar
file come from? Can I download it individually or find it in the repo, so I don't have to download a build every time just to get the version and then build the native image?
# Add libs | ||
- name: Add lib on *nix x86 | ||
run: | | ||
curl -Lo /tmp/libsignal_jni.so.tar.gz "https://github.com/exquo/signal-libs-build/releases/download/libsignal-client_v${LIBSIGNAL_VERSION}/libsignal_jni.so-v${LIBSIGNAL_VERSION}-x86_64-unknown-linux-gnu.tar.gz" |
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.
any reason why exquo's libs are used here and not the official builds, like it's done in https://github.com/AsamK/signal-cli/blob/master/.github/workflows/repackage-native-libs.yml#L51
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.
I tried to use the same signal-client builds (even the same job) as from the repackage-native-libs.yml
. However, this was not properly included in the native image.
-- Reason: I do not know.
Addresses #956. Windows can currently not be built due to a bug in GraalVM 22.1.0 (oracle/graal#4502).