Using make -C $* rather than (cd $* ; make) results in a small,
but measurable improvement in build times where compilation is
not the major component. eg.
before - ~/go/src/pkg$ time make
real 0m1.176s
user 0m0.639s
sys 0m0.399s
after - ~/go/src/pkg$ time make
real 0m0.916s
user 0m0.571s
sys 0m0.243s
There are other places in the distribution src/make.common for example
that could also benefit from this change.
R=adg
CC=golang-dev, rsc
https://golang.org/cl/
4174055
rm -rf *.o *.a *.[$(OS)] [$(OS)].out $(CLEANFILES)
%.make:
- (cd $* && gomake install)
+ gomake -C $* install
.PHONY: all clean nuke install coverage test bench testpackage-clean\
importpath dir
bench.dirs: $(addsuffix .bench, $(BENCH))
%.clean:
- +cd $* && $(MAKE) clean
+ +$(MAKE) -C $* clean
%.install:
- +cd $* && $(MAKE) install
+ +$(MAKE) -C $* install
%.nuke:
- +cd $* && $(MAKE) nuke
+ +$(MAKE) -C $* nuke
%.test:
- +cd $* && $(MAKE) test
+ +$(MAKE) -C $* test
%.bench:
- +cd $* && $(MAKE) bench
+ +$(MAKE) -C $* bench
clean: clean.dirs