14 - FIELD=auto BIGNUM=auto SCALAR=auto ENDOMORPHISM=no STATICPRECOMPUTATION=yes ECMULTGENPRECISION=auto ASM=no BUILD=check EXTRAFLAGS= HOST= ECDH=no RECOVERY=no EXPERIMENTAL=no CTIMETEST=yes BENCH=yes SECP256K1_BENCH_ITERS=2
16 - SCALAR=32bit RECOVERY=yes
17 - SCALAR=32bit FIELD=32bit ECDH=yes EXPERIMENTAL=yes
19 - FIELD=64bit RECOVERY=yes
20 - FIELD=64bit ENDOMORPHISM=yes
21 - FIELD=64bit ENDOMORPHISM=yes ECDH=yes EXPERIMENTAL=yes
22 - FIELD=64bit ASM=x86_64
23 - FIELD=64bit ENDOMORPHISM=yes ASM=x86_64
24 - FIELD=32bit ENDOMORPHISM=yes
26 - BIGNUM=no ENDOMORPHISM=yes RECOVERY=yes EXPERIMENTAL=yes
27 - BIGNUM=no STATICPRECOMPUTATION=no
28 - BUILD=distcheck CTIMETEST= BENCH=
29 - EXTRAFLAGS=CPPFLAGS=-DDETERMINISTIC
30 - EXTRAFLAGS=CFLAGS=-O0
31 - ECMULTGENPRECISION=2
32 - ECMULTGENPRECISION=8
37 env: HOST=i686-linux-gnu ENDOMORPHISM=yes
47 env: HOST=i686-linux-gnu
56 env: HOST=i686-linux-gnu ENDOMORPHISM=yes
65 env: HOST=i686-linux-gnu
76 - BIGNUM=no ENDOMORPHISM=yes ASM=x86_64 EXPERIMENTAL=yes ECDH=yes RECOVERY=yes
77 - VALGRIND=yes EXTRAFLAGS="--disable-openssl-tests CPPFLAGS=-DVALGRIND" BUILD=
79 env: # The same as above but without endomorphism.
80 - BIGNUM=no ENDOMORPHISM=no ASM=x86_64 EXPERIMENTAL=yes ECDH=yes RECOVERY=yes
81 - VALGRIND=yes EXTRAFLAGS="--disable-openssl-tests CPPFLAGS=-DVALGRIND" BUILD=
83 before_script: ./autogen.sh
86 - if [ -n "$HOST" ]; then export USE_HOST="--host=$HOST"; fi
87 - if [ "x$HOST" = "xi686-linux-gnu" ]; then export CC="$CC -m32"; fi
88 - ./configure --enable-experimental=$EXPERIMENTAL --enable-endomorphism=$ENDOMORPHISM --with-field=$FIELD --with-bignum=$BIGNUM --with-asm=$ASM --with-scalar=$SCALAR --enable-ecmult-static-precomputation=$STATICPRECOMPUTATION --with-ecmult-gen-precision=$ECMULTGENPRECISION --enable-module-ecdh=$ECDH --enable-module-recovery=$RECOVERY $EXTRAFLAGS $USE_HOST
89 - if [ -n "$BUILD" ]; then make -j2 $BUILD; fi
90 - # travis_wait extends the 10 minutes without output allowed (https://docs.travis-ci.com/user/common-build-problems/#build-times-out-because-no-output-was-received)
91 - # the `--error-exitcode` is required to make the test fail if valgrind found errors, otherwise it'll return 0 (http://valgrind.org/docs/manual/manual-core.html)
92 - if [ -n "$VALGRIND" ]; then
94 travis_wait 30 valgrind --error-exitcode=42 ./tests 16 &&
95 travis_wait 30 valgrind --error-exitcode=42 ./exhaustive_tests;
97 - if [ -n "$BENCH" ]; then
98 if [ -n "$VALGRIND" ]; then EXEC='libtool --mode=execute valgrind --error-exitcode=42'; else EXEC= ; fi &&
99 $EXEC ./bench_ecmult &>> bench.log && $EXEC ./bench_internal &>> bench.log && $EXEC ./bench_sign &>> bench.log && $EXEC ./bench_verify &>> bench.log &&
100 if [ "$RECOVERY" == "yes" ]; then $EXEC ./bench_recover &>> bench.log; fi &&
101 if [ "$ECDH" == "yes" ]; then $EXEC ./bench_ecdh &>> bench.log; fi;
103 - if [ -n "$CTIMETEST" ]; then
104 libtool --mode=execute valgrind ./valgrind_ctime_test &> valgrind_ctime_test.log;
109 - cat ./exhaustive_tests.log
110 - cat ./valgrind_ctime_test.log