| # Copyright 1999-2019 Gentoo Authors |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| EAPI=5 |
| PYTHON_COMPAT=( python2_7 python3_{4,5,6,7} pypy{,3} ) |
| PYTHON_REQ_USE="xml(+)" |
| |
| inherit distutils-r1 |
| |
| if [[ ${PV} == "9999" ]]; then |
| EGIT_REPO_URI="https://github.com/pypa/setuptools.git" |
| inherit git-r3 |
| else |
| SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip" |
| KEYWORDS="*" |
| fi |
| |
| DESCRIPTION="Collection of extensions to Distutils" |
| HOMEPAGE="https://github.com/pypa/setuptools https://pypi.org/project/setuptools/" |
| |
| LICENSE="MIT" |
| SLOT="0" |
| IUSE="test" |
| |
| RDEPEND=" |
| " |
| DEPEND="${RDEPEND} |
| app-arch/unzip |
| test? ( |
| dev-python/pip[${PYTHON_USEDEP}] |
| >=dev-python/pytest-3.1.0[${PYTHON_USEDEP}] |
| dev-python/pytest-fixture-config[${PYTHON_USEDEP}] |
| dev-python/pytest-virtualenv[${PYTHON_USEDEP}] |
| >=dev-python/backports-unittest-mock-1.2[${PYTHON_USEDEP}] |
| dev-python/wheel[${PYTHON_USEDEP}] |
| virtual/python-futures[${PYTHON_USEDEP}] |
| ) |
| " |
| PDEPEND=" |
| >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}]" |
| |
| # Force in-source build because build system modifies sources. |
| DISTUTILS_IN_SOURCE_BUILD=1 |
| |
| DOCS=( {CHANGES,README}.rst docs/{easy_install.txt,pkg_resources.txt,setuptools.txt} ) |
| |
| python_prepare_all() { |
| if [[ ${PV} == "9999" ]]; then |
| python_setup |
| ${EPYTHON} bootstrap.py || die |
| fi |
| |
| # disable tests requiring a network connection |
| rm setuptools/tests/test_packageindex.py || die |
| |
| # don't run integration tests |
| rm setuptools/tests/test_integration.py || die |
| |
| distutils-r1_python_prepare_all |
| } |
| |
| python_test() { |
| # test_easy_install raises a SandboxViolation due to ${HOME}/.pydistutils.cfg |
| # It tries to sandbox the test in a tempdir |
| HOME="${PWD}" py.test --verbose ${PN} || die "Tests failed under ${EPYTHON}" |
| } |
| |
| python_install() { |
| export DISTRIBUTE_DISABLE_VERSIONED_EASY_INSTALL_SCRIPT=1 |
| distutils-r1_python_install |
| } |