Check for vsnprintf while using namespace std if its not found when not.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Elliott 2005-01-20 17:03:58 +00:00
parent d1fd3c2675
commit c122b1645e
2 changed files with 75 additions and 1 deletions

54
configure vendored
View File

@ -29407,12 +29407,66 @@ else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#include <stdio.h>
#include <stdarg.h>
using namespace std;
int
main ()
{
char *buf;
va_list ap;
vsnprintf(buf, 10u, "%s", ap);
;
return 0;
}
_ACEOF
rm -f conftest.$ac_objext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
{ ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; } &&
{ ac_try='test -s conftest.$ac_objext'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
wx_cv_func_vsnprintf_decl=yes
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
wx_cv_func_vsnprintf_decl=no
fi
rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
fi
rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
fi
echo "$as_me:$LINENO: result: $wx_cv_func_vsnprintf_decl" >&5
echo "${ECHO_T}$wx_cv_func_vsnprintf_decl" >&6

View File

@ -3688,7 +3688,27 @@ if test "$ac_cv_func_vsnprintf" = "yes"; then
vsnprintf(buf, 10u, "%s", ap);
],
wx_cv_func_vsnprintf_decl=yes,
wx_cv_func_vsnprintf_decl=no
[
dnl Metrowerks does provide a vsnprintf declaration
dnl but in C++ mode it's always in std namespace.
dnl FIXME: Do we have any UNIX C++ compilers that would
dnl fail this test if using namespace std; was
dnl simply always included?
AC_TRY_COMPILE(
[
#include <stdio.h>
#include <stdarg.h>
using namespace std;
],
[
char *buf;
va_list ap;
vsnprintf(buf, 10u, "%s", ap);
],
wx_cv_func_vsnprintf_decl=yes,
wx_cv_func_vsnprintf_decl=no
)
]
)
]
)