• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1load("@rules_cc//cc:defs.bzl", "cc_library", "cc_test")
2load("@rules_rust//rust:defs.bzl", "rust_static_library")
3
4rust_static_library(
5    name = "rust_lib",
6    srcs = ["lib.rs"],
7    edition = "2021",
8)
9
10cc_library(
11    name = "c_lib",
12    srcs = ["lib.c"],
13    hdrs = ["lib.h"],
14    deps = [":rust_lib"],
15)
16
17# Tests that cc_shared_library correctly traverses into
18# `rust_static_library` when linking.
19cc_shared_library(
20    name = "shared",
21    deps = [":c_lib"],
22)
23
24cc_test(
25    name = "test",
26    srcs = ["main.c"],
27    dynamic_deps = [":shared"],
28    linkstatic = True,
29    deps = [":c_lib"],
30)
31