/[classpath]/classpath/HACKING
ViewVC logotype

Diff of /classpath/HACKING

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.9 by cbj, Thu Jul 19 03:47:34 2001 UTC revision 1.10 by cbj, Mon Nov 5 02:59:24 2001 UTC
# Line 1  Line 1 
1  If you want to hack on GNU Classpath it will make things easier if you  If you want to hack on GNU Classpath it will make things easier if you
2  have the following installed:  have the following installed:
3    
4          - GNU autoconf 2.13  For any build environment involving native libraries, these new versions of
5          - GNU automake 1.4  autoconf, automake, and libtool are required.
6          - GNU libtool 1.3.3  
7            - GNU autoconf 2.52
8            - GNU automake 1.5
9            - GNU libtool 1.4.2
10    
11    For building the Java bytecode (.class files)
12    
13            - IBM jikes 1.13 (newer versions up to 1.15 appear to be broken)
14              or GCJ 3.0.2+
15    
16    For building the JNI native libraries, the following are required.
17    
18            - gcjh from GCJ 2.96+, others can be specified with --with-javah=kaffeh
19              but have not been tested and may not work
20          - GTK+ 1.2.x          - GTK+ 1.2.x
         - IBM jikes 1.0.9+  
21          - libart_lgpl 2.1.0          - libart_lgpl 2.1.0
22          - gdk-pixbuf (latest out of gnome.org's CVS)          - gdk-pixbuf (Only needed if you want to compile the native library)
23    
24  If you start from the current CVS version, you will have to run the  If you start from the current CVS version, you will have to run the
25  following from the toplevel directory.  following from the toplevel directory.
26    
27          aclocal; autoheader; automake; autoconf          aclocal; autoheader; automake; autoconf
28    
29    For those that do not understand why these programs must be executed, here
30    is a brief lesson.  
31    
32            aclocal    - combines acinclude.m4 and system macros to produce
33                         aclocal.m4
34            autoheader - generates config.h.in in the include/ directory
35            automake   - generates Makefile.in from Makefile.am for every file
36                         specified as output in configure.in
37            autoconf   - generates configure
38    
39  Next you run configure.  Options you'll probably want to specify  Next you run configure.  Options you'll probably want to specify
40  include --with-jikes, --with-javah={path to jdk}/javah,  may include --enable-jni.
41  --with-classlib={path to classes.jar}/classes.jar and --with-japhar or  
42  --with-kaffe, neither of which take an argument.    By default the core classes are compiled using vm/reference JVM specific
43    classes.  As a VM writer you may take these reference classes and modify
44  You can also now specify --with-includedir=DIR multiple times to  them as you wish as long as the public interface remains the same and
45  indicate more include directories.  For native compilation you need  no modifications to other core parts of Classpath should be needed.
 jni.h from the JDK, Japhar, or Kaffe in your include path.  This is  
 done automatically for you if you specify --with-japhar or  
 --with-kaffe.  Otherwise you could probably copy it to  
 classpath/include and it will work.  Kaffeh appears to have a small  
 bug which keeps us from using it to generate valid header files.  The  
 file kaffe-config is needed to support Kaffe and so far that has not  
 been incorporated into Kaffe (any version) but you can find the  
 message in the archives of the Classpath list and add it to your own  
 installation of Kaffe (reconfigure and install needed).  
   
 If you have a new VM you would like to compile Classpath for then  
 you'll probably want to modify acinclude.m4 and configure.in to add  
 whatever is relevant but most importantly defining JVM_REFERENCE and  
 then giving us the necessary files to add to the vm/$JVM_REFERENCE  
 directory.  The vm integration document describes what those files  
 should minimally include.  Otherwise you'll have to have one of Japhar  
 or Kaffe installed and the programs japhar-config or kaffe-config  
 available respectively.  
   
 Jikes 1.11 should contain a code for placing .u (dependency files)  
 where -d would also place class files.  This will be used in the  
 distributions of classpath to make compilation with javac, etc.  
 easier/possible.  
46    
47  Gnome cvs can be obtained with  Gnome cvs can be obtained with
48  :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome and a blank password.    :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome and a blank password.  

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26