Re: [PATCH] meson: fix perl detection when docs are enabled, but perl bindings aren't
From: Patrick Steinhardt <hidden>
Date: 2025-03-17 14:01:20
On Sun, Mar 16, 2025 at 02:06:05AM -0400, Eli Schwartz wrote:
The `perl` variable in meson.build is assigned to a program lookup, which may have the value "not-found object" if configuring with `-Dperl=disabled`. There is already a list of other cases where we do need a perl command, even when not building perl bindings. Building documentation should be one of those cases, but was missing from the list. Add it. Fixes:$ meson setup builddir/ -Ddocs=man -Dperl=disabled -Dtests=false [...] Documentation/meson.build:308:22: ERROR: Tried to use not-found external program in "command"Bug: https://bugs.gentoo.org/949247
Nit: we typically don't include Bug trailers.
quoted hunk ↗ jump to hunk
Signed-off-by: Eli Schwartz <redacted> --- meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/meson.build b/meson.build index efe2871c9d..c6241c7a12 100644 --- a/meson.build +++ b/meson.build@@ -772,7 +772,7 @@ endif # features. It is optional if you want to neither execute tests nor use any of # these optional features. perl_required = get_option('perl') -if get_option('tests') or get_option('gitweb').enabled() or 'netrc' in get_option('credential_helpers') +if get_option('tests') or get_option('gitweb').enabled() or 'netrc' in get_option('credential_helpers') or get_option('docs') != [] perl_required = true endif
This change does indeed make sense. We require Perl in order to generate command lists. Ideally we would get rid of this dependency so that it does become possible to build documentation without Perl, as this is the only part of the build system that requires it. But until then I'm fine with making the requirement explicit here. Patrick