From de90cd9c9700223ab43873c6a279bfe7249ba66a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ciro=20Santilli=20=E5=85=AD=E5=9B=9B=E4=BA=8B=E4=BB=B6=20?= =?UTF-8?q?=E6=B3=95=E8=BD=AE=E5=8A=9F?= Date: Tue, 22 Jan 2019 00:00:00 +0000 Subject: [PATCH] test-gdb: improve integration with arch list --- README.adoc | 2 +- release | 2 +- run-gdb | 2 +- test-gdb | 10 ++++++---- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/README.adoc b/README.adoc index 982d8b4..d4db3aa 100644 --- a/README.adoc +++ b/README.adoc @@ -11884,7 +11884,7 @@ We have some link:https://github.com/pexpect/pexpect[pexpect] automated tests fo .... ./build-test-gdb && \ -./test-gdb +./test-gdb --all-archs .... Sources: diff --git a/release b/release index 50ab913..2c8d4de 100755 --- a/release +++ b/release @@ -16,7 +16,7 @@ release_upload = imp.load_source('release_upload', os.path.join(kwargs['root_dir start_time = time.time() # TODO factor those out so we don't redo the same thing multiple times. # subprocess.check_call([os.path.join(kwargs['root_dir'], 'test')]) -# subprocess.check_call([os.path.join(kwargs['root_dir'], ''bench-all', '-A', '-u']) +# subprocess.check_call([os.path.join(kwargs['root_dir'], 'bench-all', '-A', '-u']) # A clean release requires a full rebuild unless we hack it :-( # We can't just use our current build as it contains packages we've diff --git a/run-gdb b/run-gdb index 35d8e3a..8eef4c4 100755 --- a/run-gdb +++ b/run-gdb @@ -77,7 +77,7 @@ class Main(common.LkmcCliFunction): Connect with GDB to an emulator to debug Linux itself ''') self.add_argument( - '-A', '--after', default='', + '--after', default='', help='Pass extra arguments to GDB, to be appended after all other arguments' ) self.add_argument( diff --git a/test-gdb b/test-gdb index 9af1fc8..6ffe179 100755 --- a/test-gdb +++ b/test-gdb @@ -10,13 +10,13 @@ class Main(common.LkmcCliFunction): run = self.import_path('run').Main() run_gdb = self.import_path('run-gdb').Main() for emulator in self.env['emulators']: - for arch in self.env['crosstool_ng_supported_archs']: + if self.env['arch'] in self.env['crosstool_ng_supported_archs']: test_scripts_noext = [] for f in os.listdir(self.env['baremetal_src_dir']): base, ext = os.path.splitext(f) if ext == '.py': test_scripts_noext.append(base) - for root, dirs, files in os.walk(os.path.join(self.env['baremetal_src_dir'], 'arch', arch)): + for root, dirs, files in os.walk(os.path.join(self.env['baremetal_src_dir'], 'arch', self.env['arch'])): for f in files: base, ext = os.path.splitext(f) if ext == '.py': @@ -25,16 +25,18 @@ class Main(common.LkmcCliFunction): test_scripts_noext.append(relpath) for test_script_noext in test_scripts_noext: run_thread = threading.Thread(target=lambda: run( - archs=[arch], + archs=[self.env['arch']], background=True, baremetal=test_script_noext, + dry_run=self.env['dry_run'], emulator=emulator, wait_gdb=True )) run_thread.start() run_gdb( - archs=[arch], + archs=[self.env['arch']], baremetal=test_script_noext, + dry_run=self.env['dry_run'], emulator=emulator, test=True, )