From ded796030ba24c6ea096c26067890884825f9ebb Mon Sep 17 00:00:00 2001 From: Cole Faust Date: Tue, 5 Sep 2023 17:48:11 -0700 Subject: [PATCH] Allow actions to read BUILD_BROKEN_INCORRECT_PARTITION_IMAGES To maintain good backwards compatibility with the legacy partition building behavior, allow actions to read BUILD_BROKEN_INCORRECT_PARTITION_IMAGES so that we don't have to rerun analysis. Bug: 205632228 Test: Presubmits Change-Id: I2b55c0143cbdaf010e6b5fd0c3d51d6930a94eff --- android/variable.go | 21 +++++++++++---------- bp2build/bp2build_product_config.go | 1 + ui/build/ninja.go | 4 ++++ 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/android/variable.go b/android/variable.go index 02eff25f9..524cdf75c 100644 --- a/android/variable.go +++ b/android/variable.go @@ -438,16 +438,17 @@ type ProductVariables struct { ShippingApiLevel *string `json:",omitempty"` - BuildBrokenPluginValidation []string `json:",omitempty"` - BuildBrokenClangAsFlags bool `json:",omitempty"` - BuildBrokenClangCFlags bool `json:",omitempty"` - BuildBrokenClangProperty bool `json:",omitempty"` - GenruleSandboxing *bool `json:",omitempty"` - BuildBrokenEnforceSyspropOwner bool `json:",omitempty"` - BuildBrokenTrebleSyspropNeverallow bool `json:",omitempty"` - BuildBrokenUsesSoongPython2Modules bool `json:",omitempty"` - BuildBrokenVendorPropertyNamespace bool `json:",omitempty"` - BuildBrokenInputDirModules []string `json:",omitempty"` + BuildBrokenPluginValidation []string `json:",omitempty"` + BuildBrokenClangAsFlags bool `json:",omitempty"` + BuildBrokenClangCFlags bool `json:",omitempty"` + BuildBrokenClangProperty bool `json:",omitempty"` + GenruleSandboxing *bool `json:",omitempty"` + BuildBrokenEnforceSyspropOwner bool `json:",omitempty"` + BuildBrokenTrebleSyspropNeverallow bool `json:",omitempty"` + BuildBrokenUsesSoongPython2Modules bool `json:",omitempty"` + BuildBrokenVendorPropertyNamespace bool `json:",omitempty"` + BuildBrokenIncorrectPartitionImages bool `json:",omitempty"` + BuildBrokenInputDirModules []string `json:",omitempty"` BuildWarningBadOptionalUsesLibsAllowlist []string `json:",omitempty"` diff --git a/bp2build/bp2build_product_config.go b/bp2build/bp2build_product_config.go index 021494108..20355d736 100644 --- a/bp2build/bp2build_product_config.go +++ b/bp2build/bp2build_product_config.go @@ -261,6 +261,7 @@ func platformMappingSingleProduct( result.WriteString(fmt.Sprintf(" --//build/bazel/product_config:apex_global_min_sdk_version_override=%s\n", proptools.String(productVariables.ApexGlobalMinSdkVersionOverride))) result.WriteString(fmt.Sprintf(" --//build/bazel/product_config:binder32bit=%t\n", proptools.Bool(productVariables.Binder32bit))) result.WriteString(fmt.Sprintf(" --//build/bazel/product_config:build_from_text_stub=%t\n", proptools.Bool(productVariables.Build_from_text_stub))) + result.WriteString(fmt.Sprintf(" --//build/bazel/product_config:build_broken_incorrect_partition_images=%t\n", productVariables.BuildBrokenIncorrectPartitionImages)) result.WriteString(fmt.Sprintf(" --//build/bazel/product_config:build_id=%s\n", proptools.String(productVariables.BuildId))) result.WriteString(fmt.Sprintf(" --//build/bazel/product_config:build_version_tags=%s\n", strings.Join(productVariables.BuildVersionTags, ","))) result.WriteString(fmt.Sprintf(" --//build/bazel/product_config:cfi_exclude_paths=%s\n", strings.Join(productVariables.CFIExcludePaths, ","))) diff --git a/ui/build/ninja.go b/ui/build/ninja.go index 61aaad86b..b69e938f8 100644 --- a/ui/build/ninja.go +++ b/ui/build/ninja.go @@ -194,6 +194,10 @@ func runNinjaForBuild(ctx Context, config Config) { // LLVM compiler wrapper options "TOOLCHAIN_RUSAGE_OUTPUT", + + // We don't want this build broken flag to cause reanalysis, so allow it through to the + // actions. + "BUILD_BROKEN_INCORRECT_PARTITION_IMAGES", }, config.BuildBrokenNinjaUsesEnvVars()...)...) }