123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- From 367ee7d103cf9f670c3925d555edf6f6a5b9d8d5 Mon Sep 17 00:00:00 2001
- From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Date: Tue, 7 Mar 2017 22:17:25 +0100
- Subject: [PATCH] Fix get_python_inc() for cross-compilation
- When we are cross compiling, doing os.path.dirname(sys.executable) to
- get the build directory is incorrect, because we're executing the host
- Python to build things for the target. Instead, we should use the
- project_base variable.
- This fixes cross-compilation, which was adding incorrect header paths
- pointing to the location where the host Python was built:
- /home/thomas/projets/buildroot/output/host/usr/bin/arm-none-linux-gnueabi-gcc -fPIC -fno-strict-aliasing \
- -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -Os -DNDEBUG -g -O3 -Wall -Wstrict-prototypes \
- -I/usr/include -I. -IInclude -I./Include -I/home/thomas/projets/buildroot/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/include \
- -I/home/thomas/projets/buildroot/output/host/usr/bin/Include -I/home/thomas/projets/buildroot/output/host/usr/bin \
- -c /home/thomas/projets/buildroot/output/build/python-2.7.6/Modules/_struct.c \
- -o build/temp.linux2-arm-2.7/home/thomas/projets/buildroot/output/build/python-2.7.6/Modules/_struct.o
- This patch allows to fix the
- /home/thomas/projets/buildroot/output/host/usr/bin/Include and
- /home/thomas/projets/buildroot/output/host/usr/bin paths that are
- incorrectly added to the header paths.
- Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- [Asaf: update for 2.7.17]
- Signed-off-by: Asaf Kahlon <asafka7@gmail.com>
- ---
- Lib/distutils/sysconfig.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
- diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
- index 1a4b792644..14c7d81c48 100644
- --- a/Lib/distutils/sysconfig.py
- +++ b/Lib/distutils/sysconfig.py
- @@ -85,7 +85,7 @@ def get_python_inc(plat_specific=0, prefix=None):
- if os.name == "posix":
- if python_build:
- if sys.executable:
- - buildir = os.path.dirname(sys.executable)
- + buildir = project_base
- else:
- # sys.executable can be empty if argv[0] has been changed
- # and Python is unable to retrieve the real program name
- --
- 2.20.1
|