summaryrefslogtreecommitdiffstats
path: root/vendor/cxx/tests/BUILD
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/cxx/tests/BUILD')
-rw-r--r--vendor/cxx/tests/BUILD55
1 files changed, 55 insertions, 0 deletions
diff --git a/vendor/cxx/tests/BUILD b/vendor/cxx/tests/BUILD
new file mode 100644
index 000000000..3c25d9633
--- /dev/null
+++ b/vendor/cxx/tests/BUILD
@@ -0,0 +1,55 @@
+load("@rules_cc//cc:defs.bzl", "cc_library")
+load("@rules_rust//rust:defs.bzl", "rust_library", "rust_test")
+load("//tools/bazel:rust_cxx_bridge.bzl", "rust_cxx_bridge")
+
+rust_test(
+ name = "test",
+ size = "small",
+ srcs = ["test.rs"],
+ edition = "2018",
+ deps = [
+ ":cxx_test_suite",
+ "//:cxx",
+ ],
+)
+
+rust_library(
+ name = "cxx_test_suite",
+ srcs = [
+ "ffi/cast.rs",
+ "ffi/lib.rs",
+ "ffi/module.rs",
+ ],
+ edition = "2018",
+ deps = [
+ ":impl",
+ "//:cxx",
+ ],
+)
+
+cc_library(
+ name = "impl",
+ srcs = [
+ "ffi/tests.cc",
+ ":bridge/source",
+ ":module/source",
+ ],
+ hdrs = ["ffi/tests.h"],
+ deps = [
+ ":bridge/include",
+ ":module/include",
+ "//:core",
+ ],
+)
+
+rust_cxx_bridge(
+ name = "bridge",
+ src = "ffi/lib.rs",
+ deps = [":impl"],
+)
+
+rust_cxx_bridge(
+ name = "module",
+ src = "ffi/module.rs",
+ deps = [":impl"],
+)