Subject: Re: CVS commit: pkgsrc/devel/bmake/files
To: Joerg Sonnenberger <joerg@britannica.bec.de>
From: Roland Illig <rillig@NetBSD.org>
List: pkgsrc-changes
Date: 03/16/2007 00:04:08
Joerg Sonnenberger wrote:
> On Thu, Mar 15, 2007 at 09:41:22AM +0000, Roland Illig wrote:
> 
>>Log Message:
>>On IRIX, the command line is limited to about 20000 characters. The new
>>function Job_Execv executes a shell command line, and if that fails due
>>to an overly long command line, the shell command is written into a
>>temporary file, which is then executed.
> 
> 
> Which problem is this supposed to fix in detail? This feels very wrong
> and sounds like adding a lot of overhead and I don't think this is
> warranted.

It solves the problem "arg list too long" that appears as soon as you 
try to run a bulk build on a standard IRIX system. (Have a look at 
mk/bulk/bsd.bulk-pkg.mk to see a _very_ long shell command; lines 359--538.)

With this patch, it works. Without, it doesn't.

The overhead is next to nothing. I think it may be about 10 CPU 
instructions per execve call. Note that I wrote "... and if that fails 
...". That means, the default case is unchanged.

Roland