X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=README;h=fcc754ecd8cf48578ab2e0cb1c998c6c44f38204;hb=10cf2f2deea2c3ec7df16263969bf24a24ce42c1;hp=9a24a9279849108644aaad22c5f7666fa7fd737f;hpb=c581c1e52d7cb449d4d48b2336b5f2b069d0568a;p=org.ibex.core.git diff --git a/README b/README index 9a24a92..fcc754e 100644 --- a/README +++ b/README @@ -1,9 +1,10 @@ ============================================================================== XWT README + ______________________________________________________________________________ Documentation - + If you're new to XWT, you should read the documentation in the order presented below: @@ -26,180 +27,55 @@ presented below: 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 - - 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 - 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 + AUTHORS - people involved in developing XWT + README - this file + COPYING - copyright information for all files in this distro + TM - trademark information for XWT + Makefile - build file for gcc 3.3 + next.build - the build id of the next build to be generated + bin/ - all binary stuff generated by xwt builds + gcc/ - build area for a custom copy of gcc3.3 and binutils2.13 + Makefile - will download, configure, compile, and private-install gcc3.3/binutils2.13 + lib/ - any third-party binary stuff needed during the build process + javago - a copy of the javago post-compilation bytecode inliner + 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 + jump.jar - the jump2 bytecode-to-palmos translator + libgcj-minimal.jar - a tiny portion of libgcj.jar; allows java->bytecode compilation without gcj + src/ - all java source files and xwt sources go here org/ - bouncycastle/ - the BouncyCastle Crypto Library - mozilla/ - a copy of Rhino, the Mozilla JavaScript interpreter - xwt/builtin/ - .xwt's and .png's that are essential to bootstrapping the engine - xwt/plat/ - platform-specific code + bouncycastle/ - the BouncyCastle Crypto Library + mozilla/ - a copy of Rhino, the Mozilla JavaScript interpreter + xwt/builtin/ - .xwt's and .png's that are essential to bootstrapping the engine + xwt/plat/ - platform-specific code ______________________________________________________________________________ -Build Targets - - *** XWT now requires JDK 1.4 or later to build *** - -To build, make sure your $JAVA_HOME points to jdk1.4 or later, and type +Build Targets and Requirements - ./ant -Dplat= +Build requirements: +- jdk 1.4+ +- jikes (warning: Jikes 1.16 has a fatal bug; use 1.15) +- gcj 3.3+ +- binutils 2.13+ +- fastjar -The name of any class in org.xwt.plat is a valid ; here is a -list as of 20-Mar-2002: +If you already have a suitably configured gcj 3.3 and binutils 2.13+ +you can set "gcc_path" to point at its installation location; +otherwise the Makefile will download, configure, compile, and install +gcc and binutils. - Win32 - Windows 95 / NT4 or later - Java12 - Any Java 1.2+ compliant JVM +Public build targets: -Valid s are: - - build - builds a binary for the selected platform - -The following targets do not require that you specify a platform: - - compile - compiles all .java's to .class'es - clean - empties bin/ and compiled binaries in dist/ - - -______________________________________________________________________________ -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: - - xwt/src/org/xwt/plat/Win32.java - xwt/src/org/xwt/plat/POSIX.java - xwt/src/org/xwt/plat/GCJ.java - - 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 an inet_addr() bug on - Win32, the second fixes a garbage collector bug, and the third - enables stack traces. - - # 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://telia.dl.sourceforge.net/sourceforge/mingw/MinGW-1.1.tar.gz - sudo tar -C $PREFIX/i686-pc-mingw32/ -xvzf 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 - - -______________________________________________________________________________ -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 + compile - compiles all .java files into bin/*.class + Win32 - Win95 or later (bin-Win32/xwt.exe) + Linux - Linux 2.2 or later (bin-Linux/xwt.linux) + Java2 - Any Java 1.2+ compliant JVM + clean - cleanup ______________________________________________________________________________ @@ -240,31 +116,6 @@ 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