From 5fd05ab9f0a3824a03336064e416b16c8e632908 Mon Sep 17 00:00:00 2001 From: Daniel Lublin Date: Mon, 19 Sep 2022 15:45:48 +0200 Subject: [PATCH] Add attempt at a docker image for the toolchain --- contrib/Dockerfile | 71 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 contrib/Dockerfile diff --git a/contrib/Dockerfile b/contrib/Dockerfile new file mode 100644 index 0000000..4635950 --- /dev/null +++ b/contrib/Dockerfile @@ -0,0 +1,71 @@ +FROM ubuntu:22.04 + +RUN apt-get -qq update -y \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install -y --no-install-recommends \ + bison \ + build-essential \ + ca-certificates \ + clang \ + cmake \ + flex \ + gawk \ + git \ + golang \ + graphviz \ + less \ + libboost-dev \ + libboost-filesystem-dev \ + libboost-iostreams-dev \ + libboost-program-options-dev \ + libboost-thread-dev \ + libeigen3-dev \ + libffi-dev \ + libftdi-dev \ + libreadline-dev \ + lld \ + llvm \ + mercurial \ + nano \ + pkg-config \ + python3 \ + python3-dev \ + tcl-dev \ + verilator \ + vim \ + xdot \ + && rm -rf /var/lib/apt/lists/* + +RUN git clone --depth=1 https://github.com/YosysHQ/icestorm /src +WORKDIR /src +RUN make -j$(nproc --ignore=2) \ + && make install +RUN git show -s >/repo-commit-icestorm +WORKDIR / +RUN rm -rf /src + +RUN git clone --depth=1 https://github.com/tillitis/icestorm /src +WORKDIR /src/iceprog +RUN make -j$(nproc --ignore=2) \ + && make PROGRAM_PREFIX=tillitis- install +RUN git show -s >/repo-commit-tillitis--icestorm +WORKDIR / +RUN rm -rf /src + +RUN git clone https://github.com/YosysHQ/yosys /src +WORKDIR /src +RUN git checkout 06ef3f264afaa3eaeab45cc0404d8006c15f02b1 \ + && make -j$(nproc --ignore=2) \ + && make install +RUN git show -s >/repo-commit-yosys +WORKDIR / +RUN rm -rf /src + +RUN git clone --depth=1 https://github.com/YosysHQ/nextpnr /src +WORKDIR /src +RUN cmake -DARCH=ice40 -DCMAKE_INSTALL_PREFIX=/usr/local . \ + && make -j$(nproc --ignore=2) \ + && make install +RUN git show -s >/repo-commit-nextpnr +WORKDIR / +RUN rm -rf /src