blob: a0f6fb0b866f1b372eb66f6bc6e7d51107317611 [file] [log] [blame]
David Tolnay5bde59d2020-02-09 18:59:12 -08001rust_binary(
2 name = "demo-rs",
3 srcs = glob(["src/**"]),
4 deps = [
5 ":gen",
6 "//:cxx",
7 "//demo-cxx:demo-cxx",
8 ],
9)
10
11cxx_library(
12 name = "gen",
13 srcs = [":gen-source"],
14 deps = [
15 ":include",
16 "//demo-cxx:include",
17 ],
18)
19
20genrule(
21 name = "gen-header",
22 srcs = ["src/main.rs"],
23 cmd = "$(exe //:codegen) --header ${SRCS} > ${OUT}",
24 type = "cxxbridge",
25 out = "gen-demo.h",
26)
27
28genrule(
29 name = "gen-source",
30 srcs = ["src/main.rs"],
31 cmd = "$(exe //:codegen) ${SRCS} > ${OUT}",
32 type = "cxxbridge",
33 out = "gen-demo.cc",
34)
35
36cxx_library(
37 name = "include",
38 exported_headers = {
39 "src/main.rs": ":gen-header",
40 },
41 visibility = ["PUBLIC"],
42)