dpdk/app/meson.build
<<
>>
Prefs
   1# SPDX-License-Identifier: BSD-3-Clause
   2# Copyright(c) 2017-2019 Intel Corporation
   3
   4if is_windows
   5    subdir_done()
   6endif
   7
   8apps = [
   9        'pdump',
  10        'proc-info',
  11        'test-acl',
  12        'test-bbdev',
  13        'test-cmdline',
  14        'test-compress-perf',
  15        'test-crypto-perf',
  16        'test-eventdev',
  17        'test-fib',
  18        'test-flow-perf',
  19        'test-pipeline',
  20        'test-pmd',
  21        'test-regex',
  22        'test-sad',
  23]
  24
  25default_cflags = machine_args + ['-DALLOW_EXPERIMENTAL_API']
  26default_ldflags = []
  27if get_option('default_library') == 'static' and not is_windows
  28    default_ldflags += ['-Wl,--export-dynamic']
  29endif
  30
  31foreach app:apps
  32    build = true
  33    name = app
  34    sources = []
  35    includes = []
  36    cflags = default_cflags
  37    ldflags = default_ldflags
  38    objs = [] # other object files to link against, used e.g. for
  39              # instruction-set optimized versions of code
  40
  41    # use "deps" for internal DPDK dependencies, and "ext_deps" for
  42    # external package/library requirements
  43    ext_deps = []
  44    deps = []
  45
  46    subdir(name)
  47
  48    if not build
  49        continue
  50    endif
  51
  52    dep_objs = []
  53    foreach d:deps
  54        dep_objs += get_variable(get_option('default_library') + '_rte_' + d)
  55    endforeach
  56
  57    link_libs = []
  58    if get_option('default_library') == 'static'
  59        link_libs = dpdk_static_libraries + dpdk_drivers
  60    endif
  61
  62    executable('dpdk-' + name,
  63            sources,
  64            c_args: cflags,
  65            link_args: ldflags,
  66            link_whole: link_libs,
  67            dependencies: dep_objs,
  68            include_directories: includes,
  69            install_rpath: join_paths(get_option('prefix'), driver_install_path),
  70            install: true)
  71endforeach
  72
  73# special case the autotests
  74subdir('test')
  75