On Tue, Dec 03, 2019 at 03:41:03PM +0000, Stuart Henderson wrote:
> On 2019/12/03 15:58, Marc Espie wrote:
> > On Tue, Dec 03, 2019 at 12:37:25AM +0100, Antoine Jacoutot wrote:
> > > On Mon, Dec 02, 2019 at 09:46:11PM -0000, Christian Weisgerber wrote:
> > > > On 2019-12-01, Marc Espie <espie@nerim.net> wrote:
> > > >
> > > > > This patch:
> > > > > - admits that parallel make is going to be used;
> > > > > - renames PARALLEL_BUILD to something that reflects its actual usage
> > > > > (and consumers as well): PARALLEL_USES_MAKE
> > > > > - adds a PARALLEL_MAKE_JOBS that allows the user to tweak the number
> > > > > of MAKE_JOBS used if they want (set to hw.ncpuonline)
> > > >
> > > > What this actually does: If you set PARALLEL_MAKE_JOBS, then ports
> > > > that are marked DPB_PROPERTIES=parallel will be built with
> > > > MAKE_JOBS=${PARALLEL_MAKE_JOBS} for any regular "make build" outside
> > > > of dpb.
> > >
> > > Ah.
> > > Thanks :-)
> > >
> > > > So basically this (ab)uses DPB_PROPERTIES=parallel as a marker for
> > > > ports that are parallel-safe. Okay, whatever.
> > > >
> > > > I think PARALLEL_BUILD is a perfectly fine name and it took me ten
> > > > minutes to understand "PARALLEL_USES_MAKE". I'll probably be puzzled
> > >
> > > Thank you for telling us, I stopped trying to understand after 2 minutes.
> > >
> > > > again the next time I look at this. Yes, there are a very few ports
> > > > that set PARALLEL_BUILD=No and still do some form of parallel
> > > > building. That's why they have a corresponding comment.
> > > >
> > > > > --- editors/libreoffice/Makefile 6 Nov 2019 12:21:06 -0000 1.221
> > > > > +++ editors/libreoffice/Makefile 1 Dec 2019 10:26:58 -0000
> > > > > @@ -354,11 +354,11 @@ CONFIGURE_ARGS+=--without-java
> > > > > .endif
> > > > >
> > > > > # XXX libreoffice has its own way to build things in parallel
> > > > > -PARALLEL_BUILD = No
> > > > > +PARALLEL_USES_MAKE = No
> > >
> > > I still don't understand that naming.
> > > If I don't use make(1) I can't do parallel builds?
> >
> > No, the way it works is that *by default* MAKE_JOBS is passed to
> > make as make -j${MAKE_JOBS}
> >
> > Look at both ports that override it, they explicitly set it to NO because
> > they pass "MAKE_JOBS" *elsewhere* (and don't want to use make -j)
> >
> > I tried for a less confusing naming than PARALLEL_BUILD. Tell me what
> > to call it then.!
> >
>
> # XXX libreoffice has its own way to build things in parallel
> USES_PARALLEL_MAKE = No
>
> ?
Ah, looks nicer indeed.
No comments:
Post a Comment