AIDEGen: Adopt prebuilt mechanism to bypass 'm aidegen'.

Bug: 119642842
Test: m clean;aidegen tradefed
Change-Id: Ib25591de77762ffdcc72ea4a064a50cfb3e5015e
diff --git a/CleanSpec.mk b/CleanSpec.mk
index a4b7c26..8058d86 100644
--- a/CleanSpec.mk
+++ b/CleanSpec.mk
@@ -519,6 +519,9 @@
 
 $(call add-clean-step, find $(OUT_DIR)/target/product/mainline_arm64/system -type f -name "*.*dex" -print0 | xargs -0 rm -f)
 
+# Clean up aidegen
+$(call add-clean-step, rm -f $(HOST_OUT)/bin/aidegen)
+
 # ************************************************
 # NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
 # ************************************************
diff --git a/envsetup.sh b/envsetup.sh
index 400e7f0..7e94748 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -1625,6 +1625,19 @@
     esac
 }
 
+function aidegen()
+{
+    # Always use the prebuilt version.
+    local host_os_arch=$(get_build_var HOST_PREBUILT_TAG)
+    case $host_os_arch in
+        linux-x86) "$(gettop)"/prebuilts/asuite/aidegen/linux-x86/aidegen "$@"
+        ;;
+    *)
+        echo "aidegen is not supported on your host arch: $host_os_arch"
+        ;;
+    esac
+}
+
 # Execute the contents of any vendorsetup.sh files we can find.
 function source_vendorsetup() {
     for dir in device vendor product; do