59 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
| # -*- mode: makefile -*-
 | |
| 
 | |
| ######################################################################
 | |
| # Auto-generated header for tracing routines
 | |
| 
 | |
| $(obj)/generated-tracers.h: $(obj)/generated-tracers.h-timestamp
 | |
| $(obj)/generated-tracers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak
 | |
| 	$(call quiet-command,$(TRACETOOL) \
 | |
| 		--format=h \
 | |
| 		--backend=$(TRACE_BACKEND) \
 | |
| 		< $< > $@,"  GEN   $(patsubst %-timestamp,%,$@)")
 | |
| 	@cmp -s $@ $(patsubst %-timestamp,%,$@) || cp $@ $(patsubst %-timestamp,%,$@)
 | |
| 
 | |
| ######################################################################
 | |
| # Auto-generated tracing routines (non-DTrace)
 | |
| 
 | |
| ifneq ($(TRACE_BACKEND),dtrace)
 | |
| $(obj)/generated-tracers.c: $(obj)/generated-tracers.c-timestamp
 | |
| $(obj)/generated-tracers.c-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak
 | |
| 	$(call quiet-command,$(TRACETOOL) \
 | |
| 		--format=c \
 | |
| 		--backend=$(TRACE_BACKEND) \
 | |
| 		< $< > $@,"  GEN   $(patsubst %-timestamp,%,$@)")
 | |
| 	@cmp -s $@ $(patsubst %-timestamp,%,$@) || cp $@ $(patsubst %-timestamp,%,$@)
 | |
| 
 | |
| $(obj)/generated-tracers.o: $(obj)/generated-tracers.c $(obj)/generated-tracers.h
 | |
| endif
 | |
| 
 | |
| 
 | |
| ######################################################################
 | |
| # Auto-generated DTrace code
 | |
| 
 | |
| # Normal practice is to name DTrace probe file with a '.d' extension
 | |
| # but that gets picked up by QEMU's Makefile as an external dependency
 | |
| # rule file. So we use '.dtrace' instead
 | |
| ifeq ($(TRACE_BACKEND),dtrace)
 | |
| $(obj)/generated-tracers.dtrace: $(obj)/generated-tracers.dtrace-timestamp
 | |
| $(obj)/generated-tracers.dtrace-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak
 | |
| 	$(call quiet-command,$(TRACETOOL) \
 | |
| 		--format=d \
 | |
| 		--backend=$(TRACE_BACKEND) \
 | |
| 		< $< > $@,"  GEN   $(patsubst %-timestamp,%,$@)")
 | |
| 	@cmp -s $@ $(patsubst %-timestamp,%,$@) || cp $@ $(patsubst %-timestamp,%,$@)
 | |
| 
 | |
| $(obj)/generated-tracers-dtrace.h: $(obj)/generated-tracers.dtrace
 | |
| 	$(call quiet-command,dtrace -o $@ -h -s $<, "  GEN   $@")
 | |
| 
 | |
| $(obj)/generated-tracers.o: $(obj)/generated-tracers.dtrace
 | |
| endif
 | |
| 
 | |
| ######################################################################
 | |
| # Backend code
 | |
| 
 | |
| util-obj-$(CONFIG_TRACE_DEFAULT) += default.o
 | |
| util-obj-$(CONFIG_TRACE_SIMPLE) += simple.o
 | |
| util-obj-$(CONFIG_TRACE_STDERR) += stderr.o
 | |
| util-obj-y += control.o
 | |
| util-obj-y += generated-tracers.o
 |