-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathDockerfile_dependencies
30 lines (24 loc) · 1.33 KB
/
Dockerfile_dependencies
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
FROM ubuntu:24.04
ARG TARGETPLATFORM
RUN apt update && apt dist-upgrade -y \
&& apt install -y \
build-essential cmake python3 pipx software-properties-common wget gnupg lsb-release jq curl \
&& wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc \
&& add-apt-repository 'deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy main' \
&& apt install -y clang-tidy-15
# ensurepath adds a line to .profile
# which puts the pipx install directory ~/.local/bin into the PATH variable
RUN python3 -m pipx ensurepath
# .profile is only sourced on relogin. Dockerfile shells do not login by default.
# This line tells it to execute all subsequent commands with a prior login
SHELL ["/bin/bash", "-login", "-c"]
RUN python3 -m pipx install conan==2.8.1
WORKDIR /src
COPY conanfile.py conanprofile.docker conanprofile.docker_arm ./
RUN if [ "$TARGETPLATFORM" = "linux/arm64" ]; then \
mv conanprofile.docker_arm conanprofile; \
else \
mv conanprofile.docker conanprofile; \
fi
RUN conan install . --build=missing --profile ./conanprofile --profile:build ./conanprofile --output-folder=build/Release/generators
RUN conan install . --build=missing --profile ./conanprofile --profile:build ./conanprofile --settings "&:build_type=Debug" --output-folder=build/Debug/generators