Linux-libre 5.0.14-gnu
[librecmc/linux-libre.git] / tools / testing / selftests / tc-testing / bpf / Makefile
1 # SPDX-License-Identifier: GPL-2.0
2
3 APIDIR := ../../../../include/uapi
4 TEST_GEN_FILES = action.o
5
6 top_srcdir = ../../../../..
7 KSFT_KHDR_INSTALL := 1
8 include ../../lib.mk
9
10 CLANG ?= clang
11 LLC   ?= llc
12 PROBE := $(shell $(LLC) -march=bpf -mcpu=probe -filetype=null /dev/null 2>&1)
13
14 ifeq ($(PROBE),)
15   CPU ?= probe
16 else
17   CPU ?= generic
18 endif
19
20 CLANG_SYS_INCLUDES := $(shell $(CLANG) -v -E - </dev/null 2>&1 \
21         | sed -n '/<...> search starts here:/,/End of search list./{ s| \(/.*\)|-idirafter \1|p }')
22
23 CLANG_FLAGS = -I. -I$(APIDIR) \
24               $(CLANG_SYS_INCLUDES) \
25               -Wno-compare-distinct-pointer-types
26
27 $(OUTPUT)/%.o: %.c
28         $(CLANG) $(CLANG_FLAGS) \
29                  -O2 -target bpf -emit-llvm -c $< -o - |      \
30         $(LLC) -march=bpf -mcpu=$(CPU) $(LLC_FLAGS) -filetype=obj -o $@