summaryrefslogtreecommitdiffstats
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
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>
-rw-r--r--meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch28
-rw-r--r--meta/recipes-devtools/python/python3-pip_22.0.3.bb1
2 files changed, 29 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
diff --git a/meta/recipes-devtools/python/python3-pip_22.0.3.bb b/meta/recipes-devtools/python/python3-pip_22.0.3.bb
index c4671f5017..023ab41810 100644
--- a/meta/recipes-devtools/python/python3-pip_22.0.3.bb
+++ b/meta/recipes-devtools/python/python3-pip_22.0.3.bb
@@ -13,6 +13,7 @@ DEPENDS:remove:class-native = "python3-pip-native"
13DEPENDS:append:class-native = " unzip-native" 13DEPENDS:append:class-native = " unzip-native"
14 14
15SRC_URI += "file://0001-change-shebang-to-python3.patch" 15SRC_URI += "file://0001-change-shebang-to-python3.patch"
16SRC_URI += "file://no_shebang_mangling.patch"
16 17
17SRC_URI[sha256sum] = "f29d589df8c8ab99c060e68ad294c4a9ed896624f6368c5349d70aa581b333d0" 18SRC_URI[sha256sum] = "f29d589df8c8ab99c060e68ad294c4a9ed896624f6368c5349d70aa581b333d0"
18 19