Move PGAC_FUNC_PRINTF_ARG_CONTROL to just above snprintf 64-bit tests so
its output can be used to select the proper printf outputs.
This commit is contained in:
parent
949ab3c9b3
commit
f1430ce063
124
configure
vendored
124
configure
vendored
@ -14809,6 +14809,68 @@ fi
|
||||
# snprintfs that use %lld, %qd, or %I64d as the format. If none of these
|
||||
# work, fall back to our own snprintf emulation (which we know uses %lld).
|
||||
|
||||
# Also force use of our snprintf if system's doesn't do arg control
|
||||
if test $pgac_need_repl_snprintf = no; then
|
||||
echo "$as_me:$LINENO: checking whether printf supports argument control" >&5
|
||||
echo $ECHO_N "checking whether printf supports argument control... $ECHO_C" >&6
|
||||
if test "${pgac_cv_printf_arg_control+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
if test "$cross_compiling" = yes; then
|
||||
pgac_cv_printf_arg_control=cross
|
||||
else
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
#line $LINENO "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
char buf[100];
|
||||
|
||||
/* can it swap arguments? */
|
||||
snprintf(buf, 100, "%2\$d %1\$d", 3, 4);
|
||||
if (strcmp(buf, "4 3") != 0)
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
rm -f conftest$ac_exeext
|
||||
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
|
||||
(eval $ac_link) 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
|
||||
{ (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
|
||||
pgac_cv_printf_arg_control=yes
|
||||
else
|
||||
echo "$as_me: program exited with status $ac_status" >&5
|
||||
echo "$as_me: failed program was:" >&5
|
||||
cat conftest.$ac_ext >&5
|
||||
( exit $ac_status )
|
||||
pgac_cv_printf_arg_control=no
|
||||
fi
|
||||
rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
|
||||
fi
|
||||
|
||||
fi
|
||||
echo "$as_me:$LINENO: result: $pgac_cv_printf_arg_control" >&5
|
||||
echo "${ECHO_T}$pgac_cv_printf_arg_control" >&6
|
||||
|
||||
if test $pgac_cv_printf_arg_control != yes ; then
|
||||
pgac_need_repl_snprintf=yes
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $pgac_need_repl_snprintf = yes; then
|
||||
LIBOBJS="$LIBOBJS snprintf.$ac_objext"
|
||||
fi
|
||||
|
||||
if test "$HAVE_LONG_LONG_INT_64" = yes ; then
|
||||
if test $pgac_need_repl_snprintf = no; then
|
||||
echo "$as_me:$LINENO: checking snprintf format for long long int" >&5
|
||||
@ -14911,68 +14973,6 @@ cat >>confdefs.h <<_ACEOF
|
||||
_ACEOF
|
||||
|
||||
|
||||
# Also force use of our snprintf if system's doesn't do arg control
|
||||
if test $pgac_need_repl_snprintf = no; then
|
||||
echo "$as_me:$LINENO: checking whether printf supports argument control" >&5
|
||||
echo $ECHO_N "checking whether printf supports argument control... $ECHO_C" >&6
|
||||
if test "${pgac_cv_printf_arg_control+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
if test "$cross_compiling" = yes; then
|
||||
pgac_cv_printf_arg_control=cross
|
||||
else
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
#line $LINENO "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
char buf[100];
|
||||
|
||||
/* can it swap arguments? */
|
||||
snprintf(buf, 100, "%2\$d %1\$d", 3, 4);
|
||||
if (strcmp(buf, "4 3") != 0)
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
rm -f conftest$ac_exeext
|
||||
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
|
||||
(eval $ac_link) 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
|
||||
{ (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
|
||||
pgac_cv_printf_arg_control=yes
|
||||
else
|
||||
echo "$as_me: program exited with status $ac_status" >&5
|
||||
echo "$as_me: failed program was:" >&5
|
||||
cat conftest.$ac_ext >&5
|
||||
( exit $ac_status )
|
||||
pgac_cv_printf_arg_control=no
|
||||
fi
|
||||
rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
|
||||
fi
|
||||
|
||||
fi
|
||||
echo "$as_me:$LINENO: result: $pgac_cv_printf_arg_control" >&5
|
||||
echo "${ECHO_T}$pgac_cv_printf_arg_control" >&6
|
||||
|
||||
if test $pgac_cv_printf_arg_control != yes ; then
|
||||
pgac_need_repl_snprintf=yes
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $pgac_need_repl_snprintf = yes; then
|
||||
LIBOBJS="$LIBOBJS snprintf.$ac_objext"
|
||||
fi
|
||||
|
||||
# Need a #define for the size of Datum (unsigned long)
|
||||
echo "$as_me:$LINENO: checking for unsigned long" >&5
|
||||
echo $ECHO_N "checking for unsigned long... $ECHO_C" >&6
|
||||
|
26
configure.in
26
configure.in
@ -1,5 +1,5 @@
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
dnl $PostgreSQL: pgsql/configure.in,v 1.401 2005/02/24 02:12:15 tgl Exp $
|
||||
dnl $PostgreSQL: pgsql/configure.in,v 1.402 2005/02/28 20:36:05 momjian Exp $
|
||||
dnl
|
||||
dnl Developers, please strive to achieve this order:
|
||||
dnl
|
||||
@ -1104,6 +1104,18 @@ fi
|
||||
# snprintfs that use %lld, %qd, or %I64d as the format. If none of these
|
||||
# work, fall back to our own snprintf emulation (which we know uses %lld).
|
||||
|
||||
# Also force use of our snprintf if system's doesn't do arg control
|
||||
if test $pgac_need_repl_snprintf = no; then
|
||||
PGAC_FUNC_PRINTF_ARG_CONTROL
|
||||
if test $pgac_cv_printf_arg_control != yes ; then
|
||||
pgac_need_repl_snprintf=yes
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $pgac_need_repl_snprintf = yes; then
|
||||
AC_LIBOBJ(snprintf)
|
||||
fi
|
||||
|
||||
if test "$HAVE_LONG_LONG_INT_64" = yes ; then
|
||||
if test $pgac_need_repl_snprintf = no; then
|
||||
PGAC_FUNC_SNPRINTF_LONG_LONG_INT_FORMAT
|
||||
@ -1131,18 +1143,6 @@ AC_DEFINE_UNQUOTED(INT64_FORMAT, $INT64_FORMAT,
|
||||
AC_DEFINE_UNQUOTED(UINT64_FORMAT, $UINT64_FORMAT,
|
||||
[Define to the appropriate snprintf format for unsigned 64-bit ints, if any.])
|
||||
|
||||
# Also force use of our snprintf if system's doesn't do arg control
|
||||
if test $pgac_need_repl_snprintf = no; then
|
||||
PGAC_FUNC_PRINTF_ARG_CONTROL
|
||||
if test $pgac_cv_printf_arg_control != yes ; then
|
||||
pgac_need_repl_snprintf=yes
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $pgac_need_repl_snprintf = yes; then
|
||||
AC_LIBOBJ(snprintf)
|
||||
fi
|
||||
|
||||
# Need a #define for the size of Datum (unsigned long)
|
||||
AC_CHECK_SIZEOF([unsigned long])
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user