diff options
Diffstat (limited to 'android/arch.go')
| -rw-r--r-- | android/arch.go | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/android/arch.go b/android/arch.go index f4b0d66d9..f505ec653 100644 --- a/android/arch.go +++ b/android/arch.go @@ -811,10 +811,16 @@ func osMutator(bpctx blueprint.BottomUpMutatorContext) { } } +type archDepTag struct { + blueprint.BaseDependencyTag + name string +} + // Identifies the dependency from CommonOS variant to the os specific variants. -type commonOSTag struct{ blueprint.BaseDependencyTag } +var commonOsToOsSpecificVariantTag = archDepTag{name: "common os to os specific"} -var commonOsToOsSpecificVariantTag = commonOSTag{} +// Identifies the dependency from arch variant to the common variant for a "common_first" multilib. +var firstArchToCommonArchDepTag = archDepTag{name: "first arch to common arch"} // Get the OsType specific variants for the current CommonOS variant. // @@ -831,7 +837,6 @@ func GetOsSpecificVariantsOfCommonOSVariant(mctx BaseModuleContext) []Module { } } }) - return variants } @@ -955,6 +960,12 @@ func archMutator(bpctx blueprint.BottomUpMutatorContext) { addTargetProperties(m, targets[i], multiTargets, i == 0) m.base().setArchProperties(mctx) } + + if multilib == "common_first" && len(modules) >= 2 { + for i := range modules[1:] { + mctx.AddInterVariantDependency(firstArchToCommonArchDepTag, modules[i+1], modules[0]) + } + } } func addTargetProperties(m Module, target Target, multiTargets []Target, primaryTarget bool) { |