This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
Re: newlib ieeefp.h again
On 23/03/17 21:05, Craig Howland wrote:
On 03/23/2017 02:58 AM, Sebastian Huber wrote:
On 23/03/17 00:17, Andrew Johnson wrote:
Hi Joel & Craig,
Hopefully you remember this email conversation from November:
https://sourceware.org/ml/newlib/2016/msg01117.html
I just built the RTEMS master branch for the uC5282 BSP, and found the
same problem with the ieeefp.h header when building EPICS Base using
the
result. I think I can explain what's happening.
Newlib's setting for _LDBL_EQ_DBL (in newlib.h) needs to change
based on
the particular CPU being compiled for. Here's some evidence:
Yes, this definition of _LDBL_EQ_DBL is wrong, since it depends on
the multilib. For example we have in the GCC build tree:
grep _LDBL_EQ_DBL `find -name newlib.h`
./m68k-rtems4.12/m68040/softfp/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */
...
In the installation tree:
grep _LDBL_EQ_DBL `find -name newlib.h`
./m68k-rtems4.12/include/newlib.h:/* #undef _LDBL_EQ_DBL */
So, only one random newlib.h is copied to the installation tree,
therefore all newlib.h of the build tree must be identical.
I would move the _LDBL_EQ_DBL definition to <ieeefp.h> based on
compiler provided defines.
The primary question is whether this is truly possible or not, which
will depend upon both what compiler and how old of a compiler version
newlib wants to support. Back in 2009 when _LDBL_EQ_DBL was added to
newlib.hin, this was not really possible as both float.h and compiler
predefines were spotty. As long as we don't need to go back too many
versions, it ought to be fine to do it at build time now.
Craig
Does "spotty" mean they are broken or not available? Maybe we should
1. define _LDBL_EQ_DBL in <ieeefp.h> by means of compiler defines
2. fall back to define_LDBL_EQ_DBL via a
_HIGHLY_DANGEROUS_LDBL_EQ_DBL_HINT defined via <newlib.h>
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.