Patchwork [20/27] build: consolidate multiple variables into universal-obj-y

login
register
mail settings
Submitter Paolo Bonzini
Date Dec. 21, 2012, 4:05 p.m.
Message ID <1356105948-13216-21-git-send-email-pbonzini@redhat.com>
Download mbox | patch
Permalink /patch/207856/
State New
Headers show

Comments

Paolo Bonzini - Dec. 21, 2012, 4:05 p.m.
The directory descent mechanism, and a less-flat tree both helped
in making some *-obj-y definitions very short.  Many of these
often end up in universal-obj-y, and used to be separate only
because of libuser (which is now part of history...).

Consolidate these variables in a single one.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 Makefile.objs     |   38 ++++++++------------------------------
 Makefile.target   |    7 +------
 qom/Makefile.objs |    6 ++----
 3 files changed, 11 insertions(+), 40 deletions(-)

Patch

diff --git a/Makefile.objs b/Makefile.objs
index 0ba9b20..e16f0a3 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -4,17 +4,6 @@  stub-obj-y = stubs/
 util-obj-y = util/ qobject/
 
 #######################################################################
-# Target-independent parts used in system and user emulation
-universal-obj-y =
-universal-obj-y += qemu-log.o
-
-#######################################################################
-# QOM
-qom-obj-y = qom/
-
-universal-obj-y += $(qom-obj-y)
-
-#######################################################################
 # coroutines
 coroutine-obj-y = qemu-coroutine.o qemu-coroutine-lock.o qemu-coroutine-io.o
 coroutine-obj-y += qemu-coroutine-sleep.o
@@ -54,7 +43,6 @@  endif
 
 common-obj-y = $(block-obj-y) blockdev.o blockdev-nbd.o block/
 common-obj-y += net/
-common-obj-y += qom/
 common-obj-y += readline.o
 common-obj-$(CONFIG_WIN32) += os-win32.o
 common-obj-$(CONFIG_POSIX) += os-posix.o
@@ -62,7 +50,6 @@  common-obj-$(CONFIG_POSIX) += os-posix.o
 common-obj-$(CONFIG_LINUX) += fsdev/
 extra-obj-$(CONFIG_LINUX) += fsdev/
 
-common-obj-y += tcg-runtime.o
 common-obj-y += buffered_file.o migration.o migration-tcp.o
 common-obj-y += qemu-char.o #aio.o
 common-obj-y += block-migration.o
@@ -95,19 +82,6 @@  common-obj-y += qemu-seccomp.o
 endif
 
 ######################################################################
-# libuser
-
-user-obj-y =
-user-obj-y += tcg-runtime.o
-user-obj-y += qom/
-
-######################################################################
-# disassemblers
-# NOTE: the disassembler code is only needed for debugging
-
-universal-obj-y += disas/
-
-######################################################################
 # trace
 
 ifeq ($(TRACE_BACKEND),dtrace)
@@ -163,8 +137,6 @@  trace-obj-y += trace/control.o
 
 $(trace-obj-y): $(GENERATED_HEADERS)
 
-universal-obj-y += $(trace-obj-y)
-
 ######################################################################
 # smartcard
 
@@ -185,6 +157,14 @@  qapi-obj-y += qapi-types.o qapi-visit.o
 common-obj-y += qmp-marshal.o qapi-visit.o qapi-types.o
 common-obj-y += qmp.o hmp.o
 
+#######################################################################
+# Target-independent parts used in system and user emulation
+universal-obj-y =
+universal-obj-y += qemu-log.o
+universal-obj-y += tcg-runtime.o
+universal-obj-y += qom/
+universal-obj-y += disas/
+universal-obj-y += $(trace-obj-y)
 universal-obj-y += $(qapi-obj-y)
 
 ######################################################################
@@ -202,10 +182,8 @@  nested-vars += \
 	stub-obj-y \
 	util-obj-y \
 	qga-obj-y \
-	qom-obj-y \
 	qapi-obj-y \
 	block-obj-y \
-	user-obj-y \
 	common-obj-y \
 	universal-obj-y \
 	extra-obj-y
diff --git a/Makefile.target b/Makefile.target
index da74b22..9cbe6fe 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -152,12 +152,7 @@  include $(SRC_PATH)/Makefile.objs
 
 all-obj-y = $(obj-y)
 all-obj-y += $(addprefix ../, $(universal-obj-y))
-
-ifdef CONFIG_SOFTMMU
-all-obj-y += $(addprefix ../, $(common-obj-y))
-else
-all-obj-y += $(addprefix ../, $(user-obj-y))
-endif #CONFIG_LINUX_USER
+all-obj-$(CONFIG_SOFTMMU) += $(addprefix ../, $(common-obj-y))
 
 ifdef QEMU_PROGW
 # The linker builds a windows executable. Make also a console executable.
diff --git a/qom/Makefile.objs b/qom/Makefile.objs
index 5ef060a..1899a4c 100644
--- a/qom/Makefile.objs
+++ b/qom/Makefile.objs
@@ -1,4 +1,2 @@ 
-qom-obj-y = object.o container.o qom-qobject.o
-qom-obj-twice-y = cpu.o
-common-obj-y = $(qom-obj-twice-y)
-user-obj-y = $(qom-obj-twice-y)
+universal-obj-y = object.o container.o qom-qobject.o
+universal-obj-y += cpu.o