Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Chiheng Xu
On Fri, Jul 30, 2010 at 1:26 PM, Paul Smith psm...@gnu.org wrote: On Fri, 2010-07-30 at 09:59 +0800, Chiheng Xu wrote: As parallel make are becoming more and more popular,  can make serialize the output of parallel make? Make can redirect every parallelly issued shell's output to an

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Philip Guenther
On Thu, Jul 29, 2010 at 11:29 PM, Chiheng Xu chiheng...@gmail.com wrote: ... My suggestion is that you can implement it as an optional command line option(like -j), and on one or two primary platforms(Linux/Windows), instead of on all platforms. So, the complexity of both possibilities.

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Chiheng Xu
On Fri, Jul 30, 2010 at 3:45 PM, Philip Guenther guent...@gmail.com wrote: On Thu, Jul 29, 2010 at 11:29 PM, Chiheng Xu chiheng...@gmail.com wrote: ... My suggestion is that you can implement it as an optional command line option(like -j), and on one or two primary platforms(Linux/Windows),

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Tim Murphy
Hi, Serialisation can be done by external programs - no real need for make to do it. My project does it already with the talon shell wrapper that we use in our build system here: http://developer.symbian.org/oss/MCL/sftools/dev/build/file/96fee2635b19/sbsv2/raptor/util/talon You set talon as

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Eli Zaretskii
From: Paul Smith psm...@gnu.org Date: Fri, 30 Jul 2010 01:26:46 -0400 Cc: bug-make@gnu.org We have to ensure that these temporary files are cleaned up properly, even in the face of users ^C'ing their make invocations. We also need to verify that whatever methods we use will work properly

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Chiheng Xu
On Fri, Jul 30, 2010 at 4:40 PM, Tim Murphy tnmur...@gmail.com wrote: Hi, You set talon as the shell for make and talon in turn runs whatever the actual shell is but adds the serialisation.  there are a lot of other nice things you can do with this - e.g. measuring the execution time of

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Chiheng Xu
On Fri, Jul 30, 2010 at 4:53 PM, Eli Zaretskii e...@gnu.org wrote: This is not to say that I think the original idea is easy to implement. Actually, it is not entirely clear to me what is meant by serialization in this context.  Commands are invoked by Make in parallel, and the output is

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Tim Murphy
On 30 July 2010 09:55, Chiheng Xu chiheng...@gmail.com wrote: On Fri, Jul 30, 2010 at 4:40 PM, Tim Murphy tnmur...@gmail.com wrote: Hi, You set talon as the shell for make and talon in turn runs whatever the actual shell is but adds the serialisation.  there are a lot of other nice things

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Chiheng Xu
On Fri, Jul 30, 2010 at 5:27 PM, Tim Murphy tnmur...@gmail.com wrote: No, I understand better than you think as I do huge parallel builds every day. The shell wrapper buffers the recipe output and then grabs a semaphore before writing the output to it's stdout..  if another recipe has

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Edward Welbourne
Make can redirect every parallelly issued shell's output to an temporary file,  and output the stored output serially, as if in a serial make. +1 for wanting this as a make feature. We a hack in some of our makefiles to implement essentially exactly the above. For reference, here's the

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Eli Zaretskii
Date: Fri, 30 Jul 2010 17:08:55 +0800 From: Chiheng Xu chiheng...@gmail.com Cc: psm...@gnu.org, bug-make@gnu.org On Fri, Jul 30, 2010 at 4:53 PM, Eli Zaretskii e...@gnu.org wrote: This is not to say that I think the original idea is easy to implement. Actually, it is not entirely

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Chiheng Xu
On Fri, Jul 30, 2010 at 5:35 PM, Eli Zaretskii e...@gnu.org wrote: I asked for an example.  Could you please show a messy output and the output you'd like to have after serialization? TIA serially make : execute A, B, C programs, they print: A: Hello, I'm A, I am from Earth. B: The moon

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Chiheng Xu
On Fri, Jul 30, 2010 at 6:01 PM, Howard Chu h...@highlandsun.com wrote: Chiheng Xu wrote: On Fri, Jul 30, 2010 at 5:35 PM, Eli Zaretskiie...@gnu.org  wrote: I asked for an example.  Could you please show a messy output and the output you'd like to have after serialization? TIA serially

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Howard Chu
Chiheng Xu wrote: On Fri, Jul 30, 2010 at 5:35 PM, Eli Zaretskiie...@gnu.org wrote: I asked for an example. Could you please show a messy output and the output you'd like to have after serialization? TIA serially make : execute A, B, C programs, they print: A: Hello, I'm A, I am from

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Eli Zaretskii
Date: Fri, 30 Jul 2010 12:10:36 +0100 From: Tim Murphy tnmur...@gmail.com Cc: bug-make@gnu.org gcc -o fred fred.cpp perl makedef.pl -i something.def perl prepdef.pl -i otherthing.def error: fred.cpp: syntax error on line 345 ERROR: File not Found Which file was missing? If you

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Edward Welbourne
The shell wrapper buffers the recipe output and then grabs a semaphore before writing the output to it's stdout..  if another recipe has completed and is in the process of outputting to the stdout then it has to wait a few microseconds. The use of semaphore may impair performance. And

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Paul Smith
On Thu, 2010-07-29 at 22:44 -0700, Howard Chu wrote: The scheme that I grew up with on Alliant Concentrix was just to prefix each output line with its job number |xx|blah blah blah. It obviously requires a pipe for each child process' output, so that lines can be read by the parent make and

Re: [RFC]serialize the output of parallel make?

2010-07-30 Thread Edward Welbourne
This seems like quite an extreme example. stdout is line buffered by default, on half-way decent systems - and even then, I'm not sure, it might be limited to when writing to a TTY. I use make -j 4 to build and test gcc, the situation above is very common. Then it means you're getting a lot

gmake Error.

2010-07-30 Thread Ana Zoghbi
Good day Mr. Richard Stallman and Roland McGrath, I would like to kindly ask your help with an error I'm getting when running the gmake command. I would appreciate anything that you could do to help me. I'm trying to install the sudosh2 SW that I downloaded from this site

Re: gmake Error.

2010-07-30 Thread Paul Smith
On Fri, 2010-07-30 at 13:31 -0400, Ana Zoghbi wrote: I would like to kindly ask your help with an error I’m getting when running the gmake command. I would appreciate anything that you could do to help me. I’m trying to install the sudosh2 SW that I downloaded from this site gcc

[bug #30606] mysterious behavior from $(if)

2010-07-30 Thread Reinier Post
URL: http://savannah.gnu.org/bugs/?30606 Summary: mysterious behavior from $(if) Project: make Submitted by: r_p Submitted on: Fri 30 Jul 2010 07:07:46 PM GMT Severity: 3 - Normal Item Group: Bug

Re: make-3.82 -- parse error

2010-07-30 Thread Paul Smith
On Fri, 2010-07-30 at 11:17 +0200, Peter Breitenlohner wrote: yesterday, I had built and installed make-3.82 on our x86-linux-gnu systems, but then had to downgrade to 3.81 due to a serious regression. Attached is a small self-contained Makefile that works fine with 3.81, but yields this

[bug #30606] mysterious behavior from $(if)

2010-07-30 Thread Paul D. Smith
Update of bug #30606 (project make): Status:None = Not A Bug Open/Closed:Open = Closed ___ Follow-up Comment #3: Tim is correct; as far

[bug #30606] mysterious behavior from $(if)

2010-07-30 Thread Reinier Post
Follow-up Comment #4, bug #30606 (project make): Never mind. The problem is that the variables are already expanded, and the functions called, when the template is being defined, when I expect them to be expanded only when it is called. Resolved by doubling all $s except those on the

[bug #30606] mysterious behavior from $(if)

2010-07-30 Thread Paul D. Smith
Follow-up Comment #5, bug #30606 (project make): If by already expanded ... when the template is being defined you mean after the define T ... endef, then you're not correct. define, by itself, uses deferred expansion (just like T = $(foo)) and so right after the define the value of T has NOT

[bug #30606] mysterious behavior from $(if)

2010-07-30 Thread Paul D. Smith
Follow-up Comment #6, bug #30606 (project make): Ugh, my comment got truncated. I used this example: define T b := $(subst aa,,$(1)) yn := $(if $(strip $(b)),y,n) vs := $(vs) $(1):$(yn) endef $(info $(value T)) will show the string that make is storing as the value of T, without any

[bug #30606] mysterious behavior from $(if)

2010-07-30 Thread Timothy N Murphy
Follow-up Comment #7, bug #30606 (project make): This problem has tripped me up 100 times if not more and I almost think I have suffered brain damage from trying to get my head around it in a few cases. I need eval though. What I want to say is that nobody should ever feel bad if they have

Fwd: [RFC]serialize the output of parallel make?

2010-07-30 Thread Chiheng Xu
-- Forwarded message -- From: Chiheng Xu chiheng...@gmail.com Date: Fri, Jul 30, 2010 at 6:02 PM Subject: Re: [RFC]serialize the output of parallel make? To: Tim Murphy tnmur...@gmail.com On Fri, Jul 30, 2010 at 5:54 PM, Tim Murphy tnmur...@gmail.com wrote: Hi, The cost to the

Re: Fwd: [RFC]serialize the output of parallel make?

2010-07-30 Thread Howard Chu
Chiheng Xu wrote: -- Forwarded message -- From: Chiheng Xuchiheng...@gmail.com Date: Fri, Jul 30, 2010 at 6:02 PM Subject: Re: [RFC]serialize the output of parallel make? To: Tim Murphytnmur...@gmail.com On Fri, Jul 30, 2010 at 5:54 PM, Tim Murphytnmur...@gmail.com wrote: Hi,