clean-oat should not build anything

also add sub-targets so we can avoid build errors when no target device is present

Change-Id: I954b2c712df0770cd697a26ae5eca4e506eabdad
diff --git a/Android.mk b/Android.mk
index 0334ff2..9c422b9 100644
--- a/Android.mk
+++ b/Android.mk
@@ -30,6 +30,57 @@
 include $(build_path)/Android.common.mk
 
 ########################################################################
+# clean-oat targets
+#
+
+# following the example of build's dont_bother for clean targets
+ifneq (,$(filter clean-oat,$(MAKECMDGOALS)))
+art_dont_bother := true
+endif
+ifneq (,$(filter clean-oat-host,$(MAKECMDGOALS)))
+art_dont_bother := true
+endif
+ifneq (,$(filter clean-oat-target,$(MAKECMDGOALS)))
+art_dont_bother := true
+endif
+
+.PHONY: clean-oat
+clean-oat: clean-oat-host clean-oat-target
+
+.PHONY: clean-oat-host
+clean-oat-host:
+	rm -f $(ART_NATIVETEST_OUT)/*.oat
+	rm -f $(ART_NATIVETEST_OUT)/*.art
+	rm -f $(ART_TEST_OUT)/*.oat
+	rm -f $(ART_TEST_OUT)/*.art
+	rm -f $(ART_CACHE_OUT)/*.oat
+	rm -f $(ART_CACHE_OUT)/*.art
+	rm -f $(HOST_OUT_JAVA_LIBRARIES)/*.oat
+	rm -f $(HOST_OUT_JAVA_LIBRARIES)/*.art
+	rm -f $(TARGET_OUT_JAVA_LIBRARIES)/*.oat
+	rm -f $(TARGET_OUT_JAVA_LIBRARIES)/*.art
+	rm -f $(TARGET_OUT_APPS)/*.oat
+	rm -f $(TARGET_OUT_INTERMEDIATES)/JAVA_LIBRARIES/*_intermediates/javalib.jar.oat
+	rm -f $(TARGET_OUT_INTERMEDIATES)/APPS/*_intermediates/package.apk.oat
+	rm -rf /tmp/test-*/art-cache/*.oat
+
+.PHONY: clean-oat-target
+clean-oat-target:
+	adb remount
+	adb shell rm $(ART_NATIVETEST_DIR)/*.oat
+	adb shell rm $(ART_NATIVETEST_DIR)/*.art
+	adb shell rm $(ART_TEST_DIR)/*.oat
+	adb shell rm $(ART_TEST_DIR)/*.art
+	adb shell rm $(ART_CACHE_DIR)/*.oat
+	adb shell rm $(ART_CACHE_DIR)/*.art
+	adb shell rm $(DEXPREOPT_BOOT_JAR_DIR)/*.oat
+	adb shell rm $(DEXPREOPT_BOOT_JAR_DIR)/*.art
+	adb shell rm system/app/*.oat
+	adb shell rm data/run-test/test-*/art-cache/*.oat
+
+ifneq ($(art_dont_bother),true)
+
+########################################################################
 # product targets
 include $(build_path)/Android.libart.mk
 include $(build_path)/Android.libart-compiler.mk
@@ -246,38 +297,6 @@
 
 
 ########################################################################
-# clean-oat target
-#
-
-.PHONY: clean-oat
-clean-oat:
-	rm -f $(ART_NATIVETEST_OUT)/*.oat
-	rm -f $(ART_NATIVETEST_OUT)/*.art
-	rm -f $(ART_TEST_OUT)/*.oat
-	rm -f $(ART_TEST_OUT)/*.art
-	rm -f $(ART_CACHE_OUT)/*.oat
-	rm -f $(ART_CACHE_OUT)/*.art
-	rm -f $(HOST_OUT_JAVA_LIBRARIES)/*.oat
-	rm -f $(HOST_OUT_JAVA_LIBRARIES)/*.art
-	rm -f $(TARGET_OUT_JAVA_LIBRARIES)/*.oat
-	rm -f $(TARGET_OUT_JAVA_LIBRARIES)/*.art
-	rm -f $(TARGET_OUT_APPS)/*.oat
-	rm -f $(TARGET_OUT_INTERMEDIATES)/JAVA_LIBRARIES/*_intermediates/javalib.jar.oat
-	rm -f $(TARGET_OUT_INTERMEDIATES)/APPS/*_intermediates/package.apk.oat
-	rm -rf /tmp/test-*/art-cache/*.oat
-	adb remount
-	adb shell rm $(ART_NATIVETEST_DIR)/*.oat
-	adb shell rm $(ART_NATIVETEST_DIR)/*.art
-	adb shell rm $(ART_TEST_DIR)/*.oat
-	adb shell rm $(ART_TEST_DIR)/*.art
-	adb shell rm $(ART_CACHE_DIR)/*.oat
-	adb shell rm $(ART_CACHE_DIR)/*.art
-	adb shell rm $(DEXPREOPT_BOOT_JAR_DIR)/*.oat
-	adb shell rm $(DEXPREOPT_BOOT_JAR_DIR)/*.art
-	adb shell rm system/app/*.oat
-	adb shell rm data/run-test/test-*/art-cache/*.oat
-
-########################################################################
 # cpplint target
 
 # "mm cpplint-art" to style check art source files
@@ -290,3 +309,5 @@
 ########################################################################
 
 include $(call all-makefiles-under,$(LOCAL_PATH))
+
+endif # !art_dont_bother