| # Standard constraint_setting and constraint_values to be used in platforms. |
| licenses(["notice"]) |
| |
| package( |
| default_visibility = ["//visibility:public"], |
| ) |
| |
| filegroup( |
| name = "srcs", |
| srcs = glob(["**"]), |
| ) |
| |
| # To add a new constraint_value see https://github.com/bazelbuild/platforms. |
| constraint_setting(name = "os") |
| |
| constraint_value( |
| name = "freebsd", |
| constraint_setting = ":os", |
| ) |
| |
| constraint_value( |
| name = "openbsd", |
| constraint_setting = ":os", |
| ) |
| |
| constraint_value( |
| name = "android", |
| constraint_setting = ":os", |
| ) |
| |
| constraint_value( |
| name = "linux", |
| constraint_setting = ":os", |
| ) |
| |
| constraint_value( |
| name = "windows", |
| constraint_setting = ":os", |
| ) |
| |
| # For platforms with no OS, like microcontrollers. |
| constraint_value( |
| name = "none", |
| constraint_setting = ":os", |
| ) |
| |
| ### Apple OS Values |
| |
| constraint_value( |
| name = "ios", |
| constraint_setting = ":os", |
| ) |
| |
| # TODO(b/138656886): Rename this to macos instead of osx. |
| constraint_value( |
| name = "osx", |
| constraint_setting = ":os", |
| ) |
| |
| alias( |
| name = "macos", |
| actual = ":osx", |
| ) |
| |
| constraint_value( |
| name = "tvos", |
| constraint_setting = ":os", |
| ) |
| |
| constraint_value( |
| name = "watchos", |
| constraint_setting = ":os", |
| ) |
| |
| constraint_value( |
| name = "qnx", |
| constraint_setting = ":os", |
| ) |
| |
| # NixOS uses the Linux kernel, but is not ABI-compatible with any |
| # other Linux distribution. This is because the dynamic linker is in |
| # a non-standard (and undefined) location on the filesystem. |
| constraint_value( |
| name = "nixos", |
| constraint_setting = ":os", |
| ) |
| |
| # WASI (WebAssembly System Interface) |
| # https://github.com/bytecodealliance/wasmtime/blob/main/docs/WASI-overview.md |
| constraint_value( |
| name = "wasi", |
| constraint_setting = ":os", |
| ) |