sh_binary prefer 32bit when TARGET_PREFER_32_BIT

The module type can be referenced in the 'binaries' property of an
APEX, where it is expected that the binary modules prefer 32bit arch
when the build is configured with TARGET_PREFER_32_BIT. Satisfying the
expectation by allowing the module types to use 32bit arch in the
case.

Bug: 144532908
Test: choosecombo 1 aosp_arm64 userdebug; TARGET_PREFER_32_BIT=true m;
Change-Id: I2120b40e3230aa695b4c38b850c1ea32e46cbbfb
This commit is contained in:
Jiyong Park 2019-11-19 12:57:57 +09:00
parent c6e9f92cfa
commit 6ac3cac7d1
1 changed files with 3 additions and 0 deletions

View File

@ -196,6 +196,9 @@ func InitShBinaryModule(s *ShBinary) {
// executable binary to <partition>/bin. // executable binary to <partition>/bin.
func ShBinaryFactory() Module { func ShBinaryFactory() Module {
module := &ShBinary{} module := &ShBinary{}
module.Prefer32(func(ctx BaseModuleContext, base *ModuleBase, class OsClass) bool {
return class == Device && ctx.Config().DevicePrefer32BitExecutables()
})
InitShBinaryModule(module) InitShBinaryModule(module)
InitAndroidArchModule(module, HostAndDeviceSupported, MultilibFirst) InitAndroidArchModule(module, HostAndDeviceSupported, MultilibFirst)
return module return module