Squashed 'third_party/rules_rust/' content from commit bf59038ca

git-subtree-dir: third_party/rules_rust
git-subtree-split: bf59038cac11798cbaef9f3bf965bad8182b97fa
Signed-off-by: Brian Silverman <bsilver16384@gmail.com>
Change-Id: I5a20e403203d670df467ea97dde9a4ac40339a8d
diff --git a/rust/private/dummy_cc_toolchain/BUILD.bazel b/rust/private/dummy_cc_toolchain/BUILD.bazel
new file mode 100644
index 0000000..004d233
--- /dev/null
+++ b/rust/private/dummy_cc_toolchain/BUILD.bazel
@@ -0,0 +1,13 @@
+load(":dummy_cc_toolchain.bzl", "dummy_cc_toolchain")
+
+dummy_cc_toolchain(name = "dummy_cc_wasm32")
+
+# When compiling Rust code for wasm32, we avoid linking to cpp code so we introduce a dummy cc
+# toolchain since we know we'll never look it up.
+# TODO(jedmonds@spotify.com): Need to support linking C code to rust code when compiling for wasm32.
+toolchain(
+    name = "dummy_cc_wasm32_toolchain",
+    target_compatible_with = ["//rust/platform/cpu:wasm32"],
+    toolchain = ":dummy_cc_wasm32",
+    toolchain_type = "@bazel_tools//tools/cpp:toolchain_type",
+)