Add a property to rust_ffi targets to exclude them from APEXes.

This is a temporary measure until stubs are properly supported by rust_ffi targets.

Bug: 361441210
Bug: 362509506
Change-Id: Ieabd4e3abf442de660f39ec6c5776f5832b25e14
Test: manual
This commit is contained in:
Ashutosh Agarwal
2024-08-27 17:13:12 +00:00
parent 4b98396c64
commit 46e4fad202
3 changed files with 30 additions and 0 deletions

View File

@@ -294,6 +294,15 @@ func (mod *Module) StaticExecutable() bool {
return mod.StaticallyLinked()
}
func (mod *Module) ApexExclude() bool {
if mod.compiler != nil {
if library, ok := mod.compiler.(libraryInterface); ok {
return library.apexExclude()
}
}
return false
}
func (mod *Module) Object() bool {
// Rust has no modules which produce only object files.
return false
@@ -1863,6 +1872,10 @@ func (mod *Module) DepIsInSameApex(ctx android.BaseModuleContext, dep android.Mo
return false
}
if rustDep, ok := dep.(*Module); ok && rustDep.ApexExclude() {
return false
}
return true
}