2002/08/07 03:22:58
[org.ibex.core.git] / README
diff --git a/README b/README
index 7447813..e3ca552 100644 (file)
--- a/README
+++ b/README
@@ -12,37 +12,30 @@ presented below:
       Start here. Includes a map of all other documentation and a
       description of the directory strucure
 
-- The XWT home page [www/ or http://www.xwt.org/]
+- The XWT home page [http://www.xwt.org/]
 
-      A complete copy of all static and dynamic content for
-      www.xwt.org is in the xwt/www/ directory.
-
-- The XWT tutorial [www/html/tutorial.html_]:
+- The XWT tutorial [http://www.xwt.org/tutorial.html]
 
       Gentle introduction to what XWT is, and how to write
       .xwt's. Good for anybody who wants to write XWT applications.
 
-- The XWT reference [www/html/reference.html]
+- The XWT reference [http://www.xwt.org/reference.html]
 
       Precise, technical spec of exactly how XWT works. Assumes
       familiarity with XWT (ie, you've read the tutorial). This is the
       authoritative source for how an XWT engine should
       behave.
 
-- Javadoc [www/html/javadoc/package-summary.html]
+- Javadoc [http://www.xwt.org/javadoc/]
 
-      The org.xwt.* packages are all documented with javadoc. If
-      you've just checked out or downloaded a fresh copy of the XWT
-      distribution, you can generate the javadoc by typing
-      "./ant www" at the root directory of the distribution. You
+      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 [www/html/javasrc/index.html]
+- Javasrc [http://www.xwt.org/javasrc]
 
       Javasrc generates a syntax-colored and hyperlinked html copy of
-      the XWT source code. To generate this documentation, type "./ant www"
-      from the root directory of the distribution.
+      the XWT source code.
 
 
 ______________________________________________________________________________
@@ -55,14 +48,6 @@ Directory Structure
    ant                   - a unix shell script to launch ant
    bin/                  - all binary stuff generated by ant builds
    build.xml             - ANT build file
-   doc/                  - documentation
-
-   www/                  - a copy of all static and dynamic content on xwt.org
-       etc/              - configuration files
-       html/             - static content -- files ending with an underscore get
-                           prefix.html/suffix.html/tagline.html added to them
-       launch/           - code for launch.xwt.org
-       src/              - source code for servlets running on xwt.org
 
    lib/                  - any third-party binary stuff needed during the build process
        javago            - a copy of the javago post-compilation bytecode inliner
@@ -100,43 +85,36 @@ 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=<platform> <targetname>
+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=<platform> <targetname>
 
 The name of any class in org.xwt.plat is a valid <platform>; 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 <target>s are:
 
     build         - builds a binary for the selected platform
-    dist          - creates deployment materials for the selected platform in dist/
-    run           - runs the 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/
-    www           - rebuild www/html/
-    push          - push changes to the web server via ssh (RSA auth)
-
-
 
 
 ______________________________________________________________________________
 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,
@@ -153,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=
@@ -169,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
@@ -219,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 <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__ */