Skip to content

Commit

Permalink
Build image with clang-19
Browse files Browse the repository at this point in the history
  • Loading branch information
robomics committed Sep 18, 2024
1 parent 7f586f6 commit a85406f
Show file tree
Hide file tree
Showing 4 changed files with 172 additions and 6 deletions.
2 changes: 1 addition & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@
**

# Allowed files and directory
!patches/conan-settings.patch
!assets/
1 change: 1 addition & 0 deletions .github/workflows/build-cxx-ubuntu-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ jobs:
- { compiler-name: clang, compiler-version: 16, os-name: ubuntu, os-version: 24.04, python-version: 3.12, cmake: '3.30.*', conan: '2.7.*' }
- { compiler-name: clang, compiler-version: 17, os-name: ubuntu, os-version: 24.04, python-version: 3.12, cmake: '3.30.*', conan: '2.7.*' }
- { compiler-name: clang, compiler-version: 18, os-name: ubuntu, os-version: 24.04, python-version: 3.12, cmake: '3.30.*', conan: '2.7.*' }
- { compiler-name: clang, compiler-version: 19, os-name: ubuntu, os-version: 24.04, python-version: 3.12, cmake: '3.30.*', conan: '2.7.*' }

steps:
- name: Checkout
Expand Down
146 changes: 146 additions & 0 deletions assets/settings.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
# This file was generated by Conan. Remove this comment if you edit this file or Conan
# will destroy your changes.
os:
Windows:
subsystem: [null, cygwin, msys, msys2, wsl]
WindowsStore:
version: ["8.1", "10.0"]
WindowsCE:
platform: [ANY]
version: ["5.0", "6.0", "7.0", "8.0"]
Linux:
iOS:
version: &ios_version
["7.0", "7.1", "8.0", "8.1", "8.2", "8.3", "9.0", "9.1", "9.2", "9.3", "10.0", "10.1", "10.2", "10.3",
"11.0", "11.1", "11.2", "11.3", "11.4", "12.0", "12.1", "12.2", "12.3", "12.4",
"13.0", "13.1", "13.2", "13.3", "13.4", "13.5", "13.6", "13.7",
"14.0", "14.1", "14.2", "14.3", "14.4", "14.5", "14.6", "14.7", "14.8",
"15.0", "15.1", "15.2", "15.3", "15.4", "15.5", "15.6", "16.0", "16.1",
"16.2", "16.3", "16.4", "16.5", "16.6", "17.0", "17.1", "17.2", "17.3", "17.4", "17.5"]
sdk: ["iphoneos", "iphonesimulator"]
sdk_version: [null, "11.3", "11.4", "12.0", "12.1", "12.2", "12.4",
"13.0", "13.1", "13.2", "13.4", "13.5", "13.6", "13.7",
"14.0", "14.1", "14.2", "14.3", "14.4", "14.5", "15.0", "15.2", "15.4",
"15.5", "16.0", "16.1", "16.2", "16.4", "17.0", "17.1", "17.2", "17.4", "17.5"]
watchOS:
version: ["4.0", "4.1", "4.2", "4.3", "5.0", "5.1", "5.2", "5.3", "6.0", "6.1", "6.2",
"7.0", "7.1", "7.2", "7.3", "7.4", "7.5", "7.6", "8.0", "8.1", "8.3", "8.4",
"8.5", "8.6", "8.7", "9.0", "9.1", "9.2", "9.3", "9.4", "9.5", "9.6",
"10.0", "10.1", "10.2", "10.3", "10.4", "10.5"]
sdk: ["watchos", "watchsimulator"]
sdk_version: [null, "4.3", "5.0", "5.1", "5.2", "5.3", "6.0", "6.1", "6.2",
"7.0", "7.1", "7.2", "7.4", "8.0", "8.0.1", "8.3", "8.5", "9.0", "9.1",
"9.4", "10.0", "10.1", "10.2", "10.4", "10.5"]
tvOS:
version: ["11.0", "11.1", "11.2", "11.3", "11.4", "12.0", "12.1", "12.2", "12.3", "12.4",
"13.0", "13.2", "13.3", "13.4", "14.0", "14.2", "14.3", "14.4", "14.5",
"14.6", "14.7", "15.0", "15.1", "15.2", "15.3", "15.4", "15.5", "15.6",
"16.0", "16.1", "16.2", "16.3", "16.4", "16.5", "16.6", "17.0", "17.1", "17.2", "17.3", "17.4",
"17.5"]
sdk: ["appletvos", "appletvsimulator"]
sdk_version: [null, "11.3", "11.4", "12.0", "12.1", "12.2", "12.4",
"13.0", "13.1", "13.2", "13.4", "14.0", "14.2", "14.3", "14.5", "15.0",
"15.2", "15.4", "16.0", "16.1", "16.4", "17.0", "17.1", "17.2", "17.4", "17.5"]
visionOS:
version: ["1.0", "1.1", "1.2"]
sdk: ["xros", "xrsimulator"]
sdk_version: [null, "1.0", "1.1", "1.2"]
Macos:
version: [null, "10.6", "10.7", "10.8", "10.9", "10.10", "10.11", "10.12", "10.13", "10.14", "10.15",
"11.0", "11.1", "11.2", "11.3", "11.4", "11.5", "11.6", "11.7",
"12.0", "12.1", "12.2", "12.3", "12.4", "12.5", "12.6", "12.7",
"13.0", "13.1", "13.2", "13.3", "13.4", "13.5", "13.6",
"14.0", "14.1", "14.2", "14.3", "14.4", "14.5"]
sdk_version: [null, "10.13", "10.14", "10.15", "11.0", "11.1", "11.3", "12.0", "12.1",
"12.3", "13.0", "13.1", "13.3", "14.0", "14.2", "14.4", "14.5"]
subsystem:
null:
catalyst:
ios_version: *ios_version
Android:
api_level: [ANY]
ndk_version: [null, ANY]
FreeBSD:
SunOS:
AIX:
Arduino:
board: [ANY]
Emscripten:
Neutrino:
version: ["6.4", "6.5", "6.6", "7.0", "7.1"]
baremetal:
VxWorks:
version: ["7"]
arch: [x86, x86_64, ppc32be, ppc32, ppc64le, ppc64,
armv4, armv4i, armv5el, armv5hf, armv6, armv7, armv7hf, armv7s, armv7k, armv8, armv8_32, armv8.3, arm64ec,
sparc, sparcv9,
mips, mips64, avr, s390, s390x, asm.js, wasm, sh4le,
e2k-v2, e2k-v3, e2k-v4, e2k-v5, e2k-v6, e2k-v7,
riscv64, riscv32,
xtensalx6, xtensalx106, xtensalx7,
tc131, tc16, tc161, tc162, tc18]
compiler:
sun-cc:
version: ["5.10", "5.11", "5.12", "5.13", "5.14", "5.15"]
threads: [null, posix]
libcxx: [libCstd, libstdcxx, libstlport, libstdc++]
gcc:
version: ["4.1", "4.4", "4.5", "4.6", "4.7", "4.8", "4.9",
"5", "5.1", "5.2", "5.3", "5.4", "5.5",
"6", "6.1", "6.2", "6.3", "6.4", "6.5",
"7", "7.1", "7.2", "7.3", "7.4", "7.5",
"8", "8.1", "8.2", "8.3", "8.4", "8.5",
"9", "9.1", "9.2", "9.3", "9.4", "9.5",
"10", "10.1", "10.2", "10.3", "10.4", "10.5",
"11", "11.1", "11.2", "11.3", "11.4",
"12", "12.1", "12.2", "12.3", "12.4",
"13", "13.1", "13.2", "13.3",
"14", "14.1", "14.2"]
libcxx: [libstdc++, libstdc++11]
threads: [null, posix, win32] # Windows MinGW
exception: [null, dwarf2, sjlj, seh] # Windows MinGW
cppstd: [null, 98, gnu98, 11, gnu11, 14, gnu14, 17, gnu17, 20, gnu20, 23, gnu23]
cstd: [null, 99, gnu99, 11, gnu11, 17, gnu17, 23, gnu23]
msvc:
version: [170, 180, 190, 191, 192, 193, 194]
update: [null, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
runtime: [static, dynamic]
runtime_type: [Debug, Release]
cppstd: [null, 14, 17, 20, 23]
toolset: [null, v110_xp, v120_xp, v140_xp, v141_xp]
cstd: [null, 11, 17]
clang:
version: ["3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "4.0",
"5.0", "6.0", "7.0", "7.1",
"8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19"]
libcxx: [null, libstdc++, libstdc++11, libc++, c++_shared, c++_static]
cppstd: [null, 98, gnu98, 11, gnu11, 14, gnu14, 17, gnu17, 20, gnu20, 23, gnu23]
runtime: [null, static, dynamic]
runtime_type: [null, Debug, Release]
runtime_version: [null, v140, v141, v142, v143, v144]
cstd: [null, 99, gnu99, 11, gnu11, 17, gnu17, 23, gnu23]
apple-clang:
version: ["5.0", "5.1", "6.0", "6.1", "7.0", "7.3", "8.0", "8.1", "9.0", "9.1",
"10.0", "11.0", "12.0", "13", "13.0", "13.1", "14", "14.0", "15", "15.0", "16", "16.0"]
libcxx: [libstdc++, libc++]
cppstd: [null, 98, gnu98, 11, gnu11, 14, gnu14, 17, gnu17, 20, gnu20, 23, gnu23]
cstd: [null, 99, gnu99, 11, gnu11, 17, gnu17, 23, gnu23]
intel-cc:
version: ["2021.1", "2021.2", "2021.3", "2021.4", "2022.1", "2022.2",
"2022.3", "2023.0", "2023.1", "2023.2", "2024.0",]
update: [null, ANY]
mode: ["icx", "classic", "dpcpp"]
libcxx: [null, libstdc++, libstdc++11, libc++]
cppstd: [null, 98, gnu98, "03", gnu03, 11, gnu11, 14, gnu14, 17, gnu17, 20, gnu20, 23, gnu23]
runtime: [null, static, dynamic]
runtime_type: [null, Debug, Release]
qcc:
version: ["4.4", "5.4", "8.3"]
libcxx: [cxx, gpp, cpp, cpp-ne, accp, acpp-ne, ecpp, ecpp-ne]
cppstd: [null, 98, gnu98, 11, gnu11, 14, gnu14, 17, gnu17]
mcst-lcc:
version: ["1.19", "1.20", "1.21", "1.22", "1.23", "1.24", "1.25"]
libcxx: [libstdc++, libstdc++11]
cppstd: [null, 98, gnu98, 11, gnu11, 14, gnu14, 17, gnu17, 20, gnu20, 23, gnu23]

build_type: [null, Debug, Release, RelWithDebInfo, MinSizeRel]
29 changes: 24 additions & 5 deletions dockerfiles/ubuntu-cxx.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ RUN if [ "$BASE_OS" = 'ubuntu:22.04' ] ; then \
&& echo "deb-src [signed-by=/usr/share/keyrings/apt.llvm.org.gpg] https://apt.llvm.org/$(lsb_release -cs)/ llvm-toolchain-$(lsb_release -cs)-18 main" >> /etc/apt/sources.list; \
fi

RUN \
echo "deb [signed-by=/usr/share/keyrings/apt.llvm.org.gpg] https://apt.llvm.org/$(lsb_release -cs)/ llvm-toolchain-$(lsb_release -cs)-19 main" >> /etc/apt/sources.list \
&& echo "deb-src [signed-by=/usr/share/keyrings/apt.llvm.org.gpg] https://apt.llvm.org/$(lsb_release -cs)/ llvm-toolchain-$(lsb_release -cs)-19 main" >> /etc/apt/sources.list

RUN curl -L 'https://apt.llvm.org/llvm-snapshot.gpg.key' | gpg --dearmor > /usr/share/keyrings/apt.llvm.org.gpg \
&& chmod 644 /usr/share/keyrings/apt.llvm.org.gpg

Expand Down Expand Up @@ -65,7 +69,14 @@ RUN apt-get update -q \
zstd \
&& if [ $COMPILER_NAME = gcc ] ; then apt-get install -q -y clang-tidy "g++-${COMPILER_VERSION}" lld; fi \
&& if [ $COMPILER_NAME = clang ] ; then apt-get install -q -y "clang-tidy-${COMPILER_VERSION}" "lld-${COMPILER_VERSION}" "llvm-${COMPILER_VERSION}"; fi \
&& if [ $COMPILER = clang-14 ] || [ $COMPILER = clang-15 ] || [ $COMPILER = clang-16 ] || [ $COMPILER = clang-17 ] || [ $COMPILER = clang-18 ] ; then apt-get install -q -y "libclang-rt-${COMPILER_VERSION}-dev"; fi \
&& if [ $COMPILER = clang-14 ] || \
[ $COMPILER = clang-15 ] || \
[ $COMPILER = clang-16 ] || \
[ $COMPILER = clang-17 ] || \
[ $COMPILER = clang-18 ] || \
[ $COMPILER = clang-19 ] ; then \
apt-get install -q -y "libclang-rt-${COMPILER_VERSION}-dev"; \
fi \
&& rm -rf /var/lib/apt/lists/*

RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/$PYTHON 100
Expand All @@ -91,11 +102,19 @@ ENV CONAN_DEFAULT_PROFILE_PATH=/opt/conan/profiles/default
ENV PATH="/opt/venv/bin:$PATH"
ENV LD_LIBRARY_PATH="/opt/venv/lib:$LD_LIBRARY_PATH"

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 19, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 12, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 12, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 12, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 11, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 11, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 11, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 13, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 13, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 13, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (gcc, 9, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (gcc, 9, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (gcc, 9, ubuntu, 22.04, 3.11, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 15, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (gcc, 12, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 18, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (gcc, 11, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 16, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (gcc, 10, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (gcc, 13, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 14, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (clang, 17, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 103 in dockerfiles/ubuntu-cxx.Dockerfile

View workflow job for this annotation

GitHub Actions / build-dockerfile (gcc, 14, ubuntu, 24.04, 3.12, 3.30.*, 2.7.*)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/


COPY assets/settings.yml /opt/conan/

# Populate Conan data
RUN mkdir "$HOME/.conan2/" \
&& ln -s /opt/conan/settings.yml "$HOME/.conan2/settings.yml" \
&& conan --help

RUN if [ $COMPILER_NAME = gcc ] ; then \
CC=gcc-$COMPILER_VERSION \
CXX=g++-$COMPILER_VERSION \
conan profile detect --force \
&& mkdir -p /opt/conan/profiles \
&& mkdir /opt/conan/profiles \
&& mv "$HOME/.conan2/profiles/default" /opt/conan/profiles/default \
&& update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-$COMPILER_VERSION 100 \
&& update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-$COMPILER_VERSION 100 \
Expand All @@ -104,14 +123,12 @@ RUN if [ $COMPILER_NAME = gcc ] ; then \
&& update-alternatives --install /usr/bin/ld ld /usr/bin/lld 100; \
fi

# Populate Conan settings
RUN conan --help

RUN if [ $COMPILER_NAME = clang ] ; then \
CC=clang-$COMPILER_VERSION \
CXX=clang++-$COMPILER_VERSION \
conan profile detect --force \
&& mkdir -p /opt/conan/profiles \
&& mkdir /opt/conan/profiles \
&& mv "$HOME/.conan2/profiles/default" "$CONAN_DEFAULT_PROFILE_PATH" \
&& update-alternatives --install /usr/bin/clang clang /usr/bin/clang-$COMPILER_VERSION 100 \
&& update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-$COMPILER_VERSION 100 \
Expand All @@ -123,6 +140,8 @@ fi

RUN if [ $COMPILER_NAME = clang ] ; then ln -sf "/usr/bin/llvm-symbolizer-${COMPILER_VERSION}" /usr/local/bin/llvm-symbolizer; fi

RUN ln -s "$CONAN_DEFAULT_PROFILE_PATH" "$HOME/.conan2/profiles/default"

RUN sed -i '/^compiler\.libcxx.*$/d' "$CONAN_DEFAULT_PROFILE_PATH" \
&& echo 'compiler.libcxx=libstdc++11' >> "$CONAN_DEFAULT_PROFILE_PATH" \
&& cat "$CONAN_DEFAULT_PROFILE_PATH"
Expand Down

0 comments on commit a85406f

Please sign in to comment.