From: Tom de Vries Date: Tue, 30 Jun 2020 07:23:09 +0000 (+0200) Subject: [gdb/testsuite] Handle early_flags in gdb_default_target_compile X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b011fe1a7242f242699f9e74798e5ffbc7973c6e;p=binutils-gdb.git [gdb/testsuite] Handle early_flags in gdb_default_target_compile In gdb_default_target_compile, we use dejagnu's default_target_compile, unless we need support for languages that are not yet support in the used dejagnu version, in which case we use a local default_target_compile: gdb_default_target_compile_1. However, there's another reason to use the local default_target_compile: when early_flags is used, because there's no dejagnu release available yet supporting this. Fix this by detecting and handling early_flags in gdb_default_target_compile. Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2020-06-30 Tom de Vries PR testsuite/26175 * lib/future.exp (gdb_default_target_compile): Detect and handle early_flags. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index b1bc547507d..cb984536cbe 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2020-06-30 Tom de Vries + + PR testsuite/26175 + * lib/future.exp (gdb_default_target_compile): Detect and handle + early_flags. + 2020-06-29 Simon Marchi * boards/simavr.exp (gdb_load): Catch errors when closing diff --git a/gdb/testsuite/lib/future.exp b/gdb/testsuite/lib/future.exp index ba00a31c197..e10359317bd 100644 --- a/gdb/testsuite/lib/future.exp +++ b/gdb/testsuite/lib/future.exp @@ -634,25 +634,28 @@ proc gdb_default_target_compile_1 {source destfile type options} { proc gdb_default_target_compile {source destfile type options} { global use_gdb_compile - set need_local 0 + set need_local_lang 0 + set need_local_early_flags 0 foreach i $options { if { $i == "ada" || $i == "d" || $i == "go" || $i == "rust" } { - set need_local [info exists use_gdb_compile($i)] - break + set need_local_lang [info exists use_gdb_compile($i)] } if { $i == "c++" } { - break + set need_local_lang 0 } if { $i == "f77" || $i == "f90" } { - set need_local [info exists use_gdb_compile(fortran)] - break + set need_local_lang [info exists use_gdb_compile(fortran)] + } + + if { [regexp "^early_flags=" $i] } { + set need_local_early_flags 1 } } - if { $need_local } { + if { $need_local_lang || $need_local_early_flags } { return [gdb_default_target_compile_1 $source $destfile $type $options] }