From mark@karm.dyndns.org  Wed Jan 28 14:04:29 2004
Return-Path: <mark@karm.dyndns.org>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 3EB2B16A4CE
	for <FreeBSD-gnats-submit@freebsd.org>; Wed, 28 Jan 2004 14:04:29 -0800 (PST)
Received: from karm.dyndns.org (213-182-119-49.teleos-web.de [213.182.119.49])
	by mx1.FreeBSD.org (Postfix) with SMTP id 712D943D55
	for <FreeBSD-gnats-submit@freebsd.org>; Wed, 28 Jan 2004 14:04:26 -0800 (PST)
	(envelope-from mark@karm.dyndns.org)
Received: (qmail 85389 invoked by uid 1001); 28 Jan 2004 22:04:25 -0000
Message-Id: <20040128220425.85388.qmail@karm.dyndns.org>
Date: 28 Jan 2004 22:04:25 -0000
From: Mark Daniel Reidel <ports@mark.reidel.info>
Reply-To: Mark Daniel Reidel <ports@mark.reidel.info>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: Fix for non-C LC_COLLATE
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         62047
>Category:       bin
>Synopsis:       Fix for non-C LC_COLLATE
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jan 28 14:10:19 PST 2004
>Closed-Date:    Sat Jan 31 13:50:46 PST 2004
>Last-Modified:  Sat Jan 31 13:50:46 PST 2004
>Originator:     Mark Daniel Reidel
>Release:        FreeBSD 5.2-CURRENT i386
>Organization:
>Environment:
System: FreeBSD alu.reidel.info 5.2-CURRENT FreeBSD 5.2-CURRENT #8: Sat Dec 13 10:12:54 CET 2003 root@alu.reidel.info:/usr/obj/usr/src/sys/MARK i386
LANG=en_US.ISO8859-15
LC_CTYPE=de_DE.ISO8859-15
LC_COLLATE=de_DE.ISO8859-15
LC_TIME=de_DE.ISO8859-15
LC_NUMERIC=de_DE.ISO8859-15
LC_MONETARY=de_DE.ISO8859-15
LC_MESSAGES="en_US.ISO8859-15"
LC_ALL=en_US.ISO8859-15
>Description:
It's impossible to make a buildworld when using LC_COLLATE other than C, because of tr '[a-z]' '[A-Z]' not leading to capitalization of a string. The attached patch fixes this by using the POSIXly correct '[:lower:]' '[:upper:]' instead which will work on just any locale-setting.
>How-To-Repeat:
cd /usr/src; /usr/bin/env LC_COLLATE=de_DE.ISO8859-15 make buildworld
>Fix:
--- tr.patch begins here ---
--- /usr/src/lib/libedit/makelist	Wed Jan 28 18:08:20 2004
+++ /usr/src/lib/libedit/makelist	Wed Jan 28 18:08:45 2004
@@ -146,7 +146,7 @@
 #
 -fh)
     cat $FILES | $AWK '/el_action_t/ { print $3 }' | \
-    sort | LC_ALL=C tr 'a-z' 'A-Z' | $AWK '
+    sort | LC_ALL=C tr [:lower:] [:upper:] | $AWK '
 	BEGIN {
 	    printf("/* Automatically generated file, do not edit */\n");
 	    printf("#ifndef _h_fcns_c\n#define _h_fcns_c\n");
--- /usr/src/sbin/route/Makefile	Wed Jan 28 21:51:35 2004
+++ /usr/src/sbin/route/Makefile	Wed Jan 28 21:51:59 2004
@@ -11,7 +11,7 @@
 
 keywords.h: keywords
 	sed -e '/^#/d' -e '/^$$/d' ${.CURDIR}/keywords > _keywords.tmp
-	LC_ALL=C tr 'a-z' 'A-Z' < _keywords.tmp | paste _keywords.tmp - | \
+	LC_ALL=C tr '[:lower:]' '[:upper:]' < _keywords.tmp | paste _keywords.tmp - | \
 	    awk '{ \
 		if (NF > 1) \
 			printf "#define\tK_%s\t%d\n\t{\"%s\", K_%s},\n", \
--- tr.patch ends here ---


>Release-Note:
>Audit-Trail:

From: Andrey Chernov <ache@nagual.pp.ru>
To: Mark Daniel Reidel <ports@mark.reidel.info>
Cc: FreeBSD-gnats-submit@FreeBSD.ORG
Subject: Re: bin/62047: Fix for non-C LC_COLLATE
Date: Thu, 29 Jan 2004 05:32:52 +0300

 It should work in 5.*, no patches required. Your patch does nothing.
 Do you miss LC_ALL=C before tr?
 
State-Changed-From-To: open->patched 
State-Changed-By: ache 
State-Changed-When: Sat Jan 31 11:16:38 PST 2004 
State-Changed-Why:  
Fixed in rev.1.50 setlocale.c 

http://www.freebsd.org/cgi/query-pr.cgi?pr=62047 
State-Changed-From-To: patched->closed 
State-Changed-By: ache 
State-Changed-When: Sat Jan 31 13:50:26 PST 2004 
State-Changed-Why:  
MFCed 

http://www.freebsd.org/cgi/query-pr.cgi?pr=62047 
>Unformatted:
