From 4cffb16b0edc353d4a3287ca59ba02640f605d2b Mon Sep 17 00:00:00 2001 From: Alejandro Hernandez Date: Thu, 14 May 2015 16:43:24 +0000 Subject: python3-io: Fixes compilation of python3 ssl module During python3 compilation, the module ssl was being skippped due to the fact that the compilation script couldnt find the required files, this patch fixes setup.py so it looks for the files in the correct directory, hence fixing its compilation and installation. [YOCTO #7768] Signed-off-by: Alejandro Hernandez --- .../python/python3/fix_ssl_include_dir.patch | 41 ++++++++++++++++++++++ meta/recipes-devtools/python/python3_3.4.3.bb | 1 + 2 files changed, 42 insertions(+) create mode 100644 meta/recipes-devtools/python/python3/fix_ssl_include_dir.patch diff --git a/meta/recipes-devtools/python/python3/fix_ssl_include_dir.patch b/meta/recipes-devtools/python/python3/fix_ssl_include_dir.patch new file mode 100644 index 0000000000..9972829c78 --- /dev/null +++ b/meta/recipes-devtools/python/python3/fix_ssl_include_dir.patch @@ -0,0 +1,41 @@ +Upstream-Status: Inappropriate [Embedded Specific] + +Python 3 fails to compile the ssl module, later, when requesting to install packages that should include such modules +no error is shown; but a running python shell trying to import the ssl library results in an import error, +since it was never installed. + +This looks for the modules in the correct directories so they are corretcly compiled and installed along with python3. + +ImportError: No module named _ssl + +Signed-Off-By: Alejandro Hernandez + +Index: Python-3.4.3/setup.py +=================================================================== +--- Python-3.4.3.orig/setup.py ++++ Python-3.4.3/setup.py +@@ -726,10 +726,9 @@ class PyBuildExt(build_ext): + exts.append( Extension('_socket', ['socketmodule.c'], + depends = ['socketmodule.h']) ) + # Detect SSL support for the socket module (via _ssl) +- search_for_ssl_incs_in = [ +- '/usr/local/ssl/include', +- '/usr/contrib/ssl/include/' +- ] ++ search_for_ssl_incs_in = [] ++ for dir in [os.getenv("STAGING_INCDIR")]: ++ search_for_ssl_incs_in.append(dir) + ssl_incs = find_file('openssl/ssl.h', inc_dirs, + search_for_ssl_incs_in + ) +@@ -739,9 +738,7 @@ class PyBuildExt(build_ext): + if krb5_h: + ssl_incs += krb5_h + ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs, +- ['/usr/local/ssl/lib', +- '/usr/contrib/ssl/lib/' +- ] ) ++ [os.getenv("STAGING_LIBDIR")]) + + if (ssl_incs is not None and + ssl_libs is not None): diff --git a/meta/recipes-devtools/python/python3_3.4.3.bb b/meta/recipes-devtools/python/python3_3.4.3.bb index 4bab4db81b..8e0c2ba5f0 100644 --- a/meta/recipes-devtools/python/python3_3.4.3.bb +++ b/meta/recipes-devtools/python/python3_3.4.3.bb @@ -36,6 +36,7 @@ SRC_URI += "\ file://python3-setup.py-no-host-headers-libs.patch \ file://sysconfig.py-add-_PYTHON_PROJECT_SRC.patch \ file://setup.py-check-cross_compiling-when-get-FLAGS.patch \ + file://fix_ssl_include_dir.patch \ " SRC_URI[md5sum] = "7d092d1bba6e17f0d9bd21b49e441dd5" SRC_URI[sha256sum] = "b5b3963533768d5fc325a4d7a6bd6f666726002d696f1d399ec06b043ea996b8" -- cgit 1.2.3-korg