This patch is for the benefit of GDB, but as the binutils-gdb repository shares the contrib/ directory with GCC, it must first be applied to GCC and then copied back to binutils-gdb.
On Windows, GDB's "make check-parallel" dies when combining the per-test gdb.sum / gdb.log files into the final combined pair: $ find outputs/ -name gdb.sum | wc -l 2657 .../dg-extract-results.sh: line 39: /ucrt64/bin/python3: Argument list too long make: *** [Makefile:274: check-parallel] Error 2 The GDB testsuite Makefile passes the whole file list to contrib/dg-extract-results.sh on the command line, expanded from a find(1) backtick. As GDB's parallel harness writes one gdb.sum (and one gdb.log) per test script, on a full run that command line argument list holds thousands of paths, which overflows the Windows command-line length limit (~32 KB). This patch teaches dg-extract-results to read the file list from stdin (or a file) instead. After this is merged, GDB's Makefile will be changed to pipe the find output straight in, so the length limit no longer applies regardless of the host. The GDB patch making use of this is here, if you're curious: https://inbox.sourceware.org/gdb-patches/[email protected]/ Pedro Alves (1): dg-extract-results.{sh,py}: Optionally read file list from stdin/file contrib/dg-extract-results.py | 30 ++++++++++++++++++++++++++---- contrib/dg-extract-results.sh | 17 +++++++++++++++-- 2 files changed, 41 insertions(+), 6 deletions(-) base-commit: b3474d5cddda183dcd8d8a2745fba02578816055 -- 2.54.0
