[commit: packages/haskeline] master: Fix Travis build on 7.2.* and update the script. (439b19a)

git at git.haskell.org git at git.haskell.org
Wed Oct 28 20:04:47 UTC 2015


Repository : ssh://git@git.haskell.org/haskeline

On branch  : master
Link       : http://git.haskell.org/packages/haskeline.git/commitdiff/439b19a07419bd4182336aa8d11b4679b379e4fe

>---------------------------------------------------------------

commit 439b19a07419bd4182336aa8d11b4679b379e4fe
Author: Judah Jacobson <judah.jacobson at gmail.com>
Date:   Sun Mar 22 10:40:55 2015 -0700

    Fix Travis build on 7.2.* and update the script.
    
    Updated to latest version of multi-ghc-travis.
    
    The build on 7.2.* was failing due to the constraint "Cabal >= $CABALVER"
    which tried to build a too-recent version of Cabal.  Fixed by changing the
    constraint to "Cabal == $CABALVER.*".


>---------------------------------------------------------------

439b19a07419bd4182336aa8d11b4679b379e4fe
 .travis.yml | 63 +++++++++++++++++++++++++++++++++++++------------------------
 1 file changed, 38 insertions(+), 25 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 0ccb2ed..c625dc1 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,38 +1,51 @@
+# Based on https://github.com/hvr/multi-ghc-travis
+#
+# NB: don't set `language: haskell` here
 env:
- - GHCVER=7.0.1 CABALVER=1.16
- - GHCVER=7.0.2 CABALVER=1.16
- - GHCVER=7.0.3 CABALVER=1.16
- - GHCVER=7.0.4 CABALVER=1.16
- - GHCVER=7.2.1 CABALVER=1.18
- - GHCVER=7.2.2 CABALVER=1.18
- - GHCVER=7.4.1 CABALVER=1.18
- - GHCVER=7.4.2 CABALVER=1.18
- - GHCVER=7.6.1 CABALVER=1.18
- - GHCVER=7.6.2 CABALVER=1.18
- - GHCVER=7.6.3 CABALVER=1.18
+ - CABALVER=1.16 GHCVER=7.0.1
+ - CABALVER=1.16 GHCVER=7.0.2
+ - CABALVER=1.16 GHCVER=7.0.3
+ - CABALVER=1.16 GHCVER=7.0.4
+ - CABALVER=1.16 GHCVER=7.2.1
+ - CABALVER=1.16 GHCVER=7.2.2
+ - CABALVER=1.16 GHCVER=7.4.1
+ - CABALVER=1.16 GHCVER=7.4.2
+ - CABALVER=1.16 GHCVER=7.6.1
+ - CABALVER=1.16 GHCVER=7.6.2
+ - CABALVER=1.18 GHCVER=7.6.3
+ - CABALVER=1.18 GHCVER=7.8.1
+ - CABALVER=1.18 GHCVER=7.8.2
+ - CABALVER=1.18 GHCVER=7.8.3
+ - CABALVER=1.22 GHCVER=7.10.1
 
+# Note: the distinction between `before_install` and `install` is not important.
 before_install:
- - sudo add-apt-repository -y ppa:hvr/ghc
- - sudo apt-get update
- - sudo apt-get install cabal-install-$CABALVER ghc-$GHCVER
- - export PATH=/opt/ghc/$GHCVER/bin:$PATH
+ - travis_retry sudo add-apt-repository -y ppa:hvr/ghc
+ - travis_retry sudo apt-get update
+ - travis_retry sudo apt-get install cabal-install-$CABALVER ghc-$GHCVER
+ - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
 
 install:
- - cabal-$CABALVER update
- - cabal-$CABALVER install --only-dependencies
- - cabal-$CABALVER install "Cabal >= $CABALVER"
- - ghc --version
+ - cabal --version
+ - echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
+ - travis_retry cabal update
+ - cabal install --only-dependencies
+ - cabal install "Cabal == $CABALVER.*"  # Use the same Cabal version for Setup.hs and cabal-install
 
+# Here starts the actual work to be performed for the package under test; any command which exits with a non-zero exit code causes the build to fail.
 script:
- - cabal-$CABALVER configure -v2
- - cabal-$CABALVER build -v2
- - cabal-$CABALVER check
- - cabal-$CABALVER sdist
+ - if [ -f configure.ac ]; then autoreconf -i; fi
+ - cabal --version
+ - cabal configure -v2  # -v2 provides useful information for debugging
+ - cabal build   # this builds all libraries and executables (including tests/benchmarks)
+ - cabal check
+ - cabal sdist   # tests that a source-distribution can be generated
+
 # The following scriptlet checks that the resulting source distribution can be built & installed
- - export SRC_TGZ=$(cabal-$CABALVER info . | awk '{print $2 ".tar.gz";exit}') ;
+ - export SRC_TGZ=$(cabal info . | awk '{print $2 ".tar.gz";exit}') ;
    cd dist/;
    if [ -f "$SRC_TGZ" ]; then
-      cabal-$CABALVER install "$SRC_TGZ";
+      cabal install --force-reinstalls "$SRC_TGZ";
    else
       echo "expected '$SRC_TGZ' not found";
       exit 1;



More information about the ghc-commits mailing list