55 lines
1.2 KiB
Docker
Executable File
55 lines
1.2 KiB
Docker
Executable File
FROM debian:bookworm-slim
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
RUN dpkg --add-architecture arm64
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
bash \
|
|
build-essential \
|
|
ca-certificates \
|
|
clangd-19 \
|
|
cmake \
|
|
curl \
|
|
g++-12 \
|
|
g++-aarch64-linux-gnu \
|
|
gcc-12 \
|
|
gcc-aarch64-linux-gnu \
|
|
git \
|
|
libdrm-dev \
|
|
libdrm-dev:arm64 \
|
|
libegl-dev \
|
|
libegl-dev:arm64 \
|
|
libgbm-dev \
|
|
libgbm-dev:arm64 \
|
|
libgles-dev \
|
|
libgles-dev:arm64 \
|
|
libglvnd-dev \
|
|
libglvnd-dev:arm64 \
|
|
ninja-build \
|
|
pkg-config \
|
|
python3 \
|
|
python3-venv \
|
|
&& ln -s /usr/bin/clangd-19 /usr/local/bin/clangd \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
ENV CC=/usr/bin/gcc-12
|
|
ENV CXX=/usr/bin/g++-12
|
|
|
|
RUN python3 -m venv /opt/modulus-python
|
|
|
|
ENV PATH=/opt/modulus-python/bin:${PATH}
|
|
|
|
RUN python -m pip install --no-cache-dir \
|
|
conan==2.26.2
|
|
|
|
# The path is shared by source builds and exported consumer tooling.
|
|
ARG MODULUS_TOOLS=tools
|
|
COPY ${MODULUS_TOOLS}/docker/format-requirements.txt /tmp/modulus-format-requirements.txt
|
|
RUN python -m pip install --no-cache-dir -r /tmp/modulus-format-requirements.txt
|
|
|
|
WORKDIR /workspace
|
|
|
|
RUN mkdir -p /opt && touch /opt/modulus-build-image
|