From patchwork Sat Oct 27 09:17:50 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Van Haaren, Harry" X-Patchwork-Id: 47521 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 44AC35F24; Sat, 27 Oct 2018 11:20:36 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 31D0358FE for ; Sat, 27 Oct 2018 11:19:54 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Oct 2018 02:19:53 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,431,1534834800"; d="scan'208";a="84903924" Received: from silpixa00399779.ir.intel.com (HELO silpixa00399779.ger.corp.intel.com) ([10.237.223.188]) by orsmga008.jf.intel.com with ESMTP; 27 Oct 2018 02:19:51 -0700 From: Harry van Haaren To: dev@dpdk.org Cc: thomas@monjalon.net, bruce.richardson@intel.com, stephen@networkplumber.org, gaetan.rivet@6wind.com, shreyansh.jain@nxp.com, mattias.ronnblom@ericsson.com, Kevin Laatz , Radu Nicolau Date: Sat, 27 Oct 2018 10:17:50 +0100 Message-Id: <20181027091750.17254-13-harry.van.haaren@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181027091750.17254-1-harry.van.haaren@intel.com> References: <20181026235933.79779-1-harry.van.haaren@intel.com> <20181027091750.17254-1-harry.van.haaren@intel.com> Subject: [dpdk-dev] [PATCH v10 12/12] build: add dependency on telemetry to apps in meson X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" From: Kevin Laatz This patch adds telemetry as a dependecy to all applications. Without these changes, the --telemetry flag will not be recognised and applications will fail to run if they want to enable telemetry. Signed-off-by: Bruce Richardson Signed-off-by: Kevin Laatz Signed-off-by: Radu Nicolau Acked-by: Harry van Haaren --- app/meson.build | 4 ++-- app/pdump/meson.build | 2 +- app/proc-info/meson.build | 2 +- app/test-bbdev/meson.build | 2 +- app/test-crypto-perf/meson.build | 2 +- app/test-pmd/meson.build | 2 +- config/meson.build | 3 +++ lib/librte_telemetry/meson.build | 1 + lib/meson.build | 1 + meson.build | 2 ++ 10 files changed, 14 insertions(+), 7 deletions(-) diff --git a/app/meson.build b/app/meson.build index e68d949e9..a9a026bbf 100644 --- a/app/meson.build +++ b/app/meson.build @@ -29,7 +29,7 @@ foreach app:apps # use "deps" for internal DPDK dependencies, and "ext_deps" for # external package/library requirements ext_deps = [] - deps = [] + deps = dpdk_app_link_libraries subdir(name) @@ -43,7 +43,7 @@ foreach app:apps link_libs = [] if get_option('default_library') == 'static' - link_libs = dpdk_drivers + link_libs = dpdk_static_libraries + dpdk_drivers endif if allow_experimental_apis diff --git a/app/pdump/meson.build b/app/pdump/meson.build index 988cb4eb2..116c27f02 100644 --- a/app/pdump/meson.build +++ b/app/pdump/meson.build @@ -3,4 +3,4 @@ sources = files('main.c') allow_experimental_apis = true -deps = ['ethdev', 'kvargs', 'pdump'] +deps += ['ethdev', 'kvargs', 'pdump'] diff --git a/app/proc-info/meson.build b/app/proc-info/meson.build index 9c148e36e..a52b2ee4a 100644 --- a/app/proc-info/meson.build +++ b/app/proc-info/meson.build @@ -3,4 +3,4 @@ sources = files('main.c') allow_experimental_apis = true -deps = ['ethdev', 'metrics'] +deps += ['ethdev', 'metrics'] diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build index 653907ded..eb8cc0499 100644 --- a/app/test-bbdev/meson.build +++ b/app/test-bbdev/meson.build @@ -6,4 +6,4 @@ sources = files('main.c', 'test_bbdev_perf.c', 'test_bbdev_vector.c') allow_experimental_apis = true -deps = ['bbdev', 'bus_vdev'] +deps += ['bbdev', 'bus_vdev'] diff --git a/app/test-crypto-perf/meson.build b/app/test-crypto-perf/meson.build index eacd7a0f5..d735b186f 100644 --- a/app/test-crypto-perf/meson.build +++ b/app/test-crypto-perf/meson.build @@ -12,4 +12,4 @@ sources = files('cperf_ops.c', 'cperf_test_vectors.c', 'cperf_test_verify.c', 'main.c') -deps = ['cryptodev'] +deps += ['cryptodev'] diff --git a/app/test-pmd/meson.build b/app/test-pmd/meson.build index cd66618e9..6006c60f9 100644 --- a/app/test-pmd/meson.build +++ b/app/test-pmd/meson.build @@ -24,7 +24,7 @@ sources = files('cmdline.c', 'txonly.c', 'util.c') -deps = ['ethdev', 'gro', 'gso', 'cmdline', 'metrics', 'meter', 'bus_pci'] +deps += ['ethdev', 'gro', 'gso', 'cmdline', 'metrics', 'meter', 'bus_pci'] if dpdk_conf.has('RTE_LIBRTE_PDUMP') deps += 'pdump' endif diff --git a/config/meson.build b/config/meson.build index 6f9228c87..275f00b60 100644 --- a/config/meson.build +++ b/config/meson.build @@ -21,6 +21,9 @@ toolchain = cc.get_id() dpdk_conf.set_quoted('RTE_TOOLCHAIN', toolchain) dpdk_conf.set('RTE_TOOLCHAIN_' + toolchain.to_upper(), 1) +add_project_link_arguments('-Wl,--no-as-needed', language: 'c') +dpdk_extra_ldflags += '-Wl,--no-as-needed' + # use pthreads add_project_link_arguments('-pthread', language: 'c') dpdk_extra_ldflags += '-pthread' diff --git a/lib/librte_telemetry/meson.build b/lib/librte_telemetry/meson.build index b3bbf5bd0..9492f544e 100644 --- a/lib/librte_telemetry/meson.build +++ b/lib/librte_telemetry/meson.build @@ -9,6 +9,7 @@ cflags += '-DALLOW_EXPERIMENTAL_API' jansson = cc.find_library('jansson', required: false) if jansson.found() ext_deps += jansson + dpdk_app_link_libraries += ['telemetry'] else build = false endif diff --git a/lib/meson.build b/lib/meson.build index 9d1f353d2..c0cc2d86e 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -132,6 +132,7 @@ foreach l:libraries dependencies: shared_deps) dpdk_libraries = [shared_lib] + dpdk_libraries + dpdk_static_libraries = [static_lib] + dpdk_static_libraries endif # sources.length() > 0 set_variable('shared_' + libname, shared_dep) diff --git a/meson.build b/meson.build index c9af33532..b1e6eab6a 100644 --- a/meson.build +++ b/meson.build @@ -12,8 +12,10 @@ project('DPDK', 'C', cc = meson.get_compiler('c') dpdk_conf = configuration_data() dpdk_libraries = [] +dpdk_static_libraries = [] dpdk_drivers = [] dpdk_extra_ldflags = [] +dpdk_app_link_libraries = [] driver_install_path = join_paths(get_option('libdir'), 'dpdk/drivers') eal_pmd_path = join_paths(get_option('prefix'), driver_install_path)