summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch
blob: 7f15e9c0da73abcedb7c70525c3c43dd943b5064 (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 6adf47097928ee3bb1b02c204126ed923faa7446 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 195dc3f..a0e0d61 100644
--- a/src/pip/_vendor/distlib/scripts.py
+++ b/src/pip/_vendor/distlib/scripts.py
@@ -155,6 +155,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
         elif getattr(sys, "cross_compiling", False):
@@ -363,7 +365,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''