blob: fb781b6491903b6e06d31f323001183e04ea98ac [file] [log] [blame]
David Tolnayc19936c2020-02-22 11:48:47 -08001load("//:build/rust.bzl", "rust_binary", "rust_library")
2
3rust_binary(
4 name = "demo_rs",
5 srcs = glob(["src/**"]),
6 deps = [
7 ":gen",
8 "//:cxx",
9 "//demo-cxx",
10 ],
11)
12
13cc_library(
14 name = "gen",
15 srcs = [":gen-source"],
16 deps = [
17 ":include",
18 "//demo-cxx:include",
19 ],
20)
21
22genrule(
23 name = "gen-header",
24 srcs = ["src/main.rs"],
25 outs = ["main.rs"],
26 cmd = "$(location //:codegen) --header $< > $@",
27 tools = ["//:codegen"],
28)
29
30genrule(
31 name = "gen-source",
32 srcs = ["src/main.rs"],
33 outs = ["gen-demo.cc"],
34 cmd = "$(location //:codegen) $< > $@",
35 tools = ["//:codegen"],
36)
37
38cc_library(
39 name = "include",
40 hdrs = [":gen-header"],
41 include_prefix = "demo-rs/src",
42 visibility = ["//visibility:public"],
43)