Subject: install/23265: sysinst build fails on solaris
To: None <gnats-bugs@gnats.netbsd.org>
From: None <dmcmahill@netbsd.org>
List: netbsd-bugs
Date: 10/25/2003 06:10:43
>Number:         23265
>Category:       install
>Synopsis:       sysinst build fails on solaris
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    install-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Oct 25 10:09:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Dan McMahill
>Release:        NetBSD 20031020
>Organization:
NetBSD
>Environment:
solaris-2.6 with gcc-2.95.1 with /bin/sh replaced with /bin/ksh
	
System: NetBSD cowboy-burt 1.4.3A NetBSD 1.4.3A (COWBOY-BURT) #1: Fri Jul 20 06:58:40 EDT 2001 dan@cowboy-burt:/mnt/syssrc-1-4/sys/arch/sparc/compile/COWBOY-BURT sparc


>Description:
when using build.sh to build a netbsd/i386 release, sysinst build fails when processing
the french messages.  the failure is due to ksh wanting to have ( and ) escaped
in ${foo#((msg)(long)} exapansion.  The result is the ((msg)(long) is not removed
and all the messages are eaten producing lots of errors like:

ERROR: unknown message "What_do_you_want_to_do"
ERROR: unknown message "Try_again"
ERROR: unknown message "Give_up"

	
>How-To-Repeat:
env HOST_CC=gcc ./build.sh -m i386 -T /export/home1/software/build/tools \
-D /export/home1/software/build/destdir.i386 \
-R /export/home1/software/build/release/i386 release

	
>Fix:

This seems to work on solaris-2.6 but I haven't verified that it does
not break building on NetBSD.

Index: distrib/utils/sysinst/msg_xlat.sh
===================================================================
RCS file: /cvsroot/src/distrib/utils/sysinst/msg_xlat.sh,v
retrieving revision 1.3
diff -u -2 -r1.3 msg_xlat.sh
--- distrib/utils/sysinst/msg_xlat.sh   2003/07/07 21:26:33     1.3
+++ distrib/utils/sysinst/msg_xlat.sh   2003/10/25 10:00:25
@@ -53,7 +53,7 @@
        name="${MSG_name#MSG_}"
        [ "$name" = "${MSG_name}" ] && continue
-       msg_number="${number#((msg)(long)}"
+       msg_number="${number#\(\(msg\)\(long\)}"
        [ "$msg_number" = "$number" ] && continue
-       msg_number="${msg_number%)}"
+       msg_number="${msg_number%\)}"
 
        eval $MSG_name=$msg_number

	
>Release-Note:
>Audit-Trail:
>Unformatted: