zstd/.travis.yml
Przemyslaw Skibinski 3a751edeae uasan
2017-02-21 15:57:03 +01:00

130 lines
3.8 KiB
YAML

language: c
matrix:
fast_finish: true
include:
# OS X Mavericks
- env: Ubu=OS_X_Mavericks Cmd="make gnu90test && make clean && make test && make clean && make travis-install"
os: osx
# Container-based Ubuntu 12.04 LTS Server Edition 64 bit (doesn't support 32-bit includes)
- env: Ubu=12.04cont Cmd="make usan"
os: linux
sudo: false
- env: Ubu=12.04cont Cmd="make asan"
os: linux
sudo: false
- env: Ubu=12.04cont Cmd="make uasan"
os: linux
sudo: false
- env: Ubu=14.04 Cmd='make test CC=clang-4.0 MOREFLAGS="-g -fsanitize=address -fsanitize=undefined"'
os: linux
dist: trusty
sudo: required
addons:
apt:
sources:
- llvm-toolchain-trusty-4.0
packages:
- clang-4.0
- env: Ubu=14.04 Cmd='make -C tests test32 CC=clang-4.0 MOREFLAGS="-g -fsanitize=address"'
os: linux
dist: trusty
sudo: required
addons:
apt:
sources:
- llvm-toolchain-trusty-4.0
packages:
- libc6-dev-i386
- gcc-multilib
- clang-4.0
# Ubuntu 14.04 LTS Server Edition 64 bit
- env: Ubu=14.04 Cmd='cd contrib/pzstd && make googletest pzstd tests check && make clean
&& make googletest32 all32 check && make clean
&& make googletest tsan check && make clean
&& make asan check && make clean'
os: linux
dist: trusty
sudo: required
install:
- export CXX="g++-6" CC="gcc-6"
- export LDFLAGS="-fuse-ld=gold"
- export TESTFLAGS='--gtest_filter=-*ExtremelyLarge*'
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- libc6-dev-i386
- g++-multilib
- gcc-6
- gcc-6-multilib
- g++-6
- g++-6-multilib
- env: Ubu=14.04 Cmd="make armtest && make clean && make aarch64test"
dist: trusty
sudo: required
addons:
apt:
packages:
- qemu-system-arm
- qemu-user-static
- gcc-arm-linux-gnueabi
- libc6-dev-armel-cross
- gcc-aarch64-linux-gnu
- libc6-dev-arm64-cross
- env: Ubu=14.04 Cmd='make ppctest && make clean && make ppc64test'
dist: trusty
sudo: required
addons:
apt:
packages:
- qemu-system-ppc
- qemu-user-static
- gcc-powerpc-linux-gnu
# other feature branches => short tests
- env: Ubu=14.04 Cmd='make lib && CFLAGS="-O1 -g" make -C zlibWrapper valgrindTest && make -C tests valgrindTest'
os: linux
dist: trusty
sudo: required
addons:
apt:
packages:
- valgrind
- env: Ubu=14.04 Cmd="make zlibwrapper && make clean && make -C tests test-zstd-nolegacy && make clean && make -C tests test32 versionsTest"
os: linux
dist: trusty
sudo: required
addons:
apt:
packages:
- libc6-dev-i386
- gcc-multilib
script:
- JOB_NUMBER=$(echo $TRAVIS_JOB_NUMBER | sed -e 's:[0-9][0-9]*\.\(.*\):\1:')
# cron & master => long tests, as this is the final step towards a Release
# dev => normal tests
# other feature branches => short tests (number > 10)
- if [ "$TRAVIS_EVENT_TYPE" = "cron" ] || [ "$TRAVIS_BRANCH" = "asan" ]; then
FUZZERTEST=-T10mn sh -c "$Cmd" || travis_terminate 1;
else
if [ "$TRAVIS_PULL_REQUEST" = "true" ] || [ $JOB_NUMBER -gt 10 ] || [ "$TRAVIS_BRANCH" = "dev" ]; then
sh -c "$Cmd" || travis_terminate 1;
fi
fi