From e962540bd892e7d03f0c0cd07eed45d8ce7f04b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A2=D1=80=D0=B0=D1=86=D0=B5=D0=B2=D1=81=D0=BA=D0=B8?= =?UTF-8?q?=D0=B9=20=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80?= Date: Mon, 3 Aug 2020 11:49:54 +0300 Subject: [PATCH] =?UTF-8?q?dev-python/python-ldap-3.2.0=20=D0=BF=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=D0=BD=D0=B5=D1=81=D0=B5=D0=BD=20=D0=B2=20=D0=BE?= =?UTF-8?q?=D0=B2=D0=B5=D1=80=D0=BB=D0=B5=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dev-python/python-ldap/Manifest | 1 + .../python-ldap/python-ldap-3.2.0.ebuild | 91 +++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 dev-python/python-ldap/Manifest create mode 100644 dev-python/python-ldap/python-ldap-3.2.0.ebuild diff --git a/dev-python/python-ldap/Manifest b/dev-python/python-ldap/Manifest new file mode 100644 index 000000000..055f928ce --- /dev/null +++ b/dev-python/python-ldap/Manifest @@ -0,0 +1 @@ +DIST python-ldap-3.2.0.tar.gz 367645 BLAKE2B 5109f4a13644d53fff7506ad2417da6dbfd5d1c5d31cc63932338ee0bc7327b00878804764366523fc0610191126c1a1367e15fddbad481880f73d29d96d3322 SHA512 ef2833739fd57ad26d97ae5dba3bca8a47e770ff3f113d06a5bed0841f8fcbbe6cd102e75c753dfff48f5f6041f46a91c6166f3bb9ca44ef9bd643c0666c6b23 diff --git a/dev-python/python-ldap/python-ldap-3.2.0.ebuild b/dev-python/python-ldap/python-ldap-3.2.0.ebuild new file mode 100644 index 000000000..be94a062d --- /dev/null +++ b/dev-python/python-ldap/python-ldap-3.2.0.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8}} ) + +inherit distutils-r1 + +DESCRIPTION="Various LDAP-related Python modules" +HOMEPAGE="https://www.python-ldap.org/en/latest/ + https://pypi.org/project/python-ldap/ + https://github.com/python-ldap/python-ldap" +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="https://github.com/python-ldap/python-ldap.git" + inherit git-r3 +else + SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86 ~x86-solaris" +fi + +LICENSE="PSF-2" +SLOT="0" +IUSE="examples sasl ssl" + +# We do not need OpenSSL, it is never directly used: +# https://github.com/python-ldap/python-ldap/issues/224 +RDEPEND=" + !dev-python/pyldap + >=dev-python/pyasn1-0.3.7[${PYTHON_USEDEP}] + >=dev-python/pyasn1-modules-0.1.5[${PYTHON_USEDEP}] + >net-nds/openldap-2.4.11:=[sasl?,ssl?] +" +# We do not link against cyrus-sasl but we use some +# of its headers during the build. +BDEPEND=" + >net-nds/openldap-2.4.11:=[sasl?,ssl?] + sasl? ( >=dev-libs/cyrus-sasl-2.1 ) +" + +distutils_enable_tests pytest +distutils_enable_sphinx Doc + +python_prepare_all() { + # The live ebuild won't compile if setuptools_scm < 1.16.2 is installed + # https://github.com/pypa/setuptools_scm/issues/228 + if [[ ${PV} == *9999* ]]; then + rm -r .git || die + fi + + if ! use sasl; then + sed -i 's/HAVE_SASL//g' setup.cfg || die + fi + if ! use ssl; then + sed -i 's/HAVE_TLS//g' setup.cfg || die + fi + + distutils-r1_python_prepare_all +} + +python_test() { + # Run all tests which don't require slapd + local ignored_tests=( + t_bind.py + t_cext.py + t_edit.py + t_ldapobject.py + t_ldap_options.py + t_ldap_sasl.py + t_ldap_schema_subentry.py + t_ldap_syncrepl.py + t_slapdobject.py + ) + pushd Tests >/dev/null || die + pytest -vv ${ignored_tests[@]/#/--ignore } \ + || die "tests failed with ${EPYTHON}" + popd > /dev/null || die +} + +python_install() { + distutils-r1_python_install + python_optimize +} + +python_install_all() { + if use examples; then + docinto examples + dodoc -r Demo/. + docompress -x /usr/share/doc/${PF}/examples + fi + distutils-r1_python_install_all +}