Use of C99 extra long double math functions after r236148

Peter Jeremy peter at
Mon May 28 21:36:42 UTC 2012

On 2012-May-28 11:01:24 -0500, Stephen Montgomery-Smith <stephen at> wrote:
>One thing that could be done is to have a "math/cephes" port that adds 
>the extra C99 math functions.  This is already done in the math/sage 
>port, using a rather clever patch due to Peter Jeremy, that applies to 
>the cephes code.
>What it would do is to create a /usr/local/lib/ that would 
>provide the extra functions not currently included in /lib/, and 
>then link in /lib/ as well.  It would also create its own 
>/usr/local/include/math.h and /usr/local/include/complex.h as well.

Basically, as long as the compiler searches /usr/local/{include,lib}
before the base include/lib then <math.h>, <complex.h> and -lm give
the application a complete C99 math implementation by using base
functions where they exist and cephes functions where they don't.

The patch I wrote for sage can be found at
If there's any interest, I could produce a port for this.

Another option would be to import cephes into base and use it to
provide the missing C99 functions.  Cephes includes copyright notices
but the closest I can find to a license is:
"   Some software in this archive may be from the book _Methods and
 Programs for Mathematical Functions_ (Prentice-Hall or Simon & Schuster
 International, 1989) or from the Cephes Mathematical Library, a
 commercial product. In either event, it is copyrighted by the author.
 What you see here may be used freely but it comes with no support or

Peter Jeremy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url :

More information about the freebsd-current mailing list