X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2Flocale.t;h=5d17797fca59184a3a77cc9d77be3afd308c9351;hb=06c0cc96ebd866767a6d107ed78967600f7e0395;hp=2143b9f87414330206707185d8bb350684b83a2c;hpb=5fef21a34e2a36dc7c83d55110ccc5c57cc7d14d;p=p5sagit%2Fp5-mst-13.2.git diff --git a/lib/locale.t b/lib/locale.t index 2143b9f..5d17797 100644 --- a/lib/locale.t +++ b/lib/locale.t @@ -45,6 +45,9 @@ eval { # and mingw32 uses said silly CRT $have_setlocale = 0 if (($^O eq 'MSWin32' || $^O eq 'NetWare') && $Config{cc} =~ /^(cl|gcc)/i); +# UWIN seems to loop after test 98, just skip for now +$have_setlocale = 0 if ($^O =~ /^uwin/); + my $last = $have_setlocale ? &last : &last_without_setlocale; print "1..$last\n"; @@ -379,6 +382,10 @@ delete @ENV{qw(IFS CDPATH ENV BASH_ENV)}; if (-x "/usr/bin/locale" && open(LOCALES, "/usr/bin/locale -a 2>/dev/null|")) { while () { + # It seems that /usr/bin/locale steadfastly outputs 8 bit data, which + # ain't great when we're running this testPERL_UNICODE= so that utf8 + # locales will cause all IO hadles to default to (assume) utf8 + next unless utf8::valid($_); chomp; trylocale($_); } @@ -430,6 +437,15 @@ if (-x "/usr/bin/locale" && open(LOCALES, "/usr/bin/locale -a 2>/dev/null|")) { setlocale(LC_ALL, "C"); +if ($^O eq 'darwin') { + # Darwin 8/Mac OS X 10.4 has bad Catalan locales: perl bug #35895, + # Apple bug ID# 4139653. It also has a problem in Byelorussian. + if ($Config{osvers} ge '8' and $Config{osvers} le '8.3.0') { + debug "# Skipping eu_ES, be_BY locales -- buggy in Darwin\n"; + @Locale = grep ! m/^(eu_ES|be_BY.CP1131$)/, @Locale; + } +} + @Locale = sort @Locale; debug "# Locales =\n";