On 4/28/21 7:48 AM, Philippe Mathieu-Daudé wrote:
seccomp = not_found
-if not get_option('seccomp').auto() or have_system or have_tools
+if not get_option('seccomp').auto() or have_system or have_tools or not
get_option('virtiofsd').auto()
seccomp = dependency('libseccomp', version: '>=2.3.0',
required: get_option('seccomp'),
method: 'pkg-config', kwargs: static_kwargs)
This construct is wrong, both before and after, as I read it.
not get_option(foo).auto() is true for both enabled and disabled. If disabled,
why are we examining the dependency? If auto, if we have all of the
dependencies we want to enable the feature -- if we don't probe for the
dependency, how can we enable it?
This error seems to be offset by the OR have_* tests, for which the logic also
seems off.
I think the test should have been
if (have_system or have_tools) and
(not get_option('seccomp').disabled() or
not get_option('virtiofsd').disabled())
Then we need to combine the required: argument, probably like
required: get_option('seccomp').enabled() or
get_option('virtiofsd').enabled()
r~