gecko-dev/js/jsdj/build
..
images
README
gen_date.awk
gen_dbg.awk
jsdj.mak
mk.bat
mk_ifcui_std.bat
mk_ifcui_std_fast_jar.bat
mk_ifcui_std_fast_jar_with_rhino.bat
mk_ifcui_std_with_rhino.bat

README

/* jband - 09/14/98 -  */

The build system here currently supports only Microsoft nmake (I use the one
from MSDEV 4.2). It assumes that Symantec Visual Cafe is installed (i.e. it uses
sj.exe), and also uses gawk. I mostly use the 4NT shell, but I think that
everything still works with the default NT shell.

This system can build all the Java code here. It can also do jar packaging (with
dependency checks to assure that you have the right stuff) and produce javadocs.

Netscape's JavaScript in Java engine (known as Rhino) is not currently available
to the public. The flag 'NO_RHINO=1' is necessary for many of the makefile
targets when used outside of Netscape.

There is code here to also build a Corba/iiop connection for remote debugging to
a Netscape internal version of Enterprise Server 3.51. This is not fully
functional on the server side. You should normally use the NO_CORBA=1 build
flag. If you want to play with this stuff then you need an install of ES3.51 and
you need to set the ES3_ROOT environment variable to point to that install.
(e.g. mine is 'set ES3_ROOT=E:\Netscape\SuiteSpot'. NOTE: the code in
com.netscape.jsdebugging.remote.corba is *generated* in an 'interesting' build
system in js/jsd/corba/src -- it would not be a good idea to modify this
generated code.

'nmake -f jsdj.mak help' will display a list of possible targets (might not be
up to date :).

'nmake -f jsdj.mak all NO_RHINO=1 NO_CORBA=1' will build everything.

There are a few .bat files for convenience to build the targets I often build.

'mk_ifcui_std_with_rhino.bat' will build the whole thing (except Corba parts) 
and ASSUMEs that you want Rhino support and that you have already built Rhino
in the 'correct' relative directory.

The directory structure used at Netscape for Rhino is:

    someroot/ns/js/rhino
    someroot/mozilla/js/src
    someroot/mozilla/js/jsd
    someroot/mozilla/js/jsdj

where 'someroot' can be anything. The salient point is that from the jsdj/build
directory the relative path to the rhino classes is: 

.\..\..\..\..\ns\js\rhino

This can be adjusted by hacking the 'RHINO_CLASSES' var near the top of 
jsdj.mak.

------------------------
FOR THE JS 1.4 RELEASE:

Rhino (JavaScript for Java) is packaged as 'jsjava.jar'. It unzips so that the 
root directory is named 'jsjava'. 

To simplify building js/jsdj for this release jsdj.mak has been modified to 
include:

    RHINO_CLASSROOT = $(BUILD_DIR)\..\..\jsjava
    RHINO_CLASSES = $(RHINO_CLASSROOT)\js.jar;$(RHINO_CLASSROOT)\jsdebug.jar

This supports unzipping jsjava.jar into mozilla/js for a directory tree like:

    someroot/mozilla/js/jsjava
    someroot/mozilla/js/src
    someroot/mozilla/js/jsd
    someroot/mozilla/js/jsdj

mk_ifcui_std_with_rhino.bat can then be run from mozilla/js/jsdj/build to build
all of js/jsdj including Rhino support.