From 63c96f8b91b26f4c12a48ea30f330d689b4c67fa Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Fri, 17 Mar 2017 14:17:41 +0100 Subject: Added static-linux directory. This provides a Makefile and Dockerfile sufficient for producing a completely statically linked linux executable for maximum portability. If docker is installed, this should suffice: make setup make build The binary will be placed in artifacts/. --- static-linux/Dockerfile | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 static-linux/Dockerfile (limited to 'static-linux/Dockerfile') diff --git a/static-linux/Dockerfile b/static-linux/Dockerfile new file mode 100644 index 000000000..3c62ebcf9 --- /dev/null +++ b/static-linux/Dockerfile @@ -0,0 +1,18 @@ +# USE ALPINE LINUX +FROM alpine:edge +RUN apk update +# INSTALL BASIC DEV TOOLS, GHC, GMP & ZLIB +RUN echo "https://s3-us-west-2.amazonaws.com/alpine-ghc/8.0" >> /etc/apk/repositories +ADD https://raw.githubusercontent.com/mitchty/alpine-ghc/master/mitch.tishmack%40gmail.com-55881c97.rsa.pub \ + /etc/apk/keys/mitch.tishmack@gmail.com-55881c97.rsa.pub +RUN apk update +RUN apk add alpine-sdk git ca-certificates ghc cabal stack zlib-dev +RUN stack update +RUN stack config set system-ghc --global true +ADD ./ /usr/src/ +WORKDIR /usr/src/ +RUN git clone https://github.com/jgm/pandoc +WORKDIR /usr/src/pandoc +CMD git pull +CMD stack install --local-bin-path /usr/bin hsb2hs +CMD stack install --local-bin-path /artifacts --flag 'pandoc:embed_data_files' --test --ghc-options '-optl-static -fPIC' -- cgit v1.2.3