* [dpdk-dev] [PATCH 0/3] generalize builds apps using meson @ 2018-02-16 16:53 Bruce Richardson 2018-02-16 16:53 ` [dpdk-dev] [PATCH 1/3] app: generalize building of " Bruce Richardson ` (3 more replies) 0 siblings, 4 replies; 8+ messages in thread From: Bruce Richardson @ 2018-02-16 16:53 UTC (permalink / raw) To: dev; +Cc: Bruce Richardson Put the building of the apps into a foreach loop as is done with the libs and drivers in the DPDK meson build. This will reduce the path needed to call the compiled binaries in the build directory by one level, while the main benefit is reduced code duplication between the different apps. Bruce Richardson (3): app: generalize building of apps using meson app/proc_info: rename folder to remove underscore app: add all remaining apps to meson build app/meson.build | 47 +++++++++++++++++++++++++++++++++-- app/pdump/meson.build | 6 +++++ app/{proc_info => proc-info}/Makefile | 0 app/{proc_info => proc-info}/main.c | 0 app/proc-info/meson.build | 6 +++++ app/test-bbdev/meson.build | 9 +++++++ app/test-crypto-perf/meson.build | 14 +++++++++++ app/test-eventdev/meson.build | 15 +---------- app/test-pmd/meson.build | 20 ++------------- 9 files changed, 83 insertions(+), 34 deletions(-) create mode 100644 app/pdump/meson.build rename app/{proc_info => proc-info}/Makefile (100%) rename app/{proc_info => proc-info}/main.c (100%) create mode 100644 app/proc-info/meson.build create mode 100644 app/test-bbdev/meson.build create mode 100644 app/test-crypto-perf/meson.build -- 2.14.3 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [dpdk-dev] [PATCH 1/3] app: generalize building of apps using meson 2018-02-16 16:53 [dpdk-dev] [PATCH 0/3] generalize builds apps using meson Bruce Richardson @ 2018-02-16 16:53 ` Bruce Richardson 2018-03-12 12:25 ` Van Haaren, Harry 2018-02-16 16:53 ` [dpdk-dev] [PATCH 2/3] app/proc_info: rename folder to remove underscore Bruce Richardson ` (2 subsequent siblings) 3 siblings, 1 reply; 8+ messages in thread From: Bruce Richardson @ 2018-02-16 16:53 UTC (permalink / raw) To: dev; +Cc: Bruce Richardson Since most apps are built in largely the same way, generalize the logic into a foreach loop in app/meson.build file. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> --- app/meson.build | 52 +++++++++++++++++++++++++++++++++++++++++-- app/test-eventdev/meson.build | 18 ++------------- app/test-pmd/meson.build | 22 +++--------------- 3 files changed, 55 insertions(+), 37 deletions(-) diff --git a/app/meson.build b/app/meson.build index 0088de464..7491316e3 100644 --- a/app/meson.build +++ b/app/meson.build @@ -1,5 +1,53 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Intel Corporation -subdir('test-pmd') -subdir('test-eventdev') +apps = ['test-eventdev', + 'test-pmd'] + +# for BSD only +lib_execinfo = cc.find_library('execinfo', required: false) + +foreach app:apps + build = true + name = app + allow_experimental_apis = false + sources = [] + includes = [] + cflags = machine_args + objs = [] # other object files to link against, used e.g. for + # instruction-set optimized versions of code + + # use "deps" for internal DPDK dependencies, and "ext_deps" for + # external package/library requirements + ext_deps = [] + deps = [] + + subdir(name) + + if build + dep_objs = [] + foreach d:deps + dep_objs += get_variable(get_option('default_library') + + '_rte_' + d) + endforeach + dep_objs += lib_execinfo + + link_libs = [] + if get_option('default_library') == 'static' + link_libs = dpdk_drivers + endif + + if allow_experimental_apis + cflags += '-DALLOW_EXPERIMENTAL_API' + endif + + executable('dpdk-' + name, + sources, + c_args: cflags, + link_whole: link_libs, + dependencies: dep_objs, + install_rpath: join_paths(get_option('prefix'), + driver_install_path), + install: true) + endif +endforeach diff --git a/app/test-eventdev/meson.build b/app/test-eventdev/meson.build index 7c373c87b..a81dcd131 100644 --- a/app/test-eventdev/meson.build +++ b/app/test-eventdev/meson.build @@ -1,6 +1,7 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Cavium, Inc +allow_experimental_apis = true sources = files('evt_main.c', 'evt_options.c', 'evt_test.c', @@ -11,19 +12,4 @@ sources = files('evt_main.c', 'test_perf_common.c', 'test_perf_atq.c', 'test_perf_queue.c') - -dep_objs = [get_variable(get_option('default_library') + '_rte_eventdev')] -dep_objs += cc.find_library('execinfo', required: false) # BSD only - -link_libs = [] -if get_option('default_library') == 'static' - link_libs = dpdk_drivers -endif - -executable('dpdk-test-eventdev', - sources, - c_args: [machine_args, '-DALLOW_EXPERIMENTAL_API'], - link_whole: link_libs, - dependencies: dep_objs, - install_rpath: join_paths(get_option('prefix'), driver_install_path), - install: true) +deps += 'eventdev' diff --git a/app/test-pmd/meson.build b/app/test-pmd/meson.build index 7ed74db2b..b5bb2e70d 100644 --- a/app/test-pmd/meson.build +++ b/app/test-pmd/meson.build @@ -1,6 +1,9 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Intel Corporation +# override default name to drop the hyphen +name = 'testpmd' +allow_experimental_apis = true sources = files('cmdline.c', 'cmdline_flow.c', 'cmdline_mtr.c', @@ -32,22 +35,3 @@ if dpdk_conf.has('RTE_LIBRTE_SOFTNIC_PMD') sources += files('tm.c') deps += 'pmd_softnic' endif - -dep_objs = [] -foreach d:deps - dep_objs += get_variable(get_option('default_library') + '_rte_' + d) -endforeach -dep_objs += cc.find_library('execinfo', required: false) # for BSD only - -link_libs = [] -if get_option('default_library') == 'static' - link_libs = dpdk_drivers -endif - -executable('dpdk-testpmd', - sources, - c_args: [machine_args, '-DALLOW_EXPERIMENTAL_API'], - link_whole: link_libs, - dependencies: dep_objs, - install_rpath: join_paths(get_option('prefix'), driver_install_path), - install: true) -- 2.14.3 ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-dev] [PATCH 1/3] app: generalize building of apps using meson 2018-02-16 16:53 ` [dpdk-dev] [PATCH 1/3] app: generalize building of " Bruce Richardson @ 2018-03-12 12:25 ` Van Haaren, Harry 0 siblings, 0 replies; 8+ messages in thread From: Van Haaren, Harry @ 2018-03-12 12:25 UTC (permalink / raw) To: Richardson, Bruce, dev; +Cc: Richardson, Bruce > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bruce Richardson > Sent: Friday, February 16, 2018 4:54 PM > To: dev@dpdk.org > Cc: Richardson, Bruce <bruce.richardson@intel.com> > Subject: [dpdk-dev] [PATCH 1/3] app: generalize building of apps using meson > > Since most apps are built in largely the same way, generalize the logic > into a foreach loop in app/meson.build file. > > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> ^ permalink raw reply [flat|nested] 8+ messages in thread
* [dpdk-dev] [PATCH 2/3] app/proc_info: rename folder to remove underscore 2018-02-16 16:53 [dpdk-dev] [PATCH 0/3] generalize builds apps using meson Bruce Richardson 2018-02-16 16:53 ` [dpdk-dev] [PATCH 1/3] app: generalize building of " Bruce Richardson @ 2018-02-16 16:53 ` Bruce Richardson 2018-03-12 12:30 ` Van Haaren, Harry 2018-02-16 16:53 ` [dpdk-dev] [PATCH 3/3] app: add all remaining apps to meson build Bruce Richardson 2018-03-12 15:06 ` [dpdk-dev] [PATCH 0/3] generalize builds apps using meson Bruce Richardson 3 siblings, 1 reply; 8+ messages in thread From: Bruce Richardson @ 2018-02-16 16:53 UTC (permalink / raw) To: dev; +Cc: Bruce Richardson All other apps in the app folder use "-" rather than "_" to separate words in the app name, so rename proc_info to be consistent. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> --- app/Makefile | 2 +- app/{proc_info => proc-info}/Makefile | 0 app/{proc_info => proc-info}/main.c | 0 3 files changed, 1 insertion(+), 1 deletion(-) rename app/{proc_info => proc-info}/Makefile (100%) rename app/{proc_info => proc-info}/main.c (100%) diff --git a/app/Makefile b/app/Makefile index 0eaed5384..069fa9849 100644 --- a/app/Makefile +++ b/app/Makefile @@ -4,7 +4,7 @@ include $(RTE_SDK)/mk/rte.vars.mk DIRS-$(CONFIG_RTE_TEST_PMD) += test-pmd -DIRS-$(CONFIG_RTE_PROC_INFO) += proc_info +DIRS-$(CONFIG_RTE_PROC_INFO) += proc-info DIRS-$(CONFIG_RTE_LIBRTE_PDUMP) += pdump ifeq ($(CONFIG_RTE_LIBRTE_BBDEV),y) diff --git a/app/proc_info/Makefile b/app/proc-info/Makefile similarity index 100% rename from app/proc_info/Makefile rename to app/proc-info/Makefile diff --git a/app/proc_info/main.c b/app/proc-info/main.c similarity index 100% rename from app/proc_info/main.c rename to app/proc-info/main.c -- 2.14.3 ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-dev] [PATCH 2/3] app/proc_info: rename folder to remove underscore 2018-02-16 16:53 ` [dpdk-dev] [PATCH 2/3] app/proc_info: rename folder to remove underscore Bruce Richardson @ 2018-03-12 12:30 ` Van Haaren, Harry 0 siblings, 0 replies; 8+ messages in thread From: Van Haaren, Harry @ 2018-03-12 12:30 UTC (permalink / raw) To: Richardson, Bruce, dev; +Cc: Richardson, Bruce > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bruce Richardson > Sent: Friday, February 16, 2018 4:54 PM > To: dev@dpdk.org > Cc: Richardson, Bruce <bruce.richardson@intel.com> > Subject: [dpdk-dev] [PATCH 2/3] app/proc_info: rename folder to remove > underscore > > All other apps in the app folder use "-" rather than "_" to separate words > in the app name, so rename proc_info to be consistent. > > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> ^ permalink raw reply [flat|nested] 8+ messages in thread
* [dpdk-dev] [PATCH 3/3] app: add all remaining apps to meson build 2018-02-16 16:53 [dpdk-dev] [PATCH 0/3] generalize builds apps using meson Bruce Richardson 2018-02-16 16:53 ` [dpdk-dev] [PATCH 1/3] app: generalize building of " Bruce Richardson 2018-02-16 16:53 ` [dpdk-dev] [PATCH 2/3] app/proc_info: rename folder to remove underscore Bruce Richardson @ 2018-02-16 16:53 ` Bruce Richardson 2018-03-12 12:29 ` Van Haaren, Harry 2018-03-12 15:06 ` [dpdk-dev] [PATCH 0/3] generalize builds apps using meson Bruce Richardson 3 siblings, 1 reply; 8+ messages in thread From: Bruce Richardson @ 2018-02-16 16:53 UTC (permalink / raw) To: dev; +Cc: Bruce Richardson Add remaining subdirectories in the app folder to the meson build. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> --- app/meson.build | 6 +++++- app/pdump/meson.build | 6 ++++++ app/proc-info/meson.build | 6 ++++++ app/test-bbdev/meson.build | 9 +++++++++ app/test-crypto-perf/meson.build | 14 ++++++++++++++ 5 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 app/pdump/meson.build create mode 100644 app/proc-info/meson.build create mode 100644 app/test-bbdev/meson.build create mode 100644 app/test-crypto-perf/meson.build diff --git a/app/meson.build b/app/meson.build index 7491316e3..99e0b93ec 100644 --- a/app/meson.build +++ b/app/meson.build @@ -1,7 +1,11 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Intel Corporation -apps = ['test-eventdev', +apps = ['pdump', + 'proc-info', + 'test-bbdev', + 'test-crypto-perf', + 'test-eventdev', 'test-pmd'] # for BSD only diff --git a/app/pdump/meson.build b/app/pdump/meson.build new file mode 100644 index 000000000..988cb4eb2 --- /dev/null +++ b/app/pdump/meson.build @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Intel Corporation + +sources = files('main.c') +allow_experimental_apis = true +deps = ['ethdev', 'kvargs', 'pdump'] diff --git a/app/proc-info/meson.build b/app/proc-info/meson.build new file mode 100644 index 000000000..9c148e36e --- /dev/null +++ b/app/proc-info/meson.build @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Intel Corporation + +sources = files('main.c') +allow_experimental_apis = true +deps = ['ethdev', 'metrics'] diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build new file mode 100644 index 000000000..653907ded --- /dev/null +++ b/app/test-bbdev/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Intel Corporation + +sources = files('main.c', + 'test_bbdev.c', + 'test_bbdev_perf.c', + 'test_bbdev_vector.c') +allow_experimental_apis = true +deps = ['bbdev', 'bus_vdev'] diff --git a/app/test-crypto-perf/meson.build b/app/test-crypto-perf/meson.build new file mode 100644 index 000000000..6eb22a5fd --- /dev/null +++ b/app/test-crypto-perf/meson.build @@ -0,0 +1,14 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Intel Corporation + +sources = files('cperf_ops.c', + 'cperf_options_parsing.c', + 'cperf_test_common.c', + 'cperf_test_latency.c', + 'cperf_test_pmd_cyclecount.c', + 'cperf_test_throughput.c', + 'cperf_test_vector_parsing.c', + 'cperf_test_vectors.c', + 'cperf_test_verify.c', + 'main.c') +deps = ['cryptodev'] -- 2.14.3 ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-dev] [PATCH 3/3] app: add all remaining apps to meson build 2018-02-16 16:53 ` [dpdk-dev] [PATCH 3/3] app: add all remaining apps to meson build Bruce Richardson @ 2018-03-12 12:29 ` Van Haaren, Harry 0 siblings, 0 replies; 8+ messages in thread From: Van Haaren, Harry @ 2018-03-12 12:29 UTC (permalink / raw) To: Richardson, Bruce, dev; +Cc: Richardson, Bruce > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bruce Richardson > Sent: Friday, February 16, 2018 4:54 PM > To: dev@dpdk.org > Cc: Richardson, Bruce <bruce.richardson@intel.com> > Subject: [dpdk-dev] [PATCH 3/3] app: add all remaining apps to meson build > > Add remaining subdirectories in the app folder to the meson build. > > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-dev] [PATCH 0/3] generalize builds apps using meson 2018-02-16 16:53 [dpdk-dev] [PATCH 0/3] generalize builds apps using meson Bruce Richardson ` (2 preceding siblings ...) 2018-02-16 16:53 ` [dpdk-dev] [PATCH 3/3] app: add all remaining apps to meson build Bruce Richardson @ 2018-03-12 15:06 ` Bruce Richardson 3 siblings, 0 replies; 8+ messages in thread From: Bruce Richardson @ 2018-03-12 15:06 UTC (permalink / raw) To: dev On Fri, Feb 16, 2018 at 04:53:33PM +0000, Bruce Richardson wrote: > Put the building of the apps into a foreach loop as is done with the libs > and drivers in the DPDK meson build. This will reduce the path needed to > call the compiled binaries in the build directory by one level, while the > main benefit is reduced code duplication between the different apps. > > Bruce Richardson (3): > app: generalize building of apps using meson > app/proc_info: rename folder to remove underscore > app: add all remaining apps to meson build > Series applied to dpdk-next-build /Bruce ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2018-03-12 15:06 UTC | newest] Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-02-16 16:53 [dpdk-dev] [PATCH 0/3] generalize builds apps using meson Bruce Richardson 2018-02-16 16:53 ` [dpdk-dev] [PATCH 1/3] app: generalize building of " Bruce Richardson 2018-03-12 12:25 ` Van Haaren, Harry 2018-02-16 16:53 ` [dpdk-dev] [PATCH 2/3] app/proc_info: rename folder to remove underscore Bruce Richardson 2018-03-12 12:30 ` Van Haaren, Harry 2018-02-16 16:53 ` [dpdk-dev] [PATCH 3/3] app: add all remaining apps to meson build Bruce Richardson 2018-03-12 12:29 ` Van Haaren, Harry 2018-03-12 15:06 ` [dpdk-dev] [PATCH 0/3] generalize builds apps using meson Bruce Richardson
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).