1 LOCAL_IS_HOST_MODULE := true
4 include $(BUILD_SYSTEM)/multilib.mk
6 ifndef LOCAL_MODULE_HOST_ARCH
7 ifndef my_module_multilib
8 ifeq ($(HOST_PREFER_32_BIT),true)
9 my_module_multilib := 32
11 # By default we only build host module for the first arch.
12 my_module_multilib := first
17 ifeq ($(LOCAL_NO_FPIE),)
18 LOCAL_LDFLAGS += $(HOST_FPIE_FLAGS)
21 ifeq ($(my_module_multilib),both)
22 ifeq ($(LOCAL_MODULE_PATH_32)$(LOCAL_MODULE_STEM_32),)
23 $(error $(LOCAL_PATH): LOCAL_MODULE_STEM_32 or LOCAL_MODULE_PATH_32 is required for LOCAL_MULTILIB := both for module $(LOCAL_MODULE))
25 ifeq ($(LOCAL_MODULE_PATH_64)$(LOCAL_MODULE_STEM_64),)
26 $(error $(LOCAL_PATH): LOCAL_MODULE_STEM_64 or LOCAL_MODULE_PATH_64 is required for LOCAL_MULTILIB := both for module $(LOCAL_MODULE))
28 else #!LOCAL_MULTILIB == both
29 LOCAL_NO_2ND_ARCH_MODULE_SUFFIX := true
32 LOCAL_2ND_ARCH_VAR_PREFIX :=
33 include $(BUILD_SYSTEM)/module_arch_supported.mk
35 ifeq ($(my_module_arch_supported),true)
36 include $(BUILD_SYSTEM)/host_executable_internal.mk
40 LOCAL_2ND_ARCH_VAR_PREFIX := $(HOST_2ND_ARCH_VAR_PREFIX)
41 include $(BUILD_SYSTEM)/module_arch_supported.mk
42 ifeq ($(my_module_arch_supported),true)
43 # Build for HOST_2ND_ARCH
44 OVERRIDE_BUILT_MODULE_PATH :=
46 LOCAL_INSTALLED_MODULE :=
47 LOCAL_INTERMEDIATE_TARGETS :=
49 include $(BUILD_SYSTEM)/host_executable_internal.mk
51 LOCAL_2ND_ARCH_VAR_PREFIX :=
55 my_prefix := HOST_CROSS_
56 LOCAL_HOST_PREFIX := $(my_prefix)
57 include $(BUILD_SYSTEM)/module_arch_supported.mk
58 ifeq ($(my_module_arch_supported),true)
60 OVERRIDE_BUILT_MODULE_PATH :=
61 # we don't want others using the cross compiled version
62 saved_LOCAL_BUILT_MODULE := $(LOCAL_BUILT_MODULE)
63 saved_LOCAL_INSTALLED_MODULE := $(LOCAL_INSTALLED_MODULE)
64 saved_LOCAL_LDFLAGS := $(LOCAL_LDFLAGS)
66 LOCAL_INSTALLED_MODULE :=
67 LOCAL_INTERMEDIATE_TARGETS :=
69 ifeq ($(LOCAL_NO_FPIE),)
70 LOCAL_LDFLAGS += $(HOST_CROSS_FPIE_FLAGS)
73 include $(BUILD_SYSTEM)/host_executable_internal.mk
74 LOCAL_LDFLAGS := $(saved_LOCAL_LDFLAGS)
75 LOCAL_BUILT_MODULE := $(saved_LOCAL_BUILT_MODULE)
76 LOCAL_INSTALLED_MODULE := $(saved_LOCAL_INSTALLED_MODULE)
79 ifdef HOST_CROSS_2ND_ARCH
80 LOCAL_2ND_ARCH_VAR_PREFIX := $(HOST_CROSS_2ND_ARCH_VAR_PREFIX)
81 include $(BUILD_SYSTEM)/module_arch_supported.mk
82 ifeq ($(my_module_arch_supported),true)
83 OVERRIDE_BUILT_MODULE_PATH :=
84 # we don't want others using the cross compiled version
85 saved_LOCAL_BUILT_MODULE := $(LOCAL_BUILT_MODULE)
86 saved_LOCAL_INSTALLED_MODULE := $(LOCAL_INSTALLED_MODULE)
87 saved_LOCAL_LDFLAGS := $(LOCAL_LDFLAGS)
89 LOCAL_INSTALLED_MODULE :=
90 LOCAL_INTERMEDIATE_TARGETS :=
92 ifeq ($(LOCAL_NO_FPIE),)
93 LOCAL_LDFLAGS += $(HOST_CROSS_FPIE_FLAGS)
96 include $(BUILD_SYSTEM)/host_executable_internal.mk
97 LOCAL_LDFLAGS := $(saved_LOCAL_LDFLAGS)
98 LOCAL_BUILT_MODULE := $(saved_LOCAL_BUILT_MODULE)
99 LOCAL_INSTALLED_MODULE := $(saved_LOCAL_INSTALLED_MODULE)
101 LOCAL_2ND_ARCH_VAR_PREFIX :=
106 LOCAL_NO_2ND_ARCH_MODULE_SUFFIX :=
107 my_module_arch_supported :=