diff options
author | 2023-08-25 20:23:32 -0700 | |
---|---|---|
committer | 2023-08-26 08:26:18 -0700 | |
commit | 8f75585b375624c6e72599bc4366f1d636a4a475 (patch) | |
tree | c4f506550e74c83aa1a62bbe0eb733a205f4905b | |
parent | 1725b20d144e7f7054e63f88e297c5461e6dbe9e (diff) |
Add aconfig annotations for java_aconfig_library
Test: m
Bug: 289087078
Change-Id: I860b91f984b2f2c596360490337fb25a4df7a988
-rw-r--r-- | aconfig/java_aconfig_library.go | 3 | ||||
-rw-r--r-- | java/generated_java_library.go | 21 | ||||
-rw-r--r-- | java/testing.go | 2 |
3 files changed, 26 insertions, 0 deletions
diff --git a/aconfig/java_aconfig_library.go b/aconfig/java_aconfig_library.go index 53f8bd1ba..4db0ef794 100644 --- a/aconfig/java_aconfig_library.go +++ b/aconfig/java_aconfig_library.go @@ -52,6 +52,9 @@ func (callbacks *JavaAconfigDeclarationsLibraryCallbacks) DepsMutator(module *ja } else { ctx.AddDependency(ctx.Module(), declarationsTag, declarations) } + + // Add aconfig-annotations-lib as a dependency for the optimization / code stripping annotations + module.AddSharedLibrary("aconfig-annotations-lib") } func (callbacks *JavaAconfigDeclarationsLibraryCallbacks) GenerateSourceJarBuildActions(module *java.GeneratedJavaLibraryModule, ctx android.ModuleContext) android.Path { diff --git a/java/generated_java_library.go b/java/generated_java_library.go index 1cab6acc4..578237e3b 100644 --- a/java/generated_java_library.go +++ b/java/generated_java_library.go @@ -22,6 +22,10 @@ type GeneratedJavaLibraryModule struct { Library callbacks GeneratedJavaLibraryCallbacks moduleName string + + // true if we've already called DepsMutator. Can't call AddLibrary or AddSharedLibrary + // after DepsMutator. + depsMutatorDone bool } type GeneratedJavaLibraryCallbacks interface { @@ -59,8 +63,25 @@ func GeneratedJavaLibraryModuleFactory(moduleName string, callbacks GeneratedJav return module } +// Add a java shared library as a dependency, as if they had said `libs: [ "name" ]` +func (module *GeneratedJavaLibraryModule) AddSharedLibrary(name string) { + if module.depsMutatorDone { + panic("GeneratedJavaLibraryModule.AddLibrary called after DepsMutator") + } + module.Library.properties.Libs = append(module.Library.properties.Libs, name) +} + +// Add a java shared library as a dependency, as if they had said `libs: [ "name" ]` +func (module *GeneratedJavaLibraryModule) AddStaticLibrary(name string) { + if module.depsMutatorDone { + panic("GeneratedJavaLibraryModule.AddStaticLibrary called after DepsMutator") + } + module.Library.properties.Static_libs = append(module.Library.properties.Static_libs, name) +} + func (module *GeneratedJavaLibraryModule) DepsMutator(ctx android.BottomUpMutatorContext) { module.callbacks.DepsMutator(module, ctx) + module.depsMutatorDone = true module.Library.DepsMutator(ctx) } diff --git a/java/testing.go b/java/testing.go index 3a238d76f..7f6ee57d3 100644 --- a/java/testing.go +++ b/java/testing.go @@ -385,6 +385,8 @@ func gatherRequiredDepsForTest() string { "kotlin-stdlib-jdk8", "kotlin-annotations", "stub-annotations", + + "aconfig-annotations-lib", } for _, extra := range extraModules { |