aboutsummaryrefslogtreecommitdiff
path: root/autoconf/m4/c_printf_a.m4
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2004-09-07 06:56:14 +0000
committerReid Spencer <rspencer@reidspencer.com>2004-09-07 06:56:14 +0000
commit491f6812ef173989612d987fa8706fd38e2e673f (patch)
tree0ba6404a9be355d9bbd5e526efe32e3b0bc29afa /autoconf/m4/c_printf_a.m4
parent10c0a2e7f955cbe6cc8c842e6d8aebc10ac91f4c (diff)
Individual autoconf function broken out of acincludes.m4. This change
per the recommended style guide for autoconf and so that individual autoconf functions can more easily be shared across projects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16223 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'autoconf/m4/c_printf_a.m4')
-rw-r--r--autoconf/m4/c_printf_a.m431
1 files changed, 31 insertions, 0 deletions
diff --git a/autoconf/m4/c_printf_a.m4 b/autoconf/m4/c_printf_a.m4
new file mode 100644
index 0000000000..62ed2ac8d7
--- /dev/null
+++ b/autoconf/m4/c_printf_a.m4
@@ -0,0 +1,31 @@
+#
+# Determine if the printf() functions have the %a format character.
+# This is modified from:
+# http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_have_ext_slist.html
+AC_DEFUN([AC_C_PRINTF_A],
+[
+ AC_MSG_CHECKING([for printf %a format specifier])
+ AC_LANG_SAVE
+ AC_LANG_C
+ AC_RUN_IFELSE(
+ AC_LANG_PROGRAM([#include <stdio.h>
+ #include <stdlib.h>],
+ [[[
+ volatile double A, B;
+ char Buffer[100];
+ A = 1;
+ A /= 10.0;
+ sprintf(Buffer, "%a", A);
+ B = atof(Buffer);
+ if (A != B)
+ return (1);
+ if (A != 0x1.999999999999ap-4)
+ return (1);
+ return (0);]]]),
+ ac_c_printf_a=yes,ac_c_printf_a=no)
+ AC_LANG_RESTORE
+ AC_MSG_RESULT($ac_c_printf_a)
+ if test "$ac_c_printf_a" = "yes"; then
+ AC_DEFINE([HAVE_PRINTF_A],[1],[Define to have the %a format string])
+ fi
+])