summaryrefslogtreecommitdiff
blob: 0f0edbfc265356282058e177716f75d9f59767ee (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
80
81
82
83
84
85
86
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/openbabel/openbabel-2.2.2-r1.ebuild,v 1.1 2009/07/24 19:00:34 cryos Exp $

EAPI=1

inherit eutils

DESCRIPTION="interconverts file formats used in molecular modeling"
HOMEPAGE="http://openbabel.sourceforge.net/"
SRC_URI="mirror://sourceforge/openbabel/${P}.tar.gz"

KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
SLOT="0"
LICENSE="GPL-2"
IUSE="doc python swig"

RDEPEND="!sci-chemistry/babel
	>=dev-libs/libxml2-2.6.5
	sys-libs/zlib
	python? ( dev-lang/python )"

DEPEND="${RDEPEND}
	>=dev-libs/boost-1.35.0
	dev-lang/perl
	python? ( swig? ( >=dev-lang/swig-1.3.38 ) )
	doc? ( app-doc/doxygen )"

src_unpack() {
	unpack ${A}
	cd "${S}"
	epatch "${FILESDIR}/${PN}-2.2.0-doxyfile.patch"
}

src_compile() {
	local swigconf=""
	if use swig; then
		swigconf="--enable-maintainer-mode"
	fi
	econf ${swigconf} || die "econf failed"
	emake || die "emake failed"
	if use doc ; then
		emake docs || die "make docs failed"
	fi
	if use swig; then
		emake scripts/python/openbabel_python.cpp \
			|| die "Failed to make SWIG python bindings"
	fi
	if use python; then
		cd "${S}/scripts/python"
		python setup.py build || die "Python build failed."
	fi
}

src_test() {
	emake check || die "make check failed"
}

src_install() {
	emake DESTDIR="${D}" install || die "make install failed"
	# Now to install the Python bindings if necessary
	if use python; then
		cd "${S}/scripts/python"
		python ./setup.py install --root="${D}" --optimize=1 \
			|| die "Python bindings install failed"
		if use doc; then
			docinto python
			dodoc README
			docinto python/html
			dodoc *.html
		fi
	fi
	# And the documentation
	docinto
	cd "${S}"
	dodoc AUTHORS ChangeLog NEWS README THANKS
	cd doc
	dohtml *.html *.png
	dodoc *.inc README* *.inc *.mol2
	if use doc ; then
		dodir /usr/share/doc/${PF}/API/html
		insinto /usr/share/doc/${PF}/API/html
		cd API/html
		doins *
	fi
}