From 89740664a5e84a62a220bf577469bc0e2986d341 Mon Sep 17 00:00:00 2001
From: Tobias Thierer <tobiast@google.com>
Date: Wed, 25 Oct 2017 02:38:01 +0100
Subject: [PATCH] Skip Proguard for EXPERIMENTAL_USE_OPENJDK9=true

Proguard doesn't support v53 class files. For now, this
CL simply replaces the Proguard step with a plain 'cp',
which is essentially a no-op.

To avoid apps exceeding the dex limit in this mode, this
CL also enables --multi-dex for those builds.

Test: Treehugger
Bug: 67673860
Change-Id: I17dc5d827360d606a0cac12e324f97e8dedbb630
---
 core/definitions.mk | 8 ++++++++
 core/java.mk        | 4 ++++
 2 files changed, 12 insertions(+)

diff --git a/core/definitions.mk b/core/definitions.mk
index b988d1e44..c8aca3c34 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -2777,6 +2777,12 @@ endef
 ###########################################################
 ## Commands to call Proguard
 ###########################################################
+ifeq ($(EXPERIMENTAL_USE_OPENJDK9),true)
+define transform-jar-to-proguard
+@echo Skipping Proguard: $<$(PRIVATE_PROGUARD_INJAR_FILTERS) $@
+$(hide) cp '$<' $@
+endef
+else
 define transform-jar-to-proguard
 @echo Proguard: $@
 $(hide) $(PROGUARD) -injars '$<$(PRIVATE_PROGUARD_INJAR_FILTERS)' \
@@ -2784,6 +2790,8 @@ $(hide) $(PROGUARD) -injars '$<$(PRIVATE_PROGUARD_INJAR_FILTERS)' \
     $(PRIVATE_PROGUARD_FLAGS) \
     $(addprefix -injars , $(PRIVATE_EXTRA_INPUT_JAR))
 endef
+endif
+
 
 ###########################################################
 ## Commands to call R8
diff --git a/core/java.mk b/core/java.mk
index 5a13867fd..c12e0ee9c 100644
--- a/core/java.mk
+++ b/core/java.mk
@@ -555,6 +555,10 @@ endif
 
 $(eval $(call copy-one-file,$(full_classes_jarjar_jar),$(full_classes_jar)))
 
+ifeq ($(EXPERIMENTAL_USE_OPENJDK9),true)
+LOCAL_DX_FLAGS := $(filter-out --multi-dex,$(LOCAL_DX_FLAGS)) --multi-dex
+endif
+
 my_desugaring :=
 ifndef LOCAL_IS_STATIC_JAVA_LIBRARY
 my_desugaring := true