From 95e592d9ab1e79272018b8b6b6821bf053cd665b Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Sun, 26 Mar 2023 13:44:58 +0200 Subject: [PATCH] [gdb/testsuite] Introduce allow_dap_tests Simon pointed out that with gdb.dap/*.exp and target board native-gdbserver, we run into problems. I see for each test-case: ... +++ run Traceback (most recent call last): File "startup.py", line 146, in exec_and_log output = gdb.execute(cmd, from_tty=True, to_string=True) gdb.error: Don't know how to run. Try "help target". ... Likewise with target board native-extended-gdbserver. Fix this by: - adding a new proc allow_dap_tests, - using it in all the gdb.dap tests, and - bailing out if GDBFLAGS/INTERNAL_GDBFLAGS contains "set auto-connect-native-target off". Tested on x86_64-linux. Reported-By: Simon Marchi Approved-By: Tom Tromey --- gdb/testsuite/gdb.dap/basic-dap.exp | 2 +- gdb/testsuite/gdb.dap/bt-nodebug.exp | 2 ++ gdb/testsuite/gdb.dap/scopes.exp | 2 +- gdb/testsuite/lib/gdb.exp | 15 +++++++++++++++ 4 files changed, 19 insertions(+), 2 deletions(-) diff --git a/gdb/testsuite/gdb.dap/basic-dap.exp b/gdb/testsuite/gdb.dap/basic-dap.exp index 5e6e1b5d6d4..0026690ba44 100644 --- a/gdb/testsuite/gdb.dap/basic-dap.exp +++ b/gdb/testsuite/gdb.dap/basic-dap.exp @@ -15,7 +15,7 @@ # Basic DAP test. -require allow_python_tests +require allow_dap_tests load_lib dap-support.exp diff --git a/gdb/testsuite/gdb.dap/bt-nodebug.exp b/gdb/testsuite/gdb.dap/bt-nodebug.exp index e365f0877d4..e4dcef35a67 100644 --- a/gdb/testsuite/gdb.dap/bt-nodebug.exp +++ b/gdb/testsuite/gdb.dap/bt-nodebug.exp @@ -15,6 +15,8 @@ # Test DAP 'bt' through a function without debuginfo. +require allow_dap_tests + load_lib dap-support.exp standard_testfile bt-main.c bt-inner.c diff --git a/gdb/testsuite/gdb.dap/scopes.exp b/gdb/testsuite/gdb.dap/scopes.exp index 0fa9e211105..2c4b9ed81a5 100644 --- a/gdb/testsuite/gdb.dap/scopes.exp +++ b/gdb/testsuite/gdb.dap/scopes.exp @@ -15,7 +15,7 @@ # Test "scopes" and "variables". -require allow_python_tests +require allow_dap_tests load_lib dap-support.exp diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index dd392477b9a..3cfe22b32cd 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -2488,6 +2488,21 @@ gdb_caching_proc allow_python_tests {} { return [expr {[string first "--with-python" $output] != -1}] } +gdb_caching_proc allow_dap_tests {} { + if { ![allow_python_tests] } { + return 0 + } + + # With set auto-connect-native-target off, we run into: + # +++ run + # Traceback (most recent call last): + # File "startup.py", line , in exec_and_log + # output = gdb.execute(cmd, from_tty=True, to_string=True) + # gdb.error: Don't know how to run. Try "help target". + set gdb_flags [join $::GDBFLAGS $::INTERNAL_GDBFLAGS] + return [expr {[string first "set auto-connect-native-target off" $gdb_flags] == -1}] +} + # Return a 1 if we should run shared library tests. proc allow_shlib_tests {} { -- 2.30.2