Commit 8998a479 authored by Akihiko Odaki's avatar Akihiko Odaki Committed by Andrii Nakryiko
Browse files

selftests/bpf: Use pkg-config for libelf



When linking statically, libraries may require other dependencies to be
included to ld flags. In particular, libelf may require libzstd. Use
pkg-config to determine such dependencies.

Signed-off-by: default avatarAkihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20231125084253.85025-4-akihiko.odaki@daynix.com
parent 18f6f9de
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -29,13 +29,17 @@ SAN_CFLAGS ?=
SAN_LDFLAGS	?= $(SAN_CFLAGS)
RELEASE		?=
OPT_FLAGS	?= $(if $(RELEASE),-O2,-O0)

LIBELF_CFLAGS	:= $(shell $(PKG_CONFIG) libelf --cflags 2>/dev/null)
LIBELF_LIBS	:= $(shell $(PKG_CONFIG) libelf --libs 2>/dev/null || echo -lelf)

CFLAGS += -g $(OPT_FLAGS) -rdynamic					\
	  -Wall -Werror 						\
	  $(GENFLAGS) $(SAN_CFLAGS)					\
	  $(GENFLAGS) $(SAN_CFLAGS) $(LIBELF_CFLAGS)			\
	  -I$(CURDIR) -I$(INCLUDE_DIR) -I$(GENDIR) -I$(LIBDIR)		\
	  -I$(TOOLSINCDIR) -I$(APIDIR) -I$(OUTPUT)
LDFLAGS += $(SAN_LDFLAGS)
LDLIBS += -lelf -lz -lrt -lpthread
LDLIBS += $(LIBELF_LIBS) -lz -lrt -lpthread

ifneq ($(LLVM),)
# Silence some warnings when compiled with clang