Hi,

Andrew Hughes found an issue when doing a make -j<n> where some dirs
weren't created properly. The problem comes from us keeping a list of
dirs to create by hand (plus some autogenerated list) when we want to
copy the resources. The following makes dir creation explicit for all
resource files.

2006-11-26  Mark Wielaard  <[EMAIL PROTECTED]>

    * lib/Makefile.am (propertydirs): Removed.
    (resources): Explicitly create all dirs.

Committed,

Mark
? lib/collections.jar
Index: lib/Makefile.am
===================================================================
RCS file: /cvsroot/classpath/classpath/lib/Makefile.am,v
retrieving revision 1.127
diff -u -r1.127 Makefile.am
--- lib/Makefile.am	31 Aug 2006 19:50:14 -0000	1.127
+++ lib/Makefile.am	26 Nov 2006 22:44:23 -0000
@@ -5,7 +5,6 @@
 ## this file and restart the make process again
 sinclude $(JAVA_DEPEND)
 
-propertydirs :=  $(shell cd $(top_srcdir)/resource && $(FIND) gnu java javax org META-INF -type d ! -name CVS -print)
 propertyfiles :=  $(shell cd $(top_srcdir)/resource && $(FIND) gnu java javax org -name \*\.properties -print)
 cssfiles := $(shell cd $(top_srcdir) && $(FIND) gnu java javax org -name \*\.css -print)
 metafiles :=  $(shell cd $(top_srcdir)/resource && $(FIND) META-INF -name CVS -prune -o -name \*\.in -prune -o -type f -print)
@@ -104,24 +103,25 @@
 endif # USE_PREBUILT_GLIBJ_ZIP
 
 resources: copy-vmresources.sh
-	if ! test -d gnu; then mkdir gnu; fi
-	if ! test -d gnu/java; then mkdir gnu/java; fi
-	if ! test -d gnu/java/locale; then mkdir gnu/java/locale; fi
-	if ! test -d gnu/javax/swing/plaf/gtk/icons; then mkdir -p gnu/javax/swing/plaf/gtk/icons; fi
-	@list='$(propertydirs)'; for p in $$list; do \
-	  if ! test -d $$p; then mkdir $$p; fi; \
-	done
 	@list='$(propertyfiles)'; for p in $$list; do \
+          dirname=`dirname $$p`; \
+          if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
 	  cp $(top_srcdir)/resource/$$p $$p; \
 	done
 	@list='$(cssfiles)'; for p in $$list; do \
+          dirname=`dirname $$p`; \
+          if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
 	  cp $(top_srcdir)/$$p $$p; \
 	done
 	@list='$(metafiles)'; for p in $$list; do \
+          dirname=`dirname $$p`; \
+          if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
 	  cp $(top_srcdir)/resource/$$p $$p; \
 	done
 	@$(SHELL) ./copy-vmresources.sh
 	@list='$(iconfiles)'; for p in $$list; do \
+          dirname=`dirname $$p`; \
+          if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
 	  cp $(top_srcdir)/$$p $$p; \
 	done
 	touch resources

Reply via email to