Message ID | 1369787288-4478-1-git-send-email-alevy@redhat.com |
---|---|
State | New |
Headers | show |
Il 29/05/2013 02:28, Alon Levy ha scritto: > For systemtap the location of the process being tapped is crucial, as a > result the existing stp file requires installation for use. > > There are now two files: > $(TARGET_DIR)/$(QEMU_PROG).stp-installed: copied to $(tapdir)/$(QEMU_PROG).stp > $(TARGET_DIR)/$(QEMU_PROG).stp: pointing to the built binary, usable > without installation > > To use: > stap -I $(TARGET_DIR) ... Looks good, thanks! Paolo > Signed-off-by: Alon Levy <alevy@redhat.com> > --- > Makefile.target | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/Makefile.target b/Makefile.target > index ce4391f..a44c8ed 100644 > --- a/Makefile.target > +++ b/Makefile.target > @@ -35,7 +35,7 @@ config-target.h: config-target.h-timestamp > config-target.h-timestamp: config-target.mak > > ifdef CONFIG_TRACE_SYSTEMTAP > -stap: $(QEMU_PROG).stp > +stap: $(QEMU_PROG).stp-installed $(QEMU_PROG).stp > > ifdef CONFIG_USER_ONLY > TARGET_TYPE=user > @@ -43,14 +43,24 @@ else > TARGET_TYPE=system > endif > > -$(QEMU_PROG).stp: $(SRC_PATH)/trace-events > +$(QEMU_PROG).stp-installed: $(SRC_PATH)/trace-events > $(call quiet-command,$(TRACETOOL) \ > --format=stap \ > --backend=$(TRACE_BACKEND) \ > --binary=$(bindir)/$(QEMU_PROG) \ > --target-arch=$(TARGET_ARCH) \ > --target-type=$(TARGET_TYPE) \ > + < $< > $@," GEN $(TARGET_DIR)$(QEMU_PROG).stp-installed") > + > +$(QEMU_PROG).stp: $(SRC_PATH)/trace-events > + $(call quiet-command,$(TRACETOOL) \ > + --format=stap \ > + --backend=$(TRACE_BACKEND) \ > + --binary=$(realpath .)/$(QEMU_PROG) \ > + --target-arch=$(TARGET_ARCH) \ > + --target-type=$(TARGET_TYPE) \ > < $< > $@," GEN $(TARGET_DIR)$(QEMU_PROG).stp") > + > else > stap: > endif > @@ -186,7 +196,7 @@ endif > endif > ifdef CONFIG_TRACE_SYSTEMTAP > $(INSTALL_DIR) "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset" > - $(INSTALL_DATA) $(QEMU_PROG).stp "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset" > + $(INSTALL_DATA) $(QEMU_PROG).stp-installed "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset/$(QEMU_PROG).stp" > endif > > GENERATED_HEADERS += config-target.h > s
On Tue, May 28, 2013 at 08:28:08PM -0400, Alon Levy wrote: > For systemtap the location of the process being tapped is crucial, as a > result the existing stp file requires installation for use. > > There are now two files: > $(TARGET_DIR)/$(QEMU_PROG).stp-installed: copied to $(tapdir)/$(QEMU_PROG).stp > $(TARGET_DIR)/$(QEMU_PROG).stp: pointing to the built binary, usable > without installation > > To use: > stap -I $(TARGET_DIR) ... > > Signed-off-by: Alon Levy <alevy@redhat.com> > --- > Makefile.target | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) Thanks, applied to my tracing tree: https://github.com/stefanha/qemu/commits/tracing Stefan
diff --git a/Makefile.target b/Makefile.target index ce4391f..a44c8ed 100644 --- a/Makefile.target +++ b/Makefile.target @@ -35,7 +35,7 @@ config-target.h: config-target.h-timestamp config-target.h-timestamp: config-target.mak ifdef CONFIG_TRACE_SYSTEMTAP -stap: $(QEMU_PROG).stp +stap: $(QEMU_PROG).stp-installed $(QEMU_PROG).stp ifdef CONFIG_USER_ONLY TARGET_TYPE=user @@ -43,14 +43,24 @@ else TARGET_TYPE=system endif -$(QEMU_PROG).stp: $(SRC_PATH)/trace-events +$(QEMU_PROG).stp-installed: $(SRC_PATH)/trace-events $(call quiet-command,$(TRACETOOL) \ --format=stap \ --backend=$(TRACE_BACKEND) \ --binary=$(bindir)/$(QEMU_PROG) \ --target-arch=$(TARGET_ARCH) \ --target-type=$(TARGET_TYPE) \ + < $< > $@," GEN $(TARGET_DIR)$(QEMU_PROG).stp-installed") + +$(QEMU_PROG).stp: $(SRC_PATH)/trace-events + $(call quiet-command,$(TRACETOOL) \ + --format=stap \ + --backend=$(TRACE_BACKEND) \ + --binary=$(realpath .)/$(QEMU_PROG) \ + --target-arch=$(TARGET_ARCH) \ + --target-type=$(TARGET_TYPE) \ < $< > $@," GEN $(TARGET_DIR)$(QEMU_PROG).stp") + else stap: endif @@ -186,7 +196,7 @@ endif endif ifdef CONFIG_TRACE_SYSTEMTAP $(INSTALL_DIR) "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset" - $(INSTALL_DATA) $(QEMU_PROG).stp "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset" + $(INSTALL_DATA) $(QEMU_PROG).stp-installed "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset/$(QEMU_PROG).stp" endif GENERATED_HEADERS += config-target.h
For systemtap the location of the process being tapped is crucial, as a result the existing stp file requires installation for use. There are now two files: $(TARGET_DIR)/$(QEMU_PROG).stp-installed: copied to $(tapdir)/$(QEMU_PROG).stp $(TARGET_DIR)/$(QEMU_PROG).stp: pointing to the built binary, usable without installation To use: stap -I $(TARGET_DIR) ... Signed-off-by: Alon Levy <alevy@redhat.com> --- Makefile.target | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-)