+File: ReadMe -[Tue Mar 29 22:03:29 1983 by jkf]-
+Location: the root of the lisp distribution tree
+
+ This directory contains a Makefile which can will direct the
+initial construction and installation of the Franz Lisp system. After the
+lisp system is installed, the Makefiles in the subdirectories should be
+used directly when modifications are made to either piece of code.
+
+ The lisp system consists of these parts:
+ 1) lisp - lisp interpreter
+ 2) liszt - lisp compiler
+ 3) lxref - lisp cross reference program
+ 4) library of files - collection of lisp files. Some are already loaded
+ into lisp. Others are loaded on demand. Still others are just
+ contributed files.
+ 5) on-line manual - the lisp manual formatted for lineprinter or terminal
+ perusal. The lisp 'help' command refers to this manual
+ 6) lisp manual - the troff input form for the lisp manual. If you can
+ run troff or nroff at your site then you can generate a lisp manual
+ from the files in this directory.
+ 7) pearl AI database program - this is a contributed program. More details
+ can be found in the file pearl/ReadMe. This program will not
+ be generated automatically by the Makefile in this directory.
+ If disk space is short, the pearl subdirectory may be removed
+ and it won't affect any other programs.
+
+To build lisp, follow these steps:
+
+1) Run './lispconf' to describe the system you will be building lisp for.
+ Just type './lispconf' and it will describe the possible
+ configurations. Typically, when lisp is distributed it is configured
+ to run under 4.1c on a vax.
+
+ Look in franz/h/config.h. You may want to alter some of the
+ configuration parameters before you start.
+
+2) Look at the path name defaults in the Makefiles in the various
+ source directories ({franz,liszt}/{vax,68k},utils,lisplib).
+ You can modify these defaults if you like. It is suggested
+ that you leave the lisp library in /usr/lib/lisp.
+ Most code doesn't really depend on where the library is,
+ just as long as when the system is built, the directory
+ name is known. However, some application programs may depend on the
+ library being in /usr/lib/lisp.
+
+3) If this is a distribution of lisp source (as opposed to a complete
+ 4.x distribution) then you will want to copy the
+ lisp library files in lisplib into the lisp library (typically
+ /usr/lib/lisp). [If you don't want to use /usr/lib/lisp change
+ the value of LibDir in the Makefile]. Now type
+ make copylibrary
+ and the library files in lisplib will be copied to the lisp
+ library. If an error message occurs, it may be that you don't
+ have permissions to write in the lisp library. If this is the
+ case, fix the permissions and type 'make copylibrary' again.
+
+4) If you have a working lisp system, then you may be able to bring the
+ system up quickly. Type
+ make fast
+ and the Makefile will attempt to build a new lisp, liszt, and lxref
+ and place them in franz/mylisp, liszt/nliszt and liszt/lxref respectively.
+ [See Note 1 below.]
+ If it fails, then you may just have to start from scratch, see step 5.
+ If it works, go to step 6.
+
+5) To make the entire lisp system, interpreter and compiler, from scratch,
+ type:
+ make slow
+ This may take three to four hours on an unloaded vax.
+ See Note 1 below.
+
+6) once the files are made, type
+ make install
+ and new versions of lisp, liszt and lxref (the compiler cross reference
+ program) will be installed in ObjDir.
+
+7) If you've changed where files live, then you should change the defaults
+ in each of the makefiles: liszt/Makefile, franz/Makefile, doc/Makefile
+ and /usr/lib/lisp/Makefile.
+
+
+Note 1: Two files which are necessary yet which are not distributed
+are the assembler and linking loader. The assembler is required by
+liszt after it has compiled a file, the loader is required by the 'cfasl'
+and 'ffasl' functions. These programs are expected to be in
+/usr/lib/lisp/as and /usr/lib/lisp/nld. The Makefile will copy
+them from /bin/as and /bin/ld. If you are running a Berkeley vax
+distribution, this is ok. If you are using non-berkeley as or ld
+then you will have to get a copy of the berkeley as or ld and place
+them in /usr/lib/lisp yourself. We don't distribute them because
+they require a Unix license and because we want to avoid distributing
+object files.
+
+Note 2: For 68000 systems, we can distribute source for the assembler,
+by agreement with MIT, Megatest Corp and Sun Microsystems. As an aid
+to constructing the lisp system on machines with limited memory or swap
+space, you may have received the assembly language output of the
+compiler for the lisp library and compiler itself. The 68k compiler
+starts out running as 1.25 Megabytes and will grow larger as it retains
+macros and other information about the functions it is compiling.
+(This may be impossible on certain systems.)
+
+The .s files are distributed in files of the form x68k.38.58.*. The
+source for the assembler is in a file called lispas. In any case, you
+should still say "cat * | sh", in order to create the appropriate
+files. To construct the assembler, assemble the .s files, and contruct
+the lisp system quickly, say "make fromasm" instead of "make slow".
+
+
+Changes:
+ Look in franz/ChangeLog and liszt/ChangeLog for a blow by blow description
+of bug fixes and new features. Also the file lispnews in this directory
+describes changes to lisp which affect the user. This file is most
+easily read with 'mail -f lispnews'.
+
+The major changes are described next.
+
+ opus 38: the reader has changed quite a bit. It now uses symbolic
+ syntax codes and it provides infix macros.
+ The lisp library files have been reorganized in order to make
+ lisp bootstrapable.
+
+Future bug fixes:
+ When you find bugs in Lisp or Liszt, mail a letter to franz-bugs@berkeley
+ or ucbvax!franz-bugs.
+ We will mail bug fixes to the franz-composers mailing list. To get on
+ this mailing list, mail a letter to franz-friends-request@berkeley or
+ ucbvax!franz-friends-request.
+
+Documentation:
+ The source (troff form, with -me macros) for the Franz Lisp Manual is
+in the doc subdirectory. There is a line printer printable version
+in lisplib/manual (which is most likely copied to /usr/lib/lisp/manual).
+ There is also a system manual which may be of interest to people who
+want to modify the lisp system or just understand how it works. The file
+is doc/franz.n.
+
+
+The meanings of the default directories and paths in the Makefiles
+in this directory tree (and LibDir)
+
+LibDir : [/usr/lib/lisp]
+ directory containing the lisp library sources, some of which
+ are required to build a lisp system. Change this with caution,
+ Some programs may depend on it being /usr/lib/lisp
+
+DestObjDir : [/usr/ucb]
+ place to put the lisp and liszt that we build. Note that for
+ the liszt -r flag to work, the lisp interpreter must be in
+ /usr/ucb
+
+ObjDir: Directory containing existing lisp and liszt (if they exist).
+ if they don't exist, then you will do a 'make slow' and the value
+ of ObjDir doesn't matter
+
+LispDist: [/usr/src/cmd/lispdist]
+ directory to build distribution in.
+
+CcodeDir: [../franz]
+ location of C coded kernel as seen from the liszt directory
+
+CopyTo : used as the destination directory of some of the commands in
+ the makefile. it has a different meaning in each.
+
+