Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1913574b authored by Victor Khimenko's avatar Victor Khimenko Committed by android-build-merger
Browse files

Merge "Make arm_on_x86 symmetric" am: 9f663060

am: 069a412c

Change-Id: Ie345c0303e5f7bb54c698e14ac4d9a793cbea9a8
parents 297cae95 069a412c
Loading
Loading
Loading
Loading
+28 −4
Original line number Diff line number Diff line
@@ -784,14 +784,18 @@ func (a *ModuleBase) setArchProperties(ctx BottomUpMutatorContext) {
				a.appendProperties(ctx, genProps, targetProp, field, prefix)
			}

			if arch.ArchType == X86 && (hasArmAbi(arch) ||
				hasArmAndroidArch(ctx.Config().Targets[Device])) {
			if (arch.ArchType == X86 && (hasArmAbi(arch) ||
				hasArmAndroidArch(ctx.Config().Targets[Device]))) ||
				(arch.ArchType == Arm &&
					hasX86AndroidArch(ctx.Config().Targets[Device])) {
				field := "Arm_on_x86"
				prefix := "target.arm_on_x86"
				a.appendProperties(ctx, genProps, targetProp, field, prefix)
			}
			if arch.ArchType == X86_64 && (hasArmAbi(arch) ||
				hasArmAndroidArch(ctx.Config().Targets[Device])) {
			if (arch.ArchType == X86_64 && (hasArmAbi(arch) ||
				hasArmAndroidArch(ctx.Config().Targets[Device]))) ||
				(arch.ArchType == Arm &&
					hasX8664AndroidArch(ctx.Config().Targets[Device])) {
				field := "Arm_on_x86_64"
				prefix := "target.arm_on_x86_64"
				a.appendProperties(ctx, genProps, targetProp, field, prefix)
@@ -914,6 +918,26 @@ func hasArmAndroidArch(targets []Target) bool {
	return false
}

// hasX86Arch returns true if targets has at least x86 Android arch
func hasX86AndroidArch(targets []Target) bool {
	for _, target := range targets {
		if target.Os == Android && target.Arch.ArchType == X86 {
			return true
		}
	}
	return false
}

// hasX8664Arch returns true if targets has at least x86_64 Android arch
func hasX8664AndroidArch(targets []Target) bool {
	for _, target := range targets {
		if target.Os == Android && target.Arch.ArchType == X86_64 {
			return true
		}
	}
	return false
}

type archConfig struct {
	arch        string
	archVariant string