Skip to content

Commit e963809

Browse files
committed
Pass CCACHE_DISABLE variable to jobs
1 parent e67b680 commit e963809

File tree

3 files changed

+29
-0
lines changed

3 files changed

+29
-0
lines changed

src/clang.bzl

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES")
22
load("@bazel_tools//tools/cpp:toolchain_utils.bzl", "find_cpp_toolchain")
3+
load(
4+
"@default_codechecker_tools//:defs.bzl",
5+
"CCACHE_DISABLE"
6+
)
37

48
CLANG_TIDY_WRAPPER_SCRIPT = """#!/usr/bin/env bash
59
CLANG_TIDY=$1
@@ -176,12 +180,19 @@ def _run_analyzer(
176180
direct = input_files,
177181
transitive = [compilation_context.headers],
178182
)
183+
184+
# Have it None by default to avoid overwriting use_default_shell_env
185+
env_var = None
186+
if CCACHE_DISABLE == 1:
187+
env_var = {"CCACHE_DISABLE": CCACHE_DISABLE}
188+
179189
ctx.actions.run(
180190
inputs = inputs,
181191
outputs = [outfile],
182192
executable = wrapper,
183193
arguments = [args],
184194
mnemonic = "ClangAnalyzer",
195+
env = env_var,
185196
use_default_shell_env = True,
186197
progress_message = "Run clang -analyze on {}".format(infile.short_path),
187198
)

src/code_checker.bzl

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33

44
load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES")
55
load("@bazel_tools//tools/cpp:toolchain_utils.bzl", "find_cpp_toolchain")
6+
load(
7+
"@default_codechecker_tools//:defs.bzl",
8+
"CCACHE_DISABLE"
9+
)
610

711
CODE_CHECKER_WRAPPER_SCRIPT = """#!/usr/bin/env bash
812
#set -x
@@ -88,13 +92,19 @@ def _run_code_checker(
8892
args.add("--output=" + data_dir)
8993
args.add("--file=*/" + src.path)
9094

95+
# Have it None by default to avoid overwriting use_default_shell_env
96+
env_var = None
97+
if CCACHE_DISABLE == 1:
98+
env_var = {"CCACHE_DISABLE": CCACHE_DISABLE}
99+
91100
# Action to run CodeChecker for a file
92101
ctx.actions.run(
93102
inputs = inputs,
94103
outputs = outputs,
95104
executable = wrapper,
96105
arguments = [args],
97106
mnemonic = "CodeChecker",
107+
env = env_var,
98108
use_default_shell_env = True,
99109
progress_message = "CodeChecker analyze {}".format(src.short_path),
100110
)

src/codechecker.bzl

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ load(
99
load(
1010
"@default_codechecker_tools//:defs.bzl",
1111
"CODECHECKER_BIN_PATH",
12+
"CCACHE_DISABLE"
1213
)
1314

1415
def get_platform_alias(platform):
@@ -98,6 +99,11 @@ def _codechecker_impl(ctx):
9899
if compile_commands != ctx.outputs.compile_commands:
99100
fail("Seems compile_commands.json file is incorrect!")
100101

102+
# Have it None by default to avoid overwriting use_default_shell_env
103+
env_var = None
104+
if CCACHE_DISABLE == 1:
105+
env_var = {"CCACHE_DISABLE": CCACHE_DISABLE}
106+
101107
# Convert flacc calls to clang in compile_commands.json
102108
# and save to codechecker_commands.json
103109
ctx.actions.run(
@@ -111,6 +117,7 @@ def _codechecker_impl(ctx):
111117
],
112118
mnemonic = "CodeCheckerConvertFlaccToClang",
113119
progress_message = "Filtering %s" % str(ctx.label),
120+
env = env_var,
114121
# use_default_shell_env = True,
115122
)
116123

@@ -195,6 +202,7 @@ def _codechecker_impl(ctx):
195202
arguments = [],
196203
mnemonic = "CodeChecker",
197204
progress_message = "CodeChecker %s" % str(ctx.label),
205+
env = env_var,
198206
# use_default_shell_env = True,
199207
)
200208

0 commit comments

Comments
 (0)