bpf: also include toolchain standard header as system header
authorChristian Marangi <ansuelsmth@gmail.com>
Sun, 5 May 2024 15:48:31 +0000 (17:48 +0200)
committerChristian Marangi <ansuelsmth@gmail.com>
Mon, 17 Jun 2024 11:48:29 +0000 (13:48 +0200)
Also include toolchain standard header as system header. These are
required by xdp-tools that try to include stddef.h and stdbool.h for
some tools. These header are usually in /lib/gcc/../include but musl
also have some special variant in /include.

To fix compilation of xdp-tools, also include these standard header.
These header should follow ISO C standard and should not introduce
regression in bpf tools making them specific to an arch.

Link: https://github.com/openwrt/openwrt/pull/15390
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
include/bpf.mk

index 9abc6601232c0f5f2d49dc1d35dee0d30e777c2f..85c3edb4c773b2341eb08206ffe2dba3f76e0e06 100644 (file)
@@ -33,7 +33,8 @@ BPF_TARGET:=bpf$(if $(CONFIG_BIG_ENDIAN),eb,el)
 BPF_HEADERS_DIR:=$(STAGING_DIR)/bpf-headers
 
 BPF_KERNEL_INCLUDE := \
-       -nostdinc $(patsubst %,-isystem %,$(TOOLCHAIN_INC_DIRS)) \
+       -nostdinc -isystem $(TOOLCHAIN_ROOT_DIR)/lib/gcc/*/*/include \
+       $(patsubst %,-isystem%,$(TOOLCHAIN_INC_DIRS)) \
        -I$(BPF_HEADERS_DIR)/arch/$(BPF_KARCH)/include \
        -I$(BPF_HEADERS_DIR)/arch/$(BPF_KARCH)/include/asm/mach-generic \
        -I$(BPF_HEADERS_DIR)/arch/$(BPF_KARCH)/include/generated \