BUILD 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. # Part of the Carbon Language project, under the Apache License v2.0 with LLVM
  2. # Exceptions. See /LICENSE for license information.
  3. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  4. load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library", "cc_test")
  5. package(default_visibility = ["//visibility:public"])
  6. cc_binary(
  7. name = "cpp_refactoring",
  8. srcs = ["main.cpp"],
  9. deps = [
  10. ":fn_inserter",
  11. ":var_decl",
  12. "@llvm-project//clang:tooling",
  13. ],
  14. )
  15. cc_library(
  16. name = "matcher",
  17. srcs = ["matcher.cpp"],
  18. hdrs = [
  19. "matcher.h",
  20. "matcher_manager.h",
  21. ],
  22. deps = [
  23. "@llvm-project//clang:ast_matchers",
  24. "@llvm-project//clang:tooling_core",
  25. ],
  26. )
  27. cc_library(
  28. name = "matcher_test_base",
  29. testonly = 1,
  30. hdrs = ["matcher_test_base.h"],
  31. deps = [
  32. ":matcher",
  33. "@llvm-project//clang:ast_matchers",
  34. "@llvm-project//clang:tooling",
  35. "@llvm-project//llvm:gmock",
  36. "@llvm-project//llvm:gtest",
  37. ],
  38. )
  39. # Individual matchers
  40. cc_library(
  41. name = "fn_inserter",
  42. srcs = ["fn_inserter.cpp"],
  43. hdrs = ["fn_inserter.h"],
  44. deps = [":matcher"],
  45. )
  46. cc_test(
  47. name = "fn_inserter_test",
  48. srcs = ["fn_inserter_test.cpp"],
  49. deps = [
  50. ":fn_inserter",
  51. ":matcher_test_base",
  52. "@llvm-project//clang:tooling",
  53. "@llvm-project//llvm:gtest_main",
  54. ],
  55. )
  56. cc_library(
  57. name = "var_decl",
  58. srcs = ["var_decl.cpp"],
  59. hdrs = ["var_decl.h"],
  60. deps = [":matcher"],
  61. )
  62. cc_test(
  63. name = "var_decl_test",
  64. srcs = ["var_decl_test.cpp"],
  65. deps = [
  66. ":matcher_test_base",
  67. ":var_decl",
  68. "@llvm-project//clang:tooling",
  69. "@llvm-project//llvm:gtest_main",
  70. ],
  71. )