OSDN Git Service

Add missing vndk-sp libs to the VNDK-SP list
[android-x86/device-generic-common.git] / vndk / Android.mk
1 ifneq ($(filter generic%,$(TARGET_DEVICE)),)
2
3 LOCAL_PATH := $(call my-dir)
4
5 # b/69526027: This VNDK-SP install routine must be removed. Instead, we must
6 # build vendor variants of the VNDK-SP modules.
7
8 ifndef BOARD_VNDK_VERSION
9 # The libs with "vndk: {enabled: true, support_system_process: true}" will be
10 # added VNDK_SP_LIBRARIES automatically. And the core variants of the VNDK-SP
11 # libs will be copied to vndk-sp directory.
12 # However, some of those libs need FWK-ONLY libs, which must be listed here
13 # manually.
14 VNDK_SP_LIBRARIES := \
15     libdexfile
16
17 install_in_hw_dir := \
18    android.hidl.memory@1.0-impl
19
20 define define-vndk-sp-lib
21 include $$(CLEAR_VARS)
22 LOCAL_MODULE := $1.vndk-sp-gen
23 LOCAL_MODULE_CLASS := SHARED_LIBRARIES
24 LOCAL_PREBUILT_MODULE_FILE := $$(call intermediates-dir-for,SHARED_LIBRARIES,$1,,,,)/$1.so
25 LOCAL_STRIP_MODULE := false
26 LOCAL_MULTILIB := first
27 LOCAL_MODULE_TAGS := optional
28 LOCAL_INSTALLED_MODULE_STEM := $1.so
29 LOCAL_MODULE_SUFFIX := .so
30 LOCAL_MODULE_RELATIVE_PATH := vndk-sp$(if $(filter $1,$(install_in_hw_dir)),/hw)
31 include $$(BUILD_PREBUILT)
32
33 ifneq ($$(TARGET_2ND_ARCH),)
34 ifneq ($$(TARGET_TRANSLATE_2ND_ARCH),true)
35 include $$(CLEAR_VARS)
36 LOCAL_MODULE := $1.vndk-sp-gen
37 LOCAL_MODULE_CLASS := SHARED_LIBRARIES
38 LOCAL_PREBUILT_MODULE_FILE := $$(call intermediates-dir-for,SHARED_LIBRARIES,$1,,,$$(TARGET_2ND_ARCH_VAR_PREFIX),)/$1.so
39 LOCAL_STRIP_MODULE := false
40 LOCAL_MULTILIB := 32
41 LOCAL_MODULE_TAGS := optional
42 LOCAL_INSTALLED_MODULE_STEM := $1.so
43 LOCAL_MODULE_SUFFIX := .so
44 LOCAL_MODULE_RELATIVE_PATH := vndk-sp$(if $(filter $1,$(install_in_hw_dir)),/hw)
45 include $$(BUILD_PREBUILT)
46 endif # TARGET_TRANSLATE_2ND_ARCH is not true
47 endif # TARGET_2ND_ARCH is not empty
48 endef
49
50 # Add VNDK-SP libs to the list if they are missing
51 $(foreach lib,$(VNDK_SAMEPROCESS_LIBRARIES),\
52     $(if $(filter $(lib),$(VNDK_SP_LIBRARIES)),,\
53     $(eval VNDK_SP_LIBRARIES += $(lib))))
54
55 $(foreach lib,$(VNDK_SP_LIBRARIES),\
56     $(eval $(call define-vndk-sp-lib,$(lib))))
57
58 install_in_hw_dir :=
59
60 include $(CLEAR_VARS)
61 LOCAL_MODULE := vndk-sp
62 LOCAL_MODULE_OWNER := google
63 LOCAL_MODULE_TAGS := optional
64 LOCAL_REQUIRED_MODULES := $(addsuffix .vndk-sp-gen,$(VNDK_SP_LIBRARIES))
65 include $(BUILD_PHONY_PACKAGE)
66 endif # BOARD_VNDK_VERSION
67 endif # TARGET_DEVICE is generic*