• Sergei Golubchik's avatar
    unify mtr handling of debuggers · feacc0aa
    Sergei Golubchik authored
    "debugger" is anything that wraps execution of a target
    binary (mysqld or mysqltest). Currently the list includes:
    gdb, ddd, dbx, lldb, valgrind, strace, ktrace, rr,
    devenv, windbg, vsjitdebugger.
    
    for every debugger xxx, mtr will recognize four options:
    --xxx, --boot-xxx, --manual-xxx, --client-xxx.
    They all support an optional "=string" argument. String
    being a semicolon-separated list of commands (e.g. for gdb)
    or one (not semicolon-separated) command line of options
    (e.g. for valgrind). Or both (e.g. --gdb='-quiet -nh;info files'
    
    In embedded both --xxx and --client-xxx work.
    
    Functionality changed/removed:
    * --rr-args is gone
    * --rr-dir is gone
    * --manual-debug is gone
    * --debugger={devenv|vc|windbg|vc_express|vsjitdebugger} is gone
    * --strace-option is gone
    * --stracer={strace|ktrace} is gone
    * --valgrind only enables it for the server, not for everything
    * --valgrind-all is gone
    * --valgrind-mysqltest is gone
    * --valgrind-mysqld is gone
    * --valgrind-options is gone
    * --valgrind-option is gone
    * --valgrind-path is gone
    * --callgrind is gone
    * one cannot combine --valgrind --gdb anymore
    * valgrind report doesn't add a fake test line to the output
    * vc and vcexpress on windows are no longer supported
    feacc0aa
Debugger.pm 6.81 KB