meson: stop discovering native version of Python

When Python features are enabled we search both for a native and
non-native version of Python. This is wrong though: we don't use Python
in our build process, so there is no need to search for it in the first
place.

There is one location where we use the native version of Python, namely
when deciding whether or not we want to wire up git-p4(1). This check is
invalid though, as we shouldn't check for the build host to have Python,
but for the target host.

Fix this invalid check to use the non-native version of Python and stop
searching for a native version of Python altogether.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Patrick Steinhardt
2025-07-09 08:23:35 +02:00
committed by Junio C Hamano
parent 16bd9f20a4
commit 10f048fcd1

View File

@@ -866,9 +866,11 @@ if host_machine.system() == 'cygwin' or host_machine.system() == 'windows'
endif endif
build_options_config.set_quoted('X', executable_suffix) build_options_config.set_quoted('X', executable_suffix)
python = import('python').find_installation('python3', required: get_option('python')) # Python is not used for our build system, but exclusively for git-p4.
target_python = find_program('python3', native: false, required: python.found()) # Consequently we only need to determine whether Python is available for the
if python.found() # build target.
target_python = find_program('python3', native: false, required: get_option('python'))
if target_python.found()
build_options_config.set('NO_PYTHON', '') build_options_config.set('NO_PYTHON', '')
else else
libgit_c_args += '-DNO_PYTHON' libgit_c_args += '-DNO_PYTHON'
@@ -1979,7 +1981,7 @@ if perl_features_enabled
subdir('perl') subdir('perl')
endif endif
if python.found() if target_python.found()
scripts_python = [ scripts_python = [
'git-p4.py' 'git-p4.py'
] ]
@@ -2190,7 +2192,7 @@ summary({
'iconv': iconv.found(), 'iconv': iconv.found(),
'pcre2': pcre2.found(), 'pcre2': pcre2.found(),
'perl': perl_features_enabled, 'perl': perl_features_enabled,
'python': python.found(), 'python': target_python.found(),
}, section: 'Auto-detected features') }, section: 'Auto-detected features')
summary({ summary({