treewide: update rules_rust to v0.53.0
This updated our patches for rules_rust, removes a transition as it can
be replaced with the "platform" field in the rust_binary rule. This then
allows us to correctly reference it in all targets that depend on it.
Additionally the -target parameter is replaced inside the llvm-efi
toolchain with --target=.
Change-Id: Ie98753e505736c9ef28ff92fa1c5aa5b3612aec3
Reviewed-on: https://review.monogon.dev/c/monogon/+/3473
Tested-by: Jenkins CI
Reviewed-by: Lorenz Brun <lorenz@monogon.tech>
diff --git a/MODULE.bazel b/MODULE.bazel
index 00822ae..e178fb0 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -43,11 +43,11 @@
module_name = "rules_rust",
patch_strip = 1,
patches = [
- "//third_party:rust-uefi-platform.patch",
- "//third_party:rust-prost-nostd.patch",
- "//third_party:rust-reproducibility.patch",
+ "//third_party/rules_rust:rust-uefi-platform.patch",
+ "//third_party/rules_rust:rust-prost-nostd.patch",
+ "//third_party/rules_rust:rust-reproducibility.patch",
],
- version = "0.51.0",
+ version = "0.53.0",
)
bazel_dep(name = "zlib")
diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock
index fd024e6..e9a8d96 100644
--- a/MODULE.bazel.lock
+++ b/MODULE.bazel.lock
@@ -178,8 +178,8 @@
"https://bcr.bazel.build/modules/rules_python/0.36.0/MODULE.bazel": "a4ce1ccea92b9106c7d16ab9ee51c6183107e78ba4a37aa65055227b80cd480c",
"https://bcr.bazel.build/modules/rules_python/0.36.0/source.json": "b79cbb7b2ae1751949e2f6ee6692822e4ffd13ca1e959ce99abec4ac7666162a",
"https://bcr.bazel.build/modules/rules_python/0.4.0/MODULE.bazel": "9208ee05fd48bf09ac60ed269791cf17fb343db56c8226a720fbb1cdf467166c",
- "https://bcr.bazel.build/modules/rules_rust/0.51.0/MODULE.bazel": "2b6d1617ac8503bfdcc0e4520c20539d4bba3a691100bee01afe193ceb0310f9",
- "https://bcr.bazel.build/modules/rules_rust/0.51.0/source.json": "79a530199d9826a93b31d05b7d9b39dc753a80f88856d3ca5376f665a82cc5e6",
+ "https://bcr.bazel.build/modules/rules_rust/0.53.0/MODULE.bazel": "00d5143caaa8d2caa7cc06f6c28e57510e76aa1eee0dfc9ba4914c1a2a5ac046",
+ "https://bcr.bazel.build/modules/rules_rust/0.53.0/source.json": "084705abc2de9216e75a3d012993d3ea86999ecbc6e3f93fa9e986925343b513",
"https://bcr.bazel.build/modules/rules_swift/1.18.0/MODULE.bazel": "a6aba73625d0dc64c7b4a1e831549b6e375fbddb9d2dde9d80c9de6ec45b24c9",
"https://bcr.bazel.build/modules/rules_swift/1.18.0/source.json": "9e636cabd446f43444ea2662341a9cbb74ecd87ab0557225ae73f1127cb7ff52",
"https://bcr.bazel.build/modules/stardoc/0.5.0/MODULE.bazel": "f9f1f46ba8d9c3362648eea571c6f9100680efc44913618811b58cc9c02cd678",
@@ -6523,7 +6523,7 @@
},
"@@rules_rust~//crate_universe:extension.bzl%crate": {
"general": {
- "bzlTransitiveDigest": "cBUFAj0zc3F1D0xg6IjBiXx5TjEpkSdDh6rfZIbwvKg=",
+ "bzlTransitiveDigest": "m2vaSOZTAITpcXtLYZMfZKnodLt0pYjBF/2WRuY0f58=",
"usagesDigest": "G7PIJKIoT9AYTqXN/I+c087QHG/a9cTtcbVHbHOAoIo=",
"recordedFileInputs": {
"@@rules_rust~~rust_host_tools~rust_host_tools//bin/rustc": "91f9ba0819d622cbb0f4f3298580d939173eb3258d95f7755b301a394eeb2ae0",
@@ -6840,6 +6840,25 @@
"build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_proc_macro\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_proc_macro(\n name = \"pest_derive\",\n deps = [\n \"@crate_index__pest-2.7.6//:pest\",\n \"@crate_index__pest_generator-2.7.6//:pest_generator\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"default\",\n \"std\",\n ],\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=pest_derive\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"2.7.6\",\n)\n"
}
},
+ "crates__proc-macro2-1.0.89": {
+ "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+ "ruleClassName": "http_archive",
+ "attributes": {
+ "patch_args": [
+ "-p0"
+ ],
+ "patch_tool": "",
+ "patches": [],
+ "remote_patch_strip": 1,
+ "sha256": "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e",
+ "type": "tar.gz",
+ "urls": [
+ "https://static.crates.io/crates/proc-macro2/1.0.89/download"
+ ],
+ "strip_prefix": "proc-macro2-1.0.89",
+ "build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//cargo:defs.bzl\", \"cargo_build_script\")\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"proc_macro2\",\n deps = [\n \"@crates__proc-macro2-1.0.89//:build_script_build\",\n \"@crates__unicode-ident-1.0.13//:unicode_ident\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"proc-macro\",\n ],\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=proc-macro2\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"1.0.89\",\n)\n\ncargo_build_script(\n name = \"_bs\",\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \"**/*.rs\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"proc-macro\",\n ],\n crate_name = \"build_script_build\",\n crate_root = \"build.rs\",\n data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n edition = \"2021\",\n pkg_name = \"proc-macro2\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=proc-macro2\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n version = \"1.0.89\",\n visibility = [\"//visibility:private\"],\n)\n\nalias(\n name = \"build_script_build\",\n actual = \":_bs\",\n tags = [\"manual\"],\n)\n"
+ }
+ },
"crate_index__futf-0.1.5": {
"bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
"ruleClassName": "http_archive",
@@ -6859,25 +6878,6 @@
"build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"futf\",\n deps = [\n \"@crate_index__mac-0.1.1//:mac\",\n \"@crate_index__new_debug_unreachable-1.0.4//:debug_unreachable\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_root = \"src/lib.rs\",\n edition = \"2015\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=futf\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"0.1.5\",\n)\n"
}
},
- "crates__proc-macro2-1.0.87": {
- "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
- "ruleClassName": "http_archive",
- "attributes": {
- "patch_args": [
- "-p0"
- ],
- "patch_tool": "",
- "patches": [],
- "remote_patch_strip": 1,
- "sha256": "b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a",
- "type": "tar.gz",
- "urls": [
- "https://static.crates.io/crates/proc-macro2/1.0.87/download"
- ],
- "strip_prefix": "proc-macro2-1.0.87",
- "build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//cargo:defs.bzl\", \"cargo_build_script\")\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"proc_macro2\",\n deps = [\n \"@crates__proc-macro2-1.0.87//:build_script_build\",\n \"@crates__unicode-ident-1.0.13//:unicode_ident\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"proc-macro\",\n ],\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=proc-macro2\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"1.0.87\",\n)\n\ncargo_build_script(\n name = \"_bs\",\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \"**/*.rs\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"proc-macro\",\n ],\n crate_name = \"build_script_build\",\n crate_root = \"build.rs\",\n data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n edition = \"2021\",\n pkg_name = \"proc-macro2\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=proc-macro2\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n version = \"1.0.87\",\n visibility = [\"//visibility:private\"],\n)\n\nalias(\n name = \"build_script_build\",\n actual = \":_bs\",\n tags = [\"manual\"],\n)\n"
- }
- },
"crate_index__pin-utils-0.1.0": {
"bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
"ruleClassName": "http_archive",
@@ -6916,6 +6916,25 @@
"build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"winapi_util\",\n deps = select({\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [\n \"@crate_index__winapi-0.3.9//:winapi\", # cfg(windows)\n ],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [\n \"@crate_index__winapi-0.3.9//:winapi\", # cfg(windows)\n ],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [\n \"@crate_index__winapi-0.3.9//:winapi\", # cfg(windows)\n ],\n \"//conditions:default\": [],\n }),\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=winapi-util\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"0.1.6\",\n)\n"
}
},
+ "crates__syn-2.0.82": {
+ "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+ "ruleClassName": "http_archive",
+ "attributes": {
+ "patch_args": [
+ "-p0"
+ ],
+ "patch_tool": "",
+ "patches": [],
+ "remote_patch_strip": 1,
+ "sha256": "83540f837a8afc019423a8edb95b52a8effe46957ee402287f4292fae35be021",
+ "type": "tar.gz",
+ "urls": [
+ "https://static.crates.io/crates/syn/2.0.82/download"
+ ],
+ "strip_prefix": "syn-2.0.82",
+ "build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"syn\",\n deps = [\n \"@crates__proc-macro2-1.0.89//:proc_macro2\",\n \"@crates__quote-1.0.37//:quote\",\n \"@crates__unicode-ident-1.0.13//:unicode_ident\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"clone-impls\",\n \"default\",\n \"derive\",\n \"full\",\n \"parsing\",\n \"printing\",\n \"proc-macro\",\n ],\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=syn\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"2.0.82\",\n)\n"
+ }
+ },
"crate_index__futures-macro-0.3.30": {
"bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
"ruleClassName": "http_archive",
@@ -7638,25 +7657,6 @@
"build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//cargo:defs.bzl\", \"cargo_build_script\")\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"windows_i686_msvc\",\n deps = [\n \"@crate_index__windows_i686_msvc-0.52.0//:build_script_build\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=windows_i686_msvc\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"0.52.0\",\n)\n\ncargo_build_script(\n name = \"_bs\",\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \"**/*.rs\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_name = \"build_script_build\",\n crate_root = \"build.rs\",\n data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n edition = \"2021\",\n pkg_name = \"windows_i686_msvc\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=windows_i686_msvc\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n version = \"0.52.0\",\n visibility = [\"//visibility:private\"],\n)\n\nalias(\n name = \"build_script_build\",\n actual = \":_bs\",\n tags = [\"manual\"],\n)\n"
}
},
- "crates__syn-2.0.79": {
- "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
- "ruleClassName": "http_archive",
- "attributes": {
- "patch_args": [
- "-p0"
- ],
- "patch_tool": "",
- "patches": [],
- "remote_patch_strip": 1,
- "sha256": "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590",
- "type": "tar.gz",
- "urls": [
- "https://static.crates.io/crates/syn/2.0.79/download"
- ],
- "strip_prefix": "syn-2.0.79",
- "build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"syn\",\n deps = [\n \"@crates__proc-macro2-1.0.87//:proc_macro2\",\n \"@crates__quote-1.0.37//:quote\",\n \"@crates__unicode-ident-1.0.13//:unicode_ident\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"clone-impls\",\n \"default\",\n \"derive\",\n \"full\",\n \"parsing\",\n \"printing\",\n \"proc-macro\",\n ],\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=syn\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"2.0.79\",\n)\n"
- }
- },
"crate_index__opener-0.6.1": {
"bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
"ruleClassName": "http_archive",
@@ -7967,7 +7967,7 @@
"attributes": {
"contents": {
"BUILD.bazel": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\npackage(default_visibility = [\"//visibility:public\"])\n\nexports_files(\n [\n \"cargo-bazel.json\",\n \"crates.bzl\",\n \"defs.bzl\",\n ] + glob(\n allow_empty = True,\n include = [\"*.bazel\"],\n ),\n)\n\nfilegroup(\n name = \"srcs\",\n srcs = glob(\n allow_empty = True,\n include = [\n \"*.bazel\",\n \"*.bzl\",\n ],\n ),\n)\n\n# Workspace Member Dependencies\nalias(\n name = \"googletest\",\n actual = \"@crates__googletest-0.12.0//:googletest\",\n tags = [\"manual\"],\n)\n\nalias(\n name = \"paste\",\n actual = \"@crates__paste-1.0.15//:paste\",\n tags = [\"manual\"],\n)\n",
- "defs.bzl": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\"\"\"\n# `crates_repository` API\n\n- [aliases](#aliases)\n- [crate_deps](#crate_deps)\n- [all_crate_deps](#all_crate_deps)\n- [crate_repositories](#crate_repositories)\n\n\"\"\"\n\nload(\"@bazel_tools//tools/build_defs/repo:git.bzl\", \"new_git_repository\")\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\", \"http_archive\")\nload(\"@bazel_tools//tools/build_defs/repo:utils.bzl\", \"maybe\")\nload(\"@bazel_skylib//lib:selects.bzl\", \"selects\")\n\n###############################################################################\n# MACROS API\n###############################################################################\n\n# An identifier that represent common dependencies (unconditional).\n_COMMON_CONDITION = \"\"\n\ndef _flatten_dependency_maps(all_dependency_maps):\n \"\"\"Flatten a list of dependency maps into one dictionary.\n\n Dependency maps have the following structure:\n\n ```python\n DEPENDENCIES_MAP = {\n # The first key in the map is a Bazel package\n # name of the workspace this file is defined in.\n \"workspace_member_package\": {\n\n # Not all dependencies are supported for all platforms.\n # the condition key is the condition required to be true\n # on the host platform.\n \"condition\": {\n\n # An alias to a crate target. # The label of the crate target the\n # Aliases are only crate names. # package name refers to.\n \"package_name\": \"@full//:label\",\n }\n }\n }\n ```\n\n Args:\n all_dependency_maps (list): A list of dicts as described above\n\n Returns:\n dict: A dictionary as described above\n \"\"\"\n dependencies = {}\n\n for workspace_deps_map in all_dependency_maps:\n for pkg_name, conditional_deps_map in workspace_deps_map.items():\n if pkg_name not in dependencies:\n non_frozen_map = dict()\n for key, values in conditional_deps_map.items():\n non_frozen_map.update({key: dict(values.items())})\n dependencies.setdefault(pkg_name, non_frozen_map)\n continue\n\n for condition, deps_map in conditional_deps_map.items():\n # If the condition has not been recorded, do so and continue\n if condition not in dependencies[pkg_name]:\n dependencies[pkg_name].setdefault(condition, dict(deps_map.items()))\n continue\n\n # Alert on any miss-matched dependencies\n inconsistent_entries = []\n for crate_name, crate_label in deps_map.items():\n existing = dependencies[pkg_name][condition].get(crate_name)\n if existing and existing != crate_label:\n inconsistent_entries.append((crate_name, existing, crate_label))\n dependencies[pkg_name][condition].update({crate_name: crate_label})\n\n return dependencies\n\ndef crate_deps(deps, package_name = None):\n \"\"\"Finds the fully qualified label of the requested crates for the package where this macro is called.\n\n Args:\n deps (list): The desired list of crate targets.\n package_name (str, optional): The package name of the set of dependencies to look up.\n Defaults to `native.package_name()`.\n\n Returns:\n list: A list of labels to generated rust targets (str)\n \"\"\"\n\n if not deps:\n return []\n\n if package_name == None:\n package_name = native.package_name()\n\n # Join both sets of dependencies\n dependencies = _flatten_dependency_maps([\n _NORMAL_DEPENDENCIES,\n _NORMAL_DEV_DEPENDENCIES,\n _PROC_MACRO_DEPENDENCIES,\n _PROC_MACRO_DEV_DEPENDENCIES,\n _BUILD_DEPENDENCIES,\n _BUILD_PROC_MACRO_DEPENDENCIES,\n ]).pop(package_name, {})\n\n # Combine all conditional packages so we can easily index over a flat list\n # TODO: Perhaps this should actually return select statements and maintain\n # the conditionals of the dependencies\n flat_deps = {}\n for deps_set in dependencies.values():\n for crate_name, crate_label in deps_set.items():\n flat_deps.update({crate_name: crate_label})\n\n missing_crates = []\n crate_targets = []\n for crate_target in deps:\n if crate_target not in flat_deps:\n missing_crates.append(crate_target)\n else:\n crate_targets.append(flat_deps[crate_target])\n\n if missing_crates:\n fail(\"Could not find crates `{}` among dependencies of `{}`. Available dependencies were `{}`\".format(\n missing_crates,\n package_name,\n dependencies,\n ))\n\n return crate_targets\n\ndef all_crate_deps(\n normal = False, \n normal_dev = False, \n proc_macro = False, \n proc_macro_dev = False,\n build = False,\n build_proc_macro = False,\n package_name = None):\n \"\"\"Finds the fully qualified label of all requested direct crate dependencies \\\n for the package where this macro is called.\n\n If no parameters are set, all normal dependencies are returned. Setting any one flag will\n otherwise impact the contents of the returned list.\n\n Args:\n normal (bool, optional): If True, normal dependencies are included in the\n output list.\n normal_dev (bool, optional): If True, normal dev dependencies will be\n included in the output list..\n proc_macro (bool, optional): If True, proc_macro dependencies are included\n in the output list.\n proc_macro_dev (bool, optional): If True, dev proc_macro dependencies are\n included in the output list.\n build (bool, optional): If True, build dependencies are included\n in the output list.\n build_proc_macro (bool, optional): If True, build proc_macro dependencies are\n included in the output list.\n package_name (str, optional): The package name of the set of dependencies to look up.\n Defaults to `native.package_name()` when unset.\n\n Returns:\n list: A list of labels to generated rust targets (str)\n \"\"\"\n\n if package_name == None:\n package_name = native.package_name()\n\n # Determine the relevant maps to use\n all_dependency_maps = []\n if normal:\n all_dependency_maps.append(_NORMAL_DEPENDENCIES)\n if normal_dev:\n all_dependency_maps.append(_NORMAL_DEV_DEPENDENCIES)\n if proc_macro:\n all_dependency_maps.append(_PROC_MACRO_DEPENDENCIES)\n if proc_macro_dev:\n all_dependency_maps.append(_PROC_MACRO_DEV_DEPENDENCIES)\n if build:\n all_dependency_maps.append(_BUILD_DEPENDENCIES)\n if build_proc_macro:\n all_dependency_maps.append(_BUILD_PROC_MACRO_DEPENDENCIES)\n\n # Default to always using normal dependencies\n if not all_dependency_maps:\n all_dependency_maps.append(_NORMAL_DEPENDENCIES)\n\n dependencies = _flatten_dependency_maps(all_dependency_maps).pop(package_name, None)\n\n if not dependencies:\n if dependencies == None:\n fail(\"Tried to get all_crate_deps for package \" + package_name + \" but that package had no Cargo.toml file\")\n else:\n return []\n\n crate_deps = list(dependencies.pop(_COMMON_CONDITION, {}).values())\n for condition, deps in dependencies.items():\n crate_deps += selects.with_or({\n tuple(_CONDITIONS[condition]): deps.values(),\n \"//conditions:default\": [],\n })\n\n return crate_deps\n\ndef aliases(\n normal = False,\n normal_dev = False,\n proc_macro = False,\n proc_macro_dev = False,\n build = False,\n build_proc_macro = False,\n package_name = None):\n \"\"\"Produces a map of Crate alias names to their original label\n\n If no dependency kinds are specified, `normal` and `proc_macro` are used by default.\n Setting any one flag will otherwise determine the contents of the returned dict.\n\n Args:\n normal (bool, optional): If True, normal dependencies are included in the\n output list.\n normal_dev (bool, optional): If True, normal dev dependencies will be\n included in the output list..\n proc_macro (bool, optional): If True, proc_macro dependencies are included\n in the output list.\n proc_macro_dev (bool, optional): If True, dev proc_macro dependencies are\n included in the output list.\n build (bool, optional): If True, build dependencies are included\n in the output list.\n build_proc_macro (bool, optional): If True, build proc_macro dependencies are\n included in the output list.\n package_name (str, optional): The package name of the set of dependencies to look up.\n Defaults to `native.package_name()` when unset.\n\n Returns:\n dict: The aliases of all associated packages\n \"\"\"\n if package_name == None:\n package_name = native.package_name()\n\n # Determine the relevant maps to use\n all_aliases_maps = []\n if normal:\n all_aliases_maps.append(_NORMAL_ALIASES)\n if normal_dev:\n all_aliases_maps.append(_NORMAL_DEV_ALIASES)\n if proc_macro:\n all_aliases_maps.append(_PROC_MACRO_ALIASES)\n if proc_macro_dev:\n all_aliases_maps.append(_PROC_MACRO_DEV_ALIASES)\n if build:\n all_aliases_maps.append(_BUILD_ALIASES)\n if build_proc_macro:\n all_aliases_maps.append(_BUILD_PROC_MACRO_ALIASES)\n\n # Default to always using normal aliases\n if not all_aliases_maps:\n all_aliases_maps.append(_NORMAL_ALIASES)\n all_aliases_maps.append(_PROC_MACRO_ALIASES)\n\n aliases = _flatten_dependency_maps(all_aliases_maps).pop(package_name, None)\n\n if not aliases:\n return dict()\n\n common_items = aliases.pop(_COMMON_CONDITION, {}).items()\n\n # If there are only common items in the dictionary, immediately return them\n if not len(aliases.keys()) == 1:\n return dict(common_items)\n\n # Build a single select statement where each conditional has accounted for the\n # common set of aliases.\n crate_aliases = {\"//conditions:default\": dict(common_items)}\n for condition, deps in aliases.items():\n condition_triples = _CONDITIONS[condition]\n for triple in condition_triples:\n if triple in crate_aliases:\n crate_aliases[triple].update(deps)\n else:\n crate_aliases.update({triple: dict(deps.items() + common_items)})\n\n return select(crate_aliases)\n\n###############################################################################\n# WORKSPACE MEMBER DEPS AND ALIASES\n###############################################################################\n\n_NORMAL_DEPENDENCIES = {\n \"\": {\n _COMMON_CONDITION: {\n \"googletest\": Label(\"@crates__googletest-0.12.0//:googletest\"),\n },\n },\n}\n\n\n_NORMAL_ALIASES = {\n \"\": {\n _COMMON_CONDITION: {\n },\n },\n}\n\n\n_NORMAL_DEV_DEPENDENCIES = {\n \"\": {\n },\n}\n\n\n_NORMAL_DEV_ALIASES = {\n \"\": {\n },\n}\n\n\n_PROC_MACRO_DEPENDENCIES = {\n \"\": {\n _COMMON_CONDITION: {\n \"paste\": Label(\"@crates__paste-1.0.15//:paste\"),\n },\n },\n}\n\n\n_PROC_MACRO_ALIASES = {\n \"\": {\n },\n}\n\n\n_PROC_MACRO_DEV_DEPENDENCIES = {\n \"\": {\n },\n}\n\n\n_PROC_MACRO_DEV_ALIASES = {\n \"\": {\n },\n}\n\n\n_BUILD_DEPENDENCIES = {\n \"\": {\n },\n}\n\n\n_BUILD_ALIASES = {\n \"\": {\n },\n}\n\n\n_BUILD_PROC_MACRO_DEPENDENCIES = {\n \"\": {\n },\n}\n\n\n_BUILD_PROC_MACRO_ALIASES = {\n \"\": {\n },\n}\n\n\n_CONDITIONS = {\n \"aarch64-apple-darwin\": [\"@rules_rust//rust/platform:aarch64-apple-darwin\"],\n \"aarch64-apple-ios\": [\"@rules_rust//rust/platform:aarch64-apple-ios\"],\n \"aarch64-apple-ios-sim\": [\"@rules_rust//rust/platform:aarch64-apple-ios-sim\"],\n \"aarch64-fuchsia\": [\"@rules_rust//rust/platform:aarch64-fuchsia\"],\n \"aarch64-linux-android\": [\"@rules_rust//rust/platform:aarch64-linux-android\"],\n \"aarch64-pc-windows-msvc\": [\"@rules_rust//rust/platform:aarch64-pc-windows-msvc\"],\n \"aarch64-unknown-linux-gnu\": [\"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\"],\n \"aarch64-unknown-nixos-gnu\": [\"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\"],\n \"aarch64-unknown-nto-qnx710\": [\"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\"],\n \"aarch64-unknown-uefi\": [\"@rules_rust//rust/platform:aarch64-unknown-uefi\"],\n \"arm-unknown-linux-gnueabi\": [\"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\"],\n \"armv7-linux-androideabi\": [\"@rules_rust//rust/platform:armv7-linux-androideabi\"],\n \"armv7-unknown-linux-gnueabi\": [\"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\"],\n \"i686-apple-darwin\": [\"@rules_rust//rust/platform:i686-apple-darwin\"],\n \"i686-linux-android\": [\"@rules_rust//rust/platform:i686-linux-android\"],\n \"i686-pc-windows-msvc\": [\"@rules_rust//rust/platform:i686-pc-windows-msvc\"],\n \"i686-unknown-freebsd\": [\"@rules_rust//rust/platform:i686-unknown-freebsd\"],\n \"i686-unknown-linux-gnu\": [\"@rules_rust//rust/platform:i686-unknown-linux-gnu\"],\n \"powerpc-unknown-linux-gnu\": [\"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\"],\n \"riscv32imc-unknown-none-elf\": [\"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\"],\n \"riscv64gc-unknown-none-elf\": [\"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\"],\n \"s390x-unknown-linux-gnu\": [\"@rules_rust//rust/platform:s390x-unknown-linux-gnu\"],\n \"thumbv7em-none-eabi\": [\"@rules_rust//rust/platform:thumbv7em-none-eabi\"],\n \"thumbv8m.main-none-eabi\": [\"@rules_rust//rust/platform:thumbv8m.main-none-eabi\"],\n \"wasm32-unknown-unknown\": [\"@rules_rust//rust/platform:wasm32-unknown-unknown\"],\n \"wasm32-wasi\": [\"@rules_rust//rust/platform:wasm32-wasi\"],\n \"x86_64-apple-darwin\": [\"@rules_rust//rust/platform:x86_64-apple-darwin\"],\n \"x86_64-apple-ios\": [\"@rules_rust//rust/platform:x86_64-apple-ios\"],\n \"x86_64-fuchsia\": [\"@rules_rust//rust/platform:x86_64-fuchsia\"],\n \"x86_64-linux-android\": [\"@rules_rust//rust/platform:x86_64-linux-android\"],\n \"x86_64-pc-windows-msvc\": [\"@rules_rust//rust/platform:x86_64-pc-windows-msvc\"],\n \"x86_64-unknown-freebsd\": [\"@rules_rust//rust/platform:x86_64-unknown-freebsd\"],\n \"x86_64-unknown-linux-gnu\": [\"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\"],\n \"x86_64-unknown-nixos-gnu\": [\"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\"],\n \"x86_64-unknown-none\": [\"@rules_rust//rust/platform:x86_64-unknown-none\"],\n \"x86_64-unknown-uefi\": [\"@rules_rust//rust/platform:x86_64-unknown-uefi\"],\n}\n\n###############################################################################\n\ndef crate_repositories():\n \"\"\"A macro for defining repositories for all generated crates.\n\n Returns:\n A list of repos visible to the module through the module extension.\n \"\"\"\n maybe(\n http_archive,\n name = \"crates__aho-corasick-1.1.3\",\n sha256 = \"8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/aho-corasick/1.1.3/download\"],\n strip_prefix = \"aho-corasick-1.1.3\",\n build_file = Label(\"@crates//crates:BUILD.aho-corasick-1.1.3.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__autocfg-1.4.0\",\n sha256 = \"ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/autocfg/1.4.0/download\"],\n strip_prefix = \"autocfg-1.4.0\",\n build_file = Label(\"@crates//crates:BUILD.autocfg-1.4.0.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__googletest-0.12.0\",\n sha256 = \"22e38fa267f4db1a2fa51795ea4234eaadc3617a97486a9f158de9256672260e\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/googletest/0.12.0/download\"],\n strip_prefix = \"googletest-0.12.0\",\n build_file = Label(\"@crates//crates:BUILD.googletest-0.12.0.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__googletest_macro-0.12.0\",\n sha256 = \"171deab504ad43a9ea80324a3686a0cbe9436220d9d0b48ae4d7f7bd303b48a9\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/googletest_macro/0.12.0/download\"],\n strip_prefix = \"googletest_macro-0.12.0\",\n build_file = Label(\"@crates//crates:BUILD.googletest_macro-0.12.0.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__memchr-2.7.4\",\n sha256 = \"78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/memchr/2.7.4/download\"],\n strip_prefix = \"memchr-2.7.4\",\n build_file = Label(\"@crates//crates:BUILD.memchr-2.7.4.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__num-traits-0.2.19\",\n sha256 = \"071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/num-traits/0.2.19/download\"],\n strip_prefix = \"num-traits-0.2.19\",\n build_file = Label(\"@crates//crates:BUILD.num-traits-0.2.19.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__paste-1.0.15\",\n sha256 = \"57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/paste/1.0.15/download\"],\n strip_prefix = \"paste-1.0.15\",\n build_file = Label(\"@crates//crates:BUILD.paste-1.0.15.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__proc-macro2-1.0.87\",\n sha256 = \"b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/proc-macro2/1.0.87/download\"],\n strip_prefix = \"proc-macro2-1.0.87\",\n build_file = Label(\"@crates//crates:BUILD.proc-macro2-1.0.87.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__quote-1.0.37\",\n sha256 = \"b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/quote/1.0.37/download\"],\n strip_prefix = \"quote-1.0.37\",\n build_file = Label(\"@crates//crates:BUILD.quote-1.0.37.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__regex-1.11.0\",\n sha256 = \"38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/regex/1.11.0/download\"],\n strip_prefix = \"regex-1.11.0\",\n build_file = Label(\"@crates//crates:BUILD.regex-1.11.0.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__regex-automata-0.4.8\",\n sha256 = \"368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/regex-automata/0.4.8/download\"],\n strip_prefix = \"regex-automata-0.4.8\",\n build_file = Label(\"@crates//crates:BUILD.regex-automata-0.4.8.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__regex-syntax-0.8.5\",\n sha256 = \"2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/regex-syntax/0.8.5/download\"],\n strip_prefix = \"regex-syntax-0.8.5\",\n build_file = Label(\"@crates//crates:BUILD.regex-syntax-0.8.5.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__rustversion-1.0.18\",\n sha256 = \"0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/rustversion/1.0.18/download\"],\n strip_prefix = \"rustversion-1.0.18\",\n build_file = Label(\"@crates//crates:BUILD.rustversion-1.0.18.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__syn-2.0.79\",\n sha256 = \"89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/syn/2.0.79/download\"],\n strip_prefix = \"syn-2.0.79\",\n build_file = Label(\"@crates//crates:BUILD.syn-2.0.79.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__unicode-ident-1.0.13\",\n sha256 = \"e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/unicode-ident/1.0.13/download\"],\n strip_prefix = \"unicode-ident-1.0.13\",\n build_file = Label(\"@crates//crates:BUILD.unicode-ident-1.0.13.bazel\"),\n )\n\n return [\n struct(repo=\"crates__googletest-0.12.0\", is_dev_dep = False),\n struct(repo=\"crates__paste-1.0.15\", is_dev_dep = False),\n ]\n"
+ "defs.bzl": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\"\"\"\n# `crates_repository` API\n\n- [aliases](#aliases)\n- [crate_deps](#crate_deps)\n- [all_crate_deps](#all_crate_deps)\n- [crate_repositories](#crate_repositories)\n\n\"\"\"\n\nload(\"@bazel_tools//tools/build_defs/repo:git.bzl\", \"new_git_repository\")\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\", \"http_archive\")\nload(\"@bazel_tools//tools/build_defs/repo:utils.bzl\", \"maybe\")\nload(\"@bazel_skylib//lib:selects.bzl\", \"selects\")\n\n###############################################################################\n# MACROS API\n###############################################################################\n\n# An identifier that represent common dependencies (unconditional).\n_COMMON_CONDITION = \"\"\n\ndef _flatten_dependency_maps(all_dependency_maps):\n \"\"\"Flatten a list of dependency maps into one dictionary.\n\n Dependency maps have the following structure:\n\n ```python\n DEPENDENCIES_MAP = {\n # The first key in the map is a Bazel package\n # name of the workspace this file is defined in.\n \"workspace_member_package\": {\n\n # Not all dependencies are supported for all platforms.\n # the condition key is the condition required to be true\n # on the host platform.\n \"condition\": {\n\n # An alias to a crate target. # The label of the crate target the\n # Aliases are only crate names. # package name refers to.\n \"package_name\": \"@full//:label\",\n }\n }\n }\n ```\n\n Args:\n all_dependency_maps (list): A list of dicts as described above\n\n Returns:\n dict: A dictionary as described above\n \"\"\"\n dependencies = {}\n\n for workspace_deps_map in all_dependency_maps:\n for pkg_name, conditional_deps_map in workspace_deps_map.items():\n if pkg_name not in dependencies:\n non_frozen_map = dict()\n for key, values in conditional_deps_map.items():\n non_frozen_map.update({key: dict(values.items())})\n dependencies.setdefault(pkg_name, non_frozen_map)\n continue\n\n for condition, deps_map in conditional_deps_map.items():\n # If the condition has not been recorded, do so and continue\n if condition not in dependencies[pkg_name]:\n dependencies[pkg_name].setdefault(condition, dict(deps_map.items()))\n continue\n\n # Alert on any miss-matched dependencies\n inconsistent_entries = []\n for crate_name, crate_label in deps_map.items():\n existing = dependencies[pkg_name][condition].get(crate_name)\n if existing and existing != crate_label:\n inconsistent_entries.append((crate_name, existing, crate_label))\n dependencies[pkg_name][condition].update({crate_name: crate_label})\n\n return dependencies\n\ndef crate_deps(deps, package_name = None):\n \"\"\"Finds the fully qualified label of the requested crates for the package where this macro is called.\n\n Args:\n deps (list): The desired list of crate targets.\n package_name (str, optional): The package name of the set of dependencies to look up.\n Defaults to `native.package_name()`.\n\n Returns:\n list: A list of labels to generated rust targets (str)\n \"\"\"\n\n if not deps:\n return []\n\n if package_name == None:\n package_name = native.package_name()\n\n # Join both sets of dependencies\n dependencies = _flatten_dependency_maps([\n _NORMAL_DEPENDENCIES,\n _NORMAL_DEV_DEPENDENCIES,\n _PROC_MACRO_DEPENDENCIES,\n _PROC_MACRO_DEV_DEPENDENCIES,\n _BUILD_DEPENDENCIES,\n _BUILD_PROC_MACRO_DEPENDENCIES,\n ]).pop(package_name, {})\n\n # Combine all conditional packages so we can easily index over a flat list\n # TODO: Perhaps this should actually return select statements and maintain\n # the conditionals of the dependencies\n flat_deps = {}\n for deps_set in dependencies.values():\n for crate_name, crate_label in deps_set.items():\n flat_deps.update({crate_name: crate_label})\n\n missing_crates = []\n crate_targets = []\n for crate_target in deps:\n if crate_target not in flat_deps:\n missing_crates.append(crate_target)\n else:\n crate_targets.append(flat_deps[crate_target])\n\n if missing_crates:\n fail(\"Could not find crates `{}` among dependencies of `{}`. Available dependencies were `{}`\".format(\n missing_crates,\n package_name,\n dependencies,\n ))\n\n return crate_targets\n\ndef all_crate_deps(\n normal = False, \n normal_dev = False, \n proc_macro = False, \n proc_macro_dev = False,\n build = False,\n build_proc_macro = False,\n package_name = None):\n \"\"\"Finds the fully qualified label of all requested direct crate dependencies \\\n for the package where this macro is called.\n\n If no parameters are set, all normal dependencies are returned. Setting any one flag will\n otherwise impact the contents of the returned list.\n\n Args:\n normal (bool, optional): If True, normal dependencies are included in the\n output list.\n normal_dev (bool, optional): If True, normal dev dependencies will be\n included in the output list..\n proc_macro (bool, optional): If True, proc_macro dependencies are included\n in the output list.\n proc_macro_dev (bool, optional): If True, dev proc_macro dependencies are\n included in the output list.\n build (bool, optional): If True, build dependencies are included\n in the output list.\n build_proc_macro (bool, optional): If True, build proc_macro dependencies are\n included in the output list.\n package_name (str, optional): The package name of the set of dependencies to look up.\n Defaults to `native.package_name()` when unset.\n\n Returns:\n list: A list of labels to generated rust targets (str)\n \"\"\"\n\n if package_name == None:\n package_name = native.package_name()\n\n # Determine the relevant maps to use\n all_dependency_maps = []\n if normal:\n all_dependency_maps.append(_NORMAL_DEPENDENCIES)\n if normal_dev:\n all_dependency_maps.append(_NORMAL_DEV_DEPENDENCIES)\n if proc_macro:\n all_dependency_maps.append(_PROC_MACRO_DEPENDENCIES)\n if proc_macro_dev:\n all_dependency_maps.append(_PROC_MACRO_DEV_DEPENDENCIES)\n if build:\n all_dependency_maps.append(_BUILD_DEPENDENCIES)\n if build_proc_macro:\n all_dependency_maps.append(_BUILD_PROC_MACRO_DEPENDENCIES)\n\n # Default to always using normal dependencies\n if not all_dependency_maps:\n all_dependency_maps.append(_NORMAL_DEPENDENCIES)\n\n dependencies = _flatten_dependency_maps(all_dependency_maps).pop(package_name, None)\n\n if not dependencies:\n if dependencies == None:\n fail(\"Tried to get all_crate_deps for package \" + package_name + \" but that package had no Cargo.toml file\")\n else:\n return []\n\n crate_deps = list(dependencies.pop(_COMMON_CONDITION, {}).values())\n for condition, deps in dependencies.items():\n crate_deps += selects.with_or({\n tuple(_CONDITIONS[condition]): deps.values(),\n \"//conditions:default\": [],\n })\n\n return crate_deps\n\ndef aliases(\n normal = False,\n normal_dev = False,\n proc_macro = False,\n proc_macro_dev = False,\n build = False,\n build_proc_macro = False,\n package_name = None):\n \"\"\"Produces a map of Crate alias names to their original label\n\n If no dependency kinds are specified, `normal` and `proc_macro` are used by default.\n Setting any one flag will otherwise determine the contents of the returned dict.\n\n Args:\n normal (bool, optional): If True, normal dependencies are included in the\n output list.\n normal_dev (bool, optional): If True, normal dev dependencies will be\n included in the output list..\n proc_macro (bool, optional): If True, proc_macro dependencies are included\n in the output list.\n proc_macro_dev (bool, optional): If True, dev proc_macro dependencies are\n included in the output list.\n build (bool, optional): If True, build dependencies are included\n in the output list.\n build_proc_macro (bool, optional): If True, build proc_macro dependencies are\n included in the output list.\n package_name (str, optional): The package name of the set of dependencies to look up.\n Defaults to `native.package_name()` when unset.\n\n Returns:\n dict: The aliases of all associated packages\n \"\"\"\n if package_name == None:\n package_name = native.package_name()\n\n # Determine the relevant maps to use\n all_aliases_maps = []\n if normal:\n all_aliases_maps.append(_NORMAL_ALIASES)\n if normal_dev:\n all_aliases_maps.append(_NORMAL_DEV_ALIASES)\n if proc_macro:\n all_aliases_maps.append(_PROC_MACRO_ALIASES)\n if proc_macro_dev:\n all_aliases_maps.append(_PROC_MACRO_DEV_ALIASES)\n if build:\n all_aliases_maps.append(_BUILD_ALIASES)\n if build_proc_macro:\n all_aliases_maps.append(_BUILD_PROC_MACRO_ALIASES)\n\n # Default to always using normal aliases\n if not all_aliases_maps:\n all_aliases_maps.append(_NORMAL_ALIASES)\n all_aliases_maps.append(_PROC_MACRO_ALIASES)\n\n aliases = _flatten_dependency_maps(all_aliases_maps).pop(package_name, None)\n\n if not aliases:\n return dict()\n\n common_items = aliases.pop(_COMMON_CONDITION, {}).items()\n\n # If there are only common items in the dictionary, immediately return them\n if not len(aliases.keys()) == 1:\n return dict(common_items)\n\n # Build a single select statement where each conditional has accounted for the\n # common set of aliases.\n crate_aliases = {\"//conditions:default\": dict(common_items)}\n for condition, deps in aliases.items():\n condition_triples = _CONDITIONS[condition]\n for triple in condition_triples:\n if triple in crate_aliases:\n crate_aliases[triple].update(deps)\n else:\n crate_aliases.update({triple: dict(deps.items() + common_items)})\n\n return select(crate_aliases)\n\n###############################################################################\n# WORKSPACE MEMBER DEPS AND ALIASES\n###############################################################################\n\n_NORMAL_DEPENDENCIES = {\n \"\": {\n _COMMON_CONDITION: {\n \"googletest\": Label(\"@crates__googletest-0.12.0//:googletest\"),\n },\n },\n}\n\n\n_NORMAL_ALIASES = {\n \"\": {\n _COMMON_CONDITION: {\n },\n },\n}\n\n\n_NORMAL_DEV_DEPENDENCIES = {\n \"\": {\n },\n}\n\n\n_NORMAL_DEV_ALIASES = {\n \"\": {\n },\n}\n\n\n_PROC_MACRO_DEPENDENCIES = {\n \"\": {\n _COMMON_CONDITION: {\n \"paste\": Label(\"@crates__paste-1.0.15//:paste\"),\n },\n },\n}\n\n\n_PROC_MACRO_ALIASES = {\n \"\": {\n },\n}\n\n\n_PROC_MACRO_DEV_DEPENDENCIES = {\n \"\": {\n },\n}\n\n\n_PROC_MACRO_DEV_ALIASES = {\n \"\": {\n },\n}\n\n\n_BUILD_DEPENDENCIES = {\n \"\": {\n },\n}\n\n\n_BUILD_ALIASES = {\n \"\": {\n },\n}\n\n\n_BUILD_PROC_MACRO_DEPENDENCIES = {\n \"\": {\n },\n}\n\n\n_BUILD_PROC_MACRO_ALIASES = {\n \"\": {\n },\n}\n\n\n_CONDITIONS = {\n \"aarch64-apple-darwin\": [\"@rules_rust//rust/platform:aarch64-apple-darwin\"],\n \"aarch64-apple-ios\": [\"@rules_rust//rust/platform:aarch64-apple-ios\"],\n \"aarch64-apple-ios-sim\": [\"@rules_rust//rust/platform:aarch64-apple-ios-sim\"],\n \"aarch64-fuchsia\": [\"@rules_rust//rust/platform:aarch64-fuchsia\"],\n \"aarch64-linux-android\": [\"@rules_rust//rust/platform:aarch64-linux-android\"],\n \"aarch64-pc-windows-msvc\": [\"@rules_rust//rust/platform:aarch64-pc-windows-msvc\"],\n \"aarch64-unknown-linux-gnu\": [\"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\"],\n \"aarch64-unknown-nixos-gnu\": [\"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\"],\n \"aarch64-unknown-nto-qnx710\": [\"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\"],\n \"aarch64-unknown-uefi\": [\"@rules_rust//rust/platform:aarch64-unknown-uefi\"],\n \"arm-unknown-linux-gnueabi\": [\"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\"],\n \"armv7-linux-androideabi\": [\"@rules_rust//rust/platform:armv7-linux-androideabi\"],\n \"armv7-unknown-linux-gnueabi\": [\"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\"],\n \"i686-apple-darwin\": [\"@rules_rust//rust/platform:i686-apple-darwin\"],\n \"i686-linux-android\": [\"@rules_rust//rust/platform:i686-linux-android\"],\n \"i686-pc-windows-msvc\": [\"@rules_rust//rust/platform:i686-pc-windows-msvc\"],\n \"i686-unknown-freebsd\": [\"@rules_rust//rust/platform:i686-unknown-freebsd\"],\n \"i686-unknown-linux-gnu\": [\"@rules_rust//rust/platform:i686-unknown-linux-gnu\"],\n \"powerpc-unknown-linux-gnu\": [\"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\"],\n \"riscv32imc-unknown-none-elf\": [\"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\"],\n \"riscv64gc-unknown-none-elf\": [\"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\"],\n \"s390x-unknown-linux-gnu\": [\"@rules_rust//rust/platform:s390x-unknown-linux-gnu\"],\n \"thumbv7em-none-eabi\": [\"@rules_rust//rust/platform:thumbv7em-none-eabi\"],\n \"thumbv8m.main-none-eabi\": [\"@rules_rust//rust/platform:thumbv8m.main-none-eabi\"],\n \"wasm32-unknown-unknown\": [\"@rules_rust//rust/platform:wasm32-unknown-unknown\"],\n \"wasm32-wasi\": [\"@rules_rust//rust/platform:wasm32-wasi\"],\n \"x86_64-apple-darwin\": [\"@rules_rust//rust/platform:x86_64-apple-darwin\"],\n \"x86_64-apple-ios\": [\"@rules_rust//rust/platform:x86_64-apple-ios\"],\n \"x86_64-fuchsia\": [\"@rules_rust//rust/platform:x86_64-fuchsia\"],\n \"x86_64-linux-android\": [\"@rules_rust//rust/platform:x86_64-linux-android\"],\n \"x86_64-pc-windows-msvc\": [\"@rules_rust//rust/platform:x86_64-pc-windows-msvc\"],\n \"x86_64-unknown-freebsd\": [\"@rules_rust//rust/platform:x86_64-unknown-freebsd\"],\n \"x86_64-unknown-linux-gnu\": [\"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\"],\n \"x86_64-unknown-nixos-gnu\": [\"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\"],\n \"x86_64-unknown-none\": [\"@rules_rust//rust/platform:x86_64-unknown-none\"],\n \"x86_64-unknown-uefi\": [\"@rules_rust//rust/platform:x86_64-unknown-uefi\"],\n}\n\n###############################################################################\n\ndef crate_repositories():\n \"\"\"A macro for defining repositories for all generated crates.\n\n Returns:\n A list of repos visible to the module through the module extension.\n \"\"\"\n maybe(\n http_archive,\n name = \"crates__aho-corasick-1.1.3\",\n sha256 = \"8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/aho-corasick/1.1.3/download\"],\n strip_prefix = \"aho-corasick-1.1.3\",\n build_file = Label(\"@crates//crates:BUILD.aho-corasick-1.1.3.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__autocfg-1.4.0\",\n sha256 = \"ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/autocfg/1.4.0/download\"],\n strip_prefix = \"autocfg-1.4.0\",\n build_file = Label(\"@crates//crates:BUILD.autocfg-1.4.0.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__googletest-0.12.0\",\n sha256 = \"22e38fa267f4db1a2fa51795ea4234eaadc3617a97486a9f158de9256672260e\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/googletest/0.12.0/download\"],\n strip_prefix = \"googletest-0.12.0\",\n build_file = Label(\"@crates//crates:BUILD.googletest-0.12.0.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__googletest_macro-0.12.0\",\n sha256 = \"171deab504ad43a9ea80324a3686a0cbe9436220d9d0b48ae4d7f7bd303b48a9\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/googletest_macro/0.12.0/download\"],\n strip_prefix = \"googletest_macro-0.12.0\",\n build_file = Label(\"@crates//crates:BUILD.googletest_macro-0.12.0.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__memchr-2.7.4\",\n sha256 = \"78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/memchr/2.7.4/download\"],\n strip_prefix = \"memchr-2.7.4\",\n build_file = Label(\"@crates//crates:BUILD.memchr-2.7.4.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__num-traits-0.2.19\",\n sha256 = \"071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/num-traits/0.2.19/download\"],\n strip_prefix = \"num-traits-0.2.19\",\n build_file = Label(\"@crates//crates:BUILD.num-traits-0.2.19.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__paste-1.0.15\",\n sha256 = \"57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/paste/1.0.15/download\"],\n strip_prefix = \"paste-1.0.15\",\n build_file = Label(\"@crates//crates:BUILD.paste-1.0.15.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__proc-macro2-1.0.89\",\n sha256 = \"f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/proc-macro2/1.0.89/download\"],\n strip_prefix = \"proc-macro2-1.0.89\",\n build_file = Label(\"@crates//crates:BUILD.proc-macro2-1.0.89.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__quote-1.0.37\",\n sha256 = \"b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/quote/1.0.37/download\"],\n strip_prefix = \"quote-1.0.37\",\n build_file = Label(\"@crates//crates:BUILD.quote-1.0.37.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__regex-1.11.0\",\n sha256 = \"38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/regex/1.11.0/download\"],\n strip_prefix = \"regex-1.11.0\",\n build_file = Label(\"@crates//crates:BUILD.regex-1.11.0.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__regex-automata-0.4.8\",\n sha256 = \"368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/regex-automata/0.4.8/download\"],\n strip_prefix = \"regex-automata-0.4.8\",\n build_file = Label(\"@crates//crates:BUILD.regex-automata-0.4.8.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__regex-syntax-0.8.5\",\n sha256 = \"2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/regex-syntax/0.8.5/download\"],\n strip_prefix = \"regex-syntax-0.8.5\",\n build_file = Label(\"@crates//crates:BUILD.regex-syntax-0.8.5.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__rustversion-1.0.18\",\n sha256 = \"0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/rustversion/1.0.18/download\"],\n strip_prefix = \"rustversion-1.0.18\",\n build_file = Label(\"@crates//crates:BUILD.rustversion-1.0.18.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__syn-2.0.82\",\n sha256 = \"83540f837a8afc019423a8edb95b52a8effe46957ee402287f4292fae35be021\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/syn/2.0.82/download\"],\n strip_prefix = \"syn-2.0.82\",\n build_file = Label(\"@crates//crates:BUILD.syn-2.0.82.bazel\"),\n )\n\n maybe(\n http_archive,\n name = \"crates__unicode-ident-1.0.13\",\n sha256 = \"e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe\",\n type = \"tar.gz\",\n urls = [\"https://static.crates.io/crates/unicode-ident/1.0.13/download\"],\n strip_prefix = \"unicode-ident-1.0.13\",\n build_file = Label(\"@crates//crates:BUILD.unicode-ident-1.0.13.bazel\"),\n )\n\n return [\n struct(repo=\"crates__googletest-0.12.0\", is_dev_dep = False),\n struct(repo=\"crates__paste-1.0.15\", is_dev_dep = False),\n ]\n"
}
}
},
@@ -8291,7 +8291,7 @@
"https://static.crates.io/crates/googletest_macro/0.12.0/download"
],
"strip_prefix": "googletest_macro-0.12.0",
- "build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_proc_macro\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_proc_macro(\n name = \"googletest_macro\",\n deps = [\n \"@crates__quote-1.0.37//:quote\",\n \"@crates__syn-2.0.79//:syn\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=googletest_macro\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"0.12.0\",\n)\n"
+ "build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_proc_macro\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_proc_macro(\n name = \"googletest_macro\",\n deps = [\n \"@crates__quote-1.0.37//:quote\",\n \"@crates__syn-2.0.82//:syn\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_root = \"src/lib.rs\",\n edition = \"2021\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=googletest_macro\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"0.12.0\",\n)\n"
}
},
"crate_index__globset-0.4.14": {
@@ -9431,7 +9431,7 @@
"https://static.crates.io/crates/quote/1.0.37/download"
],
"strip_prefix": "quote-1.0.37",
- "build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"quote\",\n deps = [\n \"@crates__proc-macro2-1.0.87//:proc_macro2\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"default\",\n \"proc-macro\",\n ],\n crate_root = \"src/lib.rs\",\n edition = \"2018\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=quote\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"1.0.37\",\n)\n"
+ "build_file_content": "###############################################################################\n# @generated\n# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To \n# regenerate this file, run the following:\n#\n# Run 'cargo update [--workspace]'\n###############################################################################\n\nload(\"@rules_rust//rust:defs.bzl\", \"rust_library\")\n\n# buildifier: disable=bzl-visibility\nload(\"@rules_rust//crate_universe/private:selects.bzl\", \"selects\")\n\npackage(default_visibility = [\"//visibility:public\"])\n\nrust_library(\n name = \"quote\",\n deps = [\n \"@crates__proc-macro2-1.0.89//:proc_macro2\",\n ],\n compile_data = glob(\n allow_empty = True,\n include = [\"**\"],\n exclude = [\n \"**/* *\",\n \".tmp_git_root/**/*\",\n \"BUILD\",\n \"BUILD.bazel\",\n \"WORKSPACE\",\n \"WORKSPACE.bazel\",\n ],\n ),\n crate_features = [\n \"default\",\n \"proc-macro\",\n ],\n crate_root = \"src/lib.rs\",\n edition = \"2018\",\n rustc_flags = [\n \"--cap-lints=allow\",\n ],\n srcs = glob(\n allow_empty = True,\n include = [\"**/*.rs\"],\n ),\n tags = [\n \"cargo-bazel\",\n \"crate-name=quote\",\n \"manual\",\n \"noclippy\",\n \"norustfmt\",\n ],\n target_compatible_with = select({\n \"@rules_rust//rust/platform:aarch64-apple-darwin\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios\": [],\n \"@rules_rust//rust/platform:aarch64-apple-ios-sim\": [],\n \"@rules_rust//rust/platform:aarch64-fuchsia\": [],\n \"@rules_rust//rust/platform:aarch64-linux-android\": [],\n \"@rules_rust//rust/platform:aarch64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-nto-qnx710\": [],\n \"@rules_rust//rust/platform:aarch64-unknown-uefi\": [],\n \"@rules_rust//rust/platform:arm-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:armv7-linux-androideabi\": [],\n \"@rules_rust//rust/platform:armv7-unknown-linux-gnueabi\": [],\n \"@rules_rust//rust/platform:i686-apple-darwin\": [],\n \"@rules_rust//rust/platform:i686-linux-android\": [],\n \"@rules_rust//rust/platform:i686-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:i686-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:i686-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:powerpc-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:riscv32imc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:riscv64gc-unknown-none-elf\": [],\n \"@rules_rust//rust/platform:s390x-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:thumbv7em-none-eabi\": [],\n \"@rules_rust//rust/platform:thumbv8m.main-none-eabi\": [],\n \"@rules_rust//rust/platform:wasm32-unknown-unknown\": [],\n \"@rules_rust//rust/platform:wasm32-wasi\": [],\n \"@rules_rust//rust/platform:x86_64-apple-darwin\": [],\n \"@rules_rust//rust/platform:x86_64-apple-ios\": [],\n \"@rules_rust//rust/platform:x86_64-fuchsia\": [],\n \"@rules_rust//rust/platform:x86_64-linux-android\": [],\n \"@rules_rust//rust/platform:x86_64-pc-windows-msvc\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-freebsd\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-linux-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-nixos-gnu\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-none\": [],\n \"@rules_rust//rust/platform:x86_64-unknown-uefi\": [],\n \"//conditions:default\": [\"@platforms//:incompatible\"],\n }),\n version = \"1.0.37\",\n)\n"
}
},
"crate_index__tower-service-0.3.2": {
@@ -11785,8 +11785,8 @@
},
"@@rules_rust~//crate_universe/private/module_extensions:cargo_bazel_bootstrap.bzl%cargo_bazel_bootstrap": {
"general": {
- "bzlTransitiveDigest": "OJAMh6/DQwjw48K0l6xM3hXS7ILYS9Oe01Cr2uclSo0=",
- "usagesDigest": "NSCiKUt5yCUa9ZVBUjVhcWVH2JVjOd/DSs+yxcLU6xM=",
+ "bzlTransitiveDigest": "yJkClXaQWew9FLsEmY8Ve6QAIRdeYVXRMIwGcYsg2SE=",
+ "usagesDigest": "P348EvScxaGdOlsxXx9MGeuTp9Ssvny8rIa1etQF27g=",
"recordedFileInputs": {},
"recordedDirentsInputs": {},
"envVariables": {},
@@ -11883,8 +11883,8 @@
},
"@@rules_rust~//rust:extensions.bzl%rust": {
"general": {
- "bzlTransitiveDigest": "hQ9PYocMvT+JKpO1c8zgMKf9XLES6cuBZ6v1g69Ix3c=",
- "usagesDigest": "LISxnyOmTe9bLqPAQwVg2uN6a7IQskeNVBmTvL+3Jiw=",
+ "bzlTransitiveDigest": "qOfRbrmdB5RLbhAsABANfZ+PJk0/IojqvaouVVfC4V8=",
+ "usagesDigest": "JumEGPYiqAgG+zPurITf+dVnuq1fvn22VjUl2fKK1IA=",
"recordedFileInputs": {},
"recordedDirentsInputs": {},
"envVariables": {},
@@ -13211,8 +13211,8 @@
},
"@@rules_rust~//rust/private:extensions.bzl%i": {
"general": {
- "bzlTransitiveDigest": "9OKIbug1F+/1Kq9zg9vjRadG0ZYuVC8SZKpSLVx8g6I=",
- "usagesDigest": "Nl3VPnt9LvipEVudMQsMtOnMfgBf1YooPs1t7BXpqGU=",
+ "bzlTransitiveDigest": "0BRFtJUy3aDFb1kKUEN3HkNB2/SoWH2ejxCwf9tpUQQ=",
+ "usagesDigest": "A7MDnMKKdsuQuiE6AwCGaKNQMMIlElUn6ygcd0kEz40=",
"recordedFileInputs": {},
"recordedDirentsInputs": {},
"envVariables": {},
@@ -18881,6 +18881,19 @@
"build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.log-0.4.19.bazel"
}
},
+ "cui__cfg-expr-0.17.0": {
+ "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+ "ruleClassName": "http_archive",
+ "attributes": {
+ "sha256": "d0890061c4d3223e7267f3bad2ec40b997d64faac1c2815a4a9d95018e2b9e9c",
+ "type": "tar.gz",
+ "urls": [
+ "https://static.crates.io/crates/cfg-expr/0.17.0/download"
+ ],
+ "strip_prefix": "cfg-expr-0.17.0",
+ "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cfg-expr-0.17.0.bazel"
+ }
+ },
"cui__wasm-bindgen-backend-0.2.87": {
"bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
"ruleClassName": "http_archive",
@@ -19608,19 +19621,6 @@
"build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tower-layer-0.3.3.bazel"
}
},
- "cui__cfg-expr-0.15.5": {
- "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
- "ruleClassName": "http_archive",
- "attributes": {
- "sha256": "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3",
- "type": "tar.gz",
- "urls": [
- "https://static.crates.io/crates/cfg-expr/0.15.5/download"
- ],
- "strip_prefix": "cfg-expr-0.15.5",
- "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cfg-expr-0.15.5.bazel"
- }
- },
"cui__prodash-26.2.2": {
"bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
"ruleClassName": "http_archive",
@@ -23626,7 +23626,7 @@
"cui__cargo-platform-0.1.4",
"cui__cargo_metadata-0.18.1",
"cui__cargo_toml-0.19.2",
- "cui__cfg-expr-0.15.5",
+ "cui__cfg-expr-0.17.0",
"cui__clap-4.3.11",
"cui__crates-index-2.2.0",
"cui__hex-0.4.3",
@@ -23763,8 +23763,8 @@
],
[
"rules_rust~",
- "cui__cfg-expr-0.15.5",
- "rules_rust~~i~cui__cfg-expr-0.15.5"
+ "cui__cfg-expr-0.17.0",
+ "rules_rust~~i~cui__cfg-expr-0.17.0"
],
[
"rules_rust~",
diff --git a/build/toolchain/llvm-efi/cc_toolchain_config.bzl b/build/toolchain/llvm-efi/cc_toolchain_config.bzl
index bedbd0f..076f5d9 100644
--- a/build/toolchain/llvm-efi/cc_toolchain_config.bzl
+++ b/build/toolchain/llvm-efi/cc_toolchain_config.bzl
@@ -120,8 +120,7 @@
flag_groups = ([
flag_group(
flags = [
- "-target",
- "x86_64-unknown-windows",
+ "--target=x86_64-unknown-windows",
"-fuse-ld=lld",
"-Wl,-entry:efi_main",
"-Wl,-subsystem:efi_application",
diff --git a/cloud/agent/install.go b/cloud/agent/install.go
index 932cff8..30d6869 100644
--- a/cloud/agent/install.go
+++ b/cloud/agent/install.go
@@ -22,7 +22,7 @@
npb "source.monogon.dev/osbase/net/proto"
)
-//go:embed metropolis/node/core/abloader/abloader_bin.efi
+//go:embed metropolis/node/core/abloader/abloader.efi
var abloader []byte
// FileSizedReader is a small adapter from fs.File to fs.SizedReader
@@ -54,7 +54,7 @@
func installMetropolis(req *bpb.MetropolisInstallationRequest, netConfig *npb.Net, l logging.Leveled) error {
// Validate we are running via EFI.
if _, err := os.Stat("/sys/firmware/efi"); os.IsNotExist(err) {
- //nolint:ST1005
+ // nolint:ST1005
return errors.New("Monogon OS can only be installed on EFI-booted machines, this one is not")
}
diff --git a/metropolis/cli/takeover/install.go b/metropolis/cli/takeover/install.go
index 50679d0..b0c56d0 100644
--- a/metropolis/cli/takeover/install.go
+++ b/metropolis/cli/takeover/install.go
@@ -15,7 +15,7 @@
"source.monogon.dev/osbase/efivarfs"
)
-//go:embed metropolis/node/core/abloader/abloader_bin.efi
+//go:embed metropolis/node/core/abloader/abloader.efi
var abloader []byte
// FileSizedReader is a small adapter from fs.File to fs.SizedReader
@@ -40,7 +40,7 @@
func installMetropolis(l logging.Leveled) error {
// Validate we are running via EFI.
if _, err := os.Stat("/sys/firmware/efi"); os.IsNotExist(err) {
- //nolint:ST1005
+ // nolint:ST1005
return fmt.Errorf("Monogon OS can only be installed on EFI-booted machines, this one is not")
}
diff --git a/metropolis/installer/main.go b/metropolis/installer/main.go
index 16de51a..cc640bf 100644
--- a/metropolis/installer/main.go
+++ b/metropolis/installer/main.go
@@ -42,7 +42,7 @@
"source.monogon.dev/osbase/sysfs"
)
-//go:embed metropolis/node/core/abloader/abloader_bin.efi
+//go:embed metropolis/node/core/abloader/abloader.efi
var abloader []byte
const mib = 1024 * 1024
@@ -145,7 +145,7 @@
// Validate we are running via EFI.
if _, err := os.Stat("/sys/firmware/efi"); os.IsNotExist(err) {
- //nolint:ST1005
+ // nolint:ST1005
return errors.New("Monogon OS can only be installed on EFI-booted machines, this one is not")
}
diff --git a/metropolis/node/core/abloader/BUILD.bazel b/metropolis/node/core/abloader/BUILD.bazel
index e8c49ac..ee7b69f 100644
--- a/metropolis/node/core/abloader/BUILD.bazel
+++ b/metropolis/node/core/abloader/BUILD.bazel
@@ -1,13 +1,14 @@
load("@rules_rust//rust:defs.bzl", "rust_binary")
-load("//osbase/build:def.bzl", "platform_transition_binary")
rust_binary(
- name = "abloader_bin",
+ name = "abloader",
srcs = ["main.rs"],
edition = "2021",
+ platform = "//build/platforms:efi_amd64",
target_compatible_with = [
"@platforms//os:uefi",
],
+ visibility = ["//visibility:public"],
deps = [
"//metropolis/node/core/abloader/spec:abloader_proto_rs",
"@crate_index_efi//:prost",
@@ -15,10 +16,3 @@
"@crate_index_efi//:uefi-services",
],
)
-
-platform_transition_binary(
- name = "abloader",
- binary = ":abloader_bin",
- target_platform = "//build/platforms:efi_amd64",
- visibility = ["//visibility:public"],
-)
diff --git a/metropolis/node/core/update/e2e/BUILD.bazel b/metropolis/node/core/update/e2e/BUILD.bazel
index 3443ecf..71be003 100644
--- a/metropolis/node/core/update/e2e/BUILD.bazel
+++ b/metropolis/node/core/update/e2e/BUILD.bazel
@@ -22,8 +22,7 @@
"xOvmfCodePath": "$(rlocationpath //third_party/edk2:OVMF_CODE.fd )",
"xBootPath": "$(rlocationpath //metropolis/node/core/update/e2e/testos:kernel_efi_x )",
"xSystemXPath": "$(rlocationpath //metropolis/node/core/update/e2e/testos:verity_rootfs_x )",
- # TODO(tim): Hardcoded because of https://github.com/monogon-dev/monogon/issues/316
- "xAbloaderPath": "_main/metropolis/node/core/abloader/abloader_bin.efi",
+ "xAbloaderPath": "$(rlocationpath //metropolis/node/core/abloader )",
},
deps = [
"//osbase/blkio",
diff --git a/metropolis/node/core/update/update.go b/metropolis/node/core/update/update.go
index 51dc737..b4183ad 100644
--- a/metropolis/node/core/update/update.go
+++ b/metropolis/node/core/update/update.go
@@ -419,7 +419,7 @@
return nil
}
-//go:embed metropolis/node/core/abloader/abloader_bin.efi
+//go:embed metropolis/node/core/abloader/abloader.efi
var abloader []byte
func (s *Service) fixupPreloader() error {
diff --git a/osbase/build/mkimage/main.go b/osbase/build/mkimage/main.go
index d83a03d..e6398cf 100644
--- a/osbase/build/mkimage/main.go
+++ b/osbase/build/mkimage/main.go
@@ -38,7 +38,7 @@
"source.monogon.dev/osbase/build/mkimage/osimage"
)
-//go:embed metropolis/node/core/abloader/abloader_bin.efi
+//go:embed metropolis/node/core/abloader/abloader.efi
var abloader []byte
func main() {
diff --git a/third_party/rules_rust/BUILD.bazel b/third_party/rules_rust/BUILD.bazel
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/third_party/rules_rust/BUILD.bazel
diff --git a/third_party/rules_rust/rust-prost-nostd.patch b/third_party/rules_rust/rust-prost-nostd.patch
new file mode 100644
index 0000000..557a7c2
--- /dev/null
+++ b/third_party/rules_rust/rust-prost-nostd.patch
@@ -0,0 +1,119 @@
+From a3a14a5fe78a5f3d366fe2d0f3fcfb9ededc587b Mon Sep 17 00:00:00 2001
+From: Lorenz Brun <lorenz@monogon.tech>
+Date: Wed, 25 Sep 2024 02:37:42 +0200
+Subject: [PATCH 2/4] Support no_std in Prost toolchain
+
+---
+ proto/prost/private/prost.bzl | 8 ++++++++
+ proto/prost/private/protoc_wrapper.rs | 19 +++++++++++++++++--
+ 2 files changed, 25 insertions(+), 2 deletions(-)
+
+diff --git a/proto/prost/private/prost.bzl b/proto/prost/private/prost.bzl
+index cf5e11c9..61d0bc63 100644
+--- a/proto/prost/private/prost.bzl
++++ b/proto/prost/private/prost.bzl
+@@ -67,6 +67,9 @@ def _compile_proto(ctx, crate_name, proto_info, deps, prost_toolchain, rustfmt_t
+ additional_args.add("--descriptor_set={}".format(proto_info.direct_descriptor_set.path))
+ additional_args.add_all(prost_toolchain.prost_opts, format_each = "--prost_opt=%s")
+
++ if prost_toolchain.is_nostd:
++ additional_args.add("--is_nostd")
++
+ if prost_toolchain.tonic_plugin:
+ tonic_plugin = prost_toolchain.tonic_plugin[DefaultInfo].files_to_run
+ additional_args.add(prost_toolchain.tonic_plugin_flag % tonic_plugin.executable.path)
+@@ -387,6 +390,7 @@ def _rust_prost_toolchain_impl(ctx):
+ tonic_plugin_flag = ctx.attr.tonic_plugin_flag,
+ tonic_runtime = ctx.attr.tonic_runtime,
+ include_transitive_deps = ctx.attr.include_transitive_deps,
++ is_nostd = ctx.attr.is_nostd,
+ )]
+
+ rust_prost_toolchain = rule(
+@@ -442,6 +446,10 @@ rust_prost_toolchain = rule(
+ doc = "The Tonic runtime crates to use.",
+ providers = [[rust_common.crate_info], [rust_common.crate_group_info]],
+ ),
++ "is_nostd": attr.bool(
++ doc = "If a no_std tag should be put into the generated code.",
++ default = False,
++ ),
+ }, **proto_toolchains.if_legacy_toolchain({
+ "_legacy_proto_toolchain": attr.label(
+ default = "//proto/protobuf:legacy_proto_toolchain",
+diff --git a/proto/prost/private/protoc_wrapper.rs b/proto/prost/private/protoc_wrapper.rs
+index ff4decd4..2c32ea35 100644
+--- a/proto/prost/private/protoc_wrapper.rs
++++ b/proto/prost/private/protoc_wrapper.rs
+@@ -152,8 +152,13 @@ fn generate_lib_rs(
+ prost_outputs: &BTreeSet<PathBuf>,
+ is_tonic: bool,
+ direct_dep_crate_names: Vec<String>,
++ is_nostd: bool,
+ ) -> String {
+- let mut contents = vec!["// @generated".to_string(), "".to_string()];
++ let mut contents = vec![
++ if is_nostd { "#![no_std]".to_string() } else { "".to_string() },
++ "// @generated".to_string(),
++ "".to_string(),
++ ];
+ for crate_name in direct_dep_crate_names {
+ contents.push(format!("pub use {crate_name};"));
+ }
+@@ -442,6 +447,9 @@ struct Args {
+ /// Whether to generate tonic code.
+ is_tonic: bool,
+
++ // Whether to put a no_std tag into the generated code.
++ is_nostd: bool,
++
+ /// Extra arguments to pass to protoc.
+ extra_args: Vec<String>,
+ }
+@@ -463,6 +471,7 @@ impl Args {
+ let mut tonic_or_prost_opts = Vec::new();
+ let mut direct_dep_crate_names = Vec::new();
+ let mut is_tonic = false;
++ let mut is_nostd = false;
+
+ let mut extra_args = Vec::new();
+
+@@ -485,6 +494,10 @@ impl Args {
+ is_tonic = true;
+ return;
+ }
++ if arg == "--is_nostd" {
++ is_nostd = true;
++ return;
++ }
+
+ if !arg.contains('=') {
+ extra_args.push(arg);
+@@ -621,6 +634,7 @@ impl Args {
+ proto_paths,
+ direct_dep_crate_names,
+ is_tonic,
++ is_nostd,
+ label: label.unwrap(),
+ extra_args,
+ })
+@@ -727,6 +741,7 @@ fn main() {
+ proto_paths,
+ direct_dep_crate_names,
+ is_tonic,
++ is_nostd,
+ extra_args,
+ } = Args::parse().expect("Failed to parse args");
+
+@@ -841,7 +856,7 @@ fn main() {
+ // Write outputs
+ fs::write(
+ &out_librs,
+- generate_lib_rs(&rust_files, is_tonic, direct_dep_crate_names),
++ generate_lib_rs(&rust_files, is_tonic, direct_dep_crate_names, is_nostd),
+ )
+ .expect("Failed to write file.");
+ fs::write(
+--
+2.44.1
+
diff --git a/third_party/rust-reproducibility.patch b/third_party/rules_rust/rust-reproducibility.patch
similarity index 100%
rename from third_party/rust-reproducibility.patch
rename to third_party/rules_rust/rust-reproducibility.patch
diff --git a/third_party/rules_rust/rust-uefi-platform.patch b/third_party/rules_rust/rust-uefi-platform.patch
new file mode 100644
index 0000000..e01cf29
--- /dev/null
+++ b/third_party/rules_rust/rust-uefi-platform.patch
@@ -0,0 +1,72 @@
+From b2d165d9b2c811293f92bf083289c97c9d87d13c Mon Sep 17 00:00:00 2001
+From: Lorenz Brun <lorenz@monogon.tech>
+Date: Wed, 25 Sep 2024 02:37:09 +0200
+Subject: [PATCH 1/4] Add support for UEFI targets and OS
+
+---
+ rust/platform/triple_mappings.bzl | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/rust/platform/triple_mappings.bzl b/rust/platform/triple_mappings.bzl
+index 139015da..efa9f167 100644
+--- a/rust/platform/triple_mappings.bzl
++++ b/rust/platform/triple_mappings.bzl
+@@ -47,6 +47,7 @@ SUPPORTED_T2_PLATFORM_TRIPLES = {
+ "aarch64-fuchsia": _support(std = True, host_tools = False),
+ "aarch64-linux-android": _support(std = True, host_tools = False),
+ "aarch64-pc-windows-msvc": _support(std = True, host_tools = True),
++ "aarch64-unknown-uefi": _support(std = True, host_tools = False),
+ "arm-unknown-linux-gnueabi": _support(std = True, host_tools = True),
+ "armv7-linux-androideabi": _support(std = True, host_tools = False),
+ "armv7-unknown-linux-gnueabi": _support(std = True, host_tools = True),
+@@ -65,6 +66,7 @@ SUPPORTED_T2_PLATFORM_TRIPLES = {
+ "x86_64-linux-android": _support(std = True, host_tools = False),
+ "x86_64-unknown-freebsd": _support(std = True, host_tools = True),
+ "x86_64-unknown-none": _support(std = True, host_tools = False),
++ "x86_64-unknown-uefi": _support(std = True, host_tools = False),
+ }
+
+ _T3_PLATFORM_TRIPLES = {
+@@ -142,6 +144,7 @@ _SYSTEM_TO_BUILTIN_SYS_SUFFIX = {
+ "nto": "qnx",
+ "openbsd": "openbsd",
+ "solaris": None,
++ "uefi": "uefi",
+ "unknown": None,
+ "wasi": None,
+ "windows": "windows",
+@@ -160,6 +163,7 @@ _SYSTEM_TO_BINARY_EXT = {
+ "nixos": "",
+ "none": "",
+ "nto": "",
++ "uefi": ".efi",
+ # This is currently a hack allowing us to have the proper
+ # generated extension for the wasm target, similarly to the
+ # windows target
+@@ -181,6 +185,7 @@ _SYSTEM_TO_STATICLIB_EXT = {
+ "nixos": ".a",
+ "none": ".a",
+ "nto": ".a",
++ "uefi": ".lib",
+ "unknown": "",
+ "wasi": "",
+ "windows": ".lib",
+@@ -199,6 +204,7 @@ _SYSTEM_TO_DYLIB_EXT = {
+ "nixos": ".so",
+ "none": ".so",
+ "nto": ".a",
++ "uefi": "", # UEFI doesn't have dynamic linking
+ "unknown": ".wasm",
+ "wasi": ".wasm",
+ "windows": ".dll",
+@@ -244,6 +250,7 @@ _SYSTEM_TO_STDLIB_LINKFLAGS = {
+ "nto": [],
+ "openbsd": ["-lpthread"],
+ "solaris": ["-lsocket", "-lposix4", "-lpthread", "-lresolv"],
++ "uefi": [],
+ "unknown": [],
+ "uwp": ["ws2_32.lib"],
+ "wasi": [],
+--
+2.44.1
+
diff --git a/third_party/rust-prost-nostd.patch b/third_party/rust-prost-nostd.patch
deleted file mode 100644
index dc30a23..0000000
--- a/third_party/rust-prost-nostd.patch
+++ /dev/null
@@ -1,123 +0,0 @@
-From 8b464f085c9b255d81ee0e8501914ff7cb3cadd8 Mon Sep 17 00:00:00 2001
-From: Tim Windelschmidt <tim@monogon.tech>
-Date: Fri, 12 Jan 2024 15:41:50 +0100
-Subject: [PATCH 1/2] Support no_std in Prost toolchain
-
----
- proto/prost/private/prost.bzl | 8 ++++++++
- proto/prost/private/protoc_wrapper.rs | 17 ++++++++++++++---
- 2 files changed, 22 insertions(+), 3 deletions(-)
-
-diff --git a/proto/prost/private/prost.bzl b/proto/prost/private/prost.bzl
-index c3a7d4e0..6f7449d0 100644
---- a/proto/prost/private/prost.bzl
-+++ b/proto/prost/private/prost.bzl
-@@ -65,6 +65,9 @@ def _compile_proto(ctx, crate_name, proto_info, deps, prost_toolchain, rustfmt_t
- additional_args.add("--descriptor_set={}".format(proto_info.direct_descriptor_set.path))
- additional_args.add_all(prost_toolchain.prost_opts, format_each = "--prost_opt=%s")
-
-+ if prost_toolchain.is_nostd:
-+ additional_args.add("--is_nostd")
-+
- if prost_toolchain.tonic_plugin:
- tonic_plugin = prost_toolchain.tonic_plugin[DefaultInfo].files_to_run
- additional_args.add(prost_toolchain.tonic_plugin_flag % tonic_plugin.executable.path)
-@@ -372,6 +375,7 @@ def _rust_prost_toolchain_impl(ctx):
- tonic_plugin = ctx.attr.tonic_plugin,
- tonic_plugin_flag = ctx.attr.tonic_plugin_flag,
- tonic_runtime = ctx.attr.tonic_runtime,
-+ is_nostd = ctx.attr.is_nostd,
- )]
-
- rust_prost_toolchain = rule(
-@@ -423,6 +427,10 @@ rust_prost_toolchain = rule(
- doc = "The Tonic runtime crates to use.",
- providers = [[rust_common.crate_info], [rust_common.crate_group_info]],
- ),
-+ "is_nostd": attr.bool(
-+ doc = "If a no_std tag should be put into the generated code.",
-+ default = False,
-+ ),
- }, **proto_toolchains.if_legacy_toolchain({
- "_legacy_proto_toolchain": attr.label(
- default = "//proto/protobuf:legacy_proto_toolchain",
-diff --git a/proto/prost/private/protoc_wrapper.rs b/proto/prost/private/protoc_wrapper.rs
-index 9c41892c..5d67640d 100644
---- a/proto/prost/private/protoc_wrapper.rs
-+++ b/proto/prost/private/protoc_wrapper.rs
-@@ -117,7 +117,7 @@ struct Module {
- /// }
- /// }
- /// ```
--fn generate_lib_rs(prost_outputs: &BTreeSet<PathBuf>, is_tonic: bool) -> String {
-+fn generate_lib_rs(prost_outputs: &BTreeSet<PathBuf>, is_tonic: bool, is_nostd: bool) -> String {
- let mut module_info = BTreeMap::new();
-
- for path in prost_outputs.iter() {
-@@ -189,7 +189,8 @@ fn generate_lib_rs(prost_outputs: &BTreeSet<PathBuf>, is_tonic: bool) -> String
- }
- }
-
-- let mut content = "// @generated\n\n".to_string();
-+ let mut content = if is_nostd { "#![no_std]\n".to_string() } else { "".to_string() };
-+ content.push_str(&"// @generated\n\n");
- write_module(&mut content, &module_info, "", 0);
- content
- }
-@@ -443,6 +444,9 @@ struct Args {
- /// Whether to generate tonic code.
- is_tonic: bool,
-
-+ // Whether to put a no_std tag into the generated code.
-+ is_nostd: bool,
-+
- /// Extra arguments to pass to protoc.
- extra_args: Vec<String>,
- }
-@@ -463,6 +467,7 @@ impl Args {
- let mut label: Option<String> = None;
- let mut tonic_or_prost_opts = Vec::new();
- let mut is_tonic = false;
-+ let mut is_nostd = false;
-
- let mut extra_args = Vec::new();
-
-@@ -485,6 +490,10 @@ impl Args {
- is_tonic = true;
- return;
- }
-+ if arg == "--is_nostd" {
-+ is_nostd = true;
-+ return;
-+ }
-
- if !arg.contains('=') {
- extra_args.push(arg);
-@@ -613,6 +622,7 @@ impl Args {
- rustfmt,
- proto_paths,
- is_tonic,
-+ is_nostd,
- label: label.unwrap(),
- extra_args,
- })
-@@ -718,6 +728,7 @@ fn main() {
- rustfmt,
- proto_paths,
- is_tonic,
-+ is_nostd,
- extra_args,
- } = Args::parse().expect("Failed to parse args");
-
-@@ -830,7 +841,7 @@ fn main() {
- .expect("Failed to compute proto package info");
-
- // Write outputs
-- fs::write(&out_librs, generate_lib_rs(&rust_files, is_tonic)).expect("Failed to write file.");
-+ fs::write(&out_librs, generate_lib_rs(&rust_files, is_tonic, is_nostd)).expect("Failed to write file.");
- fs::write(
- package_info_file,
- extern_paths
---
-2.44.1
-
diff --git a/third_party/rust-uefi-platform.patch b/third_party/rust-uefi-platform.patch
deleted file mode 100644
index 6ca627e..0000000
--- a/third_party/rust-uefi-platform.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 28b8651b0ccba1f41802a2aff12643b51436b32b Mon Sep 17 00:00:00 2001
-From: Lorenz Brun <lorenz@monogon.tech>
-Date: Tue, 29 Aug 2023 19:02:45 +0200
-Subject: [PATCH] Add support for UEFI targets and OS
-
----
- rust/platform/triple_mappings.bzl | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/rust/platform/triple_mappings.bzl b/rust/platform/triple_mappings.bzl
-index 61a71c73..ce594522 100644
---- a/rust/platform/triple_mappings.bzl
-+++ b/rust/platform/triple_mappings.bzl
-@@ -27,6 +27,7 @@ SUPPORTED_T2_PLATFORM_TRIPLES = [
- "aarch64-fuchsia",
- "aarch64-linux-android",
- "aarch64-pc-windows-msvc",
-+ "aarch64-unknown-uefi",
- "arm-unknown-linux-gnueabi",
- "armv7-linux-androideabi",
- "armv7-unknown-linux-gnueabi",
-@@ -45,6 +46,7 @@ SUPPORTED_T2_PLATFORM_TRIPLES = [
- "x86_64-linux-android",
- "x86_64-unknown-freebsd",
- "x86_64-unknown-none",
-+ "x86_64-unknown-uefi",
- ]
-
-@@ -97,6 +99,7 @@ _SYSTEM_TO_BUILTIN_SYS_SUFFIX = {
- "nto": "qnx",
- "openbsd": "openbsd",
- "solaris": None,
-+ "uefi": "uefi",
- "unknown": None,
- "wasi": None,
- "windows": "windows",
-@@ -113,6 +116,7 @@ _SYSTEM_TO_BINARY_EXT = {
- "nixos": "",
- "none": "",
- "nto": "",
-+ "uefi": ".efi",
- # This is currently a hack allowing us to have the proper
- # generated extension for the wasm target, similarly to the
- # windows target
-@@ -132,6 +136,7 @@ _SYSTEM_TO_STATICLIB_EXT = {
- "nixos": ".a",
- "none": ".a",
- "nto": ".a",
-+ "uefi": ".lib",
- "unknown": "",
- "wasi": "",
- "windows": ".lib",
-@@ -148,6 +153,7 @@ _SYSTEM_TO_DYLIB_EXT = {
- "nixos": ".so",
- "none": ".so",
- "nto": ".a",
-+ "uefi": "", # UEFI doesn't have dynamic linking
- "unknown": ".wasm",
- "wasi": ".wasm",
- "windows": ".dll",
-@@ -191,6 +197,7 @@ _SYSTEM_TO_STDLIB_LINKFLAGS = {
- "nto": [],
- "openbsd": ["-lpthread"],
- "solaris": ["-lsocket", "-lposix4", "-lpthread", "-lresolv"],
-+ "uefi": [],
- "unknown": [],
- "uwp": ["ws2_32.lib"],
- "wasi": [],
---
-2.41.0
-