All the root*dir logic is unnecessary. Subprojects inherit the standard directories from the root project. I don't really know why there is an iniparserdir option. Please remove it because if I have a prefix in the root project of /opt/cxl-reskit, then Meson fails looking for the iniparser headers in /opt/cxl-reskit/include because the prefix doesn't exist.
if get_option('systemd').enabled()
systemd = dependency('systemd', required : true)
systemdunitdir = systemd.get_pkgconfig_variable('systemdsystemunitdir')
udev = dependency('udev', required : true)
udevdir = udev.get_pkgconfig_variable('udevdir')
udevrulesdir = udevdir / 'rules.d'
endif
You are effectively making -Dsystemd a boolean instead of a feature with this logic.
Please use meson.override_find_program() and meson.override_dependency() as necessary for an binaries and dependencies.
These are just a few issues that I have had trying to consume this build system.
All the
root*dirlogic is unnecessary. Subprojects inherit the standard directories from the root project. I don't really know why there is aniniparserdiroption. Please remove it because if I have a prefix in the root project of/opt/cxl-reskit, then Meson fails looking for the iniparser headers in/opt/cxl-reskit/includebecause the prefix doesn't exist.You are effectively making
-Dsystemda boolean instead of a feature with this logic.Please use
meson.override_find_program()andmeson.override_dependency()as necessary for an binaries and dependencies.These are just a few issues that I have had trying to consume this build system.