From 33875ec2cd5306aad166cb0e5202f6342c3a2f95 Mon Sep 17 00:00:00 2001 From: Virgil Dupras Date: Fri, 7 Sep 2018 14:43:59 -0400 Subject: [PATCH] dev-python/pillow: re-support pypy pypy support had been dropped in pillow 4.3 ebuild and is being re-introduced now. Tests pass. This required a little bit of library path fiddling in setup.py, the root cause of it being that `sysconfig.get_config_var('prefix')` under pypy doesn't return the same thing as with CPython. This fiddling was required if we wanted to keep the --disable-platform-guessing flag. I tried not to break the fix that was done in bug 661830. I've tried pypy3, but not all tests passed. I didn't investigate further (I'm just trying to return to pre-4.3 levels so that we can stabilize) Bug: https://bugs.gentoo.org/661830 Closes: https://bugs.gentoo.org/608620 Package-Manager: Portage-2.3.49, Repoman-2.3.10 --- .../files/pillow-5.2.0-fix-lib-paths.patch | 16 ++++++++++++++++ .../pillow/files/pillow-5.2.0-no-usr-lib.patch | 12 ------------ dev-python/pillow/pillow-5.2.0.ebuild | 4 ++-- 3 files changed, 18 insertions(+), 14 deletions(-) create mode 100644 dev-python/pillow/files/pillow-5.2.0-fix-lib-paths.patch delete mode 100644 dev-python/pillow/files/pillow-5.2.0-no-usr-lib.patch diff --git a/dev-python/pillow/files/pillow-5.2.0-fix-lib-paths.patch b/dev-python/pillow/files/pillow-5.2.0-fix-lib-paths.patch new file mode 100644 index 000000000000..b73681831a6f --- /dev/null +++ b/dev-python/pillow/files/pillow-5.2.0-fix-lib-paths.patch @@ -0,0 +1,16 @@ +diff --git a/setup.py b/setup.py +index 761d552c..c4a55092 100755 +--- a/setup.py ++++ b/setup.py +@@ -435,6 +435,11 @@ class pil_build_ext(build_ext): + _add_directory(include_dirs, + os.path.join(best_path, 'include')) + ++ # The logic above fails in many cases (such as pypy builds) and we fix ++ # it here by making sure we look in standard places first. ++ library_dirs = ['/usr/lib64', '/usr/lib'] + library_dirs ++ include_dirs = ['/usr/include'] + include_dirs ++ + # + # insert new dirs *before* default libs, to avoid conflicts + # between Python PYD stub libs and real libraries diff --git a/dev-python/pillow/files/pillow-5.2.0-no-usr-lib.patch b/dev-python/pillow/files/pillow-5.2.0-no-usr-lib.patch deleted file mode 100644 index 4b6cc50eaf5e..000000000000 --- a/dev-python/pillow/files/pillow-5.2.0-no-usr-lib.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/setup.py 2018-07-22 22:09:23.840195059 +0300 -+++ a/setup.py 2018-07-22 22:11:43.400626135 +0300 -@@ -258,9 +258,8 @@ - _add_directory(library_dirs, d) - - prefix = sysconfig.get_config_var("prefix") - if prefix: -- _add_directory(library_dirs, os.path.join(prefix, "lib")) - _add_directory(include_dirs, os.path.join(prefix, "include")) - - # - # add platform directories diff --git a/dev-python/pillow/pillow-5.2.0.ebuild b/dev-python/pillow/pillow-5.2.0.ebuild index 406d711de0d9..04ae41085612 100644 --- a/dev-python/pillow/pillow-5.2.0.ebuild +++ b/dev-python/pillow/pillow-5.2.0.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python2_7 python3_{5,6,7} ) +PYTHON_COMPAT=( python2_7 python3_{5,6,7} pypy ) PYTHON_REQ_USE='tk?,threads(+)' inherit distutils-r1 virtualx @@ -47,7 +47,7 @@ DEPEND="${RDEPEND} S="${WORKDIR}/${MY_P}" PATCHES=( - "${FILESDIR}/${PN}-5.2.0-no-usr-lib.patch" + "${FILESDIR}/${PN}-5.2.0-fix-lib-paths.patch" ) python_configure_all() { -- 2.26.2