summaryrefslogtreecommitdiff
path: root/package/python/python-2.7-005-staging-headers-libs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/python/python-2.7-005-staging-headers-libs.patch')
-rw-r--r--package/python/python-2.7-005-staging-headers-libs.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/package/python/python-2.7-005-staging-headers-libs.patch b/package/python/python-2.7-005-staging-headers-libs.patch
new file mode 100644
index 000000000..ab3d88e73
--- /dev/null
+++ b/package/python/python-2.7-005-staging-headers-libs.patch
@@ -0,0 +1,38 @@
+Tell setup.py the location of headers/libraries
+
+Allow the libraries detection routine to look for headers and libs in
+other directories than /usr/include or /usr/lib through the
+environment variables PYTHON_MODULES_INCLUDE and PYTHON_MODULES_LIB.
+
+We can then use it to look for libraries in the buildroot staging
+directory.
+
+Patch ported to python2.7 by Maxime Ripard <ripard@archos.com>
+---
+ setup.py | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+Index: Python-2.7.1/setup.py
+===================================================================
+--- Python-2.7.1.orig/setup.py
++++ Python-2.7.1/setup.py
+@@ -350,6 +350,19 @@
+ return sys.platform
+
+ def detect_modules(self):
++ try:
++ modules_include_dirs = os.environ["PYTHON_MODULES_INCLUDE"].split()
++ except KeyError:
++ modules_include_dirs = ['/usr/include']
++ try:
++ modules_lib_dirs = os.environ["PYTHON_MODULES_LIB"].split()
++ except KeyError:
++ modules_include_dirs = ['/usr/lib']
++ for dir in modules_include_dirs:
++ add_dir_to_list(self.compiler.include_dirs, dir)
++ for dir in modules_lib_dirs:
++ add_dir_to_list(self.compiler.library_dirs, dir)
++
+ # Ensure that /usr/local is always used
+ if os.environ.get('CROSS_COMPILING') != 'yes':
+ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')