blob: 8a0170e04dbbf4e026346a5c8e8a5da60816d85f [file] [log] [blame]
# Medium Tests: Run on all commits/PRs to dev branch
language: c
dist: trusty
sudo: required
addons:
apt:
update: true
matrix:
fast_finish: true
include:
# Ubuntu 14.04
- env: Cmd='make test'
- env: Cmd='make gcc6install && CC=gcc-6 CFLAGS=-Werror make -j all
&& make clean && CC=gcc-6 make -j uasan-test-zstd </dev/null' # test when stdin is not a tty
- env: Cmd='make gcc6install libc6install
&& make clean && CC=gcc-6 make -j uasan-test-zstd32'
- env: Cmd='make gcc7install && make clean && CC=gcc-7 make -j uasan-test-zstd'
- env: Cmd='make gcc8install && CC=gcc-8 CFLAGS="-Werror -O3" make -j all'
- env: Cmd='make clang38install && CC=clang-3.8 make clean msan-test-zstd'
- env: Cmd='make cmakebuild'
- env: Cmd='make staticAnalyze'
- env: Cmd='make gcc6install && CC=gcc-6 make clean uasan-fuzztest'
- env: Cmd='make gcc6install libc6install
&& make clean && CC=gcc-6 CFLAGS=-m32 make uasan-fuzztest'
- env: Cmd='make clang38install && CC=clang-3.8 make clean msan-fuzztest'
- env: Cmd='make clang38install && CC=clang-3.8 make clean tsan-fuzztest'
- env: Cmd='make -j uasanregressiontest
&& make clean && make -j msanregressiontest'
- env: Cmd='make valgrindinstall && make -C tests clean valgrindTest
&& make clean && make -C tests test-fuzzer-stackmode'
- env: Cmd='make arminstall && make armfuzz'
- env: Cmd='make arminstall && make aarch64fuzz'
- env: Cmd='make ppcinstall && make ppcfuzz'
- env: Cmd='make ppcinstall && make ppc64fuzz'
- env: Cmd='make lz4install && make -C tests test-lz4
&& make clean && make -C tests test-pool
&& make clean && bash tests/libzstd_partial_builds.sh'
# tag-specific test
- if: tag =~ ^v[0-9]\.[0-9]
env: Cmd='make -C tests checkTag && tests/checkTag $TRAVIS_BRANCH'
- env: BUILD_SYSTEM='meson'
allow_failures:
- env: BUILD_SYSTEM='meson'
git:
depth: 1
branches:
only:
- dev
- master
- travisTest
script:
- JOB_NUMBER=$(printf '%s' "${TRAVIS_JOB_NUMBER}" | sed -E 's@[0-9]+\.([0-9]+)@\1@')
- printf 'JOB_NUMBER=%s TRAVIS_BRANCH=%s TRAVIS_EVENT_TYPE=%s TRAVIS_PULL_REQUEST=%s\n'
"${JOB_NUMBER}" "${TRAVIS_BRANCH}" "${TRAVIS_EVENT_TYPE}" "${TRAVIS_PULL_REQUEST}"
- if [ "${BUILD_SYSTEM}" = meson ]; then
sudo apt-get install -qq python3.5 wget tree
&& wget https://bootstrap.pypa.io/get-pip.py
&& python3.5 get-pip.py --user
&& rm get-pip.py
&& pip3.5 install --user meson ninja;
mkdir build/meson/build;
pushd "$_";
meson --buildtype=debug -D with-contrib=true -D with-tests=true
-D with-contrib=true -D default_library=both ..
&& ninja
&& DESTDIR=./staging ninja install
&& tree ./staging;
popd;
else
export FUZZERTEST=-T2mn;
export ZSTREAM_TESTTIME=-T2mn;
export DECODECORPUS_TESTTIME=-T1mn;
sh -c "${Cmd}" || travis_terminate 1;
fi