env: ### cirrus config CIRRUS_CLONE_DEPTH: 1 ### compiler options HOST: WRAPPER_CMD: # Specific warnings can be disabled with -Wno-error=foo. # -pedantic-errors is not equivalent to -Werror=pedantic and thus not implied by -Werror according to the GCC manual. WERROR_CFLAGS: -Werror -pedantic-errors MAKEFLAGS: -j4 BUILD: check ### secp256k1 config ECMULTWINDOW: auto ECMULTGENPRECISION: auto ASM: no WIDEMUL: auto WITH_VALGRIND: yes EXTRAFLAGS: ### secp256k1 modules EXPERIMENTAL: no ECDH: no RECOVERY: no SCHNORRSIG: no ELLSWIFT: no ### test options SECP256K1_TEST_ITERS: BENCH: yes SECP256K1_BENCH_ITERS: 2 CTIMETESTS: yes # Compile and run the tests EXAMPLES: yes # https://cirrus-ci.org/pricing/#compute-credits credits_snippet: &CREDITS # Don't use any credits for now. use_compute_credits: false cat_logs_snippet: &CAT_LOGS always: cat_tests_log_script: - cat tests.log || true cat_noverify_tests_log_script: - cat noverify_tests.log || true cat_exhaustive_tests_log_script: - cat exhaustive_tests.log || true cat_ctime_tests_log_script: - cat ctime_tests.log || true cat_bench_log_script: - cat bench.log || true cat_config_log_script: - cat config.log || true cat_test_env_script: - cat test_env.log || true cat_ci_env_script: - env linux_container_snippet: &LINUX_CONTAINER container: dockerfile: ci/linux-debian.Dockerfile # Reduce number of CPUs to be able to do more builds in parallel. cpu: 1 # Gives us more CPUs for free if they're available. greedy: true # More than enough for our scripts. memory: 2G task: name: "C++ -fpermissive (entire project)" << : *LINUX_CONTAINER env: CC: g++ CFLAGS: -fpermissive -g CPPFLAGS: -DSECP256K1_CPLUSPLUS_TEST_OVERRIDE WERROR_CFLAGS: ECDH: yes RECOVERY: yes SCHNORRSIG: yes ELLSWIFT: yes test_script: - ./ci/ci.sh << : *CAT_LOGS task: name: "C++ (public headers)" << : *LINUX_CONTAINER test_script: - g++ -Werror include/*.h - clang -Werror -x c++-header include/*.h