Re: patch to support output synchronization under -j

2011-05-03 Thread David Boyce
On Tue, May 3, 2011 at 1:20 PM, Paul Smith wrote: > In that way, SYNC is a feature that the makefile USER selects, or not, > and not something the makefile AUTHOR would choose. > > Does that make sense? It makes perfect sense when you put it that way and I agree wrt to both .ONESHELL and .PARALLE

Re: patch to support output synchronization under -j

2011-05-03 Thread Paul Smith
On Tue, 2011-05-03 at 13:00 -0400, David Boyce wrote: > > The other thing I was thinking is that this feature might want to be > > enabled via a command-line argument. All the complex makefiles > > generated by automake, etc. for example cannot take advantage of this if > > you have to modify ever

Re: patch to support output synchronization under -j

2011-05-03 Thread Tim Murphy
On 3 May 2011 17:39, Eli Zaretskii wrote: > That was exactly the scenario I had in mind when I wrote my message. > Recursive Makefiles are the rule nowadays, at least with GNU software, > and the top-level Makefile does little more than launch a "make all" > job in each subdirectory.  GCC or GDB

Re: patch to support output synchronization under -j

2011-05-03 Thread David Boyce
On Tue, May 3, 2011 at 1:33 AM, Paul Smith wrote: > I wonder if we can figure out a way to make this work better, as Eli > asked.  Can we work out a way to handle "normal" rules (rules with "+" > or $(MAKE)) and "sub-make" rules differently, so that output from normal > rules wasn't collected behi

Re: patch to support output synchronization under -j

2011-05-03 Thread Eli Zaretskii
> From: Paul Smith > Cc: bug-make@gnu.org > Date: Tue, 03 May 2011 01:33:38 -0400 > > But, I've been playing with a makefile that I have, that builds a > complete suite of GCC tools from scratch. I'm building them on larger > systems with -j5 or -j10 (not much compared to what some are doing I >

Re: Make 3.82: weird "circular dependency" and missing $< expansion

2011-05-03 Thread Akim Demaille
Le 3 mai 2011 à 18:04, Paul Smith a écrit : >> I'm confused in understanding why it's rightly confused :/ But maybe >> my confusion is, as Edward pointed out, because I am misled by the >> term "circular dependency", as really, I can't see any here. > > Maybe circular is not the best term; as E

Re: Make 3.82: weird "circular dependency" and missing $< expansion

2011-05-03 Thread Akim Demaille
Le 3 mai 2011 à 15:03, Edward Welbourne a écrit : Hi Edward, Thanks a lot for your detailed explanation. > Because there are two routes through the dependency graph from %.eps > to %.dat, one going directly, the other going via %.pdf, make has an > ambiguity it can't sensibly resolve (if any %.

Re: Make 3.82: weird "circular dependency" and missing $< expansion

2011-05-03 Thread Paul Smith
On Tue, 2011-05-03 at 15:03 +0200, Edward Welbourne wrote: > > It all depends on the order in which make searches the rules, which is > > why changing things in the makefile matters. If make finds the second > > rule first then it sees it can build foo.eps and foo.pdf from foo.dat > > and it's all

Re: Make 3.82: weird "circular dependency" and missing $< expansion

2011-05-03 Thread Paul Smith
On Tue, 2011-05-03 at 17:39 +0200, Akim Demaille wrote: > Le 2 mai 2011 à 16:07, Paul Smith a écrit : > > Hi Paul! > > > So, the circular dependency issue is because of this: > > > >> %.eps: %.pdf > >> > >> %.eps %.pdf: %.dat > > > > In the second rule you say that BOTH %.eps and %.pdf can be

Re: Make 3.82: weird "circular dependency" and missing $< expansion

2011-05-03 Thread Akim Demaille
Le 2 mai 2011 à 16:07, Paul Smith a écrit : Hi Paul! > So, the circular dependency issue is because of this: > >> %.eps: %.pdf >> >> %.eps %.pdf: %.dat > > In the second rule you say that BOTH %.eps and %.pdf can be built from > %.dat, and in the first rule you say that %.eps can be built fro

[bug #32307] Documentation does not identify versions at which new features became available

2011-05-03 Thread marvin greenberg
Follow-up Comment #4, bug #32307 (project make): Option 3 is the one that satisfies my requirements best (supporting environments with multiple versions of make). I don't really see a different requirement for a printed manual, but mixing 3 and 1 seems fine too. Would you like me to do the work

Re: patch to support output synchronization under -j

2011-05-03 Thread Stefano Lattarini
On Tuesday 03 May 2011, Paul Smith wrote: > On Tue, 2011-05-03 at 09:48 +0200, Stefano Lattarini wrote: > > > The other thing I was thinking is that this feature might want to be > > > enabled via a command-line argument. All the complex makefiles > > > generated by automake, etc. for example cann

Re: Make 3.82: weird "circular dependency" and missing $< expansion

2011-05-03 Thread Edward Welbourne
> So, the circular dependency issue is because of this: > >> %.eps: %.pdf >> >> %.eps %.pdf: %.dat Technically, not a circular dependency: in the directed graph of dependencies, there is no cycle. If we ignore the directedness of some edges, we get a cycle; but the edges *are* directed, and we m

[bug #32307] Documentation does not identify versions at which new features became available

2011-05-03 Thread Ted Tibbetts
Follow-up Comment #3, bug #32307 (project make): A combination of alternatives 1 and 3 seems like it could work well: use footnotes in the printed presentation, and present version information with each feature in the online version. Python's documentation might serve as a good example of how to

Re: patch to support output synchronization under -j

2011-05-03 Thread Paul Smith
On Tue, 2011-05-03 at 09:48 +0200, Stefano Lattarini wrote: > > The other thing I was thinking is that this feature might want to be > > enabled via a command-line argument. All the complex makefiles > > generated by automake, etc. for example cannot take advantage of this > > if you have to modif

Re: patch to support output synchronization under -j

2011-05-03 Thread Stefano Lattarini
Hello Paul. Just my 2 cents regarding Automake ... On Tuesday 03 May 2011, Paul Smith wrote: > > The other thing I was thinking is that this feature might want to be > enabled via a command-line argument. All the complex makefiles > generated by automake, etc. for example cannot take advantage o