.cirrus.yml (2507B)
1 env: 2 ### cirrus config 3 CIRRUS_CLONE_DEPTH: 1 4 ### compiler options 5 HOST: 6 WRAPPER_CMD: 7 # Specific warnings can be disabled with -Wno-error=foo. 8 # -pedantic-errors is not equivalent to -Werror=pedantic and thus not implied by -Werror according to the GCC manual. 9 WERROR_CFLAGS: -Werror -pedantic-errors 10 MAKEFLAGS: -j4 11 BUILD: check 12 ### secp256k1 config 13 ECMULTWINDOW: auto 14 ECMULTGENPRECISION: auto 15 ASM: no 16 WIDEMUL: auto 17 WITH_VALGRIND: yes 18 EXTRAFLAGS: 19 ### secp256k1 modules 20 EXPERIMENTAL: no 21 ECDH: no 22 RECOVERY: no 23 SCHNORRSIG: no 24 ELLSWIFT: no 25 ### test options 26 SECP256K1_TEST_ITERS: 27 BENCH: yes 28 SECP256K1_BENCH_ITERS: 2 29 CTIMETESTS: yes 30 # Compile and run the tests 31 EXAMPLES: yes 32 33 cat_logs_snippet: &CAT_LOGS 34 always: 35 cat_tests_log_script: 36 - cat tests.log || true 37 cat_noverify_tests_log_script: 38 - cat noverify_tests.log || true 39 cat_exhaustive_tests_log_script: 40 - cat exhaustive_tests.log || true 41 cat_ctime_tests_log_script: 42 - cat ctime_tests.log || true 43 cat_bench_log_script: 44 - cat bench.log || true 45 cat_config_log_script: 46 - cat config.log || true 47 cat_test_env_script: 48 - cat test_env.log || true 49 cat_ci_env_script: 50 - env 51 52 linux_arm64_container_snippet: &LINUX_ARM64_CONTAINER 53 env_script: 54 - env | tee /tmp/env 55 build_script: 56 - DOCKER_BUILDKIT=1 docker build --file "ci/linux-debian.Dockerfile" --tag="ci_secp256k1_arm" 57 - docker image prune --force # Cleanup stale layers 58 test_script: 59 - 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" 60 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 76 77 task: 78 name: "ARM64: Linux (Debian stable), Valgrind" 79 persistent_worker: 80 labels: 81 type: arm64 82 env: 83 ECDH: yes 84 RECOVERY: yes 85 SCHNORRSIG: yes 86 ELLSWIFT: yes 87 WRAPPER_CMD: 'valgrind --error-exitcode=42' 88 SECP256K1_TEST_ITERS: 2 89 matrix: 90 - env: { CC: 'gcc' } 91 - env: { CC: 'clang' } 92 - env: { CC: 'gcc-snapshot' } 93 - env: { CC: 'clang-snapshot' } 94 << : *LINUX_ARM64_CONTAINER 95 << : *CAT_LOGS