diff options
| author | 2020-07-23 16:10:51 -0700 | |
|---|---|---|
| committer | 2020-07-23 17:39:12 -0700 | |
| commit | b1d1e0e6bd0f4034752a7c7d15f44e967c485d7b (patch) | |
| tree | e26e4fae7c0d363e6f68441eedd37f13cfa1beb6 | |
| parent | 1a4ab20c1a1ffdf007584f4c0b101f65ef2d660a (diff) | |
Fix builds with absolute OUT_DIR
Test: OUT_DIR=$PWD/out m
Change-Id: I23887110a6ee1228162f9e1a9fc89a97f45ac781
| -rw-r--r-- | android/prebuilt_build_tool.go | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/android/prebuilt_build_tool.go b/android/prebuilt_build_tool.go index a9f29ef69..d457da462 100644 --- a/android/prebuilt_build_tool.go +++ b/android/prebuilt_build_tool.go @@ -59,9 +59,15 @@ func (t *prebuiltBuildTool) GenerateAndroidBuildActions(ctx ModuleContext) { installedPath := PathForModuleOut(ctx, t.ModuleBase.Name()) deps := PathsForModuleSrc(ctx, t.properties.Deps) - relPath, err := filepath.Rel(path.Dir(installedPath.String()), sourcePath.String()) - if err != nil { - ctx.ModuleErrorf("Unabled to generate symlink between %q and %q: %s", installedPath.String(), sourcePath.String()) + var relPath string + if filepath.IsAbs(installedPath.String()) { + relPath = filepath.Join(absSrcDir, sourcePath.String()) + } else { + var err error + relPath, err = filepath.Rel(path.Dir(installedPath.String()), sourcePath.String()) + if err != nil { + ctx.ModuleErrorf("Unable to generate symlink between %q and %q: %s", installedPath.String(), sourcePath.String(), err) + } } ctx.Build(pctx, BuildParams{ |