summaryrefslogtreecommitdiff
path: root/src/node_device/meson.build
blob: 1c95975c37602a120529edf7e1254f1644de47d1 (plain)
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
node_device_driver_sources = [
  'node_device_driver.c',
]

stateful_driver_source_files += files(node_device_driver_sources)

if conf.has('WITH_UDEV')
  node_device_driver_sources += 'node_device_udev.c'
endif

driver_source_files += files(node_device_driver_sources)

if conf.has('WITH_NODE_DEVICES')
  node_device_driver_impl = static_library(
    'virt_driver_nodedev_impl',
    [
      node_device_driver_sources,
    ],
    dependencies: [
      access_dep,
      libnl_dep,
      pciaccess_dep,
      src_dep,
      udev_dep,
    ],
    include_directories: [
      conf_inc_dir,
    ],
  )

  virt_modules += {
    'name': 'virt_driver_nodedev',
    'link_whole': [
      node_device_driver_impl,
    ],
    'link_args': [
      libvirt_no_undefined,
    ],
  }

  virt_daemons += {
    'name': 'virtnodedevd',
    'c_args': [
      '-DDAEMON_NAME="virtnodedevd"',
      '-DMODULE_NAME="nodedev"',
    ],
  }

  virt_daemon_confs += {
    'name': 'virtnodedevd',
  }

  virt_daemon_units += {
    'service': 'virtnodedevd',
    'service_in': files('virtnodedevd.service.in'),
    'name': 'Libvirt nodedev',
    'sockprefix': 'virtnodedevd',
    'sockets': [ 'main', 'ro', 'admin' ],
  }

  openrc_init_files += {
    'name': 'virtnodedevd',
    'in_file': files('virtnodedevd.init.in'),
  }

  virt_install_dirs += [
    runstatedir / 'libvirt' / 'nodedev',
  ]
endif