BSD 4_3_Net_2 development
authorCSRG <csrg@ucbvax.Berkeley.EDU>
Fri, 22 Apr 1983 09:48:31 +0000 (01:48 -0800)
committerCSRG <csrg@ucbvax.Berkeley.EDU>
Fri, 22 Apr 1983 09:48:31 +0000 (01:48 -0800)
Work on file usr/src/usr.bin/lisp/ReadMe

Synthesized-from: CSRG/cd2/net.2

usr/src/usr.bin/lisp/ReadMe [new file with mode: 0644]

diff --git a/usr/src/usr.bin/lisp/ReadMe b/usr/src/usr.bin/lisp/ReadMe
new file mode 100644 (file)
index 0000000..2f2ba92
--- /dev/null
@@ -0,0 +1,165 @@
+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.
+
+