]> www.wagner.pp.ru Git - openssl-gost/engine.git/blob - .travis.yml
travis-ci: Add descriptive names to the tests
[openssl-gost/engine.git] / .travis.yml
1 sudo: required
2 dist: bionic
3
4 os: linux
5
6 language: c
7
8 addons:
9   apt:
10     packages: [ cpanminus ]
11   homebrew:
12     packages: [ cpanminus ]
13
14 env:
15   global:
16     - PREFIX=${HOME}/opt
17     - PATH=${PREFIX}/bin:${PATH}
18     - OPENSSL_BRANCH=master
19
20 matrix:
21   include:
22     - name: linux/gcc/x86_64
23       os: linux
24       compiler: gcc
25     - name: linux/gcc/ppc64le
26       env: LABEL="linux-ppc64le" CMAKE_VERSION=3.15.1
27       os: linux-ppc64le
28       compiler: gcc
29       install:
30         - wget https://cmake.org/files/v${CMAKE_VERSION%.*}/cmake-${CMAKE_VERSION}.tar.gz && tar -xzf cmake-${CMAKE_VERSION}.tar.gz
31         - cd cmake-${CMAKE_VERSION} && ./bootstrap && sudo make install && cd ..
32     - name: linux/gcc+ASan/x86_64
33       env: ASAN=-DASAN=1
34       os: linux
35       compiler: gcc
36     - name: linux/gcc+Coverity/x86_64 (cron)
37       env: COVERITY_SCAN_PROJECT_NAME="gost-engine" COVERITY_SCAN_BRANCH_PATTERN="*" COVERITY_SCAN_NOTIFICATION_EMAIL="beldmit@gmail.com" COVERITY_SCAN_BUILD_COMMAND="make"
38       if: type == cron
39       os: linux
40       compiler: gcc
41       script:
42         - mkdir build
43         - cd build
44         - cmake -DOPENSSL_ROOT_DIR=${PREFIX} -DOPENSSL_LIBRARIES=${PREFIX}/lib -DOPENSSL_ENGINES_DIR=${PREFIX}/engines ..
45         - curl -s "https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh" | bash || true
46     - name: linux/gcc/arm64
47       os: linux
48       arch: arm64
49       compiler: gcc
50     - name: osx/clang/x86_64
51       os: osx
52       compiler: clang
53
54 before_script:
55   - curl -L https://cpanmin.us | sudo perl - --sudo App::cpanminus
56   - sudo cpanm --notest Test2::V0 > build.log 2>&1 || (cat build.log && exit 1)
57   - git clone --depth 1 -b ${OPENSSL_BRANCH} https://github.com/openssl/openssl.git
58   - cd openssl
59   - ./config shared -d --prefix=${PREFIX} --openssldir=${PREFIX} && travis_wait make -s -j$(nproc) all && make -s install_sw
60   - cd ..
61
62 script:
63   - if [ "${TRAVIS_OS_NAME}" = "linux" ]; then export LD_LIBRARY_PATH="${PREFIX}/lib:${LD_LIBRARY_PATH:-}"; fi
64   - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then export DYLD_LIBRARY_PATH="${PREFIX}/lib:${DYLD_LIBRARY_PATH:-}"; fi
65   - mkdir build
66   - cd build
67   - cmake -DOPENSSL_ROOT_DIR=${PREFIX} -DOPENSSL_LIBRARIES=${PREFIX}/lib -DOPENSSL_ENGINES_DIR=${PREFIX}/engines ${ASAN} ..
68   - make
69   - make test CTEST_OUTPUT_ON_FAILURE=1
70   - if [ -z "$ASAN" ]; then make tcl_tests; fi
71