-
Notifications
You must be signed in to change notification settings - Fork 5
/
.travis.yml
50 lines (43 loc) · 1.53 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
language: haskell
env:
- GHCVER=7.6.3
- GHCVER=7.8.4
- GHCVER=7.10.1
before_install:
# If $GHCVER is the one travis has, don't bother reinstalling it.
# We can also have faster builds by installing some libraries with
# `apt`. If it isn't, install the GHC we want from hvr's PPA along
# with cabal-1.18.
- |
# Install the GHC we want from hvr's PPA
travis_retry sudo add-apt-repository -y ppa:hvr/ghc
travis_retry sudo apt-get update
travis_retry sudo apt-get install cabal-install-1.22 ghc-$GHCVER happy libphash0-dev
export CABAL=cabal-1.22
export PATH=/opt/ghc/$GHCVER/bin:$PATH
# Uncomment whenever hackage is down.
# - mkdir -p ~/.cabal && cp travis/config ~/.cabal/config && $CABAL update
- $CABAL update
# Update happy when building with GHC head
- |
if [ $GHCVER = "7.8.4" ] || [ $GHCVER = "7.10.1" ]; then
$CABAL install --constraint=transformers\ installed happy alex
export PATH=$HOME/.cabal/bin:$PATH
fi
install:
- $CABAL install --dependencies-only --enable-tests
- $CABAL configure --enable-tests -flib-Werror
script:
- $CABAL build
- $CABAL test --show-details=always
# tests that a source-distribution can be generated
- $CABAL sdist
# check that the generated source-distribution can be built & installed
- export SRC_TGZ=$(cabal info . | awk '{print $2 ".tar.gz";exit}') ;
cd dist/;
if [ -f "$SRC_TGZ" ]; then
$CABAL install --force-reinstalls "$SRC_TGZ";
else
echo "expected '$SRC_TGZ' not found";
exit 1;
fi