NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: bin/48367: make(1) fails to parallelize in subdirs



The following reply was made to PR bin/48367; it has been noted by GNATS.

From: David Laight <david%l8s.co.uk@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: bin/48367: make(1) fails to parallelize in subdirs
Date: Thu, 7 Nov 2013 20:15:48 +0000

 On Thu, Nov 07, 2013 at 07:35:01PM +0000, David Holland wrote:
 > The following reply was made to PR bin/48367; it has been noted by GNATS.
 > 
 > From: David Holland <dholland-bugs%netbsd.org@localhost>
 > To: gnats-bugs%NetBSD.org@localhost
 > Cc: 
 > Subject: Re: bin/48367: make(1) fails to parallelize in subdirs
 > Date: Thu, 7 Nov 2013 19:31:07 +0000
 > 
 >  On Thu, Nov 07, 2013 at 07:25:00PM +0000, David Laight wrote:
 >   >  On Thu, Nov 07, 2013 at 06:35:00PM +0000, Simon J. Gerraty wrote:
 >   >  > The following reply was made to PR bin/48367; it has been noted by 
 > GNATS.
 >   >  > 
 >   >  >  The makefile is wrong.
 >   >  >  According to make(1) you need .MAKE on targets which are supposed to
 >   >  >  pass on the jobs queue.
 >   >  
 >   >  IIRC you should only need to use ${MAKE}.
 >   >  
 >   >  The 'problem' is probably that when running:
 >   >          (cd mack && $(MAKE))
 >   >  the change tries to stop it passing the job token pipe fds into the 
 > shell.
 >  
 >  That doesn't explain why it works if run via all2.
 
 I bet make is only closing fd it opens.
 The make process that runs ${MAKE} all will be passed the job pipe
 fds - and I bet it doesn't make them close-on-exec.
 So all of it's children will find the job pipe.
 
        David
 
 -- 
 David Laight: david%l8s.co.uk@localhost
 


Home | Main Index | Thread Index | Old Index