summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: 836e62aeb2cc279b05d612d2ddd0765ca5ef2909 (plain)
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
git:
  submodules: false

env:
 - DEBUG_STAGE2=YES
 - DEBUG_STAGE2=NO

before_install:
 - travis_retry sudo add-apt-repository -y ppa:hvr/ghc
 - travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
 - travis_retry sudo sh -c "echo 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.6 main' >> /etc/apt/sources.list"
 - wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
 - travis_retry sudo apt-get update
 - travis_retry sudo apt-get install cabal-install-1.18 ghc-7.6.3 alex-3.1.3 happy-1.19.4
 - travis_retry sudo apt-get install llvm-3.6
 - export PATH=/opt/ghc/7.6.3/bin:/opt/cabal/1.18/bin:/opt/alex/3.1.3/bin:/opt/happy/1.19.4/bin:/usr/lib/llvm-3.6/bin:$PATH

# Be explicit about which protocol to use, such that we don't have to repeat the rewrite command for each.
 - git config remote.origin.url git://github.com/${TRAVIS_REPO_SLUG}.git
 - git config --global url."git://github.com/${TRAVIS_REPO_SLUG%/*}/packages-".insteadOf "git://github.com/${TRAVIS_REPO_SLUG%/*}/packages/"
 - git submodule --quiet init # Be quiet about these urls, as we may override them later.

# Check if submodule repositories exist.
 - git config --get-regexp submodule.*.url | while read entry url; do git ls-remote "$url" dummyref 2>/dev/null && echo "$entry = $url" || git config --unset-all "$entry" ; done

# Use github.com/ghc for those submodule repositories we couldn't connect to.
 - git config remote.origin.url git://github.com/ghc/ghc.git
 - git config --global url."git://github.com/ghc/packages-".insteadOf git://github.com/ghc/packages/
 - git submodule init # Don't be quiet, we want to show these urls.
 - git submodule --quiet update --recursive # Now we can be quiet again.

install:
# - sudo apt-get update
# - sudo apt-get install haskell-platform autoconf libtool make ncurses-dev g++ dblatex docbook-xsl docbook-utils
# - cabal update
script:
 # do  not build docs
 - echo 'HADDOCK_DOCS       = NO' >> mk/validate.mk
 - echo 'BUILD_DOCBOOK_HTML = NO' >> mk/validate.mk
 - echo 'BUILD_DOCBOOK_PS   = NO' >> mk/validate.mk
 - echo 'BUILD_DOCBOOK_PDF  = NO' >> mk/validate.mk
 # do not build dynamic libraries
 - echo 'DYNAMIC_GHC_PROGRAMS = NO' >> mk/validate.mk
 - echo 'GhcLibWays = v' >> mk/validate.mk
 - if [ "$DEBUG_STAGE" = "YES" ]; then echo 'GhcStage2HcOpts += -DDEBUG' >> mk/validate.mk; fi
 # Don't use --quiet, as it might cause the testsuite to not print output for
 # over 10 minutes, causing Travis to kill our job.
 - CPUS=2 SKIP_PERF_TESTS=YES ./validate --fast