Merge "Pass TIDY_TIMEOUT to clang-tidy"
This commit is contained in:
@@ -198,13 +198,14 @@ var (
|
|||||||
// Rule for invoking clang-tidy (a clang-based linter).
|
// Rule for invoking clang-tidy (a clang-based linter).
|
||||||
clangTidy, clangTidyRE = pctx.RemoteStaticRules("clangTidy",
|
clangTidy, clangTidyRE = pctx.RemoteStaticRules("clangTidy",
|
||||||
blueprint.RuleParams{
|
blueprint.RuleParams{
|
||||||
Command: "rm -f $out && $reTemplate${config.ClangBin}/clang-tidy $tidyFlags $in -- $cFlags && touch $out",
|
Command: "rm -f $out && $tidyVars $reTemplate${config.ClangBin}/clang-tidy $tidyFlags $in -- $cFlags && touch $out",
|
||||||
CommandDeps: []string{"${config.ClangBin}/clang-tidy"},
|
CommandDeps: []string{"${config.ClangBin}/clang-tidy"},
|
||||||
},
|
},
|
||||||
&remoteexec.REParams{
|
&remoteexec.REParams{
|
||||||
Labels: map[string]string{"type": "lint", "tool": "clang-tidy", "lang": "cpp"},
|
Labels: map[string]string{"type": "lint", "tool": "clang-tidy", "lang": "cpp"},
|
||||||
ExecStrategy: "${config.REClangTidyExecStrategy}",
|
ExecStrategy: "${config.REClangTidyExecStrategy}",
|
||||||
Inputs: []string{"$in"},
|
Inputs: []string{"$in"},
|
||||||
|
EnvironmentVariables: []string{"TIDY_TIMEOUT"},
|
||||||
// Although clang-tidy has an option to "fix" source files, that feature is hardly useable
|
// Although clang-tidy has an option to "fix" source files, that feature is hardly useable
|
||||||
// under parallel compilation and RBE. So we assume no OutputFiles here.
|
// under parallel compilation and RBE. So we assume no OutputFiles here.
|
||||||
// The clang-tidy fix option is best run locally in single thread.
|
// The clang-tidy fix option is best run locally in single thread.
|
||||||
@@ -212,7 +213,7 @@ var (
|
|||||||
// (1) New timestamps trigger clang and clang-tidy compilations again.
|
// (1) New timestamps trigger clang and clang-tidy compilations again.
|
||||||
// (2) Changing source files caused concurrent clang or clang-tidy jobs to crash.
|
// (2) Changing source files caused concurrent clang or clang-tidy jobs to crash.
|
||||||
Platform: map[string]string{remoteexec.PoolKey: "${config.REClangTidyPool}"},
|
Platform: map[string]string{remoteexec.PoolKey: "${config.REClangTidyPool}"},
|
||||||
}, []string{"cFlags", "tidyFlags"}, []string{})
|
}, []string{"cFlags", "tidyFlags", "tidyVars"}, []string{})
|
||||||
|
|
||||||
_ = pctx.SourcePathVariable("yasmCmd", "prebuilts/misc/${config.HostPrebuiltTag}/yasm/yasm")
|
_ = pctx.SourcePathVariable("yasmCmd", "prebuilts/misc/${config.HostPrebuiltTag}/yasm/yasm")
|
||||||
|
|
||||||
@@ -442,8 +443,13 @@ func transformSourceToObj(ctx android.ModuleContext, subdir string, srcFiles and
|
|||||||
// Source files are one-to-one with tidy, coverage, or kythe files, if enabled.
|
// Source files are one-to-one with tidy, coverage, or kythe files, if enabled.
|
||||||
objFiles := make(android.Paths, len(srcFiles))
|
objFiles := make(android.Paths, len(srcFiles))
|
||||||
var tidyFiles android.Paths
|
var tidyFiles android.Paths
|
||||||
|
var tidyVars string
|
||||||
if flags.tidy {
|
if flags.tidy {
|
||||||
tidyFiles = make(android.Paths, 0, len(srcFiles))
|
tidyFiles = make(android.Paths, 0, len(srcFiles))
|
||||||
|
tidyTimeout := ctx.Config().Getenv("TIDY_TIMEOUT")
|
||||||
|
if len(tidyTimeout) > 0 {
|
||||||
|
tidyVars += "TIDY_TIMEOUT=" + tidyTimeout
|
||||||
|
}
|
||||||
}
|
}
|
||||||
var coverageFiles android.Paths
|
var coverageFiles android.Paths
|
||||||
if flags.gcovCoverage {
|
if flags.gcovCoverage {
|
||||||
@@ -647,6 +653,7 @@ func transformSourceToObj(ctx android.ModuleContext, subdir string, srcFiles and
|
|||||||
Args: map[string]string{
|
Args: map[string]string{
|
||||||
"cFlags": moduleToolingFlags,
|
"cFlags": moduleToolingFlags,
|
||||||
"tidyFlags": config.TidyFlagsForSrcFile(srcFile, flags.tidyFlags),
|
"tidyFlags": config.TidyFlagsForSrcFile(srcFile, flags.tidyFlags),
|
||||||
|
"tidyVars": tidyVars,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user