basic installation instructions:

1. BUILDING THIS GATEWAY REQUIRES DISCUSS LIBRARIES.

   If you don't have the libraries from the discuss distribution, you
   should get the sources by anonymous FTP from
       athena-dist.mit.edu:/pub/ATHENA/discuss/discuss1.6.tar.Z
   and build the libraries.

   To build the gateway with Kerberos authenticated Discuss libraries,
   you'll need libdsk, libusp and libcom_err libraries (built from
   Discuss source tree), as well as libkrb and libdes libraries for
   Kerberos authentication.

   NOTE: With respect to the US export controls, encryption technology
         is in the same category with munitions.  That means that you
         need a written permission of the US Government to export
         Kerberos outside of the US. Getting the permission is up to
         you, but I wish you good luck if you want to try.

   To build the gateway with the non-authenticated libraries, you
   should be able to use just libds, libusp and libcom_err.

   NOTE: I haven't tried it yet.  If you try, let me know how it went.

2. Diswww currently uses 3-argument [BSD-style] syslog() to log
   requests and errors.

   If you do not use 3-argument syslog(), you can get around it by
   replacing the SYSLOG* macros in proto.h with something else.  I'm
   planning on writing some code to log to files instead; if you
   finish it before I do, I'll be grateful. =)

3. Edit the Makefile.

   a) Make sure all the tools and their options are set correctly.
      If the programs aren't in your path, use the absolute paths.

   b) Set CONFIG and DEFINES to reflect your desired options.
      The options you can use are:

  -DBACKGROUND           fork and dissociate from the tty on startup
  -DDEBUG                causes various debugging information to be syslogged
  -DIGNORE_DELETED_TRNS  do not display deleted transaction numbers in
                             the meeting listing
  -DFIX_CTIME            a gross hack to convert from DATE TIME YEAR to D Y T

  -DPROGNAME="name"      sets the name of the program in the ps list to "name"
  -DSRV_ACCESS_FILE="file"  sets name of the access permissions file to "name"
  -DSRV_SYSLOG_LVL=level    sets the syslog facility to "level".  For example,
                              -DSRV_SYSLOG_LVL=LOG_LOCAL5

   c) Set HOST, PORT, INDEX, WEBM to right values.

   d) Set INCPATH and LIBPATH to include Discuss [and Kerberos if needed]

   e) Set DESTDIR and FILESDIR to directories for diswww and its files.

   f) Set DSLIBS to correct set of libraries (Kerberized or
      non-Kerberized).  You might also need to set EXTRA_LIBS to
      additional libraries needed to make things work on some
      platforms (e.g. Solaris).

4. Edit the HTML documents in files/.
   Edit files/Makefile and set DOCS to the correct set of documents.

5. Type "make all".
   Hope for the best.

6. If the build succeeds, type "make install".

7. Test the binary.

If you encounter a success or a noteworthy failure, please drop me a note.

 ----------------------------------------------------------------

CURRENTLY KNOWN BUILD ATTEMPTS (05/25/94):

who   platform       OS      compiler  options KRB   status

bert  DEC/mips   Ultrix 4.2  gcc 2.5.8  -g -O   Y    works! (tested)

bert  Sparc      Solaris 2.1 gcc 2.5.8  -g -O   Y    builds (not tested much)
  (note: needed EXTRALIBS = -lsocket -lnsl -lc -lucb -lelf -ldl)

bert  RS/6000    AIX 3.2     gcc 2.5.8  -g -O   Y    builds (not tested much)


NOTE: I hope it doesn't make a difference, but all my builds were done
      on Athena-ized workstations. --bert
