netbsd's setlocale () doesn't support LC_COLLATE and LC_NUMERIC
Abe Timmerman [Sun, 23 Sep 2007 01:11:50 +0000 (03:11 +0200)]
Subject: Re: Smoke [5.10.0] 31938 FAIL(F) netbsd 3.1 (i386/1 cpu)
Message-ID: <46F5A136.8080000@ztreet.demon.nl>

p4raw-id: //depot/perl@31942

hints/netbsd.sh
t/uni/overload.t

index e82a3d1..11fa30c 100644 (file)
@@ -103,6 +103,15 @@ case "$osvers" in
        ;;
 esac
 
+# @20070922: setlocale() doesn't support LC_COLLATE and LC_NUMERIC
+case "$osvers" in
+2.*|3.*|4.*)
+       # next two lines should start at column 0
+locale_cflags='ccflags="$ccflags -DNO_LOCALE_COLLATE -DNO_LOCALE_NUMERIC"'
+sv_cflags='ccflags="$ccflags -DNO_LOCALE_COLLATE"'
+       ;;
+esac
+
 # These are obsolete in any netbsd.
 d_setrgid="$undef"
 d_setruid="$undef"
index e4f4e13..a94d453 100644 (file)
@@ -101,7 +101,7 @@ SKIP: {
        skip "No setlocale", 24;
     } elsif (!setlocale(&POSIX::LC_ALL, "en_GB.ISO8859-1")) {
        skip "Could not setlocale to en_GB.ISO8859-1", 24;
-    } elsif ($^O eq 'dec_osf' || $^O eq 'VMS') {
+    } elsif ($^O eq 'dec_osf' || $^O eq 'VMS' || $^O eq 'netbsd') {
        skip "$^O has broken en_GB.ISO8859-1 locale", 24;
     } else {
        use locale;