Confirmed users
321
edits
| Line 9: | Line 9: | ||
Symbol extraction and upload is done at build time. There are two targets in the top level Makefile, [http://mxr.mozilla.org/seamonkey/source/Makefile.in#140 buildsymbols] and [http://mxr.mozilla.org/seamonkey/source/Makefile.in#158 uploadsymbols]. | Symbol extraction and upload is done at build time. There are two targets in the top level Makefile, [http://mxr.mozilla.org/seamonkey/source/Makefile.in#140 buildsymbols] and [http://mxr.mozilla.org/seamonkey/source/Makefile.in#158 uploadsymbols]. | ||
The |buildsymbols| target finds PDB files associated with EXE and DLL files in $(DIST), and processes them with [http://mxr.mozilla.org/seamonkey/source/toolkit/airbag/tools/win32/ dump_syms.exe] to get a SYM file for each, using the [http://mxr.mozilla.org/seamonkey/source/toolkit/airbag/tools/make_symbol_store.pl make_symbol_store.pl] script. The SYM files and PDB files are both placed in $(DIST)/ | The |buildsymbols| target finds PDB files associated with EXE and DLL files in $(DIST), and processes them with [http://mxr.mozilla.org/seamonkey/source/toolkit/airbag/tools/win32/ dump_syms.exe] to get a SYM file for each, using the [http://mxr.mozilla.org/seamonkey/source/toolkit/airbag/tools/make_symbol_store.pl make_symbol_store.pl] script. The SYM files and PDB files are both placed in $(DIST)/crashreporter-symbols/$(BUILDID) in the directory structure used for the Microsoft Symbol Server. A description of this directory structure can be found [http://google-breakpad.googlecode.com/svn/trunk/src/processor/simple_symbol_supplier.h in the Breakpad source]. The symbols are then compressed into a zip file, in a dated directory alongside the top source directory. | ||
The |uploadsymbols| target simply calls the [http://mxr.mozilla.org/seamonkey/source/toolkit/airbag/tools/upload_symbols.sh upload_symbols.sh] script to upload the symbols using | The |uploadsymbols| target simply calls the [http://mxr.mozilla.org/seamonkey/source/toolkit/airbag/tools/upload_symbols.sh upload_symbols.sh] script to upload the symbols using scp. This script relies on certain environment variables being set: | ||
* AIRBAG_SYMBOL_SERVER : host to upload symbols to | * AIRBAG_SYMBOL_SERVER : host to upload symbols to | ||
* AIRBAG_SYMBOL_USER : username on that host | * AIRBAG_SYMBOL_USER : username on that host | ||
* AIRBAG_SYMBOL_PATH : path on that host to put symbols in | * AIRBAG_SYMBOL_PATH : path on that host to put symbols in | ||
The symbols are copied to the symbol server and | The symbols are copied to the symbol server and unzipped into the specified path. | ||
== Exception Handler == | == Exception Handler == | ||