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

java_tools should have prebuilt Linux AArch64 binaries #173

Open
timothyg-stripe opened this issue Feb 20, 2024 · 5 comments
Open

java_tools should have prebuilt Linux AArch64 binaries #173

timothyg-stripe opened this issue Feb 20, 2024 · 5 comments
Labels
P2 We'll consider to work on this in future. (Assignee optional)

Comments

@timothyg-stripe
Copy link

Currently, only four platforms have prebuilt java_tools binaries (singlejar, ijar, etc.): linux, windows, darwin_x86_64, darwin_arm64.

"java_tools_linux": {
"mirror_url": "https://mirror.bazel.build/bazel_java_tools/releases/java/v13.4/java_tools_linux-v13.4.zip",
"github_url": "https://github.com/bazelbuild/java_tools/releases/download/java_v13.4/java_tools_linux-v13.4.zip",
"sha": "ba10f09a138cf185d04cbc807d67a3da42ab13d618c5d1ce20d776e199c33a39",
},
"java_tools_windows": {
"mirror_url": "https://mirror.bazel.build/bazel_java_tools/releases/java/v13.4/java_tools_windows-v13.4.zip",
"github_url": "https://github.com/bazelbuild/java_tools/releases/download/java_v13.4/java_tools_windows-v13.4.zip",
"sha": "fe2f88169696d6c6fc6e90ba61bb46be7d0ae3693cbafdf336041bf56679e8d1",
},
"java_tools_darwin_x86_64": {
"mirror_url": "https://mirror.bazel.build/bazel_java_tools/releases/java/v13.4/java_tools_darwin_x86_64-v13.4.zip",
"github_url": "https://github.com/bazelbuild/java_tools/releases/download/java_v13.4/java_tools_darwin_x86_64-v13.4.zip",
"sha": "4523aec4d09c587091a2dae6f5c9bc6922c220f3b6030e5aba9c8f015913cc65",
},
"java_tools_darwin_arm64": {
"mirror_url": "https://mirror.bazel.build/bazel_java_tools/releases/java/v13.4/java_tools_darwin_arm64-v13.4.zip",
"github_url": "https://github.com/bazelbuild/java_tools/releases/download/java_v13.4/java_tools_darwin_arm64-v13.4.zip",
"sha": "076a7e198ad077f8c7d997986ef5102427fae6bbfce7a7852d2e080ed8767528",
},
"java_tools": {
"mirror_url": "https://mirror.bazel.build/bazel_java_tools/releases/java/v13.4/java_tools-v13.4.zip",
"github_url": "https://github.com/bazelbuild/java_tools/releases/download/java_v13.4/java_tools-v13.4.zip",
"sha": "e025fd260ac39b47c111f5212d64ec0d00d85dec16e49368aae82fc626a940cf",
},

However, other parts of rules_java supports more platforms, like remotejdk21 which additionally supports Linux AArch64. It would be great if rules_java can distribute prebuilt Linux AArch64 binaries for java_tools, bringing it inline with JDK.

@hvadehra hvadehra added the P2 We'll consider to work on this in future. (Assignee optional) label Feb 28, 2024
@guw
Copy link

guw commented Mar 8, 2024

Is this a matter of enabling the build process to produce the binaries and release them or is the development work necessary to implement missing native support?

@timothyg-stripe
Copy link
Author

I'm guessing it's just a matter of enabling the build process. I haven't tried running it on AArch64, but I'd be surprised if there's any incompatibility.

@fmeum
Copy link
Contributor

fmeum commented Mar 8, 2024

Since GraalVM can't cross-compile native images, at least for full parity this would require having real Linux AArch64 machines in Bazel CI.

cc @meteorcloudy

@guw
Copy link

guw commented Mar 8, 2024

As a workaround for now use

PREBUILT_TOOLCHAIN_CONFIGURATION = dict(
with care

@meteorcloudy
Copy link
Member

We do have two Linux Arm64 machines on Bazel CI, one in the normal Bazel unstrusted org, another in the trusted org for release builds. You can use them by ubuntu2004_arm64 platform name.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P2 We'll consider to work on this in future. (Assignee optional)
Projects
None yet
Development

No branches or pull requests

5 participants