IHaskell/.travis.yml
Andrew Gibiansky 37df10055f Travis fixes 6
2016-06-07 20:00:05 -07:00

62 lines
1.9 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Test against different stack LTS versions.
env:
- RESOLVER=lts-6.2 # Most recent GHC 7.10 LTS
- RESOLVER=lts-2.22 # Last GHC 7.8 LTS
# Choose a lightweight base image; we provide our own build tools.
language: c
# Enable caching.
sudo: false
# Caching so the next build will be fast too.
# These caches are the same between resolvers, but this is fine,
# as Stack differentiates between its resolvers.
cache:
directories:
- $HOME/.ghc
- $HOME/.cabal
- $HOME/.stack
- $HOME/zeromq
# Enable packages we need.
# Not all packages are available see before_install for from-source builds.
addons:
apt:
packages:
- libmagic-dev
- libgmp-dev
before_install:
# Download and unpack the stack executable
- export PATH=$HOME/.local/bin:$PATH
- mkdir -p ~/.local/bin
- curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
# Install zeromq3 -- the package is not supported yet on Travis whitelist... (06/06/2016)
- |
if [ ! -d "$HOME/zeromq/lib" ]; then
export OLDPWD=$(pwd)
travis_retry git clone http://www.github.com/zeromq/zeromq4-x.git libzmq
mkdir $HOME/zeromq
cd libzmq
travis_retry ./autogen.sh
travis_retry ./configure --prefix=$HOME/zeromq
make
travis_retry make install
cd $OLDPWD
fi
# This step takes the longest, and is what generates the Stack cache.
install:
- export LD_LIBRARY_PATH=$HOME/zeromq/lib
- find $HOME/zeromq -type f
- export PKG_CONFIG_PATH=$HOME/zeromq/lib/pkgconfig/
- stack setup --resolver=$RESOLVER
- stack install zeromq4-haskell --resolver=$RESOLVER --extra-lib-dirs=$HOME/zeromq/lib --extra-include-dirs=$HOME/zeromq/include
- stack build --dependencies-only --resolver=$RESOLVER
script:
- stack build --resolver=$RESOLVER
- stack test --resolver=$RESOLVER