configure: provide surrogates for possibly missing libbpf_version.h

Old libbpf library versions (< 0.7.x) may not have the libbpf_version.h
header packaged. This header would provide LIBBPF_MAJOR_VERSION and
LIBBPF_MINOR_VERSION which are then missing to control conditional
compilation in some source files.

Provide surrogates for these defines via CFLAGS that are derived from
the LIBBPF_VERSION determined with $(${PKG_CONFIG} libbpf --modversion).

Signed-off-by: Stefan Mätje <stefan.maetje@esd.eu>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
Stefan Mätje 2024-08-12 00:31:34 +02:00 committed by Stephen Hemminger
parent 72c13bc5d4
commit 0ddadc93e5

6
configure vendored
View File

@ -315,6 +315,12 @@ check_libbpf()
echo "HAVE_LIBBPF:=y" >> $CONFIG
echo 'CFLAGS += -DHAVE_LIBBPF ' $LIBBPF_CFLAGS >> $CONFIG
echo "CFLAGS += -DLIBBPF_VERSION=\\\"$LIBBPF_VERSION\\\"" >> $CONFIG
LIBBPF_MAJOR=$(IFS="."; set $LIBBPF_VERSION; echo $1)
LIBBPF_MINOR=$(IFS="."; set $LIBBPF_VERSION; echo $2)
if [ "$LIBBPF_MAJOR" -eq 0 -a "$LIBBPF_MINOR" -lt 7 ]; then
# Newer libbpf versions provide these defines in the bpf/libbpf_version.h header.
echo "CFLAGS += -DLIBBPF_MAJOR_VERSION=$LIBBPF_MAJOR -DLIBBPF_MINOR_VERSION=$LIBBPF_MINOR" >> $CONFIG
fi
echo 'LDLIBS += ' $LIBBPF_LDLIBS >> $CONFIG
if [ -z "$LIBBPF_DIR" ]; then