]> www.wagner.pp.ru Git - openssl-gost/engine.git/blob - .travis.yml
travis-ci: add osx builds
[openssl-gost/engine.git] / .travis.yml
1 sudo: required
2 dist: xenial
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     - os: linux
23       compiler: gcc
24     - env: ASAN=-DASAN=1
25       os: linux
26       compiler: gcc
27     - os: osx
28       compiler: clang
29
30
31 before_script:
32   - sudo cpanm --notest Test2::V0 > build.log 2>&1 || (cat build.log && exit 1)
33   - git clone --depth 1 -b ${OPENSSL_BRANCH} https://github.com/openssl/openssl.git
34   - cd openssl
35   - ./config shared -d --prefix=${PREFIX} --openssldir=${PREFIX} && make -j$(nproc) all && make install_sw > build.log 2>&1 || (cat build.log && exit 1)
36   - cd ..
37
38 script:
39   - if [ "${TRAVIS_OS_NAME}" = "linux" ]; then export LD_LIBRARY_PATH="${PREFIX}/lib:${LD_LIBRARY_PATH:-}"; fi
40   - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then export DYLD_LIBRARY_PATH="${PREFIX}/lib:${DYLD_LIBRARY_PATH:-}"; fi
41   - mkdir build
42   - cd build
43   - cmake -DOPENSSL_ROOT_DIR=${PREFIX} -DOPENSSL_LIBRARIES=${PREFIX}/lib -DOPENSSL_ENGINES_DIR=${PREFIX}/engines ${ASAN} ..
44   - make
45   - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then cp bin/gost.{dylib,so}; fi # this hack is most probably related to https://github.com/openssl/openssl/issues/727
46   - make test CTEST_OUTPUT_ON_FAILURE=1