lamy@ai.utoronto.ca (Jean-Francois Lamy) (09/16/89)
What follows is the file pub/tex.README from the anonymous ftp area on
neat.cs.utoronto.ca (128.100.1.65, after hours please). The distribution
described here is contained in files pub/tex.tar.Z.* . Sysadmins will note
with major relief that "make" handles everything, except snarfing the fonts
from a tape, a neighbouring site, or whatever (a bit much to ask for...).
University of Toronto Computer Science
TeX/MetaFont distribution.
--------------------------------------
Updated September 15, 1989
--------------------------------------
This directory contains a complete distribution of TeX, MetaFont, TeXware and
MFware (these are official Unix TeX distribution versions). Plain TeX, LaTeX,
SliTeX, AMSTeX and other common macro packages are included. Also included is
software found over the networks and local improvements. A PostScript and an
Imagen device driver are included. A 28 page local user's guide is included
that documents the resulting set-up (a complement to the TeX Book and the
LaTeX User's Guide published by Addison-Wesley).
This distribution has been compiled and is being used on the following
platforms.
SGI 4D (Irix 3.1) *
Decstation 3100 (Ultrix 3.1) **
MIPS M/120 (RiscOS 4.0)
Sun 4 (Sun OS 4.0.x)
Sun 3 (SunOS 3.5, 4.0.x)
Vax (4.3 BSD and Ultrix 2.2)
* see bottom of message for required small shell script.
** see note at bottom of this message regarding "sed".
To our knowledge all pieces work, are documented, and do fit together, but we
can obviously make no guarantee whatsoever as to the fitness of any program
for any purpose. To the best of our knowledge all programs are either in the
public domain or freely redistributable. If you need drivers for other
devices, ftp to science.utah.edu, directory aps:<tex.dvi> for a large
public domain collection.
DOCUMENTATION
Man pages are provided for all programs; An up-to-date 28 page
documentation of the resulting set-up can be found in doc/LocalGuide.
PREREQUISITES
Space:
Depending on your machine architecture and compiler, you will need between
22 and 50 megabytes to run the full compilation.
Our rather extensive font and macros collection here takes another 16Megs,
but we are definitely on the heavy side.
Fonts:
This distribution does *not* include the TeX fonts, and you have to get
them separately (from a standard TeX distribution tape, a neighbouring site
running TeX, or ftp them from uunet.uu.net).
You have everything you need to build all the TeX and LaTeX fonts, but
this would take a couple of weeks of CPU time, and is not considered
practical.
UNPACKING
mkdir the directory where you want the source to live; cd there and
run
cat .../tex.tar.Z.* | uncompress | tar xf -
where ... is where you stored the files you FTPed.
INSTALLATION
0) *************************************************************************
*** If you run Ultrix 3.1 or Irix 3.x, see the notes at the bottom of ***
*** this document. ***
*************************************************************************
1) Edit the Makefile in this directory and specify values for the variables
TEXBIN, TEXSHARE, TEXLIB, TEXMAN, MFBIN, MFSHARE, MFLIB, MFMAN
which are documented in the Makefile.
All makefiles are parameterized; you need only edit the Makefile in this
directory to reflect your choice of paths and they will be passed down as
parameters down the hierarchy when you run make.
If you want to run make in a subdirectory beware that you will have to
provide values for some or all of those parameters. We usually create an
alias for make that defines the parameters on the command line when doing
that sort of things.
2) Then you can perform the compilation and installation. If you are
*really* trusting and have the TeX fonts already in the ${TEXSHARE}/fonts
location specified in the make file, you can run
make install
as root or other suitably priviledged account to do a complete installation
from scratch. If a "Licensed" directory is present, see below.
We do suggest that you take a less radical approach and proceed as follows:
(Note that only the steps of the form "make install-..." require permissions
to write in the directories where TeX will be installed (often root, bin,
or some other system account). You can run the other steps as whoever owns
this source directory.)
make veryclean (not needed the very first time)
make first
"make first" does the bulk of the work, and takes 32 minutes on an SGI
4D/240, 24 minutes on an M/120 with the newer MIPS compilers, something
like an hour on a Sun 4, etc. If you have an old microvax, do this
overnight :-)
Move your existing ${TEXSHARE} and ${MFSHARE} directories (if you have
them) out of the way (mv is fine if you have about 5 megs left in that
partition). This is why we don't recommend make install, which cannot do
this step in a fool-proof way, and so doesn't try to install the bulk of
macros and other potentially large items. Then run
make install-first
You should then move the TeX fonts back to $TEXSHARE/fonts, or copy them
there if you did not have them before. It is now time to build the things
that require fonts to be present, (e.g. tex, latex, and a few others).
make mustwait
make install-mustwait
If a directory called "Licensed" is present, you should also run
make licensed
make install-licensed
At present we can make "tpic" available to UofT sites or sites with a
System V release 2 or more recent source license, and dvitool for DCS/CSRI
affiliates or other VorTeX licensees. Ask for them if you qualify.
A word of advice: a minute spent fixing a Makefile will save you hours of
pain.
CONTENTS
web2c contains the actual Web sources for TeX, MetaFont and the rest
of the TeXware. It also contains the Web change files for
generating a pascal version suitable for translation into
C, and the Pascal to C conversion. Takes about 15 minutes
to compile on an unloaded Sun 4.
drivers all device drivers. TeX produces .dvi (device independent)
files that need to be converted for each kind of output
device. These drivers perform that task.
packages The actual TeX and MetaFont macros used to generate each of
the dialects (tex, latex, amstex). This makes it easier to
update each one.
undump Ignore this unless you have a Vax11/780-class machine like a
Sun2 or an old MicroVaxII. Used to generate versions of the
TeX programs with all the macros already loaded in memory and
ready to go. Generating those requires adjusting the
makefiles in the packages directory to invoke undump on a
core file of a loaded virtex or virmf.
textools Tools to make using TeX/LaTeX easier.
mftools Font generation tools. see pkgen in particular.
doc LaTeX local guide, BibTeX cookbook, conference guidelines.
localmacros macros written/imported at UofT
mfshare MetaFont source for the TeX fonts.
texshare TeX macros (standard + UofT)
latex-style The current contents of the official LaTeX style repository
at Clarkson U. As is, not tested or endorsed in any way.
Enjoy,
Jean-Francois Lamy lamy@ai.utoronto.ca, uunet!ai.utoronto.ca!lamy
AI Group, Department of Computer Science, University of Toronto, Canada M5S 1A4
-------------------------------------------------------------------------------
PORTABILITY NOTES
Ultrix 3.1 on DecStation 3100:
sed dumps core when building bibtex; copy the files to some other machine
and run sed there before proceeding or compile the 4.3 one with debugging
one (-O is apparently the culprit).
Silicon Graphics 4D series:
We use the following script instead of "cc" to compile all of this stuff.
We suggest you put this in a file, call it "cc", and make sure it is
in your path ahead of "cc". Essentially it turns on all the Berkeley
Unix emulation features (which are mostly used by the device drivers).
#! /bin/sh -
# Fake CC driver that includes local and bsd stuff and links compatibility
# bsd routines. Also defines __iris4d__ and __irix3.1__, as well
# as linking in /local/lib libraries before system defaults.
# Also munges output error messages from cc to BSD format, so it can
# be automatically parsed by Jove.
# Mark Moraes, University of Toronto
realcc=/usr/bin/cc
includes=
args=
for i
do
case "$i" in
-I*) includes="$includes $i";;
-v) set -x;;
esac
done
includes="$includes -I/local/include -I/usr/include/bsd"
tmp=/tmp/cc.bsd.$$
trap 'rm -f $tmp; exit $status' 0
$realcc -D__iris4d__ -D__irix3.1__ $includes -L/local/lib "$@" -lbsd >$tmp 2>&1
status=$?
sed 's/^[^:]*: \([^:]*: \)\([^,]*\), \([^:]*: \)\(.*\)/"\2", \3\1\4/' $tmp