# HG changeset patch # User Matt Johnston # Date 1453297018 -28800 # Node ID 1df4a0a162d7a01ded9f381ce8f26b455bcd7dc9 # Parent 00d7fc7b112b728d8e5807f222b8444265f214ea# Parent cb0806413220df12b64717b0fbcc405a5d192272 Merge pull request #22 from Chocobo1/travis TravisCI: Improvements diff -r 00d7fc7b112b -r 1df4a0a162d7 .travis.yml --- a/.travis.yml Wed Jan 20 21:24:36 2016 +0800 +++ b/.travis.yml Wed Jan 20 21:36:58 2016 +0800 @@ -1,23 +1,55 @@ language: c + +os: + - linux + - osx + +env: + matrix: + - BUNDLEDLIBTOM=--disable-bundled-libtom WEXTRAFLAGS=-Werror + - BUNDLEDLIBTOM=--enable-bundled-libtom + - MULTI=1 + - NOWRITEV=1 + +# TODO: remove this section when libtomcrypt compiles on OSX: https://github.com/libtom/libtomcrypt/issues/82 +matrix: + exclude: + - os: osx + env: BUNDLEDLIBTOM=--disable-bundled-libtom WEXTRAFLAGS=-Werror + - os: osx + env: MULTI=1 + - os: osx + env: NOWRITEV=1 + compiler: - gcc + - clang -script: - - autoconf && autoheader && ./configure $BUNDLEDLIBTOM CFLAGS="-O2 -Wall -Wno-pointer-sign $WEXTRAFLAGS" --prefix=$HOME/inst - - test "$NOWRITEV" && sed -i s/HAVE_WRITEV/DONT_HAVE_WRITEV/ config.h || true - - make install +# container-based builds +sudo: false +addons: + apt: + packages: + # packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise + - zlib1g-dev + - libtomcrypt-dev + - libtommath-dev + + +before_install: + - if [ "$CC" = "clang" ]; then WEXTRAFLAGS="$WEXTRAFLAGS -Wno-error=incompatible-library-redeclaration" ; fi # workaround + +install: + - if [ "$TRAVIS_OS_NAME" = "osx" -a "$BUNDLEDLIBTOM" != "--enable-bundled-libtom" ]; then brew update > /dev/null && brew install libtomcrypt libtommath ; fi + +script: + - autoconf && autoheader && ./configure "$BUNDLEDLIBTOM" CFLAGS="-O2 -Wall -Wno-pointer-sign $WEXTRAFLAGS" --prefix="$HOME/inst" + - if [ "$NOWRITEV" = "1" ]; then sed -i s/HAVE_WRITEV/DONT_HAVE_WRITEV/ config.h ; fi + - make -j3 install + +after_success: - ~/inst/bin/dropbearkey -t rsa -f testrsa - ~/inst/bin/dropbearkey -t dss -f testdss - ~/inst/bin/dropbearkey -t ecdsa -f testec256 -s 256 - ~/inst/bin/dropbearkey -t ecdsa -f testec384 -s 384 - ~/inst/bin/dropbearkey -t ecdsa -f testec521 -s 521 - -before_install: - - sudo apt-get update -qq - - sudo apt-get install -qq libz-dev libtomcrypt-dev libtommath-dev - -env: - - BUNDLEDLIBTOM=--disable-bundled-libtom WEXTRAFLAGS=-Werror - - BUNDLEDLIBTOM=--enable-bundled-libtom - - MULTI=1 - - NOWRITEV=1