llvm/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/misc/BUILD.gn

import("//llvm/utils/gn/build/compiled_action.gni")

compiled_action("Confusables.inc") {
  tool = "ConfusableTable:clang-tidy-confusable-chars-gen"
  inputs = [ "ConfusableTable/confusables.txt" ]
  outputs = [ "$target_gen_dir/$target_name" ]
  args = [
    rebase_path(inputs[0], root_build_dir),
    rebase_path(outputs[0], root_build_dir),
  ]
}

static_library("misc") {
  output_name = "clangTidyMiscModule"
  configs += [ "//llvm/utils/gn/build:clang_code" ]
  include_dirs = [
    target_gen_dir,
    "//clang-tools-extra/include-cleaner/include",
  ]
  deps = [
    ":Confusables.inc",
    "//clang-tools-extra/clang-tidy",
    "//clang-tools-extra/clang-tidy/utils",
    "//clang-tools-extra/include-cleaner/lib",
    "//clang/lib/AST",
    "//clang/lib/ASTMatchers",
    "//clang/lib/Analysis",
    "//clang/lib/Basic",
    "//clang/lib/Lex",
    "//clang/lib/Serialization",
    "//clang/lib/Tooling",
    "//llvm/lib/Support",
  ]
  sources = [
    "ConfusableIdentifierCheck.cpp",
    "ConstCorrectnessCheck.cpp",
    "CoroutineHostileRAIICheck.cpp",
    "DefinitionsInHeadersCheck.cpp",
    "HeaderIncludeCycleCheck.cpp",
    "IncludeCleanerCheck.cpp",
    "MiscTidyModule.cpp",
    "MisleadingBidirectional.cpp",
    "MisleadingIdentifier.cpp",
    "MisplacedConstCheck.cpp",
    "NewDeleteOverloadsCheck.cpp",
    "NoRecursionCheck.cpp",
    "NonCopyableObjects.cpp",
    "NonPrivateMemberVariablesInClassesCheck.cpp",
    "RedundantExpressionCheck.cpp",
    "StaticAssertCheck.cpp",
    "ThrowByValueCatchByReferenceCheck.cpp",
    "UnconventionalAssignOperatorCheck.cpp",
    "UniqueptrResetReleaseCheck.cpp",
    "UnusedAliasDeclsCheck.cpp",
    "UnusedParametersCheck.cpp",
    "UnusedUsingDeclsCheck.cpp",
    "UseAnonymousNamespaceCheck.cpp",
    "UseInternalLinkageCheck.cpp",
  ]
}