95 lines
2.8 KiB
Plaintext
95 lines
2.8 KiB
Plaintext
import("//clang/lib/StaticAnalyzer/Frontend/enable.gni")
|
|
import("//llvm/utils/gn/build/write_cmake_config.gni")
|
|
import("enable.gni")
|
|
|
|
config("clang-tidy-config_Config") {
|
|
visibility = [ ":clang-tidy-config" ]
|
|
include_dirs = [ "$target_gen_dir" ]
|
|
}
|
|
|
|
write_cmake_config("clang-tidy-config") {
|
|
input = "clang-tidy-config.h.cmake"
|
|
output = "$target_gen_dir/clang-tidy-config.h"
|
|
values = []
|
|
|
|
if (clang_tidy_enable_static_analyzer) {
|
|
values += [ "CLANG_TIDY_ENABLE_STATIC_ANALYZER=1" ]
|
|
} else {
|
|
values += [ "CLANG_TIDY_ENABLE_STATIC_ANALYZER=" ]
|
|
}
|
|
|
|
# Let targets depending on this find the generated file.
|
|
public_configs = [ ":clang-tidy-config_Config" ]
|
|
}
|
|
|
|
static_library("clang-tidy") {
|
|
output_name = "clangTidy"
|
|
configs += [ "//llvm/utils/gn/build:clang_code" ]
|
|
deps = [
|
|
":clang-tidy-config",
|
|
"//clang/include/clang/StaticAnalyzer/Checkers",
|
|
"//clang/lib/AST",
|
|
"//clang/lib/ASTMatchers",
|
|
"//clang/lib/Basic",
|
|
"//clang/lib/Format",
|
|
"//clang/lib/Frontend",
|
|
"//clang/lib/Lex",
|
|
"//clang/lib/Rewrite",
|
|
"//clang/lib/Sema",
|
|
"//clang/lib/Serialization",
|
|
"//clang/lib/Tooling",
|
|
"//clang/lib/Tooling/Core",
|
|
"//llvm/lib/Support",
|
|
]
|
|
|
|
if (clang_tidy_enable_static_analyzer) {
|
|
deps += [
|
|
"//clang/lib/StaticAnalyzer/Core",
|
|
"//clang/lib/StaticAnalyzer/Frontend",
|
|
]
|
|
}
|
|
|
|
sources = [
|
|
"ClangTidy.cpp",
|
|
"ClangTidyCheck.cpp",
|
|
"ClangTidyDiagnosticConsumer.cpp",
|
|
"ClangTidyModule.cpp",
|
|
"ClangTidyOptions.cpp",
|
|
"ClangTidyProfiling.cpp",
|
|
"ExpandModularHeadersPPCallbacks.cpp",
|
|
"GlobList.cpp",
|
|
]
|
|
}
|
|
|
|
group("all-checks") {
|
|
# If you add a check, also add it to ClangTidyForceLinker.h.
|
|
deps = [
|
|
"//clang-tools-extra/clang-tidy/abseil",
|
|
"//clang-tools-extra/clang-tidy/altera",
|
|
"//clang-tools-extra/clang-tidy/android",
|
|
"//clang-tools-extra/clang-tidy/boost",
|
|
"//clang-tools-extra/clang-tidy/bugprone",
|
|
"//clang-tools-extra/clang-tidy/cert",
|
|
"//clang-tools-extra/clang-tidy/concurrency",
|
|
"//clang-tools-extra/clang-tidy/cppcoreguidelines",
|
|
"//clang-tools-extra/clang-tidy/darwin",
|
|
"//clang-tools-extra/clang-tidy/fuchsia",
|
|
"//clang-tools-extra/clang-tidy/google",
|
|
"//clang-tools-extra/clang-tidy/hicpp",
|
|
"//clang-tools-extra/clang-tidy/linuxkernel",
|
|
"//clang-tools-extra/clang-tidy/llvm",
|
|
"//clang-tools-extra/clang-tidy/llvmlibc",
|
|
"//clang-tools-extra/clang-tidy/misc",
|
|
"//clang-tools-extra/clang-tidy/modernize",
|
|
"//clang-tools-extra/clang-tidy/objc",
|
|
"//clang-tools-extra/clang-tidy/openmp",
|
|
"//clang-tools-extra/clang-tidy/performance",
|
|
"//clang-tools-extra/clang-tidy/portability",
|
|
"//clang-tools-extra/clang-tidy/readability",
|
|
"//clang-tools-extra/clang-tidy/zircon",
|
|
]
|
|
if (clang_tidy_enable_static_analyzer) {
|
|
deps += [ "//clang-tools-extra/clang-tidy/mpi" ]
|
|
}
|
|
}
|