@@ -33,8 +33,11 @@ ARG VERBOSE
3333# Copy the RISC-V GNU Toolchain from the previous stage
3434COPY --from=toolchain_builder ${ET_INSTALL_DIR} ${ET_INSTALL_DIR}
3535
36+ # Update package list from sources
37+ RUN apt-get update
38+
3639# Install ET Platform build dependencies
37- RUN apt-get update && apt-get install -y \
40+ RUN apt-get install -y \
3841 cmake \
3942 dos2unix \
4043 gcc \
@@ -59,8 +62,7 @@ RUN apt-get update && apt-get install -y \
5962 python3-breathe \
6063 python3-jsonschema \
6164 libfmt-dev \
62- xxd \
63- && rm -rf /var/lib/apt/lists/*
65+ xxd
6466
6567# Set working directory for the ET Platform source
6668WORKDIR /workspace
@@ -85,6 +87,23 @@ RUN cmake \
8587ARG BUILD_JOBS=4
8688RUN make ${VERBOSE:+VERBOSE=1} -j${BUILD_JOBS}
8789
90+ # Optional tools for developers working inside of the docker.
91+ #
92+ # It is fine to add new fancy tools here as long as we keep these packages
93+ # apart from those listed above, so packages that strictly are build
94+ # dependencies are not mixed with optionals.
95+ #
96+ # Besides, installing these packages has to be one of the last steps in the
97+ # docker image build, so the list of optionals can be updated frequently
98+ # without retriggering the bulk of the build for every user.
99+ RUN apt-get install -y \
100+ sudo \
101+ vim \
102+ ccache
103+
104+ # Clean up package lists
105+ RUN rm -rf /var/lib/apt/lists/*
106+
88107# Set the default working directory
89108WORKDIR /workspace
90109
0 commit comments