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.