File: meson.build

package info (click to toggle)
libnvme 1.16.1-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 8,020 kB
  • sloc: ansic: 35,812; perl: 1,834; sh: 475; python: 194; cpp: 64; makefile: 55
file content (141 lines) | stat: -rw-r--r-- 3,083 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# This file is part of libnvme.
# Copyright (c) 2021 Dell Inc.
#
# Authors: Martin Belanger <Martin.Belanger@dell.com>

# These tests all require interaction with a real NVMe device, so we don't
# define as meson unit-tests, and therefore get run as part of the 'test'
# target. However, they're available for developer use, when hardware is
# available.
main = executable(
    'main-test',
    ['test.c'],
    dependencies: [libnvme_dep],
    include_directories: [incdir, internal_incdir]
)

if cxx_available
    cpp = executable(
        'test-cpp',
        ['cpp.cc'],
        dependencies: libnvme_dep,
        include_directories: [incdir, internal_incdir]
    )

    test('cpp-dump', cpp)

    misc = executable(
        'test-misc',
        ['misc.cc'],
        dependencies: libnvme_dep,
        include_directories: [incdir, internal_incdir]
    )
    test('cpp-misc', misc)

endif

register = executable(
    'test-register',
    ['register.c'],
    dependencies: libnvme_dep,
    include_directories: [incdir, internal_incdir]
)

zns = executable(
    'test-zns',
    ['zns.c'],
    dependencies: libnvme_dep,
    include_directories: [incdir, internal_incdir]
)

mi = executable(
    'test-mi',
    ['mi.c', 'utils.c'],
    dependencies: libnvme_mi_test_dep,
    include_directories: [incdir, internal_incdir]
)

test('mi', mi)

mi_mctp = executable(
    'test-mi-mctp',
    ['mi-mctp.c', 'utils.c'],
    dependencies: libnvme_mi_test_dep,
    include_directories: [incdir, internal_incdir],
)

test('mi-mctp', mi_mctp)

uuid = executable(
    'test-uuid',
    ['uuid.c'],
    dependencies: libnvme_dep,
    include_directories: [incdir, internal_incdir]
)

test('uuid', uuid)

uriparser = executable(
    'test-uriparser',
    ['uriparser.c'],
    dependencies: libnvme_dep,
    include_directories: [incdir, internal_incdir]
)

test('uriparser', uriparser)

if conf.get('HAVE_NETDB')
    mock_ifaddrs = library(
        'mock-ifaddrs',
        ['mock-ifaddrs.c', ],
    )

    # See comment in test/ioctl/meson.build explaining how LD_PRELOAD is used
    mock_ifaddrs_env = environment()
    mock_ifaddrs_env.append('LD_PRELOAD', mock_ifaddrs.full_path())
    mock_ifaddrs_env.set('ASAN_OPTIONS', 'verify_asan_link_order=0')

    tree = executable(
        'tree',
        ['tree.c'],
        dependencies: libnvme_dep,
        include_directories: [incdir, internal_incdir],
        link_with: mock_ifaddrs,
    )

    test('tree', tree, env: mock_ifaddrs_env)

    test_util = executable(
        'test-util',
        ['test-util.c'],
        include_directories: [incdir, internal_incdir]
    )
    test('util', test_util)
endif

psk = executable(
    'test-psk',
    ['psk.c'],
    dependencies: libnvme_dep,
    include_directories: [incdir, internal_incdir]
)

test('psk', psk)

subdir('ioctl')
subdir('nbft')

if json_c_dep.found()
    subdir('sysfs')
    subdir('config')
endif

if openssl_dep.found()
  hkdf_add1 = executable(
      'hkdf_add1',
      ['hkdf_add1.c'],
      dependencies: openssl_dep,
  )
endif