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

Commit f2635ec4 authored by Martin Stjernholm's avatar Martin Stjernholm
Browse files

Always track transitive dependencies for host.

This fixes a regression in https://r.android.com/1515154 when building
the host ART APEX (com.android.art.host).

Test: art/build/apex/runtests.sh
Bug: 166468760
Change-Id: I39a00019b7bfa77a865e7287c66add3566b34d87
parent fc0cba0b
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -1682,8 +1682,15 @@ func (a *apexBundle) GenerateAndroidBuildActions(ctx android.ModuleContext) {
						}
						af := apexFileForNativeLibrary(ctx, cc, handleSpecialLibs)
						af.transitiveDep = true

						// Always track transitive dependencies for host.
						if a.Host() {
							filesInfo = append(filesInfo, af)
							return true
						}

						abInfo := ctx.Provider(ApexBundleInfoProvider).(ApexBundleInfo)
						if !a.Host() && !abInfo.Contents.DirectlyInApex(depName) && (cc.IsStubs() || cc.HasStubsVariants()) {
						if !abInfo.Contents.DirectlyInApex(depName) && (cc.IsStubs() || cc.HasStubsVariants()) {
							// If the dependency is a stubs lib, don't include it in this APEX,
							// but make sure that the lib is installed on the device.
							// In case no APEX is having the lib, the lib is installed to the system
@@ -1716,7 +1723,8 @@ func (a *apexBundle) GenerateAndroidBuildActions(ctx android.ModuleContext) {
						// else-if clause for the indirect dependencies.
						// Currently, that's impossible because we would
						// like to record requiredNativeLibs even when
						// DepIsInSameAPex is false.
						// DepIsInSameAPex is false. We also shouldn't do
						// this for host.
						if !am.DepIsInSameApex(ctx, am) {
							return false
						}