summaryrefslogtreecommitdiffstats
path: root/package/python3/python3-003-staging-header-libs.patch
blob: b0efe29614d6edc364b209d29c087aaa601af386 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
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.

Ported to python3.3 by Maxime Ripard <maxime.ripard@free-electrons.com> based
on the work by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
---
 setup.py |   13 +++++++++++++
 1 file changed, 13 insertions(+)

Index: Python-3.3.0/setup.py
===================================================================
--- Python-3.3.0.orig/setup.py
+++ Python-3.3.0/setup.py
@@ -441,6 +441,19 @@
             os.unlink(tmpfile)
 
     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_lib_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, but the local build
         # directories (i.e. '.' and 'Include') must be first.  See issue
         # 10520.