Add abazel() function to envsetup.
Test: Tested manually on Linux and macOS.
Change-Id: I17f061c2d9135a7a309fc0750cc44cb30d455bc7
diff --git a/envsetup.sh b/envsetup.sh
index a3b07a7..3f906f9 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -318,6 +318,59 @@
#export HOST_EXTRACFLAGS="-I "$T/system/kernel_headers/host_include
}
+function abazel()
+{
+ local T="$(gettop)"
+ if [ ! "$T" ]; then
+ echo "Couldn't locate the top of the tree. Try setting TOP."
+ return
+ fi
+
+ case $(uname -s) in
+ Darwin)
+ ANDROID_BAZEL_PATH="${T}/prebuilts/bazel/darwin-x86_64/bazel"
+ ANDROID_BAZELRC_PATH="${T}/build/bazel/darwin.bazelrc"
+ ANDROID_BAZEL_JDK_PATH="${T}/prebuilts/jdk/jdk11/darwin-x86"
+ ;;
+ Linux)
+ ANDROID_BAZEL_PATH="${T}/prebuilts/bazel/linux-x86_64/bazel"
+ ANDROID_BAZELRC_PATH="${T}/build/bazel/linux.bazelrc"
+ ANDROID_BAZEL_JDK_PATH="${T}/prebuilts/jdk/jdk11/linux-x86"
+ ;;
+ *)
+ ANDROID_BAZEL_PATH=
+ ANDROID_BAZELRC_PATH=
+ ANDROID_BAZEL_JDK_PATH=
+ ;;
+ esac
+
+ if [ -n "$ANDROID_BAZEL_PATH" -a -f "$ANDROID_BAZEL_PATH" ]; then
+ export ANDROID_BAZEL_PATH
+ else
+ echo "Couldn't locate Bazel binary"
+ return
+ fi
+
+ if [ -n "$ANDROID_BAZELRC_PATH" -a -f "$ANDROID_BAZELRC_PATH" ]; then
+ export ANDROID_BAZELRC_PATH
+ else
+ echo "Couldn't locate bazelrc file for Bazel"
+ return
+ fi
+
+ if [ -n "$ANDROID_BAZEL_JDK_PATH" -a -d "$ANDROID_BAZEL_JDK_PATH" ]; then
+ export ANDROID_BAZEL_JDK_PATH
+ else
+ echo "Couldn't locate JDK to use for Bazel"
+ return
+ fi
+
+ echo "WARNING: Bazel support for the Android Platform is experimental and is undergoing development."
+ echo "WARNING: Currently, build stability is not guaranteed. Thank you."
+ echo
+ "${ANDROID_BAZEL_PATH}" --server_javabase="${ANDROID_BAZEL_JDK_PATH}" --bazelrc="${ANDROID_BAZELRC_PATH}" "$@"
+}
+
function printconfig()
{
local T=$(gettop)