Merge \"Extend SDK link check to java libraries\"
am: e706372ba1
Change-Id: Ia4cb9cfe94da5bdccce8726ed8777de13638bada
This commit is contained in:
commit
720a966ce5
|
@ -372,3 +372,42 @@ $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_JACK_SHARED_LIBRARIES:= $(full_shared_jac
|
|||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_JARJAR_RULES := $(LOCAL_JARJAR_RULES)
|
||||
|
||||
endif # need_compile_java
|
||||
|
||||
|
||||
###########################################################
|
||||
# Verify that all libraries are safe to use
|
||||
###########################################################
|
||||
ifndef LOCAL_IS_HOST_MODULE
|
||||
my_link_type := $(intermediates.COMMON)/link_type
|
||||
my_link_type_deps := $(strip \
|
||||
$(foreach lib,$(LOCAL_STATIC_JAVA_LIBRARIES),\
|
||||
$(call intermediates-dir-for, \
|
||||
JAVA_LIBRARIES,$(lib),,COMMON)/link_type) \
|
||||
$(foreach lib,$(apk_libraries), \
|
||||
$(call intermediates-dir-for, \
|
||||
APPS,$(lib),,COMMON)/link_type))
|
||||
ifeq ($(LOCAL_SDK_VERSION),system_current)
|
||||
$(my_link_type): PRIVATE_LINK_TYPE := system
|
||||
$(my_link_type): PRIVATE_ALLOWED_TYPES := (sdk|system)
|
||||
else ifneq ($(LOCAL_SDK_VERSION),)
|
||||
$(my_link_type): PRIVATE_LINK_TYPE := sdk
|
||||
$(my_link_type): PRIVATE_ALLOWED_TYPES := sdk
|
||||
else
|
||||
$(my_link_type): PRIVATE_LINK_TYPE := platform
|
||||
$(my_link_type): PRIVATE_ALLOWED_TYPES := (sdk|system|platform)
|
||||
endif
|
||||
$(my_link_type): PRIVATE_DEPS := $(my_link_type_deps)
|
||||
$(my_link_type): PRIVATE_MODULE := $(LOCAL_MODULE)
|
||||
$(my_link_type): PRIVATE_MAKEFILE := $(LOCAL_MODULE_MAKEFILE)
|
||||
$(my_link_type): $(my_link_type_deps)
|
||||
@echo Check Java library module types: $@
|
||||
$(hide) mkdir -p $(dir $@)
|
||||
$(hide) rm -f $@
|
||||
$(hide) for f in $(PRIVATE_DEPS); do \
|
||||
grep -qE '^$(PRIVATE_ALLOWED_TYPES)$$' $$f || \
|
||||
$(call echo-warning,"$(PRIVATE_MAKEFILE): $(PRIVATE_MODULE) ($(PRIVATE_LINK_TYPE)) should not link to $$(basename $${f%_intermediates/link_type}) ($$(cat $$f))"); \
|
||||
done
|
||||
$(hide) echo $(PRIVATE_LINK_TYPE) >$@
|
||||
|
||||
$(LOCAL_BUILT_MODULE): $(my_link_type)
|
||||
endif # !LOCAL_IS_HOST_MODULE
|
||||
|
|
|
@ -370,6 +370,20 @@ common_javalib_jar := $(intermediates.COMMON)/javalib.jar
|
|||
|
||||
$(common_classes_jar) $(common_javalib_jar): PRIVATE_MODULE := $(LOCAL_MODULE)
|
||||
|
||||
my_link_type := $(intermediates.COMMON)/link_type
|
||||
ifeq ($(LOCAL_SDK_VERSION),system_current)
|
||||
$(my_link_type): PRIVATE_LINK_TYPE := system
|
||||
else ifneq ($(LOCAL_SDK_VERSION),)
|
||||
$(my_link_type): PRIVATE_LINK_TYPE := sdk
|
||||
else
|
||||
$(my_link_type): PRIVATE_LINK_TYPE := platform
|
||||
endif
|
||||
$(my_link_type):
|
||||
@echo Check module type: $@
|
||||
$(hide) mkdir -p $(dir $@) && rm -f $@
|
||||
$(hide) echo $(PRIVATE_LINK_TYPE) >$@
|
||||
$(LOCAL_BUILT_MODULE): $(my_link_type)
|
||||
|
||||
ifeq ($(prebuilt_module_is_dex_javalib),true)
|
||||
# For prebuilt shared Java library we don't have classes.jar.
|
||||
$(common_javalib_jar) : $(my_src_jar)
|
||||
|
|
Loading…
Reference in New Issue