blob: d4164d3e5fade94d972450f6986cbdeac0a46f53 [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",
David Tolnaybffcdd52020-03-17 19:12:28 -070025 out = "generated.h",
David Tolnay5bde59d2020-02-09 18:59:12 -080026)
27
28genrule(
29 name = "gen-source",
30 srcs = ["src/main.rs"],
31 cmd = "$(exe //:codegen) ${SRCS} > ${OUT}",
32 type = "cxxbridge",
David Tolnaybffcdd52020-03-17 19:12:28 -070033 out = "generated.cc",
David Tolnay5bde59d2020-02-09 18:59:12 -080034)
35
36cxx_library(
37 name = "include",
38 exported_headers = {
David Tolnay1a2683a2020-03-17 19:09:29 -070039 "src/main.rs.h": ":gen-header",
David Tolnay5bde59d2020-02-09 18:59:12 -080040 },
41 visibility = ["PUBLIC"],
42)