qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Re: [PATCH] build system: Further improve quiet mode


From: Anthony Liguori
Subject: Re: [Qemu-devel] Re: [PATCH] build system: Further improve quiet mode
Date: Mon, 26 Jan 2009 11:36:17 -0600
User-agent: Thunderbird 2.0.0.19 (X11/20090105)

Jan Kiszka wrote:
Laurent Desnogues wrote:
On Sun, Jan 25, 2009 at 4:53 PM, Jan Kiszka <address@hidden> wrote:
Stuart Brady wrote:
On Wed, Jan 21, 2009 at 06:13:09PM +0000, Anthony Liguori wrote:
Spew out less noise when compiling.  This helps review make output for
information such as compilation warnings, rather than extra long compiler
invocations.

The full output can be generated by supplying a 'V=1' parameter to make.
Excellent!

However, I would find it helpful to see the name of the target that is
being built.  Something like the following? ...
Good idea! I rebased your work over recent changes and adopted it a bit,
see below. Hope you still like it. :)
While you're at it, would it be possible to dump C flags once at the beginning
to see how things get compiled? :-)


Something like this? I also included LDFLAGS - before someone asks...

------>

Derived from Stuart Brady's patch: Show the target directory as prefix
to the current module when building in quiet mode. This helps to gain
overview of the current build progress, specifically when running
parallelized builds.

Furthermore, suppress make command echoing when entering subdirs and
replace $(subst subdir-,,$@) with $* in the related rule. And on request
by Laurent Desnogues, dump the used CFLAGS and LDFLAGS once on startup
of the quiet mode.

Signed-off-by: Jan Kiszka <address@hidden>

I applied the first rev of this patch because I had queued that one up. I usually check to see if there are newer versions before applying a patch but since you included it in a response in the thread, I missed it.

Can you extract the CFLAGS part of this and resubmit.

BTW, what do people think of printing CFLAGS? I find it not all that exciting but if people like it, I'm happy to go with it.

Regards,

Anthony Liguori

---

 Makefile  |    7 +++++--
 rules.mak |   12 ++++++------
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/Makefile b/Makefile
index a09d6e0..6a7db93 100644
--- a/Makefile
+++ b/Makefile
@@ -34,12 +34,15 @@ ifdef CONFIG_WIN32
 LIBS+=-lwinmm -lws2_32 -liphlpapi
 endif
-all: $(TOOLS) $(DOCS) recurse-all
+all:
+       $(call quiet-command,$(MAKE) build-all,"Building with\n  CFLAGS  = 
$(CFLAGS)\n  LDFLAGS = $(LDFLAGS)")
+
+build-all: $(TOOLS) $(DOCS) recurse-all
SUBDIR_RULES=$(patsubst %,subdir-%, $(TARGET_DIRS)) subdir-%:
-       $(MAKE) -C $(subst subdir-,,$@) V="$(V)" all
+       $(call quiet-command,$(MAKE) -C $* V="$(V)" TARGET_DIR="$*/" all,)
$(filter %-softmmu,$(SUBDIR_RULES)): libqemu_common.a
 $(filter %-user,$(SUBDIR_RULES)): libqemu_user.a
diff --git a/rules.mak b/rules.mak
index c4bb65b..10e21ec 100644
--- a/rules.mak
+++ b/rules.mak
@@ -1,19 +1,19 @@
%.o: %.c
-       $(call quiet-command,$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<,"  CC    
$@")
+       $(call quiet-command,$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<,"  CC    
$(TARGET_DIR)$@")
%.o: %.S
-       $(call quiet-command,$(CC) $(CPPFLAGS) -c -o $@ $<,"  AS    $@")
+       $(call quiet-command,$(CC) $(CPPFLAGS) -c -o $@ $<,"  AS    
$(TARGET_DIR)$@")
%.o: %.m
-       $(call quiet-command,$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<,"  OBJC  
$@")
+       $(call quiet-command,$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<,"  OBJC  
$(TARGET_DIR)$@")
-LINK = $(call quiet-command,$(CC) $(LDFLAGS) -o $@ $^ $(LIBS)," LINK $@")
+LINK = $(call quiet-command,$(CC) $(LDFLAGS) -o $@ $^ $(LIBS),"  LINK  
$(TARGET_DIR)$@")
%$(EXESUF): %.o
        $(LINK)
%.a:
-       $(call quiet-command,rm -f $@ && $(AR) rcs $@ $^,"  AR    $@")
+       $(call quiet-command,rm -f $@ && $(AR) rcs $@ $^,"  AR    
$(TARGET_DIR)$@")
-quiet-command = $(if $(V),$1,@echo $2 && $1)
+quiet-command = $(if $(V),$1,$(if $(2),@echo -e $2 && $1, @$1))







reply via email to

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