• Quentin Monnet's avatar
    tools/runqslower: Install libbpf headers when building · be79505c
    Quentin Monnet authored
    API headers from libbpf should not be accessed directly from the
    library's source directory. Instead, they should be exported with "make
    install_headers". Let's make sure that runqslower installs the
    headers properly when building.
    
    We use a libbpf_hdrs target to mark the logical dependency on libbpf's
    headers export for a number of object files, even though the headers
    should have been exported at this time (since bpftool needs them, and is
    required to generate the skeleton or the vmlinux.h).
    
    When descending from a parent Makefile, the specific output directories
    for building the library and exporting the headers are configurable with
    BPFOBJ_OUTPUT and BPF_DESTDIR, respectively. This is in addition to
    OUTPUT, on top of which those variables are constructed by default.
    
    Also adjust the Makefile for the BPF selftests. We pass a number of
    variables to the "make" invocation, because we want to point runqslower
    to the (target) libbpf shared with other tools, instead of building its
    own version. In addition, runqslower relies on (target) bpftool, and we
    also want to pass the proper variables to its Makefile so that bpftool
    itself reuses the same libbpf.
    Signed-off-by: default avatarQuentin Monnet <quentin@isovalent.com>
    Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
    Link: https://lore.kernel.org/bpf/20211007194438.34443-6-quentin@isovalent.com
    be79505c
Makefile 20.2 KB