From e50c1ea395c49b1480332f0ec08ffc20e72b6e80 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Sat, 27 Jun 2009 15:05:01 +0000 Subject: [PATCH] Add a configure test for whether or not __mingw_vfprintf exists --- configure.ac | 2 ++ rts/Linker.c | 8 +++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 57174a2..db44d16 100644 --- a/configure.ac +++ b/configure.ac @@ -859,6 +859,8 @@ AC_CHECK_HEADER([papi.h], [HavePapiHeader=YES], [HavePapiHeader=NO]) AC_SUBST(HavePapiLib) AC_SUBST(HavePapiHeader) +AC_CHECK_FUNCS(__mingw_vfprintf) + if test "$HavePapiLib" = "YES" -a "$HavePapiHeader" = "YES"; then HavePapi=YES else diff --git a/rts/Linker.c b/rts/Linker.c index 71d2a8e..162ada8 100644 --- a/rts/Linker.c +++ b/rts/Linker.c @@ -343,6 +343,12 @@ typedef struct _RtsSymbolVal { #define RTS_MINGW_GETTIMEOFDAY_SYM /**/ #endif +#if HAVE___MINGW_VFPRINTF +#define RTS___MINGW_VFPRINTF_SYM SymI_HasProto(__mingw_vfprintf) +#else +#define RTS___MINGW_VFPRINTF_SYM /**/ +#endif + /* These are statically linked from the mingw libraries into the ghc executable, so we have to employ this hack. */ #define RTS_MINGW_ONLY_SYMBOLS \ @@ -382,7 +388,7 @@ typedef struct _RtsSymbolVal { SymI_NeedsProto(isalpha) \ SymI_NeedsProto(isalnum) \ SymI_NeedsProto(isascii) \ - SymI_HasProto(__mingw_vfprintf) \ + RTS___MINGW_VFPRINTF_SYM \ SymI_HasProto(strcmp) \ SymI_HasProto(memmove) \ SymI_HasProto(realloc) \ -- 1.7.10.4