Subject: Re: cpufunc.h
To: Ben Harris <bjh21@netbsd.org>
From: Richard Earnshaw <rearnsha@buzzard.freeserve.co.uk>
List: port-arm
Date: 06/01/2001 21:37:57
> > (2) It wouldn't link, complaining about the absence of __gcc_main.
>
> Are you sure you don't mean "__gccmain"? Several of the ARM targets
> (though not arm-*-netbsd or arm-*-netbsdelf) define NAME__MAIN and
> SYMBOL__MAIN to this, apparently because the ARM libraries already include
> a function called __main. Since we don't use ARM's libraries, this isn't
> necessary on NetBSD. Come to that, I'm not sure the __main hack is
> necessary at all.
Yep, in the ARM toolkit world __main used to call main (it may still do),
which was bad news if gcc then tried to call __main to initialize its
constructors and destructors.
The __main hack is need on a.out platforms; but not on ELF, which has
support for constructor and destructor sections which the loader knows to
call automagically.
>
> It looks like, in both cases, your problems come from GCC's not being
> configured correctly, rather than from bugs in the kernel.
>
Or some of the netbsd local hacks haven't been fed back into the master
sources: this could be all part of the nightmare on gnu assignments issues.
R.