summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch
blob: 99fa14ee03129d8adbb02da4d51a78e003286369 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
From 2aa82aeb0783c5fa7777b32bfe1dd3da9ae8fc6e Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Wed, 23 Feb 2022 12:27:06 +0000
Subject: [PATCH] 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). This avoids incorrect interpreter paths in the target scripts.

Upstream-Status: Inappropriate [OE specific config]
---
 src/pip/_vendor/distlib/scripts.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/pip/_vendor/distlib/scripts.py b/src/pip/_vendor/distlib/scripts.py
index cfa45d2..313f499 100644
--- a/src/pip/_vendor/distlib/scripts.py
+++ b/src/pip/_vendor/distlib/scripts.py
@@ -144,6 +144,8 @@ class ScriptMaker(object):
         See also: http://www.in-ulm.de/~mascheck/various/shebang/#length
                   https://hg.mozilla.org/mozilla-central/file/tip/mach
         """
+        if '_PYTHON_SYSCONFIGDATA_NAME' in os.environ:
+            return b'#!/usr/bin/env python3'
         if os.name != 'posix':
             simple_shebang = True
         else:
@@ -362,7 +364,7 @@ class ScriptMaker(object):
                 return
 
             match = FIRST_LINE_RE.match(first_line.replace(b'\r\n', b'\n'))
-            if match:
+            if False:
                 adjust = True
                 post_interp = match.group(1) or b''