From bd46b21c31463701b6a38fda70c70b5394c1bf9d Mon Sep 17 00:00:00 2001 From: Joe Onorato <> Date: Tue, 24 Mar 2009 19:07:34 -0700 Subject: [PATCH] Automated import from //branches/donutburger/...@140982,140982 --- core/java.mk | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/core/java.mk b/core/java.mk index 65c525d21f..b1ded8a268 100644 --- a/core/java.mk +++ b/core/java.mk @@ -72,33 +72,38 @@ LOCAL_NO_EMMA_INSTRUMENT := true LOCAL_NO_EMMA_COMPILE := true endif +# Choose leaf name for the compiled jar file. ifneq ($(LOCAL_NO_EMMA_COMPILE),true) -# If you instrument class files that have local variable debug information in -# them emma does not correctly maintain the local variable table. -# This will cause an error when you try to convert the class files for Android. -# The workaround for this to compile the java classes with only -# line and source debug information, not local information. -full_classes_compiled_name_jar := classes-no-debug-var.jar -$(full_classes_compiled_jar): PRIVATE_JAVAC_DEBUG_FLAGS := -g:{lines,source} +full_classes_compiled_jar_leaf := classes-no-debug-var.jar else -# when emma is off, compile with the default flags, which contain full debug -# info -full_classes_compiled_name_jar := classes-full-debug.jar -$(full_classes_compiled_jar): PRIVATE_JAVAC_DEBUG_FLAGS := -g +full_classes_compiled_jar_leaf := classes-full-debug.jar endif # Compile the java files to a .jar file. # This intentionally depends on java_sources, not all_java_sources. # Deps for generated source files must be handled separately, # via deps on the target that generates the sources. -full_classes_compiled_jar := $(intermediates.COMMON)/$(full_classes_compiled_name_jar) +full_classes_compiled_jar := $(intermediates.COMMON)/$(full_classes_compiled_jar_leaf) $(full_classes_compiled_jar): $(java_sources) $(full_java_lib_deps) $(transform-java-to-classes.jar) +ifneq ($(LOCAL_NO_EMMA_COMPILE),true) +# If you instrument class files that have local variable debug information in +# them emma does not correctly maintain the local variable table. +# This will cause an error when you try to convert the class files for Android. +# The workaround for this to compile the java classes with only +# line and source debug information, not local information. +$(full_classes_compiled_jar): PRIVATE_JAVAC_DEBUG_FLAGS := -g:{lines,source} +else +# when emma is off, compile with the default flags, which contain full debug +# info +$(full_classes_compiled_jar): PRIVATE_JAVAC_DEBUG_FLAGS := -g +endif + emma_intermediates_dir := $(intermediates.COMMON)/emma_out -# the 'lib/$(full_classes_compiled_name_jar)' portion of this path is fixed in +# the 'lib/$(full_classes_compiled_jar_leaf)' portion of this path is fixed in # the emma tool -full_classes_emma_jar := $(emma_intermediates_dir)/lib/$(full_classes_compiled_name_jar) +full_classes_emma_jar := $(emma_intermediates_dir)/lib/$(full_classes_compiled_jar_leaf) ifeq ($(LOCAL_IS_STATIC_JAVA_LIBRARY),true) # Skip adding emma instrumentation to class files if this is a static library,