gentoo/dev-python/setuptools/setuptools-9999.ebuild
Michał Górny ad1aaaf223
dev-python/setuptools: Enable Python 3.8
Enable Python 3.8 as needed to start bootstrapping it everywhere.
For now, without test deps since they cause many blockers in keywording
process.  However, when test deps are built without testing, setuptools'
tests just pass.

Signed-off-by: Michał Górny <mgorny@gentoo.org>
2019-11-15 09:01:24 +01:00

73 lines
2.0 KiB
Bash

# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python2_7 python3_{5,6,7,8} 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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="Collection of extensions to Distutils"
HOMEPAGE="https://github.com/pypa/setuptools https://pypi.org/project/setuptools/"
LICENSE="MIT"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
"
DEPEND="${RDEPEND}
app-arch/unzip
test? (
dev-python/mock[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
>=dev-python/pytest-3.7.0[${PYTHON_USEDEP}]
dev-python/pytest-fixture-config[${PYTHON_USEDEP}]
dev-python/pytest-virtualenv[${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}" pytest -vv ${PN} || die "Tests failed under ${EPYTHON}"
}
python_install() {
export DISTRIBUTE_DISABLE_VERSIONED_EASY_INSTALL_SCRIPT=1
distutils-r1_python_install
}