summaryrefslogtreecommitdiff
blob: 07f5fabe88e857520dc625535e234f694bf69947 (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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-lang/maude/maude-2.1.1-r2.ebuild,v 1.5 2008/06/04 03:40:46 markusle Exp $

inherit toolchain-funcs eutils

DESCRIPTION="Maude - A high-level specification language"
HOMEPAGE="http://maude.cs.uiuc.edu/"
SRC_URI="mirror://gentoo/${P}.tar.bz2
	mirror://gentoo/${PN}-full-doc-${PV}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~ppc"

IUSE="doc"

RDEPEND="virtual/libc
	sci-libs/buddy
	dev-libs/libtecla
	>=dev-libs/gmp-4.1.3"

DEPEND="${RDEPEND}
	sys-devel/bison
	sys-devel/flex
	|| ( >=sys-devel/gcc-3.4.3
		=sys-devel/gcc-3.3* )"

pkg_setup() {
	if [ "$(gcc-version)" = "3.4" ]; then
		if [ "$(gcc-micro-version)" -lt 3 ]; then
			eerror "Need gcc 3.3.x or >= 3.4.3"
			die "Wrong gcc version"
		fi
	fi
}

src_unpack() {
	unpack ${A}
	cd "${S}"
	epatch "${FILESDIR}"/${PV}-gcc3.4.patch
}

src_compile() {
	# econf/emake fails with a "file not found" error.
	./configure --bindir=/usr/bin --datadir=/usr/share/${PN} || die
	make || die
}

src_install() {
	make install DESTDIR="${D}"
	dodoc AUTHORS ChangeLog NEWS README

	# Sets the full maude library path.
	doenvd "${FILESDIR}"/23maude

	cd "${WORKDIR}"/${PN}-full-doc-${PV}

	# Full maude library
	insinto /usr/share/${PN}
	doins full-maude.maude

	insinto /usr/share/doc/${P}/pdf
	doins maude-manual.pdf maude-primer.pdf
	insinto /usr/share/doc/${P}/ps
	doins maude-manual.ps

	if use doc; then
		insinto /usr/share/${PN}/examples
		doins maude-examples/*
		insinto /usr/share/${PN}/primer-examples
		doins examples/*
	fi
}

src_test() {
	pwd
	make check || die
}