@@ -58,38 +58,71 @@ linux_arm64_container_snippet: &LINUX_ARM64_CONTAINER
5858 test_script :
5959 - docker run --rm --mount "type=bind,src=./,dst=/ci_secp256k1" --env-file /tmp/env --replace --name "ci_secp256k1_arm" "ci_secp256k1_arm" bash -c "cd /ci_secp256k1/ && ./ci/ci.sh"
6060
61- task :
62- name : " ARM64: Linux (Debian stable)"
63- persistent_worker :
64- labels :
65- type : arm64
66- env :
67- ECDH : yes
68- RECOVERY : yes
69- SCHNORRSIG : yes
70- ELLSWIFT : yes
71- matrix :
72- # Currently only gcc-snapshot, the other compilers are tested on GHA with QEMU
73- - env : { CC: 'gcc-snapshot' }
74- << : *LINUX_ARM64_CONTAINER
75- << : *CAT_LOGS
61+ linux_armhf_container_snippet : &LINUX_ARMHF_CONTAINER
62+ env_script :
63+ - env | tee /tmp/env
64+ build_script :
65+ - DOCKER_BUILDKIT=1 docker build --file "ci/linux-debian.Dockerfile" --tag="ci_secp256k1_arm"
66+ - docker image prune --force # Cleanup stale layers
67+ test_script :
68+ - docker run --rm --mount "type=bind,src=./,dst=/ci_secp256k1" --env-file /tmp/env --replace --name "ci_secp256k1_arm" "ci_secp256k1_arm" bash -c "apt-get update && apt-get install --no-install-recommends -y valgrind:armhf && cd /ci_secp256k1/ && ./ci/ci.sh"
69+
70+ # task:
71+ # name: "ARM64: Linux (Debian stable)"
72+ # persistent_worker:
73+ # labels:
74+ # type: arm64
75+ # env:
76+ # ECDH: yes
77+ # RECOVERY: yes
78+ # SCHNORRSIG: yes
79+ # ELLSWIFT: yes
80+ # matrix:
81+ # # Currently only gcc-snapshot, the other compilers are tested on GHA with QEMU
82+ # - env: { CC: 'gcc-snapshot' }
83+ # << : *LINUX_ARM64_CONTAINER
84+ # << : *CAT_LOGS
85+
86+ # task:
87+ # name: "ARM64: Linux (Debian stable), Valgrind"
88+ # persistent_worker:
89+ # labels:
90+ # type: arm64
91+ # env:
92+ # ECDH: yes
93+ # RECOVERY: yes
94+ # SCHNORRSIG: yes
95+ # ELLSWIFT: yes
96+ # WRAPPER_CMD: 'valgrind --error-exitcode=42'
97+ # SECP256K1_TEST_ITERS: 2
98+ # matrix:
99+ # - env: { CC: 'gcc' }
100+ # - env: { CC: 'clang' }
101+ # - env: { CC: 'gcc-snapshot' }
102+ # - env: { CC: 'clang-snapshot' }
103+ # << : *LINUX_ARM64_CONTAINER
104+ # << : *CAT_LOGS
76105
77106task :
78- name : " ARM64 : Linux (Debian stable), Valgrind"
107+ name : " ARM32 : Linux (Debian stable), Valgrind"
79108 persistent_worker :
80109 labels :
81110 type : arm64
82111 env :
112+ HOST : ' arm-linux-gnueabihf'
83113 ECDH : yes
84114 RECOVERY : yes
85115 SCHNORRSIG : yes
86116 ELLSWIFT : yes
87117 WRAPPER_CMD : ' valgrind --error-exitcode=42'
88118 SECP256K1_TEST_ITERS : 2
89119 matrix :
90- - env : { CC: 'gcc' }
91- - env : { CC: 'clang' }
92- - env : { CC: 'gcc-snapshot' }
93- - env : { CC: 'clang-snapshot' }
94- << : *LINUX_ARM64_CONTAINER
120+ - env : { }
121+ - env : { EXPERIMENTAL: 'yes', ASM: 'arm32' }
122+ matrix :
123+ - env : { } # gcc
124+ - env : { CC: 'clang --target=arm-linux-gnueabihf', CCASFLAGS: "-Wa,-mthumb" }
125+ # - env: { CC: 'gcc-snapshot' } # FIXME multilib gcc?
126+ - env : { CC: 'clang-snapshot --target=arm-linux-gnueabihf', CCASFLAGS: "-Wa,-mthumb" }
127+ << : *LINUX_ARMHF_CONTAINER
95128 << : *CAT_LOGS
0 commit comments