2002/11/26 21:29:19
[org.ibex.core.git] / README
diff --git a/README b/README
index e3ca552..bca8015 100644 (file)
--- a/README
+++ b/README
@@ -42,6 +42,7 @@ ______________________________________________________________________________
 Directory Structure
 
 /
+   AUTHORS               - people involved in developing XWT
    README                - this file
    COPYING               - copyright information for all files in this distro
    TM                    - trademark information for XWT
@@ -54,33 +55,14 @@ Directory Structure
        ant.jar           - the Jakarta project's ANT build tool, including Sun's XML parser
        netscape.jar      - minimal set of classes required for compiling against Netcape's Applet interfaces
        msjvm.jar         - minimal set of classes required for compiling against Microsoft's Applet interfaces
-       signtool          - the Netscape Object Signing tool, for signing applets
-       signcode.exe      - the Microsoft ActiveX Signing tool, for signing ActiveX controls
-       guidgen.exe       - the Microsoft GUID generator, for generating OLE clsid's
-       cabarc.exe        - the Microsoft CAB file generator, for creating .cab archives
        javasrc.jar       - javasrc, a tool for generating hyperlinked, syntax-colored html from java code
 
    src/                  - all java source files and xwt sources go here
-       jazz/             - jazzlib, which XWT currently uses since libgcj's java.util.zip.* is broken
-
        org/
            bouncycastle/ - the BouncyCastle Crypto Library
-           gimp/tigert/  - some icons used in XWT Mail, by Tigert Labs
            mozilla/      - a copy of Rhino, the Mozilla JavaScript interpreter
-
-           xwt/          - the source code for the XWT engine
-               demo/     - the XWT widget sampler
-               chess/    - XWT Chess
-               fonts/    - some XWF fonts
-               mail/     - XWT Mail
-               plat/     - platform abstraction classes for XWT
-               tasks/    - source code for some ANT tasks used in the XWT build process
-               themes/   - some XWT themes
-               util/     - some helper classes
-
-       xwt/standard/     - the XWT standard library
-
-
+           xwt/builtin/  - .xwt's and .png's that are essential to bootstrapping the engine
+           xwt/plat/     - platform-specific code
 
 ______________________________________________________________________________
 Build Targets
@@ -110,6 +92,10 @@ The following targets do not require that you specify a platform:
 ______________________________________________________________________________
 Building
 
+- WARNING: Jikes 1.16 has a bug which will cause it to generate
+  corrupt .class files; you must downgrade to 1.15 in order to compile
+  XWT.
+
 - If you only want to build the JVM version of XWT, delete these three
   files:
 
@@ -122,18 +108,19 @@ Building
 
 
 - The Win32 native version of XWT can ONLY be built with the very
-  latest pre-release of GCC 3.1. You can follow the steps below to
+  latest pre-release of GCC 3.3. You can follow the steps below to
   create a cross-compiler from linux to Win32.
 
-  If the steps below fail, try adding "-D 20-Mar-2002" to the cvs
-  checkout line; 20-Mar-2002 was the last date on which the compiler
+  If the steps below fail, try adding "-D 11-Oct-2002" to the cvs
+  checkout line; 11-Oct-2002 was the last date on which the compiler
   was known to work. Please don't do this unless you have attempted
   without it, however, since it puts additional strain on the gcc cvs
   server.
 
-  There are also two patches at the end of this file which can be
+  There are also three patches at the end of this file which can be
   applied to the branch -- the first fixes an inet_addr() bug on
-  Win32, the second enables stack traces.
+  Win32, the second fixes a garbage collector bug, and the third
+  enables stack traces.
 
   # create an install area
   export CLASSPATH=
@@ -173,15 +160,15 @@ Building
                    --enable-gc-type=boehm \
                    --disable-shared \
                    --enable-threads=win32 \
-                   --disable-hash-synchronization \
+                   --enable-hash-synchronization \
                    --disable-interpreter \
                    --enable-sjlj-exceptions
   
   make
   sudo make install
 
-- The Linux native version is still experimental. You should configure
-  your compiler with:
+- The Linux native version can also be built with the latest
+  prerelease of gcj 3.3. You should configure your compiler with:
 
   ../gcc/configure \
                    --prefix=$PREFIX \
@@ -252,6 +239,31 @@ diff -u -r1.3.8.5 win32.h
 
 
 ______________________________________________________________________________
+GC patch
+
+Index: win32_threads.c
+===================================================================
+RCS file: /cvs/gcc/gcc/boehm-gc/win32_threads.c,v
+retrieving revision 1.9.2.2
+diff -u -r1.9.2.2 win32_threads.c
+--- win32_threads.c     29 Jun 2002 17:29:51 -0000      1.9.2.2
++++ win32_threads.c     2 Jul 2002 18:10:02 -0000
+@@ -134,10 +134,7 @@
+                                (LPCONTEXT)&thread_table[i].context))
+          ABORT("GetThreadContext failed");
+ #      ifdef I386
+-         if (thread_table[i].context.Esp >= (DWORD)thread_table[i].stack
+-             || thread_table[i].context.Esp < (DWORD)bottom)
+-             ABORT("Thread stack pointer out of range");
+-         GC_push_one ((word) thread_table[i].context.Edi);
++             GC_push_one ((word) thread_table[i].context.Edi);
+          GC_push_one ((word) thread_table[i].context.Esi);
+          GC_push_one ((word) thread_table[i].context.Ebp);
+          GC_push_one ((word) thread_table[i].context.Ebx);
+
+
+
+______________________________________________________________________________
 Throwable.printStackTrace() patch
 
 Index: Class.h