automake-ng
[Top][All Lists]
Advanced

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

Re: [Automake-NG] [FYI 2/2] built sources: avoid fork bomb in $(BUILT_SO


From: Stefano Lattarini
Subject: Re: [Automake-NG] [FYI 2/2] built sources: avoid fork bomb in $(BUILT_SOURCES) handling
Date: Wed, 19 Sep 2012 21:49:33 +0200

On 09/19/2012 03:19 PM, Akim Demaille wrote:
> 
> Le 16 sept. 2012 à 20:21, Stefano Lattarini a écrit :
> 
>> Hi Akim.
>>
>> On 09/16/2012 03:48 PM, Akim Demaille wrote:
>>>
>>> Le 11 sept. 2012 à 16:49, Stefano Lattarini a écrit :
>>>
>>>> Due to how the handling of $(BUILT_SOURCES) was implemented in Automake-NG,
>>>> a recursive make call in the recipe of any $(BUILT_SOURCES) (or of any of
>>>> its prerequisites) would have caused an infinite recursion (complete with
>>>> fork bomb, yuck).  Work around the issue.
>>>
>>> Shouldn't some error message be sent to diagnose something wrong?
>>>
>> But my patch now *avoids* the error in the first place (see the test case),
>> so we shouldn't report anything.  Or am I missing something?
> 
> Hi Stefano,
> 
> It was unclear to me that the kind of error that would arise
> would be *only* be due to Automake-NG's implementation, or
> partly due to the user (possibly declaring recursive dependencies).
>
Well, if the user calls "make all" in the recipe for a $(BUILT_SOURCES),
he will still experience a fork bomb, even after this patch -- but that
is the case also for mainline Automake, so no regression here.  On the
other hand, before this patch, the Automake-NG implementation would
have caused a fork bomb should *any* recursive make call be issued in
a recipe for a $(BUILT_SOURCES), even if such call entailed no infinite
recursion by itself -- that was a regression, one that hit a real-world
package like GNU Smalltalk, and which my patch has fixed.  Does this
clarify the matter?

> If the user is somewhat responsible, then she should be told.
> But of course if it's only a technical detail, let's keep it
> silent, clearly.
> 

Thanks,
  Stefano



reply via email to

[Prev in Thread] Current Thread [Next in Thread]