#!/bin/sh
# original MakeTeXMF -- make a new MF file, because one wasn't found.
# 
# (If you change or delete the word `original' on the previous line,
# installation won't write this script over yours.)
# 
# te@informatik.uni-hannover.de and kb@mail.tug.org. Public domain.

version='$Id: MakeTeXMF,v 1.9 1997/02/08 15:52:15 karl Exp karl $'
usage="Usage: $0 FONT.
  Makes the Metafont source file for FONT, if possible.
  For example, \`ecr12' or \`cmr11'."

# The main system texmf tree:
: ${TEXMFMAIN=`kpsewhich -expand-var='$TEXMFMAIN'`}
if test -z "$TEXMFMAIN"; then
  echo "$0: No \$TEXMFMAIN; set the environment variable or in texmf.cnf." >&2
  exit 1
fi

. $TEXMFMAIN/web2c/MakeTeXcommon

(

# See comments in MakeTeXPK.
name="`echo $1 | sed 's%.*/%%; s%\.mf$%%'`"
rootname=`echo "$name" | sed 's/[0-9]*$//'`
pointsize=`echo "$name" | sed "s/^$rootname//"`

sauterroot=`kpsewhich b-$rootname.mf 2>/dev/null`
if test -n "$sauterroot"; then
  rootfile=$sauterroot
else
  case $rootname in
    wn*)
       lhname=`echo $name | sed 's/^wn/lh/'`
       rootfile=`kpsewhich $lhname.mf 2>/dev/null`;;
    *)
       rootfile=`kpsewhich $rootname.mf 2>/dev/null`;;
  esac
fi
{ test -z "$rootfile" || test ! -f "$rootfile"; } && exit 1

set x `$TEXMFMAIN/web2c/MakeTeXnames $name`; shift
destdir=`echo $3 | sed 's%/[^/][^/]*$%%'`
test -d "$destdir" || $TEXMFMAIN/web2c/MakeTeXmkdir "$destdir" || exit 1
cd "$destdir" >/dev/null 2>&1 || exit 1

case "$pointsize" in
  "") echo "$0: no pointsize."; exit 1;;
  11) realsize=10.95444;;      # \magstephalf
  14) realsize=14.4;;  # \magstep2
  17) realsize=17.28;; # \magstep3
  20) realsize=20.74;; # \magstep4
  25) realsize=24.88;; # \magstep5
        # The new convention is to have three or four letters for the
        # font name and four digits for the pointsize. The number is
        # pointsize * 100. We effectively divide by 100 by ignoring the
        # last two digits.
  ????|?????) realsize=`echo "$pointsize" | sed 's/\(..\)$/.\1/'`;;
  *) realsize="$pointsize";;
esac

mfname="$name.mf"
if test -r "$mfname"; then
  echo "$0: $destdir/$mfname already exists."
  echo $destdir/$mfname >$STDOUT
  $TEXMFMAIN/web2c/MakeTeXupdate "$destdir" "$mfname"
  exit 0
fi

case "$name" in
  ec*|tc*)
    cat > "$mfname.tmp$$" <<END
if unknown exbase: input exbase fi;
gensize:=$realsize;
generate $rootname;
END
    ;;
  dc*)
    cat > "$mfname.tmp$$" <<END
if unknown dxbase: input dxbase fi;
gensize:=$realsize;
generate $rootname;
END
    ;;
  wn*)
    cat > "$mfname.tmp$$" <<END
wncoding:=1;
input $lhname;
END
    ;;
  *)
    cat > "$mfname.tmp$$" <<END
design_size := $realsize;
input b-$rootname;
END
    ;;
esac

chmod "$MT_FILE_PERMS" "$mfname.tmp$$"
rm -f "$mfname"
mv "$mfname.tmp$$" "$mfname"

echo "$destdir/$mfname" >$STDOUT
echo "$0: $destdir/$mfname: successfully generated." >&2
$TEXMFMAIN/web2c/MakeTeXupdate "$destdir" "$mfname"
exit 0
) 1>&2 </dev/null
