Merge "hostdex:true modules are available for platform"
This commit is contained in:
@@ -24,7 +24,7 @@ import (
|
||||
func (library *Library) AndroidMkEntriesHostDex() android.AndroidMkEntries {
|
||||
hostDexNeeded := Bool(library.deviceProperties.Hostdex) && !library.Host()
|
||||
if !library.IsForPlatform() {
|
||||
// If the platform variant is available, don't emit hostdex modules from the APEX variants
|
||||
// Don't emit hostdex modules from the APEX variants
|
||||
hostDexNeeded = false
|
||||
}
|
||||
|
||||
@@ -62,8 +62,14 @@ func (library *Library) AndroidMkEntries() []android.AndroidMkEntries {
|
||||
var entriesList []android.AndroidMkEntries
|
||||
|
||||
mainEntries := android.AndroidMkEntries{Disabled: true}
|
||||
|
||||
// For a java library built for an APEX, we don't need Make module
|
||||
if library.IsForPlatform() {
|
||||
hideFromMake := !library.IsForPlatform()
|
||||
// If not available for platform, don't emit to make.
|
||||
if !library.ApexModuleBase.AvailableFor(android.AvailableToPlatform) {
|
||||
hideFromMake = true
|
||||
}
|
||||
if !hideFromMake {
|
||||
mainEntries = android.AndroidMkEntries{
|
||||
Class: "JAVA_LIBRARIES",
|
||||
OutputFile: android.OptionalPathForPath(library.outputFile),
|
||||
|
10
java/java.go
10
java/java.go
@@ -559,6 +559,16 @@ func (j *Module) targetSdkVersion() string {
|
||||
return j.sdkVersion()
|
||||
}
|
||||
|
||||
func (j *Module) AvailableFor(what string) bool {
|
||||
if what == android.AvailableToPlatform && Bool(j.deviceProperties.Hostdex) {
|
||||
// Exception: for hostdex: true libraries, the platform variant is created
|
||||
// even if it's not marked as available to platform. In that case, the platform
|
||||
// variant is used only for the hostdex and not installed to the device.
|
||||
return true
|
||||
}
|
||||
return j.ApexModuleBase.AvailableFor(what)
|
||||
}
|
||||
|
||||
func (j *Module) deps(ctx android.BottomUpMutatorContext) {
|
||||
if ctx.Device() {
|
||||
sdkDep := decodeSdkDep(ctx, sdkContext(j))
|
||||
|
Reference in New Issue
Block a user