2003/09/07 05:33:50
[org.ibex.core.git] / README
1 ==============================================================================
2 XWT README 
3               
4 ______________________________________________________________________________
5 Documentation
6
7 If you're new to XWT, you should read the documentation in the order
8 presented below:
9
10 - README [this file]
11         
12       Start here. Includes a map of all other documentation and a
13       description of the directory strucure
14
15 - The XWT home page [http://www.xwt.org/]       
16           
17 - The XWT tutorial [http://www.xwt.org/tutorial.html]
18
19       Gentle introduction to what XWT is, and how to write
20       .xwt's. Good for anybody who wants to write XWT applications.
21
22 - The XWT reference [http://www.xwt.org/reference.html]
23         
24       Precise, technical spec of exactly how XWT works. Assumes
25       familiarity with XWT (ie, you've read the tutorial). This is the
26       authoritative source for how an XWT engine should
27       behave.
28
29
30 ______________________________________________________________________________
31 Directory Structure
32
33 /       
34    AUTHORS                - people involved in developing XWT   
35    README                 - this file
36    COPYING                - copyright information for all files in this distro
37    CHANGES                - the changelot
38    TM                     - trademark information for XWT       
39    Makefile               - build file for gcc 3.3
40    next.build             - the build id of the next build to be generated
41
42    build/                 - anything generated by the build process winds up here
43          h/               - header files generated by gcjh
44          java/            - auto-generated .java source files
45          class/           - java .class files
46          xwar/            - generated xwars (mainly builtin.xwar)
47          Linux/           - Linux binaries
48          Win32/           - Win32 binaries
49          Carbon/          - MacOS X / Carbon binaries
50          Solaris/         - Solaris binaries
51
52    gcc/                   - build area for a custom copy of gcc3.3 and binutils2.13
53        Makefile           - will download, configure, compile, and private-install gcc3.3/binutils2.13
54        gcc.patch          - a patch to make boehm-gc work on Darwin (Mac OS X)
55    lib/                   - any third-party binary stuff needed during the build process
56        javago             - a copy of the javago post-compilation bytecode inliner
57        netscape.jar       - minimal set of classes required for compiling against Netcape's Applet interfaces
58        msjvm.jar          - minimal set of classes required for compiling against Microsoft's Applet interfaces
59        jump.jar           - the jump2 bytecode-to-palmos translator
60        libgcj-minimal.jar - a tiny portion of libgcj.jar; allows java->bytecode compilation without gcj
61    src/                   - all java source files and xwt sources go here
62        org/
63            bouncycastle/  - the BouncyCastle Crypto Library
64            mozilla/       - a copy of Rhino, the Mozilla JavaScript interpreter
65            ijg/           - as part of the build process, the Independent JPEG Group's JPEG implementation gets put here
66            xwt/builtin/   - .xwt's and .png's that are essential to bootstrapping the engine
67            xwt/plat/      - platform-specific code
68            xwt/util/      - misc utilities
69            xwt/js/        - the XWT JavaScript Interpreter
70
71
72 ______________________________________________________________________________
73 Build Requirements
74
75 **** STOP! ****
76
77 Compiling the engine is Really Hard.  Unless you're planning on
78 helping develop the engine, you probably don't need (or want) to
79 compile it yourself!
80
81 There are pre-built, digitally signed binaries on http://dist.xwt.org/
82 for every supported platform.  Please consider using those unless
83 you're absolutely certain you need to go through the trouble of trying
84 to get XWT to build.  You have been warned.  Please do not post to the
85 mailing lists asking for help building XWT unless you're genuinely
86 interested in helping to develop the engine.
87
88 Requirements:
89     - jdk 1.4+
90     - the standard set of POSIX utilities (wc, grep, find, make, etc)
91
92 Automatically-Downloaded components:
93     - gcj 3.3+
94     - binutils 2.13+
95     * If you already have a suitably configured gcj 3.3 and binutils
96       2.13+ you can set "gcc_path" to point at its installation
97       location; otherwise the Makefile will download, configure,
98       compile, and install gcc and binutils in xwt/gcc/
99
100 Optional components:
101     - fastjar (builds archives faster)
102     - jikes 1.18 (makes builds go much faster)
103     * If jikes is in your $PATH, the Makefile will find and use it.
104       Otherwise you can type 'make jikes' to download and build jikes.
105
106 Build Targets:
107     - compile: compiles all .java files into bin/*.class
108     - Win32:   Win95 OSR2 or later
109     - Linux:   Linux 2.2 or later
110     - Java2:   Any Java 1.2+ compliant JVM
111     - Darwin:  Any Darwin-based OS (Mac OS X, OpenDarwin) with an X11 server
112     - clean:   cleanup
113