summaryrefslogtreecommitdiff
path: root/obsolete/dviware/dvi2xx/MakeTeXPK
blob: 485372a9ce4c43f683f3f782e7501c9a8e0b3e7d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
#!/bin/sh
#
#   This script file makes a new TeX PK font, because one wasn't
#   found.  Parameters are:
#
#   name dpi bdpi magnification [mode]
#
#   `name' is the name of the font, such as `cmr10'.  `dpi' is
#   the resolution the font is needed at.  `bdpi' is the base
#   resolution, useful for figuring out the mode to make the font
#   in.  `magnification' is a string to pass to MF as the
#   magnification.  `mode', if supplied, is the mode to use.
#
#   Note that this file must execute Metafont, and then gftopk,
#   and place the result in the correct location for the PostScript
#   driver to find it subsequently.  If this doesn't work, it will
#   be evident because MF will be invoked over and over again.
#
#   Of course, it needs to be set up for your site.
#
# TEMPDIR needs to be unique for each process because of the possibility
# of simultaneous processes running this script.

DESTDIR=/usr/local/lib/tex/pk/pk300
MFINPUTS=`pwd`:/usr/local/lib/mf/inputs
export MFINPUTS
TEMPDIR=/usr/tmp/mtpk.$$
# MF=mf
MF=cmmf
#################### END OF Configuration

NAME=$1
DPI=$2
BDPI=$3
MAG=$4
MODE=$5

umask 0

if test "$MODE" = ""
then
   if test $BDPI = 300
   then
      MODE=imagen
   elif test $BDPI = 400
   then
      MODE=nexthi
   elif test $BDPI = 100
   then
      MODE=nextscreen
   elif test $BDPI = 635
   then
      MODE=linolo
   elif test $BDPI = 1270
   then
      MODE=linohi
   elif test $BDPI = 2540
   then
      MODE=linosuper
   else
      echo "I don't know the mode for $BDPI"
      echo "Have your system admin update MakeTeXPK"
      exit 1
   fi
fi

#  Something like the following is useful at some sites.
# DESTDIR=/usr/local/lib/tex/fonts/pk.$MODE
GFNAME=./$NAME.$DPI'gf'
PKNAME=./$NAME.$DPI'pk'

# Clean up on normal or abnormal exit
trap "cd /; rm -rf $TEMPDIR $DESTDIR/pktmp.$$" 0 1 2 15

mkdir $TEMPDIR
cd $TEMPDIR

if test -r $DESTDIR/$PKNAME
then
   echo "$DESTDIR/$PKNAME already exists!"
   exit 0
fi

# check also in the standard place

if test -r /usr/lib/tex/fonts/pk/$PKNAME
then
   echo /usr/lib/tex/fonts/pk/$PKNAME already exists!
   exit 0
fi

echo $MF "\mode:=$MODE; mag:=$MAG; scrollmode; input $NAME" \\\</dev/null
$MF "\mode:=$MODE; mag:=$MAG; scrollmode; input $NAME" </dev/null
if test ! -r $GFNAME
then
   echo "Metafont failed for some reason on $GFNAME"
   exit 1
fi

gftopk $GFNAME $PKNAME

# Install the PK file carefully, since others may be doing the same
# as us simultaneously.

mv $PKNAME $DESTDIR/pktmp.$$
cd $DESTDIR
mv pktmp.$$ $PKNAME

exit 0