77 lines
3.0 KiB
Diff
77 lines
3.0 KiB
Diff
|
Change the location of pyconfig.h
|
||
|
|
||
|
The Python interpreter has a really strange behaviour: at *runtime*,
|
||
|
it reads a Makefile and a header file named pyconfig.h to get some
|
||
|
information about the configuration.
|
||
|
|
||
|
The Makefile is located in usr/lib/python3.3/config-3.3m, which is fine
|
||
|
since this location is kept on the target.
|
||
|
|
||
|
However, by default, the pyconfig.h is installed in
|
||
|
usr/include/python3.3m, but we completely remove the usr/include
|
||
|
directory for the target. Since making an exception just for
|
||
|
pyconfig.h is annoying, this patch also installs pyconfig.h to
|
||
|
usr/lib/python3.3/config-3.3m, and modifies the sysconfig module so that it
|
||
|
looks in this location instead of usr/include.
|
||
|
|
||
|
The pyconfig.h is still kept in usr/include/python3.3m, because it is
|
||
|
needed in the $(STAGING_DIR) when building third-party Python
|
||
|
extensions that contain C code.
|
||
|
|
||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||
|
|
||
|
---
|
||
|
Lib/distutils/sysconfig.py | 3 ++-
|
||
|
Lib/sysconfig.py | 2 +-
|
||
|
Makefile.pre.in | 3 ++-
|
||
|
3 files changed, 5 insertions(+), 3 deletions(-)
|
||
|
|
||
|
Index: Python-3.3.0/Lib/distutils/sysconfig.py
|
||
|
===================================================================
|
||
|
--- Python-3.3.0.orig/Lib/distutils/sysconfig.py
|
||
|
+++ Python-3.3.0/Lib/distutils/sysconfig.py
|
||
|
@@ -239,7 +239,8 @@
|
||
|
else:
|
||
|
inc_dir = _sys_home or project_base
|
||
|
else:
|
||
|
- inc_dir = get_python_inc(plat_specific=1)
|
||
|
+ lib_dir = get_python_lib(plat_specific=1, standard_lib=1)
|
||
|
+ inc_dir = os.path.join(lib_dir, "config")
|
||
|
if get_python_version() < '2.2':
|
||
|
config_h = 'config.h'
|
||
|
else:
|
||
|
Index: Python-3.3.0/Lib/sysconfig.py
|
||
|
===================================================================
|
||
|
--- Python-3.3.0.orig/Lib/sysconfig.py
|
||
|
+++ Python-3.3.0/Lib/sysconfig.py
|
||
|
@@ -467,7 +467,7 @@
|
||
|
else:
|
||
|
inc_dir = _sys_home or _PROJECT_BASE
|
||
|
else:
|
||
|
- inc_dir = get_path('platinclude')
|
||
|
+ inc_dir = os.path.join(get_path('stdlib'), "config")
|
||
|
return os.path.join(inc_dir, 'pyconfig.h')
|
||
|
|
||
|
|
||
|
Index: Python-3.3.0/Makefile.pre.in
|
||
|
===================================================================
|
||
|
--- Python-3.3.0.orig/Makefile.pre.in
|
||
|
+++ Python-3.3.0/Makefile.pre.in
|
||
|
@@ -1123,7 +1123,6 @@
|
||
|
echo $(INSTALL_DATA) $$i $(INCLUDEPY); \
|
||
|
$(INSTALL_DATA) $$i $(DESTDIR)$(INCLUDEPY); \
|
||
|
done
|
||
|
- $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(CONFINCLUDEPY)/pyconfig.h
|
||
|
|
||
|
# Install the library and miscellaneous stuff needed for extending/embedding
|
||
|
# This goes into $(exec_prefix)
|
||
|
@@ -1157,6 +1156,8 @@
|
||
|
$(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o
|
||
|
$(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in
|
||
|
$(INSTALL_DATA) Makefile $(DESTDIR)$(LIBPL)/Makefile
|
||
|
+ $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(LIBPL)/pyconfig.h
|
||
|
+ $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(CONFINCLUDEPY)/pyconfig.h
|
||
|
$(INSTALL_DATA) Modules/Setup $(DESTDIR)$(LIBPL)/Setup
|
||
|
$(INSTALL_DATA) Modules/Setup.local $(DESTDIR)$(LIBPL)/Setup.local
|
||
|
$(INSTALL_DATA) Modules/Setup.config $(DESTDIR)$(LIBPL)/Setup.config
|