From 2daf565f91b505c2db86aa19f9be2fb881dfd788 Mon Sep 17 00:00:00 2001 From: Bruce Richardson Date: Thu, 2 May 2019 17:51:52 +0100 Subject: [PATCH] examples: install as part of ninja install When we install dpdk onto a system, we want to put the examples into the /usr/share/dpdk (or /usr/local/share) directory for reference. Signed-off-by: Bruce Richardson Acked-by: Luca Boccassi --- examples/meson.build | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/examples/meson.build b/examples/meson.build index e4babf6bf9..1a6134f120 100644 --- a/examples/meson.build +++ b/examples/meson.build @@ -8,12 +8,20 @@ endif execinfo = cc.find_library('execinfo', required: false) -allow_skips = true # don't flag an error if we can't build an app +all_examples = run_command('sh', '-c', + 'cd $MESON_SOURCE_ROOT/$MESON_SUBDIR && for d in * ; do if [ -d $d ] ; then echo $d ; fi ; done' + ).stdout().split() +# install all example code on install - irrespective of whether the example in +# question is to be built as part of this build or not. +foreach ex:all_examples + install_subdir(ex, + install_dir: get_option('datadir') + '/dpdk/examples', + exclude_files: 'meson.build') +endforeach if get_option('examples').to_lower() == 'all' - dirs = run_command('sh', '-c', - 'cd $MESON_SOURCE_ROOT/$MESON_SUBDIR && for d in * ; do if [ -d $d ] ; then echo $d ; fi ; done') - examples = dirs.stdout().split() + examples = all_examples + allow_skips = true # don't flag an error if we can't build an app else examples = get_option('examples').split(',') allow_skips = false # error out if we can't build a requested app