blob: 848480f08fdd2e4f7cd42a66073477e401f12ba9 [file] [log] [blame]
Adam Snaider1c095c92023-07-08 02:09:58 -04001load("@rules_cc//cc:defs.bzl", "cc_toolchain")
2load(":dummy_cc_toolchain.bzl", "dummy_cc_config", "dummy_cc_toolchain")
Brian Silvermancc09f182022-03-09 15:40:20 -08003
4dummy_cc_toolchain(name = "dummy_cc_wasm32")
5
6# When compiling Rust code for wasm32, we avoid linking to cpp code so we introduce a dummy cc
7# toolchain since we know we'll never look it up.
8# TODO(jedmonds@spotify.com): Need to support linking C code to rust code when compiling for wasm32.
9toolchain(
10 name = "dummy_cc_wasm32_toolchain",
11 target_compatible_with = ["//rust/platform/cpu:wasm32"],
Adam Snaider1c095c92023-07-08 02:09:58 -040012 toolchain = ":dummy_cc_wasm32_toolchain_cc",
Brian Silvermancc09f182022-03-09 15:40:20 -080013 toolchain_type = "@bazel_tools//tools/cpp:toolchain_type",
14)
Adam Snaider1c095c92023-07-08 02:09:58 -040015
16cc_toolchain(
17 name = "dummy_cc_wasm32_toolchain_cc",
18 all_files = ":empty",
19 compiler_files = ":empty",
20 dwp_files = ":empty",
21 linker_files = ":empty",
22 objcopy_files = ":empty",
23 strip_files = ":empty",
24 supports_param_files = 0,
25 toolchain_config = ":cc_toolchain_config",
26 toolchain_identifier = "dummy_wasm32_cc",
27)
28
29dummy_cc_config(
30 name = "cc_toolchain_config",
31)
32
33filegroup(
34 name = "empty",
35 srcs = [],
36 visibility = ["//:__subpackages__"],
37)