1load("@rules_cc//cc:defs.bzl", "cc_toolchain") 2load(":dummy_cc_toolchain.bzl", "dummy_cc_config", "dummy_cc_toolchain") 3 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([email protected]): 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"], 12 toolchain = ":dummy_cc_wasm32_toolchain_cc", 13 toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", 14) 15 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) 38