X-Git-Url: http://git.megacz.com/?p=org.ibex.core.git;a=blobdiff_plain;f=README;h=e3ca5528542d7f454322afb718cec86003edbd8a;hp=f06e7f5077fbfb179db61160d34e3c5fa113b205;hb=96ea01148ebad132c9b3ba20380652e49a75d8df;hpb=7bba4af5d54cef6c873309daf57b917868fc13e2 diff --git a/README b/README index f06e7f5..e3ca552 100644 --- a/README +++ b/README @@ -85,19 +85,17 @@ Directory Structure ______________________________________________________________________________ Build Targets -To build, make sure your $JAVA_HOME points to jdk1.2 or later, and type + *** XWT now requires JDK 1.4 or later to build *** - ./ant -Dplat= +To build, make sure your $JAVA_HOME points to jdk1.4 or later, and type -If you're using jdk1.2 or jdk1.3 to compile, you should remove -src/org/xwt/plat/Java14.java, since it can only be compiled with -jdk1.4+. + ./ant -Dplat= The name of any class in org.xwt.plat is a valid ; here is a 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 s are: @@ -112,10 +110,11 @@ The following targets do not require that you specify a platform: ______________________________________________________________________________ Building -- If you only want to build the JVM version of XWT, delete these two +- 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, @@ -132,11 +131,9 @@ Building 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. + There are also two 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. # create an install area export CLASSPATH= @@ -148,8 +145,8 @@ Building 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 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 @@ -198,45 +195,59 @@ Building ______________________________________________________________________________ -GetFullPathName patch +Native-Code "ant" -Index: natFileWin32.cc -=================================================================== -RCS file: /cvs/gcc/gcc/libjava/java/io/natFileWin32.cc,v -retrieving revision 1.9.2.1 -diff -u -r1.9.2.1 natFileWin32.cc ---- natFileWin32.cc 16 Apr 2002 15:35:20 -0000 1.9.2.1 -+++ natFileWin32.cc 14 May 2002 01:57:39 -0000 -@@ -106,7 +106,7 @@ - LPTSTR unused; - char buf2[MAX_PATH]; - if(!GetFullPathName(buf, MAX_PATH, buf2, &unused)) -- throw new IOException (JvNewStringLatin1 ("GetFullPathName failed")); -+ return NULL; - - // FIXME: what encoding to assume for file names? This affects many - // calls. +** 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 ______________________________________________________________________________ -File Locking Patch +inet_addr patch -Index: java/io/natFileDescriptorWin32.cc +Index: java/net/natInetAddress.cc =================================================================== -RCS file: /cvs/gcc/gcc/libjava/java/io/natFileDescriptorWin32.cc,v -retrieving revision 1.5.2.2 -diff -u -r1.5.2.2 natFileDescriptorWin32.cc ---- java/io/natFileDescriptorWin32.cc 10 Mar 2002 03:34:59 -0000 1.5.2.2 -+++ java/io/natFileDescriptorWin32.cc 27 Apr 2002 08:40:40 -0000 -@@ -112,7 +112,7 @@ - create = CREATE_ALWAYS; - } - -- handle = CreateFile(buf, access, share, NULL, create, 0, NULL); -+ handle = CreateFile(buf, access, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, create, 0, NULL); - - if (handle == INVALID_HANDLE_VALUE) - { +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 ++#include + + #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__ */