From patchwork Tue Jan 15 21:52:48 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stanislav Fomichev X-Patchwork-Id: 1025499 X-Patchwork-Delegate: bpf@iogearbox.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=google.com header.i=@google.com header.b="GEFNp5n8"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 43fPGG3Qqfz9sBZ for ; Wed, 16 Jan 2019 08:52:54 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2390727AbfAOVwx (ORCPT ); Tue, 15 Jan 2019 16:52:53 -0500 Received: from mail-pl1-f202.google.com ([209.85.214.202]:36645 "EHLO mail-pl1-f202.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728421AbfAOVwx (ORCPT ); Tue, 15 Jan 2019 16:52:53 -0500 Received: by mail-pl1-f202.google.com with SMTP id e68so2493770plb.3 for ; Tue, 15 Jan 2019 13:52:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=NG2BvIpym952C0/IJgFK7LooGtG7cQ51/99MtbpQ8NU=; b=GEFNp5n8rtNMCOq8KD1lf8lRalMeLtvqXlWkUn0csPwTuthdkRYtpqzSE3D0u9PLVB B+Vydo+EckfCrbnlZrGAa/kntzLCb4Kfb35KyI7oLH0PtOz//X7h29aQz1sQmUHXMjBO kWHN887E1eAKOumixmY8804OSMVZaWK8E/jZG2gJzZ+zzZI/GG8sKnq4zetTiECKqgQO +1a73QgvUwlm5BR5BKo5VIQZHLMl1S6lb6C9K27f74ewie9GKy6ELqMatEbEBTxyI0TS Yagzb6e/63L7iQhUNhu9EOGG/kVIheWJI23+iWseYk6Zx4j+Uk/Nq8HAAEo1O1xZb+DH 4fig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=NG2BvIpym952C0/IJgFK7LooGtG7cQ51/99MtbpQ8NU=; b=ao9fTCCCHNcPmx0fZNl7paaSU8M6qs8yBoSyU8vy1mFc2+gNnpMiQH2hZ97T1YD0N4 ExHrkNqHjkxTII/P1XGtRkK2utgXqk0UG4ifaRI8WHAA0It4LiY8k+vqZZ8Us9pNO4vO 7Ce/VbsfCIlbK7rUa7IBpIW/iIjDRsZxPpomQpgOaiN3oE5L4TiVLmqy6iLg/+q0LsQC oUjOZJqf0ElBUStJSCVb82xkf+HBp/z5kYY+IUdWwz9ZKqABiUS6REHmVM6lp7/6Q+10 kLKOZ2u8TmBUD4XFJ28MZ8OZzaA2sdi2Naiz8d6yibDS9JjCYeQTCDBtsgqQ0Q31Y0mL FlGg== X-Gm-Message-State: AJcUukcsi9vBNuG4aEEnM6xVsQKhjlvYV8LAglyo/loVrb91cKDfhIz2 72b2ybGatNTKhvhbNjt3T+qWOr4zlt55B6BbNA30Fx7j0qzOfPzLb/0XfZRdE72Vu9s7BkcvXVX yC9ABUo9kPIXJL4C71O1QkpQ2+yL2jQbNdTr5vSKhTyt3W9YSjnv2JQ== X-Google-Smtp-Source: ALg8bN4aMtapBN13JLg0PuWDxmzixyKtsinunLipqJ4j4VeLmP10YlTX4e3MSamdQJDYKyeQVeV12qM= X-Received: by 2002:a17:902:d90b:: with SMTP id c11mr1845327plz.9.1547589172098; Tue, 15 Jan 2019 13:52:52 -0800 (PST) Date: Tue, 15 Jan 2019 13:52:48 -0800 In-Reply-To: <20190115133800.658999bd@cakuba.netronome.com> Message-Id: <20190115215248.57081-1-sdf@google.com> Mime-Version: 1.0 References: <20190115133800.658999bd@cakuba.netronome.com> X-Mailer: git-send-email 2.20.1.97.g81188d93c3-goog Subject: [PATCH bpf v2] tools/bpf: properly account for libbfd variations From: Stanislav Fomichev To: netdev@vger.kernel.org Cc: davem@davemloft.net, ast@kernel.org, daniel@iogearbox.net, jakub.kicinski@netronome.com, quentin.monnet@netronome.com, Stanislav Fomichev Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org 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 --- 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)),) CFLAGS += -DHAVE_LIBBFD_SUPPORT SRCS += $(BFD_SRCS) -LIBS += -lbfd -lopcodes endif OBJS = $(patsubst %.c,$(OUTPUT)%.o,$(SRCS)) $(OUTPUT)disasm.o