Do not hide VNDK prebuilts from make
Flattened APEXes don't install modules hidden from make. This CL unhides VNDK prebuilt modules to make VNDK APEX work correctly. The suffix for VNDK prebuilt is still omitted if the version of prebuilt is same with BOARD_VNDK_VERSION. Bug: 149542527 Test: build arm64 GSI and flash Test: Set BOARD_VNDK_VERSION and build Change-Id: I54a7c14c93eccfefc81603ec3bb474a031bc55af
This commit is contained in:
@@ -413,12 +413,9 @@ func (c *llndkStubDecorator) AndroidMk(ctx AndroidMkContext, ret *android.Androi
|
||||
}
|
||||
|
||||
func (c *vndkPrebuiltLibraryDecorator) AndroidMk(ctx AndroidMkContext, ret *android.AndroidMkData) {
|
||||
// Each vndk prebuilt is exported to androidMk only when BOARD_VNDK_VERSION != current
|
||||
// and the version of the prebuilt is same as BOARD_VNDK_VERSION.
|
||||
ret.Class = "SHARED_LIBRARIES"
|
||||
|
||||
// shouldn't add any suffixes due to mk modules
|
||||
ret.SubName = ""
|
||||
ret.SubName = c.androidMkSuffix
|
||||
|
||||
ret.Extra = append(ret.Extra, func(w io.Writer, outputFile android.Path) {
|
||||
c.libraryDecorator.androidMkWriteExportedFlags(w)
|
||||
|
@@ -72,7 +72,8 @@ type vndkPrebuiltProperties struct {
|
||||
|
||||
type vndkPrebuiltLibraryDecorator struct {
|
||||
*libraryDecorator
|
||||
properties vndkPrebuiltProperties
|
||||
properties vndkPrebuiltProperties
|
||||
androidMkSuffix string
|
||||
}
|
||||
|
||||
func (p *vndkPrebuiltLibraryDecorator) Name(name string) string {
|
||||
@@ -153,6 +154,13 @@ func (p *vndkPrebuiltLibraryDecorator) link(ctx ModuleContext,
|
||||
p.tocFile = android.OptionalPathForPath(tocFile)
|
||||
TransformSharedObjectToToc(ctx, in, tocFile, builderFlags)
|
||||
|
||||
p.androidMkSuffix = p.NameSuffix()
|
||||
|
||||
vndkVersion := ctx.DeviceConfig().VndkVersion()
|
||||
if vndkVersion == p.version() {
|
||||
p.androidMkSuffix = ""
|
||||
}
|
||||
|
||||
return in
|
||||
}
|
||||
|
||||
@@ -224,15 +232,6 @@ func vndkPrebuiltSharedLibrary() *Module {
|
||||
&prebuilt.properties,
|
||||
)
|
||||
|
||||
android.AddLoadHook(module, func(ctx android.LoadHookContext) {
|
||||
// Only vndk snapshots of BOARD_VNDK_VERSION will be used when building.
|
||||
if prebuilt.version() != ctx.DeviceConfig().VndkVersion() {
|
||||
module.SkipInstall()
|
||||
module.Properties.HideFromMake = true
|
||||
return
|
||||
}
|
||||
})
|
||||
|
||||
return module
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user