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