[dpdk-stable] [PATCH] build: skip copying meson files for examples installation

Bruce Richardson bruce.richardson at intel.com
Fri Mar 12 15:56:05 CET 2021


The meson.build files in each example directory is simply to support
building the example as part of the main SDK build, and these should not
be installed with the example's source code and makefile. The exclude of
"meson.build" only filters out the top-level examples/meson.build file,
not the file in each subdirectory.

To fix this, we can build up the list of files to exclude based off the
list of all examples. With this change "find examples/ -name meson.build"
returns no hits when run on an installed instance.

Fixes: e5b95003f1df ("examples: fix flattening directory layout on install")
Cc: stable at dpdk.org

Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>

---

Including stable on CC for this patch because even though it's removing
files, those files are useless alone, since they must be part of a
larger DPDK build. Therefore I think the patch should be safe to
consider for backporting, especially since prior to the commit in
question the meson.build files were being properly filtered out.
---
 examples/meson.build | 6 ++++++
 meson.build          | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/examples/meson.build b/examples/meson.build
index b9ab24223..3fe08d4ca 100644
--- a/examples/meson.build
+++ b/examples/meson.build
@@ -48,6 +48,12 @@ all_examples = [
 	'vmdq', 'vmdq_dcb',
 ]
 
+# on install, skip copying all meson.build files
+ex_file_excludes = ['meson.build']
+foreach ex:all_examples
+	ex_file_excludes += [ex + '/meson.build']
+endforeach
+
 if get_option('examples') == ''
 	subdir_done()
 endif
diff --git a/meson.build b/meson.build
index fcc4d4c90..7778e1820 100644
--- a/meson.build
+++ b/meson.build
@@ -61,7 +61,7 @@ subdir('doc')
 subdir('examples')
 install_subdir('examples',
 	install_dir: get_option('datadir') + '/dpdk',
-	exclude_files: 'meson.build')
+	exclude_files: ex_file_excludes)
 
 # build kernel modules if enabled
 if get_option('enable_kmods')
-- 
2.27.0



More information about the stable mailing list