aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xcoin/provisioning/common/unix/sccache.sh7
-rwxr-xr-xcoin/provisioning/common/unix/sccache_wrapper14
2 files changed, 21 insertions, 0 deletions
diff --git a/coin/provisioning/common/unix/sccache.sh b/coin/provisioning/common/unix/sccache.sh
index 7adfed32..f20db84d 100755
--- a/coin/provisioning/common/unix/sccache.sh
+++ b/coin/provisioning/common/unix/sccache.sh
@@ -62,4 +62,11 @@ function installSccache {
# disable sccache server from shutting down after being idle
SetEnvVar "SCCACHE_IDLE_TIMEOUT" "0"
+
+ # copy sccache wrapper and place as a first in PATH
+ mkdir -p $HOME/sccache_wrapper
+ cp ${BASH_SOURCE%/*}/sccache_wrapper $HOME/sccache_wrapper/sccache
+ chmod 755 $HOME/sccache_wrapper/sccache
+ SetEnvVar "PATH" "$HOME/sccache_wrapper:\$PATH"
+
}
diff --git a/coin/provisioning/common/unix/sccache_wrapper b/coin/provisioning/common/unix/sccache_wrapper
new file mode 100755
index 00000000..52e39513
--- /dev/null
+++ b/coin/provisioning/common/unix/sccache_wrapper
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+# Call real sccache with original arguments
+# sccache /opt/android/android-ndk-r23b/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --target=aarch64-none ......
+real_sccache=/usr/local/sccache/sccache
+$real_sccache "$@"
+retval=$?
+
+if test $retval -ne 0
+then
+ echo "Sccache command failed, re-try calling build tool directly"
+ "$@"
+ retval=$?
+fi
+exit $retval