Fix duplicate and dangling rules
I6730e2d3ec38004874265b2a690442dec57b33f4 introduced duplicate rules
to build classes.jar for static java library prebuilts, and left rules
to copy $(built_dex_intermediates) to $(built_dex) for modules that
don't build dex files.
Move prebuilts LOCAL_BUILT_MODULE back to javalib.jar to match
non-prebuilt modules, and remove the manual building of javalib.jar.
Add a check around $(built_dex_intermediates) for static java libraries.
Bug: 36901093
Bug: 36902714
Test: m -j ANDROID_COMPILE_WITH_JACK=false
Change-Id: I291510b56162f0d35553e3c7ccd59b1382224d62
(cherry picked from commit 96476c1d50
)
This commit is contained in:
parent
69d85288cb
commit
487a313bb6
|
@ -639,6 +639,7 @@ $(eval $(call copy-one-file,$(full_classes_proguard_jar),$(full_classes_jar)))
|
|||
|
||||
$(call define-jar-to-toc-rule, $(full_classes_jar))
|
||||
|
||||
ifneq ($(LOCAL_IS_STATIC_JAVA_LIBRARY),true)
|
||||
ifndef LOCAL_JACK_ENABLED
|
||||
$(built_dex_intermediate): PRIVATE_DX_FLAGS := $(LOCAL_DX_FLAGS)
|
||||
# If you instrument class files that have local variable debug information in
|
||||
|
@ -660,6 +661,8 @@ $(built_dex): $(built_dex_intermediate)
|
|||
$(hide) rm -f $(dir $@)/classes*.dex
|
||||
$(hide) cp -fp $(dir $<)/classes*.dex $(dir $@)
|
||||
|
||||
endif # !LOCAL_IS_STATIC_JAVA_LIBRARY
|
||||
|
||||
findbugs_xml := $(intermediates.COMMON)/findbugs.xml
|
||||
$(findbugs_xml): PRIVATE_AUXCLASSPATH := $(addprefix -auxclasspath ,$(strip \
|
||||
$(call normalize-path-list,$(filter %.jar,$(full_java_libs)))))
|
||||
|
|
|
@ -116,7 +116,7 @@ $(call auto-prebuilt-boilerplate, \
|
|||
$(prebuilt_module_tags), \
|
||||
, \
|
||||
, \
|
||||
$(if $(prebuilt_is_host),classes.jar,javalib.jar))
|
||||
javalib.jar)
|
||||
|
||||
$(call auto-prebuilt-boilerplate, \
|
||||
$(prebuilt_static_java_libraries), \
|
||||
|
@ -125,7 +125,7 @@ $(call auto-prebuilt-boilerplate, \
|
|||
$(prebuilt_module_tags), \
|
||||
, \
|
||||
true, \
|
||||
classes.jar)
|
||||
javalib.jar)
|
||||
|
||||
prebuilt_static_libs :=
|
||||
prebuilt_shared_libs :=
|
||||
|
|
|
@ -436,16 +436,12 @@ ifdef LOCAL_IS_HOST_MODULE
|
|||
# for host java libraries deps should be in the common dir, so we make a copy in
|
||||
# the common dir.
|
||||
common_classes_jar := $(intermediates.COMMON)/classes.jar
|
||||
common_javalib_jar := $(intermediates.COMMON)/javalib.jar
|
||||
|
||||
$(common_classes_jar) $(common_javalib_jar): PRIVATE_MODULE := $(LOCAL_MODULE)
|
||||
$(common_classes_jar): PRIVATE_MODULE := $(LOCAL_MODULE)
|
||||
|
||||
$(common_classes_jar) : $(my_src_jar)
|
||||
$(transform-prebuilt-to-target)
|
||||
|
||||
$(common_javalib_jar) : $(common_classes_jar)
|
||||
$(transform-prebuilt-to-target)
|
||||
|
||||
else # !LOCAL_IS_HOST_MODULE
|
||||
# for target java libraries, the LOCAL_BUILT_MODULE is in a product-specific dir,
|
||||
# while the deps should be in the common dir, so we make a copy in the common dir.
|
||||
|
|
Loading…
Reference in New Issue