mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-28 15:23:51 +00:00
14bc264f47
I wrote this patch to address two problems: 1. if I do `mach run` from a directory other than $topsrcdir, $objdir, or $objdir/dist/bin, then .gdbinit will not be loaded. 2. Debugging the firefox binary will never load the JS prettyprinters in any case. I believe this patch fixes other problems as well, such as .gdbinit_python not being found, and the gdbpp pretty-printers not getting loaded in various situations. The main changes of this patch are: 1. Move .gdbinit into build/ (and $objdir/build/) to delay it from getting loaded until the search path is configured. 2. Move libxul.so-gdb.py into the correct directory. 3. Use either libxul.so-gdb.py or js-gdb.py to configure the correct search path then load .gdbinit, and have .gdbinit load all of the pretty-printers (Gecko and JS). 4. Use a single preprocessed file to configure the source directory. Use relative paths within the objdir for everything else. Differential Revision: https://phabricator.services.mozilla.com/D77589
19 lines
342 B
Python
19 lines
342 B
Python
#filter substitution
|
|
|
|
import sys
|
|
|
|
sys.path.append(os.path.join('@topsrcdir@', 'js', 'src', 'gdb'))
|
|
sys.path.append(os.path.join('@topsrcdir@', 'python', 'gdbpp'))
|
|
|
|
# JS prettyprinters
|
|
|
|
import mozilla.autoload
|
|
mozilla.autoload.register(gdb.current_objfile())
|
|
|
|
import mozilla.asmjs
|
|
mozilla.asmjs.install()
|
|
|
|
# Gecko prettyprinters
|
|
|
|
import gdbpp
|