Date: Sat, 10 Nov 2012 22:59:21 +0100 From: Dimitry Andric <dim@FreeBSD.org> To: Jilles Tjoelker <jilles@stack.nl> Cc: freebsd-current@freebsd.org, Steve Kargl <sgk@troutmask.apl.washington.edu> Subject: Re: clang and static linking? Message-ID: <509ECE39.8020006@FreeBSD.org> In-Reply-To: <20121110213942.GA67444@stack.nl> References: <20121108231349.GA79485@troutmask.apl.washington.edu> <509D4548.7030806@FreeBSD.org> <20121109182810.GA61338@troutmask.apl.washington.edu> <509D5BC3.9020704@FreeBSD.org> <509D90EC.5040302@FreeBSD.org> <509DA0E4.9060906@FreeBSD.org> <20121110213942.GA67444@stack.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2012-11-10 22:39, Jilles Tjoelker wrote: > On Sat, Nov 10, 2012 at 01:33:40AM +0100, Dimitry Andric wrote: ... >> - Only define isnan, isnanf, __isnan and __isnanf in libc.so, not in >> libc.a and libc_p.a. > > OK, but please add a comment about this. Where? In libc or libm? >> - Define isnan in libm.a and libm_p.a, not in libm.so. I don't think >> there is a need to define __isnan in the .a files, so I left that out. > > Removing symbols from a .so causes subtle ABI breakage and is not needed > for fixing static linking. I didn't remove symbols from any .so. There was no isnan in libm.so before my commit. I only added it to the static libraries. > More concretely, dlsym of isnan on libm.so will stop working and a > different version of isnan will be chosen if the search list is libm.so, > libother.so, libc.so and libother.so contains another isnan. As I said, there was no isnan in libm.so, so this does not matter.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?509ECE39.8020006>