bug-texinfo
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: race condition in parallel build of texinfo-4.11


From: Michael Haubenwallner
Subject: Re: race condition in parallel build of texinfo-4.11
Date: Wed, 26 Mar 2008 09:21:06 +0100

On Fri, 2008-03-21 at 13:00 -0500, Karl Berry wrote:
> got this error message recently (not really reproducible) while building
>     texinfo-4.11 in parallel - actually it was during 'gmake install -j4':
> 
> Thanks for the report.  I think this has been fixed in another way.

Yes, I've seen
http://lists.gnu.org/archive/html/bug-texinfo/2004-10/msg00058.html
but IMO it still contains a problem (see below).

> Could you try the attached Makefile.am?  (It's also in CVS.)

Sorry, but as this was texinfo-4.11 already, there isn't so much
difference:
http://cvs.savannah.gnu.org/viewvc/texinfo/info/Makefile.am?root=texinfo&r1=1.13&r2=1.14

FWIK:

59: doc.c: key.c
60: key.c: funs.h
...
74: $(generated_sources): makedoc$(EXEEXT) $(cmd_sources)
75:     rm -f $(generated_sources)
76:     $(top_builddir)/$(native_tools)/info/makedoc $(cmd_sources)

Using $(generated_sources) at line 74 adds the 'rm doc.c key.c
funs.h' (and makedoc) command for each of them. This is the problem,
because while key.c is considered just-created and is compiled to key.o,
doc.c gets created, which removes key.c again, and compiling key.o can
fail now. Doing the rm+makedoc for funs.h only ensures that it is done
once only. It does not help to have makedoc creating them in any
specific order, because make knows all of them as out-of-date at once.

Thanks!

/haubi/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]