diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-31 21:23:44 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-31 21:23:44 +0000 |
commit | 8f1eb877bc5e70c1310f638772e05b2546a7760f (patch) | |
tree | 9a67bccbdb44f84e70a200682f80e50a86002f49 /libjava/scripts | |
parent | 1e7b0d71d8abfafc51279de312f611bdc218ddae (diff) | |
download | gcc-8f1eb877bc5e70c1310f638772e05b2546a7760f.tar.gz |
* scripts.am, Makefile.in: Rebuilt.
* scripts/makemake.tcl (gnu/javax/swing/text/html/parser): Build
as 'ordinary'.
(emit_ordinary_rule): New proc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@121437 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/scripts')
-rwxr-xr-x | libjava/scripts/makemake.tcl | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/libjava/scripts/makemake.tcl b/libjava/scripts/makemake.tcl index cac22dc71ea..7ebbd31e8d8 100755 --- a/libjava/scripts/makemake.tcl +++ b/libjava/scripts/makemake.tcl @@ -65,6 +65,14 @@ set package_map(org/omg) bc set package_map(gnu/CORBA) bc set package_map(gnu/javax/rmi) bc +# parser/HTML_401F.class is really big, and there have been complaints +# about this package requiring too much memory to build. So, we +# compile it as separate objects. But, we're careful to compile the +# sub-packages as packages. +set package_map(gnu/javax/swing/text/html/parser) ordinary +set package_map(gnu/javax/swing/text/html/parser/models) package +set package_map(gnu/javax/swing/text/html/parser/support) package + # More special cases. These end up in their own library. # Note that if we BC-compile AWT we must update these as well. set package_map(gnu/gcj/xlib) package @@ -297,6 +305,32 @@ proc emit_package_rule {package} { } } +# Emit a rule to build a package full of 'ordinary' files, that is, +# one .o for each .java. +proc emit_ordinary_rule {package} { + global name_map package_files + + foreach file $name_map($package) { + # Strip off the '.java'. + set root [file rootname $file] + + # Look for all included .class files. Assumes that we don't have + # multiple top-level classes in a .java file. + set lname $root.list + set dname $root.deps + + puts "$lname: classpath/$file" + puts "\t@\$(mkinstalldirs) \$(dir \$@)" + puts "\techo \$(srcdir)/classpath/lib/${root}*.class> $lname" + puts "" + puts "-include $dname" + puts "" + puts "" + + lappend package_files $lname + } +} + # Emit a package-like rule for a platform-specific Process # implementation. proc emit_process_package_rule {platform} { @@ -419,7 +453,7 @@ foreach package [lsort [array names package_map]] { if {$package_map($package) == "bc"} { emit_bc_rule $package } elseif {$package_map($package) == "ordinary"} { - # Nothing in particular to do here. + emit_ordinary_rule $package } elseif {$package_map($package) == "package"} { emit_package_rule $package } else { |