appveyor.yml 1.19 KB
Newer Older
1
clone_folder: "c:\\ghc\\hadrian"
2 3 4 5 6
environment:
  global:
    STACK_ROOT: "c:\\sr"

cache:
7
    - "c:\\sr -> appveyor.yml"
8

Andrey Mokhov's avatar
Andrey Mokhov committed
9
install:
10
    # Get Stack
11
    - curl -ostack.zip -LsS --insecure https://www.stackage.org/stack/windows-x86_64
12
    - 7z x stack.zip stack.exe
Andrey Mokhov's avatar
Andrey Mokhov committed
13

14
    # Fetch GHC sources into c:\ghc
Andrey Mokhov's avatar
Andrey Mokhov committed
15
    # Note: AppVeyor has already cloned Hadrian into c:\ghc\hadrian, so it's tricky
16 17 18 19
    - cd ..
    - git init
    - git remote add origin git://git.haskell.org/ghc.git
    - git pull --recurse-submodules origin master
Andrey Mokhov's avatar
Andrey Mokhov committed
20
    - git submodule update --init --recursive --quiet
Andrey Mokhov's avatar
Andrey Mokhov committed
21

22 23
    # Install all Hadrian and GHC build dependencies
    - cd hadrian
Andrey Mokhov's avatar
Andrey Mokhov committed
24
    - stack setup > nul
25
    - appveyor-retry stack exec -- pacman -S autoconf automake-wrapper make patch tar --noconfirm
26 27

build_script:
28
    # Build Hadrian
Andrey Mokhov's avatar
Andrey Mokhov committed
29
    - stack build alex happy # Otherwise 'stack build' fails on AppVeyor
30
    - stack build
Andrey Mokhov's avatar
Andrey Mokhov committed
31

32
    # Run internal Hadrian tests
Andrey Mokhov's avatar
Andrey Mokhov committed
33
    - stack exec hadrian -- --directory ".." selftest
Andrey Mokhov's avatar
Andrey Mokhov committed
34

35
    # Build GHC
Andrey Mokhov's avatar
Andrey Mokhov committed
36
    - stack exec hadrian -- --lint --directory ".." -j --flavour=quickest --verbose --no-progress --progress-info=brief --progress-colour=never --profile=-
Andrey Mokhov's avatar
Andrey Mokhov committed
37

38 39 40
    # Test GHC binary
    - cd ..
    - inplace\bin\ghc-stage2 -e 1+2