public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Serialization dependencies muck up configure-on-demand
@ 2002-12-23 11:36 Daniel Jacobowitz
  2002-12-23 12:39 ` DJ Delorie
  0 siblings, 1 reply; 13+ messages in thread
From: Daniel Jacobowitz @ 2002-12-23 11:36 UTC (permalink / raw)
  To: gcc; +Cc: Nathanael Nerode, DJ Delorie

The serializiation dependencies are causing all-gdb to have to configure
things like the assembler.  Consider --target=alpha-elf.  This isn't
supported in gas but the top level doesn't know that (a separate problem,
for another day, and not the real cause of trouble here).  The top level
emits serialization dependencies like:

# Serialization dependencies.  Host configures don't work well in parallel to
# each other, due to contention over config.cache.  Target configures and 
# build configures are similar.

mmalloc/Makefile: intl/Makefile
libiberty/Makefile: mmalloc/Makefile
opcodes/Makefile: libiberty/Makefile
bfd/Makefile: opcodes/Makefile
readline/Makefile: bfd/Makefile
tcl/Makefile: readline/Makefile
tk/Makefile: tcl/Makefile
itcl/Makefile: tk/Makefile
tix/Makefile: itcl/Makefile
libgui/Makefile: tix/Makefile
binutils/Makefile: libgui/Makefile
gas/Makefile: binutils/Makefile
ld/Makefile: gas/Makefile
sid/Makefile: ld/Makefile
sim/Makefile: sid/Makefile
gdb/Makefile: sim/Makefile
etc/Makefile: gdb/Makefile
expect/Makefile: etc/Makefile
dejagnu/Makefile: expect/Makefile
utils/Makefile: dejagnu/Makefile
$(TARGET_SUBDIR)/rda/Makefile: $(TARGET_SUBDIR)/libiberty/Makefile


This means that to build GDB in this tree requires configuring gas, and I've
lost all that I hoped to gain from doing the configury in the makefile.

Do we need the serialization dependencies?  While we support all sorts of
versions of Make, do we actually support parallel make on anything that
doesn't recognize .NOTPARALLEL?

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer

^ permalink raw reply	[flat|nested] 13+ messages in thread
* Re: Serialization dependencies muck up configure-on-demand
@ 2002-12-23 13:25 Nathanael Nerode
  2002-12-23 13:36 ` Daniel Jacobowitz
  0 siblings, 1 reply; 13+ messages in thread
From: Nathanael Nerode @ 2002-12-23 13:25 UTC (permalink / raw)
  To: gcc

Daniel mentioned:
>However, GNU make has the answer.  We'd probably have to autoconf for
>this feature, it's quite new:
>    * A new feature exists: order-only prerequisites.  These 
>prerequisites
>      affect the order in which targets are built, but they do not 
>impact
>      the rebuild/no-rebuild decision of their dependents.  That is to 
>say,
>      they allow you to require target B be built before target A, 
>without
>      requiring that target A will always be rebuilt if target B is 
>updated.
>      Patch for this feature provided by Greg McGary <greg@mcgary.org>.
>
>The syntax is:
>TARGETS : NORMAL-PREREQUISITES | ORDER-ONLY-PREREQUISITES
>
>So if that works in a test at autoconf time, we could use it.

Quite right; if configure detects that this is available, we should use 
this in the Makefile rather than the existing scheme.

Unfortuntately, I'm not feeling up to coding this for a while. :-(

Would there be interest in temporarily disabling the serialization 
dependencies (since .NOTPARALLEL is still there) until we can get a 
better solution for all this?  I'm just thinking of 
"if (0)"ing them out in 'configure.in' for the time being.

--Nathanael

^ permalink raw reply	[flat|nested] 13+ messages in thread
* Re: Serialization dependencies muck up configure-on-demand
@ 2002-12-23 13:28 Nathanael Nerode
  2002-12-23 13:34 ` Daniel Jacobowitz
  0 siblings, 1 reply; 13+ messages in thread
From: Nathanael Nerode @ 2002-12-23 13:28 UTC (permalink / raw)
  To: gcc

Daniel said:
>Well, I'm not sure how useful of a goal that is; I suppose it would
>speed up re-making when most directories don't need to be updated or
>updated substantially.  I don't see a better way without being truly

Specifically, when nothing needs to be reconfigured, but lots of things 
do need to be rebuilt, this is very useful. :-)  This is quite a common 
situation.

--Nathanael

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2002-12-25  5:29 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-12-23 11:36 Serialization dependencies muck up configure-on-demand Daniel Jacobowitz
2002-12-23 12:39 ` DJ Delorie
2002-12-23 12:40   ` Daniel Jacobowitz
2002-12-23 13:46     ` DJ Delorie
2002-12-23 14:37   ` Alexandre Oliva
2002-12-23 15:07     ` DJ Delorie
2002-12-26  1:38       ` Alexandre Oliva
2002-12-26  6:53         ` DJ Delorie
2002-12-23 13:25 Nathanael Nerode
2002-12-23 13:36 ` Daniel Jacobowitz
2002-12-24 15:42   ` Paul D. Smith
2002-12-23 13:28 Nathanael Nerode
2002-12-23 13:34 ` Daniel Jacobowitz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).