summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--.travis.yml60
1 files changed, 46 insertions, 14 deletions
diff --git a/.travis.yml b/.travis.yml
index 4bfef9f..b84b84a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -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
+
+# 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
+
-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
+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