[PATCH] stdlib/tst-strtod-round.c: Fix build on ARM
Will Newton
will.newton@linaro.org
Wed Sep 24 14:38:00 GMT 2014
On 16 September 2014 14:32, Will Newton <will.newton@linaro.org> wrote:
> Building this test on ARM fails because the prototypes for the long
> double variants of the math functions are unavailable.
>
> Add an additional include guard to math.h that enables long double math
> function declarations if _LIBC_TEST is defined and define _LIBC_TEST in
> stdlib/tst-strtod-round.c.
>
> ChangeLog:
>
> 2014-09-16 Will Newton <will.newton@linaro.org>
>
> * math/math.h: Define long double math functions if
> _LIBC_TEST is defined.
> * stdlib/tst-strtod-round.c: Define _LIBC_TEST.
> ---
> math/math.h | 2 +-
> stdlib/tst-strtod-round.c | 3 +++
> 2 files changed, 4 insertions(+), 1 deletion(-)
Ping?
> diff --git a/math/math.h b/math/math.h
> index 72ec2ca..dc7ab2d 100644
> --- a/math/math.h
> +++ b/math/math.h
> @@ -91,7 +91,7 @@ __BEGIN_DECLS
> # undef _Mdouble_END_NAMESPACE
> # undef __MATH_PRECNAME
>
> -# if !(defined __NO_LONG_DOUBLE_MATH && defined _LIBC) \
> +# if !(defined __NO_LONG_DOUBLE_MATH && defined _LIBC && !defined _LIBC_TEST) \
> || defined __LDBL_COMPAT
> # ifdef __LDBL_COMPAT
>
> diff --git a/stdlib/tst-strtod-round.c b/stdlib/tst-strtod-round.c
> index f334b20..cbde457 100644
> --- a/stdlib/tst-strtod-round.c
> +++ b/stdlib/tst-strtod-round.c
> @@ -17,6 +17,9 @@
> License along with the GNU C Library; if not, see
> <http://www.gnu.org/licenses/>. */
>
> +/* Defining _LIBC_TEST ensures long double math functions are
> + declared in the headers. */
> +#define _LIBC_TEST 1
> #include <fenv.h>
> #include <float.h>
> #include <math.h>
> --
> 1.9.3
>
--
Will Newton
Toolchain Working Group, Linaro
More information about the Libc-alpha
mailing list