| load("@rules_rust//rust:defs.bzl", "rust_binary") |
| load("//osbase/build:def.bzl", "ignore_unused_configuration_target") |
| |
| rust_binary( |
| name = "abloader_bin", |
| srcs = ["main.rs"], |
| edition = "2021", |
| platform = select({ |
| "@platforms//cpu:x86_64": "//build/platforms:uefi_x86_64", |
| "@platforms//cpu:aarch64": "//build/platforms:uefi_aarch64", |
| }), |
| # rust_binary depends on the status files by default, even if no stamp |
| # variables are used, which causes unnecessary rebuilds when the stable |
| # status file changes. |
| stamp = 0, |
| target_compatible_with = [ |
| "@platforms//os:uefi", |
| ], |
| visibility = ["//visibility:private"], |
| deps = [ |
| "//metropolis/node/core/abloader/spec:abloader_proto_rs", |
| "@crate_index_efi//:prost", |
| "@crate_index_efi//:uefi", |
| "@crate_index_efi//:uefi-services", |
| ], |
| ) |
| |
| ignore_unused_configuration_target( |
| name = "abloader", |
| dep = ":abloader_bin", |
| visibility = ["//visibility:public"], |
| ) |