******************************************************************************
INSTALL - RPC
******************************************************************************


==============================================================================
The RPC package
==============================================================================

------------------------------------------------------------------------------
Prerequisites
------------------------------------------------------------------------------

RPC needs O'Caml >= 3.08 and the equeue package (see the equeue [1] page). The 
installation procedure defined in the Makefile requires findlib [2] to work [3]
. 

In order to compile the new HTTP tunnel (rpc-over-http), you also need the 
packages netstring [4] and netclient [5]. Important: You need the netclient 
version that is flagged as "experimental" (0.90).

If you want support for the AUTH_DH (alias AUTH_DES) authentication style you 
need also cryptgps [6]. Furthermore, your operating system must provide the 
AUTH_DH infrastructure (keyserv and tools).

------------------------------------------------------------------------------
Configuration
------------------------------------------------------------------------------

You can configure rpc by calling the configure script: 

./configure

The script prints a summary of the effective options. You can change settings 
by passing arguments to the script, see 

./configure -help

for a list of arguments. 

------------------------------------------------------------------------------
Compilation
------------------------------------------------------------------------------

The Makefile defines the following goals: 

-  make all
   compiles with the bytecode compiler and creates the archive rpc.cma, and the 
   executable generator/ocamlrpcgen.
   
-  make opt
   compiles with the native compiler and creates the archive rpc.cmxa.
   
------------------------------------------------------------------------------
Installation
------------------------------------------------------------------------------

The Makefile defines the following goals:

-  make install
   installs the bytecode archive, the interface definitions, and if present, 
   the native archive in the directory suggested by findlib (or the directory 
   set by OCAMLFIND_DESTDIR). Moreover, the executable ocamlrpcgen is installed 
   in the directory BIN. 
   
-  make uninstall
   removes the package
   
------------------------------------------------------------------------------
Linking RPC with findlib
------------------------------------------------------------------------------

The command 

ocamlfind ocamlc ... -package rpc ... -linkpkg ...

links the necessary archives of RPC into the executable to build. (Note: This 
does not work with ocamlfind-mini!) 

------------------------------------------------------------------------------
Linking RPC without findlib
------------------------------------------------------------------------------

The command 

ocamlc ... -I /dir/of/rpc -I /dir/of/equeue equeue.cma rpc.cma ...

links the necessary archives of RPC into the executable to build.


--------------------------

[1]   see http://www.ocaml-programming.de/packages/documentation/equeue/

[2]   see http://www.ocaml-programming.de/packages/documentation/findlib/

[3]   Findlib is a package manager, see the file ABOUT-FINDLIB.

[4]   see http://www.ocaml-programming.de/packages/documentation/netstring

[5]   see http://www.ocaml-programming.de/packages/documentation/

[6]   see http://www.ocaml-programming.de/packages/documentation/



