897d07c313
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>
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
|