• Arnaldo Carvalho de Melo's avatar
    tools lib bpf: Fix the build by adding a missing stdarg.h include · dfcbc2f2
    Arnaldo Carvalho de Melo authored
    The libbpf_print_fn_t typedef uses va_list without including the header
    where that type is defined, stdarg.h, breaking in places where we're
    unlucky for that type not to be already defined by some previously
    included header.
    
    Noticed while building on fedora 24 cross building tools/perf to the ARC
    architecture using the uClibc C library:
    
      28 fedora:24-x-ARC-uClibc   : FAIL arc-linux-gcc (ARCompact ISA Linux uClibc toolchain 2017.09-rc2) 7.1.1 20170710
    
        CC       /tmp/build/perf/tests/llvm.o
      In file included from tests/llvm.c:3:0:
      /git/linux/tools/lib/bpf/libbpf.h:57:20: error: unknown type name 'va_list'
            const char *, va_list ap);
                          ^~~~~~~
      /git/linux/tools/lib/bpf/libbpf.h:59:34: error: unknown type name 'libbpf_print_fn_t'
       LIBBPF_API void libbpf_set_print(libbpf_print_fn_t fn);
                                        ^~~~~~~~~~~~~~~~~
      mv: cannot stat '/tmp/build/perf/tests/.llvm.o.tmp': No such file or directory
    
    Cc: Alexei Starovoitov <ast@kernel.org>
    Cc: Daniel Borkmann <daniel@iogearbox.net>
    Cc: Jakub Kicinski <jakub.kicinski@netronome.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Quentin Monnet <quentin.monnet@netronome.com>
    Cc: Stanislav Fomichev <sdf@google.com>
    Cc: Yonghong Song <yhs@fb.com>
    Fixes: a8a1f7d0 ("libbpf: fix libbpf_print")
    Link: https://lkml.kernel.org/n/tip-5270n2quu2gqz22o7itfdx00@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    dfcbc2f2
libbpf.h 14 KB