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

Re: Found (one) reason for packages not to do parallel builds?

On 04/01/12 18:12, Christian Jaeger wrote:
> Hi
> Many Debian packages don't use more than 1 CPU even when passing -j$n
> to dpkg-buildpackage with $n > 1.

I'm not sure if that's the correct way to set it - I've always set it in
DEBIAN_BUILD_OPTIONS but I haven't checked lately to see if it's still
the correct way to do it.

> (Concretely, my build command is:
>  dpkg-buildpackage -uc -us -b -r'fakeroot -u' -j2 )
> I'm surprised that this is the case even in today's 'testing',
> considering that most machines are multi-core now and I would expect
> maintainers to be impatient themselves. Anyway, today I've noticed the
> following line when building some package:
>  make[1]: warning: jobserver unavailable: using -j1.  Add `+' to
> parent make rule.
> Googling found me
>  http://lists.gnu.org/archive/html/help-make/2011-03/msg00045.html
> which mentions to use $$(MAKE) instead of $(MAKE).
> I haven't looked into the package build files yet because I'm lazy and
> am usually put off by the usual complexity of builds. I'm asking
> myself whether I should look into these packages and attempt to apply
> the above fix somewhere. Then I'm asking what others are doing to
> remedy the situation. And in the end I decide to just at least dump
> this information here in case it would be useful for someone who might
> actually do something about it...
> Christian.

If the particular package build system supports multi-processor builds
(and as you point out, many don't) then "parallel=whatever" should work
(in the DBO).

It is (or was) in the policies somewhere. Sorry I can't be more precise
at present.


Iceweasel/Firefox extensions for finding answers to Debian questions:-

Reply to: