Lines Matching +full:stdout +full:- +full:path
2 # SPDX-License-Identifier: GPL-2.0
8 """A helper routine run clang-tidy and the clang static-analyzer on
20 """Set up and parses command-line arguments.
23 Has keys: [path, type]
25 usage = """Run clang-tidy or the clang static-analyzer on a
31 choices=["clang-tidy", "clang-analyzer"],
33 path_help = "Path to the compilation database to parse"
34 parser.add_argument("path", type=str, help=path_help)
37 parser.add_argument("-checks", type=str, default=None, help=checks_help)
38 header_filter_help = "Pass the -header-filter value to the tool"
39 parser.add_argument("-header-filter", type=str, default=None, help=header_filter_help)
52 # Disable all checks, then re-enable the ones we want
58 checks = ["-*"]
59 if args.type == "clang-tidy":
60 checks.append("linuxkernel-*")
62 checks.append("clang-analyzer-*")
63 checks.append("-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling")
67 print(f"Skipping non-C file: '{file}'", file=sys.stderr)
69 pargs = ["clang-tidy", "-p", args.path, "-checks=" + ",".join(checks)]
71 pargs.append("-header-filter=" + args.header_filter)
74 stdout=subprocess.PIPE,
75 stderr=subprocess.STDOUT,
78 sys.stderr.buffer.write(p.stdout)
88 with open(args.path, "r") as f:
95 os.dup2(devnull, sys.stdout.fileno())