• Jakub Kicinski's avatar
    tools: ynl: work around stale system headers · f0ec58d5
    Jakub Kicinski authored
    The inability to include the uAPI headers directly in tools/
    is one of the bigger annoyances of compiling user space code.
    Most projects trade the pain for smaller inconvenience of having
    to copy the headers under tools/include.
    
    In case of netlink headers I think that we can avoid both.
    Netlink family headers are simple and should be self-contained.
    We can try to twiddle the Makefile a little to force-include
    just the family header, and use system headers for the rest.
    
    This works fairly well. There are two warts - for some reason
    if we specify -include $path/family.h as a compilation flag,
    the #ifdef header guard does not seem to work. So we need
    to throw the guard in on the command line as well. Seems like
    GCC detects that the header is different and tries to include
    both. Second problem is that make wants hash sign to be escaped
    or not depending on the version. Sigh.
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    f0ec58d5
Makefile 1.15 KB