On Mon, Jun 22, 2020 at 11:51 AM Tom Stellard <tstellar(a)redhat.com> wrote:
On 06/20/2020 11:20 AM, Neal Gompa wrote:
> On Sat, Jun 20, 2020 at 2:16 PM Zbigniew Jędrzejewski-Szmek
> <zbyszek(a)in.waw.pl> wrote:
>>
>> On Fri, Jun 19, 2020 at 05:11:43PM -0400, Ben Cotton wrote:
>>> The %make_build macro enables parallel make builds using the -j option. In
>>> case a package does not build correctly with parallel make, then parallel
>>> make will be disabled for that package by redefining the %_smp_mflags macro
>>> like this:
>>>
>>> %global _smp_mflags -j1
>>
>> That is rather unwiely, in particular because it's quite common for
>> just *some* make invocations to fail in parallel mode. (E.g. the main
>> build works, but doc build fails, or install, etc.)
>>
>> Why not specify the override for the individual invocation:
>> %make_build -j1
>> %make_install -j1
>> %make_build -C docs -j1
>>
>
> I think I'd be more comfortable with making all "make
%{?_smp_mflags}"
> calls switch to "%make_build" and leaving the rest alone.
>
Is this because you are concerned about build failures caused by
enabling parallel builds for packages that aren't currently using
that?
Yes, and because Make is often used for non-compilation things and
those aren't necessarily multi-threaded, and passing mflags there can
break things.
--
真実はいつも一つ!/ Always, there's only one truth!