binutils-gdb/gdb/testsuite
Tom Tromey 5e92f71a86 introduce parallel mode
This introduces parallel mode for the test suite.

It doesn't fully work yet in the sense that if you do a fully parallel
run, you will encounter some file-name clashes, but this has to start
somewhere, and it seemed best to add some infrastructure now, so that
you can follow along and test subsequent patches if you care to.

This patch has two parts.

First, it checks for the GDB_PARALLEL variable.  If this is set (say,
on the runtest command line), then the test suite assumes "parallel
mode".  In this mode, files are put into a subdirectory named after
the test.  That is, for DIR/TEST.exp, the outputs are put into
./outputs/DIR/TEST/.

This first part has various follow-on changes coming in subsequent
patches.  This is why the code in this patch also makes "temp" and
"cache" directories.

Second, this adds an "inotify" mode.  If you have the inotifywait
command (part of inotify-tools), you can set the GDB_INOTIFY variable.
This will tell the test suite to watch for changes outside of the
allowed output directories.

This mode is useful for debugging the test suite, as it issues a
report whenever a possibly parallel-unsafe file open is done.

2013-08-13  Tom Tromey  <tromey@redhat.com>
	    Yao Qi  <yao@codesourcery.com>

	* lib/cache.exp (gdb_do_cache): Handle GDB_PARALLEL.
	* lib/gdb.exp: Handle GDB_PARALLEL.
	(default_gdb_version): Kill inotify_pid if it exists.
	(default_gdb_exit): Emit warning if the inotify log is not
	empty.
	(standard_output_file): Respect GDB_PARALLEL.
	(standard_temp_file): Likewise.
	(gdb_init): Start inotifywait if requested.

	* gdbint.texinfo (Testsuite): Use @table, not @itemize.
	Document GDB_PARALLEL and GDB_INOTIFY.
2013-08-13 16:12:04 +00:00
..
boards * boards/native-stdio-gdbserver.exp (${board}_build_remote_cmd): Pass 2013-07-24 21:59:30 +00:00
config
gdb.ada simple test suite fix in gdb.ada 2013-07-16 18:52:18 +00:00
gdb.arch
gdb.asm
gdb.base Handle '#' flag for printf of pointer types. 2013-08-13 16:05:23 +00:00
gdb.btrace
gdb.cell
gdb.cp
gdb.disasm
gdb.dwarf2 fix recursively_compute_inclusions and add dwz test case 2013-08-07 19:57:51 +00:00
gdb.fortran
gdb.gdb
gdb.go
gdb.hp
gdb.java
gdb.linespec
gdb.mi * gdb.mi/mi-var-child-f.exp: Pass f90 to gdb_compile instead 2013-07-26 18:15:07 +00:00
gdb.modula2
gdb.multi
gdb.objc
gdb.opencl
gdb.opt
gdb.pascal
gdb.python * gdb.python/py-value-cc.cc: Renamed from py-value.cc. 2013-08-07 23:51:45 +00:00
gdb.reverse
gdb.server
gdb.stabs
gdb.threads gdb/testsuite/gdb.threads: Ensure TLS tests link against pthreads. 2013-07-18 15:49:22 +00:00
gdb.trace gdb/ 2013-08-09 00:35:40 +00:00
gdb.xml
lib introduce parallel mode 2013-08-13 16:12:04 +00:00
aclocal.m4
ChangeLog introduce parallel mode 2013-08-13 16:12:04 +00:00
configure
configure.ac
dg-extract-results.sh
Makefile.in * Makefile.in (ALL_SUBDIRS): Add gdb.go. 2013-08-12 20:54:06 +00:00
TODO