Patch: Fix libjava parallel make problems

Mohan Embar gnustuff@thisiscool.com
Thu Aug 28 21:56:00 GMT 2003


Hi People,

The following patch attempts to remedy this bug
I introduced:

http://gcc.gnu.org/ml/gcc/2003-08/msg01684.html

I was able to reproduce this problem thanks to Andrew's
-j10 tip:

http://gcc.gnu.org/ml/gcc/2003-08/msg01685.html

The problem seems to be the parallel execution of these
prerequisites:

all-recursive: libgcj-3.4.jar $(nat_headers) $(x_nat_headers)

where:
$(ordinary_nat_headers) $(x_nat_headers): %.h: %.class

because libgcj-3.4.jar and java/lang/AbstractMethodError.h are
executed in parallel and I removed the rule to build classfiles
in my previous patch.

After applying the patch, the problem doesn't manifest
itself anymore, the build succeeds and I am able to run some
simple tests.

Okay to commit?

-- Mohan
http://www.thisiscool.com/
http://www.animalsong.org/

ChangeLog
2003-08-28  Mohan Embar  <gnustuff@thisiscool.com>

	* Makefile.am: Fixed problems with parallel makes.
	(all_java_class_files): Readded definition.
	(all_java_class_files): New target which depends on
	libgcj-@gcc_version@.jar
	* Makefile.in: Rebuilt

Index: Makefile.am
===================================================================
--- Makefile.am	2003-08-28 14:27:51.000000000 -0500
+++ Makefile.am	2003-08-28 13:22:58.000000000 -0500
@@ -338,4 +338,6 @@
     $(x_java_source_files)
 
+all_java_class_files = $(all_java_source_files:.java=.class)
+
 libgcj-@gcc_version@.jar: $(all_java_source_files)
 	-@rm -f libgcj-@gcc_version@.jar
@@ -348,4 +350,6 @@
 	  $(ZIP) cfM0E@ $@
 
+$(all_java_class_files): libgcj-@gcc_version@.jar
+
 MOSTLYCLEANFILES = $(javao_files) $(nat_files) $(nat_headers) $(c_files) $(x_javao_files) $(x_nat_files) $(x_nat_headers)
 CLEANFILES = libgcj-@gcc_version@.jar






More information about the Java-patches mailing list