| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 
 | 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",
    "NoLintDirectiveHandler.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" ]
  }
}
 |