-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Build wheels for arm64 on linux/mac #2070
Conversation
d617254
to
9c9a8ec
Compare
@georgemarshall could you add to your PR description |
Change the build.yml to add aarch64/arm64 builds Closes giampaolo#1782, closes giampaolo#1945, closes giampaolo#1954, closes giampaolo#1966, closes giampaolo#1972, closes giampaolo#2090 Signed-off-by: George Marshall <[email protected]>
9c9a8ec
to
041f9cf
Compare
@ddelange ticket numbers have been added to link the issues. |
Hmmm @georgemarshall, the PR description isn't updated with "closes ..." notes etc, so issues will remain open if this PR is merged. I'm confused. I'd recommend naming this PR something more genal as well as this PR is more general than just Apple M1 support. For example "Build wheels for arm64 on linux/mac" |
CIBW_ARCHS_LINUX: "auto aarch64" | ||
CIBW_ARCHS_MACOS: "x86_64 universal2 arm64" |
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.
Notes from https://cibuildwheel.readthedocs.io/en/stable/faq/#universal2:
The dual-architecture universal2 has a few benefits, but a key benefit to a universal wheel is that a user can bundle these wheels into an application and ship a single binary.
However, if you have a large library, then you might prefer to ship the two single-arch wheels instead - x86_64 and arm64. In rare cases, you might want to build all three, but in that case, pip will not download the universal wheels, because it prefers the most specific wheel available.
Suggestion, remove universal2.
CIBW_ARCHS_LINUX: "auto aarch64" | |
CIBW_ARCHS_MACOS: "x86_64 universal2 arm64" | |
CIBW_ARCHS_LINUX: "auto aarch64" | |
CIBW_ARCHS_MACOS: "x86_64 arm64" |
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.
That came from the docs example for CIBW_ARCHS and is the default for auto
.
@mayeut It looks like all your PRs are ready:
Any hope to see this merged soon and unlock this new wheel architecture? Thank you so much! |
This question shall be directed to @giampaolo |
I believe this is forcing users to install Command Line Tools since there is no wheel available. |
arm64 wheels for macOS were added as of #2040. |
Thanks @giampaolo! it is not forcing install of Command Line Tools for my M1 anymore. It uses the wheel. 😃 |
Summary
Description
Change the build.yml to add aarch64/arm64 builds for M1 MacBooks. This covers both local and docker container use cases.
Closes #1782, closes #1945, closes #1954, closes #1966, closes #1972, closes #2090