diff --git a/.travis.yml b/.travis.yml index d6672df8..bb594b44 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,25 +2,36 @@ sudo: required language: c dist : trusty compiler: clang +os: + - linux + - osx env: global: - LIBSODIUM_VER=1.0.12 - MBEDTLS_VER=2.4.0 before_install: - - wget https://github.com/jedisct1/libsodium/releases/download/$LIBSODIUM_VER/libsodium-$LIBSODIUM_VER.tar.gz - - tar xvf libsodium-$LIBSODIUM_VER.tar.gz - - pushd libsodium-$LIBSODIUM_VER - - ./configure --prefix=/usr && make - - sudo make install - - popd - - wget https://tls.mbed.org/download/mbedtls-$MBEDTLS_VER-gpl.tgz - - tar xvf mbedtls-$MBEDTLS_VER-gpl.tgz - - pushd mbedtls-$MBEDTLS_VER - - make SHARED=1 - - sudo make install - - popd - # Load cached docker images - - if [[ -d $HOME/docker ]]; then ls $HOME/docker/*.tar.gz | xargs -I {file} sh -c "zcat {file} | docker load"; fi + - | + if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then + # All dependencies for macOS build. Some packages has been installed by travis so use reinstall. + brew reinstall autoconf automake xmlto udns libev mbedtls libsodium asciidoc >> /dev/null 2>&1; + else + wget https://github.com/jedisct1/libsodium/releases/download/$LIBSODIUM_VER/libsodium-$LIBSODIUM_VER.tar.gz; + tar xvf libsodium-$LIBSODIUM_VER.tar.gz; + pushd libsodium-$LIBSODIUM_VER; + ./configure --prefix=/usr && make; + sudo make install; + popd; + wget https://tls.mbed.org/download/mbedtls-$MBEDTLS_VER-gpl.tgz; + tar xvf mbedtls-$MBEDTLS_VER-gpl.tgz; + pushd mbedtls-$MBEDTLS_VER; + make SHARED=1; + sudo make install; + popd; + # Load cached docker images + if [[ -d $HOME/docker ]]; then + ls $HOME/docker/*.tar.gz | xargs -I {file} sh -c "zcat {file} | docker load"; + fi + fi addons: apt: sources: @@ -32,7 +43,12 @@ addons: - xmlto script: - ./autogen.sh - - ./configure && make + - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then + ./configure --disable-documentation --with-mbedtls=/usr/local/opt/mbedtls --with-sodium=/usr/local/opt/libsodium; + else + ./configure; + fi + - make - cd build && cmake ../ && make branches: only: