0
0
mirror of https://github.com/mongodb/mongo.git synced 2024-11-27 23:27:11 +01:00
mongodb/BUILD.bazel
Mathias Stearn 02ce1fb959 SERVER-97134 Only promote clang-tidy warnings to errors in CI scripts (#29191)
GitOrigin-RevId: cf820864cbfde8390760699dba27d28b97dddf96
2024-11-15 18:54:55 +00:00

50 lines
1.3 KiB
Python

load("@hedron_compile_commands//:refresh_compile_commands.bzl", "refresh_compile_commands")
load("@npm//:defs.bzl", "npm_link_all_packages")
package(default_visibility = ["//visibility:public"])
exports_files([
"pyproject.toml",
"poetry.lock",
"symbols.orderfile",
])
npm_link_all_packages(name = "node_modules")
alias(
name = "format",
actual = "//bazel/format",
)
alias(
name = "codeowners",
actual = "//buildscripts:codeowners",
)
# This rule makes it possible to set the clang-tidy configuration setting:
genrule(
name = "clang_tidy_config",
srcs = [
".clang-tidy.in",
],
outs = [".clang-tidy"],
# Note: we use sed to substitute the known good value `build/compiledb/mongo`; testing
# has confirmed that this is the correct value.
# We also use it to append a line to opt-in to warnings as errors.
cmd = """
cp $(location .clang-tidy.in) $@ && \
sed -i 's|@MONGO_BUILD_DIR@|$(RULEDIR)/src/mongo|g ; $$aWarningsAsErrors: "*"' $@
""",
visibility = ["//visibility:public"],
)
refresh_compile_commands(
name = "compiledb",
exclude_external_sources = True,
exclude_headers = "all", # not using "all" adds headers as sources to compile_commands.json which is never what we want
targets = {
"//src/...": "",
},
)