Skip to content

Commit cae1303

Browse files
committed
Add /usr/bin/c++ symlink for the selected compiler
1 parent af45504 commit cae1303

File tree

3 files changed

+46
-34
lines changed

3 files changed

+46
-34
lines changed

docker/debian/Dockerfile

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,11 @@ ldconfig -v
8181
dpkg-divert --divert /usr/bin/gcc.orig --rename /usr/bin/gcc
8282
dpkg-divert --divert /usr/bin/g++.orig --rename /usr/bin/g++
8383
dpkg-divert --divert /usr/bin/gfortran.orig --rename /usr/bin/gfortran
84-
update-alternatives --install /usr/bin/cc cc /usr/local/bin/gcc 999
85-
update-alternatives --install \
86-
/usr/bin/gcc gcc /usr/local/bin/gcc 100 \
84+
update-alternatives \
85+
--install /usr/bin/cc cc /usr/local/bin/gcc 999 \
86+
--slave /usr/bin/c++ c++ /usr/local/bin/g++
87+
update-alternatives \
88+
--install /usr/bin/gcc gcc /usr/local/bin/gcc 100 \
8789
--slave /usr/bin/g++ g++ /usr/local/bin/g++ \
8890
--slave /usr/bin/gcc-ar gcc-ar /usr/local/bin/gcc-ar \
8991
--slave /usr/bin/gcc-nm gcc-nm /usr/local/bin/gcc-nm \
@@ -176,12 +178,14 @@ apt-get update
176178
apt-get install -t llvm-toolchain-${DEBIAN_VERSION}-${CLANG_VERSION} -y --no-install-recommends clang-${CLANG_VERSION} llvm-${CLANG_VERSION}
177179
apt-get clean
178180
rm -rf /var/lib/apt/lists/*
179-
update-alternatives --install /usr/bin/cc cc /usr/bin/clang-${CLANG_VERSION} 999
180-
update-alternatives --install \
181-
/usr/bin/clang clang /usr/bin/clang-${CLANG_VERSION} 100 \
182-
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-${CLANG_VERSION}
183-
update-alternatives --install \
184-
/usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-${CLANG_VERSION} 100
181+
update-alternatives \
182+
--install /usr/bin/cc cc /usr/bin/clang-${CLANG_VERSION} 999 \
183+
--slave /usr/bin/c++ c++ /usr/bin/clang++-${CLANG_VERSION}
184+
update-alternatives \
185+
--install /usr/bin/clang clang /usr/bin/clang-${CLANG_VERSION} 100 \
186+
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-${CLANG_VERSION}
187+
update-alternatives \
188+
--install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-${CLANG_VERSION} 100
185189
update-alternatives --auto cc
186190
update-alternatives --auto clang
187191
update-alternatives --auto llvm-cov

docker/rhel/Dockerfile

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,16 @@ dnf remove -y gcc gcc-c++
5353
dnf install -y --setopt=tsflags=nodocs gcc-toolset-${GCC_VERSION}-gcc gcc-toolset-${GCC_VERSION}-gcc-c++
5454
dnf clean -y all
5555
rm -rf /var/cache/dnf/*
56-
update-alternatives --install /usr/bin/cc cc /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcc 999
5756
update-alternatives \
58-
--install /usr/bin/gcc gcc /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcc 100 \
59-
--slave /usr/bin/g++ g++ /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/g++ \
60-
--slave /usr/bin/cpp cpp /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/cpp \
61-
--slave /usr/bin/gcov gcov /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcov \
62-
--slave /usr/bin/gcov-dump gcov-dump /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcov-dump-${GCC_VERSION} \
63-
--slave /usr/bin/gcov-tool gcov-tool /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcov-tool-${GCC_VERSION}
57+
--install /usr/bin/cc cc /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcc 999 \
58+
--slave /usr/bin/c++ c++ /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/g++
59+
update-alternatives \
60+
--install /usr/bin/gcc gcc /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcc 100 \
61+
--slave /usr/bin/g++ g++ /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/g++ \
62+
--slave /usr/bin/cpp cpp /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/cpp \
63+
--slave /usr/bin/gcov gcov /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcov \
64+
--slave /usr/bin/gcov-dump gcov-dump /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcov-dump-${GCC_VERSION} \
65+
--slave /usr/bin/gcov-tool gcov-tool /opt/rh/gcc-toolset-${GCC_VERSION}/root/usr/bin/gcov-tool-${GCC_VERSION}
6466
update-alternatives --auto cc
6567
update-alternatives --auto gcc
6668
EOF
@@ -125,7 +127,9 @@ RUN <<EOF
125127
dnf install -y --setopt=tsflags=nodocs clang llvm gcc gcc-c++
126128
dnf clean -y all
127129
rm -rf /var/cache/dnf/*
128-
update-alternatives --install /usr/bin/cc cc /usr/bin/clang 999
130+
update-alternatives \
131+
--install /usr/bin/cc cc /usr/bin/clang 999 \
132+
--slave /usr/bin/c++ c++ /usr/bin/clang++
129133
update-alternatives --auto cc
130134
EOF
131135

docker/ubuntu/Dockerfile

Lines changed: 21 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -67,18 +67,20 @@ ARG GCC_VERSION
6767
RUN <<EOF
6868
apt-get update
6969
apt-get install -y --no-install-recommends \
70-
gcc-${GCC_VERSION} \
71-
g++-${GCC_VERSION} \
72-
debhelper
70+
gcc-${GCC_VERSION} \
71+
g++-${GCC_VERSION} \
72+
debhelper
7373
apt-get clean
7474
rm -rf /var/lib/apt/lists/*
75-
update-alternatives --install /usr/bin/cc cc /usr/bin/gcc-${GCC_VERSION} 999
7675
update-alternatives \
77-
--install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_VERSION} 100 \
78-
--slave /usr/bin/g++ g++ /usr/bin/g++-${GCC_VERSION} \
79-
--slave /usr/bin/gcov gcov /usr/bin/gcov-${GCC_VERSION} \
80-
--slave /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-${GCC_VERSION} \
81-
--slave /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-${GCC_VERSION}
76+
--install /usr/bin/cc cc /usr/bin/gcc-${GCC_VERSION} 999 \
77+
--slave /usr/bin/c++ c++ /usr/bin/g++-${GCC_VERSION}
78+
update-alternatives \
79+
--install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_VERSION} 100 \
80+
--slave /usr/bin/g++ g++ /usr/bin/g++-${GCC_VERSION} \
81+
--slave /usr/bin/gcov gcov /usr/bin/gcov-${GCC_VERSION} \
82+
--slave /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-${GCC_VERSION} \
83+
--slave /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-${GCC_VERSION}
8284
update-alternatives --auto cc
8385
update-alternatives --auto gcc
8486
EOF
@@ -152,16 +154,18 @@ ARG CLANG_VERSION
152154
RUN <<EOF
153155
apt-get update
154156
apt-get install -y --no-install-recommends \
155-
clang-${CLANG_VERSION} \
156-
llvm-${CLANG_VERSION}
157+
clang-${CLANG_VERSION} \
158+
llvm-${CLANG_VERSION}
157159
apt-get clean
158160
rm -rf /var/lib/apt/lists/*
159-
update-alternatives --install /usr/bin/cc cc /usr/bin/clang-${CLANG_VERSION} 999
160-
update-alternatives --install \
161-
/usr/bin/clang clang /usr/bin/clang-${CLANG_VERSION} 100 \
162-
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-${CLANG_VERSION}
163-
update-alternatives --install \
164-
/usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-${CLANG_VERSION} 100
161+
update-alternatives \
162+
--install /usr/bin/cc cc /usr/bin/clang-${CLANG_VERSION} 999 \
163+
--slave /usr/bin/c++ c++ /usr/bin/clang++-${CLANG_VERSION}
164+
update-alternatives \
165+
--install /usr/bin/clang clang /usr/bin/clang-${CLANG_VERSION} 100 \
166+
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-${CLANG_VERSION}
167+
update-alternatives \
168+
--install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-${CLANG_VERSION} 100
165169
update-alternatives --auto cc
166170
update-alternatives --auto clang
167171
update-alternatives --auto llvm-cov

0 commit comments

Comments
 (0)