load("@rules_cc//cc:defs.bzl", "cc_library") load("//tools/bazel:rust.bzl", "rust_library", "rust_test") load("//tools/bazel:rust_cxx_bridge.bzl", "rust_cxx_bridge") rust_test( name = "test", size = "small", srcs = ["test.rs"], deps = [ ":cxx_test_suite", "//:cxx", ], ) rust_library( name = "cxx_test_suite", srcs = [ "ffi/extra.rs", "ffi/lib.rs", "ffi/module.rs", ], deps = [ ":impl", "//:cxx", ], ) cc_library( name = "impl", srcs = [ "ffi/tests.cc", ":bridge/source", ":extra/source", ":module/source", ], hdrs = ["ffi/tests.h"], deps = [ ":bridge/include", "//:core", ], ) rust_cxx_bridge( name = "bridge", src = "ffi/lib.rs", deps = [":impl"], ) rust_cxx_bridge( name = "extra", src = "ffi/extra.rs", deps = [":impl"], ) rust_cxx_bridge( name = "module", src = "ffi/module.rs", deps = [":impl"], )