diff -ur ../logilab-common.orig/logilab-common-0.58.0.ebuild ../logilab-common/logilab-common-0.58.0.ebuild --- ../logilab-common.orig/logilab-common-0.58.0.ebuild 2012-05-24 01:01:22.139380558 +0800 +++ ../logilab-common/logilab-common-0.58.0.ebuild 2012-05-24 01:43:56.214311257 +0800 @@ -2,9 +2,9 @@ # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-python/logilab-common/logilab-common-0.57.2.ebuild,v 1.1 2012/04/11 07:32:29 patrick Exp $ -EAPI="3" +EAPI="4" SUPPORT_PYTHON_ABIS="1" - +PYTHON_TESTS_RESTRICTED_ABIS="3.*" inherit distutils DESCRIPTION="Useful miscellaneous modules used by Logilab projects" @@ -14,20 +14,42 @@ LICENSE="LGPL-2.1" SLOT="0" KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" -IUSE="test" +IUSE="test doc" # dev-python/unittest2 is not required with Python >=3.2. RDEPEND="dev-python/setuptools dev-python/unittest2" + # Tests using dev-python/psycopg are skipped when dev-python/psycopg isn't installed. DEPEND="${RDEPEND} test? ( dev-python/egenix-mx-base !dev-python/psycopg[-mxdatetime] - )" + ) + doc? ( dev-python/epydoc )" PYTHON_MODNAME="logilab" +src_prepare() { + if use doc; then + sed -e 's:(CURDIR):{S}/${P}:' -i doc/makefile || die + fi + distutils_src_prepare +} + +src_compile() { + distutils_src_compile + + # Simplest way to make makefile point to the right place. + mklinks() { + # dosym it seems is restricted to src_install. + ln -s build-${PYTHON_ABI} build + emake -C doc epydoc + rm build + } + use doc && python_execute_function -f mklinks +} + src_test() { testing() { # Install temporarily. @@ -40,9 +62,9 @@ pushd "${spath}" > /dev/null || return 1 if [[ "${PYTHON_ABI}" == 3.* ]]; then # Support for Python 3 is experimental. Some tests are known to fail. - PYTHONPATH="${spath}" "$(PYTHON)" "${tpath}${EPREFIX}/usr/bin/pytest" -v + "${tpath}${EPREFIX}/usr/bin/pytest" -v || return 1 else - PYTHONPATH="${spath}" "$(PYTHON)" "${tpath}${EPREFIX}/usr/bin/pytest" -v || return 1 + "${tpath}${EPREFIX}/usr/bin/pytest" -v || return 1 fi popd > /dev/null || return 1 } @@ -60,4 +82,5 @@ rm -fr "${ED}$(python_get_sitedir)/${PN/-//}/test" } python_execute_function -q delete_tests + use doc && dohtml -r doc/apidoc/ }