blob: fe1aa897f716aad2de755f6ba509ef0f46117dfb [file] [log] [blame]
# This package contains libraries related to SystemVerilog preprocessing.
package(
default_applicable_licenses = ["//:license"],
default_visibility = [
"//verilog:__subpackages__",
# TODO(b/130113490): standalone preprocessor tool
],
features = ["layering_check"],
)
cc_library(
name = "verilog-preprocess",
srcs = ["verilog_preprocess.cc"],
hdrs = ["verilog_preprocess.h"],
deps = [
"//common/lexer:token-generator",
"//common/lexer:token-stream-adapter",
"//common/text:macro-definition",
"//common/text:text-structure",
"//common/text:token-info",
"//common/text:token-stream-view",
"//common/util:container-util",
"//common/util:logging",
"//common/util:status-macros",
"//verilog/analysis:verilog-filelist",
"//verilog/parser:verilog-lexer",
"//verilog/parser:verilog-parser",
"//verilog/parser:verilog-token-enum",
"@com_google_absl//absl/status",
"@com_google_absl//absl/status:statusor",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/strings:string_view",
],
)
cc_test(
name = "verilog-preprocess_test",
srcs = ["verilog_preprocess_test.cc"],
deps = [
":verilog-preprocess",
"//common/text:macro-definition",
"//common/text:text-structure",
"//common/text:token-info",
"//common/text:token-stream-view",
"//common/util:container-util",
"//common/util:file-util",
"//verilog/analysis:verilog-analyzer",
"//verilog/analysis:verilog-filelist",
"//verilog/analysis:verilog-project",
"//verilog/parser:verilog-lexer",
"//verilog/parser:verilog-token-enum",
"@com_google_absl//absl/status",
"@com_google_absl//absl/status:statusor",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/strings:string_view",
"@com_google_googletest//:gtest",
"@com_google_googletest//:gtest_main",
],
)