mirror of
https://github.com/anoma/juvix.git
synced 2024-12-11 08:25:46 +03:00
2db738a76f
* upgrade stack snapshot to use ghc-9.2.5 * use lts-20.2 * Update alpine GHC Dockerfile to 9.2.5 We also build the Juvix runtime before the stack build in the linux-static-binary workflow file. * Add some documentation on how to build and deploy the alpine GHC image * Docker documentation clarification. Co-authored-by: Paul Cadman <git@paulcadman.dev>
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.2-x86_64-alpine3.10-linux-integer-simple.tar.xz -OL
|
|
|
|
RUN tar xf ghc-8.10.2-x86_64-alpine3.10-linux-integer-simple.tar.xz
|
|
|
|
RUN cd ghc-8.10.2-x86_64-unknown-linux && ./configure --prefix /opt && make install
|
|
|
|
RUN curl https://downloads.haskell.org/~ghc/9.2.5/ghc-9.2.5-src.tar.xz -OL
|
|
|
|
RUN tar xf ghc-9.2.5-src.tar.xz
|
|
|
|
WORKDIR /ghc-9.2.5
|
|
|
|
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
|