Revert "Rename LOCAL_USE_VNDK"
Revert submission 2931430-local_use_vndk Reason for revert: build fails with barbet targets Reverted changes: /q/submissionid:2931430-local_use_vndk Change-Id: I40277cfb26bb4da5dc398b99fc4ab009d91405fc
This commit is contained in:
parent
f4c9330e24
commit
0bf6c284e0
12 changed files with 82 additions and 60 deletions
|
@ -29,7 +29,7 @@ ifeq (true,$(is_native))
|
|||
ifeq (true,$(LOCAL_VENDOR_MODULE))
|
||||
autogen_test_install_base = /data/local/tests/vendor
|
||||
endif
|
||||
ifeq (true,$(call module-in-vendor-or-product))
|
||||
ifeq (true,$(LOCAL_USE_VNDK))
|
||||
autogen_test_install_base = /data/local/tests/vendor
|
||||
endif
|
||||
endif
|
||||
|
|
|
@ -120,7 +120,7 @@ non_system_module := $(filter true, \
|
|||
$(LOCAL_VENDOR_MODULE) \
|
||||
$(LOCAL_PROPRIETARY_MODULE))
|
||||
|
||||
include $(BUILD_SYSTEM)/local_vendor_product.mk
|
||||
include $(BUILD_SYSTEM)/local_vndk.mk
|
||||
|
||||
# local_current_sdk needs to run before local_systemsdk because the former may override
|
||||
# LOCAL_SDK_VERSION which is used by the latter.
|
||||
|
@ -1095,10 +1095,10 @@ endif
|
|||
## When compiling against API imported module, use API import stub
|
||||
## libraries.
|
||||
##########################################################################
|
||||
ifneq ($(call module-in-vendor-or-product),)
|
||||
ifneq ($(LOCAL_USE_VNDK),)
|
||||
ifneq ($(LOCAL_MODULE_MAKEFILE),$(SOONG_ANDROID_MK))
|
||||
apiimport_postfix := .apiimport
|
||||
ifeq ($(LOCAL_IN_PRODUCT),true)
|
||||
ifeq ($(LOCAL_USE_VNDK_PRODUCT),true)
|
||||
apiimport_postfix := .apiimport.product
|
||||
else
|
||||
apiimport_postfix := .apiimport.vendor
|
||||
|
@ -1113,7 +1113,7 @@ endif
|
|||
## When compiling against the VNDK, add the .vendor or .product suffix to
|
||||
## required modules.
|
||||
##########################################################################
|
||||
ifneq ($(call module-in-vendor-or-product),)
|
||||
ifneq ($(LOCAL_USE_VNDK),)
|
||||
#####################################################
|
||||
## Soong modules may be built three times, once for
|
||||
## /system, once for /vendor and once for /product.
|
||||
|
@ -1124,7 +1124,7 @@ ifneq ($(call module-in-vendor-or-product),)
|
|||
# We don't do this renaming for soong-defined modules since they already
|
||||
# have correct names (with .vendor or .product suffix when necessary) in
|
||||
# their LOCAL_*_LIBRARIES.
|
||||
ifeq ($(LOCAL_IN_PRODUCT),true)
|
||||
ifeq ($(LOCAL_USE_VNDK_PRODUCT),true)
|
||||
my_required_modules := $(foreach l,$(my_required_modules),\
|
||||
$(if $(SPLIT_PRODUCT.SHARED_LIBRARIES.$(l)),$(l).product,$(l)))
|
||||
else
|
||||
|
|
|
@ -332,10 +332,10 @@ ifeq ($(CLANG_COVERAGE),true)
|
|||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(call module-in-vendor-or-product),)
|
||||
ifneq ($(LOCAL_USE_VNDK),)
|
||||
my_cflags += -D__ANDROID_VNDK__
|
||||
ifneq ($(LOCAL_IN_VENDOR),)
|
||||
# Vendor modules have LOCAL_IN_VENDOR
|
||||
ifneq ($(LOCAL_USE_VNDK_VENDOR),)
|
||||
# Vendor modules have LOCAL_USE_VNDK_VENDOR
|
||||
my_cflags += -D__ANDROID_VENDOR__
|
||||
|
||||
ifeq ($(BOARD_API_LEVEL),)
|
||||
|
@ -345,8 +345,8 @@ ifneq ($(call module-in-vendor-or-product),)
|
|||
else
|
||||
my_cflags += -D__ANDROID_VENDOR_API__=$(BOARD_API_LEVEL)
|
||||
endif
|
||||
else ifneq ($(LOCAL_IN_PRODUCT),)
|
||||
# Product modules have LOCAL_IN_PRODUCT
|
||||
else ifneq ($(LOCAL_USE_VNDK_PRODUCT),)
|
||||
# Product modules have LOCAL_USE_VNDK_PRODUCT
|
||||
my_cflags += -D__ANDROID_PRODUCT__
|
||||
endif
|
||||
endif
|
||||
|
@ -1174,8 +1174,8 @@ endif
|
|||
|
||||
apiimport_postfix := .apiimport
|
||||
|
||||
ifneq ($(call module-in-vendor-or-product),)
|
||||
ifeq ($(LOCAL_IN_PRODUCT),true)
|
||||
ifneq ($(LOCAL_USE_VNDK),)
|
||||
ifeq ($(LOCAL_USE_VNDK_PRODUCT),true)
|
||||
apiimport_postfix := .apiimport.product
|
||||
else
|
||||
apiimport_postfix := .apiimport.vendor
|
||||
|
@ -1192,14 +1192,14 @@ my_header_libraries := $(foreach l,$(my_header_libraries), \
|
|||
###########################################################
|
||||
## When compiling against the VNDK, use LL-NDK libraries
|
||||
###########################################################
|
||||
ifneq ($(call module-in-vendor-or-product),)
|
||||
ifneq ($(LOCAL_USE_VNDK),)
|
||||
#####################################################
|
||||
## Soong modules may be built three times, once for
|
||||
## /system, once for /vendor and once for /product.
|
||||
## If we're using the VNDK, switch all soong
|
||||
## libraries over to the /vendor or /product variant.
|
||||
#####################################################
|
||||
ifeq ($(LOCAL_IN_PRODUCT),true)
|
||||
ifeq ($(LOCAL_USE_VNDK_PRODUCT),true)
|
||||
my_whole_static_libraries := $(foreach l,$(my_whole_static_libraries),\
|
||||
$(if $(SPLIT_PRODUCT.STATIC_LIBRARIES.$(l)),$(l).product,$(l)))
|
||||
my_static_libraries := $(foreach l,$(my_static_libraries),\
|
||||
|
@ -1226,7 +1226,7 @@ endif
|
|||
|
||||
# Platform can use vendor public libraries. If a required shared lib is one of
|
||||
# the vendor public libraries, the lib is switched to the stub version of the lib.
|
||||
ifeq ($(call module-in-vendor-or-product),)
|
||||
ifeq ($(LOCAL_USE_VNDK),)
|
||||
my_shared_libraries := $(foreach l,$(my_shared_libraries),\
|
||||
$(if $(filter $(l),$(VENDOR_PUBLIC_LIBRARIES)),$(l).vendorpublic,$(l)))
|
||||
endif
|
||||
|
@ -1278,7 +1278,7 @@ ifdef LOCAL_SDK_VERSION
|
|||
my_link_type := native:ndk:$(my_ndk_stl_family):$(my_ndk_stl_link_type)
|
||||
my_warn_types := $(my_warn_ndk_types)
|
||||
my_allowed_types := $(my_allowed_ndk_types)
|
||||
else ifeq ($(call module-in-vendor-or-product),true)
|
||||
else ifdef LOCAL_USE_VNDK
|
||||
_name := $(patsubst %.vendor,%,$(LOCAL_MODULE))
|
||||
_name := $(patsubst %.product,%,$(LOCAL_MODULE))
|
||||
ifneq ($(filter $(_name),$(VNDK_CORE_LIBRARIES) $(VNDK_SAMEPROCESS_LIBRARIES) $(LLNDK_LIBRARIES)),)
|
||||
|
@ -1289,7 +1289,7 @@ else ifeq ($(call module-in-vendor-or-product),true)
|
|||
endif
|
||||
my_warn_types :=
|
||||
my_allowed_types := native:vndk native:vndk_private
|
||||
else ifeq ($(LOCAL_IN_PRODUCT),true)
|
||||
else ifeq ($(LOCAL_USE_VNDK_PRODUCT),true)
|
||||
# Modules installed to /product cannot directly depend on modules marked
|
||||
# with vendor_available: false
|
||||
my_link_type := native:product
|
||||
|
@ -1592,7 +1592,7 @@ my_ldlibs += $(my_cxx_ldlibs)
|
|||
###########################################################
|
||||
ifndef LOCAL_IS_HOST_MODULE
|
||||
|
||||
ifeq ($(call module-in-vendor-or-product),true)
|
||||
ifdef LOCAL_USE_VNDK
|
||||
my_target_global_c_includes :=
|
||||
my_target_global_c_system_includes := $(TARGET_OUT_HEADERS)
|
||||
else ifdef LOCAL_SDK_VERSION
|
||||
|
@ -1686,7 +1686,7 @@ endif
|
|||
####################################################
|
||||
imported_includes :=
|
||||
|
||||
ifeq (true,$(call module-in-vendor-or-product))
|
||||
ifdef LOCAL_USE_VNDK
|
||||
imported_includes += $(call intermediates-dir-for,HEADER_LIBRARIES,device_kernel_headers,$(my_kind),,$(LOCAL_2ND_ARCH_VAR_PREFIX),$(my_host_cross))
|
||||
else
|
||||
# everything else should manually specify headers
|
||||
|
|
|
@ -80,7 +80,7 @@ include $(BUILD_SYSTEM)/allowed_ndk_types.mk
|
|||
|
||||
ifdef LOCAL_SDK_VERSION
|
||||
my_link_type := native:ndk:$(my_ndk_stl_family):$(my_ndk_stl_link_type)
|
||||
else ifeq ($(call module-in-vendor-or-product),true)
|
||||
else ifdef LOCAL_USE_VNDK
|
||||
_name := $(patsubst %.vendor,%,$(LOCAL_MODULE))
|
||||
_name := $(patsubst %.product,%,$(LOCAL_MODULE))
|
||||
ifneq ($(filter $(_name),$(VNDK_CORE_LIBRARIES) $(VNDK_SAMEPROCESS_LIBRARIES) $(LLNDK_LIBRARIES)),)
|
||||
|
@ -90,7 +90,7 @@ else ifeq ($(call module-in-vendor-or-product),true)
|
|||
my_link_type := native:vndk_private
|
||||
endif
|
||||
else
|
||||
ifeq ($(LOCAL_IN_PRODUCT),true)
|
||||
ifeq ($(LOCAL_USE_VNDK_PRODUCT),true)
|
||||
my_link_type := native:product
|
||||
else
|
||||
my_link_type := native:vendor
|
||||
|
@ -139,8 +139,8 @@ include $(BUILD_SYSTEM)/cxx_stl_setup.mk
|
|||
# When compiling against API imported module, use API import stub libraries.
|
||||
apiimport_postfix := .apiimport
|
||||
|
||||
ifeq ($(call module-in-vendor-or-product),true)
|
||||
ifeq ($(LOCAL_IN_PRODUCT),true)
|
||||
ifneq ($(LOCAL_USE_VNDK),)
|
||||
ifeq ($(LOCAL_USE_VNDK_PRODUCT),true)
|
||||
apiimport_postfix := .apiimport.product
|
||||
else
|
||||
apiimport_postfix := .apiimport.vendor
|
||||
|
@ -158,8 +158,8 @@ my_system_shared_libraries := $(foreach l,$(my_system_shared_libraries), \
|
|||
endif #my_system_shared_libraries
|
||||
|
||||
ifdef my_shared_libraries
|
||||
ifeq ($(call module-in-vendor-or-product),true)
|
||||
ifeq ($(LOCAL_IN_PRODUCT),true)
|
||||
ifdef LOCAL_USE_VNDK
|
||||
ifeq ($(LOCAL_USE_VNDK_PRODUCT),true)
|
||||
my_shared_libraries := $(foreach l,$(my_shared_libraries),\
|
||||
$(if $(SPLIT_PRODUCT.SHARED_LIBRARIES.$(l)),$(l).product,$(l)))
|
||||
else
|
||||
|
|
|
@ -303,8 +303,8 @@ LOCAL_UNINSTALLABLE_MODULE:=
|
|||
LOCAL_UNSTRIPPED_PATH:=
|
||||
LOCAL_USE_AAPT2:=
|
||||
LOCAL_USE_CLANG_LLD:=
|
||||
LOCAL_IN_VENDOR:=
|
||||
LOCAL_IN_PRODUCT:=
|
||||
LOCAL_USE_VNDK:=
|
||||
LOCAL_USE_VNDK_PRODUCT:=
|
||||
LOCAL_USES_LIBRARIES:=
|
||||
LOCAL_VENDOR_MODULE:=
|
||||
LOCAL_VINTF_FRAGMENTS:=
|
||||
|
|
|
@ -13,12 +13,13 @@ 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
|
||||
include $(BUILD_SYSTEM)/local_vndk.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)
|
||||
# If we're using the VNDK, only vendor modules using the VNDK may use
|
||||
# LOCAL_COPY_HEADERS. Platform libraries will not have the include path
|
||||
# present.
|
||||
ifndef LOCAL_USE_VNDK
|
||||
$(call pretty-error,Only vendor modules using LOCAL_USE_VNDK may use LOCAL_COPY_HEADERS)
|
||||
endif
|
||||
|
||||
# Clean up LOCAL_COPY_HEADERS_TO, since soong_ui will be comparing cleaned
|
||||
|
|
|
@ -2774,10 +2774,6 @@ define module-min-sdk-version
|
|||
$(if $(LOCAL_MIN_SDK_VERSION),$(LOCAL_MIN_SDK_VERSION),$(call module-target-sdk-version))
|
||||
endef
|
||||
|
||||
# Checks if module is in vendor or product
|
||||
define module-in-vendor-or-product
|
||||
$(if $(filter true,$(LOCAL_IN_VENDOR) $(LOCAL_IN_PRODUCT)),true)
|
||||
endef
|
||||
|
||||
define transform-classes.jar-to-dex
|
||||
@echo "target Dex: $(PRIVATE_MODULE)"
|
||||
|
|
|
@ -45,7 +45,7 @@ ifeq ($(LOCAL_NO_CRT),true)
|
|||
my_target_crtbegin_dynamic_o :=
|
||||
my_target_crtbegin_static_o :=
|
||||
my_target_crtend_o :=
|
||||
else ifeq (true,$(call module-in-vendor-or-product))
|
||||
else ifdef LOCAL_USE_VNDK
|
||||
my_target_crtbegin_dynamic_o := $(SOONG_$(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_OBJECT_crtbegin_dynamic.vendor)
|
||||
my_target_crtbegin_static_o := $(SOONG_$(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_OBJECT_crtbegin_static.vendor)
|
||||
my_target_crtend_o := $(SOONG_$(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_OBJECT_crtend_android.vendor)
|
||||
|
|
|
@ -1,16 +0,0 @@
|
|||
|
||||
# Set LOCAL_IN_VENDOR for modules going into vendor or odm partition and LOCAL_IN_PRODUCT for product
|
||||
# except for host modules. If LOCAL_SDK_VERSION is set, thats a more restrictive set, so they don't need
|
||||
# LOCAL_IN_VENDOR or LOCAL_IN_PRODUCT
|
||||
ifndef LOCAL_IS_HOST_MODULE
|
||||
ifndef LOCAL_SDK_VERSION
|
||||
ifneq (,$(filter true,$(LOCAL_VENDOR_MODULE) $(LOCAL_ODM_MODULE) $(LOCAL_OEM_MODULE) $(LOCAL_PROPRIETARY_MODULE)))
|
||||
LOCAL_IN_VENDOR:=true
|
||||
# Note: no need to check LOCAL_MODULE_PATH* since LOCAL_[VENDOR|ODM|OEM]_MODULE is already
|
||||
# set correctly before this is included.
|
||||
endif
|
||||
ifeq (true,$(LOCAL_PRODUCT_MODULE))
|
||||
LOCAL_IN_PRODUCT:=true
|
||||
endif
|
||||
endif
|
||||
endif
|
41
core/local_vndk.mk
Normal file
41
core/local_vndk.mk
Normal file
|
@ -0,0 +1,41 @@
|
|||
|
||||
#Set LOCAL_USE_VNDK for modules going into product, vendor or odm partition, except for host modules
|
||||
#If LOCAL_SDK_VERSION is set, thats a more restrictive set, so they dont need LOCAL_USE_VNDK
|
||||
ifndef LOCAL_IS_HOST_MODULE
|
||||
ifndef LOCAL_SDK_VERSION
|
||||
ifneq (,$(filter true,$(LOCAL_VENDOR_MODULE) $(LOCAL_ODM_MODULE) $(LOCAL_OEM_MODULE) $(LOCAL_PROPRIETARY_MODULE)))
|
||||
LOCAL_USE_VNDK:=true
|
||||
LOCAL_USE_VNDK_VENDOR:=true
|
||||
# Note: no need to check LOCAL_MODULE_PATH* since LOCAL_[VENDOR|ODM|OEM]_MODULE is already
|
||||
# set correctly before this is included.
|
||||
endif
|
||||
ifdef PRODUCT_PRODUCT_VNDK_VERSION
|
||||
# Product modules also use VNDK when PRODUCT_PRODUCT_VNDK_VERSION is defined.
|
||||
ifeq (true,$(LOCAL_PRODUCT_MODULE))
|
||||
LOCAL_USE_VNDK:=true
|
||||
LOCAL_USE_VNDK_PRODUCT:=true
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
# Verify LOCAL_USE_VNDK usage, and set LOCAL_SDK_VERSION if necessary
|
||||
|
||||
ifdef LOCAL_IS_HOST_MODULE
|
||||
ifdef LOCAL_USE_VNDK
|
||||
$(shell echo $(LOCAL_MODULE_MAKEFILE): $(LOCAL_MODULE): Do not use LOCAL_USE_VNDK with host modules >&2)
|
||||
$(error done)
|
||||
endif
|
||||
endif
|
||||
ifdef LOCAL_USE_VNDK
|
||||
ifneq ($(LOCAL_USE_VNDK),true)
|
||||
$(shell echo '$(LOCAL_MODULE_MAKEFILE): $(LOCAL_MODULE): LOCAL_USE_VNDK must be "true" or empty, not "$(LOCAL_USE_VNDK)"' >&2)
|
||||
$(error done)
|
||||
endif
|
||||
|
||||
ifdef LOCAL_SDK_VERSION
|
||||
$(shell echo $(LOCAL_MODULE_MAKEFILE): $(LOCAL_MODULE): LOCAL_USE_VNDK must not be used with LOCAL_SDK_VERSION >&2)
|
||||
$(error done)
|
||||
endif
|
||||
endif
|
||||
|
|
@ -42,7 +42,7 @@ endif
|
|||
ifeq ($(LOCAL_NO_CRT),true)
|
||||
my_target_crtbegin_so_o :=
|
||||
my_target_crtend_so_o :=
|
||||
else ifeq ($(call module-in-vendor-or-product),true)
|
||||
else ifdef LOCAL_USE_VNDK
|
||||
my_target_crtbegin_so_o := $(SOONG_$(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_OBJECT_crtbegin_so.vendor)
|
||||
my_target_crtend_so_o := $(SOONG_$(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_OBJECT_crtend_so.vendor)
|
||||
else
|
||||
|
|
|
@ -99,7 +99,7 @@ ifneq ($(filter STATIC_LIBRARIES SHARED_LIBRARIES RLIB_LIBRARIES DYLIB_LIBRARIES
|
|||
include $(BUILD_SYSTEM)/link_type.mk
|
||||
endif
|
||||
|
||||
ifeq ($(call module-in-vendor-or-product),true)
|
||||
ifdef LOCAL_USE_VNDK
|
||||
ifneq ($(LOCAL_VNDK_DEPEND_ON_CORE_VARIANT),true)
|
||||
name_without_suffix := $(patsubst %.vendor,%,$(LOCAL_MODULE))
|
||||
ifneq ($(name_without_suffix),$(LOCAL_MODULE))
|
||||
|
@ -128,8 +128,8 @@ endif
|
|||
ifdef LOCAL_INSTALLED_MODULE
|
||||
ifdef LOCAL_SHARED_LIBRARIES
|
||||
my_shared_libraries := $(LOCAL_SHARED_LIBRARIES)
|
||||
ifeq ($(call module-in-vendor-or-product),true)
|
||||
ifdef LOCAL_IN_PRODUCT
|
||||
ifdef LOCAL_USE_VNDK
|
||||
ifdef LOCAL_USE_VNDK_PRODUCT
|
||||
my_shared_libraries := $(foreach l,$(my_shared_libraries),\
|
||||
$(if $(SPLIT_PRODUCT.SHARED_LIBRARIES.$(l)),$(l).product,$(l)))
|
||||
else
|
||||
|
@ -143,8 +143,8 @@ ifdef LOCAL_INSTALLED_MODULE
|
|||
ifdef LOCAL_DYLIB_LIBRARIES
|
||||
my_dylibs := $(LOCAL_DYLIB_LIBRARIES)
|
||||
# Treat these as shared library dependencies for installation purposes.
|
||||
ifeq ($(call module-in-vendor-or-product),true)
|
||||
ifdef LOCAL_IN_PRODUCT
|
||||
ifdef LOCAL_USE_VNDK
|
||||
ifdef LOCAL_USE_VNDK_PRODUCT
|
||||
my_dylibs := $(foreach l,$(my_dylibs),\
|
||||
$(if $(SPLIT_PRODUCT.SHARED_LIBRARIES.$(l)),$(l).product,$(l)))
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue