setlocale and gettext in Postgres
Hiroshi Inoue <inoue@tpf.co.jp>
From: Hiroshi Inoue <inoue@tpf.co.jp>
To: PG Hackers <pgsql-hackers@postgresql.org>
Date: 2011-01-27T13:03:13Z
Lists: pgsql-hackers
Attachments
- port.h.diff (text/plain) patch
Hi all, I see now the following lines in libintl.h of version 0.18.1.1 which didn't exist in 0.17 version. /* Support for the locale chosen by the user. */ #if (defined __APPLE__ && defined __MACH__) || defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ #undef setlocale #define setlocale libintl_setlocale extern char *setlocale (int, const char *); . . The macro may cause a trouble especially on Windows. Though libintl_setlocale() calls setlocale() internally, what the Mingw version of libintl library calls is the one in msvcrt.dll not in the libraries which main programs link. Unfortunately locale-aware functions like printf() calls in main programs would see "C" locales not the locales set by libintl_setlocale(). Attached is a patch to disable the macro on Windows. regards, Hiroshi Inoue