Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 37822c44 authored by Yohann Roussel's avatar Yohann Roussel
Browse files

Engage Jack incremental on demand

Each module may engage Jack incremental with

LOCAL_JACK_ENABLED := incremental

Include renaming of LOCAL_USE_JACK to LOCAL_JACK_ENABLED that is
now accepting 3 values "disabled", "full" and "incremental".

Change-Id: Icbff275b397bee36b29312e821f3e8d45f83fbcc
parent 28096669
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -43,6 +43,13 @@ endif

my_module_tags := $(LOCAL_MODULE_TAGS)

LOCAL_JACK_ENABLED := $(strip $(LOCAL_JACK_ENABLED))
ifneq ($(LOCAL_JACK_ENABLED),full)
ifneq ($(LOCAL_JACK_ENABLED),incremental)
LOCAL_JACK_ENABLED :=
endif
endif

###########################################################
## Validate and define fallbacks for input LOCAL_* variables.
###########################################################
@@ -682,7 +689,7 @@ endif
###########################################################
# JACK
###########################################################
ifeq ($(LOCAL_USE_JACK),true)
ifdef LOCAL_JACK_ENABLED
ifdef need_compile_java

full_static_jack_libs := \
@@ -757,7 +764,7 @@ endif # need_compile_java
$(LOCAL_INTERMEDIATE_TARGETS) : PRIVATE_ALL_JACK_LIBRARIES:= $(full_jack_libs)
$(LOCAL_INTERMEDIATE_TARGETS) : PRIVATE_JARJAR_RULES := $(LOCAL_JARJAR_RULES)

endif # LOCAL_USE_JACK
endif # LOCAL_JACK_ENABLED

###########################################################
## NOTICE files
+6 −1
Original line number Diff line number Diff line
@@ -256,8 +256,13 @@ clean-jack-files: clean-dex-files

.PHONY: clean-dex-files
clean-dex-files:
	$(hide) find $(OUT_DIR) -name "*.dex" | xargs rm -f
	$(hide) find $(OUT_DIR) -name "*.dex" ! -path "*/jack-incremental/*" | xargs rm -f
	$(hide) for i in `find $(OUT_DIR) -name "*.jar" -o -name "*.apk"` ; do ((unzip -l $$i 2> /dev/null | \
				grep -q "\.dex$$" && rm -f $$i) || continue ) ; done
	@echo "All dex files and archives containing dex files have been removed."

.PHONY: clean-jack-incremental
clean-jack-incremental:
	$(hide) find $(OUT_DIR) -name "jack-incremental" -type d | xargs rm -rf
	@echo "All jack incremental dirs have been removed."
+1 −1
Original line number Diff line number Diff line
@@ -107,7 +107,7 @@ LOCAL_JARJAR_RULES:=
LOCAL_ADDITIONAL_JAVA_DIR:=
LOCAL_ALLOW_UNDEFINED_SYMBOLS:=
LOCAL_DX_FLAGS:=
LOCAL_USE_JACK:= $(ANDROID_COMPILE_WITH_JACK)
LOCAL_JACK_ENABLED:=$(DEFAULT_JACK_ENABLED) # '' (ie disabled), disabled, full, incremental
LOCAL_JACK_VM_ARGS := $(DEFAULT_JACK_VM_ARGS)
LOCAL_JACK_EXTRA_ARGS := $(DEFAULT_JACK_EXTRA_ARGS)
LOCAL_JACK_FLAGS:=
+5 −0
Original line number Diff line number Diff line
@@ -406,6 +406,11 @@ TUNE2FS := $(HOST_OUT_EXECUTABLES)/tune2fs$(HOST_EXECUTABLE_SUFFIX)
E2FSCK := $(HOST_OUT_EXECUTABLES)/e2fsck$(HOST_EXECUTABLE_SUFFIX)
JARJAR := $(HOST_OUT_JAVA_LIBRARIES)/jarjar.jar

ifeq ($(ANDROID_COMPILE_WITH_JACK),true)
DEFAULT_JACK_ENABLED:=full
else
DEFAULT_JACK_ENABLED:=
endif
ifneq ($(strip $(ANDROID_JACK_VM)),)
JACK_VM := $(ANDROID_JACK_VM)
else
+4 −0
Original line number Diff line number Diff line
@@ -1731,6 +1731,7 @@ $(hide) rm -rf $(PRIVATE_JACK_INTERMEDIATES_DIR)
$(hide) mkdir -p $(dir $@)
$(hide) mkdir -p $(dir $(PRIVATE_CLASSES_JACK))
$(hide) mkdir -p $(PRIVATE_JACK_INTERMEDIATES_DIR)
$(if $(PRIVATE_JACK_INCREMENTAL_DIR),$(hide) mkdir -p $(PRIVATE_JACK_INCREMENTAL_DIR))
$(call dump-words-to-file,$(PRIVATE_JAVA_SOURCES),$(PRIVATE_JACK_INTERMEDIATES_DIR)/java-source-list)
$(hide) if [ -d "$(PRIVATE_SOURCE_INTERMEDIATES_DIR)" ]; then \
          find $(PRIVATE_SOURCE_INTERMEDIATES_DIR) -name '*.java' >> $(PRIVATE_JACK_INTERMEDIATES_DIR)/java-source-list; \
@@ -1765,6 +1766,7 @@ $(call call-jack,$(PRIVATE_JACK_VM_ARGS),$(PRIVATE_JACK_EXTRA_ARGS)) \
    -D jack.import.type.policy=keep-first \
    --output-jack $(PRIVATE_CLASSES_JACK) \
    -D jack.java.source.version=1.7 \
    $(if $(PRIVATE_JACK_INCREMENTAL_DIR),--incremental-folder $(PRIVATE_JACK_INCREMENTAL_DIR)) \
    --output-dex $(PRIVATE_JACK_INTERMEDIATES_DIR) \
    $(addprefix --config-jarjar ,$(strip $(PRIVATE_JARJAR_RULES))) \
    $(if $(PRIVATE_JACK_PROGUARD_FLAGS),--config-proguard $@.flags) \
@@ -1807,6 +1809,7 @@ $(hide) rm -f $@
$(hide) rm -rf $(PRIVATE_JACK_INTERMEDIATES_DIR)
$(hide) mkdir -p $(dir $@)
$(hide) mkdir -p $(PRIVATE_JACK_INTERMEDIATES_DIR)
$(if $(PRIVATE_JACK_INCREMENTAL_DIR),$(hide) mkdir -p $(PRIVATE_JACK_INCREMENTAL_DIR))
$(call dump-words-to-file,$(PRIVATE_JAVA_SOURCES),$(PRIVATE_JACK_INTERMEDIATES_DIR)/java-source-list)
$(hide) if [ -d "$(PRIVATE_SOURCE_INTERMEDIATES_DIR)" ]; then \
          find $(PRIVATE_SOURCE_INTERMEDIATES_DIR) -name '*.java' >> $(PRIVATE_JACK_INTERMEDIATES_DIR)/java-source-list; \
@@ -1840,6 +1843,7 @@ $(call call-jack,$(PRIVATE_JACK_VM_ARGS),$(PRIVATE_JACK_EXTRA_ARGS)) \
    -D jack.import.resource.policy=keep-first \
    -D jack.import.type.policy=keep-first \
    -D jack.java.source.version=1.7 \
    $(if $(PRIVATE_JACK_INCREMENTAL_DIR),--incremental-folder $(PRIVATE_JACK_INCREMENTAL_DIR)) \
    --output-jack $@ \
    $(addprefix --config-jarjar ,$(strip $(PRIVATE_JARJAR_RULES))) \
    $(if $(PRIVATE_JACK_PROGUARD_FLAGS),--config-proguard $@.flags) \
Loading