summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3-pip
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2022-02-23 12:27:06 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-02-25 15:07:50 +0000
commitd98a804617e93d929d0386d0c1dca85d36b6a475 (patch)
tree0309aedddabaffe716b9b28b7625d1cef6885be2 /meta/recipes-devtools/python/python3-pip
parent5c46eeb375c2e6b3d439a01711420b883db168fb (diff)
downloadpoky-d98a804617e93d929d0386d0c1dca85d36b6a475.tar.gz
python3-pip: Don't change shebang
Patch pip to disable shebang mangling and also force the python executable to be python3 from the environment when building anything for the target (or nativesdk). (From OE-Core rev: 8ceb0bec18422818dcdb0efecec08ed155dc4715) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/python/python3-pip')
-rw-r--r--meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch b/meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch
new file mode 100644
index 0000000000..920e22bc02
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch
@@ -0,0 +1,28 @@
1Patch pip to disable shebang mangling and also force the python executable
2to be python3 from the environment when building anything for the target
3(or nativesdk). This avoids incorrect interpreter paths in the target scripts.
4
5Upstream-Status: Inappropriate [OE specific config]
6
7Index: pip-22.0.3/src/pip/_vendor/distlib/scripts.py
8===================================================================
9--- pip-22.0.3.orig/src/pip/_vendor/distlib/scripts.py
10+++ pip-22.0.3/src/pip/_vendor/distlib/scripts.py
11@@ -135,6 +135,8 @@ class ScriptMaker(object):
12 See also: http://www.in-ulm.de/~mascheck/various/shebang/#length
13 https://hg.mozilla.org/mozilla-central/file/tip/mach
14 """
15+ if '_PYTHON_SYSCONFIGDATA_NAME' in os.environ:
16+ return b'#!/usr/bin/env python3'
17 if os.name != 'posix':
18 simple_shebang = True
19 else:
20@@ -340,7 +342,7 @@ class ScriptMaker(object):
21 return
22
23 match = FIRST_LINE_RE.match(first_line.replace(b'\r\n', b'\n'))
24- if match:
25+ if False:
26 adjust = True
27 post_interp = match.group(1) or b''
28