tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: MAKE_JOBS.devel/cmake ineffective



* On 2020-11-04 at 12:25 GMT, Kamil Rytarowski wrote:

> On 04.11.2020 13:18, Jonathan Perkin wrote:
> > * On 2020-11-04 at 11:47 GMT, Jonathan Perkin wrote:
> > 
> >> * On 2020-11-04 at 11:36 GMT, Paul Ripke wrote:
> >>
> >>> -CONFIGURE_ARGS+=	--parallel=${MAKE_JOBS:U1}
> >>> +CONFIGURE_ARGS+=	--parallel=${_MAKE_JOBS_N:U1}
> >>
> >> Seems reasonable, but before we use this across the tree even more we
> >> should remove the leading _ or export a different variable as it's
> >> clearly not a private variable any longer.
> >>
> >> I'd suggest PKG_MAKE_JOBS.
> > 
> > Specifically this proposed diff:
> > 
> >   https://gist.github.com/jperkin/b390f0d922e5c22430ae7f2d8131a158
> > 
> > That is:
> > 
> >  * remove _MAKE_JOBS completely
> >  * rename _MAKE_JOBS_N to be PKG_MAKE_JOBS
> >  * convert instances of ${_MAKE_JOBS} to instead be -j${PKG_MAKE_JOBS}
> > 
> > To me this makes more sense, and is easier to read and understand
> > rather than embedding the "-j".  The one difference is that now -j1
> > will be explicitly used when MAKE_JOBS_SAFE=no, where previously the
> > -j was omitted, but again to me that feels more correct anyway.
> > 
> > I'm happy to test this in a bulk build if preferred.
> > 
> 
> Why not just extract it from MAKE_JOBS, a well defined public variable?
> Adding a duplicate variable for the same purpose is confusing.

Sorry, you'll need to explain what your objection is a bit further.

MAKE_JOBS is an input variable from the user for the default number of
jobs to use.

MAKE_JOBS.<pkgpath> is an input variable from the user for a specific
number of jobs to use for a particular package.

MAKE_JOBS_SAFE is an input variable from a package to determine
whether it is safe to use >1 jobs.

PKG_MAKE_JOBS is an output variable calculated as the number of jobs
to use for the package in question based on the 3 input variables
above.

I don't understand how PKG_MAKE_JOBS can be considered to be a
duplicate of MAKE_JOBS.  They are completely different.

-- 
Jonathan Perkin  -  Joyent, Inc.  -  www.joyent.com


Home | Main Index | Thread Index | Old Index