-
Notifications
You must be signed in to change notification settings - Fork 2
Add arm64 image #1
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 arm64 image #1
Conversation
| - "valhalla_python" | ||
| paths-ignore: | ||
| - '*.md' | ||
| pull_request: |
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.
Probably a good idea to have CI running for PRs...
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.
Yeah totally! Didn't ever expect PRs tbh😄 and I usually commit directly to master in this repo
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.
Can you also ignore md files?
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.
Do you want me to create yet another PR? :) Now I understand that it was merged by mistake 😄
| - name: Get branch name | ||
| run: | | ||
| echo "BRANCH=${GITHUB_REF##*/}" >> $GITHUB_ENV | ||
| echo "REPO_LOWERCASE=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV |
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.
Makes it properly working on forks: lowercase is needed because Docker doesn't allow any uppercase in repo name (SiarheiFedartsou/manylinux must be siarheifedartsou/manylinux)
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.
Ah I thought that was only the "docker" docker registry.
| docker push ghcr.io/${{ env.REPO_LOWERCASE }}:2_28_${{ matrix.platform }}_${{ env.BRANCH }} | ||
| docker image rm quay.io/pypa/manylinux_2_28_${{ matrix.platform }}:${{ github.sha }} | ||
| create_manifest: |
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.
Creates "magic" image which contains both architectures under the same name.
|
Btw @nilsnolde this is ready for review 😄 |
| create_manifest: | ||
| name: Create multi-arch manifest | ||
| runs-on: ubuntu-24.04 |
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.
Could do "-latest" where we can
| pushd "${FREEXL_ROOT}" | ||
| # Update config.guess and config.sub for aarch64 support | ||
| if [ -f /usr/share/automake-*/config.guess ]; then | ||
| cp -f /usr/share/automake-*/config.guess . |
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 I don't really understand. We're copying some config stuff from automake?
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.
Well, tbh it is something what I got as a tip from Claude Code when doing this(yes, these days it is how people actually do software engineering 😂 ). My understanding of what happens: these dependencies have these config.guess and config.sub in the root, but of quite old version which have no idea about aarch64, so we simply copy them from our own automake (which is modern enough to know about aarch64) to make it working. See this SO thread: https://stackoverflow.com/questions/4810996/how-to-resolve-configure-guessing-build-type-failure
| - "valhalla_python" | ||
| paths-ignore: | ||
| - '*.md' | ||
| pull_request: |
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.
Can you also ignore md files?
|
Oops actually just wanted to approve😅 Thanks for doing this. |
I will make a follow up PR 😂 |
Needed to be able to build bindings for arm64 based Linux... I tested it in my fork SiarheiFedartsou#1, seems to work