classpath-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cp-patches] Split classes list for gcj


From: Mark Wielaard
Subject: [cp-patches] Split classes list for gcj
Date: Mon, 08 Nov 2004 00:23:55 +0100

Hi,

This incredible lame patch splits the classes list in three parts to
make compilation with gcj possible on machines with less than 256MB of
memory.

2004-11-07  Mark Wielaard  <address@hidden>

        * lib/gen-classlist.sh.in: Split in classes list in standard, awt
        and standardx lists.
        * lib/Makefile.am (FOUND_GCJ): Split compilation in three parts.
        (CLEANFILES): Add classes.standard, classes.awt and classes.standardx.

It is not a very generic solution, and the fact that gcj needs so much
memory to compile GNU Classpath all at once might be considered a bug.
(With this patch total memory usage doesn't come above 200MB). But I
like to have this, or something similar in for 0.12 to make it easier to
compile GNU Classpath by default out of the box on more platforms.

Any comments, suggestions, complaints?

Cheers,

Mark
Index: lib/Makefile.am
===================================================================
RCS file: /cvsroot/classpath/classpath/lib/Makefile.am,v
retrieving revision 1.68
diff -u -r1.68 Makefile.am
--- lib/Makefile.am     9 Oct 2004 16:38:56 -0000       1.68
+++ lib/Makefile.am     7 Nov 2004 23:14:06 -0000
@@ -18,7 +18,9 @@
 
 # handling source to bytecode compiler programs like gcj, jikes  and kjc
 if FOUND_GCJ
-JAVAC = $(GCJ) --bootclasspath '' --classpath 
$(top_srcdir):$(top_srcdir)/vm/reference:.:$(USER_CLASSLIB) -C -d . @classes
+JAVAC = $(GCJ) --bootclasspath '' --classpath 
$(top_srcdir):$(top_srcdir)/vm/reference:.:$(USER_CLASSLIB) -C -d . 
@classes.standard \
+&& $(GCJ) --bootclasspath '' --classpath 
$(top_srcdir):$(top_srcdir)/vm/reference:.:$(USER_CLASSLIB) -C -d . 
@classes.awt \
+&& $(GCJ) --bootclasspath '' --classpath 
$(top_srcdir):$(top_srcdir)/vm/reference:.:$(USER_CLASSLIB) -C -d . 
@classes.standardx
 else
 if FOUND_JIKES
 JAVAC = $(JIKES) +F -bootclasspath '' -extdirs '' -sourcepath '' --classpath 
$(top_srcdir):$(top_srcdir)/vm/reference:.:$(USER_CLASSLIB) -d . @classes
@@ -86,7 +88,8 @@
        touch compile-classes
 
 EXTRA_DIST = standard.omit mkcollections.pl.in
-CLEANFILES = compile-classes resources classes glibj.zip classes.1 \
+CLEANFILES = compile-classes resources classes \
+       classes.standard classes.awt classes.standardx glibj.zip classes.1 \
        $(JAVA_DEPEND)
 
 clean-local:
Index: lib/gen-classlist.sh.in
===================================================================
RCS file: /cvsroot/classpath/classpath/lib/gen-classlist.sh.in,v
retrieving revision 1.15
diff -u -r1.15 gen-classlist.sh.in
--- lib/gen-classlist.sh.in     9 Oct 2004 16:38:56 -0000       1.15
+++ lib/gen-classlist.sh.in     7 Nov 2004 23:14:06 -0000
@@ -26,3 +26,9 @@
     echo $i "\\" >> ${top_builddir}/lib/java.dep
   done
 fi
+
+# Split in multiple parts for gcj
+grep -v /javax/ classes | grep -v /awt/ | grep -v /beans/ > classes.standard
+grep /awt/ classes > classes.awt
+grep /beans/ classes >> classes.awt
+grep /javax/ classes > classes.standardx

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]