BUILD 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  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("//bazel/fuzzing:rules.bzl", "cc_fuzz_test")
  5. package(default_visibility = ["//visibility:public"])
  6. cc_library(
  7. name = "driver",
  8. srcs = ["driver.cpp"],
  9. hdrs = ["driver.h"],
  10. textual_hdrs = ["flags.def"],
  11. deps = [
  12. "//toolchain/diagnostics:diagnostic_emitter",
  13. "//toolchain/lexer:tokenized_buffer",
  14. "//toolchain/parser:parse_tree",
  15. "//toolchain/source:source_buffer",
  16. "@llvm-project//llvm:Support",
  17. ],
  18. )
  19. cc_test(
  20. name = "driver_test",
  21. srcs = ["driver_test.cpp"],
  22. deps = [
  23. ":driver",
  24. "//toolchain/common:yaml_test_helpers",
  25. "//toolchain/lexer:tokenized_buffer_test_helpers",
  26. "@llvm-project//llvm:Support",
  27. "@llvm-project//llvm:gmock",
  28. "@llvm-project//llvm:gtest",
  29. "@llvm-project//llvm:gtest_main",
  30. ],
  31. )
  32. cc_fuzz_test(
  33. name = "driver_fuzzer",
  34. srcs = ["driver_fuzzer.cpp"],
  35. corpus = glob(["fuzzer_corpus/*"]),
  36. deps = [
  37. ":driver",
  38. "@llvm-project//llvm:Support",
  39. ],
  40. )
  41. cc_binary(
  42. name = "carbon",
  43. srcs = ["driver_main.cpp"],
  44. deps = [
  45. ":driver",
  46. "@llvm-project//llvm:Support",
  47. ],
  48. )
  49. # FIXME: No support for LLVM's lit-style command line & FileCheck tests.
  50. #
  51. #lit_test(
  52. # name = "carbon_test.carbon",
  53. # data = [
  54. # ":carbon",
  55. # "@llvm-project//llvm:FileCheck",
  56. # ],
  57. #)