diff options
author | Martin Stjernholm <mast@google.com> | 2021-09-06 12:26:43 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2021-09-06 12:26:43 +0000 |
commit | c3d9e36be37fb80ca83c771e7cde01694cbb497a (patch) | |
tree | 206094f7eddf111d88dcd4dd65460a4fd290ec11 | |
parent | b4d93166161b01a49006b8204d73ddee567374dd (diff) | |
parent | 830152c3cbdae9095c8018f21d1588793e41160b (diff) | |
download | soong-c3d9e36be37fb80ca83c771e7cde01694cbb497a.tar.gz |
Merge "Add exclude_runtime_libs to more targets." into sc-qpr1-dev
-rw-r--r-- | cc/linker.go | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/cc/linker.go b/cc/linker.go index 449b9ad96..88619f392 100644 --- a/cc/linker.go +++ b/cc/linker.go @@ -94,6 +94,9 @@ type BaseLinkerProperties struct { // vendor variants and this module uses VNDK. Runtime_libs []string `android:"arch_variant"` + // list of runtime libs that should not be installed along with this module. + Exclude_runtime_libs []string `android:"arch_variant"` + Target struct { Vendor, Product struct { // list of shared libs that only should be used to build vendor or @@ -116,8 +119,8 @@ type BaseLinkerProperties struct { // product variant of the C/C++ module. Exclude_header_libs []string - // list of runtime libs that should not be installed along with - // vendor or variant of the C/C++ module. + // list of runtime libs that should not be installed along with the + // vendor or product variant of the C/C++ module. Exclude_runtime_libs []string // version script for vendor or product variant @@ -143,6 +146,10 @@ type BaseLinkerProperties struct { // list of header libs that should not be used to build the recovery variant // of the C/C++ module. Exclude_header_libs []string + + // list of runtime libs that should not be installed along with the + // recovery variant of the C/C++ module. + Exclude_runtime_libs []string } Ramdisk struct { // list of static libs that only should be used to build the recovery @@ -156,6 +163,10 @@ type BaseLinkerProperties struct { // list of static libs that should not be used to build // the ramdisk variant of the C/C++ module. Exclude_static_libs []string + + // list of runtime libs that should not be installed along with the + // ramdisk variant of the C/C++ module. + Exclude_runtime_libs []string } Vendor_ramdisk struct { // list of shared libs that should not be used to build @@ -165,6 +176,10 @@ type BaseLinkerProperties struct { // list of static libs that should not be used to build // the vendor ramdisk variant of the C/C++ module. Exclude_static_libs []string + + // list of runtime libs that should not be installed along with the + // vendor ramdisk variant of the C/C++ module. + Exclude_runtime_libs []string } Platform struct { // list of shared libs that should be use to build the platform variant @@ -178,7 +193,7 @@ type BaseLinkerProperties struct { // the C/C++ module. Exclude_shared_libs []string - // list of static libs that should not be used to build the apex ramdisk + // list of static libs that should not be used to build the apex // variant of the C/C++ module. Exclude_static_libs []string } @@ -247,6 +262,7 @@ func (linker *baseLinker) linkerDeps(ctx DepsContext, deps Deps) Deps { deps.SharedLibs = removeListFromList(deps.SharedLibs, linker.Properties.Exclude_shared_libs) deps.StaticLibs = removeListFromList(deps.StaticLibs, linker.Properties.Exclude_static_libs) deps.WholeStaticLibs = removeListFromList(deps.WholeStaticLibs, linker.Properties.Exclude_static_libs) + deps.RuntimeLibs = removeListFromList(deps.RuntimeLibs, linker.Properties.Exclude_runtime_libs) // Record the libraries that need to be excluded when building for APEX. Unlike other // target.*.exclude_* properties, SharedLibs and StaticLibs are not modified here because @@ -296,6 +312,7 @@ func (linker *baseLinker) linkerDeps(ctx DepsContext, deps Deps) Deps { deps.ReexportHeaderLibHeaders = removeListFromList(deps.ReexportHeaderLibHeaders, linker.Properties.Target.Recovery.Exclude_header_libs) deps.ReexportStaticLibHeaders = removeListFromList(deps.ReexportStaticLibHeaders, linker.Properties.Target.Recovery.Exclude_static_libs) deps.WholeStaticLibs = removeListFromList(deps.WholeStaticLibs, linker.Properties.Target.Recovery.Exclude_static_libs) + deps.RuntimeLibs = removeListFromList(deps.RuntimeLibs, linker.Properties.Target.Recovery.Exclude_runtime_libs) } if ctx.inRamdisk() { @@ -305,6 +322,7 @@ func (linker *baseLinker) linkerDeps(ctx DepsContext, deps Deps) Deps { deps.StaticLibs = removeListFromList(deps.StaticLibs, linker.Properties.Target.Ramdisk.Exclude_static_libs) deps.ReexportStaticLibHeaders = removeListFromList(deps.ReexportStaticLibHeaders, linker.Properties.Target.Ramdisk.Exclude_static_libs) deps.WholeStaticLibs = removeListFromList(deps.WholeStaticLibs, linker.Properties.Target.Ramdisk.Exclude_static_libs) + deps.RuntimeLibs = removeListFromList(deps.RuntimeLibs, linker.Properties.Target.Ramdisk.Exclude_runtime_libs) } if ctx.inVendorRamdisk() { @@ -313,6 +331,7 @@ func (linker *baseLinker) linkerDeps(ctx DepsContext, deps Deps) Deps { deps.StaticLibs = removeListFromList(deps.StaticLibs, linker.Properties.Target.Vendor_ramdisk.Exclude_static_libs) deps.ReexportStaticLibHeaders = removeListFromList(deps.ReexportStaticLibHeaders, linker.Properties.Target.Vendor_ramdisk.Exclude_static_libs) deps.WholeStaticLibs = removeListFromList(deps.WholeStaticLibs, linker.Properties.Target.Vendor_ramdisk.Exclude_static_libs) + deps.RuntimeLibs = removeListFromList(deps.RuntimeLibs, linker.Properties.Target.Vendor_ramdisk.Exclude_runtime_libs) } if !ctx.useSdk() { |