Annotation of 42BSD/ucb/lisp/ReadMe, revision 1.1.1.1

1.1       root        1: File: ReadMe                           -[Tue Mar 29 22:03:29 1983 by jkf]-
                      2: Location: the root of the lisp distribution tree
                      3: 
                      4:     This directory contains a Makefile which can will direct the 
                      5: initial construction and installation of the Franz Lisp system.  After the 
                      6: lisp system is installed, the Makefiles in the subdirectories should be
                      7: used directly when modifications are made to either piece of code.
                      8: 
                      9:     The lisp system consists of these parts:
                     10:  1) lisp - lisp interpreter
                     11:  2) liszt - lisp compiler
                     12:  3) lxref - lisp cross reference program
                     13:  4) library of files - collection of lisp files.  Some are already loaded
                     14:        into lisp. Others are loaded on demand.  Still others are just
                     15:        contributed files.
                     16:  5) on-line manual - the lisp manual formatted for lineprinter or terminal
                     17:        perusal.  The lisp 'help' command refers to this manual
                     18:  6) lisp manual - the troff input form for the lisp manual.  If you can 
                     19:        run troff or nroff at your site then you can generate a lisp manual
                     20:        from the files in this directory.
                     21:  7) pearl  AI database program - this is a contributed program.  More details
                     22:        can be found in the file pearl/ReadMe.  This program will not
                     23:        be generated automatically by the Makefile in this directory.
                     24:        If disk space is short, the pearl subdirectory may be removed
                     25:        and it won't affect any other programs.
                     26: 
                     27: To build lisp, follow these steps:
                     28: 
                     29: 1) Run './lispconf' to describe the system you will be building lisp for.
                     30:    Just type './lispconf' and it will describe the possible
                     31:    configurations.   Typically, when lisp is distributed it is configured
                     32:    to run under 4.1c on a vax.
                     33: 
                     34:    Look in franz/h/config.h.  You may want to alter some of the
                     35:     configuration parameters before you start.
                     36: 
                     37: 2) Look at the path name defaults in the Makefiles in the various
                     38:     source directories ({franz,liszt}/{vax,68k},utils,lisplib).
                     39:     You can modify these defaults if you like.  It is suggested
                     40:     that you leave the lisp library in /usr/lib/lisp.
                     41:     Most code doesn't really depend on where the library is,
                     42:     just as long as when the system is built, the directory
                     43:     name is known.  However, some application programs may depend on the
                     44:     library being in /usr/lib/lisp.
                     45: 
                     46: 3) If this is a distribution of lisp source (as opposed to a complete
                     47:     4.x distribution) then you will want to copy the
                     48:     lisp library files in lisplib into the lisp library (typically
                     49:     /usr/lib/lisp).  [If you don't want to use /usr/lib/lisp change
                     50:     the value of LibDir in the Makefile].  Now type
                     51:                make copylibrary
                     52:     and the library files in lisplib will be copied to the lisp
                     53:     library.  If an error message occurs, it may be that you don't
                     54:     have permissions to write in the lisp library.  If this is the
                     55:     case, fix the permissions and type 'make copylibrary' again.
                     56: 
                     57: 4) If you have a working lisp system, then you may be able to bring the
                     58:     system up quickly.  Type
                     59:                make fast
                     60:     and the Makefile will attempt to build a new lisp, liszt, and lxref
                     61:     and place them in franz/mylisp, liszt/nliszt and liszt/lxref respectively.
                     62:     [See Note 1 below.]
                     63:     If it fails, then you may just have to start from scratch, see step 5.
                     64:     If it works, go to step 6.
                     65: 
                     66: 5) To make the entire lisp system, interpreter and compiler, from scratch,
                     67:     type:
                     68:                make slow
                     69:     This may take three to four hours on an unloaded vax.
                     70:     See Note 1 below.
                     71: 
                     72: 6) once the files are made, type
                     73:                make install
                     74:     and new versions of lisp, liszt and lxref (the compiler cross reference
                     75:     program) will be installed in ObjDir.
                     76: 
                     77: 7) If you've changed where files live, then you should change the defaults
                     78:     in each of the makefiles: liszt/Makefile, franz/Makefile, doc/Makefile
                     79:     and /usr/lib/lisp/Makefile.
                     80: 
                     81: 
                     82: Note 1: Two files which are necessary yet which are not distributed 
                     83: are the assembler and linking loader.  The assembler is required by
                     84: liszt after it has compiled a file, the loader is required by the 'cfasl'
                     85: and 'ffasl' functions.  These programs are expected to be in 
                     86: /usr/lib/lisp/as and /usr/lib/lisp/nld.  The Makefile will copy
                     87: them from /bin/as and /bin/ld.  If you are running a Berkeley vax
                     88: distribution, this is ok.  If you are using non-berkeley as or ld
                     89: then you will have to get a copy of the berkeley as or ld and place
                     90: them in /usr/lib/lisp yourself.  We don't distribute them because
                     91: they require a Unix license and because we want to avoid distributing
                     92: object files.
                     93: 
                     94: Note 2: For 68000 systems, we can distribute source for the assembler,
                     95: by agreement with MIT, Megatest Corp and Sun Microsystems.  As an aid
                     96: to constructing the lisp system on machines with limited memory or swap
                     97: space, you may have received the assembly language output of the
                     98: compiler for the lisp library and compiler itself.  The 68k compiler
                     99: starts out running as 1.25 Megabytes and will grow larger as it retains
                    100: macros and other information about the functions it is compiling.
                    101: (This may be impossible on certain systems.)
                    102: 
                    103: The .s files are distributed in files of the form x68k.38.58.*.  The
                    104: source for the assembler is in a file called lispas.  In any case, you
                    105: should still say "cat * | sh", in order to create the appropriate
                    106: files.  To construct the assembler, assemble the .s files, and contruct
                    107: the lisp system quickly, say "make fromasm" instead of "make slow".
                    108: 
                    109: 
                    110: Changes:
                    111:   Look in franz/ChangeLog and liszt/ChangeLog for a blow by blow description
                    112: of bug fixes and new features.  Also the file lispnews in this directory
                    113: describes changes to lisp which affect the user.  This file is most
                    114: easily read with  'mail -f lispnews'.
                    115: 
                    116: The major changes are described next.
                    117: 
                    118:   opus 38: the reader has changed quite a bit.  It now uses symbolic
                    119:        syntax codes and it provides infix macros.  
                    120:        The lisp library files have been reorganized in order to make
                    121:        lisp bootstrapable.
                    122: 
                    123: Future bug fixes:
                    124:   When you find bugs in Lisp or Liszt, mail a letter to franz-bugs@berkeley
                    125:   or ucbvax!franz-bugs.   
                    126:   We will mail bug fixes to the franz-composers mailing list.  To get on 
                    127:   this mailing list, mail a letter to franz-friends-request@berkeley or
                    128:   ucbvax!franz-friends-request.
                    129: 
                    130: Documentation:
                    131:   The source (troff form, with -me macros) for the Franz Lisp Manual is
                    132: in the doc subdirectory.  There is a line printer printable version 
                    133: in lisplib/manual (which is most likely copied to /usr/lib/lisp/manual).
                    134:   There is also a system manual which may be of interest to people who
                    135: want to modify the lisp system or just understand how it works.  The file
                    136: is doc/franz.n.  
                    137: 
                    138: 
                    139: The meanings of the default directories and paths in the Makefiles
                    140: in this directory tree (and LibDir)
                    141: 
                    142: LibDir : [/usr/lib/lisp]
                    143:        directory containing the lisp library sources, some of which
                    144:        are required to build a lisp system.  Change this with caution,
                    145:        Some programs may depend on it being /usr/lib/lisp
                    146: 
                    147: DestObjDir : [/usr/ucb]
                    148:        place to put the lisp and liszt that we build.  Note that for
                    149:        the liszt -r flag to work, the lisp interpreter must be in
                    150:        /usr/ucb
                    151: 
                    152: ObjDir: Directory containing existing lisp and liszt (if they exist).
                    153:        if they don't exist, then you will do a 'make slow' and the value
                    154:        of ObjDir doesn't matter
                    155: 
                    156: LispDist: [/usr/src/cmd/lispdist]
                    157:        directory to build distribution in.
                    158: 
                    159: CcodeDir: [../franz]
                    160:        location of C coded kernel as seen from the liszt directory
                    161: 
                    162: CopyTo : used as the destination directory of some of the commands in
                    163:        the makefile.  it has a different meaning in each.
                    164: 
                    165: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.