automake
[Top][All Lists]
Advanced

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

Re: Problem with parallel builds


From: Ralf Wildenhues
Subject: Re: Problem with parallel builds
Date: Mon, 19 Apr 2010 19:08:38 +0200
User-agent: Mutt/1.5.20 (2009-10-28)

Hello Roberto,

* Roberto Bagnara wrote on Sun, Apr 18, 2010 at 02:33:25PM CEST:
> we are about to release PPL 0.11 and Sebastian Pop (who is working
> on GCC/Graphite) encountered a problem we never met, despite the fact
> that we continuously build the PPL with make -j 7 on a machine with
> 2 CPUs and 8 cores.  The problem is described here
> 
>   https://www.cs.unipr.it/mantis/view.php?id=105
> 
> and the Makefile.am that may contain the error is
> 
>   
> http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=blob_plain;f=src/Makefile.am;hb=HEAD
> 
> In short, ppl-config is a program whose sources are ppl-config.cc,
> generated at configure-time, and ppl.hh, generated at build-time.
> However, in Sebastian's build the automatic dependency mechanism
> makes ppl-config.o depend on /usr/include/ppl.hh (a file belonging
> to a previous installation of the PPL) and not the ppl.hh that is/will
> be built on the current directory.

Generated include headers need to be listed in BUILT_SOURCES so when
building for the first time, they are created early.  You know that,
and in most cases, ppl.hh ends up there correctly, but it doesn't when
the Automake conditional BUILD_CXX_INTERFACE is FALSE, because then,
ppl.hh is listed in noinst_HEADERS but not in include_HEADERS.

The patch below fixes that.

You should be able to reproduce the issue with the configure option
cited in the mantis entry.

Cheers,
Ralf

2010-04-19  Ralf Wildenhues  <address@hidden>

        * src/Makefile.am (BUILT_SOURCES): Add $(noinst_HEADERS),
        so ppl.hh is built early if !BUILD_CXX_INTERFACE.
        Fixes parallel build failure reported by Sebastian Pop.

diff --git a/src/Makefile.am b/src/Makefile.am
index 5d20cf7..67bbb85 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -562,6 +562,7 @@ endif !USE_PRECOMPILED_HEADERS
 
 BUILT_SOURCES = \
 $(include_HEADERS) \
+$(noinst_HEADERS) \
 $(nodist_noinst_HEADERS) \
 $(PRECOMPILED) \
 BUGS.cc \





reply via email to

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