9ecbf83259
This is mostly the same as the existing 2ND_HOST / HOST_CROSS support. The interesting thing I did here was make x86 the 'first' architecture, and x86_64 the second. This way LOCAL_MULTILIB := first defaults to 32-bit windows modules. windows-x86/bin <- defaults to 32-bit executables windows-x86/lib <- 32-bit libraries, like before windows-x86/lib64 <- 64-bit libraries windows-x86/obj <- 32-bit intermediates windows-x86/obj64 <- 64-bit intermediates Then modules are registered with the names: host_cross_liblog <- 32-bit, like before host_cross_liblog_64 <- 64-bit Bug: 26957718 Change-Id: I9f119411acb43e973ec1e6bca3c1dc291c91556c
75 lines
1.9 KiB
Makefile
75 lines
1.9 KiB
Makefile
LOCAL_IS_HOST_MODULE := true
|
|
my_prefix := HOST_
|
|
LOCAL_HOST_PREFIX :=
|
|
include $(BUILD_SYSTEM)/multilib.mk
|
|
|
|
ifndef LOCAL_MODULE_HOST_ARCH
|
|
ifndef my_module_multilib
|
|
ifeq ($(HOST_PREFER_32_BIT),true)
|
|
my_module_multilib := 32
|
|
else
|
|
# libraries default to building for both architecturess
|
|
my_module_multilib := both
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
LOCAL_2ND_ARCH_VAR_PREFIX :=
|
|
include $(BUILD_SYSTEM)/module_arch_supported.mk
|
|
|
|
ifeq ($(my_module_arch_supported),true)
|
|
include $(BUILD_SYSTEM)/host_static_library_internal.mk
|
|
endif
|
|
|
|
ifdef HOST_2ND_ARCH
|
|
LOCAL_2ND_ARCH_VAR_PREFIX := $(HOST_2ND_ARCH_VAR_PREFIX)
|
|
include $(BUILD_SYSTEM)/module_arch_supported.mk
|
|
ifeq ($(my_module_arch_supported),true)
|
|
# Build for HOST_2ND_ARCH
|
|
OVERRIDE_BUILT_MODULE_PATH :=
|
|
LOCAL_BUILT_MODULE :=
|
|
LOCAL_INSTALLED_MODULE :=
|
|
LOCAL_INTERMEDIATE_TARGETS :=
|
|
|
|
include $(BUILD_SYSTEM)/host_static_library_internal.mk
|
|
endif
|
|
LOCAL_2ND_ARCH_VAR_PREFIX :=
|
|
endif # HOST_2ND_ARCH
|
|
|
|
ifdef HOST_CROSS_OS
|
|
my_prefix := HOST_CROSS_
|
|
LOCAL_HOST_PREFIX := $(my_prefix)
|
|
include $(BUILD_SYSTEM)/module_arch_supported.mk
|
|
ifeq ($(my_module_arch_supported),true)
|
|
# Build for Windows
|
|
OVERRIDE_BUILT_MODULE_PATH :=
|
|
LOCAL_BUILT_MODULE :=
|
|
LOCAL_INSTALLED_MODULE :=
|
|
LOCAL_INTERMEDIATE_TARGETS :=
|
|
|
|
include $(BUILD_SYSTEM)/host_static_library_internal.mk
|
|
endif
|
|
|
|
ifdef HOST_CROSS_2ND_ARCH
|
|
LOCAL_2ND_ARCH_VAR_PREFIX := $(HOST_CROSS_2ND_ARCH_VAR_PREFIX)
|
|
include $(BUILD_SYSTEM)/module_arch_supported.mk
|
|
ifeq ($(my_module_arch_supported),true)
|
|
# Build for HOST_CROSS_2ND_ARCH
|
|
OVERRIDE_BUILT_MODULE_PATH :=
|
|
LOCAL_BUILT_MODULE :=
|
|
LOCAL_INSTALLED_MODULE :=
|
|
LOCAL_INTERMEDIATE_TARGETS :=
|
|
|
|
include $(BUILD_SYSTEM)/host_static_library_internal.mk
|
|
endif
|
|
LOCAL_2ND_ARCH_VAR_PREFIX :=
|
|
endif
|
|
LOCAL_HOST_PREFIX :=
|
|
endif
|
|
|
|
my_module_arch_supported :=
|
|
|
|
###########################################################
|
|
## Copy headers to the install tree
|
|
###########################################################
|
|
include $(BUILD_COPY_HEADERS)
|