summaryrefslogtreecommitdiff
path: root/android
diff options
context:
space:
mode:
author Jiyong Park <jiyong@google.com> 2024-01-04 22:32:01 +0900
committer Jiyong Park <jiyong@google.com> 2024-01-04 22:33:27 +0900
commit87312a2facfe2d50ab4d002dcdbc5a0f67dbd2b3 (patch)
tree49d053f6331fcfe0e8f4cd01354c47b98c3a9641 /android
parentec47e99b4dac54b9f7afe1d28530e0291425ed2b (diff)
Add BUILD_BROKEN_DONT_CHECK_SYSTEMSDK
https://android-review.git.corp.google.com/q/topic:limit_systemsdk introduced a new check for preventing the use of system SDKs above 34 from Java modules in the vendor partition. As this may break some unprepared targets, introduce BUILD_BROKEN_DONT_CHECK_SYSTEMSDK as a temporary escape hatch. This flag will be deleted eventually. Bug: 314011075 Test: Add BUILD_BROKEN_DONT_CHECK_SYSTEMSDK := true to BoardConfig.mk Change-Id: Id7901f85c221bc03fa1c15ef15dbec14b783a79a
Diffstat (limited to 'android')
-rw-r--r--android/config.go4
-rw-r--r--android/sdk_version.go2
-rw-r--r--android/variable.go1
3 files changed, 6 insertions, 1 deletions
diff --git a/android/config.go b/android/config.go
index 24b9b8a62..1ea0d949c 100644
--- a/android/config.go
+++ b/android/config.go
@@ -1849,6 +1849,10 @@ func (c *deviceConfig) BuildBrokenInputDir(name string) bool {
return InList(name, c.config.productVariables.BuildBrokenInputDirModules)
}
+func (c *deviceConfig) BuildBrokenDontCheckSystemSdk() bool {
+ return c.config.productVariables.BuildBrokenDontCheckSystemSdk
+}
+
func (c *config) BuildWarningBadOptionalUsesLibsAllowlist() []string {
return c.productVariables.BuildWarningBadOptionalUsesLibsAllowlist
}
diff --git a/android/sdk_version.go b/android/sdk_version.go
index 9c84a27f8..73568af8a 100644
--- a/android/sdk_version.go
+++ b/android/sdk_version.go
@@ -306,7 +306,7 @@ func SdkSpecFromWithConfig(config Config, str string) SdkSpec {
func (s SdkSpec) ValidateSystemSdk(ctx EarlyModuleContext) bool {
// Do some early checks. This check is currently only for Java modules. And our only concern
// is the use of "system" SDKs.
- if !isJava(ctx.Module()) || s.Kind != SdkSystem {
+ if !isJava(ctx.Module()) || s.Kind != SdkSystem || ctx.DeviceConfig().BuildBrokenDontCheckSystemSdk() {
return true
}
diff --git a/android/variable.go b/android/variable.go
index fa4cfc1fd..98440802f 100644
--- a/android/variable.go
+++ b/android/variable.go
@@ -448,6 +448,7 @@ type ProductVariables struct {
BuildBrokenVendorPropertyNamespace bool `json:",omitempty"`
BuildBrokenIncorrectPartitionImages bool `json:",omitempty"`
BuildBrokenInputDirModules []string `json:",omitempty"`
+ BuildBrokenDontCheckSystemSdk bool `json:",omitempty"`
BuildWarningBadOptionalUsesLibsAllowlist []string `json:",omitempty"`