Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
Peter Trommler
ci-images
Commits
af2aa982
Commit
af2aa982
authored
Aug 28, 2019
by
Ryan Scott
Committed by
Ben Gamari
Sep 17, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
WIP: Use GHC 8.6.5 as the minimum bootstrap compiler version
parent
c78dbd90
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
88 additions
and
43 deletions
+88
-43
aarch64-linux-deb9/Dockerfile
aarch64-linux-deb9/Dockerfile
+7
-4
armv7-linux-deb9/Dockerfile
armv7-linux-deb9/Dockerfile
+7
-5
i386-linux-deb8/Dockerfile
i386-linux-deb8/Dockerfile
+8
-6
i386-linux-deb9/Dockerfile
i386-linux-deb9/Dockerfile
+8
-6
linters/Dockerfile
linters/Dockerfile
+18
-2
x86_64-linux-centos7/Dockerfile
x86_64-linux-centos7/Dockerfile
+8
-6
x86_64-linux-deb8/Dockerfile
x86_64-linux-deb8/Dockerfile
+8
-6
x86_64-linux-deb9/Dockerfile
x86_64-linux-deb9/Dockerfile
+16
-2
x86_64-linux-fedora27/Dockerfile
x86_64-linux-fedora27/Dockerfile
+8
-6
No files found.
aarch64-linux-deb9/Dockerfile
View file @
af2aa982
...
...
@@ -25,8 +25,10 @@ RUN curl $LLVM_TARBALL | tar -xJC .. && \
/opt/llvm6/bin/llc
--version
# GHC
RUN
curl http://downloads.haskell.org/~ghc/8.6.2/ghc-8.6.2-aarch64-ubuntu_bionic-linux.tar.xz |
tar
-xJ
WORKDIR
/ghc-8.6.2
# Use 8.8.1 to bootstrap, since earlier releases are especially buggy on AArch64
ENV
GHC_VERSION 8.8.1
RUN
curl http://downloads.haskell.org/~ghc/
$GHC_VERSION
/ghc-
$GHC_VERSION
-aarch64-ubuntu_bionic-linux
.tar.xz |
tar
-xJ
WORKDIR
/ghc-$GHC_VERSION
RUN
./configure
--prefix
=
/usr/local
LLC
=
/opt/llvm6/bin/llc
OPT
=
/opt/llvm6/bin/opt
&&
\
make
install
WORKDIR
/
...
...
@@ -44,15 +46,16 @@ RUN curl $LLVM_TARBALL | tar -xJC .. && \
$LLC
--version
# Cabal
ENV
CABAL_VERSION 3.0.0.0
RUN
git clone https://github.com/haskell/Cabal
WORKDIR
/Cabal
RUN
git checkout cabal-install-v
2.4.1.0
RUN
git checkout cabal-install-v
$CABAL_VERSION
WORKDIR
/Cabal/cabal-install
RUN
EXTRA_CONFIGURE_OPTS
=
--disable-optimization
./bootstrap.sh
--global
--no-doc
RUN
ls
/Cabal/cabal-install/dist/build
ENV
PATH /home/ghc/.local/bin:/opt/
cabal/2.2/bin:/opt/ghc/8.4.2
/bin:$PATH
ENV
PATH /home/ghc/.local/bin:/opt/
ghc/$GHC_VERSION
/bin:$PATH
# Create a normal user.
RUN
adduser ghc
--gecos
"GHC builds"
--disabled-password
...
...
armv7-linux-deb9/Dockerfile
View file @
af2aa982
...
...
@@ -26,9 +26,10 @@ RUN curl $LLVM_TARBALL | tar -xJC .. && \
/opt/llvm5/bin/llc
--version
# GHC
RUN
curl http://home.smart-cactus.org/~ben/ghc/ghc-8.4.4-arm-unknown-linux.tar.xz |
tar
-xJ
#RUN curl http://downloads.haskell.org/~ghc/8.6.2/ghc-8.6.2-aarch64-ubuntu_bionic-linux.tar.xz | tar -xJ
WORKDIR
/ghc-8.4.4
# Use 8.8.1 to bootstrap, since earlier releases are especially buggy on AArch64
ENV
GHC_VERSION 8.8.1
RUN
curl http://home.smart-cactus.org/~ben/ghc/ghc-
$GHC_VERSION
-arm-unknown-linux
.tar.xz |
tar
-xJ
WORKDIR
/ghc-$GHC_VERSION
RUN
./configure
--prefix
=
/usr/local
LLC
=
/opt/llvm5/bin/llc
OPT
=
/opt/llvm5/bin/opt
&&
\
make
install
WORKDIR
/
...
...
@@ -46,15 +47,16 @@ RUN curl $LLVM_TARBALL | tar -xJC .. && \
$LLC
--version
# Cabal
ENV
CABAL_VERSION 3.0.0.0
RUN
git clone https://github.com/haskell/Cabal
WORKDIR
/Cabal
RUN
git checkout cabal-install-v
2.4.1.0
RUN
git checkout cabal-install-v
$CABAL_VERSION
WORKDIR
/Cabal/cabal-install
RUN
EXTRA_CONFIGURE_OPTS
=
--disable-optimization
./bootstrap.sh
--global
--no-doc
RUN
ls
/Cabal/cabal-install/dist/build
ENV
PATH /home/ghc/.local/bin:/opt/
cabal/2.2/bin:/opt/ghc/8.4.2
/bin:$PATH
ENV
PATH /home/ghc/.local/bin:/opt/
ghc/$GHC_VERSION
/bin:$PATH
# Create a normal user.
RUN
adduser ghc
--gecos
"GHC builds"
--disabled-password
...
...
i386-linux-deb8/Dockerfile
View file @
af2aa982
...
...
@@ -23,16 +23,18 @@ RUN apt-get update -qq \
WORKDIR
/tmp
# Get i386 GHC bindist for 32 bit CI builds.
RUN
curl https://downloads.haskell.org/~ghc/8.4.4/ghc-8.4.4-i386-deb8-linux.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-8.4.4
RUN
setarch i386 ./configure
--prefix
=
/opt/ghc-i386/8.4.4
CFLAGS
=
-m32
--target
=
i386-unknown-linux
--build
=
i386-unknown-linux
--host
=
i386-unknown-linux
;
\
ENV
GHC_VERSION 8.6.5
RUN
curl https://downloads.haskell.org/~ghc/
$GHC_VERSION
/ghc-
$GHC_VERSION
-i386-deb8-linux
.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-$GHC_VERSION
RUN
setarch i386 ./configure
--prefix
=
/opt/ghc-i386/
$GHC_VERSION
CFLAGS
=
-m32
--target
=
i386-unknown-linux
--build
=
i386-unknown-linux
--host
=
i386-unknown-linux
;
\
make
install
;
\
rm
-rf
/tmp/ghc-
8.4.4
ENV
PATH /opt/ghc-i386/
8.4.4
/bin:$PATH
rm
-rf
/tmp/ghc-
$GHC_VERSION
ENV
PATH /opt/ghc-i386/
$GHC_VERSION
/bin:$PATH
WORKDIR
/tmp
# Get Cabal
RUN
curl https://downloads.haskell.org/cabal/cabal-install-2.4.1.0/cabal-install-2.4.1.0-i386-unknown-linux.tar.xz |
tar
-Jx
&&
\
ENV
CABAL_VERSION 2.4.1.0
RUN
curl https://downloads.haskell.org/cabal/cabal-install-
$CABAL_VERSION
/cabal-install-
$CABAL_VERSION
-i386-unknown-linux
.tar.xz |
tar
-Jx
&&
\
mv
cabal /usr/local/bin/cabal
# Create a normal user.
...
...
i386-linux-deb9/Dockerfile
View file @
af2aa982
...
...
@@ -20,16 +20,18 @@ RUN apt-get update -qq \
WORKDIR
/tmp
# Get i386 GHC bindist for 32 bit CI builds.
RUN
curl https://downloads.haskell.org/~ghc/8.4.4/ghc-8.4.4-i386-deb8-linux.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-8.4.4
RUN
setarch i386 ./configure
--prefix
=
/opt/ghc-i386/8.4.4
CFLAGS
=
-m32
--target
=
i386-unknown-linux
--build
=
i386-unknown-linux
--host
=
i386-unknown-linux
;
\
ENV
GHC_VERSION 8.6.5
RUN
curl https://downloads.haskell.org/~ghc/
$GHC_VERSION
/ghc-
$GHC_VERSION
-i386-deb8-linux
.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-$GHC_VERSION
RUN
setarch i386 ./configure
--prefix
=
/opt/ghc-i386/
$GHC_VERSION
CFLAGS
=
-m32
--target
=
i386-unknown-linux
--build
=
i386-unknown-linux
--host
=
i386-unknown-linux
;
\
make
install
;
\
rm
-rf
/tmp/ghc-
8.4.4
ENV
PATH /opt/ghc-i386/
8.4.4
/bin:$PATH
rm
-rf
/tmp/ghc-
$GHC_VERSION
ENV
PATH /opt/ghc-i386/
$GHC_VERSION
/bin:$PATH
WORKDIR
/tmp
# Get Cabal
RUN
curl https://downloads.haskell.org/cabal/cabal-install-2.4.1.0/cabal-install-2.4.1.0-i386-unknown-linux.tar.xz |
tar
-Jx
&&
\
ENV
CABAL_VERSION 2.4.1.0
RUN
curl https://downloads.haskell.org/cabal/cabal-install-
$CABAL_VERSION
/cabal-install-
$CABAL_VERSION
-i386-unknown-linux
.tar.xz |
tar
-Jx
&&
\
mv
cabal /usr/local/bin/cabal
# Create a normal user.
...
...
linters/Dockerfile
View file @
af2aa982
...
...
@@ -2,19 +2,35 @@ FROM debian:stretch
ENV
LANG C.UTF-8
SHELL
["/bin/bash", "-o", "pipefail", "-c"]
RUN
echo
'deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main'
>
/etc/apt/sources.list.d/ghc.list
RUN
apt-get update
-qq
;
apt-get
install
--no-install-recommends
-qy
gnupg
sudo
git python3 dirmngr ca-certificates
\
&&
apt-key adv
--keyserver
keyserver.ubuntu.com
--recv-keys
F6F88286
\
&&
apt-get update
\
&&
apt-get
install
--no-install-recommends
-qy
cabal-install-2.2 ghc-8.4.2
\
&&
apt-get
install
--no-install-recommends
-qy
python3-pip
\
&&
apt-get clean
\
&&
rm
-rf
/var/lib/apt/lists/
*
RUN
pip3
install
mypy
==
0.701
ENV
PATH /opt/local/bin:/home/ghc/.local/bin:/opt/cabal/2.2/bin:/opt/ghc/8.4.2/bin:$PATH
WORKDIR
/tmp
# Install GHC and cabal
ENV
GHC_VERSION 8.6.5
RUN
curl https://downloads.haskell.org/~ghc/
$GHC_VERSION
/ghc-
$GHC_VERSION
-x86_64-deb9-linux
.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-$GHC_VERSION
RUN
./configure
--prefix
=
/opt/ghc/
$GHC_VERSION
;
\
make
install
;
WORKDIR
/tmp
RUN
rm
-rf
/tmp/ghc-
$GHC_VERSION
ENV
PATH /opt/ghc/$GHC_VERSION/bin:$PATH
# Get Cabal
ENV
CABAL_VERSION 2.4.1.0
RUN
curl https://downloads.haskell.org/cabal/cabal-install-
$CABAL_VERSION
/cabal-install-
$CABAL_VERSION
-x86_64-unknown-linux
.tar.xz |
tar
-Jx
&&
\
mv
cabal /usr/local/bin/cabal
RUN
mkdir
-p
/opt/local/bin
...
...
x86_64-linux-centos7/Dockerfile
View file @
af2aa982
...
...
@@ -32,17 +32,19 @@ RUN sed -i -e 's/systemd//g' /etc/nsswitch.conf
WORKDIR
/tmp
# Install GHC and cabal
RUN
curl https://downloads.haskell.org/~ghc/8.4.4/ghc-8.4.4-x86_64-centos70-linux.tar.xz |
tar
-Jx
WORKDIR
/tmp/ghc-8.4.4
RUN
./configure
--prefix
=
/opt/ghc/8.4.4
&&
make
install
ENV
GHC_VERSION 8.6.5
RUN
curl https://downloads.haskell.org/~ghc/
$GHC_VERSION
/ghc-
$GHC_VERSION
-x86_64-centos70-linux
.tar.xz |
tar
-Jx
WORKDIR
/tmp/ghc-$GHC_VERSION
RUN
./configure
--prefix
=
/opt/ghc/
$GHC_VERSION
&&
make
install
WORKDIR
/tmp
RUN
rm
-rf
/tmp/ghc-
8.4.4
ENV
PATH /opt/ghc/
8.4.4
/bin:$PATH
RUN
rm
-rf
/tmp/ghc-
$GHC_VERSION
ENV
PATH /opt/ghc/
$GHC_VERSION
/bin:$PATH
WORKDIR
/tmp
# Get Cabal
RUN
curl https://downloads.haskell.org/cabal/cabal-install-2.4.1.0/cabal-install-2.4.1.0-x86_64-unknown-linux.tar.xz |
tar
-Jx
&&
\
ENV
CABAL_VERSION 2.4.1.0
RUN
curl https://downloads.haskell.org/cabal/cabal-install-
$CABAL_VERSION
/cabal-install-
$CABAL_VERSION
-x86_64-unknown-linux
.tar.xz |
tar
-Jx
&&
\
mv
cabal /usr/local/bin/cabal
# Create a normal user.
...
...
x86_64-linux-deb8/Dockerfile
View file @
af2aa982
...
...
@@ -18,17 +18,19 @@ RUN apt-get update -qq && apt-get install --no-install-recommends -qy zlib1g-dev
WORKDIR
/tmp
# Install GHC and cabal
RUN
curl https://downloads.haskell.org/~ghc/8.4.4/ghc-8.4.4-x86_64-deb8-linux.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-8.4.4
RUN
./configure
--prefix
=
/opt/ghc/8.4.4
;
\
ENV
GHC_VERSION 8.6.5
RUN
curl https://downloads.haskell.org/~ghc/
$GHC_VERSION
/ghc-
$GHC_VERSION
-x86_64-deb8-linux
.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-$GHC_VERSION
RUN
./configure
--prefix
=
/opt/ghc/
$GHC_VERSION
;
\
make
install
;
WORKDIR
/tmp
RUN
rm
-rf
/tmp/ghc-
8.4.4
ENV
PATH /opt/ghc/
8.4.4
/bin:$PATH
RUN
rm
-rf
/tmp/ghc-
$GHC_VERSION
ENV
PATH /opt/ghc/
$GHC_VERSION
/bin:$PATH
# Get Cabal
RUN
curl https://downloads.haskell.org/cabal/cabal-install-2.4.1.0/cabal-install-2.4.1.0-x86_64-unknown-linux.tar.xz |
tar
-Jx
&&
\
ENV
CABAL_VERSION 2.4.1.0
RUN
curl https://downloads.haskell.org/cabal/cabal-install-
$CABAL_VERSION
/cabal-install-
$CABAL_VERSION
-x86_64-unknown-linux
.tar.xz |
tar
-Jx
&&
\
mv
cabal /usr/local/bin/cabal
# Create a normal user.
...
...
x86_64-linux-deb9/Dockerfile
View file @
af2aa982
...
...
@@ -26,12 +26,26 @@ RUN apt-get update -qq && apt-get install --no-install-recommends -qy \
valgrind \
# Documentation tools
python3-sphinx texlive-xetex texlive-latex-extra texlive-binaries texlive-fonts-recommended lmodern texlive-generic-extra \
cabal-install-2.4 ghc-8.4.4 \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
ENV
PATH /home/ghc/.local/bin:/opt/cabal/2.4/bin:/opt/ghc/8.4.4/bin:$PATH
WORKDIR
/tmp
# Install GHC and cabal
ENV
GHC_VERSION 8.6.5
RUN
curl https://downloads.haskell.org/~ghc/
$GHC_VERSION
/ghc-
$GHC_VERSION
-x86_64-deb9-linux
.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-$GHC_VERSION
RUN
./configure
--prefix
=
/opt/ghc/
$GHC_VERSION
;
\
make
install
;
WORKDIR
/tmp
RUN
rm
-rf
/tmp/ghc-
$GHC_VERSION
ENV
PATH /opt/ghc/$GHC_VERSION/bin:$PATH
# Get Cabal
ENV
CABAL_VERSION 2.4.1.0
RUN
curl https://downloads.haskell.org/cabal/cabal-install-
$CABAL_VERSION
/cabal-install-
$CABAL_VERSION
-x86_64-unknown-linux
.tar.xz |
tar
-Jx
&&
\
mv
cabal /usr/local/bin/cabal
# LLVM
ENV
LLVM_TARBALL http://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
...
...
x86_64-linux-fedora27/Dockerfile
View file @
af2aa982
...
...
@@ -32,16 +32,18 @@ RUN sed -i -e 's/systemd//g' /etc/nsswitch.conf
WORKDIR
/tmp
# Install GHC and cabal
RUN
curl https://downloads.haskell.org/~ghc/8.4.4/ghc-8.4.4-x86_64-fedora27-linux.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-8.4.4
RUN
./configure
--prefix
=
/opt/ghc/8.4.4
;
\
ENV
GHC_VERSION 8.6.5
RUN
curl https://downloads.haskell.org/~ghc/
$GHC_VERSION
/ghc-
$GHC_VERSION
-x86_64-fedora27-linux
.tar.xz |
tar
-Jx
;
WORKDIR
/tmp/ghc-$GHC_VERSION
RUN
./configure
--prefix
=
/opt/ghc/
$GHC_VERSION
;
\
make
install
;
\
rm
-rf
/tmp/ghc-
8.4.4
ENV
PATH /opt/ghc/
8.4.4
/bin:$PATH
rm
-rf
/tmp/ghc-
$GHC_VERSION
ENV
PATH /opt/ghc/
$GHC_VERSION
/bin:$PATH
WORKDIR
/tmp
# Get Cabal
RUN
curl https://downloads.haskell.org/cabal/cabal-install-2.4.1.0/cabal-install-2.4.1.0-x86_64-unknown-linux.tar.xz |
tar
-Jx
&&
\
ENV
CABAL_VERSION 2.4.1.0
RUN
curl https://downloads.haskell.org/cabal/cabal-install-
$CABAL_VERSION
/cabal-install-
$CABAL_VERSION
-x86_64-unknown-linux
.tar.xz |
tar
-Jx
&&
\
mv
cabal /usr/local/bin/cabal
# Create a normal user.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment