1load("@aspect_bazel_lib//lib:transitions.bzl", "platform_transition_binary") 2load("@bazel_skylib//rules:build_test.bzl", "build_test") 3load("@rules_rust//rust:defs.bzl", "rust_binary") 4 5rust_binary( 6 name = "hello", 7 srcs = ["src/main.rs"], 8 tags = ["manual"], 9) 10 11platform_transition_binary( 12 name = "hello_linux_x86_64_musl", 13 binary = ":hello", 14 target_platform = "//platforms:linux_x86_64_musl", 15) 16 17sh_test( 18 name = "hello_linux_x86_64_musl_test", 19 srcs = ["hello_linux_musl_test.sh"], 20 args = [ 21 "$(rootpath :hello_linux_x86_64_musl)", 22 "'ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), static-pie linked'", 23 ], 24 data = [":hello_linux_x86_64_musl"], 25) 26 27platform_transition_binary( 28 name = "hello_linux_arm64_musl", 29 binary = ":hello", 30 target_platform = "//platforms:linux_arm64_musl", 31) 32 33sh_test( 34 name = "hello_linux_arm64_musl_test", 35 srcs = ["hello_linux_musl_test.sh"], 36 args = [ 37 "$(rootpath :hello_linux_arm64_musl)", 38 "'ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), statically linked'", 39 ], 40 data = [":hello_linux_arm64_musl"], 41) 42 43rust_binary( 44 name = "keyring", 45 srcs = ["src/keyring.rs"], 46 tags = ["manual"], 47 deps = ["@cu//:keyring"], 48) 49 50platform_transition_binary( 51 name = "keyring_linux_x86_64_musl", 52 binary = ":keyring", 53 target_platform = "//platforms:linux_x86_64_musl", 54) 55 56build_test( 57 name = "keyring_linux_x86_64_musl_build_test", 58 targets = [":keyring_linux_x86_64_musl"], 59) 60