diff options
Diffstat (limited to 'platforms/BUILD.bazel')
-rw-r--r-- | platforms/BUILD.bazel | 61 |
1 files changed, 29 insertions, 32 deletions
diff --git a/platforms/BUILD.bazel b/platforms/BUILD.bazel index b1bbe5f3..24829e23 100644 --- a/platforms/BUILD.bazel +++ b/platforms/BUILD.bazel @@ -12,7 +12,14 @@ # These model after the arch and OS definitions in build/soong/android/arch.go. load("@soong_injection//product_config:product_variables.bzl", "product_vars") -load("//build/bazel/platforms:product_variables/product_platform.bzl", "android_platform", "android_variant_constraints", "product_variable_config") +load("//build/bazel/platforms:product_variables/product_platform.bzl", "android_platform", "product_variable_config") +load("//build/bazel/platforms/arch/variants:constants.bzl", "constants") +load( + "//prebuilts/clang/host/linux-x86:cc_toolchain_constants.bzl", + "arch_to_variants", + "variant_constraints", + "variant_name", +) package(default_visibility = ["//visibility:public"]) @@ -99,40 +106,30 @@ android_platform( product = ":android_target", ) -# Android is the OS for target devices that run all of Android, including the Linux kernel -# and the Bionic libc runtime. -android_platform( +alias( name = "android_arm", - constraint_values = [ - "//build/bazel/platforms/arch:arm", - "//build/bazel/platforms/os:android", - ] + android_variant_constraints("arm", "armv7-a-neon"), # default to armv7-a-neon - product = ":android_target", + actual = ":android_arm_armv7-a-neon", # default to armv7-a-neon ) -android_platform( +alias( name = "android_arm64", - constraint_values = [ - "//build/bazel/platforms/arch:arm64", - "//build/bazel/platforms/os:android", - ] + android_variant_constraints("arm64", "armv8-a"), # default to armv8-a - product = ":android_target", + actual = ":android_arm64_armv8-a", # default to armv8-a ) -android_platform( - name = "android_x86", - constraint_values = [ - "//build/bazel/platforms/arch:x86", - "//build/bazel/platforms/os:android", - ] + android_variant_constraints("x86"), - product = ":android_target", -) - -android_platform( - name = "android_x86_64", - constraint_values = [ - "//build/bazel/platforms/arch:x86_64", - "//build/bazel/platforms/os:android", - ] + android_variant_constraints("x86_64"), - product = ":android_target", -) +[ + [ + android_platform( + name = "android_" + arch + variant_name(variant), + constraint_values = [ + "//build/bazel/platforms/arch:" + arch, + "//build/bazel/platforms/os:android", + ] + variant_constraints( + variant, + constants.AndroidArchToVariantToFeatures[arch], + ), + product = ":android_target", + ) + for variant in variants + ] + for arch, variants in arch_to_variants.items() +] |