|
|
|
@ -1,5 +1,5 @@ |
|
|
|
|
dnl Process this file with autoconf to produce a configure script. |
|
|
|
|
dnl $PostgreSQL: pgsql/configure.in,v 1.435 2005/12/06 04:53:02 momjian Exp $ |
|
|
|
|
dnl $PostgreSQL: pgsql/configure.in,v 1.436 2005/12/06 18:35:09 momjian Exp $ |
|
|
|
|
dnl |
|
|
|
|
dnl Developers, please strive to achieve this order: |
|
|
|
|
dnl |
|
|
|
@ -858,11 +858,31 @@ fi |
|
|
|
|
# have all the features we need --- see below. |
|
|
|
|
|
|
|
|
|
if test "$PORTNAME" = "win32"; then |
|
|
|
|
# Win32 gets this built unconditionally |
|
|
|
|
# libintl versions prior to 0.13 use the native *printf functions. |
|
|
|
|
# Win32 *printf does not understand %$, so on Win32 using pre-0.13 libintl |
|
|
|
|
# it is necessary to use the pg versions of *printf to properly process |
|
|
|
|
# NLS strings that use the %$ format. |
|
|
|
|
# Win32 gets snprintf.c built unconditionally. |
|
|
|
|
# |
|
|
|
|
# To properly translate all NLS languages strings, we must support the |
|
|
|
|
# *printf() %$ format, which allows *printf() arguments to be selected |
|
|
|
|
# by position in the translated string. |
|
|
|
|
# |
|
|
|
|
# libintl versions < 0.13 use the native *printf() functions, and Win32 |
|
|
|
|
# *printf() doesn't understand %$, so we must use our /port versions, |
|
|
|
|
# which do understand %$. libintl versions >= 0.13 include their own |
|
|
|
|
# *printf versions on Win32. The libintl 0.13 release note text is: |
|
|
|
|
# |
|
|
|
|
# C format strings with positions, as they arise when a translator |
|
|
|
|
# needs to reorder a sentence, are now supported on all platforms. |
|
|
|
|
# On those few platforms (NetBSD and Woe32) for which the native |
|
|
|
|
# printf()/fprintf()/... functions don't support such format |
|
|
|
|
# strings, replacements are provided through <libintl.h>. |
|
|
|
|
# |
|
|
|
|
# We could use libintl >= 0.13's *printf() if we were sure that we had |
|
|
|
|
# a litint >= 0.13 at runtime, but seeing that there is no clean way |
|
|
|
|
# to guarantee that, it is best to just use our own, so we are sure to |
|
|
|
|
# get %$ support. In include/port.h we disable the *printf() macros |
|
|
|
|
# that might have been defined by libintl. |
|
|
|
|
# |
|
|
|
|
# We do this unconditionally whether NLS is used or not so we are sure |
|
|
|
|
# that all Win32 libraries and binaries behave the same. |
|
|
|
|
pgac_need_repl_snprintf=yes |
|
|
|
|
else |
|
|
|
|
pgac_need_repl_snprintf=no |
|
|
|
@ -1059,9 +1079,12 @@ AC_MSG_ERROR([[ |
|
|
|
|
*** for the exact reason.]])], |
|
|
|
|
[AC_MSG_RESULT([cross-compiling])]) |
|
|
|
|
|
|
|
|
|
# -------------------- |
|
|
|
|
# Run tests below here |
|
|
|
|
# -------------------- |
|
|
|
|
|
|
|
|
|
# Force use of our snprintf if system's doesn't do arg control |
|
|
|
|
# This feature is needed by NLS |
|
|
|
|
# See comment above at snprintf test for details. |
|
|
|
|
if test "$enable_nls" = yes -a "$pgac_need_repl_snprintf" = no; then |
|
|
|
|
PGAC_FUNC_PRINTF_ARG_CONTROL |
|
|
|
|
if test $pgac_cv_printf_arg_control != yes ; then |
|
|
|
|