gecko-dev/js2/README

137 lines
3.4 KiB
Plaintext

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.