Thu Aug  1 20:15:26 MET DST 1996 Ulrich Pfeifer <pfeifer@ls6.informatik.uni-dortmund.de>

Description patch15:

The 'ndict' test revealed problems on little endian architectures.
Fixed that. Problem with dictionary last word remains on some systems.
Runs without problems on sunos 4.1.4, 5.5 and linux.

Description patch14:

Makefile.PL
	Source building method now includes 'ctype.o' if found.
	This should help people with freeWAIS-sf distributions which 
	do not include it in libwais.a (i.e. all current public availabe 
        versions. 
t/
	Added new test fro Dict.pm.

t/parallel.t
	Added use lib '.' to make it find chat2.pl in current
	directory.

lib/Wais/Dict.pm
        Some fixes to make 'perl -w' happy.


------------------------------------------------------------------------
For installation you need a installed perl5. I used perl5.001n and
perl5.002.  Also you need the freeWAIS-sf-2.0 distribution with
patchlevel >= 46. 

There are two ways to build this extension:

        1) Using the freeWAIS-sf source directory
        2) Using the installed libraries

Untar the waisperl tarfile outside the perl source tree.

1) Building using the freeWAIS-sf source directory
==================================================

For compilation the source directory of freeWAIS-sf is used.  For the
tests the test database in the freeWAIS-sf source directory is
used. So recreate it if you cleaned there.

Edit Makefile.PL and customize it with the name of your freeWAIS-sf
source directory. 'perl Makefile.PL' will ask you for the directory if
you did not do that. (Hopefully, you didn't blow the latter away after
compiling freeWAIS-sf. :))

2) Building using the installed libraries
=========================================

Currently no pubic version of freeWAIS-sf installes all the needed
library and include files. So there is some work to do before you
start.  But installation from the installed linbrary allowes you to
remove the freeWAIS-sf source tree from you hard disk. You should keep
your test database (from the FIELD-EXAMPLE subdirectory) arround if
you want ot run the tests. The sources and format files should fit
into 10k bytes ;-)

This version of the WAIS extension comes with a script which you
should use to generate a 'wais.h' include file in the 'ir'
subdirectory of the freeWAIS-sf source tree:

 ,-----
 | mkinc -I../ctype ui.h cutil.h irext.h irfiles.h irsearch.h \
 |         irtfiles.h weight.h docid.h > wais.h
 `-----

Do not use '-I../ctype' if you did use your systems ctypes when
compiling freeWAIS-sf. Generally you can use the same flags as you did
when compiling the sources of freeWAIS-sf. Only '-I' flags are used.

If you want to use this alternative, make sure that the compiler can
find the 'wais.h' and the linker can find the freeWAIS-sf libraries.

Here is a complete receipe which works for freeWAIS-sf-2.0.6* and
freeWAIS-sf-2.1.1:

 ,-----
 | cd .../freeWAIS-sf-2.1.1/ir
 | $WAIS/ir/mkinc  -I../ctype -I. ui.h cutil.h irext.h irfiles.h irsearch.h irtfiles.h weight.h docid.h > /tmp/wais.h
 | cd ..
 | cp */lib*.a /tmp
 | ar cq /tmp/libwais.a ctype/ctype.o
 | ranlib /tmp/libwais.a
 | ranlib /tmp/libftw.a
 | ranlib /tmp/libregexp.a
 `-----

Fix in Makefile.PL:
 ,-----
 | [pfeifer@charly:ext/Wais-new]{271} diff Makefile.PL.ls6 Makefile.PL
 | < $FW      = "/usr/local/ls6/src+data/src/freeWAIS-sf-2.0";
 | ---
 | > $FW      = "/usr/local/ls6/src+data/src/freeWAIS-sf-2.1.1";
 | 71c71,72
 | < 
 | ---
 | > $CFLAGS  = "-I/tmp";
 | > $LDFLAGS = "-L/tmp";
 `-----

If you used the freeWAIS-sf ctypes you might get lots of warnings. To
avoid them, generate an empty ctype.h

 ,-----
 | touch ctype.h
 `-----

and add -I. to the CFLAGS.

1,2) After that proceed as you would with most perl extensions.
===============================================================

Then run 'perl Makefile.PL'. For building a dynamic extension use 

        make; make test; make install

For building a perl with the wais extensions statically linked use

        make perl; make test_static;

See the documentation of MakeMaker for details. Run

        perldoc ExtUtils::MakeMaker

chat2.pl:
=========

        The standard chat2.pl does not work on SOLARIS (If you did not
        'use Socket.pm' before loading 'caht2.pl'). I have
        included a self-extracting chat2.pl which will serve a
        replacement for the distributions chat2.pl. It uses the socket
        module to set the parameters. On systems on which chat2.pl
        works, the replacement it will be some miliseconds faster ;-)

        5.002:
        You must remove the orignal chat2.pl since it will be in the
        include path before this chat2.pl after installation. 'make
        install' will ask you if it should be removed.  If you are
        paranoid, run diff on both versions. They are identical
        besides some socket constants. You can verify them in
        sockets.h if you want to.

        5.001
        Installation will overwrite chat2.pl anyway ;-)

        Trust me ;-)

Ulrich Pfeifer

