Merge "Enable overrides and add stem library properties"

This commit is contained in:
Dimitry Ivanov
2018-11-17 09:03:29 +00:00
committed by Gerrit Code Review
2 changed files with 17 additions and 1 deletions

View File

@@ -143,6 +143,9 @@ func (library *libraryDecorator) AndroidMk(ctx AndroidMkContext, ret *android.An
ret.Extra = append(ret.Extra, func(w io.Writer, outputFile android.Path) {
fmt.Fprintln(w, "LOCAL_SOONG_TOC :=", library.toc().String())
fmt.Fprintln(w, "LOCAL_SOONG_UNSTRIPPED_BINARY :=", library.unstrippedOutputFile.String())
if len(library.Properties.Overrides) > 0 {
fmt.Fprintln(w, "LOCAL_OVERRIDES_MODULES := "+strings.Join(library.Properties.Overrides, " "))
}
})
} else if library.header() {
ret.Class = "HEADER_LIBRARIES"

View File

@@ -77,6 +77,16 @@ type LibraryProperties struct {
// List versions to generate stubs libs for.
Versions []string
}
// set the name of the output
Stem *string `android:"arch_variant"`
// Names of modules to be overridden. Listed modules can only be other shared libraries
// (in Make or Soong).
// This does not completely prevent installation of the overridden libraries, but if both
// binaries would be installed by default (in PRODUCT_PACKAGES) the other library will be removed
// from PRODUCT_PACKAGES.
Overrides []string
}
type LibraryMutatedProperties struct {
@@ -428,9 +438,12 @@ type libraryInterface interface {
func (library *libraryDecorator) getLibName(ctx ModuleContext) string {
name := library.libName
if name == "" {
name = String(library.Properties.Stem)
if name == "" {
name = ctx.baseModuleName()
}
}
if ctx.isVndkExt() {
name = ctx.getVndkExtendsModuleName()