ncohafmuta-1.4.2/bot/
ncohafmuta-1.4.2/helpfiles/
ncohafmuta-1.4.2/lib/emailver/
ncohafmuta-1.4.2/tzinfo/Atlantic/
ncohafmuta-1.4.2/tzinfo/Brazil/
ncohafmuta-1.4.2/tzinfo/Chile/
ncohafmuta-1.4.2/tzinfo/Indian/
ncohafmuta-1.4.2/tzinfo/Mexico/
ncohafmuta-1.4.2/tzinfo/Mideast/
ncohafmuta-1.4.2/tzinfo/SystemV/
ncohafmuta-1.4.2/utils/
ncohafmuta-1.4.2/utils/code_fragments/new_config/
This code was initially programmed in parallel with SunOS 4.1.4 and Linux
2.0.x (with libc5), now mostly on Linux.
It is made to compile/run on a variety of UNIXes.
You can find out your type of system by running: uname -a

***** UNIX COMPILING INFO *****
o The quick/in-a-nutshell way

	./configure
	make

o The detailed way

FIRST, run:
	./configure --help 
from the main directory. This will show you any compile-time options
you can enable/disable.
SECOND, run:
	./configure
Add any options to the end of this (if you wish) as 
shown in ./configure --help

This will generate the Makefile for the compiler and a config.h file in
the hdrfiles/ directory.

System specific help MAY be under: README.<your system type>

THIRD, to compile:
  "make"           compiles the talker code and resolver_clipon
  "make test"      makes a.out test binary from .c files
  "make resolver_clipon"     makes JUST the resolver_clipon binary
  "make clean"     removes a.out, server, resolver_clipon, core, objfiles/*
  "make logclean"  removes logfiles/*.log and logfiles/lastcommand.*
  "make objclean"  removes object binaries from compile in objfiles/
  "make smtpclean" removes outgoing email queues from maildir/smtp_*/

If you're on a system with multiprocessors you can pass the
-j<num_of_processors+1> option to 'make' to take advantage of them.
So, if you're on a 2 processor system, you could do:   make -j3

If you want to log the make (to save the warnings or something)
you could do:    make >& make.log &
Remove the last & if you don't want it to run in the background.

IF YOU DON'T HAVE MAKE:
If you don't have 'make', i.e. you get a message like:
	"make: Command not found"
you can use the no_make_compile script which uses shell scripting to
simulate make compiling. To do this copy the "no_make_compile" script
from the utils/ directory up to the main code directory, edit the
variables in it just like the Makefile, then type:
./no_make_compile

It does take SOME arguments (like the Makefile) "clean" "objclean" 
"logclean"

STARTUP/SHUTDOWN:
	./restart will boot the talker
	./shutdown will shut down the talker
	./shutdown -c will .reinit the talker
	./shutdown -<SIGNAL> will send <SIGNAL> to the talker
			     (e.g. -TERM will send a SIGTERM)

To run the talker without fork()ing it into the background (usually for
debugging) use the -d switch on the command line. If you use the restart
script, run ./restart -d or ./restart <your config directory> -d
If you just run the binary by itself, run
 ./server -d or ./server <your config directory> -d

NOTE: Do NOT kill a talker with 'kill -9' unless ABSOLUTELY NECESSARY and 
no other kill signals work.

RECOMPILING:
The code MUST be recompiled if changes are made to any .c or .h file.
When you re-compile the talker code for changes to take effect AND the talker
is still running, I, personally, run:
	make
	.shutdown -r (from inside the talker)

Some systems do not let you overwrite a running binary, to get around 
this, you can do:
	make test
	rm server ; cp a.out server
	.shutdown -r (from inside the talker)

RECONFIGURING:
The only time you should run ./configure again is:
A) When you move to a different operating system/platform
B) When you want one of the debugging information logged types enabled

***** END OF UNIX COMPILING INFO *****


***** WINDOWS NT/95 COMPILING INFO *****

see README.windows

***** END OF WINDOWS COMPILING INFO *****



***** ENVIRONMENT INFO *****

Operating Systems:
-----------------
SunOS .. 4.1:           sun             (abbr.: SunOS4)
Solaris:                sun __svr4__    (abbr.: solaris)
Silicon Graphics:       sgi
Atari ST/TT MiNT:       atarist
Amiga, DICE:            AMIGA _DCC
Amiga, SAS/C:           AMIGA __SASC
BeOS                    __BEOS__
Linux 2.1.3/2.95.2:    linux
 /usr/lib/gcc-lib/i686-pc-linux-gnu/2.95.2/cpp -lang-c -v -D__GNUC__=2 
 -D__GNUC_MINOR__=95 -D__ELF__ -Dunix -D__i386__ -Dlinux -D__ELF__ 
 -D__unix__ -D__i386__ -D__linux__ -D__unix -D__linux -Asystem(posix)
NeXT:                   NeXT
Sequent:                _SEQUENT_
Ultrix:                 ultrix
IBM RS6000              _AIX _IBMR2
HP-UX                   hpux
OS/2                    OS2 (not always set by the compiler???)
???                     M_UNIX
FreeBSD 4.3 (2.95.3)    __FreeBSD__
 /usr/libexec/cpp -lang-c -v -D__GNUC__=2 -D__GNUC_MINOR__=95 -Di386 
 -D__FreeBSD__=4 -D__FreeBSD_cc_version=430000 -Dunix -D__i386__ 
 -D__FreeBSD__=4 -D__FreeBSD_cc_version=430000 -D__unix__ -D__i386 -D__unix 
 -Acpu(i386) -Amachine(i386) -Asystem(unix) -Asystem(FreeBSD)
OpenBSD 2.9 (2.95.3) (i386)	__OpenBSD__
 /usr/lib/gcc-lib/i386-unknown-openbsd2.9/2.95.3/cpp0 -lang-c -v -D__GNUC__=2 
 -D__GNUC_MINOR__=95 -D__unix__ -D__i386__ -D__OpenBSD__ -D__unix__ 
 -D__i386__ -D__OpenBSD__ -Asystem(unix) -Asystem(OpenBSD)
Apple Unix              AUX             /* add -D_POSIX_SOURCE to CFLAGS */
Windows NT/95/98        _WIN32, WINNT, _WINNT

Processor Hardware:
------------------
Sparc                   sparc
Intel (MWerks/Be)       __INTEL__
Intel (gcc)             i386 __i386 __i386__

Compilers:
---------
gcc:                    __GNUC__
Cygnus gcc for Win32    __CYGWIN32__ resp. __CYGWIN__
Metrowerks (Be)         __MWERKS__

***** END OF ENVIRONMENT INFO *****

***** FIRST-HAND SUCCESSFUL COMPILES ******
Linux w/glibc 2.1.3 (warn1)
Linux w/libc 5.x (warn3)
AIX 3 (warn3)
FreeBSD 4.3-STABLE (warn3)
OpenBSD 2.9 (warn3)
SunOS 4.1.4 (?)
Solaris 2.5 x86 (?)
***** FIRST-HAND SUCCESSFUL COMPILES ******