72 lines
1.5 KiB
Bash
Executable File
72 lines
1.5 KiB
Bash
Executable File
#! /bin/ksh
|
|
|
|
|
|
typeset USE_LANG_DIR="."
|
|
typeset VERSION=""
|
|
typeset REMOVE=${REMOVE:-removeVmsg}
|
|
|
|
|
|
while [ $# -gt 0 ]; do
|
|
case "$1" in
|
|
-v) # version string comes on command line
|
|
shift;
|
|
[ -n "$1" ] && VERSION="@(#)$1"
|
|
;;
|
|
-d) # use old vue2.0 method accessing vueversion.h
|
|
USE_LANG_DIR="../$2"
|
|
[ -r ../../../../X11/vueversion.h ] && {
|
|
VERSION=`grep static ../../../../X11/vueversion.h | \
|
|
sed s/static.*\=\ \"// | \
|
|
sed s/\".*// ` ;
|
|
}
|
|
;;
|
|
-r) # prevent removal of temp ".vmsg" files
|
|
REMOVE=""
|
|
;;
|
|
-m) #
|
|
GENCAT_OPTIONS=-m
|
|
;;
|
|
*) # done with options
|
|
break;
|
|
;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
#
|
|
# Added while logic below to parse multiple .msg files form the arguments,
|
|
# this logic assumes the first .msg file passed in will be the name of the
|
|
# .cat file, thus remaining compatible with the old makeMesgcat.
|
|
#
|
|
|
|
base_file=${1%.*}
|
|
|
|
while [ $# -gt 1 ]; do
|
|
|
|
base=${1%.*} # strip any extension
|
|
[ -n "$VERSION" ] && VERSION="\\\n$VERSION"
|
|
sed "s/@(#)version_goes_here/$VERSION/" <$USE_LANG_DIR/$base.msg >$USE_LANG_DIR/$base.vmsg
|
|
set -A msg_files "$msg_files $USE_LANG_DIR/$base.vmsg"
|
|
shift
|
|
|
|
|
|
done
|
|
|
|
|
|
echo "Running gencat on $msg_files with LANG set to $1 "
|
|
rm -f $USE_LANG_DIR/$base.cat
|
|
LANG=$1 gencat $GENCAT_OPTIONS $USE_LANG_DIR/$base_file.cat $msg_files
|
|
|
|
LANG=C
|
|
|
|
chmod -w $USE_LANG_DIR/$base_file.cat
|
|
|
|
|
|
if [ "$REMOVE" = removeVmsg ]
|
|
then
|
|
echo " Removing $msg_files "
|
|
rm -f $msg_files
|
|
else
|
|
echo " Not removing $msg_files "
|
|
fi
|