Fix builds with absolute OUT_DIR
Test: OUT_DIR=$PWD/out m
Change-Id: I23887110a6ee1228162f9e1a9fc89a97f45ac781
diff --git a/android/prebuilt_build_tool.go b/android/prebuilt_build_tool.go
index a9f29ef..d457da4 100644
--- a/android/prebuilt_build_tool.go
+++ b/android/prebuilt_build_tool.go
@@ -59,9 +59,15 @@
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{