Create image variations for sh_binary
AddFarVariationDependencies was broken, which allowed apex modules to depend on sh_binary even though they were requesting an image variation and sh_binary did not have one. Create image variations for sh_binary. Test: TestApexWithShBinary Change-Id: I1ff35ea9967edafbb7812a5e56667e4385af7e2f
This commit is contained in:
parent
ec7a91f9fa
commit
cc83efbb18
|
@ -64,6 +64,12 @@ type shBinaryProperties struct {
|
||||||
|
|
||||||
// install symlinks to the binary
|
// install symlinks to the binary
|
||||||
Symlinks []string `android:"arch_variant"`
|
Symlinks []string `android:"arch_variant"`
|
||||||
|
|
||||||
|
// Make this module available when building for ramdisk.
|
||||||
|
Ramdisk_available *bool
|
||||||
|
|
||||||
|
// Make this module available when building for recovery.
|
||||||
|
Recovery_available *bool
|
||||||
}
|
}
|
||||||
|
|
||||||
type TestProperties struct {
|
type TestProperties struct {
|
||||||
|
@ -158,6 +164,29 @@ func (s *ShBinary) Symlinks() []string {
|
||||||
return s.properties.Symlinks
|
return s.properties.Symlinks
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var _ android.ImageInterface = (*ShBinary)(nil)
|
||||||
|
|
||||||
|
func (s *ShBinary) ImageMutatorBegin(ctx android.BaseModuleContext) {}
|
||||||
|
|
||||||
|
func (s *ShBinary) CoreVariantNeeded(ctx android.BaseModuleContext) bool {
|
||||||
|
return !s.ModuleBase.InstallInRecovery() && !s.ModuleBase.InstallInRamdisk()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *ShBinary) RamdiskVariantNeeded(ctx android.BaseModuleContext) bool {
|
||||||
|
return proptools.Bool(s.properties.Ramdisk_available) || s.ModuleBase.InstallInRamdisk()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *ShBinary) RecoveryVariantNeeded(ctx android.BaseModuleContext) bool {
|
||||||
|
return proptools.Bool(s.properties.Recovery_available) || s.ModuleBase.InstallInRecovery()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *ShBinary) ExtraImageVariations(ctx android.BaseModuleContext) []string {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *ShBinary) SetImageVariation(ctx android.BaseModuleContext, variation string, module android.Module) {
|
||||||
|
}
|
||||||
|
|
||||||
func (s *ShBinary) generateAndroidBuildActions(ctx android.ModuleContext) {
|
func (s *ShBinary) generateAndroidBuildActions(ctx android.ModuleContext) {
|
||||||
s.sourceFilePath = android.PathForModuleSrc(ctx, proptools.String(s.properties.Src))
|
s.sourceFilePath = android.PathForModuleSrc(ctx, proptools.String(s.properties.Src))
|
||||||
filename := proptools.String(s.properties.Filename)
|
filename := proptools.String(s.properties.Filename)
|
||||||
|
|
Loading…
Reference in New Issue