]> Git Repo - secp256k1.git/blame - .travis.yml
Improve CC_FOR_BUILD detection
[secp256k1.git] / .travis.yml
CommitLineData
992e03bc 1language: c
0c5ff906
ET
2os:
3 - linux
4 - osx
5
bc818b16 6dist: bionic
0c5ff906
ET
7# Valgrind currently supports upto macOS 10.13, the latest xcode of that version is 10.1
8osx_image: xcode10.1
cf7f7022
CF
9addons:
10 apt:
7b50483a
GM
11 packages:
12 - libgmp-dev
13 - valgrind
08fb6c49 14 - libtool-bin
992e03bc
CF
15compiler:
16 - clang
17 - gcc
b0cc21f8
CF
18env:
19 global:
4232e5b7 20 - WIDEMUL=auto BIGNUM=auto STATICPRECOMPUTATION=yes ECMULTGENPRECISION=auto ASM=no BUILD=check WITH_VALGRIND=yes RUN_VALGRIND=no EXTRAFLAGS= HOST= ECDH=no RECOVERY=no SCHNORRSIG=no EXPERIMENTAL=no CTIMETEST=yes BENCH=yes ITERS=2
b0cc21f8 21 matrix:
79f1f7a4 22 - WIDEMUL=int64 RECOVERY=yes
4e435200 23 - WIDEMUL=int64 ECDH=yes EXPERIMENTAL=yes SCHNORRSIG=yes
79f1f7a4 24 - WIDEMUL=int128
4e435200 25 - WIDEMUL=int128 RECOVERY=yes EXPERIMENTAL=yes SCHNORRSIG=yes
4232e5b7 26 - WIDEMUL=int128 ECDH=yes EXPERIMENTAL=yes SCHNORRSIG=yes
79f1f7a4 27 - WIDEMUL=int128 ASM=x86_64
1ba4a60a 28 - BIGNUM=no
4232e5b7 29 - BIGNUM=no RECOVERY=yes EXPERIMENTAL=yes SCHNORRSIG=yes
a83bb480 30 - BIGNUM=no STATICPRECOMPUTATION=no
66a765c7 31 - BUILD=distcheck WITH_VALGRIND=no CTIMETEST=no BENCH=no
b6807d91 32 - CPPFLAGS=-DDETERMINISTIC
34debf7a 33 - CFLAGS=-O0 CTIMETEST=no
29a299e3 34 - CFLAGS="-fsanitize=undefined -fno-omit-frame-pointer" LDFLAGS="-fsanitize=undefined -fno-omit-frame-pointer" UBSAN_OPTIONS="print_stacktrace=1:halt_on_error=1" BIGNUM=no ASM=x86_64 ECDH=yes RECOVERY=yes EXPERIMENTAL=yes SCHNORRSIG=yes CTIMETEST=no
dcb2e3b3 35 - ECMULTGENPRECISION=2
36 - ECMULTGENPRECISION=8
e6e3d5da 37 - RUN_VALGRIND=yes BIGNUM=no ASM=x86_64 ECDH=yes RECOVERY=yes EXPERIMENTAL=yes SCHNORRSIG=yes EXTRAFLAGS="--disable-openssl-tests" BUILD=
cf7f7022
CF
38matrix:
39 fast_finish: true
40 include:
41 - compiler: clang
0c5ff906 42 os: linux
4232e5b7 43 env: HOST=i686-linux-gnu
cf7f7022
CF
44 addons:
45 apt:
46 packages:
47 - gcc-multilib
2d2707a4 48 - libgmp-dev:i386
08fb6c49
JN
49 - valgrind
50 - libtool-bin
51 - libc6-dbg:i386
cf7f7022
CF
52 - compiler: clang
53 env: HOST=i686-linux-gnu
0c5ff906 54 os: linux
cf7f7022
CF
55 addons:
56 apt:
57 packages:
58 - gcc-multilib
08fb6c49
JN
59 - valgrind
60 - libtool-bin
61 - libc6-dbg:i386
cf7f7022 62 - compiler: gcc
4232e5b7 63 env: HOST=i686-linux-gnu
0c5ff906 64 os: linux
cf7f7022
CF
65 addons:
66 apt:
67 packages:
68 - gcc-multilib
08fb6c49
JN
69 - valgrind
70 - libtool-bin
71 - libc6-dbg:i386
cf7f7022 72 - compiler: gcc
0c5ff906 73 os: linux
cf7f7022
CF
74 env: HOST=i686-linux-gnu
75 addons:
76 apt:
77 packages:
78 - gcc-multilib
2d2707a4 79 - libgmp-dev:i386
08fb6c49
JN
80 - valgrind
81 - libtool-bin
82 - libc6-dbg:i386
39295362
PW
83 # S390x build (big endian system)
84 - compiler: gcc
e6e3d5da 85 env: HOST=s390x-unknown-linux-gnu ECDH=yes RECOVERY=yes EXPERIMENTAL=yes SCHNORRSIG=yes CTIMETEST=
39295362 86 arch: s390x
0c5ff906
ET
87
88# We use this to install macOS dependencies instead of the built in `homebrew` plugin,
89# because in xcode earlier than 11 they have a bug requiring updating the system which overall takes ~8 minutes.
90# https://travis-ci.community/t/macos-build-fails-because-of-homebrew-bundle-unknown-command/7296
91before_install:
92 - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then HOMEBREW_NO_AUTO_UPDATE=1 brew install gmp valgrind gcc@9; fi
fb424fbb 93
b0cc21f8 94before_script: ./autogen.sh
dd98cc98 95
99bd661d
ET
96# travis auto terminates jobs that go for 10 minutes without printing to stdout, but travis_wait doesn't work well with forking programs like valgrind (https://docs.travis-ci.com/user/common-build-problems/#build-times-out-because-no-output-was-received https://github.com/bitcoin-core/secp256k1/pull/750#issuecomment-623476860)
97script:
98 - function keep_alive() { while true; do echo -en "\a"; sleep 60; done }
99 - keep_alive &
100 - ./contrib/travis.sh
101 - kill %keep_alive
fb424fbb
JN
102
103after_script:
104 - cat ./tests.log
105 - cat ./exhaustive_tests.log
08fb6c49 106 - cat ./valgrind_ctime_test.log
85b35afa 107 - cat ./bench.log
0c5ff906
ET
108 - $CC --version
109 - valgrind --version
This page took 0.049016 seconds and 4 git commands to generate.