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

Re: DEB_BUILD_OPTIONS=parallel=n work not as expected



* Erik Schanze <schanzi_@gmx.de> [091206 10:36]:
> > /usr/bin/make  --jobserver-fds=3,4 -j
> > ...
> >
> > I don't know who changed $(MAKEFLAGS) from "-j3" to "--jobserver-fds=3,4 -j" and
> > why the number "3" was not used after "-j".
> >
> > Could anybody please give an explanation?
> > Is there something broken or did I miss something?
> >
>[...]
> Because this will end in a build run with unlimited jobs, or did I miss smth.?

If make was just passing -j3 down, you could not limit the number of
jobs. Because if your top level makefile calls again submakes in - say - src/,
doc/ and data/ (at the same time) and src/, doc/ and data/ would have 3
subdirectories, then there were already 9 subsubmakes processed at the
same time. if they had been given a -j3, too, each would process 3 files
at the same time, causing 27 processes running simultanously.

That's why submakes do not get -j3, but instead get told to interact
with the parent make, so that all possible submakes together process 3
things at the same time, but still being able to do so in multiple
subdirectories (if there are for example subdirectories with only 1
file).

Hochachtungsvoll,
	Bernhard R. Link
-- 
"Never contain programs so few bugs, as when no debugging tools are available!"
	Niklaus Wirth


Reply to: