summaryrefslogtreecommitdiffstats
path: root/core/static_java_library.mk
diff options
context:
space:
mode:
authorYing Wang <wangying@google.com>2013-03-26 12:42:32 -0700
committerYing Wang <wangying@google.com>2013-03-26 14:05:10 -0700
commitba71aba939dc58a3278646039337f13d17e65ef2 (patch)
tree751e535e5116260db9761e97ae3db185caebac8f /core/static_java_library.mk
parent68b1d3b077af7561934a16f3d7e1accf461870cf (diff)
downloadbuild-ba71aba939dc58a3278646039337f13d17e65ef2.zip
build-ba71aba939dc58a3278646039337f13d17e65ef2.tar.gz
build-ba71aba939dc58a3278646039337f13d17e65ef2.tar.bz2
Allow to run Proguard on static Java library
1. Let aapt output the proguard_options file 2. If proguard is enabled, switch the dependency from $(full_classes_jar) to $(full_classes_proguard_jar). Change-Id: Idc641a1515b8899a4623a2aeec5cd494f6c1c1c5
Diffstat (limited to 'core/static_java_library.mk')
-rw-r--r--core/static_java_library.mk20
1 files changed, 17 insertions, 3 deletions
diff --git a/core/static_java_library.mk b/core/static_java_library.mk
index eaa74aa..c3c5c86 100644
--- a/core/static_java_library.mk
+++ b/core/static_java_library.mk
@@ -21,6 +21,7 @@
LOCAL_UNINSTALLABLE_MODULE := true
LOCAL_IS_STATIC_JAVA_LIBRARY := true
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
# Hack to build static Java library with Android resource
# See bug 5714516
@@ -46,6 +47,15 @@ endif
ifeq (none,$(LOCAL_JAR_EXCLUDE_FILES))
LOCAL_JAR_EXCLUDE_FILES :=
endif
+
+proguard_options_file :=
+
+intermediates.COMMON := $(call local-intermediates-dir,COMMON)
+ifneq ($(LOCAL_PROGUARD_ENABLED),custom)
+ proguard_options_file := $(intermediates.COMMON)/proguard_options
+endif
+LOCAL_PROGUARD_FLAGS := $(addprefix -include ,$(proguard_options_file)) $(LOCAL_PROGUARD_FLAGS)
+
endif # all_resources
endif # LOCAL_RESOURCE_DIR
@@ -55,9 +65,13 @@ ifneq (,$(all_resources))
R_file_stamp := $(LOCAL_INTERMEDIATE_SOURCE_DIR)/R.stamp
ifeq ($(strip $(LOCAL_MANIFEST_FILE)),)
-LOCAL_MANIFEST_FILE := AndroidManifest.xml
+ LOCAL_MANIFEST_FILE := AndroidManifest.xml
+endif
+ifdef LOCAL_FULL_MANIFEST_FILE
+ full_android_manifest := $(LOCAL_FULL_MANIFEST_FILE)
+else
+ full_android_manifest := $(LOCAL_PATH)/$(LOCAL_MANIFEST_FILE)
endif
-full_android_manifest := $(LOCAL_PATH)/$(LOCAL_MANIFEST_FILE)
LOCAL_SDK_RES_VERSION:=$(strip $(LOCAL_SDK_RES_VERSION))
ifeq ($(LOCAL_SDK_RES_VERSION),)
@@ -94,7 +108,7 @@ else
$(R_file_stamp): PRIVATE_DEFAULT_APP_TARGET_SDK := $(DEFAULT_APP_TARGET_SDK)
endif
$(R_file_stamp): PRIVATE_ASSET_DIR :=
-$(R_file_stamp): PRIVATE_PROGUARD_OPTIONS_FILE :=
+$(R_file_stamp): PRIVATE_PROGUARD_OPTIONS_FILE := $(proguard_options_file)
$(R_file_stamp): PRIVATE_MANIFEST_PACKAGE_NAME :=
$(R_file_stamp): PRIVATE_MANIFEST_INSTRUMENTATION_FOR :=