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
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
list as of 20-Mar-2002:
Win32 - Windows 95 / NT4 or later
- Java2 - Any Java 1.2+ compliant JVM
+ Java12 - Any Java 1.2+ compliant JVM
Valid <target>s are:
______________________________________________________________________________
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:
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=
______________________________________________________________________________
+Native-Code "ant"
+
+** THIS DOESN'T WORK YET **
+
+Ant takes a long time to start up, mainly because it has to load a
+JVM. If you compile ant to native code using GCJ, it will load much
+more quickly. So far, this only works on Linux.
+
+ mkdir /tmp/ant
+ cd /tmp/ant
+ jar xvf ~/xwt/lib/ant.jar
+ for A in `find * -name \*.properties -or -name \*.txt -or -name \*.mf`
+ do gcj -c --resource $A $A -o $A.o
+ done
+ CLASSPATH= gcj --main=org.apache.tools.ant.Main \
+ `find . -name \*.class -or -name \*.o` -o ant
+ mv ant ~/xwt/ant
+
+
+______________________________________________________________________________
inet_addr patch
Index: java/net/natInetAddress.cc
______________________________________________________________________________
+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