1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- licenses(["notice"])
- load("@rules_ragel//ragel:ragel.bzl", "ragel")
- load("@rules_bison//bison:bison.bzl", "bison")
- ragel(
- name = "ragel_lexer",
- src = "cc/lexer.rl",
- language = "c++",
- )
- bison(
- name = "typedruby_bison",
- src = "cc/grammars/typedruby.ypp",
- bison_options = [
- "-Wno-empty-rule",
- "-Wno-precedence",
- ],
- )
- cc_binary(
- name = "generate_diagnostics",
- srcs = [
- "codegen/generate_diagnostics.cc",
- ],
- linkstatic = select({
- "//conditions:default": 1,
- }),
- visibility = ["//visibility:public"],
- )
- genrule(
- name = "gen_diagnostics_dclass",
- outs = [
- "include/ruby_parser/diagnostic_class.hh",
- ],
- cmd = "$(location :generate_diagnostics) dclass > $@",
- tools = [
- ":generate_diagnostics",
- ],
- )
- cc_library(
- name = "parser",
- srcs = glob(["cc/*.cc"]) + [
- ":gen_diagnostics_dclass",
- ":ragel_lexer",
- ":typedruby_bison",
- ],
- hdrs = glob(["include/**/*.hh"]),
- copts = [
- "-Wno-unused-const-variable",
- ],
- includes = [
- "include",
- "include/ruby_parser",
- ],
- linkstatic = select({
- "//conditions:default": 1,
- }),
- visibility = ["//visibility:public"],
- deps = [
- "@com_google_absl//absl/strings",
- ],
- )
|