mirror of
https://github.com/netdata/libbpf.git
synced 2026-04-05 08:09:07 +08:00
Makefile: get libbpf version from libbpf.map
Similarly to kernel-side Makefile ([0]), get libbpf version by looking at latest version in libbpf.map. [0] https://patchwork.ozlabs.org/patch/1147232/ Signed-off-by: Andrii Nakryiko <andriin@fb.com>
This commit is contained in:
committed by
Andrii Nakryiko
parent
e78a36f4b0
commit
d60f568961
17
src/Makefile
17
src/Makefile
@@ -1,10 +1,9 @@
|
|||||||
# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
|
# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
|
||||||
|
|
||||||
VERSION = 0
|
LIBBPF_VERSION := $(shell \
|
||||||
PATCHLEVEL = 0
|
grep -oE '^LIBBPF_([0-9.]+)' libbpf.map | \
|
||||||
EXTRAVERSION = 4
|
sort -rV | head -n1 | cut -d'_' -f2)
|
||||||
|
LIBBPF_MAJOR_VERSION := $(firstword $(subst ., ,$(LIBBPF_VERSION)))
|
||||||
LIBBPF_VERSION = $(VERSION).$(PATCHLEVEL).$(EXTRAVERSION)
|
|
||||||
|
|
||||||
TOPDIR = ..
|
TOPDIR = ..
|
||||||
|
|
||||||
@@ -40,7 +39,7 @@ OBJS := $(addprefix $(OBJDIR)/,bpf.o btf.o libbpf.o libbpf_errno.o netlink.o \
|
|||||||
LIBS := $(OBJDIR)/libbpf.a
|
LIBS := $(OBJDIR)/libbpf.a
|
||||||
ifndef BUILD_STATIC_ONLY
|
ifndef BUILD_STATIC_ONLY
|
||||||
LIBS += $(OBJDIR)/libbpf.so \
|
LIBS += $(OBJDIR)/libbpf.so \
|
||||||
$(OBJDIR)/libbpf.so.$(VERSION) \
|
$(OBJDIR)/libbpf.so.$(LIBBPF_MAJOR_VERSION) \
|
||||||
$(OBJDIR)/libbpf.so.$(LIBBPF_VERSION)
|
$(OBJDIR)/libbpf.so.$(LIBBPF_VERSION)
|
||||||
VERSION_SCRIPT := libbpf.map
|
VERSION_SCRIPT := libbpf.map
|
||||||
endif
|
endif
|
||||||
@@ -71,15 +70,15 @@ all: $(LIBS) $(PC_FILE)
|
|||||||
$(OBJDIR)/libbpf.a: $(OBJS)
|
$(OBJDIR)/libbpf.a: $(OBJS)
|
||||||
$(AR) rcs $@ $^
|
$(AR) rcs $@ $^
|
||||||
|
|
||||||
$(OBJDIR)/libbpf.so: $(OBJDIR)/libbpf.so.$(VERSION)
|
$(OBJDIR)/libbpf.so: $(OBJDIR)/libbpf.so.$(LIBBPF_MAJOR_VERSION)
|
||||||
ln -sf $(^F) $@
|
ln -sf $(^F) $@
|
||||||
|
|
||||||
$(OBJDIR)/libbpf.so.$(VERSION): $(OBJDIR)/libbpf.so.$(LIBBPF_VERSION)
|
$(OBJDIR)/libbpf.so.$(LIBBPF_MAJOR_VERSION): $(OBJDIR)/libbpf.so.$(LIBBPF_VERSION)
|
||||||
ln -sf $(^F) $@
|
ln -sf $(^F) $@
|
||||||
|
|
||||||
$(OBJDIR)/libbpf.so.$(LIBBPF_VERSION): $(OBJS)
|
$(OBJDIR)/libbpf.so.$(LIBBPF_VERSION): $(OBJS)
|
||||||
$(CC) -shared $(ALL_LDFLAGS) -Wl,--version-script=$(VERSION_SCRIPT) \
|
$(CC) -shared $(ALL_LDFLAGS) -Wl,--version-script=$(VERSION_SCRIPT) \
|
||||||
-Wl,-soname,libbpf.so.$(VERSION) \
|
-Wl,-soname,libbpf.so.$(LIBBPF_MAJOR_VERSION) \
|
||||||
$^ -o $@
|
$^ -o $@
|
||||||
|
|
||||||
$(OBJDIR)/libbpf.pc:
|
$(OBJDIR)/libbpf.pc:
|
||||||
|
|||||||
Reference in New Issue
Block a user