From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9F71AA0C4B; Mon, 8 Nov 2021 11:09:50 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 15BA941100; Mon, 8 Nov 2021 11:09:47 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mails.dpdk.org (Postfix) with ESMTP id 6242940151 for ; Mon, 8 Nov 2021 11:09:44 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1636366183; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oE1vv70ElHNv+FOLDYwmnapRd4BM090PimADrJnQ4gU=; b=iUQ7AywnfRfN//fAh8vK3ldq9aXDlm7ldZrmmJdRjq1BkbLshAjSQvWY5IVM4ooMkVsERs pUz4JCnPSK6G2oWcUbT1cVF9je6BzsmeraTx5mQL2mfCMHDPh/AHFVO3rzYbSjPRYySvPE FeflxivHGmmUJFZkP82UHOGFy5FPKvM= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-213-_LDeE2efMZOROh5J_jEStA-1; Mon, 08 Nov 2021 05:09:38 -0500 X-MC-Unique: _LDeE2efMZOROh5J_jEStA-1 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 12D771023F4E; Mon, 8 Nov 2021 10:09:37 +0000 (UTC) Received: from dmarchan.remote.csb (unknown [10.40.194.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id 382D819729; Mon, 8 Nov 2021 10:09:34 +0000 (UTC) From: David Marchand To: dev@dpdk.org Cc: thomas@monjalon.net, Reshma Pattan , Stephen Hemminger , Konstantin Ananyev , Bruce Richardson , Ferruh Yigit , Cristian Dumitrescu , Ray Kinsella Date: Mon, 8 Nov 2021 11:09:18 +0100 Message-Id: <20211108100920.31083-1-david.marchand@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=david.marchand@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Subject: [dpdk-dev] [PATCH 1/2] build: cleanup libpcap dependent components X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The RTE_PORT_PCAP variable is used to signal libpcap availability, though its name seems to refer to pcap support in the port library. Prefer a generic name and add explicit link dependencies where needed. Fixes: 7a944656b33f ("test/pcapng: test pcapng library") Fixes: 2eccf6afbea9 ("bpf: add function to convert classic BPF to DPDK BPF") Fixes: cbb44143be74 ("app/dumpcap: add new packet capture application") Signed-off-by: David Marchand --- app/dumpcap/meson.build | 3 ++- app/test/meson.build | 5 +++-- app/test/test_bpf.c | 4 ++-- config/meson.build | 2 +- drivers/net/pcap/meson.build | 2 +- lib/bpf/bpf_stub.c | 2 +- lib/bpf/meson.build | 6 +++--- lib/port/meson.build | 3 ++- 8 files changed, 15 insertions(+), 12 deletions(-) diff --git a/app/dumpcap/meson.build b/app/dumpcap/meson.build index ad4fc6ae60..69c016c780 100644 --- a/app/dumpcap/meson.build +++ b/app/dumpcap/meson.build @@ -1,7 +1,7 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2019 Microsoft Corporation -if not dpdk_conf.has('RTE_PORT_PCAP') +if not dpdk_conf.has('RTE_HAS_LIBPCAP') build = false reason = 'missing dependency, "libpcap"' endif @@ -12,5 +12,6 @@ if is_windows subdir_done() endif +ext_deps += pcap_dep sources = files('main.c') deps += ['ethdev', 'pdump', 'pcapng', 'bpf'] diff --git a/app/test/meson.build b/app/test/meson.build index 96670c3504..a12eadbb5a 100644 --- a/app/test/meson.build +++ b/app/test/meson.build @@ -410,7 +410,8 @@ if dpdk_conf.has('RTE_NET_RING') fast_tests += [['pdump_autotest', true]] endif -if dpdk_conf.has('RTE_PORT_PCAP') +if dpdk_conf.has('RTE_HAS_LIBPCAP') + ext_deps += pcap_dep test_sources += 'test_pcapng.c' endif @@ -463,7 +464,7 @@ endif dpdk_test = executable('dpdk-test', test_sources, link_whole: link_libs, - dependencies: test_dep_objs, + dependencies: test_dep_objs + ext_deps, c_args: cflags, install_rpath: join_paths(get_option('prefix'), driver_install_path), diff --git a/app/test/test_bpf.c b/app/test/test_bpf.c index ef861d05e7..e3e9a1b0b5 100644 --- a/app/test/test_bpf.c +++ b/app/test/test_bpf.c @@ -3250,7 +3250,7 @@ test_bpf(void) REGISTER_TEST_COMMAND(bpf_autotest, test_bpf); -#ifdef RTE_PORT_PCAP +#ifdef RTE_HAS_LIBPCAP #include static void @@ -3447,4 +3447,4 @@ test_bpf_convert(void) } REGISTER_TEST_COMMAND(bpf_convert_autotest, test_bpf_convert); -#endif /* RTE_PORT_PCAP */ +#endif /* RTE_HAS_LIBPCAP */ diff --git a/config/meson.build b/config/meson.build index f7e2b2f331..5926892a68 100644 --- a/config/meson.build +++ b/config/meson.build @@ -231,7 +231,7 @@ if not pcap_dep.found() pcap_dep = cc.find_library(pcap_lib, required: false) endif if pcap_dep.found() and cc.has_header('pcap.h', dependencies: pcap_dep) - dpdk_conf.set('RTE_PORT_PCAP', 1) + dpdk_conf.set('RTE_HAS_LIBPCAP', 1) dpdk_extra_ldflags += '-l@0@'.format(pcap_lib) endif diff --git a/drivers/net/pcap/meson.build b/drivers/net/pcap/meson.build index 54246095b2..ed7864eb9d 100644 --- a/drivers/net/pcap/meson.build +++ b/drivers/net/pcap/meson.build @@ -1,7 +1,7 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Intel Corporation -if not dpdk_conf.has('RTE_PORT_PCAP') +if not dpdk_conf.has('RTE_HAS_LIBPCAP') build = false reason = 'missing dependency, "libpcap"' endif diff --git a/lib/bpf/bpf_stub.c b/lib/bpf/bpf_stub.c index caec00f42f..ebc5343896 100644 --- a/lib/bpf/bpf_stub.c +++ b/lib/bpf/bpf_stub.c @@ -27,7 +27,7 @@ rte_bpf_elf_load(const struct rte_bpf_prm *prm, const char *fname, } #endif -#ifndef RTE_PORT_PCAP +#ifndef RTE_HAS_LIBPCAP struct rte_bpf_prm * rte_bpf_convert(const struct bpf_program *prog) { diff --git a/lib/bpf/meson.build b/lib/bpf/meson.build index 0df55a2236..cd739bb827 100644 --- a/lib/bpf/meson.build +++ b/lib/bpf/meson.build @@ -33,12 +33,12 @@ if dep.found() sources += files('bpf_load_elf.c') ext_deps += dep else - warning('libelf is missing, rte_bpf_elf_load API will be disabled') + warning('libelf is missing, rte_bpf_elf_load API will be disabled') endif -if dpdk_conf.has('RTE_PORT_PCAP') +if dpdk_conf.has('RTE_HAS_LIBPCAP') sources += files('bpf_convert.c') ext_deps += pcap_dep else - warning('RTE_PORT_PCAP is missing, rte_bpf_convert API will be disabled') + warning('libpcap is missing, rte_bpf_convert API will be disabled') endif diff --git a/lib/port/meson.build b/lib/port/meson.build index 854bf39cd9..3ab37e2cb4 100644 --- a/lib/port/meson.build +++ b/lib/port/meson.build @@ -41,7 +41,8 @@ headers = files( ) deps += ['ethdev', 'sched', 'ip_frag', 'cryptodev', 'eventdev'] -if dpdk_conf.has('RTE_PORT_PCAP') +if dpdk_conf.has('RTE_HAS_LIBPCAP') + dpdk_conf.set('RTE_PORT_PCAP', 1) ext_deps += pcap_dep # dependency provided in config/meson.build endif -- 2.23.0