1#!/bin/bash
2
3set -ex
4
5VERSION="$(git describe --abbrev=8)"
6PLATFORM="win-i386"
7BINEXT=".exe"
8
9"$(stack path --local-bin)/shake" --version || stack install shake
10
11## Run tests
12
13stack runhaskell Shakefile.hs -- clean
14stack runhaskell Shakefile.hs -- build
15stack runhaskell Shakefile.hs -- stack-test
16stack runhaskell Shakefile.hs -- integration-tests
17
18
19## Build binaries
20
21rm -Rf .stack-work
22stack build --ghc-options='-O2'
23
24function build-flavor() {
25    BUILD="elm-format-${VERSION}-${PLATFORM}"
26    mkdir -p dist/package-scripts
27    ELM_FORMAT="$(stack path --local-install-root)/bin/elm-format${BINEXT}"
28    cp "$ELM_FORMAT" "dist/package-scripts/elm-format${BINEXT}"
29    strip "dist/package-scripts/elm-format${BINEXT}"
30    rm -f "$BUILD".zip
31    zip -9 -j "$BUILD".zip "dist/package-scripts/elm-format${BINEXT}"
32}
33
34build-flavor
35