# Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-python/pylint/pylint-0.14.0.ebuild,v 1.3 2008/10/21 17:28:23 hawking Exp $ inherit distutils eutils DESCRIPTION="PyLint is a tool to check if a Python module satisfies a coding standard" SRC_URI="ftp://ftp.logilab.org/pub/pylint/${P}.tar.gz" HOMEPAGE="http://www.logilab.org/projects/pylint/" IUSE="tk" SLOT="0" KEYWORDS="~amd64 ~ia64 ~ppc ~sparc ~x86" LICENSE="GPL-2" DEPEND=">=dev-python/logilab-common-0.21.0 >=dev-python/astng-0.17.2 tk? ( >=dev-lang/tk-8.4.9 )" DOCS="doc/*.txt" pkg_setup() { if use tk && ! built_with_use dev-lang/python tk; then eerror "You have USE='tk' enabled." eerror "Python has not been compiled with tkinter support." eerror "Please re-emerge python with the 'tk' USE-flag set." die "Missing USE-flag for dev-lang/python" fi } src_unpack() { unpack ${A} cd "${S}" # Make the test that tries to import gtk a bit less strict epatch "${FILESDIR}/${PN}-0.10.0-extra-gtk-disable.patch" # Make pylint-gui print a gentoo-specific message if Tkinter is missing epatch "${FILESDIR}/${PN}-0.11.0-gui-no-tkinter.patch" # Upstream fixes for tests epatch "${FILESDIR}/${P}-tests-typo.patch" epatch "${FILESDIR}/${P}-tests-reset_cache.patch" } src_install() { distutils_src_install # do not install the test suite (we ran it from src_test already # and it makes .py[co] generation very noisy because there are # files with SyntaxErrors in there) python_version rm -rf "${D}"/usr/lib*/python${PYVER}/site-packages/pylint/test doman man/pylint.1 dohtml doc/*.html } src_test() { # The tests will not work properly from the source dir, so do a # temporary install: "${python}" setup.py install --home="${T}/test" || die "test copy failed" # dir needs to be this or the tests fail cd "${T}/test/lib/python/pylint/test" # These fail, have not been able to track down why. rm rpythoninput/func_unsupported_protocol.py || die "rm failed" rm func_test_rpython.py || die "rm failed" PYTHONPATH="${T}/test/lib/python" "${python}" runtests.py || \ die "tests failed" cd "${S}" rm -rf "${T}/test" } pkg_postinst() { distutils_pkg_postinst elog 'A couple of important configuration settings (like "disable-msg")' elog 'moved from the "MASTER" to "MESSAGES CONTROL" section.' elog 'See "pylint --help".' }