Pass compiled metalava stub classes through metalava again

Use metalava --rewrite-annotations to pass the compiled sdk stub
class files through metalava again to make the annotations package
private.

Bug: 110532131
Test: m out/target/common/obj/JAVA_LIBRARIES/metalava_android_stubs_current_intermediates/classes.jar
Change-Id: I124e8d89075ec682e9fc3602ef232492bed849aa
Merged-In: I5180bc18979415cec6255beb3fe2c48ec298d3ae
diff --git a/build/build_android_stubs.mk b/build/build_android_stubs.mk
index d324934..393b213 100644
--- a/build/build_android_stubs.mk
+++ b/build/build_android_stubs.mk
@@ -39,9 +39,13 @@
 $(full_target): PRIVATE_ERRORPRONE_FLAGS :=
 endif
 
-ifneq ($(filter metalava%,$(sdk_stub_name)),)
+my_use_metalava := $(filter metalava%,$(sdk_stub_name))
+$(warning $(sdk_stub_name) $(my_use_metalava))
+
+ifdef my_use_metalava
 $(full_target): $(HOST_OUT_JAVA_LIBRARIES)/stub-annotations$(COMMON_JAVA_PACKAGE_SUFFIX)
 $(full_target): PRIVATE_METALAVA_CLASSPATH := -classpath $(HOST_OUT_JAVA_LIBRARIES)/stub-annotations$(COMMON_JAVA_PACKAGE_SUFFIX)
+$(full_target): $(HOST_OUT_JAVA_LIBRARIES)/metalava.jar
 else
 $(full_target): PRIVATE_METALAVA_CLASSPATH :=
 endif
@@ -74,6 +78,10 @@
 			-g -d $(PRIVATE_CLASS_INTERMEDIATES_DIR) \
 			\@$(PRIVATE_INTERMEDIATES_DIR)/java-source-list \
 		|| ( rm -rf $(PRIVATE_CLASS_INTERMEDIATES_DIR) ; exit 41 )
+ifdef my_use_metalava
+	$(hide) $(JAVA) -jar $(HOST_OUT_JAVA_LIBRARIES)/metalava.jar \
+	    --no-banner --rewrite-annotations $(PRIVATE_CLASS_INTERMEDIATES_DIR)
+endif
 	$(hide) if [ ! -f $(PRIVATE_FRAMEWORK_RES_PACKAGE) ]; then \
 		echo Missing file $(PRIVATE_FRAMEWORK_RES_PACKAGE); \
 		rm -rf $(PRIVATE_CLASS_INTERMEDIATES_DIR); \