travis: test various compiler options

This commit is contained in:
Daniel Mendler 2019-04-19 19:01:38 +02:00
parent cb34cc2b25
commit 6d092b85a5
No known key found for this signature in database
GPG Key ID: D88ADB2A2693CA43

View File

@ -31,15 +31,15 @@ branches:
only:
- master
- develop
- /^release\/.*$/
- /^release/
- /^travis/
# Additional installs are Valgrind for the memory-tests
# and gcc-multilib for the compilation of the different
# architectures.
# Additional installs: Valgrind for memory tests.
install:
- sudo apt-get update -qq
- sudo apt-get install valgrind
- sudo apt-get install gcc-multilib
- apt-cache search gcc | grep '^gcc-[0-9\.]* '
- apt-cache search clang | grep compiler
# The language is C and it will load the respective dependencies
language: c
@ -66,60 +66,90 @@ matrix:
apt:
packages:
- astyle
sudo: required
# GCC for the 32-bit architecture (no valgrind yet)
- env: BUILDOPTIONS='--with-cc=gcc --with-m32'
- env: BUILDOPTIONS='--with-cc=gcc-5 --with-m32'
addons:
apt:
packages:
- libc6-dev-i386
sudo: required
- gcc-multilib
# clang for the 32-bit architecture (no valgrind yet)
- env: BUILDOPTIONS='--with-cc=clang --with-m32'
- env: BUILDOPTIONS='--with-cc=clang-7 --with-m32'
addons:
apt:
packages:
- libc6-dev-i386
sudo: required
- gcc-multilib
# GCC for the x64_32 architecture (32-bit longs and 32-bit pointers)
# TODO: Probably not possible to run anything in x32 in Travis
# but needs to be checked to be sure.
- env: BUILDOPTIONS='--with-cc=gcc --with-mx32'
- env: BUILDOPTIONS='--with-cc=gcc-5 --with-mx32'
addons:
apt:
packages:
- libc6-dev-x32
sudo: required
- gcc-multilib
# GCC for the x86-64 architecture (64-bit longs and 64-bit pointers)
- env: BUILDOPTIONS='--with-cc=gcc --with-m64 --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc-5 --with-m64 --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc-4.7 --with-m64 --with-valgrind'
addons:
apt:
packages:
- gcc-4.7
- env: BUILDOPTIONS='--with-cc=gcc-4.8 --with-m64 --with-valgrind'
addons:
apt:
packages:
- gcc-4.8
- env: BUILDOPTIONS='--with-cc=gcc-4.9 --with-m64 --with-valgrind'
addons:
apt:
packages:
- gcc-4.9
# clang for x86-64 architecture (64-bit longs and 64-bit pointers)
- env: BUILDOPTIONS='--with-cc=clang --with-m64 --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang-7 --with-m64 --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang-6.0 --with-m64 --with-valgrind'
addons:
apt:
packages:
- clang-6.0
- env: BUILDOPTIONS='--with-cc=clang-5.0 --with-m64 --with-valgrind'
addons:
apt:
packages:
- clang-5.0
- env: BUILDOPTIONS='--with-cc=clang-4.0 --with-m64 --with-valgrind'
addons:
apt:
packages:
- clang-4.0
# GCC for the x86-64 architecture with restricted limb sizes
# formerly started with the option "--with-low-mp" to testme.sh
# but testing all three in one run took to long and timed out.
- env: BUILDOPTIONS='--with-cc=gcc --cflags=-DMP_8BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc --cflags=-DMP_16BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc --cflags=-DMP_32BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc-5 --cflags=-DMP_8BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc-5 --cflags=-DMP_16BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc-5 --cflags=-DMP_32BIT --with-valgrind'
# clang for the x86-64 architecture with restricted limb sizes
- env: BUILDOPTIONS='--with-cc=clang --cflags=-DMP_8BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang --cflags=-DMP_16BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang --cflags=-DMP_32BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang-7 --cflags=-DMP_8BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang-7 --cflags=-DMP_16BIT --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang-7 --cflags=-DMP_32BIT --with-valgrind'
# GCC for the x86-64 architecture testing against a different Bigint-implementation
# with 333333 different inputs.
- env: BUILDOPTIONS='--with-cc=gcc --test-vs-mtest=333333 --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang --test-vs-mtest=333333 --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc-5 --test-vs-mtest=333333 --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang-7 --test-vs-mtest=333333 --with-valgrind'
# clang for the x86-64 architecture testing against a different Bigint-implementation
# with a better random source.
- env: BUILDOPTIONS='--with-cc=gcc --test-vs-mtest=333333 --mtest-real-rand --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang --test-vs-mtest=333333 --mtest-real-rand --with-valgrind'
- env: BUILDOPTIONS='--with-cc=gcc-5 --test-vs-mtest=333333 --mtest-real-rand --with-valgrind'
- env: BUILDOPTIONS='--with-cc=clang-7 --test-vs-mtest=333333 --mtest-real-rand --with-valgrind'
# Notifications go to
# An email address is also possible.
@ -132,5 +162,4 @@ notifications:
# seem to be the max and 20 the default if travis_wait is called without
# any options.
script:
- ./testme.sh ${BUILDOPTIONS}
- ./testme.sh ${BUILDOPTIONS}