1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-13 23:36:08 +00:00
freebsd-ports/print/dvi2xx/scripts/configure

187 lines
4.1 KiB
Plaintext
Raw Normal View History

#!/bin/sh
cd $WRKSRC || exit 1;
mv lj3-filter lj3-filter.orig || exit 1;
sed -e s:/usr/local/bin/perl:/usr/bin/perl: \
-e s:/usr/tmp/:/tmp/: \
-e s:/usr/local:$PREFIX: <lj3-filter.orig >lj3-filter
mv config.h config.h.orig || exit 1;
sed -e s+/usr/local/lib/tex/pk300+$PREFIX/share/texmf/fonts/pk:/tmp/pk+ \
-e s+/usr/local/lib/tex/+$PREFIX/share/texmf/+ < config.h.orig > config.h
chmod +w Makefile || exit 1;
echo "FONTAREA=" >> Makefile || exit 1;
echo "DEFAULT_TFM_PATH=" >> Makefile
echo "BINDIR=$PREFIX/bin" >> Makefile
echo "MANDIR=$PREFIX/man" >> Makefile
echo "CC=cc" >> Makefile
mv MakeTeXPK MakeTeXPK.orig || exit 1;
# MakeTeXPK taken from xdvi/dvips
cat >>MakeTeXPK <<'EOF'
#!/bin/sh
#
# This script file makes a new TeX PK font, because one wasn't
# found. Parameters are:
#
# name dpi bdpi magnification [mode [subdir]]
#
# `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.
#
TEXDIR=$PREFIX/share/texmf
LOCALDIR=/tmp
DESTDIR=$LOCALDIR/pk
#
# TEMPDIR needs to be unique for each process because of the possibility
# of simultaneous processes running this script.
#
if test "$TMPDIR" = ""
then
TEMPDIR=/tmp/mtpk.$$
else
TEMPDIR=$TMPDIR/mtpk.$$
fi
NAME=$1
DPI=$2
BDPI=$3
MAG=$4
MODE=$5
#
# Prevent display under the X Window System. Except it doesn't always work;
# some sh'ells don't seem to understand unset. There are also some
# versions of METAFONT that don't work if the DISPLAY isn't set and
# the term type is set to xterm.
#
# unset DISPLAY
umask 0
if test "$MODE" = ""
then
if test $BDPI = 300
then
MODE=imagen
elif test $BDPI = 200
then
MODE=FAX
elif test $BDPI = 360
then
MODE=nextII
elif test $BDPI = 400
then
MODE=nexthi
elif test $BDPI = 100
then
MODE=nextscreen
elif test $BDPI = 72
then
MODE=seventwo
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/share/tex/fonts/pk.$MODE
GFNAME=$NAME.$DPI'gf'
PKNAME=$NAME.$DPI'pk'
# Clean up on normal or abnormal exit
trap "cd /; /bin/rm -rf $TEMPDIR $DESTDIR/pktmp.$$" 0 1 2 15
if test ! -d $DESTDIR
then
mkdir $DESTDIR
chmod 777 $DESTDIR
fi
if test "$6" != ""
then
DESTDIR=$DESTDIR"$6"
if test ! -d $DESTDIR
then
mkdir $DESTDIR
chmod 777 $DESTDIR
fi
fi
# added by gwb, to allow searching in current dir before cd'ing
if test "$MFINPUTS" != ""
then
MFINPUTS=$MFINPUTS:`pwd`; export MFINPUTS
fi
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 "$6" = ""
then
if test -r $TEXDIR/fonts/pk/$PKNAME
then
echo $TEXDIR/fonts/pk/$PKNAME already exists!
exit 0
fi
else
if test -r $TEXDIR/fonts/pk/$6"$PKNAME"
then
echo $TEXDIR/fonts/pk/$6"$PKNAME" already exists!
exit 0
fi
fi
unset DISPLAY
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 -v ./$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
chmod a+r $PKNAME
exit 0
EOF
chmod +x MakeTeXPK
exit 0;