30
30
- run :
31
31
command : make go-lint
32
32
33
+ build_and_test_aarch64_linux_cgo_bindings :
34
+ parameters :
35
+ run_leak_detector :
36
+ type : boolean
37
+ default : true
38
+ machine :
39
+ image : ubuntu-2004:current
40
+ resource_class : arm.large
41
+ working_directory : ~/go/src/github.com/filecoin-project/filecoin-ffi
42
+ steps :
43
+ - configure_environment_variables
44
+ - prepare
45
+ - build_project
46
+ - restore_parameter_cache
47
+ - obtain_filecoin_parameters
48
+ - save_parameter_cache
49
+ - run : cd rust && rustup target add wasm32-unknown-unknown
50
+ - run_tests :
51
+ run_leak_detector : << parameters.run_leak_detector >>
52
+
33
53
build_and_test_linux_cgo_bindings :
34
54
parameters :
35
55
run_leak_detector :
@@ -68,12 +88,20 @@ jobs:
68
88
- run : cd rust && cargo install cargo-lipo
69
89
- build_project
70
90
- compile_tests
71
- publish_linux_staticlib :
91
+ publish_linux_x86_64_staticlib :
72
92
executor : golang
73
93
steps :
74
94
- configure_environment_variables
75
95
- prepare
76
96
- publish_release
97
+ publish_linux_aarch64_staticlib :
98
+ machine :
99
+ image : ubuntu-2004:current
100
+ resource_class : arm.large
101
+ steps :
102
+ - configure_environment_variables
103
+ - prepare
104
+ - publish_release
77
105
publish_darwin_staticlib :
78
106
macos :
79
107
xcode : " 12.5.1"
@@ -167,7 +195,9 @@ workflows:
167
195
- go_lint
168
196
- build_and_test_linux_cgo_bindings :
169
197
run_leak_detector : false
170
- - publish_linux_staticlib
198
+ - build_and_test_aarch64_linux_cgo_bindings
199
+ - publish_linux_x86_64_staticlib
200
+ - publish_linux_aarch64_staticlib
171
201
- build_darwin_cgo_bindings
172
202
- publish_darwin_staticlib
173
203
@@ -221,8 +251,8 @@ commands:
221
251
command : |
222
252
cd rust
223
253
224
- TARBALL_PATH="/tmp/${CIRCLE_PROJECT_REPONAME}-$(uname)-standard.tar.gz"
225
- RELEASE_NAME="${CIRCLE_PROJECT_REPONAME}-$(uname)-standard"
254
+ TARBALL_PATH="/tmp/${CIRCLE_PROJECT_REPONAME}-$(uname)-$(uname -m)- standard.tar.gz"
255
+ RELEASE_NAME="${CIRCLE_PROJECT_REPONAME}-$(uname)-$(uname -m)- standard"
226
256
227
257
# Note: the blst dependency uses the portable configuration for maximum compatibility
228
258
./scripts/build-release.sh filcrypto $(cat ./rust-toolchain) build --verbose --no-default-features --features multicore-sdr,opencl,blst-portable
@@ -233,7 +263,7 @@ commands:
233
263
command : |
234
264
cd rust
235
265
236
- TARBALL_PATH="/tmp/${CIRCLE_PROJECT_REPONAME}-$(uname)-optimized.tar.gz"
266
+ TARBALL_PATH="/tmp/${CIRCLE_PROJECT_REPONAME}-$(uname)-$(uname -m)- optimized.tar.gz"
237
267
RUSTFLAGS="-C target-feature=$(cat rustc-target-features-optimized.json | jq -r '.[].rustc_target_feature' | tr '\n' ',')"
238
268
239
269
./scripts/build-release.sh filcrypto $(cat ./rust-toolchain) build --verbose --no-default-features --features multicore-sdr,opencl
0 commit comments