rust: Add support for bootstrap linker.

Adds the 'bootstrap' property to Rust modules to set the linker to the
bootstrap linker.

Bug: 194276829
Test: set bootstrap: true on module, checked .interp section on output.
Test: bootstrapped binary runs.
Change-Id: I459c8194902cfea3c44b060e70d28a43fcba3ade
This commit is contained in:
Ivan Lozano
2021-07-22 10:52:06 -04:00
parent 719371072f
commit a2268635f4
3 changed files with 31 additions and 1 deletions

View File

@@ -85,6 +85,10 @@ type BaseProperties struct {
VendorRamdiskVariantNeeded bool `blueprint:"mutated"`
ExtraVariants []string `blueprint:"mutated"`
// Allows this module to use non-APEX version of libraries. Useful
// for building binaries that are started before APEXes are activated.
Bootstrap *bool
// Used by vendor snapshot to record dependencies from snapshot modules.
SnapshotSharedLibs []string `blueprint:"mutated"`
SnapshotStaticLibs []string `blueprint:"mutated"`
@@ -288,7 +292,7 @@ func (mod *Module) UseVndk() bool {
}
func (mod *Module) Bootstrap() bool {
return false
return Bool(mod.Properties.Bootstrap)
}
func (mod *Module) MustUseVendorVariant() bool {