1load("@rules_cc//cc:defs.bzl", "cc_library") 2load("@rules_rust//rust:defs.bzl", "rust_binary") 3load("//tools/bazel:rust_cxx_bridge.bzl", "rust_cxx_bridge") 4 5rust_binary( 6 name = "demo", 7 srcs = glob(["src/**/*.rs"]), 8 edition = "2018", 9 deps = [ 10 ":blobstore-sys", 11 ":bridge", 12 "//:cxx", 13 ], 14) 15 16rust_cxx_bridge( 17 name = "bridge", 18 src = "src/main.rs", 19 deps = [":blobstore-include"], 20) 21 22cc_library( 23 name = "blobstore-sys", 24 srcs = ["src/blobstore.cc"], 25 copts = ["-std=c++14"], 26 deps = [ 27 ":blobstore-include", 28 ":bridge/include", 29 ], 30) 31 32cc_library( 33 name = "blobstore-include", 34 hdrs = ["include/blobstore.h"], 35 deps = ["//:core"], 36) 37