summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-vcs/darcs/darcs-2.0.2.ebuild')
-rw-r--r--dev-vcs/darcs/darcs-2.0.2.ebuild103
1 files changed, 103 insertions, 0 deletions
diff --git a/dev-vcs/darcs/darcs-2.0.2.ebuild b/dev-vcs/darcs/darcs-2.0.2.ebuild
new file mode 100644
index 000000000000..44264aa00ca9
--- /dev/null
+++ b/dev-vcs/darcs/darcs-2.0.2.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-vcs/darcs/darcs-2.0.2.ebuild,v 1.1 2010/03/14 12:29:26 kolmodin Exp $
+
+inherit base autotools eutils ghc-package
+
+DESCRIPTION="David's Advanced Revision Control System is yet another replacement for CVS"
+HOMEPAGE="http://darcs.net"
+MY_P0="${P/_rc/rc}"
+MY_P="${MY_P0/_pre/pre}"
+SRC_URI="http://darcs.net/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ia64 ppc sparc x86"
+IUSE="doc"
+
+DEPEND=">=net-misc/curl-7.10.2
+ >=dev-lang/ghc-6.2.2
+ =dev-haskell/quickcheck-1*
+ dev-haskell/mtl
+ dev-haskell/html
+ dev-haskell/parsec
+ dev-haskell/regex-compat
+ sys-apps/diffutils
+ sys-libs/zlib
+ doc? ( virtual/latex-base
+ >=dev-tex/latex2html-2002.2.1_pre20041025-r1 )"
+
+RDEPEND=">=net-misc/curl-7.10.2
+ virtual/mta
+ dev-libs/gmp"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if use doc && ! built_with_use -o dev-tex/latex2html png gif; then
+ eerror "Building darcs with USE=\"doc\" requires that"
+ eerror "dev-tex/latex2html is built with at least one of"
+ eerror "USE=\"png\" and USE=\"gif\"."
+ die "USE=doc requires dev-tex/latex2html with USE=\"png\" or USE=\"gif\""
+ fi
+}
+
+src_unpack() {
+ base_src_unpack
+
+ cd "${S}"
+ epatch "${FILESDIR}/${PN}-2.0.2-add-dummy-base-dependency.diff"
+ cd "${S}/tools"
+ epatch "${FILESDIR}/${PN}-1.0.9-bashcomp.patch"
+
+ # On ia64 we need to tone down the level of inlining so we don't break some
+ # of the low level ghc/gcc interaction gubbins.
+ use ia64 && sed -i 's/-funfolding-use-threshold20//' "${S}/GNUmakefile"
+
+ sed -i 's/-Werror//' "${S}/GNUmakefile"
+
+ #emulate: CABAL_CONFIGURE_FLAGS="--constraint=base<4"
+ # ghc-6.4: base-1; ghc-6.6.1: base-2; ghc-6.8: base-3; ghc-6.10: base-3, base-4
+ base_version="$($(ghc-getghcpkg) list --simple-output | tr " " "\n" | egrep '^base-[1-3]')"
+ sed -i "s@, base ,@, $base_version ,@" "${S}/aclocal.m4"
+ sed -i "s@-package base @-package $base_version @" "${S}/autoconf.mk.in"
+
+ cd "${S}"
+ sed -i 's/-Werror//' "${S}/aclocal.m4"
+ # Since we've patched the build system:
+ eautoreconf
+}
+
+src_compile() {
+ # use --enable-bytestring?
+ econf $(use_with doc docs) \
+ || die "configure failed"
+ emake all || die "make failed"
+}
+
+src_test() {
+ make test
+}
+
+src_install() {
+ make DESTDIR="${D}" installbin || die "installation failed"
+ # The bash completion should be installed in /usr/share/bash-completion/
+ # rather than /etc/bash_completion.d/ . Fixes bug #148038.
+ insinto "/usr/share/bash-completion" \
+ && doins "${D}/etc/bash_completion.d/darcs" \
+ && rm "${D}/etc/bash_completion.d/darcs" \
+ && rmdir "${D}/etc/bash_completion.d" \
+ && rmdir "${D}/etc" \
+ || die "fixing location of darcs bash completion failed"
+ if use doc; then
+ dodoc "${S}/doc/manual/darcs.ps" || die "installing darcs.ps failed"
+ dohtml -r "${S}/doc/manual/"* || die "installing darcs manual failed"
+ fi
+}
+
+pkg_postinst() {
+ ewarn "NOTE: in order for the darcs send command to work properly,"
+ ewarn "you must properly configure your mail transport agent to relay"
+ ewarn "outgoing mail. For example, if you are using ssmtp, please edit"
+ ewarn "/etc/ssmtp/ssmtp.conf with appropriate values for your site."
+}