Add minidump_stackwalk tool to Android.mk

Build the minidump_stackwalk host tool, to be able to
symbolize local minidumps.

Bug: 80215098
Test: Ran tool
Change-Id: I0ded2e3fd798e58463593f257aac52bd657ba373
diff --git a/Android.mk b/Android.mk
index daa6f04..79f36d8 100644
--- a/Android.mk
+++ b/Android.mk
@@ -132,3 +132,85 @@
     src/tools/linux/symupload/sym_upload.cc
 LOCAL_CFLAGS := -Wall -Werror -Wno-unused-parameter
 include $(BUILD_HOST_EXECUTABLE)
+
+# libdisasm static library.
+# =================================================
+include $(CLEAR_VARS)
+LOCAL_MODULE := libdisasm
+LOCAL_MODULE_HOST_OS := linux
+LOCAL_CLANG := true
+LOCAL_CFLAGS_linux := \
+    -Wno-missing-field-initializers \
+    -Wno-pointer-arith \
+    -Wno-tautological-constant-out-of-range-compare \
+    -Wno-unused-parameter
+LOCAL_C_INCLUDES := \
+    $(LOCAL_PATH)/src/third_party/libdisasm
+LOCAL_EXPORT_C_INCLUDE_DIRS := \
+    $(LOCAL_PATH)/src/third_party/libdisasm
+LOCAL_SRC_FILES := \
+    src/third_party/libdisasm/ia32_implicit.c \
+    src/third_party/libdisasm/ia32_insn.c \
+    src/third_party/libdisasm/ia32_invariant.c \
+    src/third_party/libdisasm/ia32_modrm.c \
+    src/third_party/libdisasm/ia32_opcode_tables.c \
+    src/third_party/libdisasm/ia32_operand.c \
+    src/third_party/libdisasm/ia32_reg.c \
+    src/third_party/libdisasm/ia32_settings.c \
+    src/third_party/libdisasm/x86_disasm.c \
+    src/third_party/libdisasm/x86_format.c \
+    src/third_party/libdisasm/x86_imm.c \
+    src/third_party/libdisasm/x86_insn.c \
+    src/third_party/libdisasm/x86_misc.c \
+    src/third_party/libdisasm/x86_operand_list.c
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# minidump_stackwalk host tool.
+# =================================================
+include $(CLEAR_VARS)
+LOCAL_MODULE := minidump_stackwalk
+LOCAL_MODULE_HOST_OS := linux
+LOCAL_CLANG := true
+LOCAL_CPP_EXTENSION := .cc
+LOCAL_CPPFLAGS_linux := \
+    -DHAVE_A_OUT_H \
+    -Wno-unused-function \
+    -Wno-unused-parameter
+LOCAL_C_INCLUDES := \
+    $(LOCAL_PATH)/src
+LOCAL_SRC_FILES_linux := \
+    src/processor/basic_code_modules.cc \
+    src/processor/basic_source_line_resolver.cc \
+    src/processor/call_stack.cc \
+    src/processor/cfi_frame_info.cc \
+    src/processor/disassembler_x86.cc \
+    src/processor/dump_context.cc \
+    src/processor/dump_object.cc \
+    src/processor/exploitability.cc \
+    src/processor/exploitability_linux.cc \
+    src/processor/exploitability_win.cc \
+    src/processor/logging.cc \
+    src/processor/microdump.cc \
+    src/processor/microdump_processor.cc \
+    src/processor/minidump.cc \
+    src/processor/minidump_processor.cc \
+    src/processor/minidump_stackwalk.cc \
+    src/processor/pathname_stripper.cc \
+    src/processor/process_state.cc \
+    src/processor/simple_symbol_supplier.cc \
+    src/processor/source_line_resolver_base.cc \
+    src/processor/stack_frame_symbolizer.cc \
+    src/processor/stackwalk_common.cc \
+    src/processor/stackwalker.cc \
+    src/processor/stackwalker_amd64.cc \
+    src/processor/stackwalker_arm.cc \
+    src/processor/stackwalker_arm64.cc \
+    src/processor/stackwalker_mips.cc \
+    src/processor/stackwalker_ppc.cc \
+    src/processor/stackwalker_ppc64.cc \
+    src/processor/stackwalker_sparc.cc \
+    src/processor/stackwalker_x86.cc \
+    src/processor/symbolic_constants_win.cc \
+    src/processor/tokenize.cc
+LOCAL_STATIC_LIBRARIES := libdisasm
+include $(BUILD_HOST_EXECUTABLE)