454265c233
LOCAL_USE_VNDK property refers if the module uses VNDK, and this property is being used to check if the module is installed in vendor or product. However, the term no longer makes sense with VNDK deprecation, so it should be renamed. Similar to change in aosp/2897612, rename LOCAL_USE_VNDK as LOCAL_IN_VENDOR or LOCAL_IN_PRODUCT. Bug: 316829758 Test: AOSP CF build succeeded Change-Id: I2da2e2027ccabbcfbb444abc6828addeb3b22e13
53 lines
2 KiB
Makefile
53 lines
2 KiB
Makefile
ifneq (,$(strip $(LOCAL_COPY_HEADERS)))
|
|
###########################################################
|
|
## Copy headers to the install tree
|
|
###########################################################
|
|
$(call record-module-type,COPY_HEADERS)
|
|
ifneq ($(strip $(LOCAL_IS_HOST_MODULE)),)
|
|
$(call pretty-error,LOCAL_COPY_HEADERS may not be used with host modules)
|
|
endif
|
|
|
|
# Modules linking against the SDK do not have the include path to use
|
|
# COPY_HEADERS, so prevent them from exporting any either.
|
|
ifdef LOCAL_SDK_VERSION
|
|
$(call pretty-error,Modules using LOCAL_SDK_VERSION may not use LOCAL_COPY_HEADERS)
|
|
endif
|
|
|
|
include $(BUILD_SYSTEM)/local_vendor_product.mk
|
|
|
|
# Modules in vendor or product may use LOCAL_COPY_HEADERS.
|
|
# Platform libraries will not have the include path present.
|
|
ifeq ($(call module-in-vendor-or-product),)
|
|
$(call pretty-error,Only modules in vendor or product may use LOCAL_COPY_HEADERS)
|
|
endif
|
|
|
|
# Clean up LOCAL_COPY_HEADERS_TO, since soong_ui will be comparing cleaned
|
|
# paths to figure out which headers are obsolete and should be removed.
|
|
LOCAL_COPY_HEADERS_TO := $(call clean-path,$(LOCAL_COPY_HEADERS_TO))
|
|
ifneq ($(filter /% .. ../%,$(LOCAL_COPY_HEADERS_TO)),)
|
|
$(call pretty-error,LOCAL_COPY_HEADERS_TO may not start with / or ../ : $(LOCAL_COPY_HEADERS_TO))
|
|
endif
|
|
ifeq ($(LOCAL_COPY_HEADERS_TO),.)
|
|
LOCAL_COPY_HEADERS_TO :=
|
|
endif
|
|
|
|
# Create a rule to copy each header, and make the
|
|
# all_copied_headers phony target depend on each
|
|
# destination header. copy-one-header defines the
|
|
# actual rule.
|
|
#
|
|
$(foreach header,$(LOCAL_COPY_HEADERS), \
|
|
$(eval _chFrom := $(LOCAL_PATH)/$(header)) \
|
|
$(eval _chTo := \
|
|
$(if $(LOCAL_COPY_HEADERS_TO),\
|
|
$(TARGET_OUT_HEADERS)/$(LOCAL_COPY_HEADERS_TO)/$(notdir $(header)),\
|
|
$(TARGET_OUT_HEADERS)/$(notdir $(header)))) \
|
|
$(eval ALL_COPIED_HEADERS.$(_chTo).MAKEFILE += $(LOCAL_MODULE_MAKEFILE)) \
|
|
$(eval ALL_COPIED_HEADERS.$(_chTo).SRC += $(_chFrom)) \
|
|
$(if $(filter $(_chTo),$(ALL_COPIED_HEADERS)),, \
|
|
$(eval ALL_COPIED_HEADERS += $(_chTo))) \
|
|
)
|
|
_chFrom :=
|
|
_chTo :=
|
|
|
|
endif # LOCAL_COPY_HEADERS
|