Merge "android_app_import is now ApexModule" am: 65c1d14cfa am: 2b4f7797d9

Change-Id: If2ed96cdf6c15bbfdc0619a478303a0836b55e0f
This commit is contained in:
Treehugger Robot 2020-04-24 12:41:32 +00:00 committed by Automerger Merge Worker
commit 571bb52259
3 changed files with 21 additions and 1 deletions

View file

@ -3482,6 +3482,7 @@ func TestApexWithAppImports(t *testing.T) {
dex_preopt: { dex_preopt: {
enabled: false, enabled: false,
}, },
apex_available: ["myapex"],
} }
android_app_import { android_app_import {
@ -3493,6 +3494,7 @@ func TestApexWithAppImports(t *testing.T) {
enabled: false, enabled: false,
}, },
filename: "AwesomePrebuiltAppFooPriv.apk", filename: "AwesomePrebuiltAppFooPriv.apk",
apex_available: ["myapex"],
} }
`) `)
@ -3534,6 +3536,7 @@ func TestApexWithAppImportsPrefer(t *testing.T) {
filename: "AppFooPrebuilt.apk", filename: "AppFooPrebuilt.apk",
presigned: true, presigned: true,
prefer: true, prefer: true,
apex_available: ["myapex"],
} }
`, withFiles(map[string][]byte{ `, withFiles(map[string][]byte{
"AppFooPrebuilt.apk": nil, "AppFooPrebuilt.apk": nil,

View file

@ -626,6 +626,11 @@ func (dstubs *Droidstubs) AndroidMkEntries() []android.AndroidMkEntries {
} }
func (a *AndroidAppImport) AndroidMkEntries() []android.AndroidMkEntries { func (a *AndroidAppImport) AndroidMkEntries() []android.AndroidMkEntries {
if !a.IsForPlatform() {
// The non-platform variant is placed inside APEX. No reason to
// make it available to Make.
return nil
}
return []android.AndroidMkEntries{android.AndroidMkEntries{ return []android.AndroidMkEntries{android.AndroidMkEntries{
Class: "APPS", Class: "APPS",
OutputFile: android.OptionalPathForPath(a.outputFile), OutputFile: android.OptionalPathForPath(a.outputFile),

View file

@ -986,6 +986,7 @@ func OverrideAndroidTestModuleFactory() android.Module {
type AndroidAppImport struct { type AndroidAppImport struct {
android.ModuleBase android.ModuleBase
android.DefaultableModuleBase android.DefaultableModuleBase
android.ApexModuleBase
prebuilt android.Prebuilt prebuilt android.Prebuilt
properties AndroidAppImportProperties properties AndroidAppImportProperties
@ -1223,7 +1224,9 @@ func (a *AndroidAppImport) generateAndroidBuildActions(ctx android.ModuleContext
// TODO: Optionally compress the output apk. // TODO: Optionally compress the output apk.
a.installPath = ctx.InstallFile(installDir, apkFilename, a.outputFile) if a.IsForPlatform() {
a.installPath = ctx.InstallFile(installDir, apkFilename, a.outputFile)
}
// TODO: androidmk converter jni libs // TODO: androidmk converter jni libs
} }
@ -1274,6 +1277,13 @@ func (a *AndroidAppImport) Privileged() bool {
return Bool(a.properties.Privileged) return Bool(a.properties.Privileged)
} }
func (a *AndroidAppImport) DepIsInSameApex(ctx android.BaseModuleContext, dep android.Module) bool {
// android_app_import might have extra dependencies via uses_libs property.
// Don't track the dependency as we don't automatically add those libraries
// to the classpath. It should be explicitly added to java_libs property of APEX
return false
}
func createVariantGroupType(variants []string, variantGroupName string) reflect.Type { func createVariantGroupType(variants []string, variantGroupName string) reflect.Type {
props := reflect.TypeOf((*AndroidAppImportProperties)(nil)) props := reflect.TypeOf((*AndroidAppImportProperties)(nil))
@ -1320,6 +1330,7 @@ func AndroidAppImportFactory() android.Module {
module.processVariants(ctx) module.processVariants(ctx)
}) })
android.InitApexModule(module)
InitJavaModule(module, android.DeviceSupported) InitJavaModule(module, android.DeviceSupported)
android.InitSingleSourcePrebuiltModule(module, &module.properties, "Apk") android.InitSingleSourcePrebuiltModule(module, &module.properties, "Apk")
@ -1357,6 +1368,7 @@ func AndroidTestImportFactory() android.Module {
module.processVariants(ctx) module.processVariants(ctx)
}) })
android.InitApexModule(module)
InitJavaModule(module, android.DeviceSupported) InitJavaModule(module, android.DeviceSupported)
android.InitSingleSourcePrebuiltModule(module, &module.properties, "Apk") android.InitSingleSourcePrebuiltModule(module, &module.properties, "Apk")