[asterisk-dev] Re: russell: trunk r40153 - in /trunk: acinclude.m4 configure configure.ac

Brian Candler B.Candler at pobox.com
Thu Aug 17 09:46:56 MST 2006


On Thu, Aug 17, 2006 at 05:37:26PM +0300, Tzafrir Cohen wrote:
> > We have found that GNU Make versions 3.79 and 3.80 are very prone to 
> > segfault and buggy behavior when using documented GNU Make behavior 
> > (functionality that has been documented to be available since before 
> > 3.79 was released). We found these issues when improving the Makefiles 
> > and simplifying them.
> 
> Could you please be more specific?

I don't know if this one affects Asterisk, but here are the details of one
which breaks OpenRadius.
http://lists.e-advies.nl/pipermail/openradius-list/2006-August/001429.html

-------- 8< --------------------------------------------------------------
> gmake: *** virtual memory exhausted.  Stop.
> $ gmake clean
> gmake: *** virtual memory exhausted.  Stop.
> $ gmake
> gmake: *** virtual memory exhausted.  Stop.
> $ gmake --version
> GNU Make 3.80
> Copyright (C) 2002  Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.
> There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
> PARTICULAR PURPOSE.
>
> Right, so I upgraded to 3.81, and that fixed that problem (perhaps a note
> worth adding in a README for evblib).

Definitely. The offending fragment is

SUBDIRS         := auto sysdefs misc str buffer fastring stream strio
                   hash db tests

$(foreach dir,$(SUBDIRS),$(eval include $(dir)/Rules.mk))

If you replace it with the old style

dir             := auto
include         $(dir)/Rules.mk

dir             := sysdefs
include         $(dir)/Rules.mk

etc., it will work with older versions. No idea why Make 3.80 would barf
at that foreach, especially when 3.80 on Linux seemed to work fine...
-------- 8< --------------------------------------------------------------

Regards,

Brian.



More information about the asterisk-dev mailing list