blob: 94e981bec17542222790d0f1682163e9114eeeff (
plain) (
tree)
|
|
## Doesn't appear to do anything useful.
language: cpp
## Notifications
## The default is to send email on all failures and changed success
## Adding other notifiers (like IRC) does not disable the email one
notifications:
## This is, in fact, the default email setting so it is unnecessary.
## It would probably be too annoying to set on_success: always
email:
on_success: changed
on_failure: always
## Are we going to want this on or off?
irc:
channels: "chat.freenode.net#tmwa"
on_success: always
on_failure: always
use_notice: true
## Use the container-based infrastructure
sudo: false
## Commands before installing
before_install:
- if [ $(git rev-list --count HEAD ^master) -gt 50 ] ; then exit 1; fi
- export CC="${REAL_CC} ${REAL_EXTRA}" CXX="${REAL_CXX} ${REAL_EXTRA}"
install:
- make --version
- mkdir build
- cd build
- git init
- ../configure --build=x86_64-linux-gnu --dev CPPFLAGS=-DQUIET `! [[ $CXX =~ clang* ]] || echo --disable-abi` $EXTRA_CONFIGURE_ARGS
- sed -n '/One Makefile/q;p' Makefile
## Main test script
script:
- make -R -k -j2
# Use - instead of :- to allow forcing an empty one
- make -R -k -j2 test TESTER="${FORCE_TESTER-${DEFAULT_TESTER}}"
- make -R -k -j2 format
- git --git-dir=../.git --work-tree=.. diff --exit-code
- make -R -k -j2 dist bindist
### The rest of the file creates a build matrix
env:
global:
- DEFAULT_TESTER='valgrind --error-exitcode=1 --track-fds=yes'
matrix:
fast-finish: true
include:
- compiler: clang
env: REAL_CC=clang-3.5 REAL_CXX=clang++-3.5
addons:
apt:
sources:
- llvm-toolchain-precise-3.5
# needed for libstdc++ headers
- ubuntu-toolchain-r-test
packages:
- clang-3.5
- libstdc++6-4.6-dbg
- libgtest-dev
- valgrind
- gdb
- compiler: clang
env: REAL_CC=clang-3.6 REAL_CXX=clang++-3.6
addons:
apt:
sources:
- llvm-toolchain-precise-3.6
# needed for libstdc++ headers
- ubuntu-toolchain-r-test
packages:
- clang-3.6
- libstdc++6-4.6-dbg
- libgtest-dev
- valgrind
- gdb
- compiler: clang
env: REAL_CC=clang-3.7 REAL_CXX=clang++-3.7
addons:
apt:
sources:
- llvm-toolchain-precise-3.7
# needed for libstdc++ headers
- ubuntu-toolchain-r-test
packages:
- clang-3.7
- libstdc++6-4.6-dbg
- libgtest-dev
- valgrind
- gdb
- compiler: gcc
env: REAL_CC=gcc-4.7 REAL_CXX=g++-4.7
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.7
- libstdc++6-4.7-dbg
- libgtest-dev
- valgrind
- gdb
- compiler: gcc
env: REAL_CC=gcc-4.8 REAL_CXX=g++-4.8
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.8
- libstdc++6-4.8-dbg
- libgtest-dev
- valgrind
- gdb
- compiler: gcc
env: REAL_CC=gcc-4.9 REAL_CXX=g++-4.9
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.9
- libstdc++6-4.9-dbg
- libgtest-dev
- valgrind
- gdb
- compiler: gcc
env: REAL_CC=gcc-5 REAL_CXX=g++-5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- libstdc++6-5-dbg
- libgtest-dev
- valgrind
- gdb
# Can't use valgrind and asan at the same time.
# Should probably fix the test leaks though.
- compiler: gcc
env: REAL_CC=gcc-5 REAL_CXX=g++-5 REAL_EXTRA=-fsanitize=address FORCE_TESTER='' ASAN_OPTIONS=detect_leaks=0
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- libstdc++6-5-dbg
- libgtest-dev
# - valgrind
- gdb
# LTO is buggy.
- compiler: gcc
env: REAL_CC=gcc-5 REAL_CXX=g++-5 REAL_EXTRA=-flto
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- libstdc++6-5-dbg
- libgtest-dev
- valgrind
- gdb
allow_failures:
- env: REAL_CC=gcc-5 REAL_CXX=g++-5 REAL_EXTRA=-flto
# everything that was pushed to stable was already on 'master', except
# the version change and some doc changes.
# everything that was pushed to test-server was in a PR so it passed travis
branches:
except:
- stable
- test-server
|