build: support compiling .mm on host
libchrome uses .mm (Objective-C++) files to bridge C++ code with OS X Frameworks. This adds support for compiling .mm to .o by just using the existing C++ support. Bug: 24168923 Change-Id: Ia65357e2e2584dfffcb6796e214fe6b27635c3a6
This commit is contained in:
@@ -926,6 +926,20 @@ $(objc_objects): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.m $(yacc_cpps) $
|
||||
-include $(objc_objects:%.o=%.P)
|
||||
endif
|
||||
|
||||
###########################################################
|
||||
## ObjC++: Compile .mm files to .o
|
||||
###########################################################
|
||||
|
||||
objcpp_sources := $(filter %.mm,$(my_src_files))
|
||||
objcpp_objects := $(addprefix $(intermediates)/,$(objcpp_sources:.mm=.o))
|
||||
|
||||
ifneq ($(strip $(objcpp_objects)),)
|
||||
$(objcpp_objects): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.mm $(yacc_cpps) $(proto_generated_headers) \
|
||||
$(my_additional_dependencies)
|
||||
$(transform-$(PRIVATE_HOST)mm-to-o)
|
||||
-include $(objcpp_objects:%.o=%.P)
|
||||
endif
|
||||
|
||||
###########################################################
|
||||
## AS: Compile .S files to .o.
|
||||
###########################################################
|
||||
@@ -1039,6 +1053,7 @@ normal_objects := \
|
||||
$(c_objects) \
|
||||
$(gen_c_objects) \
|
||||
$(objc_objects) \
|
||||
$(objcpp_objects) \
|
||||
$(yacc_objects) \
|
||||
$(lex_objects) \
|
||||
$(proto_generated_objects) \
|
||||
|
Reference in New Issue
Block a user