[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 23/29] build: move per-target hw/ objects to nest
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH v3 23/29] build: move per-target hw/ objects to nested Makefile.objs |
Date: |
Thu, 7 Jun 2012 09:40:08 +0200 |
This completes the move to nested Makefiles for virtio and a few
other files that were not part of obj-TARGET-y, but still were
compiled separately for each target.
Signed-off-by: Paolo Bonzini <address@hidden>
---
Makefile.hw | 5 +++--
Makefile.target | 35 +++++++----------------------------
configure | 1 +
hw/9pfs/Makefile.objs | 2 ++
hw/Makefile.objs | 18 ++++++++++++++++++
5 files changed, 31 insertions(+), 30 deletions(-)
diff --git a/Makefile.hw b/Makefile.hw
index 155a0c3..2bcbaff 100644
--- a/Makefile.hw
+++ b/Makefile.hw
@@ -19,7 +19,8 @@ all: $(hw-obj-y)
@true
clean:
- rm -f *.o */*.o *.d */*.d *.a */*.a *~ */*~ */*/*.d
+ rm -f $(addsuffix /*.o, $(dir $(sort $(hw-obj-y))))
+ rm -f $(addsuffix /*.d, $(dir $(sort $(hw-obj-y))))
# Include automatically generated dependency files
--include $(wildcard *.d */*.d */*/*.d)
+-include $(patsubst %.o, %.d, $(hw-obj-y))
diff --git a/Makefile.target b/Makefile.target
index f1d5fe2..5635043 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -1,11 +1,5 @@
# -*- Mode: makefile -*-
-CONFIG_NO_PCI = $(if $(subst n,,$(CONFIG_PCI)),n,y)
-CONFIG_NO_KVM = $(if $(subst n,,$(CONFIG_KVM)),n,y)
-CONFIG_NO_XEN = $(if $(subst n,,$(CONFIG_XEN)),n,y)
-CONFIG_NO_GET_MEMORY_MAPPING = $(if $(subst
n,,$(CONFIG_HAVE_GET_MEMORY_MAPPING)),n,y)
-CONFIG_NO_CORE_DUMP = $(if $(subst n,,$(CONFIG_HAVE_CORE_DUMP)),n,y)
-
include ../config-host.mak
include config-devices.mak
include config-target.mak
@@ -122,19 +116,16 @@ endif #CONFIG_BSD_USER
#########################################################
# System emulator target
ifdef CONFIG_SOFTMMU
+CONFIG_NO_PCI = $(if $(subst n,,$(CONFIG_PCI)),n,y)
+CONFIG_NO_KVM = $(if $(subst n,,$(CONFIG_KVM)),n,y)
+CONFIG_NO_XEN = $(if $(subst n,,$(CONFIG_XEN)),n,y)
+CONFIG_NO_GET_MEMORY_MAPPING = $(if $(subst
n,,$(CONFIG_HAVE_GET_MEMORY_MAPPING)),n,y)
+CONFIG_NO_CORE_DUMP = $(if $(subst n,,$(CONFIG_HAVE_CORE_DUMP)),n,y)
obj-y += arch_init.o cpus.o monitor.o gdbstub.o balloon.o ioport.o
-# virtio has to be here due to weird dependency between PCI and virtio-net.
-# need to fix this properly
-obj-$(CONFIG_NO_PCI) += pci-stub.o
-obj-$(CONFIG_VIRTIO) += virtio.o virtio-blk.o virtio-balloon.o virtio-net.o
virtio-serial-bus.o
-obj-$(CONFIG_VIRTIO) += virtio-scsi.o
-obj-y += vhost_net.o
-obj-$(CONFIG_VHOST_NET) += vhost.o
-obj-$(CONFIG_REALLY_VIRTFS) += 9pfs/virtio-9p-device.o
+obj-y += hw/
obj-$(CONFIG_KVM) += kvm-all.o
obj-$(CONFIG_NO_KVM) += kvm-stub.o
-obj-$(CONFIG_VGA) += vga.o
obj-y += memory.o savevm.o cputlb.o
obj-$(CONFIG_HAVE_GET_MEMORY_MAPPING) += memory_mapping.o
obj-$(CONFIG_HAVE_CORE_DUMP) += dump.o
@@ -148,21 +139,9 @@ QEMU_CFLAGS += $(VNC_JPEG_CFLAGS)
QEMU_CFLAGS += $(VNC_PNG_CFLAGS)
# xen support
-obj-$(CONFIG_XEN) += xen-all.o xen_machine_pv.o xen_domainbuild.o
xen-mapcache.o
+obj-$(CONFIG_XEN) += xen-all.o xen-mapcache.o
obj-$(CONFIG_NO_XEN) += xen-stub.o
-# Inter-VM PCI shared memory
-CONFIG_IVSHMEM =
-ifeq ($(CONFIG_KVM), y)
- ifeq ($(CONFIG_PCI), y)
- CONFIG_IVSHMEM = y
- endif
-endif
-obj-$(CONFIG_IVSHMEM) += ivshmem.o
-
-# Generic hotplugging
-obj-y += device-hotplug.o
-
# Hardware support
ifeq ($(TARGET_ARCH), sparc64)
obj-y += hw/sparc64/
diff --git a/configure b/configure
index 785e3f8..e50ad0b 100755
--- a/configure
+++ b/configure
@@ -3675,6 +3675,7 @@ mkdir -p $target_dir/9pfs
mkdir -p $target_dir/hw
mkdir -p $target_dir/hw/ide
mkdir -p $target_dir/hw/usb
+mkdir -p $target_dir/hw/9pfs
mkdir -p $target_dir/hw/kvm
mkdir -p $target_dir/hw/$TARGET_ARCH
mkdir -p $target_dir/hw/$TARGET_BASE_ARCH
diff --git a/hw/9pfs/Makefile.objs b/hw/9pfs/Makefile.objs
index 2700772..972df24 100644
--- a/hw/9pfs/Makefile.objs
+++ b/hw/9pfs/Makefile.objs
@@ -5,3 +5,5 @@ hw-obj-y += virtio-9p-coth.o cofs.o codir.o cofile.o
hw-obj-y += coxattr.o virtio-9p-synth.o
hw-obj-$(CONFIG_OPEN_BY_HANDLE) += virtio-9p-handle.o
hw-obj-y += virtio-9p-proxy.o
+
+obj-y += virtio-9p-device.o
diff --git a/hw/Makefile.objs b/hw/Makefile.objs
index 08dde63..7e17504 100644
--- a/hw/Makefile.objs
+++ b/hw/Makefile.objs
@@ -145,3 +145,21 @@ common-obj-$(CONFIG_BRLAPI) += baum.o
# xen backend driver support
common-obj-$(CONFIG_XEN_BACKEND) += xen_backend.o xen_devconfig.o
common-obj-$(CONFIG_XEN_BACKEND) += xen_console.o xenfb.o xen_disk.o xen_nic.o
+
+# Per-target files
+# virtio has to be here due to weird dependency between PCI and virtio-net.
+# need to fix this properly
+obj-$(CONFIG_VIRTIO) += virtio.o virtio-blk.o virtio-balloon.o virtio-net.o
+obj-$(CONFIG_VIRTIO) += virtio-serial-bus.o virtio-scsi.o
+obj-$(CONFIG_SOFTMMU) += vhost_net.o
+obj-$(CONFIG_VHOST_NET) += vhost.o
+obj-$(CONFIG_REALLY_VIRTFS) += 9pfs/
+obj-$(CONFIG_NO_PCI) += pci-stub.o
+obj-$(CONFIG_VGA) += vga.o
+obj-$(CONFIG_SOFTMMU) += device-hotplug.o
+obj-$(CONFIG_XEN) += xen_domainbuild.o xen_machine_pv.o
+
+# Inter-VM PCI shared memory
+ifeq ($(CONFIG_PCI), y)
+obj-$(CONFIG_KVM) += ivshmem.o
+endif
--
1.7.10.1
- [Qemu-devel] [PATCH v3 12/29] build: adapt qom/Makefile and move it to Makefile.objs, (continued)
- [Qemu-devel] [PATCH v3 12/29] build: adapt qom/Makefile and move it to Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 14/29] build: move net/ objects to nested Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 21/29] build: move target-independent hw/ objects to nested Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 25/29] build: libcacard Makefile cleanups, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 26/29] build: limit usage of vpath, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 28/29] configure: ensure directory exists when creating symlink, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 15/29] build: move fsdev/ objects to nested Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 07/29] dump: do not compile dump.o for user-mode emulation, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 29/29] build: do not create directories at configure time, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 09/29] dump: remove dumping stuff from cpu-all.h, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 23/29] build: move per-target hw/ objects to nested Makefile.objs,
Paolo Bonzini <=
- [Qemu-devel] [PATCH v3 20/29] build: move qga/ objects to nested Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 27/29] build: compile oslib-obj-y once, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 08/29] dump: change cpu_get_note_size to return ssize_t, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 16/29] build: move ui/ objects to nested Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 24/29] build: move device tree to per-target Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 19/29] build: move qapi/ objects to nested Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 18/29] build: move slirp/ objects to nested Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 22/29] build: convert libhw to nested Makefile.objs, Paolo Bonzini, 2012/06/07
- [Qemu-devel] [PATCH v3 17/29] build: move audio/ objects to nested Makefile.objs, Paolo Bonzini, 2012/06/07