Subject: Re: [Boost-bugs] [Boost C++ Libraries] #11756: boost.Test: non standards compliant use of FE_* macros (unable to compile boost test library on FPU-less arches)
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2017-03-12 15:06:11
#11756: boost.Test: non standards compliant use of FE_* macros (unable to compile
boost test library on FPU-less arches)
----------------------------------+------------------------
Reporter: bartosz.krasinski@⦠| Owner: renficiaud
Type: Patches | Status: reopened
Milestone: Boost 1.64.0 | Component: test
Version: Boost 1.59.0 | Severity: Problem
Resolution: | Keywords:
----------------------------------+------------------------
Comment (by Jörg Krause):
Unfortunately, trac does not accept my posting because it thinks it is
spam. Now, my comment is lost...
So, I rewrite...
uClibc does have a fenv.h in the system directory path. It installs fenv.h
to the sysroot path if it was configured with UCLIBC_HAS_FENV. However,
this feature is only implemented for i386.
So, uClibc does have fenv.h, but does not necessarily implements and
installs it. Furthermore, the following macros are defined:
* `BOOST_NO_FENV_H` is not defined
* `__UCLIBC__` is defined
* `__USE_GNU` is defined
* `__GLIBC__` is defined
However, I think it is better to check with a test program if certain
features are available, instead of relying on a bunch of macros:
1) check if `feclearexcept()` is available => HAS_FENV
2) check for the macros => HAS_FENV_FE_xxx
3) check for the GNU extension => HAS_FENV_GNU
However, I am not familiar with the Boost build system.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/11756#comment:59> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-03-12 15:09:25 UTC