- Issue #14324: Fix configure tests for cross builds.
when using gcc, use a compilation test for the cross build check for long long format.
This commit is contained in:
parent
93a0ef16c9
commit
3b739b149b
|
@ -111,6 +111,8 @@ Build
|
||||||
|
|
||||||
- Issue #14321: Do not run pgen during the build if files are up to date.
|
- Issue #14321: Do not run pgen during the build if files are up to date.
|
||||||
|
|
||||||
|
- Issue #14324: Fix configure tests for cross builds.
|
||||||
|
|
||||||
Extension Modules
|
Extension Modules
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
|
|
|
@ -13805,7 +13805,36 @@ $as_echo_n "checking for %lld and %llu printf() format support... " >&6; }
|
||||||
$as_echo_n "(cached) " >&6
|
$as_echo_n "(cached) " >&6
|
||||||
else
|
else
|
||||||
if test "$cross_compiling" = yes; then :
|
if test "$cross_compiling" = yes; then :
|
||||||
ac_cv_have_long_long_format=no
|
ac_cv_have_long_long_format="cross -- assuming no"
|
||||||
|
if test x$GCC = xyes; then
|
||||||
|
save_CFLAGS=$CFLAGS
|
||||||
|
CFLAGS="$CFLAGS -Werror -Wformat"
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
|
||||||
|
char *buffer;
|
||||||
|
sprintf(buffer, "%lld", (long long)123);
|
||||||
|
sprintf(buffer, "%lld", (long long)-123);
|
||||||
|
sprintf(buffer, "%llu", (unsigned long long)123);
|
||||||
|
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
ac_cv_have_long_long_format=yes
|
||||||
|
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
CFLAGS=$save_CFLAGS
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
/* end confdefs.h. */
|
/* end confdefs.h. */
|
||||||
|
|
18
configure.ac
18
configure.ac
|
@ -4128,7 +4128,23 @@ then
|
||||||
]]])],
|
]]])],
|
||||||
[ac_cv_have_long_long_format=yes],
|
[ac_cv_have_long_long_format=yes],
|
||||||
[ac_cv_have_long_long_format=no],
|
[ac_cv_have_long_long_format=no],
|
||||||
[ac_cv_have_long_long_format=no])
|
[ac_cv_have_long_long_format="cross -- assuming no"
|
||||||
|
if test x$GCC = xyes; then
|
||||||
|
save_CFLAGS=$CFLAGS
|
||||||
|
CFLAGS="$CFLAGS -Werror -Wformat"
|
||||||
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
]], [[
|
||||||
|
char *buffer;
|
||||||
|
sprintf(buffer, "%lld", (long long)123);
|
||||||
|
sprintf(buffer, "%lld", (long long)-123);
|
||||||
|
sprintf(buffer, "%llu", (unsigned long long)123);
|
||||||
|
]])],
|
||||||
|
ac_cv_have_long_long_format=yes
|
||||||
|
)
|
||||||
|
CFLAGS=$save_CFLAGS
|
||||||
|
fi])
|
||||||
)
|
)
|
||||||
AC_MSG_RESULT($ac_cv_have_long_long_format)
|
AC_MSG_RESULT($ac_cv_have_long_long_format)
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in New Issue