@@ -99,7 +99,9 @@ apt-get install -y \
99 libyaml-dev \
99 libyaml-dev \
100 libzip-dev \
100 libzip-dev \
101 libzmq3-dev \
101 libzmq3-dev \
102+ # The LLVM version should be kept in sync with what GHC requires for its
103+ # LLVM backend (see below for more information).
102− llvm \
104+ llvm-3.7 \
104 nettle-dev \
106 nettle-dev \
@@ -122,3 +124,11 @@ mv /opt/ghc/$GHCVER/share/doc/ghc-$GHCVER/ /opt/ghc/$GHCVER/share/doc/ghc
122# faster anyways and uses less RAM.
124# faster anyways and uses less RAM.
123update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.gold" 20
125update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.gold" 20
124update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.bfd" 10
126update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.bfd" 10
128+# GHC requires a specific LLVM version on the system PATH for its LLVM backend.
129+# This version is tracked here:
130+# https://ghc.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM/Installing
132+# GHC 8.0 requires LLVM 3.7 tools (specifically, llc-3.7 and opt-3.7).
133+update-alternatives --install "/usr/bin/llc" "llc" "/usr/bin/llc-3.7" 50
134+update-alternatives --install "/usr/bin/opt" "opt" "/usr/bin/opt-3.7" 50