From 1cec9d1c51b890f3a6aed330454295785b6faf1e Mon Sep 17 00:00:00 2001 From: Liz Kammer Date: Thu, 22 Jun 2023 10:09:47 -0400 Subject: [PATCH] Disable mixed builds for unsupported variants Test: CI Change-Id: Icdaef8b2955a88dc94348c85c5aa6bb9b3c91148 --- cc/cc.go | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/cc/cc.go b/cc/cc.go index d67f3ad14..83b635b4a 100644 --- a/cc/cc.go +++ b/cc/cc.go @@ -25,6 +25,7 @@ import ( "strings" "android/soong/ui/metrics/bp2build_metrics_proto" + "github.com/google/blueprint" "github.com/google/blueprint/proptools" @@ -1922,9 +1923,37 @@ func (c *Module) IsMixedBuildSupported(ctx android.BaseModuleContext) bool { //TODO(b/278772861) support sanitizers in Bazel rules return false } + if !imageVariantSupportedByBazel(c) { + return false + } + if c.IsSdkVariant() { + return false + } return c.bazelHandler != nil } +func imageVariantSupportedByBazel(c *Module) bool { + if c.IsLlndk() { + return false + } + if c.InVendor() { + return false + } + if c.InProduct() { + return false + } + if c.InRamdisk() { + return false + } + if c.InVendorRamdisk() { + return false + } + if c.InRecovery() { + return false + } + return true +} + func allEnabledSanitizersSupportedByBazel(ctx android.BaseModuleContext, c *Module) bool { if c.sanitize == nil { return true