diff options
author | Ben Gamari <ben@smart-cactus.org> | 2018-10-23 14:20:13 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-10-23 14:20:13 -0400 |
commit | 94756201349685a34c4495addd3484fdfcc8b498 (patch) | |
tree | fd4a9cee20d3c2b79f56ded7e02fb0c01b26b6c9 /hadrian/circle.yml | |
parent | 575b35f4cdc18045bccd42d341d6f25d95c0696c (diff) | |
parent | 45f3bff7016a2a0cd9a5455a882ced984655e90b (diff) | |
download | haskell-94756201349685a34c4495addd3484fdfcc8b498.tar.gz |
Add 'hadrian/' from commit '45f3bff7016a2a0cd9a5455a882ced984655e90b'
git-subtree-dir: hadrian
git-subtree-mainline: 575b35f4cdc18045bccd42d341d6f25d95c0696c
git-subtree-split: 45f3bff7016a2a0cd9a5455a882ced984655e90b
Diffstat (limited to 'hadrian/circle.yml')
-rw-r--r-- | hadrian/circle.yml | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/hadrian/circle.yml b/hadrian/circle.yml new file mode 100644 index 0000000000..4d0d97340e --- /dev/null +++ b/hadrian/circle.yml @@ -0,0 +1,45 @@ +machine: + xcode: + version: 8.0 + environment: + MODE: --flavour=quickest --integer-simple + +dependencies: + override: + - brew update + - brew install ghc cabal-install python3 + - brew link ghc cabal-install python3 + - cabal update + - cabal install alex 'happy >= 1.19.4' mtl shake QuickCheck + cache_directories: + - ~/.cabal + - ~/.ghc + - /usr/local/Cellar + +compile: + override: + # Fetch GHC sources into ./ghc + - git --version + - git config --global url."git://github.com/ghc/packages-".insteadOf git://github.com/ghc/packages/ + - git clone --depth 1 --recursive git://github.com/ghc/ghc + + # GHC comes with an older version of Hadrian, so we delete it + - rm -rf ghc/hadrian/.git + # move hadrian's .git into ./ghc/hadrian and perform a hard reset in order to regenerate Hadrian files + - mv .git ghc/hadrian + # NOTE: we must write them in the same line because each line + # in CircleCI is a separate process, thus you can't "cd" for the other lines + - cd ghc/hadrian; git reset --hard HEAD + - cd ghc; ./boot && PATH=~/.cabal/bin:$PATH ./configure + + # XXX: export PATH doesn't work well either, so we use inline env + # Self test + - cd ghc; PATH=~/.cabal/bin:$PATH hadrian/build.sh selftest + + # Build GHC + - cd ghc; PATH=~/.cabal/bin:$PATH hadrian/build.sh -j $MODE --no-progress --progress-colour=never --profile=- + +test: + override: + # Test GHC binary + - ghc/_build/stage1/bin/ghc -e 1+2 |