Skip to content

Commit 775457c

Browse files
authored
[ci][docker] Use sccache everywhere by default (#11267)
This adds `/opt/sccache` to the PATH of each of the CI docker images so when cmake looks for a C compiler it will pick up the sccache wrapper by default. This fixes some issues where compiler invocations weren't being run though sccache. With this approach the invoker doesn't need to do anything specific to set up sccache. This will require a follow up PR to update the Docker images and remove some of the sccache logic in `task_build.py` Co-authored-by: driazati <[email protected]>
1 parent 4eb6497 commit 775457c

File tree

8 files changed

+10
-0
lines changed

8 files changed

+10
-0
lines changed

docker/Dockerfile.ci_arm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ ENV PATH $PATH:$CARGO_HOME/bin
3939
# sccache
4040
COPY install/ubuntu_install_sccache.sh /install/ubuntu_install_sccache.sh
4141
RUN bash /install/ubuntu_install_sccache.sh
42+
ENV PATH /opt/sccache:$PATH
4243

4344
COPY install/ubuntu_install_llvm.sh /install/ubuntu_install_llvm.sh
4445
RUN bash /install/ubuntu_install_llvm.sh

docker/Dockerfile.ci_cpu

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@ RUN bash /install/ubuntu_install_paddle.sh
145145
# sccache
146146
COPY install/ubuntu_install_sccache.sh /install/ubuntu_install_sccache.sh
147147
RUN bash /install/ubuntu_install_sccache.sh
148+
ENV PATH /opt/sccache:$PATH
148149

149150
# Libxsmm deps
150151
COPY install/ubuntu_install_libxsmm.sh /install

docker/Dockerfile.ci_gpu

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ RUN bash /install/ubuntu_install_papi.sh "cuda rocm"
132132
# sccache
133133
COPY install/ubuntu_install_sccache.sh /install/ubuntu_install_sccache.sh
134134
RUN bash /install/ubuntu_install_sccache.sh
135+
ENV PATH /opt/sccache:$PATH
135136

136137
# Environment variables
137138
ENV PATH=/usr/local/nvidia/bin:${PATH}

docker/Dockerfile.ci_hexagon

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,13 @@ COPY install/ubuntu_install_hexagon.sh /install/ubuntu_install_hexagon.sh
6161
RUN bash /install/ubuntu_install_hexagon.sh
6262
ENV CLANG_LLVM_HOME /opt/clang-llvm
6363
ENV LD_LIBRARY_PATH $LD_LIBRARY_PATH:/opt/clang-llvm/lib
64+
ENV PATH /opt/clang-llvm/bin:$PATH
6465
ENV HEXAGON_TOOLCHAIN "${HEXAGON_SDK_PATH}/tools/HEXAGON_Tools/8.5.08/Tools"
6566

6667
# sccache
6768
COPY install/ubuntu_install_sccache.sh /install/ubuntu_install_sccache.sh
6869
RUN bash /install/ubuntu_install_sccache.sh
70+
ENV PATH /opt/sccache:$PATH
6971

7072
# TensorFlow deps
7173
COPY install/ubuntu_install_tensorflow.sh /install/ubuntu_install_tensorflow.sh

docker/Dockerfile.ci_i386

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,3 +65,4 @@ RUN bash /install/ubuntu_install_verilator.sh
6565
# sccache
6666
COPY install/ubuntu_install_sccache.sh /install/ubuntu_install_sccache.sh
6767
RUN bash /install/ubuntu_install_sccache.sh
68+
ENV PATH /opt/sccache:$PATH

docker/Dockerfile.ci_qemu

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ RUN bash /install/ubuntu_install_tflite.sh
6969
# sccache
7070
COPY install/ubuntu_install_sccache.sh /install/ubuntu_install_sccache.sh
7171
RUN bash /install/ubuntu_install_sccache.sh
72+
ENV PATH /opt/sccache:$PATH
7273

7374
# Zephyr SDK deps
7475
COPY install/ubuntu_install_zephyr.sh /install/ubuntu_install_zephyr.sh

docker/Dockerfile.ci_wasm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,3 +61,4 @@ ENV LLVM=${EMSDK}/upstream/bin
6161
# sccache
6262
COPY install/ubuntu_install_sccache.sh /install/ubuntu_install_sccache.sh
6363
RUN bash /install/ubuntu_install_sccache.sh
64+
ENV PATH /opt/sccache:$PATH

docker/install/ubuntu_install_sccache.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ cargo install sccache
2626
mkdir /opt/sccache
2727
ln "$(which sccache)" /opt/sccache/cc
2828
ln "$(which sccache)" /opt/sccache/c++
29+
ln "$(which sccache)" /opt/sccache/clang
30+
ln "$(which sccache)" /opt/sccache/clang++
2931

3032
# make rust usable by all users after install during container build
3133
chmod -R a+rw /opt/rust

0 commit comments

Comments
 (0)