Files
poky/meta/recipes-devtools/perl/perl-5.12.3/debian/squelch-locale-warnings.diff
Nitin A Kamble 829b985eb5 perl: upgrade from 5.12.2 to 5.12.3
And changed the perl tarball URL to more stable cpan location.

(From OE-Core rev: 3a08c401f298095840a2aee9079845f5ff434410)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-28 10:44:22 +01:00

56 lines
1.9 KiB
Diff

Upstream-Status:Inappropriate [debian patch]
From: Niko Tyni <ntyni@debian.org>
Subject: Squelch locale warnings in Debian package maintainer scripts
Bug-Debian: http://bugs.debian.org/508764
The system locales are rather frequently out of sync with the C library
during package upgrades, causing a huge amount of useless Perl locale
warnings. Squelch them when running package maintainer scripts, detected
by the DPKG_RUNNING_VERSION environment variable.
Any real locale problem will show up after the system upgrade too, and
the warning will be triggered normally again at that point.
---
locale.c | 4 ++++
pod/perllocale.pod | 8 ++++++++
2 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/locale.c b/locale.c
index 16ccce8..2592b3c 100644
--- a/locale.c
+++ b/locale.c
@@ -359,6 +359,10 @@ Perl_init_i18nl10n(pTHX_ int printwarn)
char *p;
const bool locwarn = (printwarn > 1 ||
(printwarn &&
+
+ /* Debian specific change - see http://bugs.debian.org/508764 */
+ (!PerlEnv_getenv("DPKG_RUNNING_VERSION")) &&
+
(!(p = PerlEnv_getenv("PERL_BADLANG")) || atoi(p))));
if (locwarn) {
diff --git a/pod/perllocale.pod b/pod/perllocale.pod
index 0dbabe7..60b7bab 100644
--- a/pod/perllocale.pod
+++ b/pod/perllocale.pod
@@ -844,6 +844,14 @@ B<NOTE>: PERL_BADLANG only gives you a way to hide the warning message.
The message tells about some problem in your system's locale support,
and you should investigate what the problem is.
+=item DPKG_RUNNING_VERSION
+
+On Debian systems, if the DPKG_RUNNING_VERSION environment variable is
+set (to any value), the locale failure warnings will be suppressed just
+like with a zero PERL_BADLANG setting. This is done to avoid floods
+of spurious warnings during system upgrades.
+See L<http://bugs.debian.org/508764>.
+
=back
The following environment variables are not specific to Perl: They are
--
tg: (a508b62..) debian/squelch-locale-warnings (depends on: upstream)