diff dev-util/mercurial/mercurial-1.1.2.ebuild @ 108:be32a2c5e1fd

pull changes from Holgi's portage overlay
author Dirk Olmes <dirk@xanthippe.ping.de>
date Wed, 04 Mar 2009 02:58:24 +0100
parents 770ce77d14bc
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dev-util/mercurial/mercurial-1.1.2.ebuild	Wed Mar 04 02:58:24 2009 +0100
@@ -0,0 +1,118 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/mercurial/mercurial-1.0.2.ebuild,v 1.7 2008/10/17 08:04:41 aballier Exp $
+
+inherit bash-completion elisp-common flag-o-matic eutils distutils
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="http://www.selenic.com/mercurial/"
+SRC_URI="http://www.selenic.com/mercurial/release/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 ~hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE="bugzilla emacs gpg test zsh-completion"
+
+CDEPEND=">=dev-lang/python-2.3"
+RDEPEND="${CDEPEND}
+	bugzilla? ( dev-python/mysql-python )
+	gpg? ( app-crypt/gnupg )
+	zsh-completion? ( app-shells/zsh )"
+DEPEND="${CDEPEND}
+	emacs? ( virtual/emacs )
+	test? ( app-arch/unzip
+		dev-python/pygments )"
+
+PYTHON_MODNAME="${PN} hgext"
+SITEFILE="70${PN}-gentoo.el"
+
+src_compile() {
+	filter-flags -ftracer -ftree-vectorize
+
+	distutils_src_compile
+
+	if use emacs; then
+		cd "${S}"/contrib
+		elisp-compile mercurial.el || die "elisp-compile failed!"
+	fi
+
+	rm -rf contrib/{win32,macosx}
+}
+
+src_install() {
+	distutils_src_install
+
+	dobashcompletion contrib/bash_completion ${PN}
+
+	if use zsh-completion ; then
+		insinto /usr/share/zsh/site-functions
+		newins contrib/zsh_completion _hg
+	fi
+
+	rm -f doc/*.?.txt
+	dodoc CONTRIBUTORS PKG-INFO README doc/*.txt
+	cp hgweb*.cgi "${D}"/usr/share/doc/${PF}/
+
+	dobin contrib/hgk
+	dobin contrib/hg-relink
+	dobin contrib/hg-ssh
+
+	rm -f contrib/hgk contrib/hg-relink contrib/hg-ssh
+
+	rm -f contrib/bash_completion
+	cp -r contrib "${D}"/usr/share/doc/${PF}/
+	doman doc/*.?
+
+	cat > "${T}/80mercurial" <<-EOF
+HG=/usr/bin/hg
+EOF
+	doenvd "${T}/80mercurial"
+
+	if use emacs; then
+		elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+}
+
+src_test() {
+	local testdir="${T}/tests"
+	mkdir -p -m1777 "${testdir}" || die
+	cd "${S}/tests/"
+	rm -f *svn*		# Subversion tests fail with 1.5
+	rm -f test-convert-baz*		# GNU Arch baz
+	rm -f test-convert-cvs*		# CVS
+	rm -f test-convert-darcs*	# Darcs
+	rm -f test-convert-git*		# git
+	rm -f test-convert-mtn*		# monotone
+	rm -f test-convert-tla*		# GNU Arch tla
+	rm -f test-doctest*		# doctest always fails with python 2.5.x
+	if ! has userpriv ${FEATURES}; then
+		einfo "Removing tests which require user privileges to succeed"
+		rm -f test-command-template	# Test is broken when run as root
+		rm -f test-convert			# Test is broken when run as root
+		rm -f test-lock-badness		# Test is broken when run as root
+		rm -f test-permissions		# Test is broken when run as root
+		rm -f test-pull-permission	# Test is broken when run as root
+	fi
+	einfo "Running Mercurial tests ..."
+	python run-tests.py --tmpdir="${testdir}" || die "test failed"
+}
+
+pkg_postinst() {
+	distutils_pkg_postinst
+	use emacs && elisp-site-regen
+	bash-completion_pkg_postinst
+
+	elog "If you want to convert repositories from other tools using convert"
+	elog "extension please install correct tool:"
+	elog "  dev-util/cvs"
+	elog "  dev-util/darcs"
+	elog "  dev-util/git"
+	elog "  dev-util/monotone"
+	elog "  dev-util/subversion"
+}
+
+pkg_postrm() {
+	distutils_pkg_postrm
+	use emacs && elisp-site-regen
+}