[ont.archives] TeX/Metafont

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