Don't install static snapshot to device
Static snapshots are wrongly being installed to the device, due to installFile call. Bug: 215081717 Test: manually create modules and see result Android.mk Change-Id: I9229278c801b1ed11b3fd2803e531a97e9dc9a90
This commit is contained in:
@@ -15,6 +15,8 @@
|
|||||||
package cc
|
package cc
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"github.com/google/blueprint/proptools"
|
||||||
|
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
@@ -532,7 +534,13 @@ func (c *snapshotLibraryDecorator) AndroidMkEntries(ctx AndroidMkContext, entrie
|
|||||||
c.libraryDecorator.androidMkWriteExportedFlags(entries)
|
c.libraryDecorator.androidMkWriteExportedFlags(entries)
|
||||||
|
|
||||||
if c.shared() || c.static() {
|
if c.shared() || c.static() {
|
||||||
path, file := filepath.Split(c.path.String())
|
src := c.path.String()
|
||||||
|
// For static libraries which aren't installed, directly use Src to extract filename.
|
||||||
|
// This is safe: generated snapshot modules have a real path as Src, not a module
|
||||||
|
if c.static() {
|
||||||
|
src = proptools.String(c.properties.Src)
|
||||||
|
}
|
||||||
|
path, file := filepath.Split(src)
|
||||||
stem, suffix, ext := android.SplitFileExt(file)
|
stem, suffix, ext := android.SplitFileExt(file)
|
||||||
entries.SetString("LOCAL_BUILT_MODULE_STEM", "$(LOCAL_MODULE)"+ext)
|
entries.SetString("LOCAL_BUILT_MODULE_STEM", "$(LOCAL_MODULE)"+ext)
|
||||||
entries.SetString("LOCAL_MODULE_SUFFIX", suffix)
|
entries.SetString("LOCAL_MODULE_SUFFIX", suffix)
|
||||||
|
@@ -506,7 +506,7 @@ func (p *snapshotLibraryDecorator) link(ctx ModuleContext, flags Flags, deps Pat
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *snapshotLibraryDecorator) install(ctx ModuleContext, file android.Path) {
|
func (p *snapshotLibraryDecorator) install(ctx ModuleContext, file android.Path) {
|
||||||
if p.MatchesWithDevice(ctx.DeviceConfig()) && (p.shared() || p.static()) {
|
if p.MatchesWithDevice(ctx.DeviceConfig()) && p.shared() {
|
||||||
p.baseInstaller.install(ctx, file)
|
p.baseInstaller.install(ctx, file)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user