6
6
on :
7
7
push :
8
8
branches :
9
- - ' master'
10
- - ' staging'
11
- - ' trying'
9
+ - ' **'
10
+ # - 'master'
11
+ # - 'staging'
12
+ # - 'trying'
12
13
tags :
13
14
# this is _not_ a regex, see: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet
14
15
- ' [0-9]+.[0-9]+.[0-9]+*'
38
39
strategy :
39
40
fail-fast : false
40
41
matrix :
41
- build : [linux-x64, macos-x64, macos-arm64, windows-x64, linux-aarch64]
42
42
include :
43
43
- build : linux-x64
44
44
os : ubuntu-18.04
@@ -47,44 +47,56 @@ jobs:
47
47
artifact_name : ' wasmer-linux-amd64'
48
48
cross_compilation_artifact_name : ' cross_compiled_from_linux'
49
49
run_integration_tests : true
50
+ - build : linux-musl-x64
51
+ os : ubuntu-18.04
52
+ rust : 1.48
53
+ target : x86_64-unknown-linux-musl
54
+ artifact_name : ' wasmer-linux-musl-amd64'
55
+ cross_compilation_artifact_name : ' cross_compiled_from_linux'
56
+ run_integration_tests : false
50
57
- build : macos-x64
51
58
os : macos-latest
52
59
rust : 1.48
53
60
llvm_url : ' https://github.com/wasmerio/llvm-custom-builds/releases/download/10.x/darwin-amd64.tar.gz'
54
61
artifact_name : ' wasmer-darwin-amd64'
55
62
cross_compilation_artifact_name : ' cross_compiled_from_mac'
56
63
run_integration_tests : true
57
- - build : macos-arm64
58
- os : macos-11.0
59
- rust : 1.49
60
- target : aarch64-apple-darwin
61
- artifact_name : ' wasmer-darwin-arm64'
64
+ # - build: macos-arm64
65
+ # os: macos-11.0
66
+ # rust: 1.49
67
+ # target: aarch64-apple-darwin
68
+ # artifact_name: 'wasmer-darwin-arm64'
62
69
- build : windows-x64
63
70
os : windows-latest
64
71
rust : 1.48
65
72
# llvm_url: 'https://github.com/wasmerio/llvm-custom-builds/releases/download/10.x/windows-amd64.tar.gz'
66
73
artifact_name : ' wasmer-windows-amd64'
67
74
cross_compilation_artifact_name : ' cross_compiled_from_win'
68
75
run_integration_tests : true
69
- - build : linux-aarch64
70
- os : [self-hosted, linux, ARM64]
71
- random_sccache_port : true
72
- rust : 1.48
73
- llvm_url : ' https://github.com/wasmerio/llvm-custom-builds/releases/download/10.x/linux-aarch64.tar.gz'
74
- artifact_name : ' wasmer-linux-aarch64'
75
- run_integration_tests : false
76
+ # - build: linux-aarch64
77
+ # os: [self-hosted, linux, ARM64]
78
+ # random_sccache_port: true
79
+ # rust: 1.48
80
+ # llvm_url: 'https://github.com/wasmerio/llvm-custom-builds/releases/download/10.x/linux-aarch64.tar.gz'
81
+ # artifact_name: 'wasmer-linux-aarch64'
82
+ # run_integration_tests: false
76
83
env :
77
84
CARGO_SCCACHE_VERSION : 0.2.14-alpha.0-parity
78
85
SCCACHE_AZURE_BLOB_CONTAINER : wasmerstoragesccacheblob
79
86
SCCACHE_AZURE_CONNECTION_STRING : ${{ secrets.SCCACHE_AZURE_CONNECTION_STRING }}
80
87
steps :
81
88
- uses : actions/checkout@v2
82
89
- name : Set up libstdc++ on Linux
90
+ if : matrix.build == 'linux-x64'
83
91
run : |
84
92
sudo apt-get update -y
85
93
sudo apt-get install -y --allow-downgrades libstdc++6=8.4.0-1ubuntu1~18.04
86
94
sudo apt-get install --reinstall g++-8
87
- if : matrix.os == 'ubuntu-18.04'
95
+ - name : Set up musl on Linux
96
+ if : matrix.build == 'linux-musl-x64'
97
+ run : |
98
+ sudo apt-get update -y
99
+ sudo apt-get install -y musl-dev musl-tools
88
100
- name : Install Rust ${{ matrix.rust }}
89
101
uses : actions-rs/toolchain@v1
90
102
with :
@@ -124,7 +136,6 @@ jobs:
124
136
~/.cargo/registry
125
137
~/.cargo/git
126
138
key : ${{ matrix.build }}-${{ matrix.target }}-cargo-${{ hashFiles('Cargo.lock') }}-v1
127
- # Install sccache
128
139
- uses : actions/cache@v2
129
140
with :
130
141
path : ${{ runner.tool_cache }}/cargo-sccache
@@ -171,22 +182,31 @@ jobs:
171
182
- name : Test
172
183
run : |
173
184
make test
174
- if : matrix.target != 'aarch64-apple-darwin'
185
+ if : matrix.target != 'aarch64-apple-darwin' && matrix.build != 'linux-musl-x64'
186
+ - name : Test (musl)
187
+ if : matrix.build == 'linux-musl-x64'
188
+ run : |
189
+ LIBC=musl WASMER_CAPI_USE_SYSTEM_LIBFFI=1 make test
175
190
- name : Test C API
176
191
run : |
177
192
make test-capi
178
- if : matrix.os != 'windows-latest' && matrix.target != 'aarch64-apple-darwin' # we can't test yet on Apple Silicon or Windows
193
+ if : matrix.os != 'windows-latest' && matrix.target != 'aarch64-apple-darwin' && matrix.build != 'linux-musl-x64' # we can't test yet on Apple Silicon or Windows
179
194
- name : Build C API
180
195
run : |
181
196
make build-capi
182
- if : matrix.target != 'aarch64-apple-darwin'
197
+ if : matrix.target != 'aarch64-apple-darwin' && matrix.build != 'linux-musl-x64'
183
198
- name : Build C API (system libffi)
184
199
run : |
185
200
make build-capi-cranelift-system-libffi
186
201
if : matrix.target == 'aarch64-apple-darwin'
187
202
- name : Build Wasmer binary
203
+ if : matrix.build != 'linux-musl-x64'
188
204
run : |
189
205
make build-wasmer
206
+ - name : Build Wasmer binary (musl)
207
+ if : matrix.build == 'linux-musl-x64'
208
+ run : |
209
+ LIBC=musl WASMER_CAPI_USE_SYSTEM_LIBFFI=1 make build-wasmer
190
210
- name : Build Wapm binary
191
211
run : |
192
212
make build-wapm
@@ -241,7 +261,7 @@ jobs:
241
261
make test-integration
242
262
if : matrix.run_integration_tests && matrix.os != 'windows-latest'
243
263
- name : Cross compile from Linux
244
- if : matrix.os == 'ubuntu-18.04 '
264
+ if : matrix.build == 'linux-x64 '
245
265
shell : bash
246
266
run : |
247
267
ls target/release
0 commit comments