mirror of
https://github.com/tillitis/tillitis-key1.git
synced 2025-03-12 10:06:47 -04:00

Instead of repeated RUNs in Dockerfile, move the entire build of specific tools to a script. - Make commands more shell script-like. - icestorm: Make sure we checkout the right commit. - Add checks for the right digest for all git clones, so no history has been changed. - Add digest file and check for the downloaded tarball.
71 lines
1.9 KiB
Docker
71 lines
1.9 KiB
Docker
FROM docker.io/library/ubuntu:24.04 as base
|
|
|
|
RUN apt-get -qq update -y \
|
|
&& DEBIAN_FRONTEND=noninteractive \
|
|
apt-get install -y --no-install-recommends \
|
|
autoconf \
|
|
bash-completion \
|
|
bison \
|
|
build-essential \
|
|
ca-certificates \
|
|
clang \
|
|
clang-format \
|
|
clang-tidy \
|
|
cmake \
|
|
curl \
|
|
flex \
|
|
g++ \
|
|
gawk \
|
|
gcc \
|
|
git \
|
|
gperf \
|
|
graphviz \
|
|
help2man \
|
|
less \
|
|
libboost-dev \
|
|
libboost-filesystem-dev \
|
|
libboost-iostreams-dev \
|
|
libboost-program-options-dev \
|
|
libboost-python-dev \
|
|
libboost-system-dev \
|
|
libboost-thread-dev \
|
|
libeigen3-dev \
|
|
libffi-dev \
|
|
libfl-dev \
|
|
libftdi-dev \
|
|
libpython3-dev \
|
|
libusb-1.0-0-dev \
|
|
libreadline-dev \
|
|
lld \
|
|
llvm \
|
|
make \
|
|
nano \
|
|
ncdu \
|
|
perl \
|
|
pkg-config \
|
|
psmisc \
|
|
python-is-python3 \
|
|
python3 \
|
|
python3-full \
|
|
python3-dev \
|
|
python3-pip \
|
|
python3-pytest \
|
|
sdcc \
|
|
splint \
|
|
tcl-dev \
|
|
vim \
|
|
xdot \
|
|
zlib1g-dev \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
FROM base as toolsbuilder
|
|
|
|
COPY buildtools.sh /buildtools.sh
|
|
COPY verible.sha512 /verible.sha512
|
|
|
|
RUN /buildtools.sh
|
|
|
|
FROM base
|
|
LABEL org.opencontainers.image.description="Toolchain for building TKey FPGA bitstream"
|
|
COPY --from=toolsbuilder /usr/local/ /usr/local
|