-
Notifications
You must be signed in to change notification settings - Fork 6.2k
Start patching for support linux arm64 as a host OS #5377
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
base: master
Are you sure you want to change the base?
Conversation
kohnish
commented
Nov 13, 2024
- Fix isl pointed to deprecated url
- Add precompiled dependencies for linux aarch64 (still incomplete probably)
- Add Linux ARM 64 enum (still incomplete)
- Add aarch64 linux clang in konan.property (untested)
4u7
left a comment
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.
It seems verification-metadata.xml is updated manually. We have a section in the readme about dependency-verification.
https://github.com/JetBrains/kotlin?tab=readme-ov-file#dependency-verification
Thanks. Somehow nodejs is gone if I do it automatically, I'll investigate. In any case, I'm ok if this PR gets merged. I still haven't managed to compile on aarch64 linux. |
SvyatoslavScherbina
left a comment
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.
What is the status of this PR? Is it ready for review?
What is the scope of this PR?
Changes in toolchain_builder seem unrelated to supporting Linux/arm64 as a host OS.
| #!/bin/bash | ||
|
|
||
| set -eou pipefail | ||
| set -eo pipefail |
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.
What is the reason for this change?
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.
TOOLCHAIN_VERSION_SUFFIX is optional as you see and the script was failing
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.
This can and should be handled the same way as in run_container.sh:
TOOLCHAIN_VERSION_SUFFIX="${3:-""}"So, removing -u shouldn't even be required there.
it's ready to be merged as I mentioned. It's meant to "start" fixing something that is broken. Any change here is reaction to the build failure by following the documentation. |
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.
Changes in toolchain_builder are not necessary to support linux arm64 as a host OS: the built toolchain already exists, it is used for linux arm64 target support.
Change in HostManager doesn't seem to improve anything without actually supporting linux arm64 as a host. It would make sense as a part of a larger PR that actually does unblock anything.
An example of a meaningful contribution to linux arm64 host support: build the actual missing dependencies of the compiler (like LLVM and libffi) and check whether it works with them.
| #!/bin/bash | ||
|
|
||
| set -eou pipefail | ||
| set -eo pipefail |
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.
This can and should be handled the same way as in run_container.sh:
TOOLCHAIN_VERSION_SUFFIX="${3:-""}"So, removing -u shouldn't even be required there.
8852060 to
e327baa
Compare
* Fix isl pointed to deprecated url * Add precompiled dependencies for linux aarch64 * Add Linux ARM 64 enum (still incomplete)
