$Id: INSTALL 1535 2006-09-25 20:07:11Z kreator $

INSTALLATION
============

The fast and easy way:

  ./install.fast

NOTE: If you use this script, you must make sure config.h is correctly
      configured prior to running the script; also - using this script
      will default to installing Hybserv2 in /usr/local/hybserv/, unless
      you first edit Makefile.in

In order to compile Hybserv2, you should perform the following steps:

  1) Enter the hybserv tree and run ./configure, a GNU configure script,
     which should find whatever it needs for compilation.

  2) Edit include/config.h and change the information to suit your IRC
     network. This is a *must*. Be sure to edit bin/hybserv.conf to setup
     the services to work with your network. This is the file where you
     can give others access to Hybserv2.

  3) Run 'make' in the hybserv tree to compile the package. When make
     finishes, you'll probably want to: 'strip bin/hybserv' to remove
     debugging symbols from the file, since the author is the only one who
     really uses it. It also decreases the file size greatly.

  4) Finally, become root if necessary, and run 'make install' to
     install Hybserv2 on your system. The default install directory is
     /usr/local/hybserv. This will automatically chown the install
     directory to the same user who ran the configure script, so it won't
     run as root. You can change the user by editing Makefile.

  5) You may wish to remove any objects/binaries created during
     installation. You can do this via 'make clean'. If you wish to remove
     any configure generated files as well, use 'make distclean'.

NOTE: If you want to install Hybserv2 in a directory other than
      /usr/local/hybserv, you must run the configure script with 
      the --prefix option.

For example, if you want to install Hybserv2 in /home/mydir:

  ./configure --prefix=/home/mydir
  make all install

Then, Hybserv2 will be installed in /home/mydir/hybserv.

NOTE: ./configure script accepts several additional parameters which
      can be used to fine-tune your setup:

  --disable-largefile     omit support for large files
  --disable-ipv6          Disable IPv6 support [default=no]
  --enable-efence         Enable Electric Fence support [default=no]
  --enable-dmalloc        Enable dmalloc support [default=no]
  --enable-boehm-gc       Enable Boehm GC support [default=yes]
  --enable-warnings       Enable compiler warnings [default=no]
  --enable-asserts        Enable asserts in code [default=no]
  --enable-gimmecore      Enable core dumping [default=yes]
  --enable-daemontools    Enable daemontools support [default=no]

  --with-nicklen=LENGTH     Sets nick length to LENGTH [default=18]
  --with-channellen=LENGTH  Sets channel length to LENGTH [default=200]
  --with-topiclen=LENGTH    Sets topic length to LENGTH [default=160]
  --with-network=TYPE       Sets network type TYPE

Hybserv2 is known to compile cleanly on the following operating systems,
and may compile on others:

  Linux 2.6.x (and older)
  FreeBSD 5.x (and older)
  DragonFly BSD 1.2.x (and older)
  NetBSD 2.0.x (and older)
  OpenBSD 2.x (and older)
  Solaris 2.11 (and older)
  Tru64 5.0 (and older)
  Cygwin 1.5.x (and older)
  IRIX 6.5 (and older)
  OSX Tiger 10.4.2

Systems known not to compile sucessfuly (ie. miserably fail):

  HP-UX 11.11 with builtin cc - should work with Gcc though

If you are unable to compile Hybserv, please read the README and make a
new ticket using the provided URL. Bug reports/suggestions should be sent
to the same place. Now, go back to the README.
