Date: Mon, 15 Nov 2004 09:15:00 +0100 (CET) From: Harti Brandt <harti@freebsd.org> To: Alexander Leidinger <Alexander@Leidinger.net> Cc: current@freebsd.org Subject: Re: [TEST] make -j patch [take 2] Message-ID: <20041115091059.L51863@beagle.kn.op.dlr.de> In-Reply-To: <20041113092215.7a40f133@Magellan.Leidinger.net> References: <6857.1100271323@critter.freebsd.dk> <20041112160137.X42945@beagle.kn.op.dlr.de> <20041112171024.P42945@beagle.kn.op.dlr.de> <20041113092215.7a40f133@Magellan.Leidinger.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 13 Nov 2004, Alexander Leidinger wrote: AL>On Fri, 12 Nov 2004 17:11:37 +0100 (CET) AL>Harti Brandt <harti@freebsd.org> wrote: AL> AL>> On Fri, 12 Nov 2004 Alexander@Leidinger.net wrote: AL>> AL>> > Zitat von Harti Brandt <harti@freebsd.org>: AL>> > AL>> >> PK>>If yes: we have some ports which aren't -j safe, so this would violate AL>> >> PK>>POLA. AL>> >> PK> AL>> >> PK>That is what "make -B" is for. AL>> >> AL>> >> Or .NOTPARALLEL AL>> > AL>> > I'm not talking about /usr/ports/category/port/Makefile, I'm talking about AL>> > /usr/ports/category/port/work/tarball_dir/**/Makefile. We don't have AL>> > control about those Makefiles. AL>> > AL>> > As much as I like a flag in the Makefile of a port which indicates AL>> > that a port can't be build with -j, we don't have this and the last time AL>> > this topic was discussed there was a strong objection to something like AL>> > this. AL>> > AL>> > So this change may break procedures which worked so far. AL>> AL>> How? If you specify -j on the port's make the -j gets passed down to all AL>> sub-makes via MAKEFLAGS and they use it. The difference is just that the AL>> overall number of jobs started is now limited by the original -j. AL> AL>In my first mail I made an example where a portupgrade is in between two AL>make processes. make runs several portupgrade processes in parallel and AL>portupgrade calls make. AFAIK this doesn't result in in an invocation of AL>portupgrades child-make with -j. With phk's changes the child-make of AL>portupgrade uses the FIFO (at least this is what I read implicitly in AL>phk's response above). Unless you reset MAKEFLAGS along the call path to the portupgrade's make they'll see the -j, because the top-level make will stuff the -j into MAKEFLAGS and that is probably inherited through portupgrade. harti
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041115091059.L51863>