Subject: Re: lib/2758: crt0.o pulls in much of libc during linking
To: Mike Long <mike.long@analog.com>
From: Chris G Demetriou <Chris_G_Demetriou@ux2.sp.cs.cmu.edu>
List: netbsd-bugs
Date: 09/16/1996 09:59:55
> >Description:
> 	crt0.o is supposed to be a mostly-standalone module.  NetBSD's
> violates that rule because it uses strerror(), which uses catopen(),
> which uses...you get the idea.


Last I heart, 'crt0.o' was meant for use with shared binaries, but
scrt0.o was meant for use with static ones.  For them, those calls
won't add much space at all to the size of the executable.

the stuff in common.[ch] is only included in crt0.c...  I wonder why
crt0.c is being used for statically-linked binaries at all, rather
than scrt0.o, which as far as I can tell is still being built and
installed.

It makes sense to get rid of the difference between static and dynamic
run-time startups _only_ if "the difference" doesn't cost much in
terms of size.  sounds like on the i386 (and other a.out-shlib) ports
it does, since their crt0.o has to load the shared linker...


chris