build: If pcre2 is a subproject, disable its unit tests by default

Debugging pcre2's test suite is out-of-scope for GLib, or for any larger
project that embeds GLib as a subproject.

Resolves: https://gitlab.gnome.org/GNOME/glib/-/issues/3626
Signed-off-by: Simon McVittie <smcv@collabora.com>
This commit is contained in:
Simon McVittie 2025-02-28 11:58:00 +00:00
parent 12171f6fe7
commit 66bca5f78b

View File

@ -2225,9 +2225,13 @@ else
endif
pcre2_req = '>=10.32'
pcre2_options = [
'default_library=static',
'test=false',
]
# Pick up pcre from the system, or if "--force-fallback-for libpcre2-8" was specified
pcre2 = dependency('libpcre2-8', version: pcre2_req, required: false, default_options: ['default_library=static'])
pcre2 = dependency('libpcre2-8', version: pcre2_req, required: false, default_options: pcre2_options)
if not pcre2.found()
if cc.get_id() == 'msvc' or cc.get_id() == 'clang-cl'
# MSVC: Search for the PCRE2 library by the configuration, which corresponds
@ -2243,7 +2247,7 @@ endif
# Try again with the fallback
if not pcre2.found()
pcre2 = dependency('libpcre2-8', version: pcre2_req, allow_fallback: true, default_options: ['default_library=static'])
pcre2 = dependency('libpcre2-8', version: pcre2_req, allow_fallback: true, default_options: pcre2_options)
assert(pcre2.type_name() == 'internal')
# static flags are automatically enabled by the subproject if it's built
# with default_library=static