Add attempt at a docker image for the toolchain

This commit is contained in:
Daniel Lublin 2022-09-19 15:45:48 +02:00
parent 9d5e1c5ad5
commit 5fd05ab9f0
No known key found for this signature in database
GPG Key ID: 75BD0FEB8D3E7830

71
contrib/Dockerfile Normal file
View File

@ -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