@@ -95,18 +95,24 @@ jobs:
95
95
runs-on : ${{matrix.os}}
96
96
strategy :
97
97
matrix :
98
- os : [ubuntu-latest, macos-latest]
98
+ os : [ubuntu-latest, ubuntu-24.04-arm, macos-latest]
99
99
steps :
100
100
- uses : actions/checkout@v4
101
101
102
102
- name : Test expectations
103
103
run : cd bindgen-tests/tests/expectations && cargo test
104
104
105
105
test :
106
- runs-on : ${{matrix.os}}
106
+ runs-on : ${{matrix.platform. os}}
107
107
strategy :
108
108
matrix :
109
- os : [ubuntu-latest]
109
+ platform :
110
+ - os : ubuntu-latest
111
+ libtinfo : libtinfo5_6.3-2ubuntu0.1_amd64.deb
112
+ ubuntu_repo : https://mirrors.kernel.org/ubuntu/pool/universe/n/ncurses/
113
+ - os : ubuntu-24.04-arm
114
+ libtinfo : libtinfo5_6.3-2ubuntu0.1_arm64.deb
115
+ ubuntu_repo : https://ports.ubuntu.com/ubuntu-ports/pool/universe/n/ncurses/
110
116
llvm_version : ["9.0", "16.0"]
111
117
release_build : [0, 1]
112
118
no_default_features : [0, 1]
@@ -118,14 +124,18 @@ jobs:
118
124
include :
119
125
# Test with extra asserts + docs just with latest llvm versions to
120
126
# prevent explosion
121
- - os : ubuntu-latest
127
+ - platform :
128
+ os : ubuntu-latest
129
+ libtinfo : libtinfo5_6.3-2ubuntu0.1_amd64.deb
130
+ ubuntu_repo : https://mirrors.kernel.org/ubuntu/pool/universe/n/ncurses/
122
131
llvm_version : " 16.0"
123
132
release_build : 0
124
133
no_default_features : 0
125
134
feature_extra_asserts : 1
126
135
127
136
# Ensure stuff works on macos too
128
- - os : macos-latest
137
+ - platform :
138
+ os : macos-latest
129
139
llvm_version : " 16.0"
130
140
release_build : 0
131
141
no_default_features : 0
@@ -138,22 +148,22 @@ jobs:
138
148
with :
139
149
toolchain : stable
140
150
- name : Install libtinfo
141
- if : matrix.os == 'ubuntu-latest'
151
+ if : startsWith( matrix.platform.os, 'ubuntu')
142
152
run : |
143
- wget https://mirrors.kernel.org/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.1_amd64.deb
144
- sudo dpkg -i libtinfo5_6.3-2ubuntu0.1_amd64.deb
153
+ wget ${{matrix.platform.ubuntu_repo}}${{matrix.platform.libtinfo}}
154
+ sudo dpkg -i ${{matrix.platform.libtinfo}}
145
155
- name : Install LLVM and Clang
146
156
147
157
with :
148
158
version : ${{matrix.llvm_version}}
149
159
- name : Run all the tests
150
160
env :
151
- GITHUB_ACTIONS_OS : ${{matrix.os}}
161
+ GITHUB_ACTIONS_OS : ${{matrix.platform. os}}
152
162
BINDGEN_RELEASE_BUILD : ${{matrix.release_build}}
153
163
BINDGEN_FEATURE_RUNTIME : ${{matrix.feature_runtime}}
154
164
BINDGEN_FEATURE_EXTRA_ASSERTS : ${{matrix.feature_extra_asserts}}
155
165
BINDGEN_NO_DEFAULT_FEATURES : ${{matrix.no_default_features}}
156
- BINDGEN_RUST_FOR_LINUX_TEST : ${{matrix.os == 'ubuntu-latest' && matrix.llvm_version == '16.0' && matrix.feature_extra_asserts == 0 && 1 || 0}}
166
+ BINDGEN_RUST_FOR_LINUX_TEST : ${{startsWith( matrix.platform.os, 'ubuntu') && matrix.llvm_version == '16.0' && matrix.feature_extra_asserts == 0 && 1 || 0}}
157
167
run : ./ci/test.sh
158
168
159
169
test-book :
0 commit comments