summaryrefslogtreecommitdiff
path: root/recipes-devtools
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-devtools')
-rw-r--r--recipes-devtools/python/python/dont_build_tkinter.patch24
-rw-r--r--recipes-devtools/python/python_2.7.9.bbappend19
2 files changed, 43 insertions, 0 deletions
diff --git a/recipes-devtools/python/python/dont_build_tkinter.patch b/recipes-devtools/python/python/dont_build_tkinter.patch
new file mode 100644
index 0000000..bdd47a8
--- /dev/null
+++ b/recipes-devtools/python/python/dont_build_tkinter.patch
@@ -0,0 +1,24 @@
+_tkinter module needs tk module along with tcl.
+Force python to not be built with _tkinter.
+
+Upstream-Status: Inappropriate [distribution]
+
+Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
+
+--- Python-2.7.9/setup.py.orig 2015-12-20 16:56:24.580951972 +0100
++++ Python-2.7.9/setup.py 2015-12-20 17:00:34.524083526 +0100
+@@ -1762,10 +1762,11 @@
+ self.extensions.extend(exts)
+
+ # Call the method for detecting whether _tkinter can be compiled
+- self.detect_tkinter(inc_dirs, lib_dirs)
++ # disable detection of tcl/tk and thus don't build python with _tkinter
++ #self.detect_tkinter(inc_dirs, lib_dirs)
+
+- if '_tkinter' not in [e.name for e in self.extensions]:
+- missing.append('_tkinter')
++ #if '_tkinter' not in [e.name for e in self.extensions]:
++ # missing.append('_tkinter')
+
+ ## # Uncomment these lines if you want to play with xxmodule.c
+ ## ext = Extension('xx', ['xxmodule.c'])
diff --git a/recipes-devtools/python/python_2.7.9.bbappend b/recipes-devtools/python/python_2.7.9.bbappend
new file mode 100644
index 0000000..ff0071f
--- /dev/null
+++ b/recipes-devtools/python/python_2.7.9.bbappend
@@ -0,0 +1,19 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/python:"
+
+SRC_URI_remove = "file://avoid_warning_about_tkinter.patch"
+
+PACKAGECONFIG ?= ""
+
+PACKAGECONFIG[tkinter] = ",,tk"
+PACKAGECONFIG_remove_class-native = "tkinter"
+PACKAGECONFIG_remove_class-nativesdk = "tkinter"
+RDEPENDS_${PN}-tkinter_append += "${@base_contains('PACKAGECONFIG', 'tkinter', 'tcl tk', '', d)}"
+SRC_URI += " \
+ ${@base_contains('PACKAGECONFIG', 'tkinter', '', 'file://dont_build_tkinter.patch', d)} \
+"
+python __anonymous() {
+ if not 'openembedded-layer' in d.getVar('BBFILE_COLLECTIONS'):
+ if 'tkinter' in d.getVar('PACKAGECONFIG'):
+ bb.error('Python PACKAGECONFIG tkinter requires tk provided by' \
+ 'meta-oe layer but the layer is not available.')
+}