2016-03-19 20:16:25 +08:00
|
|
|
language: cpp
|
|
|
|
|
2017-08-14 21:09:56 +08:00
|
|
|
jobs:
|
2016-09-29 01:42:54 +08:00
|
|
|
include:
|
2017-03-10 20:03:46 +08:00
|
|
|
|
2017-08-14 21:09:56 +08:00
|
|
|
- &linter-stage
|
|
|
|
stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 test
|
|
|
|
env: NAME="CPP-LINT"
|
|
|
|
install:
|
|
|
|
script: scripts/travis_lint.sh
|
|
|
|
before_cache:
|
|
|
|
|
|
|
|
- stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 test
|
|
|
|
env: NAME="DOXYGEN-CHECK"
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
packages:
|
|
|
|
- doxygen
|
|
|
|
install:
|
|
|
|
script: scripts/travis_doxygen.sh
|
|
|
|
before_cache:
|
|
|
|
|
|
|
|
# Ubuntu Linux with glibc using g++-5
|
|
|
|
- stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 test
|
|
|
|
os: linux
|
|
|
|
sudo: false
|
|
|
|
compiler: gcc
|
|
|
|
cache: ccache
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- libwww-perl
|
|
|
|
- g++-5
|
|
|
|
- libubsan0
|
|
|
|
before_install:
|
|
|
|
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
|
|
|
|
# env: COMPILER=g++-5 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover -fno-omit-frame-pointer"
|
2017-08-15 16:14:12 +08:00
|
|
|
env: COMPILER="ccache g++-5"
|
2017-08-14 21:09:56 +08:00
|
|
|
|
2017-03-10 20:03:46 +08:00
|
|
|
# OS X using g++
|
2017-08-14 21:09:56 +08:00
|
|
|
- stage: Test different OS/CXX/Flags
|
|
|
|
os: osx
|
2017-03-10 20:03:46 +08:00
|
|
|
sudo: false
|
|
|
|
compiler: gcc
|
2017-03-25 04:06:34 +08:00
|
|
|
cache: ccache
|
|
|
|
before_install:
|
|
|
|
#we create symlink to non-ccache gcc, to be used in tests
|
|
|
|
- mkdir bin ; ln -s /usr/bin/gcc bin/gcc
|
2017-04-07 23:16:40 +08:00
|
|
|
- HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache
|
2017-03-25 04:06:34 +08:00
|
|
|
- export PATH=/usr/local/opt/ccache/libexec:$PATH
|
2017-08-15 16:14:12 +08:00
|
|
|
env: COMPILER="ccache g++"
|
2017-03-10 20:03:46 +08:00
|
|
|
|
|
|
|
# OS X using clang++
|
2017-08-14 21:09:56 +08:00
|
|
|
- stage: Test different OS/CXX/Flags
|
|
|
|
os: osx
|
2017-03-10 20:03:46 +08:00
|
|
|
sudo: false
|
|
|
|
compiler: clang
|
2017-03-25 04:06:34 +08:00
|
|
|
cache: ccache
|
|
|
|
before_install:
|
2017-04-07 23:16:40 +08:00
|
|
|
- HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache
|
2017-03-25 04:06:34 +08:00
|
|
|
- export PATH=/usr/local/opt/ccache/libexec:$PATH
|
|
|
|
env:
|
|
|
|
- COMPILER="ccache clang++ -Qunused-arguments -fcolor-diagnostics"
|
|
|
|
- CCACHE_CPP2=yes
|
2017-03-10 20:03:46 +08:00
|
|
|
|
2017-04-04 05:24:49 +08:00
|
|
|
# Ubuntu Linux with glibc using g++-5, debug mode
|
2017-08-14 21:09:56 +08:00
|
|
|
- stage: Test different OS/CXX/Flags
|
|
|
|
os: linux
|
2017-04-04 05:24:49 +08:00
|
|
|
sudo: false
|
|
|
|
compiler: gcc
|
|
|
|
cache: ccache
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- libwww-perl
|
|
|
|
- g++-5
|
|
|
|
- libubsan0
|
|
|
|
before_install:
|
|
|
|
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
|
|
|
|
# env: COMPILER=g++-5 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover -fno-omit-frame-pointer"
|
|
|
|
env:
|
2017-08-15 16:14:12 +08:00
|
|
|
- COMPILER="ccache g++-5"
|
2017-04-04 05:24:49 +08:00
|
|
|
- EXTRA_CXXFLAGS="-DDEBUG"
|
|
|
|
script: echo "Not running any tests for a debug build."
|
|
|
|
|
2017-03-10 20:03:46 +08:00
|
|
|
# Ubuntu Linux with glibc using clang++-3.7
|
2017-08-14 21:09:56 +08:00
|
|
|
- stage: Test different OS/CXX/Flags
|
|
|
|
os: linux
|
2017-03-10 20:03:46 +08:00
|
|
|
sudo: false
|
2016-12-19 01:44:24 +08:00
|
|
|
compiler: clang
|
2017-03-25 04:06:34 +08:00
|
|
|
cache: ccache
|
2016-09-29 01:42:54 +08:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
2016-12-19 01:44:24 +08:00
|
|
|
- llvm-toolchain-precise-3.7
|
2016-09-29 01:42:54 +08:00
|
|
|
packages:
|
|
|
|
- libwww-perl
|
2016-12-19 01:44:24 +08:00
|
|
|
- clang-3.7
|
2017-02-13 21:03:11 +08:00
|
|
|
- libstdc++-5-dev
|
2017-02-08 19:44:56 +08:00
|
|
|
- libubsan0
|
2016-09-29 01:42:54 +08:00
|
|
|
before_install:
|
2017-02-03 04:34:33 +08:00
|
|
|
- mkdir bin ; ln -s /usr/bin/clang-3.7 bin/gcc
|
2017-03-25 04:06:34 +08:00
|
|
|
- export CCACHE_CPP2=yes
|
2017-02-10 00:41:21 +08:00
|
|
|
# env: COMPILER=clang++-3.7 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined,integer -fno-omit-frame-pointer"
|
2017-03-25 04:06:34 +08:00
|
|
|
env:
|
|
|
|
- COMPILER="ccache clang++-3.7 -Qunused-arguments -fcolor-diagnostics"
|
|
|
|
- CCACHE_CPP2=yes
|
2017-03-10 20:03:46 +08:00
|
|
|
|
2017-04-04 05:24:49 +08:00
|
|
|
# Ubuntu Linux with glibc using clang++-3.7, debug mode
|
2017-08-14 21:09:56 +08:00
|
|
|
- stage: Test different OS/CXX/Flags
|
|
|
|
os: linux
|
2017-04-04 05:24:49 +08:00
|
|
|
sudo: false
|
|
|
|
compiler: clang
|
|
|
|
cache: ccache
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
- llvm-toolchain-precise-3.7
|
|
|
|
packages:
|
|
|
|
- libwww-perl
|
|
|
|
- clang-3.7
|
|
|
|
- libstdc++-5-dev
|
|
|
|
- libubsan0
|
|
|
|
before_install:
|
|
|
|
- mkdir bin ; ln -s /usr/bin/clang-3.7 bin/gcc
|
|
|
|
- export CCACHE_CPP2=yes
|
|
|
|
# env: COMPILER=clang++-3.7 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined,integer -fno-omit-frame-pointer"
|
|
|
|
env:
|
|
|
|
- COMPILER="ccache clang++-3.7 -Qunused-arguments -fcolor-diagnostics"
|
|
|
|
- CCACHE_CPP2=yes
|
|
|
|
- EXTRA_CXXFLAGS="-DDEBUG"
|
|
|
|
script: echo "Not running any tests for a debug build."
|
|
|
|
|
2017-03-31 23:10:50 +08:00
|
|
|
allow_failures:
|
2017-08-14 21:09:56 +08:00
|
|
|
- <<: *linter-stage
|
2017-03-31 23:10:50 +08:00
|
|
|
|
2017-03-25 04:06:34 +08:00
|
|
|
install:
|
2017-08-15 16:13:18 +08:00
|
|
|
- ccache --max-size=1G
|
2017-03-25 04:06:34 +08:00
|
|
|
- COMMAND="make -C src minisat2-download" &&
|
|
|
|
eval ${PRE_COMMAND} ${COMMAND}
|
2017-08-16 02:18:53 +08:00
|
|
|
- COMMAND="make -C src/ansi-c library_check" &&
|
|
|
|
eval ${PRE_COMMAND} ${COMMAND}
|
2017-04-26 20:00:18 +08:00
|
|
|
- COMMAND="make -C src CXX=\"$COMPILER\" CXXFLAGS=\"-Wall -Werror -pedantic -O2 -g $EXTRA_CXXFLAGS\" -j2" &&
|
2017-03-25 04:06:34 +08:00
|
|
|
eval ${PRE_COMMAND} ${COMMAND}
|
2017-05-05 01:10:49 +08:00
|
|
|
- COMMAND="make -C src CXX=\"$COMPILER\" CXXFLAGS=\"$FLAGS $EXTRA_CXXFLAGS\" -j2 clobber.dir memory-models.dir musketeer.dir" &&
|
2017-03-25 04:06:34 +08:00
|
|
|
eval ${PRE_COMMAND} ${COMMAND}
|
2016-03-19 20:16:25 +08:00
|
|
|
|
|
|
|
script:
|
2017-03-25 04:06:34 +08:00
|
|
|
- if [ -e bin/gcc ] ; then export PATH=$PWD/bin:$PATH ; fi ;
|
2017-06-27 01:17:33 +08:00
|
|
|
COMMAND="env UBSAN_OPTIONS=print_stacktrace=1 make -C regression test CXX=\"$COMPILER\" CXXFLAGS=\"-Wall -Werror -pedantic -O2 -g $EXTRA_CXXFLAGS\"" &&
|
2017-03-10 20:03:46 +08:00
|
|
|
eval ${PRE_COMMAND} ${COMMAND}
|
2017-05-17 00:37:57 +08:00
|
|
|
- COMMAND="make -C unit CXX=\"$COMPILER\" CXXFLAGS=\"-Wall -Werror -pedantic -O2 -g $EXTRA_CXXFLAGS\" -j2" &&
|
2017-04-26 18:50:17 +08:00
|
|
|
eval ${PRE_COMMAND} ${COMMAND}
|
|
|
|
- COMMAND="make -C unit test" && eval ${PRE_COMMAND} ${COMMAND}
|
2017-03-25 04:06:34 +08:00
|
|
|
|
|
|
|
before_cache:
|
|
|
|
- ccache -s
|