summaryrefslogtreecommitdiff
path: root/appveyor.yml
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2018-01-31 19:14:47 -0500
committerBen Gamari <ben@smart-cactus.org>2018-01-31 23:28:06 -0500
commit5f922fbbef56dd4f0133ffe07ab8f0ebcb58fbaf (patch)
tree8cf6b01c2a6053cea116698cfb5616459ccf6298 /appveyor.yml
parent7d9812e8f4e8723c94a8ee9f7ba629ac9f1d4e71 (diff)
downloadhaskell-5f922fbbef56dd4f0133ffe07ab8f0ebcb58fbaf.tar.gz
appveyor: Refactor
Move build logic into a dedicated bash script, avoiding repetitive bash invocations. Furthermore, disable pacman update step as it breaks things in non-predictable ways.
Diffstat (limited to 'appveyor.yml')
-rw-r--r--appveyor.yml19
1 files changed, 3 insertions, 16 deletions
diff --git a/appveyor.yml b/appveyor.yml
index 0af5304200..7ccf2e03b9 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -18,24 +18,11 @@ deploy: off
install:
- cmd: |
SET "PATH=C:\%MSYS2_DIR%\%MSYSTEM%\bin;C:\%MSYS2_DIR%\usr\bin;%PATH%"
- bash -lc "pacman --noconfirm -Syuu"
- bash -lc "pacman --noconfirm -S --needed git tar bsdtar binutils autoconf make xz curl libtool automake python python2 p7zip patch mingw-w64-$(uname -m)-python3-sphinx mingw-w64-$(uname -m)-tools-git"
- bash -lc "cd $APPVEYOR_BUILD_FOLDER; git config remote.origin.url git://github.com/ghc/ghc.git"
- bash -lc "cd $APPVEYOR_BUILD_FOLDER; git config --global url.\"git://github.com/ghc/packages-\".insteadOf git://github.com/ghc/packages/"
- bash -lc "cd $APPVEYOR_BUILD_FOLDER; git submodule init"
- bash -lc "cd $APPVEYOR_BUILD_FOLDER; git submodule --quiet update --recursive"
- bash -lc "curl -L https://downloads.haskell.org/~ghc/8.2.1/ghc-8.2.1-x86_64-unknown-mingw32.tar.xz | tar -xJ -C /mingw64 --strip-components=1"
- bash -lc "mkdir -p /usr/local/bin"
- bash -lc "curl -L https://www.haskell.org/cabal/release/cabal-install-1.24.0.0/cabal-install-1.24.0.0-x86_64-unknown-mingw32.zip | bsdtar -xzf- -C /usr/local/bin"
- bash -lc "cabal update"
- bash -lc "cabal install -j --prefix=/usr/local alex happy"
+ bash .appveyor.sh prepare
build_script:
- - bash -lc "cd $APPVEYOR_BUILD_FOLDER; ./boot"
- - bash -lc "cd $APPVEYOR_BUILD_FOLDER; ./configure --enable-tarballs-autodownload"
- - bash -lc "cd $APPVEYOR_BUILD_FOLDER; make -j2"
- - bash -lc "cd $APPVEYOR_BUILD_FOLDER; make binary_dist"
- bash -lc "cd $APPVEYOR_BUILD_FOLDER; 7z a ghc-windows.zip *.tar.xz"
+ - bash .appveyor.sh build
+ - bash .appveyor.sh test
artifacts:
- path: C:\projects\ghc\ghc-windows.zip