Sen descrición

Viral B. Shah c485db579d Some fixes to be able to build the system versions of the tests. %!s(int64=10) %!d(string=hai) anos
amd64 d07820351b Rename the fenv headers. %!s(int64=10) %!d(string=hai) anos
arm d07820351b Rename the fenv headers. %!s(int64=10) %!d(string=hai) anos
bsdsrc 71f60ec632 Prevent the use of deprecated or internal functions if possible. %!s(int64=10) %!d(string=hai) anos
i387 d07820351b Rename the fenv headers. %!s(int64=10) %!d(string=hai) anos
include 17688c4487 Rename include/fenv.h to <openlibm_fenv.h>. %!s(int64=10) %!d(string=hai) anos
ld128 06dbb6e72b Use more uniform style of including headers. %!s(int64=10) %!d(string=hai) anos
ld80 06dbb6e72b Use more uniform style of including headers. %!s(int64=10) %!d(string=hai) anos
src 23b8f663d4 Revert "Don't use __weak_reference() when a __strong_reference() is needed." %!s(int64=10) %!d(string=hai) anos
test c485db579d Some fixes to be able to build the system versions of the tests. %!s(int64=10) %!d(string=hai) anos
.gitignore 0c307a220b add .pc to .gitignore %!s(int64=10) %!d(string=hai) anos
.mailmap f5d2bc53f9 Add mailmap %!s(int64=12) %!d(string=hai) anos
.travis.sh 9101f61238 Added Travis test script %!s(int64=10) %!d(string=hai) anos
.travis.yml ecfaad0dec try being consistent about quoting to disable arm build from osx %!s(int64=10) %!d(string=hai) anos
LICENSE.md e5c38c3e8b README and LICENSE updates. %!s(int64=10) %!d(string=hai) anos
Make.inc 168467f09a As discussed in #69, this only requires a minor version number bump. %!s(int64=10) %!d(string=hai) anos
Makefile 619f810223 add -f flag to cp in install target %!s(int64=10) %!d(string=hai) anos
README.md 769a422f06 Enable tests on OS X too. %!s(int64=10) %!d(string=hai) anos
Symbol.map 16b9264f9d Import entire msun from FreeBSD. %!s(int64=13) %!d(string=hai) anos
openlibm.pc.in 5b16546ddd Added pkg-config support %!s(int64=10) %!d(string=hai) anos

README.md

OpenLibm

Build Status

OpenLibm is an effort to have a high quality, portable, standalone C mathematical library (libm). It can be used standalone in applications and programming language implementations.

The project was born out of a need to have a good libm for the Julia programming langage that worked consistently across compilers and operating systems, and in 32-bit and 64-bit environments.

History

The OpenLibm code derives from the FreeBSD msun and OpenBSD libm implementations, which in turn derives from FDLIBM 5.3. As a result, it includes a number of fixes and updates to FDLIBM that have accumulated over the years in msun, and optimized versions of many functions.

Platform support

OpenLibm builds on Linux, Mac OS X, and Windows, and with little effort, should build on FreeBSD as well. It builds with both GCC and clang. Although largely tested on x86, it also includes experimental support for ARM. The original msun also includes support for mips, sparc64, powerpc, ia64, and alpha. These are present in the OpenLibm source tree, but no attempt has been made to build any of these.

Build instructions

  1. make or make USEGCC=1 to build with GCC. This is the default on Linux and Windows.
  2. make USECLANG=1 to build with clang. This is the default on OS X.