summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/logilab-common/logilab-common-0.44.0.ebuild')
-rw-r--r--dev-python/logilab-common/logilab-common-0.44.0.ebuild88
1 files changed, 88 insertions, 0 deletions
diff --git a/dev-python/logilab-common/logilab-common-0.44.0.ebuild b/dev-python/logilab-common/logilab-common-0.44.0.ebuild
new file mode 100644
index 000000000000..ac82cbf21d86
--- /dev/null
+++ b/dev-python/logilab-common/logilab-common-0.44.0.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/logilab-common/logilab-common-0.44.0.ebuild,v 1.1 2009/08/25 14:40:26 arfrever Exp $
+
+EAPI="2"
+SUPPORT_PYTHON_ABIS="1"
+
+inherit distutils eutils python
+
+DESCRIPTION="useful miscellaneous modules used by Logilab projects"
+HOMEPAGE="http://www.logilab.org/projects/common/"
+SRC_URI="ftp://ftp.logilab.org/pub/common/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="test"
+
+DEPEND="test? ( dev-python/egenix-mx-base )"
+RDEPEND=""
+
+RESTRICT_PYTHON_ABIS="3*"
+
+PYTHON_MODNAME="logilab"
+# Extra documentation (html/pdf) needs some love
+
+pkg_setup() {
+ # Tests using dev-python/psycopg are skipped when dev-python/psycopg isn't installed.
+ if use test && has_version dev-python/psycopg && ! has_version dev-python/psycopg[mxdatetime]; then
+ die "dev-python/psycopg should be installed with USE=\"mxdatetime\""
+ fi
+}
+
+src_prepare() {
+ distutils_src_prepare
+
+ epatch "${FILESDIR}/${PN}-0.41.0-remove-broken-tests.patch"
+}
+
+src_test() {
+ testing() {
+ # Install temporarily.
+ local tpath="${T}/test-${PYTHON_ABI}"
+ local lpath="${tpath}/lib/python"
+
+ # setuptools would fail if the directory doesn't exist.
+ mkdir -p "${lpath}" || die
+
+ # We also have to add ${lpath} to PYTHONPATH else the installation would
+ # fail.
+ PYTHONPATH="${lpath}" "$(PYTHON)" setup.py build -b "build-${PYTHON_ABI}" install --home="${tpath}" || die "test copy failed"
+
+ # Get a rid of precompiled files to ensure we run our _modified_ tests
+ find ${lpath} -type f -name '*.pyc' -exec rm {} ';'
+
+ # Remove a botched tests.
+ # To support test w/o setuptools.
+ if [[ -d "${lpath}/${PN/-//}" ]]; then
+ pushd "${lpath}/${PN/-//}" >/dev/null || die
+ else
+ pushd "${lpath}/${P/-/_}-py${PYTHON_ABI}.egg/${PN/-//}" >/dev/null || die
+ fi
+
+ # Bug 223079
+ if [[ "${EUID}" -eq 0 ]]; then
+ rm test/unittest_fileutils.py || die
+ fi
+
+ popd >/dev/null || die
+
+ # It picks up the tests relative to the current dir, so cd in. Do
+ # not cd in too far though (to logilab/common for example) or some
+ # relative/absolute module location tests fail.
+ pushd "${lpath}" >/dev/null || die
+ PYTHONPATH="${lpath}" "$(PYTHON)" "${tpath}/bin/pytest" -v || die "tests failed"
+ popd >/dev/null || die
+ }
+ python_execute_function testing
+}
+
+src_install() {
+ distutils_src_install
+
+ doman doc/pytest.1 || die "doman failed"
+
+ # Remove unittests since they're just needed during build-time
+ rm -rf "${D}"usr/lib*/python*/site-packages/${PN/-//}/test || die
+}