Libiberty parallel build broken

Daniel Jacobowitz drow@mvista.com
Fri Nov 16 09:09:00 GMT 2001


On Mon, Nov 26, 2001 at 03:17:28PM -0500, DJ Delorie wrote:
> 
> > > Doesn't the all-subdir target already serialize all the subdirs?
> > 
> > You're right.  So is this OK?
> 
> Yeah.  ChangeLog entry?

Here.  Could you commit this?  I have write access to src, but not gcc.

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer

2001-11-26  DJ Delorie  <dj@redhat.com>
            Daniel Jacobowitz  <drow@mvista.com>

	* Makefile.in (stamp-h): Depend on Makefile for proper
	serialization.
	(*-subdir): Depend on config.h for proper serialization.

Index: Makefile.in
===================================================================
RCS file: /cvs/src/src/libiberty/Makefile.in,v
retrieving revision 1.31
diff -u -r1.31 Makefile.in
--- Makefile.in	2001/10/21 00:08:22	1.31
+++ Makefile.in	2001/11/26 20:14:02
@@ -300,17 +300,22 @@
 Makefile: $(srcdir)/Makefile.in config.status
 	CONFIG_FILES=Makefile CONFIG_HEADERS= $(SHELL) ./config.status
 
+# Depending on Makefile makes sure that config.status has been re-run
+# if needed.  This prevents problems with parallel builds.
 config.h: stamp-h ; @true
-stamp-h: config.in config.status
+stamp-h: config.in config.status Makefile
 	CONFIG_FILES= CONFIG_HEADERS=config.h:config.in $(SHELL) ./config.status
 
 config.status: $(srcdir)/configure $(srcdir)/config.table
 	$(SHELL) ./config.status --recheck
 
+# Depending on config.h makes sure that config.status has been re-run
+# if needed.  This prevents problems with parallel builds, in case
+# subdirectories need to run config.status also.
 all-subdir check-subdir installcheck-subdir info-subdir	\
 install-info-subdir clean-info-subdir dvi-subdir install-subdir	\
 etags-subdir mostlyclean-subdir clean-subdir distclean-subdir \
-maintainer-clean-subdir:
+maintainer-clean-subdir: config.h
 	@subdirs='$(SUBDIRS)'; \
 	target=`echo $@ | sed -e 's/-subdir//'`; \
 	for dir in $$subdirs ; do \



More information about the Gcc-bugs mailing list