[PATCH] samples/bpf/Makefile: Create tools/testing/selftests/bpf dir

From: Hui Zhu
Date: Mon Dec 14 2020 - 05:59:27 EST


From: Hui Zhu <teawaterz@xxxxxxxxxxxxxxxxx>

Got an error when I built samples/bpf in a separate directory:
make O=../bk/ defconfig
make -j64 bzImage
make headers_install
make V=1 M=samples/bpf
...
...
make -C /home/teawater/kernel/linux/samples/bpf/../..//tools/build
CFLAGS= LDFLAGS= fixdep
make -f
/home/teawater/kernel/linux/samples/bpf/../..//tools/build/Makefile.build
dir=. obj=fixdep
make all_cmd
Warning: Kernel ABI header at 'tools/include/uapi/linux/netlink.h'
differs from latest version at 'include/uapi/linux/netlink.h'
Warning: Kernel ABI header at 'tools/include/uapi/linux/if_link.h'
differs from latest version at 'include/uapi/linux/if_link.h'
gcc
-Wp,-MD,samples/bpf/../../tools/testing/selftests/bpf/.cgroup_helpers.o.d
-Wall -O2 -Wmissing-prototypes -Wstrict-prototypes -I./usr/include
-I/home/teawater/kernel/linux/tools/testing/selftests/bpf/
-I/home/teawater/kernel/linux/tools/lib/
-I/home/teawater/kernel/linux/tools/include
-I/home/teawater/kernel/linux/tools/perf -DHAVE_ATTR_TEST=0 -c -o
samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.o
/home/teawater/kernel/linux/samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c
/home/teawater/kernel/linux/samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:315:1:
fatal error: opening dependency file
samples/bpf/../../tools/testing/selftests/bpf/.cgroup_helpers.o.d: No
such file or directory

ls -al samples/bpf/../../tools/testing/selftests/bpf/
ls: cannot access 'samples/bpf/../../tools/testing/selftests/bpf/': No
such file or directory

There is no samples/bpf/../../tools/testing/selftests/bpf/ causing a
compilation error.

This commit add a "make -p" before build files in
samples/bpf/../../tools/testing/selftests/bpf/ to handle the issue.

Signed-off-by: Hui Zhu <teawaterz@xxxxxxxxxxxxxxxxx>
---
samples/bpf/Makefile | 1 +
1 file changed, 1 insertion(+)

diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile
index aeebf5d12f32..5b940eedf2e8 100644
--- a/samples/bpf/Makefile
+++ b/samples/bpf/Makefile
@@ -262,6 +262,7 @@ clean:

$(LIBBPF): FORCE
# Fix up variables inherited from Kbuild that tools/ build system won't like
+ mkdir -p $(obj)/../../tools/testing/selftests/bpf/
$(MAKE) -C $(dir $@) RM='rm -rf' EXTRA_CFLAGS="$(TPROGS_CFLAGS)" \
LDFLAGS=$(TPROGS_LDFLAGS) srctree=$(BPF_SAMPLES_PATH)/../../ O=

--
2.17.1