BUILD 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  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. package(default_visibility = ["//visibility:public"])
  5. cc_library(
  6. name = "bazel_working_dir",
  7. hdrs = ["bazel_working_dir.h"],
  8. deps = [
  9. "@llvm-project//llvm:Support",
  10. ],
  11. )
  12. cc_library(
  13. name = "check",
  14. srcs = [
  15. "check_internal.cpp",
  16. "check_internal.h",
  17. ],
  18. hdrs = ["check.h"],
  19. deps = [
  20. "@llvm-project//llvm:Support",
  21. ],
  22. )
  23. cc_test(
  24. name = "check_test",
  25. srcs = ["check_test.cpp"],
  26. deps = [
  27. ":check",
  28. "//common:gtest_main",
  29. "@com_google_googletest//:gtest",
  30. ],
  31. )
  32. cc_library(
  33. name = "error",
  34. hdrs = ["error.h"],
  35. deps = [
  36. ":check",
  37. ":ostream",
  38. "@llvm-project//llvm:Support",
  39. ],
  40. )
  41. cc_test(
  42. name = "error_test",
  43. srcs = ["error_test.cpp"],
  44. deps = [
  45. ":error",
  46. "//common:gtest_main",
  47. "@com_google_googletest//:gtest",
  48. ],
  49. )
  50. # This does extra initialization on top of googletest's gtest_main in order to
  51. # provide stack traces on unexpected exits, because we normally rely on LLVM
  52. # code for that.
  53. #
  54. # This replaces "@com_google_googletest//:gtest_main";
  55. # "@com_google_googletest//:gtest" should still be used directly.
  56. cc_library(
  57. name = "gtest_main",
  58. testonly = 1,
  59. srcs = ["gtest_main.cpp"],
  60. deps = [
  61. "@com_google_googletest//:gtest",
  62. "@llvm-project//llvm:Support",
  63. ],
  64. )
  65. cc_library(
  66. name = "indirect_value",
  67. hdrs = ["indirect_value.h"],
  68. )
  69. cc_test(
  70. name = "indirect_value_test",
  71. srcs = ["indirect_value_test.cpp"],
  72. deps = [
  73. ":indirect_value",
  74. "//common:gtest_main",
  75. "@com_google_googletest//:gtest",
  76. ],
  77. )
  78. cc_library(
  79. name = "metaprogramming",
  80. hdrs = ["metaprogramming.h"],
  81. )
  82. cc_library(
  83. name = "ostream",
  84. hdrs = ["ostream.h"],
  85. deps = [
  86. ":metaprogramming",
  87. "@llvm-project//llvm:Support",
  88. ],
  89. )
  90. cc_library(
  91. name = "string_helpers",
  92. srcs = ["string_helpers.cpp"],
  93. hdrs = ["string_helpers.h"],
  94. deps = [
  95. ":check",
  96. ":error",
  97. "@llvm-project//llvm:Support",
  98. ],
  99. )
  100. cc_test(
  101. name = "string_helpers_test",
  102. srcs = ["string_helpers_test.cpp"],
  103. deps = [
  104. ":string_helpers",
  105. "//common:gtest_main",
  106. "@com_google_googletest//:gtest",
  107. "@llvm-project//llvm:Support",
  108. ],
  109. )
  110. cc_library(
  111. name = "vlog",
  112. srcs = ["vlog_internal.h"],
  113. hdrs = ["vlog.h"],
  114. deps = [
  115. "@llvm-project//llvm:Support",
  116. ],
  117. )
  118. cc_test(
  119. name = "vlog_test",
  120. srcs = ["vlog_test.cpp"],
  121. deps = [
  122. ":vlog",
  123. "//common:gtest_main",
  124. "@com_google_googletest//:gtest",
  125. ],
  126. )