aboutsummaryrefslogtreecommitdiff
path: root/m4/ldexp.m4
diff options
context:
space:
mode:
authorYing Wang <wangying@google.com>2013-04-05 16:01:00 -0700
committerYing Wang <wangying@google.com>2013-04-05 16:01:00 -0700
commit05436638acc7c010349a69c3395f1a57c642dc62 (patch)
treec468bc764f71f5b2e4b6fe0692f18929f5ebde62 /m4/ldexp.m4
parent12a8de665f0fdd63df2944d5da7c75d5c49e67b9 (diff)
downloadbison-05436638acc7c010349a69c3395f1a57c642dc62.tar.gz
Upgrade bison from 2.3 to 2.7
See README.android for how the upgrade was done. Bug: 8517572 Change-Id: I1e42ab59ff385130a7e488371c6058a13add244d
Diffstat (limited to 'm4/ldexp.m4')
-rw-r--r--m4/ldexp.m454
1 files changed, 54 insertions, 0 deletions
diff --git a/m4/ldexp.m4 b/m4/ldexp.m4
new file mode 100644
index 00000000..6d26b564
--- /dev/null
+++ b/m4/ldexp.m4
@@ -0,0 +1,54 @@
+# ldexp.m4 serial 1
+dnl Copyright (C) 2010-2012 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([gl_FUNC_LDEXP],
+[
+ AC_REQUIRE([gl_CHECK_LDEXP_NO_LIBM])
+ LDEXP_LIBM=
+ if test $gl_cv_func_ldexp_no_libm = no; then
+ AC_CACHE_CHECK([whether ldexp() can be used with libm],
+ [gl_cv_func_ldexp_in_libm],
+ [
+ save_LIBS="$LIBS"
+ LIBS="$LIBS -lm"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[#ifndef __NO_MATH_INLINES
+ # define __NO_MATH_INLINES 1 /* for glibc */
+ #endif
+ #include <math.h>
+ double (*funcptr) (double, int) = ldexp;
+ double x;]],
+ [[return ldexp (x, -1) > 0;]])],
+ [gl_cv_func_ldexp_in_libm=yes],
+ [gl_cv_func_ldexp_in_libm=no])
+ LIBS="$save_LIBS"
+ ])
+ if test $gl_cv_func_ldexp_in_libm = yes; then
+ LDEXP_LIBM=-lm
+ fi
+ fi
+ AC_SUBST([LDEXP_LIBM])
+])
+
+dnl Test whether ldexp() can be used without linking with libm.
+dnl Set gl_cv_func_ldexp_no_libm to 'yes' or 'no' accordingly.
+AC_DEFUN([gl_CHECK_LDEXP_NO_LIBM],
+[
+ AC_CACHE_CHECK([whether ldexp() can be used without linking with libm],
+ [gl_cv_func_ldexp_no_libm],
+ [
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[#ifndef __NO_MATH_INLINES
+ # define __NO_MATH_INLINES 1 /* for glibc */
+ #endif
+ #include <math.h>
+ double (*funcptr) (double, int) = ldexp;
+ double x;]],
+ [[return ldexp (x, -1) > 0;]])],
+ [gl_cv_func_ldexp_no_libm=yes],
+ [gl_cv_func_ldexp_no_libm=no])
+ ])
+])