summary refs log tree commit diff stats
path: root/plugins/sysinfo/meson.build
blob: 7b4c9425f0b074ec5b7da0f299182d9fa6843d38 (plain) (blame)
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
sysinfo_sources = [
  'format.c',
  'sysinfo.c',
]

sysinfo_deps = [
  libgio_dep,
  hexchat_plugin_dep
]

sysinfo_includes = []
sysinfo_cargs = []

system = host_machine.system()
if system == 'linux' or system == 'darwin'
  sysinfo_includes += 'shared'
  sysinfo_sources += [
    'shared/df.c'
  ]

  if system == 'linux'
    libpci = dependency('libpci', required: false)
    if libpci.found() and cc.has_header('pci/pci.h')
      sysinfo_deps += libpci
      sysinfo_cargs += '-DHAVE_LIBPCI'
      sysinfo_sources += 'unix/pci.c'

      picidsdir = libpci.get_pkgconfig_variable('idsdir')
      pciids = join_paths(picidsdir, 'pci.ids')
      sysinfo_cargs += '-DPCIIDS_FILE="@0@"'.format(pciids)
    endif
    sysinfo_includes += 'unix'
    sysinfo_sources += [
      'unix/backend.c',
      'unix/match.c',
      'unix/parse.c',
    ]
  elif system == 'darwin'
    add_languages('objc')
    sysinfo_sources += 'osx/backend.m'
  endif

elif system == 'windows'
  sysinfo_sources += 'win32/backend.c'
else
  error('sysinfo: Unknown system?')
endif

shared_module('sysinfo', sysinfo_sources,
  dependencies: sysinfo_deps,
  include_directories: include_directories(sysinfo_includes),
  c_args: sysinfo_cargs,
  install: true,
  install_dir: plugindir,
  name_prefix: '',
)