Files
zoitechat/plugins/sysinfo/meson.build

95 lines
2.4 KiB
Meson
Raw Permalink Normal View History

sysinfo_sources = [
'format.c',
'sysinfo.c',
]
sysinfo_deps = [
libgio_dep,
2026-01-05 23:12:38 -07:00
zoitechat_plugin_dep,
]
sysinfo_includes = []
2026-02-22 16:08:00 -07:00
sysinfo_cargs = ['-DHAVE_CONFIG_H']
system = host_machine.system()
2026-09-11 03:37:28 -06:00
if system == 'linux'
2026-09-03 15:19:21 -06:00
if get_option('gtk-frontend')
sysinfo_deps += dependency('gtk+-3.0', version: '>= 3.22')
endif
libpci = dependency('libpci', required: false, method: 'pkg-config')
if libpci.found()
sysinfo_deps += libpci
sysinfo_cargs += '-DHAVE_LIBPCI'
endif
sysinfo_includes += 'unix'
sysinfo_sources += 'unix/modern-backend.c'
2026-09-11 03:37:28 -06:00
sysinfo_test_deps = [libgio_dep]
sysinfo_test_cargs = []
if libpci.found()
sysinfo_test_deps += libpci
sysinfo_test_cargs += '-DHAVE_LIBPCI'
endif
sysinfo_backend_tests = executable('sysinfo_backend_tests',
['tests/test-linux-backend.c', 'format.c'],
dependencies: sysinfo_test_deps,
c_args: sysinfo_test_cargs,
)
test('Sysinfo Backend Tests', sysinfo_backend_tests, protocol: 'tap')
elif system == 'freebsd' or system == 'gnu' or system.startswith('gnu/')
2026-09-03 15:19:21 -06:00
sysinfo_includes += ['shared', 'unix']
sysinfo_sources += [
2026-09-03 15:19:21 -06:00
'shared/df.c',
'unix/backend.c',
'unix/match.c',
'unix/parse.c',
]
2026-09-03 15:19:21 -06:00
libpci = dependency('libpci', required: false, method: 'pkg-config')
if libpci.found()
sysinfo_deps += libpci
sysinfo_cargs += '-DHAVE_LIBPCI'
sysinfo_sources += 'unix/pci.c'
2026-09-11 03:37:28 -06:00
picidsdir = libpci.get_variable(pkgconfig: 'idsdir')
2026-09-03 15:19:21 -06:00
pciids = join_paths(picidsdir, 'pci.ids')
sysinfo_cargs += '-DPCIIDS_FILE="@0@"'.format(pciids)
endif
2026-02-22 16:08:00 -07:00
2026-09-03 15:19:21 -06:00
if get_option('gtk-frontend')
sysinfo_deps += dependency('gtk+-3.0', version: '>= 3.22')
endif
2026-09-03 15:19:21 -06:00
elif system == 'darwin'
sysinfo_includes += 'shared'
sysinfo_sources += 'shared/df.c'
add_languages('objc')
sysinfo_sources += 'osx/backend.m'
elif system == 'windows'
2026-09-03 15:19:21 -06:00
cc = meson.get_compiler('c')
sysinfo_deps += [
cc.find_library('advapi32', required: true),
cc.find_library('dxgi', required: true),
cc.find_library('dxguid', required: true),
cc.find_library('iphlpapi', required: true),
cc.find_library('winmm', required: true),
2018-03-05 19:25:08 -05:00
]
2026-09-03 15:19:21 -06:00
sysinfo_sources += 'win32/backend.c'
else
error('sysinfo: Unknown system?')
endif
shared_module('sysinfo', sysinfo_sources,
dependencies: sysinfo_deps,
2026-02-22 16:08:00 -07:00
include_directories: [config_h_include, include_directories(sysinfo_includes)],
c_args: sysinfo_cargs,
install: true,
install_dir: plugindir,
name_prefix: '',
vs_module_defs: 'sysinfo.def',
)