Separate InstallPath from OutputPath

Create a new type InstallPath that is similar to OutputPath to
differentiate intermediates output paths from installed output
paths.

RelPathString is a poorly defined, undocumented function that is
primarily used to get an install path relative to out/soong to
generate an equivalent install path for Make relative to $(OUT_DIR).
Move it to InstallPath for now, and fix the one remaining user on
OutputPath.

Add a method to create an NDK install path so that ndk_sysroot.go
doesn't have to do it manually with PathForOutput.

Bug: 141877526
Test: m checkbuild
Change-Id: I83c5a0bd1fd6c3dba8d3b6d20d039f64f353ddd5
This commit is contained in:
Colin Cross
2019-10-01 22:05:35 -07:00
parent 90ba5f4e98
commit 70dda7e3da
16 changed files with 91 additions and 53 deletions

View File

@@ -33,7 +33,7 @@ type pythonInstaller struct {
dir64 string
relative string
path android.OutputPath
path android.InstallPath
androidMkSharedLibs []string
}
@@ -47,7 +47,7 @@ func NewPythonInstaller(dir, dir64 string) *pythonInstaller {
var _ installer = (*pythonInstaller)(nil)
func (installer *pythonInstaller) installDir(ctx android.ModuleContext) android.OutputPath {
func (installer *pythonInstaller) installDir(ctx android.ModuleContext) android.InstallPath {
dir := installer.dir
if ctx.Arch().ArchType.Multilib == "lib64" && installer.dir64 != "" {
dir = installer.dir64