==============================================================================
XWT README
-
+
______________________________________________________________________________
Documentation
authoritative source for how an XWT engine should
behave.
-- Javadoc [http://www.xwt.org/javadoc/]
-
- The org.xwt.* packages are all documented with javadoc. You
- should start by reading the package summary for org.xwt.Main,
- and work your way around from there.
-
-- Javasrc [http://www.xwt.org/javasrc]
-
- Javasrc generates a syntax-colored and hyperlinked html copy of
- the XWT source code.
-
______________________________________________________________________________
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 - a unix shell script to launch ant
bin/ - all binary stuff generated by ant builds
+
build.xml - ANT build file
+ Makefile - build file for gcc 3.3
lib/ - any third-party binary stuff needed during the build process
javago - a copy of the javago post-compilation bytecode inliner
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:
This will allow XWT to build correctly *without* gcc 3.1. Otherwise,
you must compile and install gcc 3.1.
-
- 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
- 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
- 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 three patches at the end of this file which can be
- applied to the branch -- the first fixes a bug related to
- GetFullPathName, the second disables Win32 file locking (so you can
- view XWT's log files while it is running), and the third makes
- Throwable.printStackTrace() work.
-
- # create an install area
- export CLASSPATH=
- export PREFIX=/usr/local/gcc
- export CC=/usr/bin/gcc
-
- sudo rm -rf $PREFIX
- export PATH=$PATH:$PREFIX/bin
- sudo mkdir $PREFIX
- sudo mkdir $PREFIX/i686-pc-mingw32/
-
- wget http://prdownloads.sourceforge.net/mingw/MinGW-1.1.tar.gz
- sudo tar -C $PREFIX/i686-pc-mingw32/ -xvzf ~/mingw-gcj/MinGW-1.1.tar.gz
-
- wget ftp://ftp.gnu.org/gnu/binutils/binutils-2.11.2.tar.gz
- tar xzvf binutils-2.11.2.tar.gz
- cd binutils-2.11.2
- ./configure --target=i686-pc-mingw32 --prefix=$PREFIX
- make
- sudo make install
- cd ..
-
- cvs -d :pserver:anoncvs@subversions.gnu.org:/cvsroot/gcc co -rgcc-3_1-branch gcc
- mkdir bin
- cd bin
- ../gcc/configure \
- --prefix=$PREFIX \
- --target=i686-pc-mingw32 \
- --host=i686-pc-linux-gnu \
- --enable-languages=c,c++,java \
- --disable-nls \
- --with-as=$PREFIX/i686-pc-mingw32/bin/as \
- --with-ld=$PREFIX/i686-pc-mingw32/bin/ld \
- --with-gnu-ld \
- --with-gnu-as \
- --enable-libgcj \
- --enable-gc-type=boehm \
- --disable-shared \
- --enable-threads=win32 \
- --disable-hash-synchronization \
- --disable-interpreter \
- --enable-sjlj-exceptions
-
- make
- sudo make install
-
-- The Linux native version is still experimental. You should configure
- your compiler with:
-
- ../gcc/configure \
- --prefix=$PREFIX \
- --enable-languages=c,c++,java \
- --disable-nls \
- --enable-libgcj \
- --enable-threads=posix \
- --enable-hash-synchronization \
- --enable-static \
- --disable-interpreter
+ latest pre-release of GCC 3.3. Run "make gcc-lin" to build a gcc
+ 3.3 that targets Linux; run "make gcc-win" to build a gcc 3.3 that
+ targets Win32.
+
+
+
+______________________________________________________________________________
+inet_addr patch
+
+Index: java/net/natInetAddress.cc
+===================================================================
+RCS file: /cvs/gcc/gcc/libjava/java/net/natInetAddress.cc,v
+retrieving revision 1.18.18.1
+diff -u -r1.18.18.1 natInetAddress.cc
+--- java/net/natInetAddress.cc 4 Mar 2002 20:02:19 -0000 1.18.18.1
++++ java/net/natInetAddress.cc 27 May 2002 22:54:40 -0000
+@@ -9,6 +9,7 @@
+ details. */
+
+ #include <config.h>
++#include <platform.h>
+
+ #ifdef WIN32
+
+Index: include/win32.h
+===================================================================
+RCS file: /cvs/gcc/gcc/libjava/include/win32.h,v
+retrieving revision 1.3.8.5
+diff -u -r1.3.8.5 win32.h
+--- include/win32.h 24 Apr 2002 01:04:45 -0000 1.3.8.5
++++ include/win32.h 27 May 2002 22:54:40 -0000
+@@ -35,4 +35,8 @@
+ ARRAY and return the exact number of values stored. */
+ extern int backtrace (void **__array, int __size);
+
++// configure cannot correctly detect inet_addr due to Win32's
++// oddball header naming scheme
++#define HAVE_INET_ADDR
++
+ #endif /* __JV_WIN32_H__ */
+
______________________________________________________________________________