Patchwork Makefile: Change make to be quiet again when doing nothing

login
register
mail settings
Submitter Stefan Weil
Date Oct. 20, 2009, 4:17 p.m.
Message ID <1256055443-5563-1-git-send-email-weil@mail.berlios.de>
Download mbox | patch
Permalink /patch/36475/
State New
Headers show

Comments

Stefan Weil - Oct. 20, 2009, 4:17 p.m.
This patch makes make quiet again.

There is already a similar patch from Juan Quintela,
but maybe this shorter form is preferred.

Signed-off-by: Stefan Weil <weil@mail.berlios.de>
---
 Makefile |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
Paolo Bonzini - Oct. 20, 2009, 5:36 p.m.
On 10/20/2009 06:17 PM, Stefan Weil wrote:
> This patch makes make quiet again.
>
> There is already a similar patch from Juan Quintela,
> but maybe this shorter form is preferred.

This patch would reintroduce an ordering problem between building 
config*.h and building the tools, whose fix is what made "make" noisy in 
the first place.

Paolo
Stefan Weil - Oct. 21, 2009, 9:17 p.m.
Paolo Bonzini schrieb:
> On 10/20/2009 06:17 PM, Stefan Weil wrote:
>> This patch makes make quiet again.
>>
>> There is already a similar patch from Juan Quintela,
>> but maybe this shorter form is preferred.
>
> This patch would reintroduce an ordering problem between building
> config*.h and building the tools, whose fix is what made "make" noisy
> in the first place.
>
> Paolo

Did you try this? config*.h will be built first, tools and docs come
later with my patch,
so there should not be any difference regarding the build order.

The old code before 1215c6e7 was different.

Regards
Stefan
Paolo Bonzini - Oct. 22, 2009, 6:21 a.m.
On 10/21/2009 11:17 PM, Stefan Weil wrote:
> Paolo Bonzini schrieb:
>> On 10/20/2009 06:17 PM, Stefan Weil wrote:
>>> This patch makes make quiet again.
>>>
>>> There is already a similar patch from Juan Quintela,
>>> but maybe this shorter form is preferred.
>>
>> This patch would reintroduce an ordering problem between building
>> config*.h and building the tools, whose fix is what made "make" noisy
>> in the first place.
>>
>> Paolo
>
> Did you try this? config*.h will be built first, tools and docs come
> later with my patch,
> so there should not be any difference regarding the build order.

No, but if there is a hidden missing dependency I don't see how your 
patch could work, that's it.  I know that the patch is "in theory" 
correct, but people were reporting failed builds and Juan's move of 
$(TOOLS) $(DOCS) solved it.

Consider in addition that make does not guarantee to even *start* A 
before B if you have "TARGET: A B", especially at very high parallelism. 
  If you have icecream installed, a make -j20 is not uncommon and 
guaranteed to find wrong dependencies.

Paolo

Patch

diff --git a/Makefile b/Makefile
index e78a3d0..4d9908c 100644
--- a/Makefile
+++ b/Makefile
@@ -40,8 +40,8 @@  config-all-devices.mak: $(SUBDIR_DEVICES_MAK)
 
 -include config-all-devices.mak
 
-build-all: config-host.h config-all-devices.h
-	$(call quiet-command, $(MAKE) $(SUBDIR_MAKEFLAGS) $(TOOLS) $(DOCS) recurse-all,)
+build-all: config-host.h config-all-devices.h $(DOCS) $(TOOLS)
+	$(call quiet-command, $(MAKE) $(SUBDIR_MAKEFLAGS) recurse-all,)
 
 config-host.h: config-host.h-timestamp
 config-host.h-timestamp: config-host.mak