diff options
| author | 2019-08-09 09:14:45 -0700 | |
|---|---|---|
| committer | 2019-08-09 09:19:52 -0700 | |
| commit | 829abaefee5fd130197a827cff3617fc196ebfbb (patch) | |
| tree | 1abb2bc3a55b49a3104c8c8cb75b49262c67ca1f | |
| parent | 8da52d4b9d982f98586135f419f9f7f30140b8fd (diff) | |
Add dependencies for files in LOCAL_PROGUARD_FLAGS
Do this by introducing a new LOCAL_PROGUARD_FLAGS_DEPS variable that we
can modify anytime we add a file reference to LOCAL_PROGUARD_FLAGS.
An alternative would have been to switch to LOCAL_PROGUARD_FLAG_FILES,
but that would have been much harder to ensure the same command line
ordering.
Bug: 130111713
Test: treehugger
Change-Id: If367197b30d563e0796f0cafa00be1f275f2c406
| -rw-r--r-- | core/clear_vars.mk | 1 | ||||
| -rw-r--r-- | core/java.mk | 6 | ||||
| -rw-r--r-- | core/java_library.mk | 1 | ||||
| -rw-r--r-- | core/package_internal.mk | 3 | ||||
| -rw-r--r-- | core/static_java_library.mk | 1 |
5 files changed, 9 insertions, 3 deletions
diff --git a/core/clear_vars.mk b/core/clear_vars.mk index 3cc8594a1c..2e24eb9770 100644 --- a/core/clear_vars.mk +++ b/core/clear_vars.mk @@ -221,6 +221,7 @@ LOCAL_PRODUCT_SERVICES_MODULE := LOCAL_PROGUARD_ENABLED:= LOCAL_PROGUARD_FLAG_FILES:= LOCAL_PROGUARD_FLAGS:= +LOCAL_PROGUARD_FLAGS_DEPS:= LOCAL_PROPRIETARY_MODULE:= LOCAL_PROTOC_FLAGS:= # lite(default),micro,nano,stream,full,nanopb-c,nanopb-c-enable_malloc,nanopb-c-16bit,nanopb-c-enable_malloc-16bit,nanopb-c-32bit,nanopb-c-enable_malloc-32bit diff --git a/core/java.mk b/core/java.mk index b463037fbc..d08045032b 100644 --- a/core/java.mk +++ b/core/java.mk @@ -470,6 +470,8 @@ endif # LOCAL_INSTRUMENTATION_FOR proguard_flag_files := $(addprefix $(LOCAL_PATH)/, $(LOCAL_PROGUARD_FLAG_FILES)) proguard_flag_files += $(addprefix $(LOCAL_PATH)/, $(LOCAL_R8_FLAG_FILES)) LOCAL_PROGUARD_FLAGS += $(addprefix -include , $(proguard_flag_files)) +LOCAL_PROGUARD_FLAGS_DEPS += $(proguard_flag_files) +proguard_flag_files := ifdef LOCAL_TEST_MODULE_TO_PROGUARD_WITH extra_input_jar := $(call intermediates-dir-for,APPS,$(LOCAL_TEST_MODULE_TO_PROGUARD_WITH),,COMMON)/classes.jar @@ -481,8 +483,6 @@ ifneq ($(filter obfuscation,$(LOCAL_PROGUARD_ENABLED)),) $(built_dex_intermediate): .KATI_IMPLICIT_OUTPUTS := $(proguard_dictionary) $(proguard_configuration) endif -else # LOCAL_PROGUARD_ENABLED not defined -proguard_flag_files := endif # LOCAL_PROGUARD_ENABLED defined ifneq ($(LOCAL_IS_STATIC_JAVA_LIBRARY),true) @@ -492,7 +492,7 @@ ifdef LOCAL_PROGUARD_ENABLED $(built_dex_intermediate): PRIVATE_EXTRA_INPUT_JAR := $(extra_input_jar) $(built_dex_intermediate): PRIVATE_PROGUARD_FLAGS := $(legacy_proguard_flags) $(common_proguard_flags) $(LOCAL_PROGUARD_FLAGS) $(built_dex_intermediate): PRIVATE_PROGUARD_DICTIONARY := $(proguard_dictionary) - $(built_dex_intermediate) : $(full_classes_pre_proguard_jar) $(extra_input_jar) $(my_proguard_sdk_raise) $(common_proguard_flag_files) $(proguard_flag_files) $(legacy_proguard_lib_deps) $(R8_COMPAT_PROGUARD) + $(built_dex_intermediate) : $(full_classes_pre_proguard_jar) $(extra_input_jar) $(my_proguard_sdk_raise) $(common_proguard_flag_files) $(legacy_proguard_lib_deps) $(R8_COMPAT_PROGUARD) $(LOCAL_PROGUARD_FLAGS_DEPS) $(transform-jar-to-dex-r8) else # !LOCAL_PROGUARD_ENABLED $(built_dex_intermediate): PRIVATE_D8_LIBS := $(full_java_bootclasspath_libs) $(full_shared_java_header_libs) diff --git a/core/java_library.mk b/core/java_library.mk index 34e487449e..4734eaf23f 100644 --- a/core/java_library.mk +++ b/core/java_library.mk @@ -44,6 +44,7 @@ ifeq (true,$(EMMA_INSTRUMENT_STATIC)) LOCAL_STATIC_JAVA_LIBRARIES += jacocoagent # Exclude jacoco classes from proguard LOCAL_PROGUARD_FLAGS += -include $(BUILD_SYSTEM)/proguard.jacoco.flags +LOCAL_PROGUARD_FLAGS_DEPS += $(BUILD_SYSTEM)/proguard.jacoco.flags endif # LOCAL_EMMA_INSTRUMENT endif # EMMA_INSTRUMENT_STATIC else diff --git a/core/package_internal.mk b/core/package_internal.mk index 2130058f5f..b80ccb3e76 100644 --- a/core/package_internal.mk +++ b/core/package_internal.mk @@ -253,6 +253,7 @@ ifeq ($(need_compile_res),true) endif # need_compile_res endif # !custom LOCAL_PROGUARD_FLAGS := $(addprefix -include ,$(proguard_options_file)) $(LOCAL_PROGUARD_FLAGS) +LOCAL_PROGUARD_FLAGS_DEPS += $(proguard_options_file) ifeq (true,$(EMMA_INSTRUMENT)) ifndef LOCAL_EMMA_INSTRUMENT @@ -272,6 +273,7 @@ ifneq ($(LOCAL_SRC_FILES)$(LOCAL_SRCJARS)$(LOCAL_STATIC_JAVA_LIBRARIES)$(LOCAL_S LOCAL_STATIC_JAVA_LIBRARIES += jacocoagent # Exclude jacoco classes from proguard LOCAL_PROGUARD_FLAGS += -include $(BUILD_SYSTEM)/proguard.jacoco.flags +LOCAL_PROGUARD_FLAGS_DEPS += $(BUILD_SYSTEM)/proguard.jacoco.flags endif # Contains java code else ifdef LOCAL_SDK_VERSION @@ -282,6 +284,7 @@ ifneq ($(LOCAL_SRC_FILES)$(LOCAL_STATIC_JAVA_LIBRARIES)$(LOCAL_SOURCE_FILES_ALL_ LOCAL_STATIC_JAVA_LIBRARIES += jacocoagent # Exclude jacoco classes from proguard LOCAL_PROGUARD_FLAGS += -include $(BUILD_SYSTEM)/proguard.jacoco.flags +LOCAL_PROGUARD_FLAGS_DEPS += $(BUILD_SYSTEM)/proguard.jacoco.flags endif # Contains java code endif # TARGET_BUILD_APPS endif # LOCAL_SDK_VERSION diff --git a/core/static_java_library.mk b/core/static_java_library.mk index cb3281af3e..7eef167e11 100644 --- a/core/static_java_library.mk +++ b/core/static_java_library.mk @@ -74,6 +74,7 @@ ifneq ($(filter custom,$(LOCAL_PROGUARD_ENABLED)),custom) endif LOCAL_PROGUARD_FLAGS := $(addprefix -include ,$(proguard_options_file)) $(LOCAL_PROGUARD_FLAGS) +LOCAL_PROGUARD_FLAGS_DEPS += $(proguard_options_file) R_file_stamp := $(intermediates.COMMON)/src/R.stamp LOCAL_INTERMEDIATE_TARGETS += $(R_file_stamp) |