Re: huge gcc 4.1.{0,1} __weak problem

Andrew Morton
2008-05-02T00:00:53Z

On Thu, 1 May 2008 16:24:47 -0700
Tom Rini <trini@kernel.crashing.org> wrote:

> On Thu, May 01, 2008 at 03:33:49PM -0700, Andrew Morton wrote:
> > On Thu, 1 May 2008 15:27:26 -0700 (PDT)
> > Linus Torvalds <torvalds@linux-foundation.org> wrote:
> >
> > >
> > >
> > > On Thu, 1 May 2008, Andrew Morton wrote:
> > > > >
> > > > > I see only the following choices:
> > > > > - remove __weak and replace all current usages
> > > > > - move all __weak functions into own files, and ensure that also happens
> > > > > for future usages
> > > > > - #error for gcc 4.1.{0,1}
> > > >
> > > > Can we detect the {0,1}? __GNUC_EVEN_MORE_MINOR__?
> > >
> > > It's __GNUC_PATCHLEVEL__, I believe.
> > >
> > > So yes, we can distinguish 4.1.2 (good, and very common) from 4.1.{0,1}
> > > (bad, and rather uncommon).
> > >
> > > And yes, considering that 4.1.1 (and even more so 4.1.0) should be rare to
> > > begin with, I think it's better to just not support it.
> > >
> >
> > Drat. There go my alpha, i386, m68k, s390, sparc and powerpc
> > cross-compilers. Vagard, save me!
> >
> > Meanwhile I guess I can locally unpatch that patch.
>
> I know I'll come off as an ass, but you can't make new ones with 4.1.2?
> It's not like we're talking about gcc 2.95/96 fun here :)

Honestly, I nearly died when I built all those cross-compilers. Sooooooo
many combinations of gcc/binutils/glibc refused to work for obscure
reasons. Compilation on x86_64 just didn't work at all and I ended up
having to build everything on a slow i386 box, etc, etc. The stream of
email to Dan got increasingly strident ;)

I think crosstool has become a lot better since then, judging from the ease
with which Jens was able to spin up the powerpc compiler, but the trauma
was a life-long thing.

Vegard has been making noises about (finally!) preparing and maintaining a
decent set of cross-compilers for us. It would be a great service (begs).