Support no configured device architectures
There are some builds where we only want to build host tools, and we may not have a valid device configuration. Support 0 device architectures and modules that don't have any configured way to build. Change-Id: I732251e1cd3cdbfafbc6ef6a550e33e653876f7c
This commit is contained in:
parent
76f0827ce3
commit
3f32f03067
|
@ -435,6 +435,11 @@ func ArchMutator(mctx BottomUpMutatorContext) {
|
|||
moduleTargets = append(moduleTargets, targets...)
|
||||
}
|
||||
|
||||
if len(moduleTargets) == 0 {
|
||||
module.base().commonProperties.Enabled = boolPtr(false)
|
||||
return
|
||||
}
|
||||
|
||||
targetNames := make([]string, len(moduleTargets))
|
||||
|
||||
for i, target := range moduleTargets {
|
||||
|
@ -762,21 +767,19 @@ func decodeTargetProductVariables(config Config) (map[OsClass][]Target, error) {
|
|||
}
|
||||
}
|
||||
|
||||
if variables.DeviceArch == nil {
|
||||
return nil, fmt.Errorf("No device primary architecture set")
|
||||
}
|
||||
if variables.DeviceArch != nil && *variables.DeviceArch != "" {
|
||||
addTarget(Android, *variables.DeviceArch, variables.DeviceArchVariant,
|
||||
variables.DeviceCpuVariant, variables.DeviceAbi)
|
||||
|
||||
addTarget(Android, *variables.DeviceArch, variables.DeviceArchVariant,
|
||||
variables.DeviceCpuVariant, variables.DeviceAbi)
|
||||
if variables.DeviceSecondaryArch != nil && *variables.DeviceSecondaryArch != "" {
|
||||
addTarget(Android, *variables.DeviceSecondaryArch,
|
||||
variables.DeviceSecondaryArchVariant, variables.DeviceSecondaryCpuVariant,
|
||||
variables.DeviceSecondaryAbi)
|
||||
|
||||
if variables.DeviceSecondaryArch != nil && *variables.DeviceSecondaryArch != "" {
|
||||
addTarget(Android, *variables.DeviceSecondaryArch,
|
||||
variables.DeviceSecondaryArchVariant, variables.DeviceSecondaryCpuVariant,
|
||||
variables.DeviceSecondaryAbi)
|
||||
|
||||
deviceArches := targets[Device]
|
||||
if deviceArches[0].Arch.ArchType.Multilib == deviceArches[1].Arch.ArchType.Multilib {
|
||||
deviceArches[1].Arch.Native = false
|
||||
deviceArches := targets[Device]
|
||||
if deviceArches[0].Arch.ArchType.Multilib == deviceArches[1].Arch.ArchType.Multilib {
|
||||
deviceArches[1].Arch.Native = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue