]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/staging/ktap/Makefile
Merge 3.12-rc6 into staging-next.
[karo-tx-linux.git] / drivers / staging / ktap / Makefile
1
2 # Do not instrument the tracer itself:
3 ifdef CONFIG_FUNCTION_TRACER
4 ORIG_CFLAGS := $(KBUILD_CFLAGS)
5 KBUILD_CFLAGS = $(subst -pg,,$(ORIG_CFLAGS))
6 endif
7
8 all: mod ktap
9
10 INTP = interpreter
11
12 LIBDIR = $(INTP)/library
13
14 LIB_OBJS += $(LIBDIR)/baselib.o $(LIBDIR)/kdebug.o $(LIBDIR)/timer.o \
15                 $(LIBDIR)/ansilib.o
16
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 \
20                 $(LIB_OBJS)
21
22 obj-m           += ktapvm.o
23 ktapvm-y        := $(INTP_OBJS)
24
25 KVERSION ?= $(shell uname -r)
26 KERNEL_SRC ?= /lib/modules/$(KVERSION)/build
27 mod:
28         $(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules
29
30 modules_install:
31         $(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules_install
32
33 KTAPC_CFLAGS = -Wall -O2
34
35 UDIR = userspace
36
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 $<
61
62 KTAPOBJS =
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
75
76 ktap: $(KTAPOBJS)
77         $(QUIET_LINK)$(CC) $(KTAPC_CFLAGS) -o $@ $(KTAPOBJS) -lpthread
78
79 KMISC := /lib/modules/$(KVERSION)/ktapvm/
80
81 install: mod ktap
82         install -d $(KMISC)
83         install -m 644 -c *.ko /lib/modules/$(KVERSION)/ktapvm/
84         /sbin/depmod -a
85
86 load:
87         insmod ktapvm.ko
88
89 unload:
90         rmmod ktapvm
91
92 test: FORCE
93         cd test; sh ./run_test.sh; cd -
94
95 clean:
96         $(MAKE) -C $(KERNEL_SRC) M=$(PWD) clean
97         $(RM) ktap
98
99 PHONY += FORCE
100 FORCE:
101