From 8579a7d22bf41b2b907af91ce9ba6152f915230c Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 18 Oct 2022 21:12:34 +0200 Subject: [PATCH] improve the sccache usage --- debian/rules | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/debian/rules b/debian/rules index 0c97f371..8b6cc367 100755 --- a/debian/rules +++ b/debian/rules @@ -423,7 +423,8 @@ endif SCCACHE_ENABLE=no # if sccache is installed in the chroot, use it ifeq ($(shell test -e /opt/sccache/sccache && echo -n yes),yes) - STAGE_1_CMAKE_EXTRA += -DCMAKE_C_COMPILER_LAUNCHER=/opt/sccache/sccache -DCMAKE_CXX_COMPILER_LAUNCHER=/opt/sccache/sccache + SCCACHE_CMAKE = -DCMAKE_C_COMPILER_LAUNCHER=/opt/sccache/sccache -DCMAKE_CXX_COMPILER_LAUNCHER=/opt/sccache/sccache + STAGE_1_CMAKE_EXTRA += $(SCCACHE_CMAKE) SCCACHE_ENABLE=yes endif @@ -510,9 +511,7 @@ override_dh_ocaml: override_dh_auto_configure: preconfigure if test -f /opt/sccache/sccache; then \ - touch $$SCCACHE_ERROR_LOG; \ ls -al /opt/sccache/*; \ - ls -al /usr/bin/g++-*; \ fi echo "Using gcc: " $(CC) -v @@ -554,8 +553,11 @@ override_dh_auto_configure: preconfigure #- Matches what is done on brew: #- https://bit.ly/3kDNpC9 ifeq (${SCCACHE_ENABLE},yes) +# Just in case... /opt/sccache/sccache --stop-server - SCCACHE_LOG=sccache=debug SCCACHE_ERROR_LOG=/opt/sccache/sccache.log SCCACHE_GCS_KEY_PATH=/opt/sccache/secret-gcp-storage.json SCCACHE_GCS_BUCKET=apt-llvm-org-sccache SCCACHE_GCS_RW_MODE=READ_WRITE /opt/sccache/sccache --start-server +# Start the sccache server with the right set of options to use GCP +# SCCACHE_LOG=sccache=debug + SCCACHE_ERROR_LOG=/opt/sccache/sccache.log SCCACHE_GCS_KEY_PATH=/opt/sccache/secret-gcp-storage.json SCCACHE_GCS_BUCKET=apt-llvm-org-sccache SCCACHE_GCS_RW_MODE=READ_WRITE /opt/sccache/sccache --start-server endif echo "Running tests: $(RUN_TEST)" echo "Using cmake: $(CMAKE_BIN)"; \ @@ -654,7 +656,7 @@ debian-full-build: echo "Using cmake: $(CMAKE_BIN)" # linker hack so stage2 can link against stage1 libs at runtime LD_LIBRARY_PATH=$(STAGE_1_LIB_DIR):$$LD_LIBRARY_PATH \ - VERBOSE=1 $(PRE_PROCESS) $(CMAKE_BIN) --build $(TARGET_BUILD) $(NJOBS) --target stage2||cat $$SCCACHE_ERROR_LOG + VERBOSE=1 $(PRE_PROCESS) $(CMAKE_BIN) --build $(TARGET_BUILD) $(NJOBS) --target stage2 # If we used sccache, shows stats if test -f /opt/sccache/sccache; then \ @@ -692,6 +694,7 @@ debian-libclc-build: cd libclc/build && \ $(CMAKE_BIN) ../ \ -G $(GENERATOR) \ + $(SCCACHE_CMAKE) \ -DCMAKE_C_COMPILER=$(STAGE_2_BIN_DIR)/clang \ -DCMAKE_CXX_COMPILER=$(STAGE_2_BIN_DIR)/clang++ \ -DCMAKE_C_FLAGS="$(opt_flags) $(STAGE_2_CFLAGS)" \ @@ -714,6 +717,7 @@ ifeq (${COMPILER_RT_WASM_ENABLE},yes) mkdir -p build-compiler-rt-$$build; \ $(CMAKE_BIN) -B build-compiler-rt-$$build -S compiler-rt/lib/builtins/ \ -G Ninja \ + $(SCCACHE_CMAKE) \ -DCMAKE_C_COMPILER_TARGET=$$build-unknown-unknown \ -DCMAKE_CXX_COMPILER_TARGET=$$build-unknown-unknown \ -DCMAKE_ASM_COMPILER_TARGET=$$build-unknown-unknown \