Commit Graph

337 Commits

Author SHA1 Message Date
Viral B. Shah 5840cef4ad Install all the headers in includdir/openlibm 2016-02-24 10:34:57 +05:30
Viral B. Shah 05f9de6c05 Revert "moved src/cdefs-compat.h -> include/cdefs-compat.h"
This reverts commit 07a535e55d.
2016-02-24 10:33:19 +05:30
Viral B. Shah 28e2b87335 Install cdefs-compat.h as well in usr/include/openlibm 2016-02-24 10:10:35 +05:30
Viral B. Shah 07a535e55d moved src/cdefs-compat.h -> include/cdefs-compat.h 2016-02-24 10:06:55 +05:30
Viral B. Shah 7654216ccf Merge pull request #110 from iblis17/master
FreeBSD has different pkg-config dir: /usr/local/libdata/
2016-02-23 11:21:12 -08:00
Viral B. Shah 369d3f6b6d Add ppc support. 2016-02-23 23:45:33 +05:30
Viral B. Shah 076a1cfb82 Merge pull request #116 from JuliaLang/sb/opt
work around optimisation bugs for rint
2016-02-23 10:11:34 -08:00
Simon Byrne dcc0d8da74 work around optimisation bugs for rint 2016-02-23 15:40:46 +00:00
Simon Byrne 39bfc468bc Merge pull request #115 from JuliaLang/sb/arm
Set optimisation on ARM to -O0, which stops tests from hanging.
2016-02-23 14:16:38 +00:00
Simon Byrne ac6fb73cba Set optimisation on ARM to -O0, which stops tests from hanging. 2016-02-23 13:58:20 +00:00
Simon Byrne 1aa6a0fc7c Merge pull request #114 from JuliaLang/sb/power
Support powerpc
2016-02-23 13:37:21 +00:00
Simon Byrne 830dc991f3 Support powerpc
This fixes #113, based on files from FreeBSD. Tested on machine hosted by [OSUOSL](http://osuosl.org/services/powerdev/).
2016-02-23 11:08:14 +00:00
Iblis Lin 37559aa18c FreeBSD has different pkg-config dir: /usr/local/libdata/ 2016-01-19 23:08:57 +08:00
Viral B. Shah 5cd80c4b1c Merge pull request #106 from petercolberg/master
Set default optimization flag to -O2
2015-11-28 21:07:54 +05:30
Peter Colberg b9658f49e6 Fail if library symlinks cannot be created
libopenlibm.$(SHLIB_EXT).$(SOMAJOR) is required for running tests.
2015-11-13 13:45:37 -05:00
Peter Colberg 0aef1f7009 Clean up and test make clean 2015-11-13 13:43:44 -05:00
Peter Colberg ebed203c04 Remove superfluous compiler flags for tests
-O2 is the default, and -g should be set in CFLAGS if needed.
2015-11-13 13:19:51 -05:00
Peter Colberg f4daa7e8bb Set default optimization flag to -O2
Allow overriding optimization flag with the environment variable CFLAGS.
2015-11-13 13:14:55 -05:00
Viral B. Shah e102501e24 Merge pull request #105 from petercolberg/master
[WIP] More makefile improvements
2015-11-13 09:21:59 +05:30
Viral B. Shah 4c8740ad58 Import these fixes from upstream.
0563b7a42b/lib/msun/src/e_j0f.c

Fix test build on OS X.
2015-11-13 09:16:51 +05:30
Peter Colberg 3095eef623 Add make variable NOOPT to disable optimization flags
This is used by Debian to build an unoptimized variant for debugging.
2015-11-12 22:37:28 -05:00
Viral B. Shah c29e8b1b6e Revert "Remove [jy][01n]f(). X/Open only standardizes the double versions."
This reverts commit 8c8693cf79.
2015-11-13 09:06:24 +05:30
Viral B. Shah 2af199e669 Merge pull request #104 from petercolberg/master
Test shared library
2015-11-13 09:00:07 +05:30
Peter Colberg bab41fc510 Test shared library
Add make check target that builds and runs the tests.
2015-11-12 14:56:08 -05:00
Viral B. Shah a8c2f3a1bb Merge pull request #102 from ginggs/kfreebsd-hurd
Build on GNU/kfreeBSD and GNU/Hurd
2015-11-12 11:20:11 +05:30
Graham Inggs e3336dd022 Enable stack protection for all ELFs, not only __linux__ 2015-11-10 21:39:17 +02:00
Graham Inggs ebe1db3ce4 Build on GNU/kfreeBSD and GNU/Hurd
Use __GLIBC__ instead of __linux
Simplify Make.inc as per JuliaLang/openspecfun@e91925a
2015-11-10 21:38:51 +02:00
Viral B. Shah 58e1dd9a28 Merge pull request #103 from ginggs/inline-fpgetprec-i386
Add missing include to inline __fpgetprec on i386
2015-10-28 19:44:30 +05:30
Graham Inggs d37c9c3970 Add missing include to inline __fpgetprec on i386
This fixes the unresolved symbol __fpgetprec in libopenlibm.so.1.0 on i386
2015-10-28 09:02:50 +02:00
Viral B. Shah 91f517b9f5 Merge pull request #100 from NuxiNL/aarch64
Make OpenLibm build on AArch64 (aka ARM64).
2015-10-26 15:31:17 +05:30
Ed Schouten 845b329cb9 Remove __always_inline, just like we do for ld80.
__always_inline is a (Free)BSD specific definition from cdefs.h.
Compilers like Clang don't care about these keywords anyway, as they
simply do whatever they like.

It looks like we already removed this keyword from ld80/e_rem_pio2l.h as
well. Apply exactly the same change to the ld128 version as well.
2015-10-26 10:28:11 +01:00
Ed Schouten ec5833a498 Add a copy of FreeBSD's lib/libc/aarch64/_fpmath.h.
This makes it possible to build OpenLibm on ARM64 CPUs.
2015-10-26 10:26:19 +01:00
Ed Schouten bc8dd927a3 Use isfinite() instead of non-standard finite() function.
The finite() function got standardized under the name isfinite(). Its
use is therefore discouraged.
2015-10-26 10:23:11 +01:00
Keno Fischer 13d11626ba Merge pull request #98 from ginggs/fix-missing-buildflags
Fix missing buildflags
2015-10-26 03:34:52 -04:00
Graham Inggs 395d998567 Fix missing buildflags
Debian's blhc (build log hardening check) reports dpkg-buildflags-missing CPPFLAGS 48 (of 223), CFLAGS 2 (of 177), LDFLAGS 2 (of 3) missing
2015-10-26 07:15:39 +02:00
Viral B. Shah 0036d70734 Merge pull request #97 from ziotom78/patch-1
Update Make.inc to detect OpenBSD
2015-08-13 22:19:35 +05:30
Maurizio Tomasi 3f0a53d69b New instructions about how to build on OpenBSD 2015-08-13 14:28:19 +02:00
Maurizio Tomasi 2870ed32b3 Update Make.inc to detect OpenBSD
With this patch I have been able to successfully compile Openlibm on OpenBSD 5.7 (x86_64) using the following command:

gmake GCC=egcc GXX=eg++ USEGCC=1 ARCH=x86_64

(I had to install gcc 4.9 from ports, as Openlibm does not compile with the default compiler shipped with OpenBSD 5.7, which is gcc 4.2.1).
2015-08-13 12:14:57 +02:00
Viral B. Shah ef29d06db1 Merge pull request #90 from scialex/cross-compile
Add support for cross compiling with `make ARCH=name`
2015-03-02 09:00:26 +05:30
Alexander Light f70240ded5 Add support for cross compiling with ARCH=name
This is rather basic. A clean is needed to get rid of artifacts from
previous runs with other architectures.

Note this requires PR #88 to work because without it x86 is broken.

Closes #89
2015-03-01 15:09:22 -05:00
Viral B. Shah efcb36079a Merge pull request #88 from scialex/fix-i386
Fix build for x86 32 bit targets
2015-03-01 18:11:41 +05:30
Alexander Light f30b0d3045 Fix build for i386
This would not build on i386 due to a missing include.
2015-02-26 16:01:30 -05:00
Viral B. Shah c53d2ddbe2 Merge pull request #87 from JuliaLang/nalimilan/fpstack
Remove floating point stack checks in tests
2015-02-22 21:08:41 +05:30
Milan Bouchet-Valat eaee935f48 Remove floating point stack checks in tests
There is no guarantee that the FP stack is preserved, and apparently
this no longer works with modern compilers. #55.
2015-02-22 12:22:57 +01:00
Viral B. Shah 8247b5af78 Revert "Update to the latest s_scalbln.c from msun."
This reverts commit a2f4e102f2.
2015-02-21 07:50:35 +05:30
Viral B. Shah a2f4e102f2 Update to the latest s_scalbln.c from msun. 2015-02-20 23:56:48 +05:30
Viral B. Shah 763da44606 Bump SO major number as we have introduced API breakage.
Use version number as 0.5-dev, instead of 0.5.
2015-02-12 20:00:17 +05:30
Viral B. Shah 8d0843a324 Merge pull request #85 from NuxiNL/remove-extensions
Remove non-standard functions from OpenLibm
2015-02-12 19:38:00 +05:30
Ed Schouten d64ea4e5f9 Make small changes to libm-test.c to improve portability.
- Don't define llabs(). This breaks if llabs() is already a macro, which
  is allowed by the C standard/POSIX. llabs() was introduced in C99, so
  I think we can safely assume it is present on all interesting systems.

- Cast the parameters to fabs() to the floating point type. Clang has
  introduced some interesting warnings that trigger if the arguments to
  fabs*() are not the right type.
2015-02-12 14:15:15 +01:00
Ed Schouten b6ff8bbe91 Clean up a change that I sneaked in accidentically.
I often build the code with -Wmissing-prototypes to ensure that we don't
accidentically pollute the symbol namespace. If we want to provide a
symbol such as isopenlibm(), make sure we also declare it in
<openlibm_math.h>.
2015-02-12 13:58:35 +01:00