37 lines
1.8 KiB
Diff
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
|