Merge "Fix bugs from cc_api_library build"

This commit is contained in:
Treehugger Robot
2022-08-22 02:28:53 +00:00
committed by Gerrit Code Review
2 changed files with 22 additions and 0 deletions

View File

@@ -23,6 +23,7 @@ import (
"strings"
"android/soong/android"
"android/soong/multitree"
)
var (
@@ -625,6 +626,24 @@ func (p *prebuiltBinaryLinker) AndroidMkEntries(ctx AndroidMkContext, entries *a
androidMkWriteAllowUndefinedSymbols(p.baseLinker, entries)
}
func (a *apiLibraryDecorator) AndroidMkEntries(ctx AndroidMkContext, entries *android.AndroidMkEntries) {
entries.Class = "SHARED_LIBRARIES"
entries.SubName += multitree.GetApiImportSuffix()
entries.ExtraEntries = append(entries.ExtraEntries, func(_ android.AndroidMkExtraEntriesContext, entries *android.AndroidMkEntries) {
a.libraryDecorator.androidMkWriteExportedFlags(entries)
src := *a.properties.Src
path, file := filepath.Split(src)
stem, suffix, ext := android.SplitFileExt(file)
entries.SetString("LOCAL_BUILT_MODULE_STEM", "$(LOCAL_MODULE)"+ext)
entries.SetString("LOCAL_MODULE_SUFFIX", suffix)
entries.SetString("LOCAL_MODULE_STEM", stem)
entries.SetString("LOCAL_MODULE_PATH", path)
entries.SetBool("LOCAL_UNINSTALLABLE_MODULE", true)
entries.SetString("LOCAL_SOONG_TOC", a.toc().String())
})
}
func androidMkWriteAllowUndefinedSymbols(linker *baseLinker, entries *android.AndroidMkEntries) {
allow := linker.Properties.Allow_undefined_symbols
if allow != nil {

View File

@@ -68,6 +68,9 @@ func CcApiLibraryFactory() android.Module {
apiLibraryDecorator.baseLinker.Properties.System_shared_libs = []string{}
}
apiLibraryDecorator.baseLinker.Properties.No_libcrt = BoolPtr(true)
apiLibraryDecorator.baseLinker.Properties.Nocrt = BoolPtr(true)
module.Init()
return module