go/test
Russ Cox 1499c78281 build: tidy intermediate files during build
This CL changes the behavior of 'make install' and 'make test'
in the src/cmd directory and the src/pkg directory to have
each recursive make clean up after itself immediately.

It does the same in test/run, removing $F.$A and $A.out
(the common byproducts) between runs.

On machines with slow disks and aggressive kernel caching,
cleaning up immediately can mean that the intermediate
objects never get written to disk.

This change eliminates almost all the disk waiting during
all.bash on my laptop (a Thinkpad X201s with an SSD running Linux).

147.50u 19.95s 277.34r	before
148.53u 21.64s 179.59r	after

R=golang-dev, r, iant2
CC=golang-dev
https://golang.org/cl/4413042
2011-04-13 16:24:57 -04:00
..
bench test/bench: enable build and test on Windows 2011-04-08 10:43:25 +10:00
bugs test: adjust bug324 to expect run-time failure, not compile-time. 2011-03-29 15:03:09 -07:00
chan go code: replace closed(c) with x, ok := <-c 2011-03-11 14:47:44 -05:00
fixedbugs bug327: document what's being tested 2011-04-08 13:42:20 -04:00
garbage log: rename Exit* to Fatal* 2011-02-01 12:47:35 -08:00
interface update go tree for reflect changes 2011-04-08 12:27:58 -04:00
ken update go tree for reflect changes 2011-04-08 12:27:58 -04:00
nilptr remove nacl 2010-12-15 11:49:23 -05:00
syntax test: avoid undefined error in syntax/if.go. 2011-03-29 06:48:20 -07:00
64bit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
235.go single argument panic 2010-03-30 10:34:57 -07:00
append.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
args.go move things out of sys into os and runtime 2009-05-08 15:21:41 -07:00
assign1.go test: Match gccgo error messages. 2010-09-10 19:12:10 -07:00
assign.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
bigalg.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
bigmap.go runtime: allow large map values 2010-05-19 12:57:47 -07:00
blank1.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
blank.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
chancap.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
char_lit1.go test: Match gccgo error messages. 2010-08-31 11:43:52 -07:00
char_lit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
closedchan.go go code: replace closed(c) with x, ok := <-c 2011-03-11 14:47:44 -05:00
closure.go gc: issue 1231 2010-12-13 16:51:19 -05:00
cmp1.go gc: implement new comparison rule 2010-09-13 15:42:47 -04:00
cmp2.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
cmp3.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
cmp4.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
cmp5.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
cmp6.go test: match gccgo error messages for cmp6.go 2011-03-25 17:51:02 -07:00
cmplx.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
cmplxdivide1.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
cmplxdivide.c delete float, complex - code changes 2011-01-19 23:09:00 -05:00
cmplxdivide.go more soft float support. passes several basic tests 2010-07-20 15:53:16 +03:00
complit.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
compos.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
const1.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
const2.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
const3.go gc: another shift bug 2010-12-13 13:42:51 -05:00
const.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
convert3.go test: don't assign address of array to slice. 2010-08-31 07:34:01 -07:00
convert.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
convlit1.go more 6g reorg; checkpoint. 2009-08-03 11:58:52 -07:00
convlit.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
copy.go test copy([]byte, string) 2010-10-26 08:36:23 -07:00
ddd1.go gc: avoid saying same error 3 times 2011-04-01 20:52:38 -04:00
ddd2.go gc: add ... T, rework plain ... 2010-02-01 00:25:59 -08:00
ddd3.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
ddd.go gc: ... bug 2010-10-06 11:12:30 -04:00
decl.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
declbad.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
defer.go ... changes 2010-09-24 11:55:48 -04:00
deferprint.go gc: implement defer print/println/panic/panicln 2010-01-27 15:37:08 -08:00
empty.go test of new empty productions 2008-10-08 15:33:18 -07:00
env.go test: don't require specific GOARCH values. 2011-03-30 14:24:32 -07:00
eof1.go gc: line comments may end in EOF 2010-11-04 16:04:04 -04:00
eof.go gc: insert semicolon at EOF if needed 2010-09-28 10:35:02 -04:00
errchk replace non-blocking send, receive syntax with select 2011-01-31 18:36:28 -05:00
escape.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
float_lit.go arm: enable all tests 2010-10-25 21:25:13 -07:00
floatcmp.go more soft float support. passes several basic tests 2010-07-20 15:53:16 +03:00
for.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
func1.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
func2.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
func3.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
func4.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
func5.go single argument panic 2010-03-30 10:34:57 -07:00
func.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
gc1.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
gc.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
golden.out test: adjust bug324 to expect run-time failure, not compile-time. 2011-03-29 15:03:09 -07:00
hashmap.go gc, spec, tests: no auto-indirect of pointer to interface value 2010-09-30 14:59:41 -04:00
helloworld.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
if.go test: do not depend on implicit if condition 2011-02-22 18:23:14 -05:00
import1.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
import2.go gc: fix chan <- chan precedence. 2010-01-26 10:40:28 -08:00
import3.go gc: fix chan <- chan precedence. 2010-01-26 10:40:28 -08:00
import4.go gc: fix imported and not used message - show path 2010-03-03 17:23:47 -08:00
import.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
index.go test: fix NaCl build 2010-09-19 23:28:32 -04:00
indirect1.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
indirect.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
init.go test: match gccgo error messages for init.go 2011-03-26 11:24:02 -07:00
initcomma.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
initialize.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
initializerr.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
initsyscall.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
int_lit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
intcvt.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
iota.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
label1.go test: match gccgo error messages for label.go and label1.go. 2011-03-25 10:36:46 -07:00
label.go test: match gccgo error messages for label.go and label1.go. 2011-03-25 10:36:46 -07:00
literal.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
malloc1.go finalizers; merge package malloc into package runtime 2010-02-03 16:31:34 -08:00
mallocfin.go single argument panic 2010-03-30 10:34:57 -07:00
mallocrand.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
mallocrep1.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
mallocrep.go test: Run garbage collector before testing malloc numbers. 2010-09-10 15:54:16 -07:00
map.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
method1.go test: s/float/float64/ 2011-01-21 08:37:58 -08:00
method2.go gc, spec, tests: no auto-indirect of pointer to interface value 2010-09-30 14:59:41 -04:00
method3.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
method.go gc, spec, tests: no auto-indirect of pointer to interface value 2010-09-30 14:59:41 -04:00
named1.go go code: replace closed(c) with x, ok := <-c 2011-03-11 14:47:44 -05:00
named.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
nil.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
nul1.go remove nacl 2010-12-15 11:49:23 -05:00
parentype.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
peano.go test/peano: use directly recursive type def 2010-08-06 15:07:54 -07:00
printbig.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
range.go gc: implement new len spec, range bug fix, optimization 2010-07-01 18:04:25 -07:00
recover1.go test for panic and recover 2010-03-31 11:47:09 -07:00
recover2.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
recover3.go remove nacl 2010-12-15 11:49:23 -05:00
recover.go runtime: turn run time errors checks into panics 2010-04-01 22:31:27 -07:00
rename1.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
rename.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
run build: tidy intermediate files during build 2011-04-13 16:24:57 -04:00
runtime.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
sieve.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
sigchld.go remove nacl 2010-12-15 11:49:23 -05:00
simassign.go single argument panic 2010-03-30 10:34:57 -07:00
sinit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
solitaire.go solitaire: an exercise in backtracking and string conversions 2010-09-03 10:52:45 -07:00
stack.go 5l, 8l: pass stack frame size to morestack when needed 2011-02-01 18:34:41 -05:00
string_lit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
stringrange.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
switch1.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
switch.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
test0.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
turing.go test/turing: refactor 2010-09-04 10:40:00 +10:00
typeswitch1.go single argument panic 2010-03-30 10:34:57 -07:00
typeswitch2.go runtime, type switch: eliminate package global name space assumption 2010-01-25 18:23:20 -08:00
typeswitch.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
undef.go test: Match gccgo error messages. 2010-09-10 12:44:37 -07:00
utf.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
varerr.go test: Match gccgo error messages. 2010-09-10 12:45:46 -07:00
varinit.go single argument panic 2010-03-30 10:34:57 -07:00
vectors.go single argument panic 2010-03-30 10:34:57 -07:00
zerodivide.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00