userland: make uber awesome with --baremetal-like executable resolution

This commit is contained in:
Ciro Santilli 六四事件 法轮功
2018-10-30 22:00:02 +00:00
parent ab2574a790
commit 4f47491482
7 changed files with 160 additions and 96 deletions

12
run-gdb
View File

@@ -16,7 +16,7 @@ defaults = {
'no_continue': False,
'no_lxsymbols': False,
'sim': False,
'user': None,
'userland': None,
}
def main(args, extra_args=None):
@@ -39,9 +39,9 @@ def main(args, extra_args=None):
break_at = ['-ex', 'break {}'.format(args.break_at)]
else:
break_at = []
linux_full_system = (args.baremetal is None and args.user is None)
if args.user:
image = args.user
linux_full_system = (args.baremetal is None and args.userland is None)
if args.userland:
image = common.resolve_userland(args.userland)
elif args.baremetal:
image = args.baremetal
else:
@@ -100,7 +100,7 @@ if __name__ == '__main__':
help='Pass extra arguments to GDB, to be appended after all other arguments'
)
parser.add_argument(
'-b', '--before', default=defaults['before'],
'--before', default=defaults['before'],
help='Pass extra arguments to GDB to be prepended before any of the arguments passed by this script'
)
parser.add_argument(
@@ -120,7 +120,7 @@ See: https://github.com/cirosantilli/linux-kernel-module-cheat#gdb-builtin-cpu-s
'-X', '--no-lxsymbols', default=defaults['no_lxsymbols'], action='store_true'
)
parser.add_argument(
'--user', default=defaults['user'],
'--userland', default=defaults['userland'],
)
parser.add_argument(
'break_at', nargs='?',