This change enables debuggerd to provide backtraces with function names in tombstone files and log messages. It does this by reading the image file that the address is found in, and parsing the dynamic symbol table to try to extract the symbol corresponding to the given address. This works best when "-Wl,-export-dynamic" is added to the LDFLAGS of each library and executable, because this will cause all symbols to be added to the dynamic symbol table. If this flag is not present, it will still work, but it will only be able to identify functions which are part of the external API of the library/executable. Change-Id: I618baaff9ed9143b7d1a1f302224e9f21d2b0626
26 lines
665 B
Makefile
26 lines
665 B
Makefile
# Copyright 2005 The Android Open Source Project
|
|
|
|
ifeq ($(TARGET_ARCH),arm)
|
|
|
|
LOCAL_PATH:= $(call my-dir)
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_SRC_FILES:= debuggerd.c getevent.c unwind-arm.c pr-support.c utility.c symbol_table.c
|
|
LOCAL_CFLAGS := -Wall
|
|
LOCAL_MODULE := debuggerd
|
|
|
|
LOCAL_STATIC_LIBRARIES := libcutils libc
|
|
|
|
include $(BUILD_EXECUTABLE)
|
|
|
|
include $(CLEAR_VARS)
|
|
LOCAL_SRC_FILES := crasher.c
|
|
LOCAL_SRC_FILES += crashglue.S
|
|
LOCAL_MODULE := crasher
|
|
LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
|
|
LOCAL_MODULE_TAGS := eng
|
|
#LOCAL_FORCE_STATIC_EXECUTABLE := true
|
|
LOCAL_SHARED_LIBRARIES := libcutils libc
|
|
include $(BUILD_EXECUTABLE)
|
|
|
|
endif # TARGET_ARCH == arm
|