env:
  - GHCVER=7.2.2
  - GHCVER=7.4.2
  - GHCVER=7.6.3
  - GHCVER=head

before_install:
  - sudo add-apt-repository -y ppa:hvr/ghc
  - sudo apt-get update
  - sudo apt-get install cabal-install-1.18 ghc-$GHCVER
  - export PATH=/opt/ghc/$GHCVER/bin:$PATH

install:
  - cabal-1.18 update
  - cabal-1.18 install happy
  - export PATH=$HOME/.cabal/bin:$PATH
  - happy --version
  - cabal-1.18 install --only-dependencies --enable-tests

script:
  - cabal-1.18 configure --enable-tests
  - cabal-1.18 build
  - cabal-1.18 test
  - cabal-1.18 check
  - cabal-1.18 sdist
  # The following scriptlet checks that the resulting source distribution can be built & installed
  - export SRC_TGZ=$(cabal-1.18 info . | awk '{print $2 ".tar.gz";exit}');
    cd dist/;
    if [ -f "$SRC_TGZ" ]; then
      cabal-1.18 install --enable-tests "$SRC_TGZ";
    else
      echo "expected '$SRC_TGZ' not found";
      exit 1;
    fi

matrix:
  allow_failures:
    - env: GHCVER=head