diff options
author | Vladimir Kobal <vlad@prokk.net> | 2020-07-16 15:10:35 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-07-16 15:10:35 +0300 |
commit | 3e84239ff64ececa6bd54bbddbc9e3d22542dfa9 (patch) | |
tree | a86249faf962bec50715e925a432bb07efe3d102 /configure.ac | |
parent | 1b606bc1b2a16dfbcc8b5c7ed780906b482eef11 (diff) |
Use the libbpf library for the eBPF plugin (#9490)
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 38 |
1 files changed, 24 insertions, 14 deletions
diff --git a/configure.ac b/configure.ac index 1cba7bdd49..6268734922 100644 --- a/configure.ac +++ b/configure.ac @@ -406,17 +406,6 @@ PKG_CHECK_MODULES([JSON],[json-c],AC_CHECK_LIB( OPTIONAL_JSONC_LIBS="${JSONC_LIBS}" # ----------------------------------------------------------------------------- -# VFS plugin libs - -AC_CHECK_LIB( - [dl], - [dlopen], - [EBPF_LIBS="-ldl"] -) - -OPTIONAL_EBPF_LIBS="${EBPF_LIBS}" - -# ----------------------------------------------------------------------------- # DB engine and HTTPS test "${enable_dbengine}" = "yes" -a -z "${LZ4_LIBS}" && \ AC_MSG_ERROR([liblz4 required but not found. Try installing 'liblz4-dev' or 'lz4-devel'.]) @@ -957,8 +946,28 @@ AM_CONDITIONAL([ENABLE_PLUGIN_PERF], [test "${enable_plugin_perf}" = "yes"]) # ----------------------------------------------------------------------------- # ebpf.plugin +PKG_CHECK_MODULES( + [LIBELF], + [libelf], + [have_libelf=yes], + [have_libelf=no] +) + +AC_CHECK_TYPE( + [struct bpf_prog_info], + [have_bpf=yes], + [have_bpf=no], + [#include <linux/bpf.h>] +) + AC_MSG_CHECKING([if ebpf.plugin should be enabled]) -if test "${build_target}" == "linux" -a "${EBPF_LIBS}"; then +if test "${build_target}" = "linux" -a \ + "${have_libelf}" = "yes" -a \ + "${have_bpf}" = "yes" -a \ + -f externaldeps/libbpf/libbpf.a; then + OPTIONAL_BPF_CFLAGS="${LIBELF_CFLAGS} -I externaldeps/libbpf/include" + OPTIONAL_BPF_LIBS="externaldeps/libbpf/libbpf.a ${LIBELF_LIBS}" + AC_DEFINE([HAVE_LIBBPF], [1], [libbpf usability]) enable_ebpf="yes" else enable_ebpf="no" @@ -1330,7 +1339,7 @@ AC_SUBST([webdir]) CFLAGS="${CFLAGS} ${OPTIONAL_MATH_CFLAGS} ${OPTIONAL_NFACCT_CFLAGS} ${OPTIONAL_ZLIB_CFLAGS} ${OPTIONAL_UUID_CFLAGS} \ ${OPTIONAL_LIBCAP_CFLAGS} ${OPTIONAL_IPMIMONITORING_CFLAGS} ${OPTIONAL_CUPS_CFLAGS} ${OPTIONAL_XENSTAT_FLAGS} \ ${OPTIONAL_KINESIS_CFLAGS} ${OPTIONAL_PUBSUB_CFLAGS} ${OPTIONAL_PROMETHEUS_REMOTE_WRITE_CFLAGS} \ - ${OPTIONAL_MONGOC_CFLAGS} ${LWS_CFLAGS} ${OPTIONAL_JSONC_STATIC_CFLAGS}" + ${OPTIONAL_MONGOC_CFLAGS} ${LWS_CFLAGS} ${OPTIONAL_JSONC_STATIC_CFLAGS} ${OPTIONAL_BPF_CFLAGS}" CXXFLAGS="${CFLAGS} ${CXX11FLAG}" @@ -1352,7 +1361,6 @@ AC_SUBST([OPTIONAL_UV_LIBS]) AC_SUBST([OPTIONAL_LZ4_LIBS]) AC_SUBST([OPTIONAL_JUDY_LIBS]) AC_SUBST([OPTIONAL_SSL_LIBS]) -AC_SUBST([OPTIONAL_EBPF_LIBS]) AC_SUBST([OPTIONAL_JSONC_LIBS]) AC_SUBST([OPTIONAL_NFACCT_CFLAGS]) AC_SUBST([OPTIONAL_NFACCT_LIBS]) @@ -1360,6 +1368,8 @@ AC_SUBST([OPTIONAL_ZLIB_CFLAGS]) AC_SUBST([OPTIONAL_ZLIB_LIBS]) AC_SUBST([OPTIONAL_UUID_CFLAGS]) AC_SUBST([OPTIONAL_UUID_LIBS]) +AC_SUBST([OPTIONAL_BPF_CFLAGS]) +AC_SUBST([OPTIONAL_BPF_LIBS]) AC_SUBST([OPTIONAL_MQTT_LIBS]) AC_SUBST([OPTIONAL_LIBCAP_CFLAGS]) AC_SUBST([OPTIONAL_LIBCAP_LIBS]) |