buildroot/package/python/002-fix-get-python-inc.patch
Thomas Petazzoni 897d07c313 python: rename patches to the new convention
Note that we don't use completely sequential numbers, because patches
below 100 are used to address cross-compilation issues in Python,
while patches above 100 are used to make more Python modules
configurable.

[Thomas: fixup commit log.]

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2015-01-02 19:30:25 +01:00

37 lines
1.8 KiB
Diff

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>
Index: b/Lib/distutils/sysconfig.py
===================================================================
--- a/Lib/distutils/sysconfig.py
+++ b/Lib/distutils/sysconfig.py
@@ -79,7 +79,7 @@
if os.name == "posix":
if python_build:
- buildir = os.path.dirname(sys.executable)
+ buildir = project_base
if plat_specific:
# python.h is located in the buildir
inc_dir = buildir