1load("@aspect_bazel_lib//lib:transitions.bzl", "platform_transition_filegroup") 2load("@crate_index//:defs.bzl", "aliases", "all_crate_deps") 3load("@rules_rust//cargo:defs.bzl", "cargo_build_script") 4load("@rules_rust//rust:defs.bzl", "rust_binary") 5 6rust_binary( 7 name = "uses_ring", 8 srcs = ["src/main.rs"], 9 aliases = aliases(), 10 # We don't care about building this for our own platform, this just exists for the transition 11 tags = ["manual"], 12 deps = all_crate_deps(normal = True) + [":check_merged_flags"], 13) 14 15cargo_build_script( 16 name = "check_merged_flags", 17 srcs = ["src/check_merged_flags.rs"], 18 build_script_env = { 19 "CFLAGS": "cbeep", 20 "CXXFLAGS": "cxxbeep", 21 "LDFLAGS": "ldbeep", 22 }, 23) 24 25platform( 26 name = "aarch64_linux", 27 constraint_values = [ 28 "@platforms//os:linux", 29 "@platforms//cpu:aarch64", 30 ], 31) 32 33platform_transition_filegroup( 34 name = "uses_ring_arm", 35 srcs = [":uses_ring"], 36 target_platform = "aarch64_linux", 37) 38