diff options
author | Tom Tromey <tromey@redhat.com> | 2007-01-31 21:23:44 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2007-01-31 21:23:44 +0000 |
commit | 6a50ab1837ef001d66279f1431efb6d24196ac1a (patch) | |
tree | 9a67bccbdb44f84e70a200682f80e50a86002f49 /libjava/scripts | |
parent | 9af2f1d8eb7acdc1b8ee610e04012c0d1011ede0 (diff) | |
download | gcc-6a50ab1837ef001d66279f1431efb6d24196ac1a.zip gcc-6a50ab1837ef001d66279f1431efb6d24196ac1a.tar.gz gcc-6a50ab1837ef001d66279f1431efb6d24196ac1a.tar.bz2 |
scripts.am, [...]: Rebuilt.
* scripts.am, Makefile.in: Rebuilt.
* scripts/makemake.tcl (gnu/javax/swing/text/html/parser): Build
as 'ordinary'.
(emit_ordinary_rule): New proc.
From-SVN: r121437
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 cac22dc..7ebbd31 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 { |