2016-06-18 05:30:50 +03:00
|
|
|
# Use new container infrastructure to enable caching
|
|
|
|
sudo: false
|
|
|
|
|
|
|
|
# Choose a lightweight base image; we provide our own build tools.
|
|
|
|
language: c
|
|
|
|
|
|
|
|
# Caching so the next build will be fast too.
|
|
|
|
cache:
|
|
|
|
directories:
|
|
|
|
- $HOME/.ghc
|
|
|
|
- $HOME/.cabal
|
|
|
|
- $HOME/.stack
|
|
|
|
|
|
|
|
# We set the compiler values here to tell Travis to use a different
|
|
|
|
# cache file per set of arguments.
|
|
|
|
#
|
|
|
|
matrix:
|
|
|
|
include:
|
|
|
|
- env: ARGS="--resolver lts-3"
|
|
|
|
compiler: "stackage lts-3 (ghc 7.10.2)"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
|
|
|
|
|
|
|
- env: ARGS="--resolver lts-4"
|
|
|
|
compiler: "stackage lts-4 (ghc 7.10.3)"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
|
|
|
|
|
|
|
- env: ARGS="--resolver lts-5"
|
|
|
|
compiler: "stackage lts-5 (ghc 7.10.3)"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
|
|
|
|
|
|
|
- env: ARGS="--resolver lts-6"
|
|
|
|
compiler: "stackage lts-6 (ghc 7.10.3)"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
2016-12-29 08:05:33 +03:00
|
|
|
|
|
|
|
- env: ARGS="--resolver lts-7"
|
|
|
|
compiler: "stackage lts-7 (ghc 8.0.1)"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
2017-02-14 14:37:15 +03:00
|
|
|
|
|
|
|
- env: ARGS="--resolver lts-8"
|
|
|
|
compiler: "stackage lts-8 (ghc 8.0.2)"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
2017-09-23 07:05:37 +03:00
|
|
|
|
|
|
|
- env: ARGS="--resolver lts-9"
|
|
|
|
compiler: "stackage lts-9 (ghc 8.0.2)"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
2017-12-31 10:09:18 +03:00
|
|
|
|
|
|
|
- env: ARGS="--resolver lts-10"
|
|
|
|
compiler: "stackage lts-10 (ghc 8.2.2)"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
2016-06-18 05:30:50 +03:00
|
|
|
|
|
|
|
- env: ARGS="--resolver nightly"
|
|
|
|
compiler: "stackage nightly"
|
|
|
|
addons: {apt: {packages: [libgmp-dev]}}
|
|
|
|
|
|
|
|
before_install:
|
|
|
|
# Using compiler above sets CC to an invalid value, so unset it
|
|
|
|
- unset CC
|
|
|
|
|
|
|
|
# Download and unpack the stack executable
|
|
|
|
- export PATH=$HOME/.local/bin:$PATH
|
|
|
|
- mkdir -p ~/.local/bin
|
|
|
|
- |
|
|
|
|
travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
|
|
|
|
|
|
|
|
# Use the more reliable S3 mirror of Hackage
|
|
|
|
mkdir -p $HOME/.cabal
|
|
|
|
echo 'remote-repo: hackage.haskell.org:http://hackage.fpcomplete.com/' > $HOME/.cabal/config
|
|
|
|
echo 'remote-repo-cache: $HOME/.cabal/packages' >> $HOME/.cabal/config
|
|
|
|
- stack --no-terminal $ARGS setup
|
|
|
|
- echo "$(stack $ARGS ghc -- --version) [$(stack $ARGS ghc -- --print-project-git-commit-id 2> /dev/null || echo '?')]"
|
|
|
|
|
|
|
|
install:
|
|
|
|
- stack --no-terminal $ARGS test --bench --only-dependencies
|
|
|
|
|
|
|
|
script:
|
|
|
|
- stack --no-terminal $ARGS test --bench --no-run-benchmarks --haddock --no-haddock-deps
|