This is version 0.13 of gzochid and gzochi-metad, the server components for
the gzochi game development framework.

gzochi is a framework for developing massively multiplayer online games. A
server container provides services to deployed games, which are written in 
Guile Scheme, that abstract and simplify some of the most challenging and
error-prone aspects of online game development: Concurrency, data persistence, 
and network communications. A very thin client library can be embedded to 
provide connectivity for client applications written in any language.

gzochid is the daemon program that hosts applications written against the
gzochi Scheme API and listens for socket connections from client programs. It 
includes some simple embedded reporting tools to track throughput and resource 
usage.

gzochi-metad is the (optional) daemon program that supports a highly-available
cluster of gzochid instances by distributing client connections and task
execution across them. Like gzochid, it includes an embedded reporting console.

Additional INSTALL instructions ===============================================

Generic instructions for configuring and compiling gzochid and gzochi-metad can
be found in the INSTALL file. Application-specific information and configuration
options can be found below.

gzochid and gzochi-metad depend on the following external libraries.
- libdb
- libg
- libgobject
- libgzochi-common
- libmicrohttpd
- libz

In addition, gzochid depends on
- libguile

The dependencies on libg, libguile, libmicrohttpd, and libz are configured 
using `pkg-config'.

libgzochi-common is provided as part of the gzochi distribution and is assumed
to have been built in a directory adjacent to the directory in which gzochid and
gzochi-metad are being configured and built.

To build the optional `krb5' authentication plugin, development files for MIT
Kerberos 5 must be installed. The build process will search for these files by
default, but if the `--enable-kerberos' option is given, their absence will 
cause the build to fail. Use the `--with-krb5' option to specify the location 
of the `krb5-config' program, which is used to determine the compile- and 
link-time flags to be used to build the plugin.


Required External Packages ====================================================

gzochid and gzochi-metad require the following external packages:

  - Oracle BerkeleyDB, at least version 5.1

    BDB is used for data persistence. It is available from
    http://www.oracle.com/technetwork/products/berkeleydb/downloads/ .
    
  - GNU GLib and GObject, at least version 2.61

    GLib is used throughout gzochid / gzochi-metad for its general-purpose
    utility functions and data structures. The GObject library is used for
    component modeling and wiring. Both are available from http://www.gtk.org/ .

  - GNU Guile, at least version 2.0.4
 
    Guile provides the Scheme execution environment for the applications hosted
    by gzochid, as well as some of the glue code that facilitates communication
    between the applications and the container. It is available from
    http://www.gnu.org/software/guile/ .

  - GNU libmicrohttpd, at least version 0.9.17

    libmicrohttpd is used to serve pages that provide statistical information
    about running gzochid / gzochi-metad instances and their hosted
    applications. It is available from
    http://www.gnu.org/software/libmicrohttpd/ .

  - zlib, at least version 1.2.5

    zlib is available from http://zlib.net/ .

  - pkg-config

    The ./configure script uses pkg-config to discover the correct compile and
    link options for a number of the libraries above.


Optional External Packages ====================================================

The following external packages are necessary to enable specific optional
features of gzochid.

  - MIT Kerberos 5, at least version 1.10

  MIT Kerberos 5 is used by the `krb5' authentication plugin to authenticate
  clients of gzochid game applications. It is available from 
  http://web.mit.edu/kerberos/ .


Special Instructions For Some Systems =========================================

We would like gzochid to build on all systems using the simple instructions 
above, but a few systems may need special treatment. If you send us fixes for 
system-specific problems, we'll be grateful.

   <none yet listed>


About This Distribution =======================================================

Interesting files include:

- COPYING, which contains the terms of GNU General Public License.
- INSTALL, which contains general instructions for building/installing.
- NEWS, which describes user-visible changes since the last release.

Files are usually installed according to the prefix specified to configure,
/usr/local by default. Building and installing gives you:

Executables, in ${prefix}/bin:

 gzochid --- the server container for gzochi
 gzochi-metad --- the gzochi meta server
