qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Cc: anthony@codemonkey.ws
Subject: [Qemu-devel] [PATCH v2 04/25] build: move *-user/ objects to nested Makefile.objs
Date: Wed,  6 Jun 2012 08:36:11 +0200	[thread overview]
Message-ID: <1338964592-22223-5-git-send-email-pbonzini@redhat.com> (raw)
In-Reply-To: <1338964592-22223-1-git-send-email-pbonzini@redhat.com>

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 Makefile.target                    |   32 ++++++++++----------------------
 bsd-user/Makefile.objs             |    2 ++
 configure                          |    8 +++++++-
 linux-user/Makefile.objs           |    7 +++++++
 linux-user/arm/nwfpe/Makefile.objs |    2 ++
 5 files changed, 28 insertions(+), 23 deletions(-)
 create mode 100644 bsd-user/Makefile.objs
 create mode 100644 linux-user/Makefile.objs
 create mode 100644 linux-user/arm/nwfpe/Makefile.objs

diff --git a/Makefile.target b/Makefile.target
index 95a82be..6ffb556 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -113,32 +113,20 @@ user-exec.o: QEMU_CFLAGS += $(HELPER_CFLAGS)
 
 # Note: this is a workaround. The real fix is to avoid compiling
 # cpu_signal_handler() in user-exec.c.
-signal.o: QEMU_CFLAGS += $(HELPER_CFLAGS)
+%/signal.o: QEMU_CFLAGS += $(HELPER_CFLAGS)
 
 #########################################################
 # Linux user emulator target
 
 ifdef CONFIG_LINUX_USER
 
-$(call set-vpath, $(SRC_PATH)/linux-user:$(SRC_PATH)/linux-user/$(TARGET_ABI_DIR))
-
 QEMU_CFLAGS+=-I$(SRC_PATH)/linux-user/$(TARGET_ABI_DIR) -I$(SRC_PATH)/linux-user
-obj-y = main.o syscall.o strace.o mmap.o signal.o thunk.o \
-      elfload.o linuxload.o uaccess.o gdbstub.o cpu-uname.o \
-      user-exec.o $(oslib-obj-y)
-
-obj-$(TARGET_HAS_BFLT) += flatload.o
-
-obj-$(TARGET_I386) += vm86.o
 
+obj-y += linux-user/
+obj-y += gdbstub.o thunk.o user-exec.o $(oslib-obj-y)
 obj-i386-y += ioport-user.o
-
-nwfpe-obj-y = fpa11.o fpa11_cpdo.o fpa11_cpdt.o fpa11_cprt.o fpopcode.o
-nwfpe-obj-y += single_cpdo.o double_cpdo.o extended_cpdo.o
-obj-arm-y +=  $(addprefix nwfpe/, $(nwfpe-obj-y))
-obj-arm-y += arm-semi.o
-
-obj-m68k-y += m68k-sim.o m68k-semi.o
+obj-$(TARGET_ARM) += arm-semi.o
+obj-$(TARGET_M68K) += m68k-semi.o
 
 obj-y += $(addprefix ../, $(universal-obj-y))
 obj-y += $(addprefix ../libuser/, $(user-obj-y))
@@ -152,13 +140,10 @@ endif #CONFIG_LINUX_USER
 
 ifdef CONFIG_BSD_USER
 
-$(call set-vpath, $(SRC_PATH)/bsd-user)
-
 QEMU_CFLAGS+=-I$(SRC_PATH)/bsd-user -I$(SRC_PATH)/bsd-user/$(TARGET_ARCH)
 
-obj-y = main.o bsdload.o elfload.o mmap.o signal.o strace.o syscall.o \
-        gdbstub.o uaccess.o user-exec.o
-
+obj-y += bsd-user/
+obj-y += gdbstub.o user-exec.o
 obj-i386-y += ioport-user.o
 
 obj-y += $(addprefix ../, $(universal-obj-y))
@@ -403,6 +388,9 @@ endif # CONFIG_LINUX_USER
 
 obj-$(CONFIG_GDBSTUB_XML) += gdbstub-xml.o
 
+nested-vars = obj-y
+dummy := $(call unnest-vars)
+
 ifdef QEMU_PROGW
 # The linker builds a windows executable. Make also a console executable.
 $(QEMU_PROGW): $(obj-y) $(obj-$(TARGET_BASE_ARCH)-y)
diff --git a/bsd-user/Makefile.objs b/bsd-user/Makefile.objs
new file mode 100644
index 0000000..5e77f57
--- /dev/null
+++ b/bsd-user/Makefile.objs
@@ -0,0 +1,2 @@
+obj-y = main.o bsdload.o elfload.o mmap.o signal.o strace.o syscall.o \
+	        uaccess.o
diff --git a/configure b/configure
index 1f338f8..d5647f3 100755
--- a/configure
+++ b/configure
@@ -3520,8 +3520,14 @@ mkdir -p $target_dir/ide
 mkdir -p $target_dir/usb
 mkdir -p $target_dir/9pfs
 mkdir -p $target_dir/kvm
+if test "$target_linux_user" = yes; then
+  mkdir -p $target_dir/linux-user
+fi
+if test "$target_bsd_user" = yes; then
+  mkdir -p $target_dir/bsd-user
+fi
 if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" -o "$target" = "arm-bsd-user" -o "$target" = "armeb-bsd-user" ; then
-  mkdir -p $target_dir/nwfpe
+  mkdir -p $target_dir/linux-user/arm/nwfpe
 fi
 symlink "$source_path/Makefile.target" "$target_dir/Makefile"
 
diff --git a/linux-user/Makefile.objs b/linux-user/Makefile.objs
new file mode 100644
index 0000000..5899d72
--- /dev/null
+++ b/linux-user/Makefile.objs
@@ -0,0 +1,7 @@
+obj-y = main.o syscall.o strace.o mmap.o signal.o \
+	elfload.o linuxload.o uaccess.o cpu-uname.o
+
+obj-$(TARGET_HAS_BFLT) += flatload.o
+obj-$(TARGET_I386) += vm86.o
+obj-$(TARGET_ARM) += arm/nwfpe/
+obj-$(TARGET_M68K) += m68k-sim.o
diff --git a/linux-user/arm/nwfpe/Makefile.objs b/linux-user/arm/nwfpe/Makefile.objs
new file mode 100644
index 0000000..51b0c32
--- /dev/null
+++ b/linux-user/arm/nwfpe/Makefile.objs
@@ -0,0 +1,2 @@
+obj-y = fpa11.o fpa11_cpdo.o fpa11_cpdt.o fpa11_cprt.o fpopcode.o
+obj-y += single_cpdo.o double_cpdo.o extended_cpdo.o
-- 
1.7.10.1

  parent reply	other threads:[~2012-06-06  6:37 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-06  6:36 [Qemu-devel] [PATCH v2 00/25] per-directory Makefile.objs snippets, limit vpath (ab)use Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 01/25] build: remove trace-nested-y Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 02/25] build: do not sprinkle around GENERATED_HEADERS dependencies Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 03/25] build: add rules for nesting Paolo Bonzini
2012-06-06  6:36 ` Paolo Bonzini [this message]
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 05/25] build: move obj-TARGET-y variables to nested Makefile.objs Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 06/25] build: move libobj-y variable " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 07/25] build: move other target-*/ objects " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 08/25] build: move rules for nesting to Makefile.objs Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 09/25] build: put qom/ rules in a Makefile.objs file Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 10/25] build: move block/ objects to nested Makefile.objs Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 11/25] build: move net/ " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 12/25] build: move fsdev/ " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 13/25] build: move ui/ " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 14/25] build: move audio/ " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 15/25] build: move slirp/ " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 16/25] build: move qapi/ " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 17/25] build: move qga/ " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 18/25] build: move target-independent hw/ objects to nested Makefiles Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 19/25] build: convert libhw to nested Makefile.objs Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 20/25] build: move per-target hw/ objects " Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 21/25] build: move device tree to per-target Makefile Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 22/25] build: libcacard Makefile cleanups Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 23/25] build: limit usage of vpath Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 24/25] build: compile oslib-obj-y once Paolo Bonzini
2012-06-06  6:36 ` [Qemu-devel] [PATCH v2 25/25] build: do not create directories at configure time Paolo Bonzini
2012-06-06  8:58   ` Anthony Liguori
2012-06-06 11:54     ` Paolo Bonzini
2012-06-06 12:03       ` Peter Maydell
2012-06-06 12:16         ` Paolo Bonzini
2012-06-07  3:15           ` Anthony Liguori
2012-06-07  3:21             ` Eric Blake
2012-06-07  3:16       ` Anthony Liguori
2012-06-07  5:26         ` Paolo Bonzini
2012-06-07  5:28           ` Anthony Liguori
2012-06-06  9:23 ` [Qemu-devel] [PATCH v2 00/25] per-directory Makefile.objs snippets, limit vpath (ab)use Anthony Liguori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1338964592-22223-5-git-send-email-pbonzini@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=anthony@codemonkey.ws \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).