Move bazel from being a shell function to being a script at build/bazel/bin/bazel

Bug: 254713799
Test: b build //packages/modules/adb/apex:com.android.adbd
Change-Id: I6a0a89438a46d8252c3e0c24319038b0cf2dbd59
diff --git a/android/bazel_handler.go b/android/bazel_handler.go
index 29695d6..4bd9fd8 100644
--- a/android/bazel_handler.go
+++ b/android/bazel_handler.go
@@ -572,7 +572,7 @@
 		"HOME=" + paths.homeDir,
 		pwdPrefix(),
 		"BUILD_DIR=" + absolutePath(paths.soongOutDir),
-		// Make OUT_DIR absolute here so tools/bazel.sh uses the correct
+		// Make OUT_DIR absolute here so build/bazel/bin/bazel uses the correct
 		// OUT_DIR at <root>/out, instead of <root>/out/soong/workspace/out.
 		"OUT_DIR=" + absolutePath(paths.outDir()),
 		// Disables local host detection of gcc; toolchain information is defined
diff --git a/build_test.bash b/build_test.bash
index 92819a1..ae53c14 100755
--- a/build_test.bash
+++ b/build_test.bash
@@ -62,7 +62,7 @@
 
 echo
 echo "Running Bazel smoke test..."
-STANDALONE_BAZEL=true "${TOP}/tools/bazel" --batch --max_idle_secs=1 help
+STANDALONE_BAZEL=true "${TOP}/build/bazel/bin/bazel" --batch --max_idle_secs=1 help
 
 echo
 echo "Running Soong test..."
diff --git a/tests/apex_comparison_tests.sh b/tests/apex_comparison_tests.sh
index 61d131b..5fbbd0f 100755
--- a/tests/apex_comparison_tests.sh
+++ b/tests/apex_comparison_tests.sh
@@ -34,7 +34,7 @@
 BAZEL_OUTPUT_DIR="$OUTPUT_DIR/bazel"
 
 function call_bazel() {
-  tools/bazel --output_base="$BAZEL_OUTPUT_DIR" $@
+  build/bazel/bin/bazel --output_base="$BAZEL_OUTPUT_DIR" $@
 }
 
 function cleanup {
diff --git a/tests/lib.sh b/tests/lib.sh
index 4b4d908..7dd2bf3 100644
--- a/tests/lib.sh
+++ b/tests/lib.sh
@@ -128,7 +128,6 @@
 
   symlink_file WORKSPACE
   symlink_file BUILD
-  symlink_file tools/bazel
 }
 
 function run_bazel {
@@ -136,7 +135,7 @@
   # output should not be parsed as such.
   rm -rf out/ninja_build
 
-  tools/bazel "$@"
+  build/bazel/bin/bazel "$@"
 }
 
 function run_ninja {
diff --git a/ui/build/bazel.go b/ui/build/bazel.go
index 0ebfcd8..bd469a4 100644
--- a/ui/build/bazel.go
+++ b/ui/build/bazel.go
@@ -85,9 +85,9 @@
 
 	bazelEnv["SHELL"] = "/bin/bash"
 
-	// `tools/bazel` is the default entry point for executing Bazel in the AOSP
+	// `build/bazel/bin/bazel` is the default entry point for executing Bazel in the AOSP
 	// source tree.
-	bazelExecutable := filepath.Join("tools", "bazel")
+	bazelExecutable := filepath.Join("build", "bazel", "bin", "bazel")
 	cmd := Command(ctx, config, "bazel", bazelExecutable)
 
 	// Append custom startup flags to the Bazel command. Startup flags affect
diff --git a/ui/build/soong.go b/ui/build/soong.go
index 4ec0354..4e66c64 100644
--- a/ui/build/soong.go
+++ b/ui/build/soong.go
@@ -396,7 +396,7 @@
 	soongBuildEnv := config.Environment().Copy()
 	soongBuildEnv.Set("TOP", os.Getenv("TOP"))
 	// For Bazel mixed builds.
-	soongBuildEnv.Set("BAZEL_PATH", "./tools/bazel")
+	soongBuildEnv.Set("BAZEL_PATH", "./build/bazel/bin/bazel")
 	// Bazel's HOME var is set to an output subdirectory which doesn't exist. This
 	// prevents Bazel from file I/O in the actual user HOME directory.
 	soongBuildEnv.Set("BAZEL_HOME", absPath(ctx, filepath.Join(config.BazelOutDir(), "bazelhome")))