diff options
author | Sam Delmerico <delmerico@google.com> | 2022-09-19 15:49:33 -0400 |
---|---|---|
committer | Sam Delmerico <delmerico@google.com> | 2022-09-19 15:55:24 -0400 |
commit | 2e58ce934e252a407561962a36dd0a0fd3901b63 (patch) | |
tree | 5e77075319994e6dbe50c095474e0d6242155d6a /BUILD.bazel | |
parent | 042ca2f16f24e183865a77de661fd506c19a7363 (diff) | |
download | linux-x86-2e58ce934e252a407561962a36dd0a0fd3901b63.tar.gz |
collect toolchain definitions into single function
In preparation for registering toolchains directly from this package,
this commit moves the mostly similar logic for crt and nocrt toolchains
into a helper function.
Test: b build //packages/modules/adb:adbd
Bug: 245528404
Change-Id: I92944dc53bcc8d05bdbc4af26ad3653a5bf3457f
Diffstat (limited to 'BUILD.bazel')
-rw-r--r-- | BUILD.bazel | 62 |
1 files changed, 9 insertions, 53 deletions
diff --git a/BUILD.bazel b/BUILD.bazel index e711dd0e2..8101cfeb9 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -16,6 +16,7 @@ load( "android_cc_toolchain", "clang_version", "expand_feature_flags", + "toolchain_definition", ) load( ":cc_toolchain_constants.bzl", @@ -203,61 +204,16 @@ android_cc_toolchain( toolchain_type(name = "nocrt_toolchain") -# Device toolchains with crt libraries +# Device toolchains [ [ - toolchain( - name = "cc_toolchain_{arch}{variant}_def".format( - arch = arch, - variant = variant_name(variant), - ), - exec_compatible_with = [ - "//build/bazel/platforms/arch:x86_64", - "//build/bazel/platforms/os:linux", - ], - target_compatible_with = [ - "//build/bazel/platforms/arch:%s" % arch, - "//build/bazel/platforms/os:android", - ] + variant_constraints( - variant, - _arch_constants.AndroidArchToVariantToFeatures[arch], - ), - toolchain = ":cc_toolchain_{arch}{variant}".format( - arch = arch, - variant = variant_name(variant), - ), - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", - ) - for variant in variants - ] - for arch, variants in arch_to_variants.items() -] - -# Device toolchains without crt libraries -[ - [ - toolchain( - name = "cc_toolchain_{arch}{variant}_nocrt_def".format( - arch = arch, - variant = variant_name(variant), - ), - exec_compatible_with = [ - "//build/bazel/platforms/arch:x86_64", - "//build/bazel/platforms/os:linux", - ], - target_compatible_with = [ - "//build/bazel/platforms/arch:%s" % arch, - "//build/bazel/platforms/os:android", - ] + variant_constraints( - variant, - _arch_constants.AndroidArchToVariantToFeatures[arch], - ), - toolchain = ":cc_toolchain_{arch}{variant}_nocrt".format( - arch = arch, - variant = variant_name(variant), - ), - toolchain_type = ":nocrt_toolchain", - ) + [ + toolchain_definition(arch, variant, nocrt) + for nocrt in [ + True, + False, + ] + ] for variant in variants ] for arch, variants in arch_to_variants.items() |