Show how to build for Intel macOS on Cirrus CI
This commit is contained in:
@@ -59,10 +59,11 @@ Usage
|
|||||||
| AppVeyor | ✅ | ✅ | ✅ | | ✅² |
|
| AppVeyor | ✅ | ✅ | ✅ | | ✅² |
|
||||||
| CircleCI | ✅ | ✅ | | | ✅² |
|
| CircleCI | ✅ | ✅ | | | ✅² |
|
||||||
| Gitlab CI | ✅ | | | | ✅² |
|
| Gitlab CI | ✅ | | | | ✅² |
|
||||||
| Cirrus CI | ✅ | | ✅ | ✅ | ✅ |
|
| Cirrus CI | ✅ | ✅³ | ✅ | ✅ | ✅ |
|
||||||
|
|
||||||
<sup>¹ [Requires emulation](https://cibuildwheel.readthedocs.io/en/stable/faq/#emulation), distributed separately. Other services may also support Linux ARM through emulation or third-party build hosts, but these are not tested in our CI.</sup><br>
|
<sup>¹ [Requires emulation](https://cibuildwheel.readthedocs.io/en/stable/faq/#emulation), distributed separately. Other services may also support Linux ARM through emulation or third-party build hosts, but these are not tested in our CI.</sup><br>
|
||||||
<sup>² [Uses cross-compilation](https://cibuildwheel.readthedocs.io/en/stable/faq/#universal2). It is not possible to test `arm64` and the `arm64` part of a `universal2` wheel on this CI platform.</sup><br>
|
<sup>² [Uses cross-compilation](https://cibuildwheel.readthedocs.io/en/stable/faq/#universal2). It is not possible to test `arm64` and the `arm64` part of a `universal2` wheel on this CI platform.</sup><br>
|
||||||
|
<sup>³ [Uses cross-compilation](https://cibuildwheel.readthedocs.io/en/stable/faq/#universal2). Thanks to Rosetta 2 emulation, it is possible to test `x86_64` and both parts of a `universal2` wheel on this CI platform.</sup><br>
|
||||||
|
|
||||||
<!--intro-end-->
|
<!--intro-end-->
|
||||||
|
|
||||||
|
|||||||
@@ -81,6 +81,14 @@ Here's an example GitHub Actions workflow with a job that builds for Apple Silic
|
|||||||
{% include "../examples/github-apple-silicon.yml" %}
|
{% include "../examples/github-apple-silicon.yml" %}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Here's an example Cirrus CI workflow with a job that builds for macOS Intel through Rosetta 2 emulation and for Apple Silicon natively:
|
||||||
|
|
||||||
|
> .cirrus.yml
|
||||||
|
|
||||||
|
```yml
|
||||||
|
{% include "../examples/cirrus-ci-intel-mac.yml" %}
|
||||||
|
```
|
||||||
|
|
||||||
### Building non-native architectures using emulation {: #emulation}
|
### Building non-native architectures using emulation {: #emulation}
|
||||||
|
|
||||||
cibuildwheel supports building non-native architectures on Linux, via
|
cibuildwheel supports building non-native architectures on Linux, via
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
build_and_store_wheels: &BUILD_AND_STORE_WHEELS
|
||||||
|
install_cibuildwheel_script:
|
||||||
|
- python -m pip install cibuildwheel==2.9.0
|
||||||
|
run_cibuildwheel_script:
|
||||||
|
- cibuildwheel
|
||||||
|
wheels_artifacts:
|
||||||
|
path: "wheelhouse/*"
|
||||||
|
|
||||||
|
|
||||||
|
macos_task:
|
||||||
|
name: Build macOS x86_64 and arm64 wheels.
|
||||||
|
macos_instance:
|
||||||
|
image: ghcr.io/cirruslabs/macos-monterey-xcode
|
||||||
|
|
||||||
|
env:
|
||||||
|
PATH: /opt/homebrew/opt/python@3.10/bin:$PATH
|
||||||
|
CIBW_ARCHS_MACOS: x86_64 arm64
|
||||||
|
install_pre_requirements_script:
|
||||||
|
- brew install python@3.10
|
||||||
|
- ln -s python3 /opt/homebrew/opt/python@3.10/bin/python
|
||||||
|
<<: *BUILD_AND_STORE_WHEELS
|
||||||
Reference in New Issue
Block a user