diff --git a/core/dynamic_binary.mk b/core/dynamic_binary.mk index 949793b634..f44b8a88f2 100644 --- a/core/dynamic_binary.mk +++ b/core/dynamic_binary.mk @@ -99,10 +99,15 @@ ifeq ($(BREAKPAD_GENERATE_SYMBOLS),true) my_breakpad_path := $(TARGET_OUT_BREAKPAD)/$(patsubst $(PRODUCT_OUT)/%,%,$(my_module_path)) breakpad_input := $(relocation_packer_output) breakpad_output := $(my_breakpad_path)/$(my_installed_module_stem).sym -$(breakpad_output) : $(breakpad_input) | $(BREAKPAD_DUMP_SYMS) +$(breakpad_output) : $(breakpad_input) | $(BREAKPAD_DUMP_SYMS) $(PRIVATE_READELF) @echo "target breakpad: $(PRIVATE_MODULE) ($@)" @mkdir -p $(dir $@) - $(hide) $(BREAKPAD_DUMP_SYMS) -c $< > $@ + $(hide) if $(PRIVATE_READELF) -S $< > /dev/null 2>&1 ; then \ + $(BREAKPAD_DUMP_SYMS) -c $< > $@ ; \ + else \ + echo "skipped for non-elf file."; \ + touch $@; \ + fi $(LOCAL_BUILT_MODULE) : $(breakpad_output) endif