dev-python/pyparsing: force distutils to avoid circular dep with setuptools
authorMike Gilbert <floppym@gentoo.org>
Tue, 31 Jan 2017 04:34:32 +0000 (23:34 -0500)
committerMike Gilbert <floppym@gentoo.org>
Tue, 31 Jan 2017 04:43:59 +0000 (23:43 -0500)
Bug: https://bugs.gentoo.org/607770
Package-Manager: Portage-2.3.3_p42_p432967, Repoman-2.3.1_p35_p432968

dev-python/pyparsing/files/distutils.patch [new file with mode: 0644]
dev-python/pyparsing/pyparsing-2.1.10.ebuild

diff --git a/dev-python/pyparsing/files/distutils.patch b/dev-python/pyparsing/files/distutils.patch
new file mode 100644 (file)
index 0000000..af6a673
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/setup.py
++++ b/setup.py
+@@ -1,7 +1,7 @@
+ #!/usr/bin/env python\r
\r
+ """Setup script for the pyparsing module distribution."""\r
+-from setuptools import setup\r
++from distutils.core import setup\r
\r
+ import sys\r
+ import os\r
index af9278e85fcfab1b8023f506148dffed24fab1cc..c1a1247dff445da135ef56e85c2210d18c540301 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -16,11 +16,14 @@ SLOT="0"
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
 IUSE="doc examples"
 
-DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
-
 # not contained in the tarball
 RESTRICT=test
 
+PATCHES=(
+       # Avoid circular dep with setuptools
+       "${FILESDIR}/distutils.patch"
+)
+
 python_install_all() {
        local HTML_DOCS=( HowToUsePyparsing.html )
        if use doc; then
@@ -34,3 +37,15 @@ python_install_all() {
 python_test() {
        ${PYTHON} unitTests.py || die
 }
+
+pkg_preinst() {
+       _remove_egg_info() {
+               local pyver="$("${PYTHON}" -c 'import sys; print(sys.version[:3])')"
+               local egginfo="${ROOT%/}$(python_get_sitedir)/${P}-py${pyver}.egg-info"
+               if [[ -d ${egginfo} ]]; then
+                       einfo "Removing ${egginfo}"
+                       rm -r "${egginfo}" || die
+               fi
+       }
+       python_foreach_impl _remove_egg_info
+}