Use soong_cc_prebuilt.mk instead of prebuilt.mk for Soong cc modules

Export Soong cc modules to Make using a new soong_cc_prebuilt.mk that
bypasses all of prebuilt_internal.mk, dynamic_binary.mk and binary.mk.
This also means that stripping is handled in Soong instead of Make.

Relands If9008c50920779048480f5eeeb0084f26006c998 with fixes for
mac builds.

Bug: 113936524
Test: m checkbuild
Change-Id: I9710ff57f0793f36eb889eabd08bd60a365a88dd
This commit is contained in:
Colin Cross
2018-09-04 16:28:17 -07:00
parent b496cfd9d2
commit b60190a4f8
9 changed files with 72 additions and 97 deletions

View File

@@ -237,6 +237,9 @@ type libraryDecorator struct {
// not included in the NDK.
ndkSysrootPath android.Path
// Location of the linked, unstripped library for shared libraries
unstrippedOutputFile android.Path
// Decorated interafaces
*baseCompiler
*baseLinker
@@ -562,6 +565,8 @@ func (library *libraryDecorator) linkShared(ctx ModuleContext,
library.stripper.strip(ctx, outputFile, strippedOutputFile, builderFlags)
}
library.unstrippedOutputFile = outputFile
if Bool(library.baseLinker.Properties.Use_version_lib) && ctx.Host() {
versionedOutputFile := outputFile
outputFile = android.PathForModuleOut(ctx, "unversioned", fileName)