Smaller README.
[yaz-moved-to-github.git] / README
diff --git a/README b/README
index 4a73ff8..bbcb0e4 100644 (file)
--- a/README
+++ b/README
@@ -1,95 +1,74 @@
 
- * Copyright (C) 1994, Index Data.
- * All rights reserved. See the file LICENSE for details.
- * Sebastian Hammer, Adam Dickmeiss
-
-Compilation and installation
-
-The primary output of the source here is the libyaz.a library, which
-contains support functions for implementing the server or client role
-of Z39.50/SR. Currently, the library is placed in a directory 'lib'
-which is one level *above* the distribution directory (yaz). This was
-initially done because the library is often used along with several
-other packages, and it was useful to gather the different libraries in
-a common place. If you don't like it, changing the 'LIBDIR' macro in
-the toplevel makefile should be sufficient. Obscurely, the header
-files are located in the include-directory *under* the yaz/ directory.
-
-The toplevel makefile also contains directions on how to enable Peter
-Furniss' XTIMOSI package. The package can be downloaded from
-ftp://pluto.ulcc.ac.uk/ulcc/thinosi/... (or something close to that).
-If you place the xtimosi directory on the same level as the yaz
-directory, and simply follow the directions in the toplevel YAZ
-makefile, the libmosi.a library from xtimosi should link in with no
-problems. The xtimosi library is needed to support a full OSI stack,
-but is *not* required to talk to American-style Z39.50 implementations
-over TCP/IP. Don't worry about compiling the test applications in the
-xtimosi package. Just do a "make libmosi.a", and do whatever is
-required to make the compilation complete on your local ystem.
-
-Two test-programs of interest are generated when you type 'make' at
-the top level. server/ztest and yazlib/cli. Ztest is a dummy database
-server which returns canned responses to all queries. It's good for
-verifying that the protocol works ok, and ztest.c shows a minimalistic
-implementation of the 'backend' interface.
-
-Cli is a linemode Z39.50 client. It supports a fair amount of the
-functionality of Z39.50v2/SR, but some things you need to enable by
-recompilation. Its primary purpose is to excersise the package, and
-verify that the protocol works OK. It can be started by typing
-
-cli tcp:<hostname>:<port>
-
-at the UNIX prompt, to connect to a Z39.50 server, or
-
-cli osi:[<tsel>'/']<hostname>:<port>
-
-to connect to an OSI SR target (this requires XTIMOSI). To connect to
-the DANBIB test target, you might use:
-
-cli osi:0103/find2.denet.dk:4500
-
-CLI supports CCL-queries, with the mapping between qualifiers and
-attribute values specified in the file default.bib in the working
-directory.
-
-The directories:
-
-doc     - Documentation. Check this out if you'd like to use the code.
-
-util    - Various little utility functions. Logging, memory debugging,
-       primitive ISO2709 presentation for the client, etc.
-
-odr     - Open Data Representation. This module implements the BER
-       encoding rules. Documentation is found in the files odr.man
-       and odr.txt.
-
-asn     - This module implements the Z39.50/SR protocol. The best way
-       to find out how it works is to look in the sample
-       client/server code in server/seshigh.c or yazlib/tst.c.
-
-yazlib  - This module primarily implements the transport transparency
-       stack (COMSTACK). The comstack implements a generic interface
-       for exchanging BER-encoded records over a network. It supports
-       the American mode of exchanging the records straight over
-       TCP/IP, and uses Peter Furniss' XTIMOSI package over RFC1006.
-       Look for documentation in the file comstack.man.
-
-server  - This is the implementation of the server frontend. It
-       It provides event-handling and server managament functions,
-       and calls the backend primitives (best documentation of these
-       is in the file include/backend.h).
-
-rfc1006 - Xtimosi requires an implementation of the OSI transport
-       with an XTI-based API. Some systems (HP and DEC, notably)
-       provide this. For others, we provide an implementation of the
-       RFC1006 protocol (which is what ISODE-based implementations
-       typically use). This module is not neeeded if you don't use
-       xtimosi.
-
-include - The various header files.
-
-makelib - This is a simple utility that gathers the libraries from the
-       previous modules into libyaz.a.
-
-lib     - The libraries. Primarily libyaz.a.
+Copyright (C) 1995-2001, Index Data ApS.
+See the file LICENSE for details.
+
+$Id: README,v 1.37 2001-10-25 12:28:07 adam Exp $
+
+The primary output of the source here is the YAZ library, which
+contains support functions for implementing the server or client
+role of Z39.50.
+
+Windows programmers: refer to the file windows.txt which describes how
+to build the software using Microsoft Visual C++.
+
+On Unix, GNU configure is used to configure YAZ and generate Makefiles.
+Type "./configure", then "make" to build YAZ.
+
+Note: If you are using the CVS snapshot of YAZ you must have autoconf,
+automake and libtool installed. Before running configure, create
+support files by running buildconf.sh in the top-level directory of YAZ.  
+
+In any case refer to the documentation in sub directory doc or read
+it online at http://www.indexdata.dk/yaz/
+
+File organisation:
+
+doc      Documentation.
+
+util     Various little utility functions. Logging, memory debugging,
+        primitive ISO 2709 presentation for the yaz-client, etc. You'll
+        find the ASN.1 Compiler for YAZ here as well (yaz-comp).
+
+odr      Open Data Representation. This module implements the BER
+        encoding rules.
+
+z39.50   codecs for the Z39.50 protocol. This module does the same job
+         as the old 'asn' module except that the source files are
+         auto-generated using an YAZ' ASN.1 Compiler (yaz-comp).
+
+zutil    This module implements a collection of Z39.50 utilities, such
+         as query parsing, etc.
+
+ill      codesc for the ISO ILL protocol.
+
+comstack This module implements the transport transparency
+        stack (COMSTACK). The comstack implements a generic interface
+        for exchanging BER-encoded records over a network. It supports
+        the 'American' mode of exchanging the records straight over
+        TCP/IP, and uses Peter Furniss' XTIMOSI package over RFC1006.
+        Look for documentation in the file comstack.man.
+
+zoom     An implementation of Mike Taylors Z39.50 Object Oriented
+         Model : ZOOM. If you'd like to build Z39.50 client applications
+         in C this may be good start. You'll find example programs in 
+         this directory too.
+
+server   This is the implementation of the server frontend. It
+        provides event-handling and server managament functions,
+        and calls the backend primitives (best documentation of these
+        is in the file include/yaz/backend.h).
+
+client   A demonstration client for testing the protocol. It's bug'n
+         ugly. But, it supports many features.
+
+ztest    A demonstration server that implements a backend.
+
+include/yaz The various header files.
+
+lib      The libraries. Primarily libyaz.la. The makefile gathers the
+         libraries from previous modules into libyaz.la.
+
+To get more information or assistance, send mail to yaz-help@indexdata.dk.
+Even better, sign on to the YAZ mailing list here:
+http://www.indexdata.dk/mailman/listinfo/yazlist
+