MudOS installation (1993/01/28)

This is a brief description of how to install MudOS 0.9 (or later)
using native 3.x mode (MudOS does _not_ support 2.4.5 compatibility mode).

When you have uncompressed and untarred the MudOS_0.9.15.tar.Z file, the
following directories (and possibly others) should have been automatically
created: src, bin, doc, etc, and mudlib.

Perform the following steps:

0) Switch into the source subdirectory (cd src).

1) Set a value for INSTALL_DIR in the Makefile:

   Edit the Makefile (or GNUmakefile if you have GNU make) using your favorite
   editor.  Change the INSTALL_DIR macro to point to an appropriate bin
   directory (remember to save your changes).

2) Read the comments in the Makefile (or GNUmakefile) closely and make changes
   to the various macro definitions as appropriate for your particular
   machine.

3) Edit the options.h file to specify a memory management package.

   Choose one of SYSMALLOC, WRAPPEDMALLOC, or DEBUGMALLOC.
   If you are using a NeXT or an RS/6000, do not choose BSDMALLOC or
   SMALLOC (it won't link, you'll be wasting your time... hack away if
   you like but consider yourself forewarned).  If you are using an HP, you
   probably should use smalloc or bsdmalloc (use SYSMALLOC in options.h
   and uncomment SMALLOC* or BSDMALLOC* in the Makefile) since the HP
   system malloc is really slow.  Note that smalloc is much more
   space (overhead) efficient than bsdmalloc.  Be sure to read
   doc/driver/malloc before modifying the driver source code.  

4) Edit the options.h file to specify a default directory (CONFIG_FILE_DIR)
   for the runtime config file.  This step is optional.

   If you do not choose to set a value for CONFIG_FILE_DIR you will need
   to specify the full path to the config file each time you start the
   driver (e.g.: driver /usr/local/mud/etc/config.lil).  If you do
   specify a value for CONFIG_FILE_DIR (and you put the config.lil file
   in that directory), then you may start the driver using:
   driver config.lil

5) Read the comments in the options.h file and change those remaining macro
   definitions that are not set appropriately for your tastes.

6) If your machine is not listed in the 'Platforms' file in this directory,
   then you may need to change port.h.

7) Type: make install

   If errors occur at this stage, then you may be able to correct them by
   making additional changes to Makefile, options.h, or port.h.  If 'make'
   prints some message similar to "/bin/ld: Undefined symbols: _ualarm" then
   that means your machine does not have the ualarm() system call.  In this
   case, you could correct the problem be uncommenting the UALARM definitions
   in the Makefile.  If the install -c command itself fails, then you will need
   to copy the driver and addr_server to the bin directory manually (using
   the cp or mv command).  If /bin/ld prints an error regarding _getrusage,
   you will need to undefine RUSAGE in port.h.  Messages regarding _random,
   _drand48, and _fchmod may be handled similarly.  If you make changes to
   options.h, you will need to type 'make clean' and then 'make install'
   once more.

8) The driver should now be successfully installed.  You should now read
   the helpfile entitled 'Run'.

9) Hint, if you are short on disk space and wish to make the driver and
   addr_server binaries as small as possible, try using the 'strip' command.
   type: 'strip driver' and 'strip addr_server'.  Note that doing this
   will make it difficult to get any useful information from running the
   driver inside a symbolic debugger.
