diff options
author | Steve Peters <steve@fisharerojo.org> | 2006-11-21 03:59:34 +0000 |
---|---|---|
committer | Steve Peters <steve@fisharerojo.org> | 2006-11-21 03:59:34 +0000 |
commit | 87e33296bf0538cd7a52dd3a42dce8c2210d7406 (patch) | |
tree | 76c4512b65e793093fe36a6d9c1ac5a891df5b57 /lib/locale.t | |
parent | 6f0782f417a0ad4f77f4fda488ec267d49cdebe2 (diff) | |
download | perl-87e33296bf0538cd7a52dd3a42dce8c2210d7406.tar.gz |
"This is going to be slow." This change switches OpenBSD locale
tests from the spaghetti doneness test to specifically testing
locales in its /usr/share/locale. Speeds up lib/locale.t to
13 minutes a run vs. the previous time of over two hours.
p4raw-id: //depot/perl@29332
Diffstat (limited to 'lib/locale.t')
-rw-r--r-- | lib/locale.t | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/locale.t b/lib/locale.t index 666b9a93d1..c3a9d945b9 100644 --- a/lib/locale.t +++ b/lib/locale.t @@ -399,6 +399,17 @@ if (-x "/usr/bin/locale" && open(LOCALES, "/usr/bin/locale -a 2>/dev/null|")) { trylocale($_); } close(LOCALES); +} elsif ($^O eq 'openbsd' && -e '/usr/share/locale') { + + # OpenBSD doesn't have a locale executable, so reading /usr/share/locale + # is much easier and faster than the last resort method. + + opendir(LOCALES, '/usr/share/locale'); + while ($_ = readdir(LOCALES)) { + chomp; + trylocale($_); + } + close(LOCALES); } else { # This is going to be slow. |