[bazel] Autogenerate rules with cargo raze

Signed-off-by: Alphan Ulusoy <alphan@google.com>
diff --git a/third_party/cargo/crates.bzl b/third_party/cargo/crates.bzl
index 348d47d..1e3d07b 100644
--- a/third_party/cargo/crates.bzl
+++ b/third_party/cargo/crates.bzl
@@ -20,6 +20,8 @@
         "lazy_static": "@raze__lazy_static__1_4_0//:lazy_static",
         "log": "@raze__log__0_4_14//:log",
         "nix": "@raze__nix__0_17_0//:nix",
+        "num-bigint-dig": "@raze__num_bigint_dig__0_7_0//:num_bigint_dig",
+        "num-traits": "@raze__num_traits__0_2_14//:num_traits",
         "num_enum": "@raze__num_enum__0_5_4//:num_enum",
         "regex": "@raze__regex__1_5_4//:regex",
         "rusb": "@raze__rusb__0_8_1//:rusb",
@@ -283,6 +285,24 @@
 
     maybe(
         http_archive,
+        name = "raze__autocfg__0_1_7",
+        url = "https://crates.io/api/v1/crates/autocfg/0.1.7/download",
+        type = "tar.gz",
+        strip_prefix = "autocfg-0.1.7",
+        build_file = Label("//third_party/cargo/remote:BUILD.autocfg-0.1.7.bazel"),
+    )
+
+    maybe(
+        http_archive,
+        name = "raze__autocfg__1_0_1",
+        url = "https://crates.io/api/v1/crates/autocfg/1.0.1/download",
+        type = "tar.gz",
+        strip_prefix = "autocfg-1.0.1",
+        build_file = Label("//third_party/cargo/remote:BUILD.autocfg-1.0.1.bazel"),
+    )
+
+    maybe(
+        http_archive,
         name = "raze__bitflags__1_3_2",
         url = "https://crates.io/api/v1/crates/bitflags/1.3.2/download",
         type = "tar.gz",
@@ -523,6 +543,15 @@
 
     maybe(
         http_archive,
+        name = "raze__libm__0_2_1",
+        url = "https://crates.io/api/v1/crates/libm/0.2.1/download",
+        type = "tar.gz",
+        strip_prefix = "libm-0.2.1",
+        build_file = Label("//third_party/cargo/remote:BUILD.libm-0.2.1.bazel"),
+    )
+
+    maybe(
+        http_archive,
         name = "raze__libudev__0_2_0",
         url = "https://crates.io/api/v1/crates/libudev/0.2.0/download",
         type = "tar.gz",
@@ -619,6 +648,42 @@
 
     maybe(
         http_archive,
+        name = "raze__num_bigint_dig__0_7_0",
+        url = "https://crates.io/api/v1/crates/num-bigint-dig/0.7.0/download",
+        type = "tar.gz",
+        strip_prefix = "num-bigint-dig-0.7.0",
+        build_file = Label("//third_party/cargo/remote:BUILD.num-bigint-dig-0.7.0.bazel"),
+    )
+
+    maybe(
+        http_archive,
+        name = "raze__num_integer__0_1_44",
+        url = "https://crates.io/api/v1/crates/num-integer/0.1.44/download",
+        type = "tar.gz",
+        strip_prefix = "num-integer-0.1.44",
+        build_file = Label("//third_party/cargo/remote:BUILD.num-integer-0.1.44.bazel"),
+    )
+
+    maybe(
+        http_archive,
+        name = "raze__num_iter__0_1_42",
+        url = "https://crates.io/api/v1/crates/num-iter/0.1.42/download",
+        type = "tar.gz",
+        strip_prefix = "num-iter-0.1.42",
+        build_file = Label("//third_party/cargo/remote:BUILD.num-iter-0.1.42.bazel"),
+    )
+
+    maybe(
+        http_archive,
+        name = "raze__num_traits__0_2_14",
+        url = "https://crates.io/api/v1/crates/num-traits/0.2.14/download",
+        type = "tar.gz",
+        strip_prefix = "num-traits-0.2.14",
+        build_file = Label("//third_party/cargo/remote:BUILD.num-traits-0.2.14.bazel"),
+    )
+
+    maybe(
+        http_archive,
         name = "raze__num_enum__0_5_4",
         url = "https://crates.io/api/v1/crates/num_enum/0.5.4/download",
         type = "tar.gz",
@@ -669,6 +734,15 @@
 
     maybe(
         http_archive,
+        name = "raze__ppv_lite86__0_2_16",
+        url = "https://crates.io/api/v1/crates/ppv-lite86/0.2.16/download",
+        type = "tar.gz",
+        strip_prefix = "ppv-lite86-0.2.16",
+        build_file = Label("//third_party/cargo/remote:BUILD.ppv-lite86-0.2.16.bazel"),
+    )
+
+    maybe(
+        http_archive,
         name = "raze__proc_macro_crate__1_1_0",
         url = "https://crates.io/api/v1/crates/proc-macro-crate/1.1.0/download",
         type = "tar.gz",
@@ -739,6 +813,33 @@
 
     maybe(
         http_archive,
+        name = "raze__rand__0_8_4",
+        url = "https://crates.io/api/v1/crates/rand/0.8.4/download",
+        type = "tar.gz",
+        strip_prefix = "rand-0.8.4",
+        build_file = Label("//third_party/cargo/remote:BUILD.rand-0.8.4.bazel"),
+    )
+
+    maybe(
+        http_archive,
+        name = "raze__rand_chacha__0_3_1",
+        url = "https://crates.io/api/v1/crates/rand_chacha/0.3.1/download",
+        type = "tar.gz",
+        strip_prefix = "rand_chacha-0.3.1",
+        build_file = Label("//third_party/cargo/remote:BUILD.rand_chacha-0.3.1.bazel"),
+    )
+
+    maybe(
+        http_archive,
+        name = "raze__rand_core__0_6_3",
+        url = "https://crates.io/api/v1/crates/rand_core/0.6.3/download",
+        type = "tar.gz",
+        strip_prefix = "rand_core-0.6.3",
+        build_file = Label("//third_party/cargo/remote:BUILD.rand_core-0.6.3.bazel"),
+    )
+
+    maybe(
+        http_archive,
         name = "raze__raw_tty__0_1_0",
         url = "https://crates.io/api/v1/crates/raw_tty/0.1.0/download",
         type = "tar.gz",
@@ -898,6 +999,24 @@
 
     maybe(
         http_archive,
+        name = "raze__smallvec__1_7_0",
+        url = "https://crates.io/api/v1/crates/smallvec/1.7.0/download",
+        type = "tar.gz",
+        strip_prefix = "smallvec-1.7.0",
+        build_file = Label("//third_party/cargo/remote:BUILD.smallvec-1.7.0.bazel"),
+    )
+
+    maybe(
+        http_archive,
+        name = "raze__spin__0_5_2",
+        url = "https://crates.io/api/v1/crates/spin/0.5.2/download",
+        type = "tar.gz",
+        strip_prefix = "spin-0.5.2",
+        build_file = Label("//third_party/cargo/remote:BUILD.spin-0.5.2.bazel"),
+    )
+
+    maybe(
+        http_archive,
         name = "raze__strsim__0_8_0",
         url = "https://crates.io/api/v1/crates/strsim/0.8.0/download",
         type = "tar.gz",
diff --git a/third_party/cargo/remote/BUILD.autocfg-0.1.7.bazel b/third_party/cargo/remote/BUILD.autocfg-0.1.7.bazel
new file mode 100644
index 0000000..1ca6788
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.autocfg-0.1.7.bazel
@@ -0,0 +1,63 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # Apache-2.0 from expression "Apache-2.0 OR MIT"
+])
+
+# Generated Targets
+
+# Unsupported target "integers" with type "example" omitted
+
+# Unsupported target "paths" with type "example" omitted
+
+# Unsupported target "traits" with type "example" omitted
+
+# Unsupported target "versions" with type "example" omitted
+
+rust_library(
+    name = "autocfg",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.1.7",
+    # buildifier: leave-alone
+    deps = [
+    ],
+)
+
+# Unsupported target "rustflags" with type "test" omitted
diff --git a/third_party/cargo/remote/BUILD.autocfg-1.0.1.bazel b/third_party/cargo/remote/BUILD.autocfg-1.0.1.bazel
new file mode 100644
index 0000000..a2b8db2
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.autocfg-1.0.1.bazel
@@ -0,0 +1,63 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # Apache-2.0 from expression "Apache-2.0 OR MIT"
+])
+
+# Generated Targets
+
+# Unsupported target "integers" with type "example" omitted
+
+# Unsupported target "paths" with type "example" omitted
+
+# Unsupported target "traits" with type "example" omitted
+
+# Unsupported target "versions" with type "example" omitted
+
+rust_library(
+    name = "autocfg",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "1.0.1",
+    # buildifier: leave-alone
+    deps = [
+    ],
+)
+
+# Unsupported target "rustflags" with type "test" omitted
diff --git a/third_party/cargo/remote/BUILD.lazy_static-1.4.0.bazel b/third_party/cargo/remote/BUILD.lazy_static-1.4.0.bazel
index 5906496..c61734a 100644
--- a/third_party/cargo/remote/BUILD.lazy_static-1.4.0.bazel
+++ b/third_party/cargo/remote/BUILD.lazy_static-1.4.0.bazel
@@ -35,6 +35,8 @@
     name = "lazy_static",
     srcs = glob(["**/*.rs"]),
     crate_features = [
+        "spin",
+        "spin_no_std",
     ],
     crate_root = "src/lib.rs",
     data = [],
@@ -49,6 +51,7 @@
     version = "1.4.0",
     # buildifier: leave-alone
     deps = [
+        "@raze__spin__0_5_2//:spin",
     ],
 )
 
diff --git a/third_party/cargo/remote/BUILD.libm-0.2.1.bazel b/third_party/cargo/remote/BUILD.libm-0.2.1.bazel
new file mode 100644
index 0000000..437fc9e
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.libm-0.2.1.bazel
@@ -0,0 +1,85 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+# buildifier: disable=out-of-order-load
+# buildifier: disable=load-on-top
+load(
+    "@rules_rust//cargo:cargo_build_script.bzl",
+    "cargo_build_script",
+)
+
+cargo_build_script(
+    name = "libm_build_script",
+    srcs = glob(["**/*.rs"]),
+    build_script_env = {
+    },
+    crate_features = [
+        "default",
+    ],
+    crate_root = "build.rs",
+    data = glob(["**"]),
+    edition = "2018",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.2.1",
+    visibility = ["//visibility:private"],
+    deps = [
+    ],
+)
+
+rust_library(
+    name = "libm",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+        "default",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2018",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.2.1",
+    # buildifier: leave-alone
+    deps = [
+        ":libm_build_script",
+    ],
+)
diff --git a/third_party/cargo/remote/BUILD.num-bigint-dig-0.7.0.bazel b/third_party/cargo/remote/BUILD.num-bigint-dig-0.7.0.bazel
new file mode 100644
index 0000000..cec2e16
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.num-bigint-dig-0.7.0.bazel
@@ -0,0 +1,125 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+# buildifier: disable=out-of-order-load
+# buildifier: disable=load-on-top
+load(
+    "@rules_rust//cargo:cargo_build_script.bzl",
+    "cargo_build_script",
+)
+
+cargo_build_script(
+    name = "num_bigint_dig_build_script",
+    srcs = glob(["**/*.rs"]),
+    build_script_env = {
+    },
+    crate_features = [
+        "default",
+        "i128",
+        "rand",
+        "serde",
+        "std",
+        "u64_digit",
+    ],
+    crate_root = "build.rs",
+    data = glob(["**"]),
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.7.0",
+    visibility = ["//visibility:private"],
+    deps = [
+        "@raze__autocfg__0_1_7//:autocfg",
+    ],
+)
+
+rust_library(
+    name = "num_bigint_dig",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+        "default",
+        "i128",
+        "rand",
+        "serde",
+        "std",
+        "u64_digit",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.7.0",
+    # buildifier: leave-alone
+    deps = [
+        ":num_bigint_dig_build_script",
+        "@raze__byteorder__1_4_3//:byteorder",
+        "@raze__lazy_static__1_4_0//:lazy_static",
+        "@raze__libm__0_2_1//:libm",
+        "@raze__num_integer__0_1_44//:num_integer",
+        "@raze__num_iter__0_1_42//:num_iter",
+        "@raze__num_traits__0_2_14//:num_traits",
+        "@raze__rand__0_8_4//:rand",
+        "@raze__serde__1_0_130//:serde",
+        "@raze__smallvec__1_7_0//:smallvec",
+    ],
+)
+
+# Unsupported target "bigint" with type "test" omitted
+
+# Unsupported target "bigint_bitwise" with type "test" omitted
+
+# Unsupported target "bigint_scalar" with type "test" omitted
+
+# Unsupported target "biguint" with type "test" omitted
+
+# Unsupported target "biguint_scalar" with type "test" omitted
+
+# Unsupported target "modpow" with type "test" omitted
+
+# Unsupported target "rand" with type "test" omitted
+
+# Unsupported target "roots" with type "test" omitted
+
+# Unsupported target "serde" with type "test" omitted
+
+# Unsupported target "torture" with type "test" omitted
diff --git a/third_party/cargo/remote/BUILD.num-integer-0.1.44.bazel b/third_party/cargo/remote/BUILD.num-integer-0.1.44.bazel
new file mode 100644
index 0000000..ad6a13d
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.num-integer-0.1.44.bazel
@@ -0,0 +1,99 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+# buildifier: disable=out-of-order-load
+# buildifier: disable=load-on-top
+load(
+    "@rules_rust//cargo:cargo_build_script.bzl",
+    "cargo_build_script",
+)
+
+cargo_build_script(
+    name = "num_integer_build_script",
+    srcs = glob(["**/*.rs"]),
+    build_script_env = {
+    },
+    crate_features = [
+        "i128",
+        "std",
+    ],
+    crate_root = "build.rs",
+    data = glob(["**"]),
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.1.44",
+    visibility = ["//visibility:private"],
+    deps = [
+        "@raze__autocfg__1_0_1//:autocfg",
+    ],
+)
+
+# Unsupported target "average" with type "bench" omitted
+
+# Unsupported target "gcd" with type "bench" omitted
+
+# Unsupported target "roots" with type "bench" omitted
+
+rust_library(
+    name = "num_integer",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+        "i128",
+        "std",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.1.44",
+    # buildifier: leave-alone
+    deps = [
+        ":num_integer_build_script",
+        "@raze__num_traits__0_2_14//:num_traits",
+    ],
+)
+
+# Unsupported target "average" with type "test" omitted
+
+# Unsupported target "roots" with type "test" omitted
diff --git a/third_party/cargo/remote/BUILD.num-iter-0.1.42.bazel b/third_party/cargo/remote/BUILD.num-iter-0.1.42.bazel
new file mode 100644
index 0000000..25b7293
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.num-iter-0.1.42.bazel
@@ -0,0 +1,86 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+# buildifier: disable=out-of-order-load
+# buildifier: disable=load-on-top
+load(
+    "@rules_rust//cargo:cargo_build_script.bzl",
+    "cargo_build_script",
+)
+
+cargo_build_script(
+    name = "num_iter_build_script",
+    srcs = glob(["**/*.rs"]),
+    build_script_env = {
+    },
+    crate_features = [
+    ],
+    crate_root = "build.rs",
+    data = glob(["**"]),
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.1.42",
+    visibility = ["//visibility:private"],
+    deps = [
+        "@raze__autocfg__1_0_1//:autocfg",
+    ],
+)
+
+rust_library(
+    name = "num_iter",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.1.42",
+    # buildifier: leave-alone
+    deps = [
+        ":num_iter_build_script",
+        "@raze__num_integer__0_1_44//:num_integer",
+        "@raze__num_traits__0_2_14//:num_traits",
+    ],
+)
diff --git a/third_party/cargo/remote/BUILD.num-traits-0.2.14.bazel b/third_party/cargo/remote/BUILD.num-traits-0.2.14.bazel
new file mode 100644
index 0000000..82bbb57
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.num-traits-0.2.14.bazel
@@ -0,0 +1,92 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+# buildifier: disable=out-of-order-load
+# buildifier: disable=load-on-top
+load(
+    "@rules_rust//cargo:cargo_build_script.bzl",
+    "cargo_build_script",
+)
+
+cargo_build_script(
+    name = "num_traits_build_script",
+    srcs = glob(["**/*.rs"]),
+    build_script_env = {
+    },
+    crate_features = [
+        "default",
+        "i128",
+        "std",
+    ],
+    crate_root = "build.rs",
+    data = glob(["**"]),
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.2.14",
+    visibility = ["//visibility:private"],
+    deps = [
+        "@raze__autocfg__1_0_1//:autocfg",
+    ],
+)
+
+rust_library(
+    name = "num_traits",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+        "default",
+        "i128",
+        "std",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.2.14",
+    # buildifier: leave-alone
+    deps = [
+        ":num_traits_build_script",
+    ],
+)
+
+# Unsupported target "cast" with type "test" omitted
diff --git a/third_party/cargo/remote/BUILD.ppv-lite86-0.2.16.bazel b/third_party/cargo/remote/BUILD.ppv-lite86-0.2.16.bazel
new file mode 100644
index 0000000..be2ed6f
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.ppv-lite86-0.2.16.bazel
@@ -0,0 +1,55 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+
+rust_library(
+    name = "ppv_lite86",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+        "simd",
+        "std",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2018",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.2.16",
+    # buildifier: leave-alone
+    deps = [
+    ],
+)
diff --git a/third_party/cargo/remote/BUILD.rand-0.8.4.bazel b/third_party/cargo/remote/BUILD.rand-0.8.4.bazel
new file mode 100644
index 0000000..62ea154
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.rand-0.8.4.bazel
@@ -0,0 +1,77 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+
+rust_library(
+    name = "rand",
+    srcs = glob(["**/*.rs"]),
+    aliases = {
+    },
+    crate_features = [
+        "alloc",
+        "getrandom",
+        "libc",
+        "rand_chacha",
+        "std",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2018",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.8.4",
+    # buildifier: leave-alone
+    deps = [
+        "@raze__rand_core__0_6_3//:rand_core",
+    ] + selects.with_or({
+        # cfg(not(target_os = "emscripten"))
+        (
+            "@rules_rust//rust/platform:x86_64-unknown-linux-gnu",
+        ): [
+            "@raze__rand_chacha__0_3_1//:rand_chacha",
+        ],
+        "//conditions:default": [],
+    }) + selects.with_or({
+        # cfg(unix)
+        (
+            "@rules_rust//rust/platform:x86_64-unknown-linux-gnu",
+        ): [
+            "@raze__libc__0_2_107//:libc",
+        ],
+        "//conditions:default": [],
+    }),
+)
diff --git a/third_party/cargo/remote/BUILD.rand_chacha-0.3.1.bazel b/third_party/cargo/remote/BUILD.rand_chacha-0.3.1.bazel
new file mode 100644
index 0000000..ab688b5
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.rand_chacha-0.3.1.bazel
@@ -0,0 +1,56 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+
+rust_library(
+    name = "rand_chacha",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+        "std",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2018",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.3.1",
+    # buildifier: leave-alone
+    deps = [
+        "@raze__ppv_lite86__0_2_16//:ppv_lite86",
+        "@raze__rand_core__0_6_3//:rand_core",
+    ],
+)
diff --git a/third_party/cargo/remote/BUILD.rand_core-0.6.3.bazel b/third_party/cargo/remote/BUILD.rand_core-0.6.3.bazel
new file mode 100644
index 0000000..1b34fa3
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.rand_core-0.6.3.bazel
@@ -0,0 +1,57 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+
+rust_library(
+    name = "rand_core",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+        "alloc",
+        "getrandom",
+        "std",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2018",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.6.3",
+    # buildifier: leave-alone
+    deps = [
+        "@raze__getrandom__0_2_3//:getrandom",
+    ],
+)
diff --git a/third_party/cargo/remote/BUILD.smallvec-1.7.0.bazel b/third_party/cargo/remote/BUILD.smallvec-1.7.0.bazel
new file mode 100644
index 0000000..0567011
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.smallvec-1.7.0.bazel
@@ -0,0 +1,58 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT OR Apache-2.0"
+])
+
+# Generated Targets
+
+# Unsupported target "bench" with type "bench" omitted
+
+rust_library(
+    name = "smallvec",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+        "write",
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2018",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "1.7.0",
+    # buildifier: leave-alone
+    deps = [
+    ],
+)
+
+# Unsupported target "macro" with type "test" omitted
diff --git a/third_party/cargo/remote/BUILD.spin-0.5.2.bazel b/third_party/cargo/remote/BUILD.spin-0.5.2.bazel
new file mode 100644
index 0000000..6ef6461
--- /dev/null
+++ b/third_party/cargo/remote/BUILD.spin-0.5.2.bazel
@@ -0,0 +1,55 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+    "@rules_rust//rust:defs.bzl",
+    "rust_binary",
+    "rust_library",
+    "rust_proc_macro",
+    "rust_test",
+)
+
+package(default_visibility = [
+    # Public for visibility by "@raze__crate__version//" targets.
+    #
+    # Prefer access through "//third_party/cargo", which limits external
+    # visibility to explicit Cargo.toml dependencies.
+    "//visibility:public",
+])
+
+licenses([
+    "notice",  # MIT from expression "MIT"
+])
+
+# Generated Targets
+
+# Unsupported target "debug" with type "example" omitted
+
+rust_library(
+    name = "spin",
+    srcs = glob(["**/*.rs"]),
+    crate_features = [
+    ],
+    crate_root = "src/lib.rs",
+    data = [],
+    edition = "2015",
+    rustc_flags = [
+        "--cap-lints=allow",
+    ],
+    tags = [
+        "cargo-raze",
+        "manual",
+    ],
+    version = "0.5.2",
+    # buildifier: leave-alone
+    deps = [
+    ],
+)