# Copyright 2009 The Go Authors. All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.

clean:
	rm -rf *.o *.a *.[$(OS)] [$(OS)].out $(CLEANFILES)

install.clean: install
	rm -rf *.o *.a *.[$(OS)] [$(OS)].out $(CLEANFILES) || true

test.clean: test
	rm -rf *.o *.a *.[$(OS)] [$(OS)].out $(CLEANFILES) || true

testshort.clean: testshort
	rm -rf *.o *.a *.[$(OS)] [$(OS)].out $(CLEANFILES) || true

%.make:
	$(MAKE) -C $* install

.PHONY: all clean nuke install coverage test bench testpackage-clean\ 
	importpath dir

