diff options
author | 2024-10-25 12:47:16 -0700 | |
---|---|---|
committer | 2024-10-25 12:47:16 -0700 | |
commit | b304ea9b3208302c26b4db717ee6e62ede5ee31c (patch) | |
tree | 112672bb105e02ce79cf590ae34442e4cba9e23d /android/path_properties.go | |
parent | 17d5d891249cb15ac4dc87a4ee088cae2864789e (diff) |
Handle IgnorePrefer32OnDevice() in first_prefer32 path properties
This was causing missing dependency errors because the arch mutator
will replace first_prefer32 with first when IgnorePrefer32OnDevice()
is set.
Bug: 372091092
Test: m nothing with aosp/3315229 on a device that sets IgnorePrefer32OnDevice()
Change-Id: I04e4d7f95500befaf65cde58e9e16f643307b0a8
Diffstat (limited to 'android/path_properties.go')
-rw-r--r-- | android/path_properties.go | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/android/path_properties.go b/android/path_properties.go index b4fabeb94..55a4dc066 100644 --- a/android/path_properties.go +++ b/android/path_properties.go @@ -86,13 +86,18 @@ func addPathDepsForProps(ctx BottomUpMutatorContext, props []interface{}) { // properties tagged path_device_first_prefer32 get the first 32 bit target if one is available, // otherwise they use the first 64 bit target if len(pathDeviceFirstPrefer32Properties) > 0 { - firstPrefer32Target := FirstTarget(ctx.Config().Targets[Android], "lib32", "lib64") - if len(firstPrefer32Target) == 0 { + var targets []Target + if ctx.Config().IgnorePrefer32OnDevice() { + targets, _ = decodeMultilibTargets("first", ctx.Config().Targets[Android], false) + } else { + targets, _ = decodeMultilibTargets("first_prefer32", ctx.Config().Targets[Android], false) + } + if len(targets) == 0 { ctx.ModuleErrorf("Could not find a first_prefer32 target") } else { for _, s := range pathDeviceFirstPrefer32Properties { if m, t := SrcIsModuleWithTag(s); m != "" { - ctx.AddVariationDependencies(firstPrefer32Target[0].Variations(), sourceOrOutputDepTag(m, t), m) + ctx.AddVariationDependencies(targets[0].Variations(), sourceOrOutputDepTag(m, t), m) } } } |