Not providing static libraries (libkse/libpthread)
Marcel Moolenaar
marcel at xcllnt.net
Wed Mar 26 21:44:56 PST 2003
On Wed, Mar 26, 2003 at 04:04:42PM -0500, Daniel Eischen wrote:
>
> Also, in a lot of functions, there are:
>
> if (_thread_initial == NULL)
> _thread_init();
>
> I'd like to be able to get rid of these eventually and perhaps have
> some magical way of getting it called automatically when the library
> is loaded.
You may be able to piggyback on the C++ static object initialization
by utilizing _init() and _fini(). I don't think archive is different
from shared in that respect for C (ie they both don't have what _init()
provides and have _fini() in terms for atexit()). But it works in both
cases if you add some C++ related magic (See also the .init and .fini
ELF sections).
--
Marcel Moolenaar USPA: A-39004 marcel at xcllnt.net
More information about the freebsd-arch
mailing list