-
-
Notifications
You must be signed in to change notification settings - Fork 156
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
Add riscv64-linux support #491
Conversation
The CI check is finished but no linux build. Am I doing anything wrong? Or is there anyway I can trigger it? 🤔 |
Thanks for the pull request & welcome to the project! The error is in the GitHub Actions panel 😭
We've hit the GitHub limit for a matrix. This reveals my main concern about this change — this project already builds and publishes a lot of artifacts and there needs to be clear demand for additions. |
Regarding the GitHub matrix limit.. we're bound to encounter this regardless. We'll need to add some sort of matrix sharding anyway. |
I implemented sharding, but also added the requisite labels to your pull request to run a subset of our CI matrix. |
We are Arch Linux RISC-V packagers. Some packages, like bazel and uv, require a python-build-standalone artifact when building or testing. Adding the riscv64 architecture for this project would be a great help for our packaging! |
d9b0285
to
3246faa
Compare
cpython-unix/build.py
Outdated
@@ -52,6 +52,7 @@ | |||
TARGETS_CONFIG = SUPPORT / "targets.yml" | |||
|
|||
LINUX_ALLOW_SYSTEM_LIBRARIES = { | |||
"atomic", |
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.
We might need to make this conditional
See
We'll discuss whether or not we're comfortable maintaining this as a team and get back to you. |
Hoping for good news! Adding RISC-V support is a forward-looking investment, as its open-source architecture and rapidly growing ecosystem position it to surpass like PPC and s390x, ensuring broader adoption and future-proofing the project. I'd like to (co-)maintain the riscv architecture if it is an option for you. |
Added separate Dockerfiles for riscv64 as suggested by #219 (comment). RISC-V needs `atomic` linked which is added to `LINUX_ALLOW_SYSTEM_LIBRARIES`. Tested locally with `./build-linux.py --target-triple riscv64-unknown-linux-gnu --python cpython-{3.9,3.10,3.11,3.12,3.13,3.14}` and all build fine.
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.
Thanks for the contribution :)
Added separate Dockerfiles for riscv64 as suggested by #219 (comment).
RISC-V needs
atomic
linked which is added toLINUX_ALLOW_SYSTEM_LIBRARIES
.Tested locally with
./build-linux.py --target-triple riscv64-unknown-linux-gnu --python cpython-{3.9,3.10,3.11,3.12,3.13,3.14}
and all build fine.CI is added but not tested yet. I'd like the PR to test itself :P
Closes #388