pjs/js2
rogerl%netscape.com 215390226f More long/ulong/float work. 2002-10-07 06:34:43 +00:00
..
semantics Fixed bug 2002-09-25 23:54:34 +00:00
src More long/ulong/float work. 2002-10-07 06:34:43 +00:00
tests Exec milestone. 2002-08-20 06:02:27 +00:00
tools Bug 106386 rid source of misspellings 2002-03-19 04:30:17 +00:00
AUTHORS
COPYING Bug 106386 rid source of misspellings 2002-03-19 04:30:17 +00:00
ChangeLog
INSTALL
Makefile.am
NEWS
README Correcting mistake in location of DikDik executable on Windows. Whitespace cleanup. 2002-03-30 00:14:18 +00:00
TODO
aclocal.m4
common.mk Added regexp directory as include path. 2002-01-17 21:12:59 +00:00
config.h.in
configure
configure.in
install-sh
missing
mkinstalldirs

README

Build instructions from pschwartau@netscape.com as of 02 Dec 2001 ...
Updated - rogerl@netscape.com 10 Jan 2002
Updated - pschwartau@netscape.com 29 Mar 2002



Building JS2 on WINNT:
---------------------------------------------------------------------------------------------
[/d/JS_2] cvs -z3 co mozilla/js2
          cvs -z3 co mozilla/js/src/fdlibm

Compiling in Visual C++:

Workspace:    D:\JS_2\mozilla\js2\src\winbuild\dikdik.dsw

Project Files:   D:\JS_2\mozilla\js2\src\winbuild\DikDik.dsp
                 D:\JS_2\mozilla\js2\tests\cpp\winbuild\DikDik_shell.dsp  <---------- active project
                 D:\JS_2\mozilla\js2\src\winbuild\fdlibm.dsp


RUNNING THE JS2 SHELL AFTER YOU'VE BUILT IT:
cd  (path to)/mozilla/js2/tests/cpp/winbuild/Debug
[(path to)/mozilla/js2/tests/cpp/winbuild/Debug] ./DikDik_shell.exe



Building JS2 on LINUX:
---------------------------------------------------------------------------------------------
[/d/JS_2] cvs -z3 co mozilla/js2
          cvs -z3 co mozilla/js/src/fdlibm

[/d/JS_2] cd mozilla/js2

[/d/JS_2/mozilla/js2] automake    <--- FIRST TIME ONLY
[/d/JS_2/mozilla/js2] autoconf    <--- FIRST TIME ONLY
[/d/JS_2/mozilla/js2] ./configure --enable-debug    <--- FIRST TIME ONLY
[/d/JS_2/mozilla/js2] make


RUNNING THE JS2 SHELL AFTER YOU'VE BUILT IT:
cd   (path to)/mozilla/js2/tests/cpp
[ (path to)/mozilla/js2/tests/cpp] ./dikdik



Building JS2 on MAC 9.1
---------------------------------------------------------------------------------------------
Get updated CodeWarrior Pro 7 tools !

Open (path to):mozilla:js2:tests:cpp:macbuild:js2_shell.mcp and build it.
There is also (path to ):mozilla:js2:tests:cpp:macbuild:parser_test.mcp, if you just want to try out the full parser
without getting complaints about unimplemented features from the back end.


RUNNING THE JS2 SHELL AFTER YOU'VE BUILT IT:
cd   (path to):mozilla:js2:tests:cpp:macbuild
[ (path to):mozilla:js2:tests:cpp:macbuild] ./js2_shell



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


Files:

bytecodegen.[cpp|h]
    - Walks parse tree, emit byte code.

collector.[cpp|h]
    - GC

exception.[cpp|h]
    - exception object thrown internally

fdlibm_ns.cpp
    - wraps fdlibm in a namespace

formatter.cpp formatter.h
    - "Formatter" class, iostream like wrapper around stdio.

hash.cpp hash.h
    - a hash

js2execution.[cpp|h]
    - interpreter loop & runtime support routines

js2runtime.[cpp|h]
    - pre-bytecode passes over parse tree, build JSType objects

jsarray.[cpp|h]
jsdate.[cpp|h]
jsmath.[cpp|h]
jsstring.[cpp|h]
    - implementations of ECMAScript built-ins

lexer.cpp lexer.h
    - main lexer.

mem.cpp mem.h
    - zone, arena, and pool classes for memory management.

numerics.cpp numerics.h
    - numbers and stuff.

parser.cpp parser.h
    - main parser source.
        tables in parser.h:
        enum ExprNode::Kind; types of expressions
        enum StmtNode::Kind; types of statements

prmjtime.[cpp|h]
    - [Mac only?] OS interface routines for jsdate

reader.cpp reader.h
    - "Reader" class, feeds source to the parser/lexer.

regexpwrapper.cpp
    - cpp front to regexp engine in regexp/regexp.[ch]

stlcfg.h
    - stupid stl tricks

strings.[cpp|h]
    - unicode string support

systemtypes.h
    - basic typedefs.

token.cpp token.h
    - token class.

utilities.cpp utilities.h
    - random things.

world.cpp world.h
    - the whole world.