PACKAGE
load("@prelude//rust:cargo_package.bzl", "set_reindeer_platforms")
# Which reindeer platform a configuration is, which is how the generated rules
# in third-party/rust/BUCK pick a feature set. This is the prelude's own map
# with one addition: wasi-guest, the plugins, which is the same triple as wasi
# and differs only by the constraint buck/constraints says why exists.
set_reindeer_platforms(
select({
"DEFAULT": None,
"prelude//os:android": select({
"DEFAULT": None,
"prelude//cpu:arm64": "android-arm64",
}),
"prelude//os:linux": select({
"DEFAULT": None,
"prelude//cpu:arm64": "linux-arm64",
"prelude//cpu:x86_64": "linux-x86_64",
}),
"prelude//os:macos": select({
"DEFAULT": None,
"prelude//cpu:arm64": "macos-arm64",
"prelude//cpu:x86_64": "macos-x86_64",
}),
"prelude//os:none": select({
"DEFAULT": None,
"prelude//cpu:wasm32": "wasm32",
}),
"prelude//os:wasi": select({
"DEFAULT": None,
"prelude//cpu:wasm32": select({
"DEFAULT": "wasi",
"root//buck/constraints:guest": "wasi-guest",
}),
}),
"prelude//os:windows": select({
"DEFAULT": None,
"prelude//cpu:arm64": "windows-arm64",
"prelude//cpu:x86_64": "windows-x86_64",
}),
})
)