blob: d4164d3e5fade94d972450f6986cbdeac0a46f53 [file] [log] [blame]
rust_binary(
name = "demo-rs",
srcs = glob(["src/**"]),
deps = [
":gen",
"//:cxx",
"//demo-cxx:demo-cxx",
],
)
cxx_library(
name = "gen",
srcs = [":gen-source"],
deps = [
":include",
"//demo-cxx:include",
],
)
genrule(
name = "gen-header",
srcs = ["src/main.rs"],
cmd = "$(exe //:codegen) --header ${SRCS} > ${OUT}",
type = "cxxbridge",
out = "generated.h",
)
genrule(
name = "gen-source",
srcs = ["src/main.rs"],
cmd = "$(exe //:codegen) ${SRCS} > ${OUT}",
type = "cxxbridge",
out = "generated.cc",
)
cxx_library(
name = "include",
exported_headers = {
"src/main.rs.h": ":gen-header",
},
visibility = ["PUBLIC"],
)