]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
configure: provide surrogates for possibly missing libbpf_version.h
authorStefan Mätje <stefan.maetje@esd.eu>
Sun, 11 Aug 2024 22:31:34 +0000 (00:31 +0200)
committerStephen Hemminger <stephen@networkplumber.org>
Thu, 15 Aug 2024 15:24:37 +0000 (08:24 -0700)
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>
configure

index 928048b3d8c0a8f63645a6eefbff6b2216060b4d..7437db4f22a827920e3dd23df4e6a0077d3932aa 100755 (executable)
--- a/configure
+++ b/configure
@@ -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