[Gc] Re: boehm-gc breakage between binutils 2.16.1 and 2.17 on FreeBSD [7.2]

Boehm, Hans hans.boehm at hp.com
Tue Sep 1 10:24:04 PDT 2009


> From:  Ludovic Courtès
> 
> Hi,
> 
> Loren James Rittle
> <rittle at latour.labs.mot.com> writes:
> 
> > +# if (defined(FREEBSD) && __FreeBSD__ >= 7)
> > +/* On the FreeBSD system, any target system at major 
> version 7 shall    */
> > +/* have dl_iterate_phdr; therefore, we need not make it weak as 
> > +above.  */ #define HAVE_DL_ITERATE_PHDR #endif
> 
> Is there any reason not to use 
> `AC_CHECK_LIB([dl_iterate_phdr])' for this?  This would be 
> more reliable and "future-proof".  (I understand this was 
> already done this way before your patch.)
> 
> Thanks,
> Ludo'.
> 
The advantage of doing it the first way is that the collector remains buildable without autoconf, e.g. with Makefile.direct.  I may be increasingly in the minority, but I'm still relying on that occasionally for several reasons:

1) It's hard to build with autoconf and e.g. Microsoft tools, at least as far as I know.  Thus we need some support for autoconf-less builds anyway.

2) I sometimes find it easier to debug with Makefile.direct, since it's much more obvious how to temporarily change the build process, "executables" aren't actually shell scripts, etc.

3) Autoconf etc. are really slow on small systems like an old ARM system I sometimes use for testing.

Admittedly this doesn't always work, and I think the MacOS build sometimes requires autoconf, since there appears to be no other convenient way to check for feature differences.  Clearly autoconf is more general.  But I've tried to keep Makefile.direct working whenever I can do so at small cost.

Hans


More information about the Gc mailing list