On 11/20, Alexei Starovoitov wrote: > On Tue, Nov 20, 2018 at 01:37:23PM -0800, Stanislav Fomichev wrote: > > Wrap headers in extern "C", to turn off C++ mangling. > > This simplifies including libbpf in c++ and linking against it. > > > > v2 changes: > > * do the same for btf.h > > > > Signed-off-by: Stanislav Fomichev <s...@google.com> > > --- > > tools/lib/bpf/bpf.h | 9 +++++++++ > > tools/lib/bpf/btf.h | 8 ++++++++ > > tools/lib/bpf/libbpf.h | 9 +++++++++ > > 3 files changed, 26 insertions(+) > > > > diff --git a/tools/lib/bpf/bpf.h b/tools/lib/bpf/bpf.h > > index 26a51538213c..9ea3aec82d8a 100644 > > --- a/tools/lib/bpf/bpf.h > > +++ b/tools/lib/bpf/bpf.h > > @@ -27,6 +27,10 @@ > > #include <stdbool.h> > > #include <stddef.h> > > > > +#ifdef __cplusplus > > +extern "C" { > > +#endif > > Acked-by: Alexei Starovoitov <a...@kernel.org> > > was wondering whether it's possible to make it testable. > HOSTCXX is available, but I don't see much of the kernel tree > using it... By testable you mean compile some dummy c++ main and link against libbpf?
perf has something similar: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/perf/util/c++/clang-test.cpp#n7 But they don't use Makefiles for that (there is USE_CXX feature test as well), so I'm not sure either :-/