mirror of
https://github.com/anoma/juvix.git
synced 2024-12-12 14:28:08 +03:00
d78a543c57
This PR upgrades our Haskell configurations to compile with version 9.2.7. The checklist below can serve as a guide for similar future updates: - [x] Update Stack resolver in `stack.yaml` - [x] Modify `tested-with` section in `package.yaml` - [x] Build and push the new compiler docker image, see instructions here [docker/README.md](https://github.com/anoma/juvix/blob/main/docker/README.md): `ghcr.io/paulcadman/ghc-alpine:9.2.7 container`. - [x] Update Linux Github Action workflow in `.github/workflows/linux-static-binary.yaml` and adjust `docker/Dockerfile-ghc-alpine-9.2.7` - [x] Revise GHC/Stack/Cabal versions in `.devcontainer/Dockerfile` - [x] Refresh Cabal configuration in `cabal-project`
31 lines
994 B
Groff
31 lines
994 B
Groff
FROM alpine:3.12
|
|
|
|
RUN apk upgrade --no-cache &&\
|
|
apk add --no-cache curl gcc g++ gmp-dev ncurses-dev libffi-dev make xz gzip tar perl git bash sudo binutils-gold lld &&\
|
|
apk add --no-cache zlib zlib-dev zlib-static gmp gmp-dev ncurses-static xz
|
|
|
|
RUN curl https://downloads.haskell.org/~ghc/8.10-latest/ghc-8.10.7-x86_64-alpine3.10-linux-integer-simple.tar.xz -OL
|
|
|
|
RUN tar xf ghc-8.10.7-x86_64-alpine3.10-linux-integer-simple.tar.xz
|
|
|
|
RUN cd ghc-8.10.7-x86_64-unknown-linux && ./configure --prefix /opt && make install
|
|
|
|
RUN curl https://downloads.haskell.org/~ghc/9.2.7/ghc-9.2.7-src.tar.xz -OL
|
|
|
|
RUN tar xf ghc-9.2.7-src.tar.xz
|
|
|
|
WORKDIR /ghc-9.2.7
|
|
|
|
RUN GHC=/opt/bin/ghc ./configure --prefix /usr/local
|
|
|
|
RUN make -j
|
|
RUN make install
|
|
|
|
RUN apk add --no-cache clang llvm
|
|
|
|
WORKDIR /
|
|
|
|
RUN curl https://github.com/commercialhaskell/stack/releases/download/v2.9.1/stack-2.9.1-linux-x86_64.tar.gz -OL
|
|
RUN tar xf stack-2.9.1-linux-x86_64.tar.gz
|
|
RUN cp stack-2.9.1-linux-x86_64/stack /usr/local/bin
|