load("@bazel_skylib//lib:selects.bzl", "selects") filegroup( name = "srcs", srcs = glob(["**"]), visibility = [ "//src:__pkg__", "//src/test/shell/bazel:__pkg__", ], ) filegroup( name = "embedded_tools", srcs = ["BUILD.tools"], visibility = ["//src:__pkg__"], ) config_setting( name = "linux", constraint_values = ["@platforms//os:linux"], visibility = ["//visibility:public"], ) config_setting( name = "linux_aarch64", constraint_values = [ "@platforms//os:linux", "@platforms//cpu:aarch64", ], visibility = ["//visibility:public"], ) config_setting( name = "linux_arm", constraint_values = [ "@platforms//os:linux", "@platforms//cpu:arm", ], visibility = ["//visibility:public"], ) config_setting( name = "linux_ppc", constraint_values = [ "@platforms//os:linux", "@platforms//cpu:ppc", ], visibility = ["//visibility:public"], ) config_setting( name = "linux_ppc64le", constraint_values = [ "@platforms//os:linux", "@platforms//cpu:ppc", ], visibility = ["//visibility:public"], ) config_setting( name = "linux_s390x", constraint_values = [ "@platforms//os:linux", "@platforms//cpu:s390x", ], visibility = ["//visibility:public"], ) config_setting( name = "linux_mips64", constraint_values = [ "@platforms//os:linux", "@platforms//cpu:mips64", ], visibility = ["//visibility:public"], ) config_setting( name = "linux_riscv64", constraint_values = [ "@platforms//os:linux", "@platforms//cpu:riscv64", ], visibility = ["//visibility:public"], ) config_setting( name = "linux_x86_64", constraint_values = [ "@platforms//os:linux", "@platforms//cpu:x86_64", ], visibility = ["//visibility:public"], ) config_setting( name = "darwin", constraint_values = ["@platforms//os:macos"], visibility = ["//visibility:public"], ) config_setting( name = "darwin_x86_64", constraint_values = [ "@platforms//os:macos", "@platforms//cpu:x86_64", ], visibility = ["//visibility:public"], ) config_setting( name = "darwin_arm64_constraint", constraint_values = [ "@platforms//os:macos", "@platforms//cpu:arm64", ], ) config_setting( name = "darwin_arm64_flag", constraint_values = [ "@platforms//os:macos", "@platforms//cpu:x86_64", ], values = {"cpu": "darwin_arm64"}, ) # Workaround for an issue where the dummy cc toolchain isn't being picked up # when cross-compile from darwin_x86_64 to darwin_arm64 cpu. # TODO(https://github.com/bazelbuild/bazel/issues/12655): Remove the flag based # select when the issue is resolved. selects.config_setting_group( name = "darwin_arm64", match_any = [ ":darwin_arm64_constraint", ":darwin_arm64_flag", ], visibility = ["//visibility:public"], ) config_setting( name = "darwin_arm64e", constraint_values = [ "@platforms//os:macos", "@platforms//cpu:arm64e", ], visibility = ["//visibility:public"], ) config_setting( name = "iphonesdk", values = {"define": "IPHONE_SDK=1"}, visibility = ["//visibility:public"], ) config_setting( name = "freebsd", constraint_values = ["@platforms//os:freebsd"], visibility = ["//visibility:public"], ) config_setting( name = "openbsd", constraint_values = ["@platforms//os:openbsd"], visibility = ["//visibility:public"], ) config_setting( name = "windows", constraint_values = ["@platforms//os:windows"], visibility = ["//visibility:public"], ) config_setting( name = "windows_x86_64", constraint_values = [ "@platforms//os:windows", "@platforms//cpu:x86_64", ], visibility = ["//visibility:public"], ) config_setting( name = "windows_arm64_constraint", constraint_values = [ "@platforms//os:windows", "@platforms//cpu:arm64", ], ) # TODO(https://github.com/bazelbuild/bazel/issues/7260) # Remove the flag after toolchain cc resolution is fixed config_setting( name = "windows_x64_arm64_flag", constraint_values = [ "@platforms//os:windows", "@platforms//cpu:x86_64", ], values = {"cpu": "x64_arm64_windows"}, ) config_setting( name = "windows_arm64_flag", values = {"cpu": "arm64_windows"}, ) selects.config_setting_group( name = "windows_arm64", match_any = [ ":windows_arm64_constraint", ":windows_arm64_flag", ":windows_x64_arm64_flag", ], visibility = ["//visibility:public"], ) config_setting( name = "arm", constraint_values = ["@platforms//cpu:arm"], visibility = ["//visibility:public"], ) config_setting( name = "remote", values = {"define": "EXECUTOR=remote"}, visibility = ["//visibility:public"], ) config_setting( name = "debian_build", values = { "define": "distribution=debian", }, visibility = ["//visibility:public"], )