Turn installation on in mega device build

Turn on installation in the mega device build, it is necessary for the ndk
sysroot installation.  Partially fixes mega device builds, they also need
to run without -w dupbuild=err on the ninja command line because multiple
variants of the same architecture try to install to the same ndk sysroot.

Test: mega device build
Change-Id: I982d77f9ff19f5bc29fc9fe54a0df8db3579c3e3
This commit is contained in:
Colin Cross
2017-04-26 17:34:03 -07:00
parent ccf01e755e
commit 893d816a6d
2 changed files with 26 additions and 5 deletions

View File

@@ -647,14 +647,31 @@ func (a *androidModuleContext) InstallInSanitizerDir() bool {
return a.module.InstallInSanitizerDir()
}
func (a *androidModuleContext) skipInstall(fullInstallPath OutputPath) bool {
if a.module.base().commonProperties.SkipInstall {
return true
}
if a.Device() {
if a.AConfig().SkipDeviceInstall() {
return true
}
if a.AConfig().SkipMegaDeviceInstall(fullInstallPath.String()) {
return true
}
}
return false
}
func (a *androidModuleContext) InstallFileName(installPath OutputPath, name string, srcPath Path,
deps ...Path) OutputPath {
fullInstallPath := installPath.Join(a, name)
a.module.base().hooks.runInstallHooks(a, fullInstallPath, false)
if !a.module.base().commonProperties.SkipInstall &&
(!a.Device() || !a.AConfig().SkipDeviceInstall()) {
if !a.skipInstall(fullInstallPath) {
deps = append(deps, a.installDeps...)
@@ -691,8 +708,7 @@ func (a *androidModuleContext) InstallSymlink(installPath OutputPath, name strin
fullInstallPath := installPath.Join(a, name)
a.module.base().hooks.runInstallHooks(a, fullInstallPath, true)
if !a.module.base().commonProperties.SkipInstall &&
(!a.Device() || !a.AConfig().SkipDeviceInstall()) {
if !a.skipInstall(fullInstallPath) {
a.ModuleBuild(pctx, ModuleBuildParams{
Rule: Symlink,