2 # Do not instrument the tracer itself:
3 ifdef CONFIG_FUNCTION_TRACER
4 ORIG_CFLAGS := $(KBUILD_CFLAGS)
5 KBUILD_CFLAGS = $(subst -pg,,$(ORIG_CFLAGS))
12 LIBDIR = $(INTP)/library
14 LIB_OBJS += $(LIBDIR)/baselib.o $(LIBDIR)/kdebug.o $(LIBDIR)/timer.o \
17 INTP_OBJS += $(INTP)/ktap.o $(INTP)/loader.o $(INTP)/object.o \
18 $(INTP)/tstring.o $(INTP)/table.o $(INTP)/vm.o \
19 $(INTP)/opcode.o $(INTP)/strfmt.o $(INTP)/transport.o \
23 ktapvm-y := $(INTP_OBJS)
25 KVERSION ?= $(shell uname -r)
26 KERNEL_SRC ?= /lib/modules/$(KVERSION)/build
28 $(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules
31 $(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules_install
33 KTAPC_CFLAGS = -Wall -O2
37 $(UDIR)/lex.o: $(UDIR)/lex.c
38 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
39 $(UDIR)/parser.o: $(UDIR)/parser.c
40 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
41 $(UDIR)/code.o: $(UDIR)/code.c
42 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
43 $(UDIR)/dump.o: $(UDIR)/dump.c
44 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
45 $(UDIR)/main.o: $(UDIR)/main.c
46 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
47 $(UDIR)/util.o: $(UDIR)/util.c
48 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
49 $(UDIR)/ktapio.o: $(UDIR)/ktapio.c
50 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
51 $(UDIR)/eventdef.o: $(UDIR)/eventdef.c
52 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
53 $(UDIR)/opcode.o: $(INTP)/opcode.c
54 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
55 $(UDIR)/table.o: $(INTP)/table.c
56 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
57 $(UDIR)/tstring.o: $(INTP)/tstring.c
58 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
59 $(UDIR)/object.o: $(INTP)/object.c
60 $(QUIET_CC)$(CC) $(DEBUGINFO_FLAG) $(KTAPC_CFLAGS) -o $@ -c $<
63 KTAPOBJS += $(UDIR)/lex.o
64 KTAPOBJS += $(UDIR)/parser.o
65 KTAPOBJS += $(UDIR)/code.o
66 KTAPOBJS += $(UDIR)/dump.o
67 KTAPOBJS += $(UDIR)/main.o
68 KTAPOBJS += $(UDIR)/util.o
69 KTAPOBJS += $(UDIR)/ktapio.o
70 KTAPOBJS += $(UDIR)/eventdef.o
71 KTAPOBJS += $(UDIR)/opcode.o
72 KTAPOBJS += $(UDIR)/table.o
73 KTAPOBJS += $(UDIR)/tstring.o
74 KTAPOBJS += $(UDIR)/object.o
77 $(QUIET_LINK)$(CC) $(KTAPC_CFLAGS) -o $@ $(KTAPOBJS) -lpthread
79 KMISC := /lib/modules/$(KVERSION)/ktapvm/
83 install -m 644 -c *.ko /lib/modules/$(KVERSION)/ktapvm/
93 cd test; sh ./run_test.sh; cd -
96 $(MAKE) -C $(KERNEL_SRC) M=$(PWD) clean