Re: [PATCH v5] meson: work around broken system PCRE2 dependency in macOS
- From
Eli Schwartz <eschwartz@gentoo.org>
- Date
- Jul 16, 2025, 22:10 UTC
- Message-ID
- <629a1c11-fceb-4f25-a917-319a99bfed57@gentoo.org>
- In-Reply-To
- <20250716193000.44673-1-carenas@gmail.com>
On 7/16/25 3:30 PM, Carlo Marcelo Arenas Belón wrote:
Show 8 quoted lines
> +if pcre2.found() and pcre2.type_name() != 'internal' and host_machine.system() == 'darwin'
> + # macOS installs a broken system package, double check
> + if not compiler.has_header('pcre2.h', dependencies: pcre2)
> + if pcre2_feature.enabled()
> + # Attempt to fallback, method can't be pkg-config
> + pcre2 = dependency('libpcre2-8', method: 'builtin', default_options: ['default_library=static', 'test=false'])
> + if not pcre2.found()
> + error('only a broken pcre2 install found and pcre2 is required')If you want to override the message from a specific dependency() call, "required" defaults to true and aborts on the line before "if not pcre2.found()"
You could do: https://mesonbuild.com/Reference-manual_functions.html#dependency_not_found_message
not_found_message: 'only a broken pcre2 install found and pcre2 is required'
Alternatively, required: false followed by if not pcre2.found() --> error(). But you will need "allow_fallback: true" as I responded in a previous message.
-- Eli Schwartz