summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/pdftex/thanh/ext/mktextfm
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/pdftex/thanh/ext/mktextfm')
-rw-r--r--Master/texmf-dist/doc/pdftex/thanh/ext/mktextfm151
1 files changed, 151 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/pdftex/thanh/ext/mktextfm b/Master/texmf-dist/doc/pdftex/thanh/ext/mktextfm
new file mode 100644
index 00000000000..1c2857b8d07
--- /dev/null
+++ b/Master/texmf-dist/doc/pdftex/thanh/ext/mktextfm
@@ -0,0 +1,151 @@
+#!/bin/sh
+# mktextfm -- make a new TFM 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, kb@mail.tug.org, and infovore@xs4all.nl.
+# Public domain.
+
+version='$Id: mktextfm,v 1.17 1998/02/16 08:56:13 olaf Exp $'
+progname=`echo $0 | sed 's%.*/%%'`
+usage="Usage: $progname [--destdir DESTDIR] FONT.
+
+Makes a TFM file for FONT, if possible. Use DESTDIR for the root of where
+to install into, either the absolute directory name to use (if it starts
+with a /) or relative to the default DESTDIR (if not)."
+
+# Handle non-positional options, except for --version/--help
+while test $# -gt 0; do
+ case "$1" in
+ --destdir) shift; DEST="$1"; shift ;;
+ --destdir=*) DEST="`echo \"$1\" | sed 's/--destdir=//'`"; shift ;;
+ --version|-version) break ;;
+ --help|-help) break ;;
+ *) break ;;
+ esac
+done
+
+# Common code for all scripts.
+: ${MT_TEXMFMAIN=`kpsewhich --expand-path='$TEXMFMAIN'`}
+: ${MT_MKTEX_OPT=`kpsewhich --format='web2c files' mktex.opt`}
+test -n "$MT_MKTEX_OPT" || MT_MKTEX_OPT="$MT_TEXMFMAIN/web2c/mktex.opt"
+if test ! -f "$MT_MKTEX_OPT"; then
+ echo "$progname: Cannot find mktex.opt; check your installation." >&2
+ exit 1
+fi
+
+. "$MT_MKTEX_OPT"
+
+# start of redirection stdout -> stderr, stdin <- /dev/null
+(
+
+NAME=`basename "$1" .tfm`
+MAG=1
+#DEST="$2"
+DPI=$BDPI
+
+OIFS=$IFS; IFS=$SEP
+set x `"$MT_MKTEXNAM" $NAME $DPI $MODE $DEST`; shift
+IFS=$OIFS
+
+PKDEST="$1"
+TFMDEST="$2"
+PKDESTDIR=`echo "$PKDEST" | sed 's%/[^/][^/]*$%%'` # can't rely on dirname
+TFMDESTDIR=`echo "$TFMDEST" | sed 's%/[^/][^/]*$%%'`
+PKNAME=`basename "$PKDEST"`
+TFMNAME=$NAME.tfm
+GFNAME=$NAME.$DPI'gf'
+
+if test -r "$TFMDESTDIR/$TFMNAME"; then
+ echo "$progname: $TFMDESTDIR/$TFMNAME already exists." >&2
+ echo "$TFMDESTDIR/$TFMNAME" >$STDOUT
+ "$MT_MKTEXUPD" "$TFMDESTDIR" $TFMNAME
+ exit
+fi
+
+# Try to create the destdir first. Do not create fonts, if this fails.
+"$MT_MKTEXDIR" "$TFMDESTDIR"
+if test ! -d "$TFMDESTDIR"; then
+ echo "$progname: mktexdir $TFMDESTDIR failed."
+ exit 1
+fi
+
+case "$NAME" in
+cm*[+-][0-9]*|cs*[+-][0-9]*|vn*[+-][0-9]*)
+ BASE_MFNAME=`expr $NAME : '\(.*\)[+-][0-9]*$'`
+ EXPANSION=`expr $NAME : '.*\([+-][0-9]*\)$'`
+ echo "/^u#:=[0-9.]*\/[0-9.]*pt#;/a\\" > $NAME.sed
+ echo "u#:=u#$EXPANSION/1000u#;" >> $NAME.sed
+ sed -f $NAME.sed `kpsewhich $BASE_MFNAME.mf` > $NAME.mf
+ MFDESTDIR=`echo "$TFMDESTDIR" | sed 's%/tfm/%/source/%'`
+ "$MT_MKTEXDIR" "$MFDESTDIR" && mv -f $NAME.mf $MFDESTDIR
+ ;;
+tq*[+-][0-9]*)
+ BASE_MFNAME=`expr $NAME : '\(.*\)[+-][0-9]*$'`
+ EXPANSION=`expr $NAME : '.*\([+-][0-9]*\)$'`
+ echo "expansion_ratio := $EXPANSION;" > $NAME.mf
+ echo "input $BASE_MFNAME.mf" >> $NAME.mf
+ MFDESTDIR=`echo "$TFMDESTDIR" | sed 's%/tfm/%/source/%'`
+ "$MT_MKTEXDIR" "$MFDESTDIR" && mv -f $NAME.mf $MFDESTDIR
+ ;;
+*[+-][0-9]*)
+ EXPANSION_TAG=`expr $NAME : '.*\([+-][0-9]*\)$'`
+ ;;
+esac
+
+if test "x$EXPANSION_TAG" = x; then
+cmd="mf \mode:=$MODE; mag:=$MAG; nonstopmode; input $NAME.mf"
+echo "$progname: Running $cmd"
+
+$cmd </dev/null || {
+ grep '^!' $NAME.log >$$.errs 2>/dev/null
+ grep '^! Strange path' $$.errs >$$.strange 2>/dev/null
+ if cmp $$.errs $$.strange >/dev/null 2>&1 \
+ && test -s $$.strange >/dev/null 2>&1; then
+ echo "$progname: warning: \`$cmd' caused strange path errors." >&2
+ else
+ echo "$progname: \`$cmd' failed." >&2
+ test -s $NAME.log && mv -f $NAME.log "$KPSE_DOT"
+ exit 1;
+ fi
+}
+
+else
+mktextfm.ext $NAME $TFMDESTDIR $STDOUT
+exit 0
+fi
+
+test -r $TFMNAME || { echo "$progname: \`$cmd' failed to make $TFMNAME."; exit 1; }
+
+# Install the TFM file carefully, since others may be working simultaneously.
+# Use cp when mv fails, since DOS will fail mv for deeply-nested directories.
+mv $TFMNAME "$TFMDESTDIR/tfm$$.tmp" 2>/dev/null \
+ || cp $TFMNAME "$TFMDESTDIR/tfm$$.tmp" || exit 1
+cd "$TFMDESTDIR" || exit 1
+chmod `kpsestat -xst,go-w .` tfm$$.tmp
+test -r $TFMNAME || mv tfm$$.tmp $TFMNAME || exit 1
+
+# OK, success with the TFM.
+"$MT_MKTEXUPD" "$TFMDESTDIR" $TFMNAME
+echo "$TFMDESTDIR/$TFMNAME" >$STDOUT
+echo "$progname: $TFMDESTDIR/$TFMNAME: successfully generated." >&2
+
+# Since we probably made a GF(->PK) file, too, may as well install it if
+# it's needed.
+cd $TEMPDIR
+if test -r $GFNAME && test ! -f "$PKDESTDIR/$PKNAME"; then
+ gftopk ./$GFNAME $PKNAME || exit 1
+ "$MT_MKTEXDIR" "$PKDESTDIR"
+ mv $PKNAME "$PKDESTDIR/pk$$.tmp" 2>/dev/null \
+ || cp $PKNAME "$PKDESTDIR/pk$$.tmp" || exit 1
+ cd "$PKDESTDIR" || exit 1
+ if test -f $PKNAME; then
+ rm -f pk$$.tmp
+ else
+ chmod `kpsestat -xst,go-w .` pk$$.tmp
+ mv pk$$.tmp $PKNAME
+ "$MT_MKTEXUPD" "$PKDESTDIR" $PKNAME
+ fi
+fi
+) 1>&2 </dev/null