Add support to the StackWalker for resolving symbols, using a
caller-implemented SymbolSupplier object to get a symbol file.

Add a CrashReportProcessor object which provides a simple API for processing
a CrashReport struct, given a SymbolSupplier and a minidump file.

r=mmentovai (#17))


git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@18 4c0a9323-5329-0410-9bdc-e9ce6186880e
diff --git a/Makefile.am b/Makefile.am
index ca19a6f..f35c377 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -37,7 +37,10 @@
 src_libairbag_la_SOURCES = \
 	src/google/airbag_types.h \
 	src/google/crash_report.h \
+	src/google/crash_report_processor.h \
 	src/google/stack_frame.h \
+	src/google/symbol_supplier.h \
+	src/processor/crash_report_processor.cc \
 	src/processor/memory_region.h \
 	src/processor/minidump.cc \
 	src/processor/minidump.h \
@@ -60,7 +63,8 @@
 ## Tests
 check_PROGRAMS = \
 	src/processor/range_map_unittest \
-	src/processor/source_line_resolver_unittest
+	src/processor/source_line_resolver_unittest \
+	src/processor/crash_report_processor_unittest
 check_SCRIPTS = \
 	src/processor/minidump_dump_test \
 	src/processor/minidump_stackwalk_test
@@ -75,6 +79,14 @@
 src_processor_source_line_resolver_unittest_LDADD = \
 	src/processor/source_line_resolver.lo
 
+src_processor_crash_report_processor_unittest_SOURCES = \
+	src/processor/crash_report_processor_unittest.cc
+src_processor_crash_report_processor_unittest_LDADD = \
+	src/processor/crash_report_processor.lo \
+	src/processor/minidump.lo \
+	src/processor/stackwalker.lo \
+	src/processor/stackwalker_x86.lo \
+	src/processor/source_line_resolver.lo
 
 ## Non-installables
 noinst_PROGRAMS =
@@ -90,7 +102,8 @@
 src_processor_minidump_stackwalk_LDADD = \
 	src/processor/minidump.lo \
 	src/processor/stackwalker.lo \
-	src/processor/stackwalker_x86.lo
+	src/processor/stackwalker_x86.lo \
+	src/processor/source_line_resolver.lo
 
 
 ## Additional files to be included in a source distribution
@@ -99,6 +112,8 @@
 	src/processor/testdata/minidump1.dmp \
 	src/processor/testdata/minidump1.out \
 	src/processor/testdata/minidump1.stack.out \
+	src/processor/testdata/minidump2.dmp \
+	src/processor/testdata/minidump2.sym \
 	src/processor/testdata/module1.out \
 	src/processor/testdata/module2.out \
 	src/processor/testdata/module3_bad.out