X-Git-Url: http://git.megacz.com/?p=org.ibex.core.git;a=blobdiff_plain;f=README;h=7dd22b19148c9d70e8f844a2ce6ac7749d87059c;hp=bbe83b7a7ecfaee9ba06aa332250d6015a697dcf;hb=3ae9870a18b114db4bf32f95ecd8182f1d108f14;hpb=80c104c764dcb0bc4a4eb1a3e7fac22e65623db3 diff --git a/README b/README index bbe83b7..7dd22b1 100644 --- a/README +++ b/README @@ -1,6 +1,6 @@ ============================================================================== XWT README - + ______________________________________________________________________________ Documentation @@ -12,95 +12,55 @@ 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/] - - A complete copy of all static and dynamic content for - www.xwt.org is in the xwt/www/ directory. +- The XWT home page [http://www.xwt.org/] -- 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] - - 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 - 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 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. - ______________________________________________________________________________ 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 - 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 + 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 -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 *** + +To build, make sure your $JAVA_HOME points to jdk1.4 or later, and type ./ant -Dplat= @@ -108,119 +68,76 @@ 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: 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 +- 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 two patches at the end of this file which can be - applied to the branch -- the first disables Win32 file locking (so - you can view XWT's log files while it is running), and the second - 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 - + 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. ______________________________________________________________________________ -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__ */