Patchwork build: Move tracing objects into libuser on usermode emulation targets

login
register
mail settings
Submitter Lluís Vilanova
Date Sept. 15, 2011, 3:28 p.m.
Message ID <20110915152840.25930.35350.stgit@ginnungagap.bsc.es>
Download mbox | patch
Permalink /patch/114801/
State New
Headers show

Comments

Lluís Vilanova - Sept. 15, 2011, 3:28 p.m.
This will apply libuser-specific compilation flags (like the ones added by
--enable-user-pie), but keep softmmu emulation targets "as-is".

Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
---
 Makefile.objs   |    1 +
 Makefile.target |    2 +-
 Makefile.user   |    4 +++-
 configure       |    1 +
 4 files changed, 6 insertions(+), 2 deletions(-)
Richard Henderson - Sept. 15, 2011, 3:43 p.m.
On 09/15/2011 08:28 AM, Lluís Vilanova wrote:
> This will apply libuser-specific compilation flags (like the ones added by
> --enable-user-pie), but keep softmmu emulation targets "as-is".

This is missing some dependencies.

make[1]: *** No rule to make target `config-host.mak', needed by `trace.c-timestamp'.  Stop.
make: *** [subdir-libuser] Error 2


r~
Lluís Vilanova - Sept. 15, 2011, 3:58 p.m.
Richard Henderson writes:

> On 09/15/2011 08:28 AM, Lluís Vilanova wrote:
>> This will apply libuser-specific compilation flags (like the ones added by
>> --enable-user-pie), but keep softmmu emulation targets "as-is".

> This is missing some dependencies.

> make[1]: *** No rule to make target `config-host.mak', needed by `trace.c-timestamp'.  Stop.
> make: *** [subdir-libuser] Error 2

Is this for an out-of-tree compilation? I saw some errors regarding
missing *.mak files that were already there before applying my changes.


Lluis
Richard Henderson - Sept. 15, 2011, 4:01 p.m.
On 09/15/2011 08:58 AM, Lluís Vilanova wrote:
> Is this for an out-of-tree compilation? I saw some errors regarding
> missing *.mak files that were already there before applying my changes.

Of course.  I never build in-tree.


r~
Lluís Vilanova - Sept. 15, 2011, 4:03 p.m.
Lluís Vilanova writes:

> Richard Henderson writes:
>> On 09/15/2011 08:28 AM, Lluís Vilanova wrote:
>>> This will apply libuser-specific compilation flags (like the ones added by
>>> --enable-user-pie), but keep softmmu emulation targets "as-is".

>> This is missing some dependencies.

>> make[1]: *** No rule to make target `config-host.mak', needed by `trace.c-timestamp'.  Stop.
>> make: *** [subdir-libuser] Error 2

> Is this for an out-of-tree compilation? I saw some errors regarding
> missing *.mak files that were already there before applying my changes.

Never mind. I had some in-tree files from previous compilations.


Lluis

Patch

diff --git a/Makefile.objs b/Makefile.objs
index 62020d7..fb11fba 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -177,6 +177,7 @@  user-obj-y =
 user-obj-y += envlist.o path.o
 user-obj-y += tcg-runtime.o host-utils.o
 user-obj-y += cutils.o cache-utils.o
+user-obj-y += $(trace-obj-y)
 
 ######################################################################
 # libhw
diff --git a/Makefile.target b/Makefile.target
index f708453..88d2f1f 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -383,6 +383,7 @@  obj-y += $(addprefix ../, $(common-obj-y))
 obj-y += $(addprefix ../libdis/, $(libdis-y))
 obj-y += $(libobj-y)
 obj-y += $(addprefix $(HWDIR)/, $(hw-obj-y))
+obj-y += $(addprefix ../, $(trace-obj-y))
 
 endif # CONFIG_SOFTMMU
 
@@ -394,7 +395,6 @@  obj-$(CONFIG_SMARTCARD_NSS) += $(addprefix ../libcacard/, $(libcacard-y))
 endif # CONFIG_BSD_USER
 endif # CONFIG_LINUX_USER
 
-obj-y += $(addprefix ../, $(trace-obj-y))
 obj-$(CONFIG_GDBSTUB_XML) += gdbstub-xml.o
 
 $(QEMU_PROG): $(obj-y) $(obj-$(TARGET_BASE_ARCH)-y)
diff --git a/Makefile.user b/Makefile.user
index 024b773..2b1e4d1 100644
--- a/Makefile.user
+++ b/Makefile.user
@@ -17,7 +17,9 @@  all: $(user-obj-y)
 	@true
 
 clean:
-	rm -f *.o *.d *.a *~
+	for d in . trace; do \
+	rm -f $$d/*.o $$d/*.d $$d/*.a $$d/*~; \
+	done
 
 # Include automatically generated dependency files
 -include $(wildcard *.d */*.d)
diff --git a/configure b/configure
index 0875f95..ad924c4 100755
--- a/configure
+++ b/configure
@@ -3669,6 +3669,7 @@  fi
 
 d=libuser
 mkdir -p $d
+mkdir -p $d/trace
 symlink $source_path/Makefile.user $d/Makefile
 if test "$static" = "no" -a "$user_pie" = "yes" ; then
   echo "QEMU_CFLAGS+=-fpie" > $d/config.mak