Update RTS flags (#613)
[hadrian.git] / circle.yml
1 machine:
2   xcode:
3     version: 8.0
4   environment:
5     MODE: --flavour=quickest --integer-simple
6
7 dependencies:
8   override:
9     - brew update
10     - brew install ghc cabal-install python3
11     - brew link ghc cabal-install python3
12     - cabal update
13     - cabal install alex 'happy >= 1.19.4' mtl shake QuickCheck
14   cache_directories:
15     - ~/.cabal
16     - ~/.ghc
17     - /usr/local/Cellar
18
19 compile:
20   override:
21     # Fetch GHC sources into ./ghc
22     - git --version
23     - git config --global url."git://github.com/ghc/packages-".insteadOf git://github.com/ghc/packages/
24     - git clone --depth 1 --recursive git://github.com/ghc/ghc
25
26     # GHC comes with an older version of Hadrian, so we delete it
27     - rm -rf ghc/hadrian/.git
28     # move hadrian's .git into ./ghc/hadrian and perform a hard reset in order to regenerate Hadrian files
29     - mv .git ghc/hadrian
30     # NOTE: we must write them in the same line because each line
31     # in CircleCI is a separate process, thus you can't "cd" for the other lines
32     - cd ghc/hadrian; git reset --hard HEAD
33
34     - cd ghc; ./boot && PATH=~/.cabal/bin:$PATH ./configure
35
36     # XXX: export PATH doesn't work well either, so we use inline env
37     # Self test
38     - PATH=~/.cabal/bin:$PATH ghc/hadrian/build.sh selftest
39
40     # Build GHC
41     - PATH=~/.cabal/bin:$PATH ghc/hadrian/build.sh -j $MODE --no-progress --progress-colour=never --profile=-
42
43 test:
44   override:
45     # Test GHC binary
46     - ghc/_build/stage1/bin/ghc -e 1+2