summaryrefslogtreecommitdiff
path: root/java/base.go
diff options
context:
space:
mode:
author Jihoon Kang <jihoonkang@google.com> 2023-06-01 22:17:32 +0000
committer Jihoon Kang <jihoonkang@google.com> 2023-06-05 21:42:48 +0000
commit381c2fa27c08417b587727cc26b1c033b4fa9974 (patch)
tree8aa0005b9ecfe0d1ba43a040afb097ae0b53ebea /java/base.go
parentf508c252bb0bba6df49ceca5dbde28e9aa48cac1 (diff)
Introduce "Exclude_static_libs" property for Java modules
Exclude_static_libs property can be used to specify static libs that should not be used to build the module. The list acts as filter for static_libs. Bug: 285410821 Test: go test ./java Change-Id: Iee7f160ba88b5f64bdd265c30d47c9f51feb0f5e
Diffstat (limited to 'java/base.go')
-rw-r--r--java/base.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/java/base.go b/java/base.go
index dd02ef8af..78c8d6011 100644
--- a/java/base.go
+++ b/java/base.go
@@ -79,6 +79,9 @@ type CommonProperties struct {
// list of java libraries that will be compiled into the resulting jar
Static_libs []string `android:"arch_variant"`
+ // list of java libraries that should not be used to build this module
+ Exclude_static_libs []string `android:"arch_variant"`
+
// manifest file to be included in resulting jar
Manifest *string `android:"path"`
@@ -724,6 +727,8 @@ func (j *Module) deps(ctx android.BottomUpMutatorContext) {
}
libDeps := ctx.AddVariationDependencies(nil, libTag, j.properties.Libs...)
+
+ j.properties.Static_libs = android.RemoveListFromList(j.properties.Static_libs, j.properties.Exclude_static_libs)
ctx.AddVariationDependencies(nil, staticLibTag, j.properties.Static_libs...)
// Add dependency on libraries that provide additional hidden api annotations.