python3-setuptools: restore build_scripts.executable support

We encountered an issue when running python scripts provided by
python3-fail2ban. The shebang '#!/usr/bin/env python3' was replaced by
'#!python', which caused these scripts to fail to run.

For example:
$ head -n 1 /usr/bin/fail2ban-testcases
 #!python
$ /usr/bin/fail2ban-testcases
-sh: /usr/bin/fail2ban-testcases: cannot execute: required file not found

This issue was introduced by commit[1] in python3-setuptools 75.3.2. See
the upstream issue report[2] for more information.

Backport patches from [3] to fix this issue.

[1] c71266345c
[2] https://github.com/pypa/setuptools/issues/4934
[3] https://github.com/pypa/distutils/pull/358

(From OE-Core rev: d728ec95291f05cbfb436eabe8717ebe9a0dc11d)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
This commit is contained in:
Yi Zhao
2025-09-20 14:17:52 +08:00
committed by Steve Sakoman
parent 9bdfaa121a
commit cb23f1e136
3 changed files with 124 additions and 0 deletions

View File

@@ -14,6 +14,8 @@ SRC_URI += " \
file://0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch \
file://CVE-2025-47273-pre1.patch \
file://CVE-2025-47273.patch \
file://0001-Revert-Merge-pull-request-pypa-distutils-332-from-py.patch \
file://0002-Remove-support-for-special-executable-under-a-Python.patch \
"
SRC_URI[sha256sum] = "43b4ee60e10b0d0ee98ad11918e114c70701bc6051662a9a675a0496c1a158f4"