[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190115195953.238574-1-sdf@google.com>
Date: Tue, 15 Jan 2019 11:59:53 -0800
From: Stanislav Fomichev <sdf@...gle.com>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net, ast@...nel.org, daniel@...earbox.net,
jakub.kicinski@...ronome.com, quentin.monnet@...ronome.com,
Stanislav Fomichev <sdf@...gle.com>
Subject: [PATCH bpf] tools/bpf: properly account for libbfd variations
On some platforms, in order to link against libbfd, we need to
link against liberty and even possibly libz. Account for that
in the bpftool Makefile. We now have proper feature detection
for each case, so handle each one separately.
See recent commit 14541b1e7e72 ("perf build: Don't unconditionally link the
libbfd feature test to -liberty and -lz") where I fixed feature
detection.
Fixes: 29a9c10e4110 ("bpftool: make libbfd optional")
Signed-off-by: Stanislav Fomichev <sdf@...gle.com>
---
tools/bpf/bpftool/Makefile | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/tools/bpf/bpftool/Makefile b/tools/bpf/bpftool/Makefile
index 492f0f24e2d3..af9a25bf480d 100644
--- a/tools/bpf/bpftool/Makefile
+++ b/tools/bpf/bpftool/Makefile
@@ -92,10 +92,21 @@ BFD_SRCS = jit_disasm.c
SRCS = $(filter-out $(BFD_SRCS),$(wildcard *.c))
-ifeq ($(feature-libbfd),1)
+ifeq ($(feature-libbfd), 1)
+LIBS += -lbfd -ldl -lopcodes
+else
+ ifeq ($(feature-libbfd-liberty), 1)
+ LIBS += -lbfd -ldl -lopcodes -liberty
+ else
+ ifeq ($(feature-libbfd-liberty-z), 1)
+ LIBS += -lbfd -ldl -lopcodes -liberty -lz
+ endif
+ endif
+endif
+
+ifneq ($(filter -lbfd,$(EXTLIBS)),)
CFLAGS += -DHAVE_LIBBFD_SUPPORT
SRCS += $(BFD_SRCS)
-LIBS += -lbfd -lopcodes
endif
OBJS = $(patsubst %.c,$(OUTPUT)%.o,$(SRCS)) $(OUTPUT)disasm.o
--
2.20.1.97.g81188d93c3-goog
Powered by blists - more mailing lists