diff mbox

[v2] Add a stp file for usage from build directory

Message ID 1369787288-4478-1-git-send-email-alevy@redhat.com
State New
Headers show

Commit Message

Alon Levy May 29, 2013, 12:28 a.m. UTC
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(-)

Comments

Paolo Bonzini May 29, 2013, 6:29 a.m. UTC | #1
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
Stefan Hajnoczi May 29, 2013, 7:57 a.m. UTC | #2
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 mbox

Patch

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