@@ -52,25 +52,45 @@ jobs:
52
52
strategy :
53
53
matrix :
54
54
build :
55
- - aarch64-linux-android
55
+ - android-aarch64
56
+ - linux-aarch64-gnu
57
+ - linux-aarch64-musl
58
+ - linux-armv7-gnueabihf
59
+ - linux-armv7-musleabihf
56
60
- linux-x64-gnu
57
61
- linux-x64-musl
62
+ - macos-aarch64
58
63
- macos-x64
59
64
- windows-x64-msvc
60
65
include :
66
+ - os : ubuntu-latest # default
61
67
- cargo : cargo # default; overwrite with `cross` if necessary
62
- - build : aarch64-linux-android
63
- os : ubuntu-latest
68
+ - build : android-aarch64
64
69
target : aarch64-linux-android
65
70
cargo : cross
71
+ - build : linux-aarch64-gnu
72
+ target : aarch64-unknown-linux-gnu
73
+ cargo : cross
74
+ - build : linux-aarch64-musl
75
+ target : aarch64-unknown-linux-musl
76
+ cargo : cross
77
+ - build : linux-armv7-gnueabihf
78
+ target : armv7-unknown-linux-gnueabihf
79
+ cargo : cross
80
+ - build : linux-armv7-musleabihf
81
+ target : armv7-unknown-linux-musleabihf
82
+ cargo : cross
66
83
- build : linux-x64-gnu
67
- os : ubuntu-latest
68
84
target : x86_64-unknown-linux-gnu
69
85
- build : linux-x64-musl
70
- os : ubuntu-latest
71
86
target : x86_64-unknown-linux-musl
87
+ - build : macos-aarch64
88
+ # Go back ot `macos-latest` after migration is complete
89
+ # See https://github.blog/changelog/2024-04-01-macos-14-sonoma-is-generally-available-and-the-latest-macos-runner-image/.
90
+ os : macos-14
91
+ target : aarch64-apple-darwin
72
92
- build : macos-x64
73
- os : macos-latest
93
+ os : macos-14
74
94
target : x86_64-apple-darwin
75
95
- build : windows-x64-msvc
76
96
os : windows-latest
@@ -86,13 +106,18 @@ jobs:
86
106
toolchain : stable
87
107
targets : ${{ matrix.target }}
88
108
89
- - name : Install musl-tools
90
- if : matrix.target == 'x86_64-unknown-linux-musl'
91
- run : sudo apt-get install -y --no-install-recommends musl-tools
92
-
93
109
- name : Install cross
94
110
if : matrix.cargo == 'cross'
95
- run : cargo install --git https://github.com/cross-rs/cross.git --rev 085092c cross
111
+ # The latest release of `cross` is not able to build/link for `aarch64-linux-android`
112
+ # See: https://github.com/cross-rs/cross/issues/1222
113
+ # This is fixed on `main` but not yet released. To avoid a breakage somewhen in the future
114
+ # pin the cross revision used to the latest HEAD at 04/2024.
115
+ # Go back to taiki-e/install-action once cross 0.3 is released.
116
+ uses : taiki-e/cache-cargo-install-action@v1
117
+ with :
118
+ tool : cross
119
+ git : https://github.com/cross-rs/cross.git
120
+ rev : 085092c
96
121
97
122
- name : Build release binary
98
123
shell : bash
0 commit comments