summaryrefslogtreecommitdiff
blob: 98139b6e71b0bfd01f5ef25383b84ff935662746 (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
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gromacs/gromacs-3.3.ebuild,v 1.1 2005/10/14 00:44:11 spyderous Exp $

inherit eutils

IUSE="altivec mpi xml2"

DESCRIPTION="The ultimate molecular dynamics simulation package"
SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${P}.tar.gz"
HOMEPAGE="http://www.gromacs.org/"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~amd64 ~ppc64"

#mpi is a local USE flag now
#May become official when situation with mpich is cleared (now the only mpi implementation awailable is lam-mpi)
DEPEND="=sci-libs/fftw-2.1*
	mpi? ( >=sys-cluster/lam-mpi-6.5.6 )
	>=sys-devel/binutils-2.10.91.0.2
	app-shells/tcsh
	xml2? ( dev-libs/libxml2 )"

pkg_setup() {
	# !!!Please note!!!
	# for troublesome work gromacs should be compiled with the same mpi setting
	# as fftw.
	if use mpi; then
		if ! built_with_use =sci-libs/fftw-2.1* mpi; then
			die "=sci-libs/fftw-2.1* must be built with USE=mpi."
		fi
	fi
}

src_unpack() {
	unpack ${A}
	if use ppc64 && use altivec ; then
		epatch ${FILESDIR}/${PN}-ppc64-altivec.patch
	fi
}

src_compile() {
	# static should work but something's broken.
	# gcc spec file may be screwed up.
	# Static linking should try -lgcc instead of -lgcc_s.
	# For more info:
	# http://lists.debian.org/debian-gcc/2002/debian-gcc-200201/msg00150.html
	econf \
		--enable-fortran \
		--datadir=/usr/share/${P} \
		--bindir=/usr/bin \
		--libdir=/usr/lib \
		$(use_with xml2 xml) \
		$(use_enable mpi) \
		$(use_enable altivec ppc-altivec) \
		$(use_enable alpha axp-asm) || die "configure failed"

#		$(use_enable static all-static) \

	emake || die
}

src_install () {
	make DESTDIR=${D} install || die

	# Install documentation.
	dodoc AUTHORS COPYING INSTALL README

	#move html docs under /usr/share/doc
	#and leave examples and templates under /usr/gromacs...
	mv ${D}/usr/share/${P}/html ${D}/usr/share/doc/${PF}
}