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