app: fix plugin load on static builds
[dpdk.git] / app / meson.build
index 99e0b93..fd72d7d 100644 (file)
@@ -1,23 +1,42 @@
 # SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2017 Intel Corporation
+# Copyright(c) 2017-2019 Intel Corporation
 
-apps = ['pdump',
+if is_windows
+       subdir_done()
+endif
+
+apps = [
+       'pdump',
        'proc-info',
+       'test-acl',
        'test-bbdev',
+       'test-cmdline',
+       'test-compress-perf',
        'test-crypto-perf',
        'test-eventdev',
-       'test-pmd']
+       'test-fib',
+       'test-flow-perf',
+       'test-pipeline',
+       'test-pmd',
+       'test-regex',
+       'test-sad']
 
 # for BSD only
 lib_execinfo = cc.find_library('execinfo', required: false)
 
+default_cflags = machine_args + ['-DALLOW_EXPERIMENTAL_API']
+default_ldflags = []
+if get_option('default_library') == 'static'
+       default_ldflags += ['-Wl,--export-dynamic']
+endif
+
 foreach app:apps
        build = true
        name = app
-       allow_experimental_apis = false
        sources = []
        includes = []
-       cflags = machine_args
+       cflags = default_cflags
+       ldflags = default_ldflags
        objs = [] # other object files to link against, used e.g. for
                  # instruction-set optimized versions of code
 
@@ -38,16 +57,13 @@ foreach app:apps
 
                link_libs = []
                if get_option('default_library') == 'static'
-                       link_libs = dpdk_drivers
-               endif
-
-               if allow_experimental_apis
-                       cflags += '-DALLOW_EXPERIMENTAL_API'
+                       link_libs = dpdk_static_libraries + dpdk_drivers
                endif
 
                executable('dpdk-' + name,
                                sources,
                                c_args: cflags,
+                               link_args: ldflags,
                                link_whole: link_libs,
                                dependencies: dep_objs,
                                install_rpath: join_paths(get_option('prefix'),
@@ -55,3 +71,6 @@ foreach app:apps
                                install: true)
        endif
 endforeach
+
+# special case the autotests
+subdir('test')