blob: 5ff4ba804ba21ca8d8213766692ee02fcf67d6e1 [file] [log] [blame]
# Standard constraint_setting and constraint_values to be used in platforms.
package(
default_visibility = ["//visibility:public"],
)
# These match values in //src/main/java/com/google/devtools/build/lib/util:CPU.java
constraint_setting(name = "cpu")
constraint_value(
name = "x86_32",
constraint_setting = ":cpu",
)
constraint_value(
name = "x86_64",
constraint_setting = ":cpu",
)
constraint_value(
name = "ppc",
constraint_setting = ":cpu",
)
constraint_value(
name = "arm",
constraint_setting = ":cpu",
)
constraint_value(
name = "s390x",
constraint_setting = ":cpu",
)
# These match values in //src/main/java/com/google/devtools/build/lib/util:OS.java
constraint_setting(name = "os")
constraint_value(
name = "osx",
constraint_setting = ":os",
)
constraint_value(
name = "ios",
constraint_setting = ":os",
)
constraint_value(
name = "freebsd",
constraint_setting = ":os",
)
constraint_value(
name = "android",
constraint_setting = ":os",
)
constraint_value(
name = "linux",
constraint_setting = ":os",
)
constraint_value(
name = "windows",
constraint_setting = ":os",
)
# A constraint that can only be matched by the autoconfigured platforms.
constraint_setting(
name = "autoconfigure_status",
visibility = ["//visibility:private"],
)
constraint_value(
name = "autoconfigured",
constraint_setting = ":autoconfigure_status",
visibility = [
"@bazel_tools//:__subpackages__",
"@local_config_cc//:__subpackages__",
],
)
# A default platform with nothing defined.
platform(name = "default_platform")
# A default platform referring to the host system. This only exists for
# internal build configurations, and so shouldn't be accessed by other packages.
platform(
name = "host_platform",
constraint_values = [
":autoconfigured",
],
cpu_constraints = [
":x86_32",
":x86_64",
":ppc",
":arm",
":s390x",
],
host_platform = True,
os_constraints = [
":osx",
":freebsd",
":linux",
":windows",
],
)
platform(
name = "target_platform",
constraint_values = [
":autoconfigured",
],
cpu_constraints = [
":x86_32",
":x86_64",
":ppc",
":arm",
":s390x",
],
os_constraints = [
":osx",
":freebsd",
":linux",
":windows",
],
target_platform = True,
)