summaryrefslogtreecommitdiffstats
path: root/package/python/python-003-properly-detect-if-python-build.patch
blob: 3fb865f84f6dbb6c399269d02c60687e805f8ee8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
distutils: fix build_ext check to find whether we're building Python or not

The build_ext logic uses
sys.executable.startswith(os.path.join(sys.exec_prefix, "bin")) to
determine whether we're building a third-party Python extension, or a
built-in Python extension. However, this check is wrong in
cross-compilation mode, and instead, the sysconfig.python_build
variable should be used.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/Lib/distutils/command/build_ext.py
===================================================================
--- a/Lib/distutils/command/build_ext.py
+++ b/Lib/distutils/command/build_ext.py
@@ -235,7 +235,7 @@
         # Python's library directory must be appended to library_dirs
         # See Issues: #1600860, #4366
         if (sysconfig.get_config_var('Py_ENABLE_SHARED')):
-            if sys.executable.startswith(os.path.join(sys.exec_prefix, "bin")):
+            if not sysconfig.python_build:
                 # building third party extensions
                 self.library_dirs.append(sysconfig.get_config_var('LIBDIR'))
             else:
OpenPOWER on IntegriCloud