.. | .. |
---|
3 | 3 | |
---|
4 | 4 | prefix ?= /usr/local |
---|
5 | 5 | |
---|
6 | | -CC = gcc |
---|
7 | 6 | LEX = flex |
---|
8 | 7 | YACC = bison |
---|
9 | 8 | MAKE = make |
---|
10 | 9 | INSTALL ?= install |
---|
11 | 10 | |
---|
12 | 11 | CFLAGS += -Wall -O2 |
---|
13 | | -CFLAGS += -D__EXPORTED_HEADERS__ -I$(srctree)/include/uapi -I$(srctree)/include |
---|
| 12 | +CFLAGS += -D__EXPORTED_HEADERS__ -I$(srctree)/tools/include/uapi \ |
---|
| 13 | + -I$(srctree)/tools/include |
---|
14 | 14 | |
---|
| 15 | +# This will work when bpf is built in tools env. where srctree |
---|
| 16 | +# isn't set and when invoked from selftests build, where srctree |
---|
| 17 | +# is set to ".". building_out_of_srctree is undefined for in srctree |
---|
| 18 | +# builds |
---|
15 | 19 | ifeq ($(srctree),) |
---|
| 20 | +update_srctree := 1 |
---|
| 21 | +endif |
---|
| 22 | +ifndef building_out_of_srctree |
---|
| 23 | +update_srctree := 1 |
---|
| 24 | +endif |
---|
| 25 | +ifeq ($(update_srctree),1) |
---|
16 | 26 | srctree := $(patsubst %/,%,$(dir $(CURDIR))) |
---|
17 | 27 | srctree := $(patsubst %/,%,$(dir $(srctree))) |
---|
18 | 28 | endif |
---|
.. | .. |
---|
28 | 38 | FEATURE_DISPLAY = libbfd disassembler-four-args |
---|
29 | 39 | |
---|
30 | 40 | check_feat := 1 |
---|
31 | | -NON_CHECK_FEAT_TARGETS := clean bpftool_clean |
---|
| 41 | +NON_CHECK_FEAT_TARGETS := clean bpftool_clean runqslower_clean resolve_btfids_clean |
---|
32 | 42 | ifdef MAKECMDGOALS |
---|
33 | 43 | ifeq ($(filter-out $(NON_CHECK_FEAT_TARGETS),$(MAKECMDGOALS)),) |
---|
34 | 44 | check_feat := 0 |
---|
.. | .. |
---|
54 | 64 | $(QUIET_FLEX)$(LEX) -o $@ $< |
---|
55 | 65 | |
---|
56 | 66 | $(OUTPUT)%.o: $(srctree)/tools/bpf/%.c |
---|
57 | | - $(QUIET_CC)$(COMPILE.c) -o $@ $< |
---|
| 67 | + $(QUIET_CC)$(CC) $(CFLAGS) -c -o $@ $< |
---|
58 | 68 | |
---|
59 | 69 | $(OUTPUT)%.yacc.o: $(OUTPUT)%.yacc.c |
---|
60 | | - $(QUIET_CC)$(COMPILE.c) -o $@ $< |
---|
| 70 | + $(QUIET_CC)$(CC) $(CFLAGS) -c -o $@ $< |
---|
61 | 71 | $(OUTPUT)%.lex.o: $(OUTPUT)%.lex.c |
---|
62 | | - $(QUIET_CC)$(COMPILE.c) -o $@ $< |
---|
| 72 | + $(QUIET_CC)$(CC) $(CFLAGS) -c -o $@ $< |
---|
63 | 73 | |
---|
64 | 74 | PROGS = $(OUTPUT)bpf_jit_disasm $(OUTPUT)bpf_dbg $(OUTPUT)bpf_asm |
---|
65 | 75 | |
---|
66 | | -all: $(PROGS) bpftool |
---|
| 76 | +all: $(PROGS) bpftool runqslower |
---|
67 | 77 | |
---|
68 | 78 | $(OUTPUT)bpf_jit_disasm: CFLAGS += -DPACKAGE='bpf_jit_disasm' |
---|
69 | 79 | $(OUTPUT)bpf_jit_disasm: $(OUTPUT)bpf_jit_disasm.o |
---|
.. | .. |
---|
79 | 89 | $(OUTPUT)bpf_exp.yacc.o: $(OUTPUT)bpf_exp.yacc.c |
---|
80 | 90 | $(OUTPUT)bpf_exp.lex.o: $(OUTPUT)bpf_exp.lex.c |
---|
81 | 91 | |
---|
82 | | -clean: bpftool_clean |
---|
| 92 | +clean: bpftool_clean runqslower_clean resolve_btfids_clean |
---|
83 | 93 | $(call QUIET_CLEAN, bpf-progs) |
---|
84 | | - $(Q)rm -rf $(OUTPUT)*.o $(OUTPUT)bpf_jit_disasm $(OUTPUT)bpf_dbg \ |
---|
| 94 | + $(Q)$(RM) -r -- $(OUTPUT)*.o $(OUTPUT)bpf_jit_disasm $(OUTPUT)bpf_dbg \ |
---|
85 | 95 | $(OUTPUT)bpf_asm $(OUTPUT)bpf_exp.yacc.* $(OUTPUT)bpf_exp.lex.* |
---|
86 | 96 | $(call QUIET_CLEAN, core-gen) |
---|
87 | | - $(Q)rm -f $(OUTPUT)FEATURE-DUMP.bpf |
---|
| 97 | + $(Q)$(RM) -- $(OUTPUT)FEATURE-DUMP.bpf |
---|
| 98 | + $(Q)$(RM) -r -- $(OUTPUT)feature |
---|
88 | 99 | |
---|
89 | 100 | install: $(PROGS) bpftool_install |
---|
90 | 101 | $(call QUIET_INSTALL, bpf_jit_disasm) |
---|
.. | .. |
---|
104 | 115 | bpftool_clean: |
---|
105 | 116 | $(call descend,bpftool,clean) |
---|
106 | 117 | |
---|
107 | | -.PHONY: all install clean bpftool bpftool_install bpftool_clean |
---|
| 118 | +runqslower: |
---|
| 119 | + $(call descend,runqslower) |
---|
| 120 | + |
---|
| 121 | +runqslower_clean: |
---|
| 122 | + $(call descend,runqslower,clean) |
---|
| 123 | + |
---|
| 124 | +resolve_btfids: |
---|
| 125 | + $(call descend,resolve_btfids) |
---|
| 126 | + |
---|
| 127 | +resolve_btfids_clean: |
---|
| 128 | + $(call descend,resolve_btfids,clean) |
---|
| 129 | + |
---|
| 130 | +.PHONY: all install clean bpftool bpftool_install bpftool_clean \ |
---|
| 131 | + runqslower runqslower_clean \ |
---|
| 132 | + resolve_btfids resolve_btfids_clean |
---|