Merge pull request #638 from lzutao/travis

Travis: Clean up .travis.yml
This commit is contained in:
Yann Collet 2019-01-11 12:11:45 -08:00 committed by GitHub
commit 6305e43dce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,116 +1,123 @@
language: c
matrix:
fast_finish: true
include:
# OS X Mavericks
- os: osx
install:
- export CC=clang
env: Ubu=OS_X_Mavericks Cmd='make -C tests test-lz4 MOREFLAGS="-Werror -Wconversion -Wno-sign-conversion" && CFLAGS=-m32 make -C tests clean test-lz4-contentSize' COMPILER=clang
- name: (macOS) General Test
os: osx
compiler: clang
script:
- make -C tests test-lz4 MOREFLAGS='-Werror -Wconversion -Wno-sign-conversion'
- CFLAGS=-m32 make -C tests clean test-lz4-contentSize
# Container-based 12.04 LTS Server Edition 64 bit (doesn't support 32-bit includes)
- os: linux
sudo: false
env: Ubu=12.04cont Cmd='make -C tests test-lz4 test-lz4c test-fullbench' COMPILER=cc
- name: (Precise) benchmark test
dist: precise
script:
- make -C tests test-lz4 test-lz4c test-fullbench
- os: linux
sudo: required
env: Ubu=12.04cont Cmd='sudo sysctl -w vm.mmap_min_addr="4096" && make -C tests test-frametest test-fuzzer' COMPILER=cc
- name: (Precise) frame and fuzzer test
dist: precise
install:
- sudo sysctl -w vm.mmap_min_addr=4096
script:
- make -C tests test-frametest test-fuzzer
- os: linux
sudo: false
env: Ubu=12.04cont Cmd="make gpptest && make clean && make examples && make clean cmake && make clean travis-install && make clean clangtest" COMPILER=cc
- name: (Precise) g++ and clang CMake test
dist: precise
script:
- make gpptest
- make clean
- make examples
- make clean cmake
- make clean travis-install
- make clean clangtest
# 14.04 LTS Server Edition 64 bit
- env: Ubu=14.04 Cmd='make -C tests test MOREFLAGS=-mx32' COMPILER=cc
- name: (Trusty) i386 gcc test
dist: trusty
sudo: required
addons:
apt:
packages:
- libc6-dev-i386
- gcc-multilib
script:
- make -C tests test MOREFLAGS=-mx32
# presume clang >= v3.9.0
- env: Ubu=14.04 Cmd='make usan MOREFLAGS=-Wcomma -Werror' COMPILER=clang
- name: (Trusty) USan test
dist: trusty
sudo: required
addons:
apt:
packages:
- clang
compiler: clang
script:
- make usan MOREFLAGS=-Wcomma -Werror
- env: Ubu=14.04 Cmd='make c_standards && make -C tests test-lz4 test-mem' COMPILER=cc
- name: (Trusty) valgrind test
dist: trusty
sudo: required
addons:
apt:
packages:
- valgrind
install:
- sudo apt-get install -qq valgrind
script:
- make c_standards
- make -C tests test-lz4 test-mem
- env: Ubu=14.04 Cmd='make ctocpptest' COMPILER=cc
- name: (Trusty) c-to-c++ test
dist: trusty
sudo: false
script:
- make ctocpptest
- env: Ubu=14.04 Cmd='make -C tests test-lz4c32 test-fullbench32 versionsTest' COMPILER=cc
- name: (Trusty) i386 benchmark + version test
dist: trusty
sudo: required
addons:
apt:
packages:
- python3
- libc6-dev-i386
- gcc-multilib
install:
- sudo apt-get install -qq python3 libc6-dev-i386 gcc-multilib
script:
- make -C tests test-lz4c32 test-fullbench32 versionsTest
- env: Ubu=14.04 Cmd='sudo sysctl -w vm.mmap_min_addr="4096" && make -C tests test-frametest32 test-fuzzer32' COMPILER=cc
- name: (Trusty) i386 frame + fuzzer test
dist: trusty
sudo: required
addons:
apt:
packages:
- libc6-dev-i386
- gcc-multilib
install:
- sudo apt-get install -qq libc6-dev-i386 gcc-multilib
- sudo sysctl -w vm.mmap_min_addr=4096
script:
- make -C tests test-frametest32 test-fuzzer32
- env: Ubu=14.04 Cmd='make c_standards CC=gcc-6 && make -C tests test-lz4 CC=gcc-6 MOREFLAGS=-Werror' COMPILER=gcc-6
- name: (Trusty) gcc-6 standard C compilation
dist: trusty
sudo: required
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- gcc-6
env:
- CC=gcc-6
script:
- make c_standards
- make -C tests test-lz4 MOREFLAGS=-Werror
- env: Ubu=14.04 Cmd='make platformTest CC=arm-linux-gnueabi-gcc QEMU_SYS=qemu-arm-static && make platformTest CC=aarch64-linux-gnu-gcc QEMU_SYS=qemu-aarch64-static' COMPILER=arm-linux-gnueabi-gcc
- name: (Trusty) arm + aarch64 compilation
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
install:
- sudo apt-get install -qq
qemu-system-arm
qemu-user-static
gcc-arm-linux-gnueabi
libc6-dev-armel-cross
gcc-aarch64-linux-gnu
libc6-dev-arm64-cross
script:
- make platformTest CC=arm-linux-gnueabi-gcc QEMU_SYS=qemu-arm-static
- make platformTest CC=aarch64-linux-gnu-gcc QEMU_SYS=qemu-aarch64-static
- env: Ubu=14.04 Cmd='make -C tests test-lz4 clean test-lz4c32 CC=gcc-5 MOREFLAGS=-Werror' COMPILER=gcc-5
dist: trusty
sudo: required
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- libc6-dev-i386
- gcc-multilib
- gcc-5
- gcc-5-multilib
- name: (Xenial) gcc-5 compilation
dist: xenial
install:
- sudo apt-get install -qq libc6-dev-i386 gcc-multilib
script:
- make -C tests test-lz4 clean test-lz4c32 MOREFLAGS=-Werror
- env: Ubu=14.04 Cmd='make -C tests test-lz4 CC=clang-3.8' COMPILER=clang-3.8
- name: (Trusty) clang-3.8 compilation
dist: trusty
sudo: required
addons:
apt:
sources:
@ -118,29 +125,28 @@ matrix:
- llvm-toolchain-precise-3.8
packages:
- clang-3.8
script:
- make -C tests test-lz4 CC=clang-3.8
- env: Ubu=14.04 Cmd='make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc-static && make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc64-static MOREFLAGS=-m64' COMPILER=powerpc-linux-gnu-gcc
- name: (Trusty) PowerPC + PPC64 compilation
dist: trusty
sudo: required
addons:
apt:
packages:
- qemu-system-ppc
- qemu-user-static
- gcc-powerpc-linux-gnu
install:
- sudo apt-get install -qq qemu-system-ppc qemu-user-static gcc-powerpc-linux-gnu
script:
- make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc-static
- make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc64-static MOREFLAGS=-m64
- env: Ubu=14.04 Cmd='make staticAnalyze && make cppcheck' COMPILER=clang
- name: (Trusty) scan-build + cppcheck
dist: trusty
sudo: required
addons:
apt:
packages:
- clang
- cppcheck
compiler: clang
install:
- sudo apt-get install -qq cppcheck
script:
- make staticAnalyze
- make cppcheck
- env: Ubu=14.04 Cmd='make clean all CC=gcc-4.4 MOREFLAGS=-Werror && make clean && CFLAGS=-fPIC LDFLAGS="-pie -fPIE -D_FORTIFY_SOURCE=2" make -C programs' COMPILER=gcc-4.4
- name: (Trusty) gcc-4.4 compilation
dist: trusty
sudo: required
addons:
apt:
sources:
@ -149,38 +155,41 @@ matrix:
- libc6-dev-i386
- gcc-multilib
- gcc-4.4
script:
- make clean all CC=gcc-4.4 MOREFLAGS=-Werror
- make clean
- CFLAGS=-fPIC LDFLAGS='-pie -fPIE -D_FORTIFY_SOURCE=2' make -C programs
# tag-specific test
- if: tag =~ ^v[0-9]\.[0-9]
- name: tag build
if: tag =~ ^v[0-9]\.[0-9]
os: linux
sudo: false
env: Cmd="make -C tests checkTag && tests/checkTag $TRAVIS_BRANCH " COMPILER=cc
script:
- make -C tests checkTag
- tests/checkTag "$TRAVIS_BRANCH"
- dist: xenial
sudo: required
env: BUILD_SYSTEM='meson'
- name: (Xenial) Meson + clang build
env: ALLOW_FAILURES=true
dist: xenial
language: cpp
compiler: clang
install:
- sudo apt-get install -qq python3 tree
- curl -o ~/ninja.zip -L 'https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-linux.zip'
&& unzip ~/ninja.zip -d ~/.local/bin
- curl -o ~/get-pip.py 'https://bootstrap.pypa.io/get-pip.py'
&& python3 ~/get-pip.py --user
&& pip3 install --user meson
script:
- meson setup
--buildtype=debug
-Db_lundef=false
-Dauto_features=enabled
-Ddefault_library=both
-Dbuild_{programs,contrib,tests,examples}=true
contrib/meson build
- cd build
- DESTDIR=./staging ninja install
- tree ./staging
allow_failures:
- env: BUILD_SYSTEM='meson'
script:
- if [ "${BUILD_SYSTEM}" = meson ]; then
sudo apt-get install -qq python3 tree
&& curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
&& python3 get-pip.py --user && rm get-pip.py
&& pip3 install --user meson ninja
&& export CC=clang CXX=clang++
&& meson --buildtype=debug
-Db_lundef=false
-Dauto_features=enabled
-Ddefault_library=both
-Dbuild_{programs,contrib,tests,examples}=true
contrib/meson build
&& cd "$_"
&& DESTDIR=./staging ninja install
&& tree ./staging;
travis_terminate "$?";
fi
- uname -a
- echo Cmd=$Cmd
- $COMPILER -v
- sh -c "$Cmd"
- env: ALLOW_FAILURES=true