On 4/4/23 13:35, Andrew Burgess wrote: > Tom de Vries via Gdb-patches writes: > >> Add script gdb/contrib/make-check-all.sh, that's intended to function as a >> drop-in replacement of make check, but excercising all host/target boards in >> gdb/testsuite/boards. >> >> Shell-checked and tested on x86_64-linux. > > Hi Tom, > > Thanks for putting this together, I think this could be really useful. > That's great to hear :) > I'm not a fan of the way you've split the patch description into email > 0/1 and not included it with this commit. I think there's lots of > useful information in there, and I'd much rather have the whole > description included in the commit message -- it's much easier to find > then rather than having to hunt on the mailing list in the future. > Ack, I've reworked this into a patch rather than patch series. >> --- >> gdb/contrib/make-check-all.sh | 255 ++++++++++++++++++++++++++++++++++ >> 1 file changed, 255 insertions(+) >> create mode 100755 gdb/contrib/make-check-all.sh >> >> diff --git a/gdb/contrib/make-check-all.sh b/gdb/contrib/make-check-all.sh >> new file mode 100755 >> index 00000000000..1befe418b81 >> --- /dev/null >> +++ b/gdb/contrib/make-check-all.sh >> @@ -0,0 +1,255 @@ >> +#!/bin/bash >> + >> +# Copyright (C) 2023 Free Software Foundation, Inc. >> +# This program is free software; you can redistribute it and/or modify >> +# it under the terms of the GNU General Public License as published by >> +# the Free Software Foundation; either version 3 of the License, or >> +# (at your option) any later version. >> +# >> +# This program is distributed in the hope that it will be useful, >> +# but WITHOUT ANY WARRANTY; without even the implied warranty of >> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> +# GNU General Public License for more details. >> +# >> +# You should have received a copy of the GNU General Public License >> +# along with this program. If not, see . >> + >> +# Run make check with all boards from gdb/testsuite/boards. > > I think you need some kind of usage test here too. Imagine a new > developer finds this file and looks inside. Ideally, I think they > should know how to use it, and what it will do for them without having > to read any of the actual script content. > Added. > On implementation, I wonder if it would be useful to provide a mechanism > by which the gdb.sum and gdb.log files for each test run could be > preserved? > Done, I've renamed --keep to --keep-tmp, and added this new functionality under --keep. I've also added "set -e" to make sure ^C aborts the script rather than just one make check invocation, and moved the tmpdir removal to a cleanup function that's executed on exit, to make sure ^C doesn't leave tmpdirs behind. Thanks, - Tom