ports/113132 (make -j patch)
mail at maxlor.com
Wed Mar 12 14:58:11 UTC 2008
On Wednesday 12 March 2008 14:01:57 Florent Thoumie wrote:
> On Wed, Mar 12, 2008 at 12:11 PM, Benjamin Lutz <mail at maxlor.com> wrote:
> > This patch has been sitting in GNATS for a couple of months now:
> > http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/113132
> > I've received a few mails from people reporting success, and none
> > reporting that bad things have happened. Is it possible to get this
> > committed?
> It needs to go through an experimental build first.
> IMHO, this is an ugly hack. Ultimately, we're talking about marking
> almost 20k ports as parallel-safe.
Because in requires modifications of individual port Makefiles? Or is there
something else in it that you don't like?
> Why not taking the opposite approach? Allow it by default, figure out
> which ports break and why, fix where possible?
For the following reason: This change has the potential to make port building
fail in non-deterministic ways; a build might work one one machine all the
time, but fail on another 10% of the time, because the 3rd party code that is
being built is not -j-safe. It means that testing each individual port for
support is required, which, as you point out, is a large amount of work in
total (but it's not that much for each port). I think therefore that this
should be handled by the port maintainers.
If the list of ports which support -j-building is determined by an automated
package build run, who will then have the responsibility to maintain that
Since this change has the potential to break a lot of things, it should be off
by default, and only be enabled if the port maintainer is sure that his port
supports it. To enable it by default would require all port maintainers to
get active immediately to blacklist the many ports which don't support -j
building; this is not going to happen, ports will remain in a broken state.
Also, the amount of work required to get an advantage from this change is
actually not as high as you think. Of the 20k ports we have, only the big
ones (e.g., kde*) gain a substantial benefit from -j building. Small ports
that only compile for a few seconds anyway can be left as they are now.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: This is a digitally signed message part.
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20080312/a76b2135/attachment.pgp
More information about the freebsd-ports