aboutsummaryrefslogtreecommitdiffstats
path: root/tools/docker
diff options
context:
space:
mode:
Diffstat (limited to 'tools/docker')
-rw-r--r--tools/docker/old-env/Dockerfile16
1 files changed, 12 insertions, 4 deletions
diff --git a/tools/docker/old-env/Dockerfile b/tools/docker/old-env/Dockerfile
index 08c3f215e..2089b3038 100644
--- a/tools/docker/old-env/Dockerfile
+++ b/tools/docker/old-env/Dockerfile
@@ -7,10 +7,10 @@ FROM ubuntu:16.04
LABEL homepage="https://github.com/google/syzkaller"
-RUN dpkg --add-architecture i386 && \
- apt-get update && \
- DEBIAN_FRONTEND=noninteractive apt-get install -y -q --no-install-recommends \
- sudo make nano git curl ca-certificates g++ \
+RUN dpkg --add-architecture i386 && apt-get update
+RUN DEBIAN_FRONTEND=noninteractive apt-get install -y -q --no-install-recommends \
+ sudo make nano git curl ca-certificates gnupg \
+ apt-transport-https software-properties-common g++ \
g++-arm-linux-gnueabi g++-aarch64-linux-gnu g++-powerpc64le-linux-gnu \
g++-mips64el-linux-gnuabi64 g++-s390x-linux-gnu \
linux-libc-dev:i386 lib32gcc-5-dev lib32stdc++-5-dev \
@@ -23,6 +23,14 @@ RUN curl https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz | tar -C /usr/loca
ENV PATH /usr/local/go/bin:/gopath/bin:$PATH
ENV GOPATH /gopath
+# Install clang-10 from llvm.org.
+# The distro-provided clang is too old for Go fuzzing.
+RUN curl https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
+RUN add-apt-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-10 main"
+RUN apt-get update
+RUN apt-get install -y -q --no-install-recommends clang-10
+RUN ln -s /usr/bin/clang-10 /usr/bin/clang
+
# Pre-create dirs for syz-env.
# This is necessary to make docker work with the current user,
# otherwise --volume will create these dirs under root and then