|
4 | 4 | set -ex
|
5 | 5 | SOURCE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
|
6 | 6 |
|
7 |
| -# Courtesy of pytorch/.jenkins/pytorch/common_utils.sh |
8 |
| -# |
9 |
| -# - 1st arg: code to add |
10 |
| -# - remaining args: names of traps to modify |
11 |
| -# |
12 |
| -trap_add() { |
13 |
| - trap_add_cmd=$1; shift || fatal "${FUNCNAME[0]} usage error" |
14 |
| - for trap_add_name in "$@"; do |
15 |
| - trap -- "$( |
16 |
| - # helper fn to get existing trap command from output |
17 |
| - # of trap -p |
18 |
| - extract_trap_cmd() { printf '%s\n' "$3"; } |
19 |
| - # print existing trap command with newline |
20 |
| - eval "extract_trap_cmd $(trap -p "${trap_add_name}")" |
21 |
| - # print the new trap command |
22 |
| - printf '%s\n' "${trap_add_cmd}" |
23 |
| - )" "${trap_add_name}" \ |
24 |
| - || fatal "unable to add to trap ${trap_add_name}" |
25 |
| - done |
26 |
| -} |
27 |
| -# set the trace attribute for the above function. this is |
28 |
| -# required to modify DEBUG or RETURN traps because functions don't |
29 |
| -# inherit them unless the trace attribute is set |
30 |
| -declare -f -t trap_add |
31 |
| - |
32 |
| -# Initialize sccache |
33 |
| -if [[ -n "$SCCACHE_BUCKET" ]] && which sccache > /dev/null; then |
34 |
| - # Save sccache logs to file |
35 |
| - sccache --stop-server > /dev/null 2>&1 || true |
36 |
| - rm -f ~/sccache_error.log || true |
37 |
| - |
38 |
| - export SCCACHE_IDLE_TIMEOUT=1200 |
39 |
| - export SCCACHE_ERROR_LOG=~/sccache_error.log |
40 |
| - export RUST_LOG=sccache::server=error |
41 |
| - |
42 |
| - # Report sccache stats for easier debugging |
43 |
| - sccache --zero-stats |
44 |
| - function sccache_epilogue() { |
45 |
| - sccache --show-stats |
46 |
| - sccache --stop-server || true |
47 |
| - } |
48 |
| - |
49 |
| - trap_add sccache_epilogue EXIT |
50 |
| -else |
51 |
| - # Not using sscache if it's not setup properly |
52 |
| - rm -f /opt/cache/bin/cc |
53 |
| - rm -f /opt/cache/bin/c++ |
54 |
| - rm -f /opt/cache/bin/clang |
55 |
| - rm -f /opt/cache/bin/clang++ |
56 |
| - rm -f /opt/cache/bin/gcc |
57 |
| - rm -f /opt/cache/bin/g++ |
58 |
| - |
59 |
| - unset CMAKE_CUDA_COMPILER_LAUNCHER |
60 |
| -fi |
61 | 7 |
|
62 | 8 | # Require only one python installation
|
63 | 9 | if [[ -z "$DESIRED_PYTHON" ]]; then
|
|
0 commit comments