On Tue, 15 Jan 2019 13:52:48 -0800, Stanislav Fomichev wrote:
> 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.
> 
> v2 (addressed Jakub's nits):
>   * better syntax for 'else ifeq'
>   * no space between ifeq args
> 
> Fixes: 29a9c10e4110 ("bpftool: make libbfd optional")
> Signed-off-by: Stanislav Fomichev <s...@google.com>
> ---
>  tools/bpf/bpftool/Makefile | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/bpf/bpftool/Makefile b/tools/bpf/bpftool/Makefile
> index 492f0f24e2d3..fbf7e62a5b86 100644
> --- a/tools/bpf/bpftool/Makefile
> +++ b/tools/bpf/bpftool/Makefile
> @@ -93,9 +93,16 @@ BFD_SRCS = jit_disasm.c
>  SRCS = $(filter-out $(BFD_SRCS),$(wildcard *.c))
>  
>  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
> +
> +ifneq ($(filter -lbfd,$(EXTLIBS)),)

Ah, I just noticed now that you use EXTLIBS here, not LIBS, is that on
purpose?

>  CFLAGS += -DHAVE_LIBBFD_SUPPORT
>  SRCS += $(BFD_SRCS)
> -LIBS += -lbfd -lopcodes
>  endif
>  
>  OBJS = $(patsubst %.c,$(OUTPUT)%.o,$(SRCS)) $(OUTPUT)disasm.o

Reply via email to