dtprintinfo: Coverity 88650
[oweals/cde.git] / cde / programs / localized / util / makeMessCat
1 #! /bin/ksh
2
3
4 typeset USE_LANG_DIR="."
5 typeset VERSION=""
6 typeset REMOVE=${REMOVE:-removeVmsg}
7
8
9 while [ $# -gt 0 ]; do
10         case "$1" in
11             -v) # version string comes on command line
12                 shift;
13                 [ -n "$1" ] && VERSION="@(#)$1"
14                 ;;
15             -d)  # use old vue2.0 method accessing vueversion.h
16                 USE_LANG_DIR="../$2"
17                 [ -r ../../../../X11/vueversion.h ] && {
18                         VERSION=`grep static ../../../../X11/vueversion.h | \
19                         sed s/static.*\=\ \"// | \
20                         sed s/\".*// ` ;
21                 }
22                 ;;
23              -r) # prevent removal of temp ".vmsg" files
24                 REMOVE=""
25                 ;;
26              -m) #
27                 GENCAT_OPTIONS=-m 
28                 ;;
29              *) # done with options
30                 break;
31                 ;;
32         esac
33         shift
34 done
35
36 #
37 # Added while logic below to parse multiple .msg files form the arguments, 
38 # this logic assumes the first .msg file passed in will be the name of the 
39 # .cat file, thus remaining compatible with the old makeMesgcat.
40 #
41
42 base_file=${1%.*}
43
44 while [ $# -gt 1 ]; do
45  
46         base=${1%.*} # strip any extension
47         [ -n "$VERSION" ] && VERSION="\\\n$VERSION"
48         sed "s/@(#)version_goes_here/$VERSION/"  <$USE_LANG_DIR/$base.msg >$USE_LANG_DIR/$base.vmsg
49         set -A msg_files "$msg_files $USE_LANG_DIR/$base.vmsg"
50         shift
51
52
53 done
54
55
56 echo "Running gencat on $msg_files with LANG set to $1 "
57 rm -f $USE_LANG_DIR/$base.cat
58 LANG=$1 gencat $GENCAT_OPTIONS $USE_LANG_DIR/$base_file.cat $msg_files
59
60 LANG=C
61
62 chmod -w $USE_LANG_DIR/$base_file.cat
63
64
65 if [  "$REMOVE" = removeVmsg ]
66 then
67    echo " Removing $msg_files "
68    rm -f $msg_files
69 else 
70    echo " Not removing $msg_files "
71 fi