Setup java paths in soong_ui

This way config.mk no longer needs to check which java is in PATH and
fix it. It'll be consistent for all build steps under soong_ui.

Also unify handling of ANDROID_JAVA_HOME / JAVA_HOME with
OVERRIDE_ANDROID_JAVA_HOME / EXPERIMENTAL_USE_OPENJDK9.

Test: m nothing
Test: build/soong/soong_ui.bash --make-mode nothing (w/o envsetup.sh)
Test: aosp_arm ninja files are the same before/after
Test: before/after ninja files match with OVERRIDE_ANDROID_JAVA_HOME
Test: before/after ninja files match with EXPERIMENTAL_USE_OPENJDK9
Change-Id: Icdb65093d9c346524074de239a4f895e4230a24d
diff --git a/ui/build/soong.go b/ui/build/soong.go
index 8220597..d3bcf87 100644
--- a/ui/build/soong.go
+++ b/ui/build/soong.go
@@ -77,9 +77,7 @@
 		var cfg microfactory.Config
 		cfg.Map("github.com/google/blueprint", "build/blueprint")
 
-		if absPath, err := filepath.Abs("."); err == nil {
-			cfg.TrimPath = absPath
-		}
+		cfg.TrimPath = absPath(ctx, ".")
 
 		minibp := filepath.Join(config.SoongOutDir(), ".minibootstrap/minibp")
 		if _, err := microfactory.Build(&cfg, minibp, "github.com/google/blueprint/bootstrap/minibp"); err != nil {