"Fossies" - the Fresh Open Source Software Archive

Member "zstd-1.4.5/.travis.yml" (22 May 2020, 8524 Bytes) of package /linux/misc/zstd-1.4.5.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Ansible YAML source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for ".travis.yml": 1.4.4_vs_1.4.5.

    1 # Medium Tests: Run on all commits/PRs to dev branch
    2 
    3 language: c
    4 
    5 git:
    6   depth: 1
    7 
    8 branches:
    9   only:
   10   - dev
   11   - master
   12   - travisTest
   13 
   14 addons:
   15   apt:
   16     update: true
   17 
   18 env:
   19   global:
   20     - FUZZERTEST=-T2mn
   21       ZSTREAM_TESTTIME=-T2mn
   22       DECODECORPUS_TESTTIME=-T1mn
   23 
   24 
   25 matrix:
   26   fast_finish: true
   27   include:
   28     - name: icc
   29       compiler: icc
   30       env:
   31       - C_COMPILER=icc
   32       - CXX_COMPILER=icpc
   33       install:
   34       - source /opt/intel/inteloneapi/compiler/latest/env/vars.sh
   35       addons:
   36         apt:
   37           sources:
   38           - sourceline: 'deb https://apt.repos.intel.com/oneapi all main'
   39             key_url: 'https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB'
   40           packages:
   41           - intel-oneapi-icc
   42       script: make check
   43 
   44     - name: arm64    # ~2.5 mn
   45       os: linux
   46       arch: arm64
   47       script:
   48         - make check
   49 
   50     - name: make benchmarking
   51       script:
   52         - make benchmarking
   53 
   54     - name: make test (complete)
   55       script:
   56         # DEVNULLRIGHTS : will request sudo rights to test permissions on /dev/null
   57         - DEVNULLRIGHTS=test make test
   58 
   59     - name: gcc-6 + gcc-7 + libzstdmt compilation   # ~ 6mn
   60       script:
   61         - make gcc6install gcc7install
   62         - CC=gcc-6 CFLAGS=-Werror make -j all
   63         - make clean
   64         - CC=gcc-7 CFLAGS=-Werror make -j all
   65         - make clean
   66         - LDFLAGS=-Wl,--no-undefined make -C lib libzstd-mt
   67         - make -C tests zbufftest-dll
   68         # LDFLAGS=-Wl,--no-undefined : will make the linker fail if dll is underlinked
   69         # zbufftest-dll : test that a user program can link to multi-threaded libzstd without specifying -pthread
   70 
   71     - name: gcc-8 + ASan + UBSan + Test Zstd   # ~6.5mn
   72       script:
   73         - make gcc8install
   74         - CC=gcc-8 CFLAGS="-Werror" make -j all
   75         - make clean
   76         - CC=gcc-8 make -j uasan-test-zstd </dev/null   # test when stdin is not a tty
   77 
   78     - name: gcc-6 + ASan + UBSan + Test Zstd, 32bit mode    # ~4mn
   79       script:
   80         - make gcc6install libc6install
   81         - CC=gcc-6 CFLAGS="-Werror -m32" make -j all32
   82         - make clean
   83         - CC=gcc-6 make -j uasan-test-zstd32   # note : can complain about pointer overflow
   84 
   85     - name: clang-3.8 + MSan + Test Zstd    # ~3.5mn
   86       script:
   87         - make clang38install
   88         # External libraries must be turned off when using MSAN tests,
   89         # because they are not msan-instrumented,
   90         # so any data coming from these libraries is always considered "uninitialized"
   91         - CC=clang-3.8 make clean msan-test-zstd HAVE_ZLIB=0 HAVE_LZ4=0 HAVE_LZMA=0
   92 
   93     - name: Minimal Decompressor Macros    # ~5mn
   94       script:
   95         - make clean
   96         - make -j all check ZSTD_LIB_MINIFY=1 MOREFLAGS="-Werror"
   97         - make clean
   98         - make -j all check MOREFLAGS="-Werror -DHUF_FORCE_DECOMPRESS_X1 -DZSTD_FORCE_DECOMPRESS_SEQUENCES_SHORT"
   99         - make clean
  100         - make -j all check MOREFLAGS="-Werror -DHUF_FORCE_DECOMPRESS_X2 -DZSTD_FORCE_DECOMPRESS_SEQUENCES_LONG"
  101         - make clean
  102         - make -j all check MOREFLAGS="-Werror -DZSTD_NO_INLINE -DZSTD_STRIP_ERROR_STRINGS"
  103 
  104     - name: cmake build and test check    # ~6mn
  105       script:
  106         - make cmakebuild
  107 
  108     - name: static analyzer scanbuild    # ~26mn
  109       dist: trusty  # note : it's important to pin down a version of static analyzer, since different versions report different false positives
  110       script:
  111         - make staticAnalyze
  112 
  113     - name: gcc-8 + ASan + UBSan + Fuzz Test    # ~19mn
  114       script:
  115         - make gcc8install
  116         - CC=gcc-8 make clean uasan-fuzztest
  117 
  118     - name: gcc-6 + ASan + UBSan + Fuzz Test 32bit    # ~15.5mn
  119       script:
  120         - make gcc6install libc6install
  121         - CC=gcc-6 CFLAGS="-O2 -m32" make uasan-fuzztest   # can complain about pointer overflow
  122 
  123     - name: clang-3.8 + MSan + Fuzz Test     # ~14.5mn
  124       script:
  125         - make clang38install
  126         - CC=clang-3.8 make clean msan-fuzztest
  127 
  128     - name: ASan + UBSan + MSan + Regression Test    # ~ 4.5mn
  129       script:
  130         - make -j uasanregressiontest
  131         - make clean
  132         - make -j msanregressiontest
  133 
  134     - name: C++, gnu90 and c99 compatibility   # ~3mn
  135       script:
  136         - make cxxtest
  137         - make clean
  138         - make gnu90build
  139         - make clean
  140         - make c99build
  141         - make clean
  142         - make travis-install    # just ensures `make install` works
  143 
  144     - name: mingw cross-compilation
  145       script :
  146         - sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix;
  147         - CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ CFLAGS="-Werror -O1" make zstd
  148 
  149     - name: Valgrind + Fuzz Test Stack Mode    # ~ 7mn
  150       script:
  151         - make valgrindinstall
  152         - make -C tests clean valgrindTest
  153         - make clean
  154         - make -C tests test-fuzzer-stackmode
  155 
  156     - name: Qemu ARM emulation + Fuzz Test    # ~13.5mn
  157       script:
  158         - make arminstall
  159         - make armfuzz
  160 
  161     # Introduced to check compat with old toolchains, to prevent e.g. #1872
  162     - name: ARM Build Test (on Trusty)
  163       dist: trusty
  164       script:
  165         - make arminstall
  166         - make armbuild
  167 
  168     - name: Qemu PPC + Fuzz Test    # ~13mn
  169       dist: trusty   # it seems ppc cross-compilation fails on "current"
  170       script:
  171         - make ppcinstall
  172         - make ppcfuzz
  173 
  174     # check release number (release only)
  175     - name: Tag-Specific Test
  176       if: tag =~ ^v[0-9]\.[0-9]
  177       script:
  178         - make -C tests checkTag
  179         - tests/checkTag "$TRAVIS_BRANCH"
  180 
  181     # tests for master branch and cron job only
  182     - name: OS-X    # ~13mn
  183       if: branch = master
  184       os: osx
  185       script:
  186         - make test
  187         - make -C lib all
  188 
  189     - name: zbuff test
  190       if: branch = master
  191       script:
  192         - make -C tests test-zbuff
  193 
  194     - name: Versions Compatibility Test   # 11.5mn
  195       if: branch = master
  196       script:
  197         - make -C tests versionsTest
  198 
  199     - name: thread sanitizer   # ~29mn
  200       if: branch = master
  201       script:
  202         - make clang38install
  203         - CC=clang-3.8 make tsan-test-zstream
  204         - CC=clang-3.8 make tsan-fuzztest
  205 
  206     - name: PPC64LE + Fuzz test  # ~13mn
  207       if: branch = master
  208       arch: ppc64le
  209       script:
  210         - cat /proc/cpuinfo
  211         - make test
  212 
  213     - name: Qemu PPC64 + Fuzz test  # ~13mn, presumed Big-Endian (?)
  214       dist: trusty  # note : PPC64 cross-compilation for Qemu tests seems broken on Xenial
  215       if: branch = master
  216       script:
  217         - make ppcinstall
  218         - make ppc64fuzz
  219 
  220     # note : we already have aarch64 tests on hardware
  221     - name: Qemu aarch64 + Fuzz Test (on Xenial)    # ~14mn
  222       if: branch = master
  223       dist: xenial
  224       script:
  225         - make arminstall
  226         - make aarch64fuzz
  227 
  228     - name: zlib wrapper test    # ~7.5mn
  229       if: branch = master
  230       script:
  231         - make gpp6install valgrindinstall
  232         - make -C zlibWrapper test
  233         - make -C zlibWrapper valgrindTest
  234 
  235     - name: LZ4, thread pool, and partial libs tests    # ~2mn
  236       if: branch = master
  237       script:
  238         - make lz4install
  239         - make -C tests test-lz4
  240         - make clean
  241         - make -C tests test-pool
  242         - make clean
  243         - bash tests/libzstd_partial_builds.sh
  244 
  245     # meson dedicated test
  246     - name: Xenial (Meson + clang)    # ~15mn
  247       if: branch = master
  248       dist: xenial
  249       language: cpp
  250       compiler: clang
  251       install:
  252         - sudo apt-get install -qq liblz4-dev valgrind tree
  253         - |
  254           travis_retry curl -o ~/ninja.zip -L 'https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-linux.zip' &&
  255           unzip ~/ninja.zip -d ~/.local/bin
  256         - |
  257           travis_retry curl -o ~/get-pip.py -L 'https://bootstrap.pypa.io/get-pip.py' &&
  258           python3 ~/get-pip.py --user &&
  259           pip3 install --user meson
  260       script:
  261         - |
  262           meson setup \
  263             --buildtype=debugoptimized \
  264             -Db_lundef=false \
  265             -Dauto_features=enabled \
  266             -Dbin_programs=true \
  267             -Dbin_tests=true \
  268             -Dbin_contrib=true \
  269             -Ddefault_library=both \
  270              build/meson builddir
  271         - pushd builddir
  272         - ninja
  273         - meson test --verbose --no-rebuild
  274         - DESTDIR=./staging ninja install
  275         - tree ./staging
  276       after_failure:
  277         - cat "$TRAVIS_BUILD_DIR"/builddir/meson-logs/testlog.txt
  278 
  279   allow_failures:
  280     - env: ALLOW_FAILURES=true