Revert "Move apex module installation into Soong"
This reverts commit e3d156a622
.
Reason for revert: b/206119621
Bug: 204136549
Change-Id: I380223b86660c27bea8f5dcc2d61f32df2704c02
Fixes: 206119621
This commit is contained in:
@@ -103,6 +103,18 @@ func (a *apexBundle) androidMkForFiles(w io.Writer, apexBundleName, apexName, mo
|
||||
return moduleNames
|
||||
}
|
||||
|
||||
var postInstallCommands []string
|
||||
for _, fi := range a.filesInfo {
|
||||
if a.linkToSystemLib && fi.transitiveDep && fi.availableToPlatform() {
|
||||
// TODO(jiyong): pathOnDevice should come from fi.module, not being calculated here
|
||||
linkTarget := filepath.Join("/system", fi.path())
|
||||
linkPath := filepath.Join(a.installDir.ToMakePath().String(), apexBundleName, fi.path())
|
||||
mkdirCmd := "mkdir -p " + filepath.Dir(linkPath)
|
||||
linkCmd := "ln -sfn " + linkTarget + " " + linkPath
|
||||
postInstallCommands = append(postInstallCommands, mkdirCmd, linkCmd)
|
||||
}
|
||||
}
|
||||
|
||||
seenDataOutPaths := make(map[string]bool)
|
||||
|
||||
for _, fi := range a.filesInfo {
|
||||
@@ -176,8 +188,6 @@ func (a *apexBundle) androidMkForFiles(w io.Writer, apexBundleName, apexName, mo
|
||||
// we will have duplicated notice entries.
|
||||
fmt.Fprintln(w, "LOCAL_NO_NOTICE_FILE := true")
|
||||
}
|
||||
fmt.Fprintln(w, "LOCAL_SOONG_INSTALLED_MODULE :=", filepath.Join(modulePath, fi.stem()))
|
||||
fmt.Fprintln(w, "LOCAL_SOONG_INSTALL_PAIRS :=", fi.builtFile.String()+":"+filepath.Join(modulePath, fi.stem()))
|
||||
fmt.Fprintln(w, "LOCAL_PREBUILT_MODULE_FILE :=", fi.builtFile.String())
|
||||
fmt.Fprintln(w, "LOCAL_MODULE_CLASS :=", fi.class.nameInMake())
|
||||
if fi.module != nil {
|
||||
@@ -287,10 +297,18 @@ func (a *apexBundle) androidMkForFiles(w io.Writer, apexBundleName, apexName, mo
|
||||
if len(patterns) > 0 {
|
||||
fmt.Fprintln(w, "LOCAL_OVERRIDES_MODULES :=", strings.Join(patterns, " "))
|
||||
}
|
||||
if len(a.compatSymlinks) > 0 {
|
||||
// For flattened apexes, compat symlinks are attached to apex_manifest.json which is guaranteed for every apex
|
||||
postInstallCommands = append(postInstallCommands, a.compatSymlinks...)
|
||||
}
|
||||
}
|
||||
|
||||
// File_contexts of flattened APEXes should be merged into file_contexts.bin
|
||||
fmt.Fprintln(w, "LOCAL_FILE_CONTEXTS :=", a.fileContexts)
|
||||
|
||||
if len(postInstallCommands) > 0 {
|
||||
fmt.Fprintln(w, "LOCAL_POST_INSTALL_CMD :=", strings.Join(postInstallCommands, " && "))
|
||||
}
|
||||
}
|
||||
fmt.Fprintln(w, "include $(BUILD_PREBUILT)")
|
||||
}
|
||||
@@ -371,8 +389,6 @@ func (a *apexBundle) androidMkForType() android.AndroidMkData {
|
||||
}
|
||||
fmt.Fprintln(w, "LOCAL_MODULE_STEM :=", name+stemSuffix)
|
||||
fmt.Fprintln(w, "LOCAL_UNINSTALLABLE_MODULE :=", !a.installable())
|
||||
fmt.Fprintln(w, "LOCAL_SOONG_INSTALLED_MODULE :=", a.installedFile.String())
|
||||
fmt.Fprintln(w, "LOCAL_SOONG_INSTALL_PAIRS :=", a.outputFile.String()+":"+a.installedFile.String())
|
||||
|
||||
// Because apex writes .mk with Custom(), we need to write manually some common properties
|
||||
// which are available via data.Entries
|
||||
@@ -397,6 +413,16 @@ func (a *apexBundle) androidMkForType() android.AndroidMkData {
|
||||
fmt.Fprintln(w, "LOCAL_REQUIRED_MODULES +=", strings.Join(a.requiredDeps, " "))
|
||||
}
|
||||
a.writeRequiredModules(w, name)
|
||||
var postInstallCommands []string
|
||||
if a.prebuiltFileToDelete != "" {
|
||||
postInstallCommands = append(postInstallCommands, "rm -rf "+
|
||||
filepath.Join(a.installDir.ToMakePath().String(), a.prebuiltFileToDelete))
|
||||
}
|
||||
// For unflattened apexes, compat symlinks are attached to apex package itself as LOCAL_POST_INSTALL_CMD
|
||||
postInstallCommands = append(postInstallCommands, a.compatSymlinks...)
|
||||
if len(postInstallCommands) > 0 {
|
||||
fmt.Fprintln(w, "LOCAL_POST_INSTALL_CMD :=", strings.Join(postInstallCommands, " && "))
|
||||
}
|
||||
|
||||
if a.mergedNotices.Merged.Valid() {
|
||||
fmt.Fprintln(w, "LOCAL_NOTICE_FILE :=", a.mergedNotices.Merged.Path().String())
|
||||
|
Reference in New Issue
Block a user