From: Theo Buehler Subject: Re: disable parallel make for "fake" To: ports Date: Mon, 30 Mar 2026 12:25:53 +0200 On Mon, Mar 30, 2026 at 11:09:50AM +0100, Stuart Henderson wrote: > Some ports are happy to _build_ in parallel, but fail during "make > fake". For example, vim and php. > > We used to have a separate PARALLEL_INSTALL variable controlling > whether parallel flags were passed through there, added in r1.920, > removed in r1.1510. > > I'm not convinced that parallel fake is enough of a win to be worth > restricting the number of ports that can use parallel build so I'd like > to remove it. (Apart from rare semi-broken ports which do a chunk of > compilation during "make fake", it's mostly going to be filesystem > access which doesn't parallelize brilliantly on OpenBSD at present > anyway). One of the ports where this will really hurt is x1//qt5/qtbase which rebuilds itself in its entirety during fake. I don't know how many rust ports with DPB_PROPERTIES=parallel there are but if any of them sets MODCARGO_INSTALL_TARGET_PATHS, it will likely build a non-trivial amount of stuff as well. So while I'm ok with this in principle, I think this needs to run through a bulk or two to see if it doesn't add a significant amount of build time. > > Any OKs or objections to disabling it, so that MAKE_JOBS is only > passed through by infrastructure for build/test? > > (If there's some individual port which would really benefit from > parallel install, it could always add to FAKE_FLAGS itself). > > Index: bsd.port.mk > =================================================================== > RCS file: /cvs/ports/infrastructure/mk/bsd.port.mk,v > diff -u -p -r1.1647 bsd.port.mk > --- bsd.port.mk 17 Jan 2026 22:30:08 -0000 1.1647 > +++ bsd.port.mk 30 Mar 2026 09:47:11 -0000 > @@ -488,7 +488,8 @@ MAKE_JOBS ?= 1 > > .if ${MAKE_JOBS} != 1 > MAKE_FLAGS += ${PARALLEL_MAKE_FLAGS} > -ALL_FAKE_FLAGS += ${PARALLEL_MAKE_FLAGS} > +# various ports work with parallel build but fail with parallel install > +#ALL_FAKE_FLAGS += ${PARALLEL_MAKE_FLAGS} > .endif > > # Here comes the part that sets BUILD_PACKAGES and various IGNORE* up. >