doc: announce API change for net defines/structs/funcs
[dpdk.git] / examples / meson.build
index af81c76..1a6134f 100644 (file)
@@ -1,5 +1,5 @@
 # SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2017 Intel Corporation
+# Copyright(c) 2017-2019 Intel Corporation
 
 driver_libs = []
 if get_option('default_library') == 'static'
@@ -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
@@ -36,6 +44,9 @@ foreach example: examples
        ext_deps = [execinfo]
        includes = [include_directories(example)]
        deps = ['eal', 'mempool', 'net', 'mbuf', 'ethdev', 'cmdline']
+       if is_windows
+               deps = ['eal'] # only supported lib on Windows currently
+       endif
        subdir(example)
 
        if build