Subject: Re: bug#13349: Re-execute with the "correct" make implementation

From: Stefano Lattarini <[email-masked]>
Date: Fri, 04 Jan 2013 00:03:27 +0100

On 01/03/2013 11:53 PM, Nick Bowler wrote:
> On 2013-01-03 23:05 +0100, Stefano Lattarini wrote:
>>
>>   TARGETS = all check clean distclean dist distcheck install uninstall
>>   .PHONY: $(TARGETS)
>>   $(TARGETS): ; @gmake $(AM_MAKEFLAGS) $@
> 
> Unfortunately, this kind of wrapper doesn't work particularly well.  If
> the user runs something similar to:
> 
>   make -j2 all install
> 
> then the wrapper makefile will happily fork off two independent make
> instances in parallel: one running "gmake all" and one running "gmake
> install".  The result will probably be catastrophic.
>
Sigh, so very true.  Adding ".NOTPARALLEL:" could fix this issue though.
Assuming that it is portable enough ...

At any case, the wrapper would be just a convenience for the most
common cases, like:

  ./configure && make -j4 check && make install

It doesn't have to work in all (or even most) scenarios.

Regards,
  Stefano