Subject: Re: distcc and make -jN
To: None <tech-pkg@netbsd.org>
From: Bruce J.A. Nourish <netbsd@bjan.freeshell.org>
List: tech-pkg
Date: 05/19/2004 05:48:09
On Wed, May 19, 2004 at 04:57:41AM +0200, Juan RP wrote:
> On Tue, 18 May 2004 19:22:20 +0000
> You cannot use -j X with pkgsrc, but you can use the following to use distcc:
> 
> PKGSRC_COMPILER=distcc gcc
> DISTCC_HOSTS=REMOTE_HOST1 REMOTE_HOST2 ... localhost

This is almost exactly what I'm doing (I have localhost at the front). 
The problem is, that unless -jN (for N > 1) is specified, this 
configuration is worthless - you would be better not using distcc at 
all. 

This is because distcc round-robins through the host list from the
start each time, passing over a host only if it has exceeded its
job limit. As -j1 (or no -j option) will only ever cause one job to
be running at once, only the first host will ever be used. 

Ergo, unless -jN (N > 1) is given, *the use of distcc is a complete
waste of time* (except in a few very special cases).

I'm rather inclined to submit a PR on the matter, as it shouldn't
be that difficult to a create a variable (say, PKG_MAKEFLAGS) to
pass flags to the make invocation in the package's build stage.

What does everyone think?
-- 
Bruce J.A. Nourish <bjan@bjan.freeshell.org> http://bjan.freeshell.org
SDF Public Access UNIX System - http://sdf.lonestar.org