Revert "Revert "Adds multi_install_skip_symbol_files field (defa..."

Revert submission 1893459-revert-1869814-vapex-multi-config-VKODFOVCWY

Reason for revert: Fix-forward in https://r.android.com/1894088
Reverted Changes:
I087bfe0dc:Revert "Adds a new prop context for choosing betwe...
I27a498506:Revert "Load persist props before starting apexd."...
Ib5344edc0:Revert "Allow users to choose between multi-instal...
If09bf590e:Revert "Adds multi_install_skip_symbol_files field...
I905dac14c:Revert "Demonstrate multi-installed APEXes."

Change-Id: I33210c8d3199338f9c898d719ed1797b629317af
This commit is contained in:
Daniel Norman 2021-11-16 20:28:29 +00:00
parent 9fdba2844e
commit 6cfb37af56
2 changed files with 15 additions and 0 deletions

View file

@ -103,6 +103,11 @@ func (a *apexBundle) androidMkForFiles(w io.Writer, apexBundleName, apexName, mo
return moduleNames return moduleNames
} }
// Avoid creating duplicate build rules for multi-installed APEXes.
if proptools.BoolDefault(a.properties.Multi_install_skip_symbol_files, false) {
return moduleNames
}
var postInstallCommands []string var postInstallCommands []string
for _, fi := range a.filesInfo { for _, fi := range a.filesInfo {
if a.linkToSystemLib && fi.transitiveDep && fi.availableToPlatform() { if a.linkToSystemLib && fi.transitiveDep && fi.availableToPlatform() {

View file

@ -145,6 +145,16 @@ type apexBundleProperties struct {
// Should be only used in non-system apexes (e.g. vendor: true). Default is false. // Should be only used in non-system apexes (e.g. vendor: true). Default is false.
Use_vndk_as_stable *bool Use_vndk_as_stable *bool
// Whether this is multi-installed APEX should skip installing symbol files.
// Multi-installed APEXes share the same apex_name and are installed at the same time.
// Default is false.
//
// Should be set to true for all multi-installed APEXes except the singular
// default version within the multi-installed group.
// Only the default version can install symbol files in $(PRODUCT_OUT}/apex,
// or else conflicting build rules may be created.
Multi_install_skip_symbol_files *bool
// List of SDKs that are used to build this APEX. A reference to an SDK should be either // List of SDKs that are used to build this APEX. A reference to an SDK should be either
// `name#version` or `name` which is an alias for `name#current`. If left empty, // `name#version` or `name` which is an alias for `name#current`. If left empty,
// `platform#current` is implied. This value affects all modules included in this APEX. In // `platform#current` is implied. This value affects all modules included in this APEX. In