clang+libc++ using missing powl

David Chisnall theraven at FreeBSD.org
Thu Sep 5 08:52:19 UTC 2013


On 4 Sep 2013, at 23:38, Baptiste Daroussin <bapt at freebsd.org> wrote:

> As a result we have a lot of fallouts of ports complaining about:
> undefined reference to `powl'
> 
> It seems like libc++ is relying on a function we don't have yet in libm, am I
> missing something?

I've attached a diff that I'd like to commit to msun that should allow these things to link.  This:

- Provides thin wrappers around the 8 missing libm functions that libc++ exposes that just call the double versions

- Makes these weak references, so other libraries can replace them with more precise versions if required

- On platforms where long double is greater precision than double (e.g. x86), it emits a linker warning when they are referenced

These can then be replaced by proper versions as they become available (at which point the linker warnings will go away).

David

-------------- next part --------------
A non-text attachment was scrubbed...
Name: imprecise.diff
Type: application/octet-stream
Size: 3747 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-numerics/attachments/20130905/39d0bd1c/attachment.obj>


More information about the freebsd-numerics mailing list