summaryrefslogtreecommitdiff
blob: a8e1030a6403dfe911d3b92eea99d3fba4447614 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc-bin/ghc-bin-6.0.ebuild,v 1.5 2004/07/02 04:26:35 eradicator Exp $

IUSE="opengl"

S="${WORKDIR}/ghc-${PV}"
DESCRIPTION="Glasgow Haskell Compiler"
SRC_URI="x86? ( http://www.haskell.org/ghc/dist/${PV}/ghc-${PV}-i386-unknown-linux.tar.bz2 )
	sparc? ( http://www.haskell.org/ghc/dist/${PV}/ghc-${PV}-sparc-sun-solaris2.tar.bz2 )"
HOMEPAGE="http://www.haskell.org"

LICENSE="as-is"
KEYWORDS="~x86 -ppc ~sparc -alpha"
SLOT="0"

LOC="/opt/ghc"

DEPEND="virtual/libc"
RDEPEND=">=dev-lang/perl-5.6.1
	>=sys-devel/gcc-2.95.3
	>=dev-libs/gmp-4.1
	opengl? ( virtual/opengl
		virtual/glu
		virtual/glut )"

PROVIDE="virtual/ghc"

src_compile() {
	econf || die "./configure failed"
}

src_install () {
	make \
		prefix=${D}${LOC} \
		datadir=${D}${LOC}/share \
		mandir=${D}${LOC}/share/man \
		infodir=${D}${LOC}/share/info \
		install || die

	# Install documentation.
	dodoc ANNOUNCE INSTALL LICENSE README VERSION

	cd ${D}${LOC}/share
	mv hslibs.ps users_guide.ps html ${D}/usr/share/doc/${PF}

	#ghc seems to set locations in wrapper scripts from make install
	#need to strip the ${D} part out
	cd ${D}${LOC}/bin
	clean_wrappers ghc-${PV} ghci-${PV} ghc-pkg-${PV} hsc2hs

	insinto /etc/env.d
	doins ${FILESDIR}/10ghc
}

clean_wrappers () {
	for i in $*; do
		mv ${i} ${i}-orig
		sed -e "s:${D}::" ${i}-orig > ${i}
		chmod a+x ${i}
		rm ${i}-orig
	done
}