qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/2]  Build fixes
@ 2009-11-05 16:19 Juan Quintela
  2009-11-05 16:19 ` [Qemu-devel] [PATCH 1/2] fix parallel build Juan Quintela
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Juan Quintela @ 2009-11-05 16:19 UTC (permalink / raw)
  To: qemu-devel; +Cc: dan

Hi

[v2]
Define GENERATED_HEADERS before include rules.mak
That makes dependencies work correctly.

[v1]

This series fixes the parallel build of qemu.  I tried to get the best of
Daniel and Stefan ideas with mine.
Once there fixed an obvious fix.

Daniel, can you check that parallel build also works for you?  It works for me (TM).
Stefan, what do you think?

It avoids the recursive call for serializing dependencies.
We still need to put direct dependencies for qemu-{img,nbd,io}.o of the headers
I don't understand why the ones in rules.make are not enough.

Later, Juan.


Juan Quintela (2):
  fix parallel build
  fix type in CFLAGS name

 Makefile        |    8 +++++---
 Makefile.target |    6 ++++--
 rules.mak       |    4 ++--
 3 files changed, 11 insertions(+), 7 deletions(-)

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Qemu-devel] [PATCH 1/2] fix parallel build
  2009-11-05 16:19 [Qemu-devel] [PATCH v2 0/2] Build fixes Juan Quintela
@ 2009-11-05 16:19 ` Juan Quintela
  2009-11-05 16:19 ` [Qemu-devel] [PATCH 2/2] fix type in CFLAGS name Juan Quintela
  2009-11-05 16:55 ` [Qemu-devel] Re: [PATCH v2 0/2] Build fixes Daniel Jacobowitz
  2 siblings, 0 replies; 4+ messages in thread
From: Juan Quintela @ 2009-11-05 16:19 UTC (permalink / raw)
  To: qemu-devel; +Cc: dan

Based on a ideas of Daniel Jacobowitz + Stefan Weil

Signed-off-by: Juan Quintela <quintela@redhat.com>
---
 Makefile        |    8 +++++---
 Makefile.target |    6 ++++--
 rules.mak       |    2 +-
 3 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/Makefile b/Makefile
index c783aa4..4284358 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,8 @@
 # Makefile for QEMU.

+# This needs to be defined before rules.mak
+GENERATED_HEADERS = config-host.h config-all-devices.h
+
 ifneq ($(wildcard config-host.mak),)
 # Put the all: rule here so that config-host.mak can contain dependencies.
 all: build-all
@@ -40,8 +43,7 @@ config-all-devices.mak: $(SUBDIR_DEVICES_MAK)

 -include config-all-devices.mak

-build-all: config-host.h config-all-devices.h $(DOCS) $(TOOLS)
-	$(call quiet-command, $(MAKE) $(SUBDIR_MAKEFLAGS) recurse-all,)
+build-all: $(DOCS) $(TOOLS) recurse-all

 config-host.h: config-host.h-timestamp
 config-host.h-timestamp: config-host.mak
@@ -51,7 +53,7 @@ config-all-devices.h-timestamp: config-all-devices.mak

 SUBDIR_RULES=$(patsubst %,subdir-%, $(TARGET_DIRS))

-subdir-%: config-host.h config-all-devices.h
+subdir-%: $(GENERATED_HEADERS)
 	$(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" all,)

 $(filter %-softmmu,$(SUBDIR_RULES)): libqemu_common.a
diff --git a/Makefile.target b/Makefile.target
index fefd7ac..3cd89a1 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -1,5 +1,8 @@
 # -*- Mode: makefile -*-

+# This needs to be defined before rules.mak
+GENERATED_HEADERS = config-target.h config-devices.h
+
 include ../config-host.mak
 include config-devices.mak
 include config-target.mak
@@ -33,8 +36,7 @@ config-target.h-timestamp: config-target.mak
 config-devices.h: config-devices.h-timestamp
 config-devices.h-timestamp: config-devices.mak

-all: config-target.h config-devices.h
-	$(call quiet-command, $(MAKE) $(PROGS),)
+all: $(PROGS)

 # Dummy command so that make thinks it has done something
 	@true
diff --git a/rules.mak b/rules.mak
index 5d7e8bb..4eb1f90 100644
--- a/rules.mak
+++ b/rules.mak
@@ -13,7 +13,7 @@ MAKEFLAGS += -rR

 QEMU_CFLAGS += -MMD -MP -MT $@

-%.o: %.c
+%.o: %.c $(GENERATED_HEADERS)
 	$(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) -c -o $@ $<,"  CC    $(TARGET_DIR)$@")

 %.o: %.S
-- 
1.6.2.5

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Qemu-devel] [PATCH 2/2] fix type in CFLAGS name
  2009-11-05 16:19 [Qemu-devel] [PATCH v2 0/2] Build fixes Juan Quintela
  2009-11-05 16:19 ` [Qemu-devel] [PATCH 1/2] fix parallel build Juan Quintela
@ 2009-11-05 16:19 ` Juan Quintela
  2009-11-05 16:55 ` [Qemu-devel] Re: [PATCH v2 0/2] Build fixes Daniel Jacobowitz
  2 siblings, 0 replies; 4+ messages in thread
From: Juan Quintela @ 2009-11-05 16:19 UTC (permalink / raw)
  To: qemu-devel; +Cc: dan


Signed-off-by: Juan Quintela <quintela@redhat.com>
---
 rules.mak |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/rules.mak b/rules.mak
index 4eb1f90..f8e5b04 100644
--- a/rules.mak
+++ b/rules.mak
@@ -17,7 +17,7 @@ QEMU_CFLAGS += -MMD -MP -MT $@
 	$(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) -c -o $@ $<,"  CC    $(TARGET_DIR)$@")

 %.o: %.S
-	$(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CLAGS) -c -o $@ $<,"  AS    $(TARGET_DIR)$@")
+	$(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) -c -o $@ $<,"  AS    $(TARGET_DIR)$@")

 %.o: %.m
 	$(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) -c -o $@ $<,"  OBJC  $(TARGET_DIR)$@")
-- 
1.6.2.5

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Qemu-devel] Re: [PATCH v2 0/2]  Build fixes
  2009-11-05 16:19 [Qemu-devel] [PATCH v2 0/2] Build fixes Juan Quintela
  2009-11-05 16:19 ` [Qemu-devel] [PATCH 1/2] fix parallel build Juan Quintela
  2009-11-05 16:19 ` [Qemu-devel] [PATCH 2/2] fix type in CFLAGS name Juan Quintela
@ 2009-11-05 16:55 ` Daniel Jacobowitz
  2 siblings, 0 replies; 4+ messages in thread
From: Daniel Jacobowitz @ 2009-11-05 16:55 UTC (permalink / raw)
  To: Juan Quintela; +Cc: qemu-devel

On Thu, Nov 05, 2009 at 05:19:56PM +0100, Juan Quintela wrote:
> Daniel, can you check that parallel build also works for you?  It works for me (TM).

This version made it through two build cycles.  I think it works.

-- 
Daniel Jacobowitz
CodeSourcery

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-11-05 16:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-05 16:19 [Qemu-devel] [PATCH v2 0/2] Build fixes Juan Quintela
2009-11-05 16:19 ` [Qemu-devel] [PATCH 1/2] fix parallel build Juan Quintela
2009-11-05 16:19 ` [Qemu-devel] [PATCH 2/2] fix type in CFLAGS name Juan Quintela
2009-11-05 16:55 ` [Qemu-devel] Re: [PATCH v2 0/2] Build fixes Daniel Jacobowitz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).