From: Peter Eisentraut Date: Thu, 12 Feb 2009 13:26:03 +0000 (+0000) Subject: Unset language-related locale settings in any case, otherwise psql will X-Git-Url: http://git.postgresql.org/gitweb/-?a=commitdiff_plain;h=85cb8082d6d92d97240cc661616247daf0de30b6;p=users%2Fsimon%2Fpostgres.git Unset language-related locale settings in any case, otherwise psql will speak in tongues and mess up the regression test diffs. --- diff --git a/doc/src/sgml/regress.sgml b/doc/src/sgml/regress.sgml index 3ca4cfa8e2..833a08c44e 100644 --- a/doc/src/sgml/regress.sgml +++ b/doc/src/sgml/regress.sgml @@ -218,11 +218,15 @@ gmake installcheck locale-related environment variables on the make command line, for example: -gmake check LC_ALL=de_DE.utf8 +gmake check LANG=de_DE.utf8 - or analogously to use no locale: + (The regression test driver unsets LC_ALL, so it + does not work to choose the locale using that variable.) To use + no locale, either unset all locale-related environment variables + (or set them to C) or use the following + special invocation: -gmake check LC_ALL=C +gmake check NO_LOCALE=1 When running the tests against an existing installation, the locale setup is determined by the existing installation. To diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c index 944596509b..1cd804aa74 100644 --- a/src/test/regress/pg_regress.c +++ b/src/test/regress/pg_regress.c @@ -694,18 +694,25 @@ initialize_environment(void) unsetenv("LC_COLLATE"); unsetenv("LC_CTYPE"); unsetenv("LC_MONETARY"); - unsetenv("LC_MESSAGES"); unsetenv("LC_NUMERIC"); unsetenv("LC_TIME"); - unsetenv("LC_ALL"); unsetenv("LANG"); - unsetenv("LANGUAGE"); /* On Windows the default locale cannot be English, so force it */ #if defined(WIN32) || defined(__CYGWIN__) putenv("LANG=en"); #endif } + /* + * Set translation-related settings to English; otherwise psql + * will produce translated messages and produce diffs. (XXX If we + * ever support translation of pg_regress, this needs to be moved + * elsewhere, where psql is actually called.) + */ + unsetenv("LANGUAGE"); + unsetenv("LC_ALL"); + putenv("LC_MESSAGES=C"); + /* * Set multibyte as requested */