summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYing Wang <wangying@android.com>2015-01-29 18:05:13 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-01-29 18:05:13 +0000
commit7c05897b69801e1945889a9b1a89b86bbbbbdd3a (patch)
tree049d437cea0ca0cea5fcb9464d6299ee7dd2e4fa
parent21a0c8629ced53bdfddfe5ece8cb4fca2d92c351 (diff)
parente937ac814c7f4e1989509f94f7ac8ae5b28a3526 (diff)
downloadbuild-7c05897b69801e1945889a9b1a89b86bbbbbdd3a.zip
build-7c05897b69801e1945889a9b1a89b86bbbbbdd3a.tar.gz
build-7c05897b69801e1945889a9b1a89b86bbbbbdd3a.tar.bz2
am e937ac81: Merge "Add new build flag LOCAL_DONT_DELETE_JAR_DIRS."
* commit 'e937ac814c7f4e1989509f94f7ac8ae5b28a3526': Add new build flag LOCAL_DONT_DELETE_JAR_DIRS.
-rw-r--r--core/clear_vars.mk1
-rw-r--r--core/definitions.mk4
-rw-r--r--core/host_dalvik_java_library.mk1
-rw-r--r--core/java_library.mk1
-rw-r--r--core/package_internal.mk1
5 files changed, 7 insertions, 1 deletions
diff --git a/core/clear_vars.mk b/core/clear_vars.mk
index 5c1a58d..140783e 100644
--- a/core/clear_vars.mk
+++ b/core/clear_vars.mk
@@ -149,6 +149,7 @@ LOCAL_LINT_FLAGS:=
LOCAL_SOURCE_FILES_ALL_GENERATED:= # '',true
# Don't delete the META_INF dir when merging static Java libraries.
LOCAL_DONT_DELETE_JAR_META_INF:=
+LOCAL_DONT_DELETE_JAR_DIRS:=
LOCAL_ADDITIONAL_CERTIFICATES:=
LOCAL_PREBUILT_MODULE_FILE:=
LOCAL_POST_LINK_CMD:=
diff --git a/core/definitions.mk b/core/definitions.mk
index e276887..37f7d9d 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -1785,7 +1785,9 @@ endef
define initialize-package-file
@mkdir -p $(dir $(2))
$(hide) cp -f $(1) $(2)
-$(hide) zip -qd $(2) "*.class" "*/" || true # Ignore the error when nothing to delete.
+$(hide) zip -qd $(2) "*.class" \
+ $(if $(strip $(PRIVATE_DONT_DELETE_JAR_DIRS)),,"*/") \
+ || true # Ignore the error when nothing to delete.
endef
#TODO: we kinda want to build different asset packages for
diff --git a/core/host_dalvik_java_library.mk b/core/host_dalvik_java_library.mk
index e946b24..f8264ee 100644
--- a/core/host_dalvik_java_library.mk
+++ b/core/host_dalvik_java_library.mk
@@ -103,6 +103,7 @@ $(built_dex): $(full_classes_jar) $(DX)
$(LOCAL_BUILT_MODULE): PRIVATE_DEX_FILE := $(built_dex)
$(LOCAL_BUILT_MODULE): PRIVATE_SOURCE_ARCHIVE := $(full_classes_jarjar_jar)
+$(LOCAL_BUILT_MODULE): PRIVATE_DONT_DELETE_JAR_DIRS := $(LOCAL_DONT_DELETE_JAR_DIRS)
$(LOCAL_BUILT_MODULE): $(built_dex) $(java_resource_sources)
@echo "Host Jar: $(PRIVATE_MODULE) ($@)"
$(call initialize-package-file,$(PRIVATE_SOURCE_ARCHIVE),$@)
diff --git a/core/java_library.mk b/core/java_library.mk
index 61dfef0..b4e3eaa 100644
--- a/core/java_library.mk
+++ b/core/java_library.mk
@@ -66,6 +66,7 @@ else # !LOCAL_IS_STATIC_JAVA_LIBRARY
$(common_javalib.jar): PRIVATE_DEX_FILE := $(built_dex)
$(common_javalib.jar): PRIVATE_SOURCE_ARCHIVE := $(full_classes_jarjar_jar)
+$(common_javalib.jar): PRIVATE_DONT_DELETE_JAR_DIRS := $(LOCAL_DONT_DELETE_JAR_DIRS)
$(common_javalib.jar) : $(built_dex) $(java_resource_sources)
@echo "target Jar: $(PRIVATE_MODULE) ($@)"
$(call initialize-package-file,$(PRIVATE_SOURCE_ARCHIVE),$@)
diff --git a/core/package_internal.mk b/core/package_internal.mk
index e16c68f..2fadc95 100644
--- a/core/package_internal.mk
+++ b/core/package_internal.mk
@@ -384,6 +384,7 @@ else
$(LOCAL_BUILT_MODULE): PRIVATE_PRODUCT_AAPT_PREF_CONFIG := $(PRODUCT_AAPT_PREF_CONFIG)
endif
endif
+$(LOCAL_BUILT_MODULE): PRIVATE_DONT_DELETE_JAR_DIRS := $(LOCAL_DONT_DELETE_JAR_DIRS)
$(LOCAL_BUILT_MODULE): $(all_res_assets) $(jni_shared_libraries) $(full_android_manifest)
@echo "target Package: $(PRIVATE_MODULE) ($@)"
$(if $(PRIVATE_SOURCE_ARCHIVE),\