Subject: Re: pkgsrc on SMP machines
To: Dieter Baron <dillo@danbala.tuwien.ac.at>
From: David Brownlee <abs@NetBSD.org>
List: tech-pkg
Date: 12/15/2005 11:43:02
On Thu, 15 Dec 2005, Dieter Baron wrote:

> : (There is that other idea to build pkgsrc packages in parallel which is
> : stuck to some people's head, but it grossly violates the KISS principle
> : and involves all sort of nasty things like locking and whatnot; I still
> : suggest not going there)
>
>  We need locking even if we do not build dependencies in parallel:
> Users can invoke multiple makes simultaneously in the same pkgsrc
> tree.

 	Making -j work involves testing and maintaining every package
 	for which we want to enable -j, with the inevitable breakage
 	when someone without an MP box updates a package to a newer
 	version. Making pkgsrc able to build mulitiple packages in
 	parallel 'only' involves making the pkgsrc infrastructure
 	get it right and will work for all packages.

 	Obviously both would be nice - if someone _just_ wants perl or
 	kde3 then there are points where there will only be one
 	(relatively large) package available to build, but the -j
 	is probably best targetted at specific packages, or picking up
 	if its defined in autoconf.

 	Locking is definitely something we want. Once we have that
 	'all' we need is a list of dependencies (tsort) for a given
 	build, and a mechanism for pulling the first one off the
 	list which is not blocked by an active build. It may even
 	be worth adding a new pkg_ tool to manage that part of it.

 	So... until someone implements locking the across package
 	parallel build is moot :)
-- 
 		David/absolute       -- www.NetBSD.org: No hype required --