Date: Fri, 5 Jan 2001 22:07:52 -0800 (PST) From: "David E. O'Brien" <obrien@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/lib/libc_r/uthread uthread_init.c Message-ID: <200101060607.f0667qB48832@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
obrien 2001/01/05 22:07:52 PST
Modified files:
lib/libc_r/uthread uthread_init.c
Log:
Force strong references to several pthread_* functions which are weakly
referenced to by libgcc.a.
This is needed when linking statically as SVR4 (ie, ELF) behavior is to only
link in a module if it satisfies an undefined strong reference from somewhere.
(this surprises a lot of people) Things are different when using shared libs,
the entire library and its modules and their symbols are available at run-time
(when the weak reference is seen to still be unsatisfied and is satisfied on
the spot), this is not the case with static libs.
Thus one can have a static binary with unresolved week references, and at
run-time dereference a NULL pointer.
Submitted by: eischen
Revision Changes Path
1.28 +33 -1 src/lib/libc_r/uthread/uthread_init.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101060607.f0667qB48832>
