Loading core/clear_vars.mk +1 −3 Original line number Diff line number Diff line Loading @@ -122,9 +122,7 @@ LOCAL_CTS_TEST_PACKAGE:= LOCAL_CTS_TEST_RUNNER:= LOCAL_CLANG:= LOCAL_ADDRESS_SANITIZER:= # Whether to keep the generated R/Manifest classes when building static Java library # with Android resource. false(default), or true LOCAL_KEEP_R_CLASS_IN_STATIC_JAVA_LIBRARY:= LOCAL_JAR_EXCLUDE_FILES:= # Trim MAKEFILE_LIST so that $(call my-dir) doesn't need to # iterate over thousands of entries every time. Loading core/definitions.mk +8 −0 Original line number Diff line number Diff line Loading @@ -81,6 +81,10 @@ ALL_FINDBUGS_FILES:= # GPL module license files ALL_GPL_MODULE_LICENSE_FILES:= # Generated class file names for Android resource. # They are escaped and quoted so can be passed safely to a bash command. ANDROID_RESOURCE_GENERATED_CLASSES := 'R.class' 'R$$*.class' 'Manifest.class' 'Manifest$$*.class' ########################################################### ## Debugging; prints a variable list to stdout ########################################################### Loading Loading @@ -1515,6 +1519,10 @@ fi $(hide) rm -f $(PRIVATE_CLASS_INTERMEDIATES_DIR)/java-source-list $(hide) rm -f $(PRIVATE_CLASS_INTERMEDIATES_DIR)/java-source-list-uniq $(hide) rm -f $@ $(if $(PRIVATE_JAR_EXCLUDE_FILES), $(hide) find $(PRIVATE_CLASS_INTERMEDIATES_DIR) \ -name $(word 1, $(PRIVATE_JAR_EXCLUDE_FILES)) \ $(addprefix -o -name , $(wordlist 2, 999, $(PRIVATE_JAR_EXCLUDE_FILES))) \ | xargs rm -rf) $(hide) jar $(if $(strip $(PRIVATE_JAR_MANIFEST)),-cfm,-cf) \ $@ $(PRIVATE_JAR_MANIFEST) -C $(PRIVATE_CLASS_INTERMEDIATES_DIR) . $(hide) mv $(PRIVATE_CLASS_INTERMEDIATES_DIR)/newstamp $(PRIVATE_CLASS_INTERMEDIATES_DIR)/stamp Loading core/static_java_library.mk +10 −7 Original line number Diff line number Diff line Loading @@ -36,14 +36,18 @@ all_resources := $(strip \ )) ifneq (,$(all_resources)) # Those files will be excluded from the built jar. # The R/Manifest classes should be re-generated in the app Module instead. # Use '' and $ escape because they will be passed to bash. ifneq (true,$(LOCAL_KEEP_R_CLASS_IN_STATIC_JAVA_LIBRARY)) LOCAL_JAR_EXCLUDE_FILES := 'R.class' 'R$$*.class' 'Manifest.class' 'Manifest$$*.class' endif # By default we should remove the R/Manifest classes from a static Java library, # because they will be regenerated in the app that uses it. # But if the static Java library will be used by a library, then we may need to # keep the generated classes with "LOCAL_JAR_EXCLUDE_FILES := none". ifndef LOCAL_JAR_EXCLUDE_FILES LOCAL_JAR_EXCLUDE_FILES := $(ANDROID_RESOURCE_GENERATED_CLASSES) endif ifeq (none,$(LOCAL_JAR_EXCLUDE_FILES)) LOCAL_JAR_EXCLUDE_FILES := endif endif # all_resources endif # LOCAL_RESOURCE_DIR include $(BUILD_SYSTEM)/java_library.mk Loading Loading @@ -107,4 +111,3 @@ endif endif # $(all_resources) not empty LOCAL_IS_STATIC_JAVA_LIBRARY := LOCAL_JAR_EXCLUDE_FILES := Loading
core/clear_vars.mk +1 −3 Original line number Diff line number Diff line Loading @@ -122,9 +122,7 @@ LOCAL_CTS_TEST_PACKAGE:= LOCAL_CTS_TEST_RUNNER:= LOCAL_CLANG:= LOCAL_ADDRESS_SANITIZER:= # Whether to keep the generated R/Manifest classes when building static Java library # with Android resource. false(default), or true LOCAL_KEEP_R_CLASS_IN_STATIC_JAVA_LIBRARY:= LOCAL_JAR_EXCLUDE_FILES:= # Trim MAKEFILE_LIST so that $(call my-dir) doesn't need to # iterate over thousands of entries every time. Loading
core/definitions.mk +8 −0 Original line number Diff line number Diff line Loading @@ -81,6 +81,10 @@ ALL_FINDBUGS_FILES:= # GPL module license files ALL_GPL_MODULE_LICENSE_FILES:= # Generated class file names for Android resource. # They are escaped and quoted so can be passed safely to a bash command. ANDROID_RESOURCE_GENERATED_CLASSES := 'R.class' 'R$$*.class' 'Manifest.class' 'Manifest$$*.class' ########################################################### ## Debugging; prints a variable list to stdout ########################################################### Loading Loading @@ -1515,6 +1519,10 @@ fi $(hide) rm -f $(PRIVATE_CLASS_INTERMEDIATES_DIR)/java-source-list $(hide) rm -f $(PRIVATE_CLASS_INTERMEDIATES_DIR)/java-source-list-uniq $(hide) rm -f $@ $(if $(PRIVATE_JAR_EXCLUDE_FILES), $(hide) find $(PRIVATE_CLASS_INTERMEDIATES_DIR) \ -name $(word 1, $(PRIVATE_JAR_EXCLUDE_FILES)) \ $(addprefix -o -name , $(wordlist 2, 999, $(PRIVATE_JAR_EXCLUDE_FILES))) \ | xargs rm -rf) $(hide) jar $(if $(strip $(PRIVATE_JAR_MANIFEST)),-cfm,-cf) \ $@ $(PRIVATE_JAR_MANIFEST) -C $(PRIVATE_CLASS_INTERMEDIATES_DIR) . $(hide) mv $(PRIVATE_CLASS_INTERMEDIATES_DIR)/newstamp $(PRIVATE_CLASS_INTERMEDIATES_DIR)/stamp Loading
core/static_java_library.mk +10 −7 Original line number Diff line number Diff line Loading @@ -36,14 +36,18 @@ all_resources := $(strip \ )) ifneq (,$(all_resources)) # Those files will be excluded from the built jar. # The R/Manifest classes should be re-generated in the app Module instead. # Use '' and $ escape because they will be passed to bash. ifneq (true,$(LOCAL_KEEP_R_CLASS_IN_STATIC_JAVA_LIBRARY)) LOCAL_JAR_EXCLUDE_FILES := 'R.class' 'R$$*.class' 'Manifest.class' 'Manifest$$*.class' endif # By default we should remove the R/Manifest classes from a static Java library, # because they will be regenerated in the app that uses it. # But if the static Java library will be used by a library, then we may need to # keep the generated classes with "LOCAL_JAR_EXCLUDE_FILES := none". ifndef LOCAL_JAR_EXCLUDE_FILES LOCAL_JAR_EXCLUDE_FILES := $(ANDROID_RESOURCE_GENERATED_CLASSES) endif ifeq (none,$(LOCAL_JAR_EXCLUDE_FILES)) LOCAL_JAR_EXCLUDE_FILES := endif endif # all_resources endif # LOCAL_RESOURCE_DIR include $(BUILD_SYSTEM)/java_library.mk Loading Loading @@ -107,4 +111,3 @@ endif endif # $(all_resources) not empty LOCAL_IS_STATIC_JAVA_LIBRARY := LOCAL_JAR_EXCLUDE_FILES :=