======================================================================
                    NETSCAPE DIRECTORY SDK FOR JAVA: 
                         BUILD INSTRUCTIONS
                     Last updated: August 2, 1999
======================================================================
For information on the Netscape Directory SDK source release,
see http://www.mozilla.org/directory/

Note the following:
- The LDAP filter classes (in the netscape.ldap.util package)
  use the OROMatcher(tm) regular expression package (from ORO Java Software).
  This is not provided with the source code release.  If you want this
  package, you need to get it from ORO, Inc.  (For details, see the 
  ORO, Inc. home page at http://www.oroinc.com/.) 


Unix/Linux Build Instructions
-----------------------------

System Requirements:
    32MB of RAM, 128MB of swap, recommended 64MB of RAM.

Tool Requirements:
    Sun Microsystems Java Development Kit (JDK) 1.1.7
      (or a more recent version)
    GNU make 3.74 or a more recent version

Instructions:
1. Uncompress and extract the source files by entering the
   following command (or your preferred variant of this command):

   gzip -dc <filename>.tar.gz | tar -xvf -

2. Set and unset the following environment variables.

   In csh/tcsh: 
      setenv JAVA_HOME "<directory where the JDK is installed>"
        For example:
        setenv JAVA_HOME "/usr/local/jdk1.1.7"
      setenv CLASSPATH "<location of the JDK classes.zip file>"
        For example:
        setenv CLASSPATH "/usr/local/jdk1.1.7/lib/classes.zip"

   In sh/bash/ksh:
      JAVA_HOME="<directory where the JDK is installed>"
      CLASSPATH="<location of the JDK classes.zip file>"
      export JAVA_HOME CLASSPATH

3. Build the LDAP Java classes by entering the following commands:

     cd mozilla/directory/java-sdk
     gmake -f ldap.mk

   If you also want the classes packaged in a JAR file,
   specify "basepackage" as the target:

     gmake -f ldap.mk basepackage

   To generate javadoc specify "doc" as the target:

     gmake -f ldap.mk doc

   Note that if you are using JDK1.1, javadoc images will be missing
   and you'll need to copy those images from somewhere else into 
   mozilla/directory/java-sdk/dist/doc/images. If you are using JDK1.2
   you do not need to do that.

   The SDK will be built and copied into the following directories:
       mozilla/directory/java-sdk/dist/classes - class files and manifest file
       mozilla/directory/java-sdk/dist/packages - ldapjdk.jar JAR file 
         (if you've specified "basepackage" as the target)
       mozilla/directory/java-sdk/dist/doc - ldapjdk javadoc
         (if you've specified "doc" as the target)

4. Build the JNDI LDAP Service Provider classes by entering the following commands:

     gmake -f ldapsp.mk

   If you also want the classes packaged in a JAR file,
   specify "basepackage" as the target:

     gmake -f ldapsp.mk basepackage

   To generate javadoc specify "doc" as the target:

     gmake -f ldapsp.mk doc

   The SDK will be built and copied into the following directories:
       mozilla/directory/java-sdk/dist/classes - class files
       mozilla/directory/java-sdk/dist/packages - ldapsp.jar JAR file 
         (if you've specified "basepackage" as the target)
       mozilla/directory/java-sdk/dist/doc/ldapsp - ldapsp controls' javadoc
         (if you've specified "doc" as the target)

   The JNDI LDAP Service Provider depends on the LDAP Java classes, so you 
   always must build the LDAP Java first. For more information on JNDI see
   ldapsp/Readme.html and http://java.sun.com/products/jndi/index.html


Windows Build Instructions
--------------------------

System Requirements:
    Windows NT 3.51 or 4.0 (4.0 preferred).

Tool Requirements:
    Sun Microsystems Java Development Kit (JDK) 1.1.7 
      (or a more recent version)
    GNU Tools for Windows (you can find these on the Internet). 
      Specifically, you'll need: 
        cp.exe
        rm.exe
      Here are some sample download sites to find these: 
        Cygnus (http://www.cygnus.com/misc/gnu-win32)
        GNU (http://www.gnu.org/order/ftp.html)
        MIT (ftp://prep.ai.mit.edu/pub/gnu)
      Netscape uses internally modified versions of the following tools: 
        gmake.exe
        shmsdos.exe
        uname.exe
      You can download them from http://www.mozilla.org/download-mozilla.html
      (click the Windows Build Tools link).  When you unzip the file, the
      tools will be located in the windows\bin\x86 directory. 

    All of these tools need to be put in your path.

Extracting the Source Files:
    The source files for the Directory SDK are zipped in a file.  
    When unzipping the file, make sure to specify that you want to 
    preserve the directory structure.  For example,
    make sure that "Use Folder Names" is checked.

Instructions:
    NOTE: Make sure to run the commands from a standard Windows NT 
    command prompt.  Although you may be able to use other shells 
    to build the SDK, you may need to adjust the makefiles for 
    the shell that you are using.
1. Set the following environment variables (within the command session, 
   either manually or via a script), or within the system environment 
   through the Control Panel | System control panel): 
 
       set MOZ_SRC=(top of your source tree, drive letter and path. 
         For example, set MOZ_SRC=d:\mozilla_src, if the mozilla 
         directory is at d:\mozilla_src\mozilla.)
       set JAVA_HOME=(directory where the JDK is installed)
         For example:
         set JAVA_HOME=D:\jdk1.1.7
       set CLASSPATH=(location of the JDK classes.zip file)
         For example:
         set CLASSPATH=D:\jdk1.1.7\lib\classes.zip

   In addition, make sure to set your PATH environment variable to
   include the tools that you have downloaded. 

2. Enter the following commands to build the LDAP Java classes: 
       cd mozilla\directory\java-sdk 
       gmake -f ldap.mk

   If you also want the classes packaged in a JAR file,
   specify "basepackage" as the target:

       gmake -f ldap.mk basepackage

   To generate javadoc specify "doc" as the target:

     gmake -f ldap.mk doc

   Note that if you are using JDK1.1, javadoc images will be missing
   and you'll need to copy those images from somewhere else into 
   mozilla\directory\java-sdk\dist\doc\images. If you are using JDK1.2
   you do not need to do that.

   The SDK will be built and copied into the following directories:
       mozilla\directory\java-sdk\dist\classes - class files and manifest file
       mozilla\directory\java-sdk\dist\packages - ldapjdk.jar JAR file 
         (if you've specified "basepackage" as the target)
       mozilla\directory\java-sdk\dist\doc - ldapjdk javadoc
         (if you've specified "doc" as the target)


3. Build the JNDI LDAP Service Provider classes by entering the following commands:

     gmake -f ldapsp.mk

   If you also want the classes packaged in a JAR file,
   specify "basepackage" as the target:

     gmake -f ldapsp.mk basepackage

   To generate javadoc specify "doc" as the target:

     gmake -f ldapsp.mk doc

   The SDK will be built and copied into the following directories:
       mozilla/directory/java-sdk/dist/classes - class files
       mozilla/directory/java-sdk/dist/packages - ldapsp.jar JAR file 
         (if you've specified "basepackage" as the target)
       mozilla\directory\java-sdk\dist\doc\ldapsp - ldapsp controls' javadoc
         (if you've specified "doc" as the target)

   The JNDI LDAP Service Provider depends on the LDAP Java classes, so you 
   always must build the LDAP Java first. For more information on JNDI see
   ldapsp/Readme.html and http://java.sun.com/products/jndi/index.html

--------------------------------------------------------
Copyright (c) 1999 Netscape Communications Corporation.
(http://home.netscape.com/misc/contact_info.html)

