[PATCH AUTOSEL for 4.15 100/189] samples/bpf: Partially fixes the bpf.o build

From: Sasha Levin
Date: Sun Apr 08 2018 - 23:52:54 EST


From: MickaÃl SalaÃn <mic@xxxxxxxxxxx>

[ Upstream commit c25ef6a5e62fa212d298ce24995ce239f29b5f96 ]

Do not build lib/bpf/bpf.o with this Makefile but use the one from the
library directory. This avoid making a buggy bpf.o file (e.g. missing
symbols).

This patch is useful if some code (e.g. Landlock tests) needs both the
bpf.o (from tools/lib/bpf) and the bpf_load.o (from samples/bpf).

Signed-off-by: MickaÃl SalaÃn <mic@xxxxxxxxxxx>
Cc: Alexei Starovoitov <ast@xxxxxxxxxx>
Cc: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
Signed-off-by: Sasha Levin <alexander.levin@xxxxxxxxxxxxx>
---
samples/bpf/Makefile | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile
index adeaa1302f34..961b45c5eee0 100644
--- a/samples/bpf/Makefile
+++ b/samples/bpf/Makefile
@@ -192,13 +192,16 @@ CLANG_ARCH_ARGS = -target $(ARCH)
endif

# Trick to allow make to be run from this directory
-all:
+all: $(LIBBPF)
$(MAKE) -C ../../ $(CURDIR)/

clean:
$(MAKE) -C ../../ M=$(CURDIR) clean
@rm -f *~

+$(LIBBPF): FORCE
+ $(MAKE) -C $(dir $@) $(notdir $@)
+
$(obj)/syscall_nrs.s: $(src)/syscall_nrs.c
$(call if_changed_dep,cc_s_c)

--
2.15.1