summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarien Zwart <marienz@gentoo.org>2006-05-26 18:42:12 +0000
committerMarien Zwart <marienz@gentoo.org>2006-05-26 18:42:12 +0000
commitfb0c4ca9a35c40b16b3b7d2c9228a8c04f53b9c3 (patch)
tree9225d6849834226d18c76839fc739b4c64040d8e /dev-python/twisted/twisted-2.4.0.ebuild
parentStable on ppc64 (diff)
downloadgentoo-2-fb0c4ca9a35c40b16b3b7d2c9228a8c04f53b9c3.tar.gz
gentoo-2-fb0c4ca9a35c40b16b3b7d2c9228a8c04f53b9c3.tar.bz2
gentoo-2-fb0c4ca9a35c40b16b3b7d2c9228a8c04f53b9c3.zip
Version bump.
(Portage version: 2.1_rc2-r3)
Diffstat (limited to 'dev-python/twisted/twisted-2.4.0.ebuild')
-rw-r--r--dev-python/twisted/twisted-2.4.0.ebuild110
1 files changed, 110 insertions, 0 deletions
diff --git a/dev-python/twisted/twisted-2.4.0.ebuild b/dev-python/twisted/twisted-2.4.0.ebuild
new file mode 100644
index 000000000000..a522cd939b92
--- /dev/null
+++ b/dev-python/twisted/twisted-2.4.0.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/twisted/twisted-2.4.0.ebuild,v 1.1 2006/05/26 18:42:12 marienz Exp $
+
+inherit eutils distutils versionator
+
+MY_P=TwistedCore-${PV}
+
+DESCRIPTION="An asynchronous networking framework written in Python"
+HOMEPAGE="http://www.twistedmatrix.com/"
+SRC_URI="http://tmrc.mit.edu/mirror/twisted/Twisted/$(get_version_component_range 1-2)/${MY_P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86"
+IUSE="gtk serial crypt"
+
+DEPEND=">=dev-lang/python-2.3
+ >=net-zope/zopeinterface-3.0.1
+ serial? ( dev-python/pyserial )
+ crypt? ( >=dev-python/pyopenssl-0.5.1 )
+ gtk? ( >=dev-python/pygtk-1.99 )"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS="CREDITS INSTALL NEWS README"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ # Give a load-sensitive test a better chance of succeeding.
+ epatch "${FILESDIR}/${PN}-2.1.0-echo-less.patch"
+
+ # Pass valid arguments to "head" in the zsh completion function.
+ epatch "${FILESDIR}/${PN}-2.1.0-zsh-head.patch"
+
+ # Remove a mostly-empty file with a syntax error ("???" placeholder)
+ rm twisted/test/stdio_test_halfclose.py
+}
+
+src_install() {
+ distutils_src_install
+
+ # get rid of this to prevent collision-protect from killing us. it
+ # is regenerated in pkg_postinst.
+ rm "${D}/usr/$(get_libdir)"/python*/site-packages/twisted/plugins/dropin.cache
+
+ # weird pattern to avoid installing the index.xhtml page
+ doman doc/man/*.?
+ insinto /usr/share/doc/${PF}
+ doins -r $(find doc -mindepth 1 -maxdepth 1 -not -name man)
+
+ # workaround for a possible portage bug
+ mkdir -p "${D}/etc/conf.d/"
+ newconfd "${FILESDIR}/twistd.conf" twistd
+ newinitd "${FILESDIR}/twistd.init" twistd
+
+ # zsh completion
+ insinto /usr/share/zsh/site-functions/
+ doins twisted/python/_twisted_zsh_stub
+}
+
+update_plugin_cache() {
+ python_version
+ local tpath="${ROOT}usr/$(get_libdir)/python${PYVER}/site-packages/twisted"
+ # we have to remove the cache or removed plugins won't be removed
+ # from the cache (http://twistedmatrix.com/bugs/issue926)
+ [[ -e "${tpath}/plugins/dropin.cache" ]] && rm -f "${tpath}/plugins/dropin.cache"
+ if [[ -e "${tpath}/plugin.py" ]]; then
+ # twisted is still installed, update.
+ # we have to use getPlugIns here for <=twisted-2.0.1 compatibility
+ einfo "Regenerating plugin cache"
+ python -c "from twisted.plugin import IPlugin, getPlugIns;list(getPlugIns(IPlugin))"
+ fi
+}
+
+pkg_postinst() {
+ distutils_pkg_postinst
+ update_plugin_cache
+}
+
+pkg_postrm() {
+ distutils_pkg_postrm
+ update_plugin_cache
+}
+
+src_test() {
+ python_version
+
+ if has_version ">=dev-lang/python-2.3"; then
+ "${python}" setup.py install --root="${T}/tests" --no-compile || die
+ else
+ "${python}" setup.py install --root="${T}/tests" || die
+ fi
+
+ cd "${T}/tests/usr/$(get_libdir)/python${PYVER}/site-packages/" || die
+
+ # prevent it from pulling in plugins from already installed
+ # twisted packages
+ rm twisted/plugins/__init__.py || die
+
+ # an empty file doesn't work because the tests check for
+ # docstrings in all packages
+ echo "'''plugins stub'''" > twisted/plugins/__init__.py || die
+
+ PYTHONPATH=. "${T}"/tests/usr/bin/trial twisted || die "trial failed"
+ cd "${S}"
+ rm -rf "${T}/tests"
+}