Gentoo Archives: gentoo-commits

From: "Justin Bronder (jsbronder)" <jsbronder@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: openmpi-1.2.7.ebuild
Date: Sun, 31 Aug 2008 20:20:47
Message-Id: E1KZtPf-0000IT-33@stork.gentoo.org
1 jsbronder 08/08/31 20:20:43
2
3 Added: openmpi-1.2.7.ebuild
4 Log:
5 Bump sys-cluster/openmpi-1.2.7
6 (Portage version: 2.1.4.4)
7
8 Revision Changes Path
9 1.1 sys-cluster/openmpi/openmpi-1.2.7.ebuild
10
11 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.7.ebuild?rev=1.1&view=markup
12 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.7.ebuild?rev=1.1&content-type=text/plain
13
14 Index: openmpi-1.2.7.ebuild
15 ===================================================================
16 # Copyright 1999-2008 Gentoo Foundation
17 # Distributed under the terms of the GNU General Public License v2
18 # $Header: /var/cvsroot/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.7.ebuild,v 1.1 2008/08/31 20:20:42 jsbronder Exp $
19
20 inherit eutils multilib flag-o-matic toolchain-funcs fortran
21
22 MY_P=${P/-mpi}
23 S=${WORKDIR}/${MY_P}
24
25 DESCRIPTION="A high-performance message passing library (MPI)"
26 HOMEPAGE="http://www.open-mpi.org"
27 SRC_URI="http://www.open-mpi.org/software/ompi/v1.2/downloads/${MY_P}.tar.bz2"
28 LICENSE="BSD"
29 SLOT="0"
30 RESTRICT="threads? ( test )"
31 KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
32 IUSE="pbs fortran nocxx threads romio heterogeneous ipv6"
33 RDEPEND="pbs? ( sys-cluster/torque )
34 !sys-cluster/mpich
35 !sys-cluster/lam-mpi
36 !sys-cluster/mpich2"
37 DEPEND="${RDEPEND}"
38
39 pkg_setup() {
40 if use threads; then
41 ewarn
42 ewarn "WARNING: use of threads is still disabled by default in"
43 ewarn "upstream builds."
44 ewarn "You may stop now and set USE=-threads"
45 ewarn
46 epause 5
47 fi
48
49 elog
50 elog "OpenMPI has an overwhelming count of configuration options."
51 elog "Don't forget the EXTRA_ECONF environment variable can let you"
52 elog "specify configure options if you find them necessary."
53 elog
54
55 if use fortran; then
56 FORTRAN="g77 gfortran ifc"
57 fortran_pkg_setup
58 fi
59 }
60
61 src_compile() {
62 local myconf="
63 --sysconfdir=/etc/${PN}
64 --without-xgrid
65 --enable-pretty-print-stacktrace
66 --enable-orterun-prefix-by-default
67 --without-slurm"
68
69 if use threads; then
70 myconf="${myconf}
71 --enable-mpi-threads
72 --with-progress-threads
73 --with-threads=posix"
74 fi
75
76 if use fortran; then
77 if [[ "${FORTRANC}" = "g77" ]]; then
78 myconf="${myconf} --disable-mpi-f90"
79 elif [[ "${FORTRANC}" = "gfortran" ]]; then
80 # Because that's just a pain in the butt.
81 myconf="${myconf} --with-wrapper-fflags=-I/usr/include"
82 elif [[ "${FORTRANC}" = if* ]]; then
83 # Enabled here as gfortran compile times are huge with this enabled.
84 myconf="${myconf} --with-mpi-f90-size=medium"
85 fi
86 else
87 myconf="${myconf}
88 --disable-mpi-f90
89 --disable-mpi-f77"
90 fi
91
92 econf ${myconf} \
93 $(use_enable !nocxx mpi-cxx) \
94 $(use_enable romio io-romio) \
95 $(use_enable heterogeneous) \
96 $(use_with pbs tm) \
97 $(use_enable ipv6) \
98 || die "econf failed"
99
100 emake || die "emake failed"
101 }
102
103 src_install () {
104 emake DESTDIR="${D}" install || die "make install failed"
105 dodoc README AUTHORS NEWS VERSION
106 }
107
108 src_test() {
109 # Doesn't work with the default src_test as the dry run (-n) fails.
110 cd "${S}"
111 emake -j1 check || die "emake check failed"
112 }