Re: [PATCH bpf v3] libbpf: Fix build on read-only filesystems

From: Daniel Borkmann
Date: Mon Dec 23 2019 - 09:39:50 EST


On 12/23/19 7:29 AM, Andrii Nakryiko wrote:
On Sun, Dec 22, 2019 at 10:14 PM Namhyung Kim <namhyung@xxxxxxxxxx> wrote:

I got the following error when I tried to build perf on a read-only
filesystem with O=dir option.

$ cd /some/where/ro/linux/tools/perf
$ make O=$HOME/build/perf
...
CC /home/namhyung/build/perf/lib.o
/bin/sh: bpf_helper_defs.h: Read-only file system
make[3]: *** [Makefile:184: bpf_helper_defs.h] Error 1
make[2]: *** [Makefile.perf:778: /home/namhyung/build/perf/libbpf.a] Error 2
make[2]: *** Waiting for unfinished jobs....
LD /home/namhyung/build/perf/libperf-in.o
AR /home/namhyung/build/perf/libperf.a
PERF_VERSION = 5.4.0
make[1]: *** [Makefile.perf:225: sub-make] Error 2
make: *** [Makefile:70: all] Error 2

It was becaused bpf_helper_defs.h was generated in current directory.
Move it to OUTPUT directory.

Tested-by: Andrii Nakryiko <andriin@xxxxxx>
Acked-by: Andrii Nakryiko <andriin@xxxxxx>
Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxxx>
---
tools/lib/bpf/Makefile | 15 ++++++++-------
tools/testing/selftests/bpf/.gitignore | 1 +
tools/testing/selftests/bpf/Makefile | 6 +++---
3 files changed, 12 insertions(+), 10 deletions(-)


[...]

diff --git a/tools/testing/selftests/bpf/.gitignore b/tools/testing/selftests/bpf/.gitignore
index 419652458da4..1ff0a9f49c01 100644
--- a/tools/testing/selftests/bpf/.gitignore
+++ b/tools/testing/selftests/bpf/.gitignore
@@ -40,3 +40,4 @@ xdping
test_cpp
/no_alu32
/bpf_gcc
+bpf_helper_defs.h

looks good, thanks!

Applied, thanks!