bug-automake
[Top][All Lists]
Advanced

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

Re: subdir-objects fails with non-literal _SOURCES


From: Ralf Wildenhues
Subject: Re: subdir-objects fails with non-literal _SOURCES
Date: Thu, 19 Apr 2007 19:11:22 +0200
User-agent: Mutt/1.5.13 (2006-08-11)

Hi Jim,

* Jim Meyering wrote on Tue, Apr 17, 2007 at 09:16:59PM CEST:
> Ralf Wildenhues <address@hidden> wrote:
> ...
> > The strongest argument against invoking `make' at the end of configure
> > is one of debugging: if your makefile contains a syntax error -- and for
> > newbies it frequently will -- then configure won't finish successfully.
> 
> If you're tempted, maybe a two-pronged approach.  First use the naive
> sed-based approach, but if there are any '$' in the result, try using
> "make".

Not such a bad idea, but...

> If make-based process fails for any reason, simply continue
> with the results (guaranteed to fail upon build attempt) of the
> sed-based approach.

... what if make decides to rerun `config.status --recheck &&
config.status', say, because the user has his CONFIG_STATUS_DEPENDENCIES
wrong?  I don't see an easy, non-error-prone way to guard against the
ensuing endless loop.  Of course the same failure would happen at the
time the user typed `make' later, but:
- maybe he knows what he's doing and knows not to type `make' right now,
- maybe he knows to run gmake later (which won't rerun config.status)
  but has not issued `configure MAKE=gmake' (in which case we don't know
  to use gmake over ${MAKE-make}).

I've encountered both failure scenarios before, with me being the user,
or the developer in the process of fixing the build system.  These
things are tricky enough when you see what's going on, but supposedly
the new depout.m4 would hide $MAKE's output, no?  Thus making debugging
neigh impossible.

> Then, it should work no worse than the existing code, and
> you can hide any make diagnostics so as not to confuse newbies.
> The only cost is the added complexity.

Complexity is another counter argument, yes.  There is already a lot
complexity in Automake, in that it is quite difficult to expose all
cases well.

FWIW, I overlooked your (nice!) idea to avoid a temp makefile.

> I can see how you'd prefer to document the current limitation,
> but I hate to force people to un-factor their Makefiles.
> On the other hand, I get the impression that this is a pretty
> obscure corner, probably because few people use subdir-objects,
> and even fewer also use make variables in _SOURCE values.

I think this bug has been reported a few times already.

Cheers,
Ralf




reply via email to

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