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.6.4-r1.ebuild ChangeLog openmpi-1.6.4.ebuild
Date: Tue, 02 Jul 2013 02:04:23
Message-Id: 20130702020418.4C66F2171C@flycatcher.gentoo.org
1 jsbronder 13/07/02 02:04:18
2
3 Modified: ChangeLog
4 Added: openmpi-1.6.4-r1.ebuild
5 Removed: openmpi-1.6.4.ebuild
6 Log:
7 Do not override malloc when in a sandbox environment. Resolves #462602.
8
9 (Portage version: 2.1.12.2/cvs/Linux x86_64, signed Manifest commit with key 4D7043C9)
10
11 Revision Changes Path
12 1.119 sys-cluster/openmpi/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/openmpi/ChangeLog?rev=1.119&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/openmpi/ChangeLog?rev=1.119&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/openmpi/ChangeLog?r1=1.118&r2=1.119
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/sys-cluster/openmpi/ChangeLog,v
21 retrieving revision 1.118
22 retrieving revision 1.119
23 diff -u -r1.118 -r1.119
24 --- ChangeLog 5 Apr 2013 18:11:44 -0000 1.118
25 +++ ChangeLog 2 Jul 2013 02:04:18 -0000 1.119
26 @@ -1,6 +1,13 @@
27 # ChangeLog for sys-cluster/openmpi
28 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/openmpi/ChangeLog,v 1.118 2013/04/05 18:11:44 jsbronder Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/openmpi/ChangeLog,v 1.119 2013/07/02 02:04:18 jsbronder Exp $
31 +
32 +*openmpi-1.6.4-r1 (02 Jul 2013)
33 +
34 + 02 Jul 2013; Justin Bronder <jsbronder@g.o> -openmpi-1.6.4.ebuild,
35 + +openmpi-1.6.4-r1.ebuild,
36 + +files/hooks-disable-malloc-override-inside-of-Gentoo-sandb.patch:
37 + Do not override malloc when in a sandbox environment. Resolves #462602.
38
39 05 Apr 2013; Justin Bronder <jsbronder@g.o> openmpi-1.6.4.ebuild:
40 Export FAKEROOTKEY in src_test to workaround hang in sandbox. See #462602.
41
42
43
44 1.1 sys-cluster/openmpi/openmpi-1.6.4-r1.ebuild
45
46 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/openmpi/openmpi-1.6.4-r1.ebuild?rev=1.1&view=markup
47 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/openmpi/openmpi-1.6.4-r1.ebuild?rev=1.1&content-type=text/plain
48
49 Index: openmpi-1.6.4-r1.ebuild
50 ===================================================================
51 # Copyright 1999-2013 Gentoo Foundation
52 # Distributed under the terms of the GNU General Public License v2
53 # $Header: /var/cvsroot/gentoo-x86/sys-cluster/openmpi/openmpi-1.6.4-r1.ebuild,v 1.1 2013/07/02 02:04:18 jsbronder Exp $
54
55 EAPI=5
56
57 FORTRAN_NEEDED=fortran
58
59 inherit eutils fortran-2 multilib flag-o-matic toolchain-funcs versionator
60
61 MY_P=${P/-mpi}
62 S=${WORKDIR}/${MY_P}
63
64 IUSE_OPENMPI_FABRICS="
65 openmpi_fabrics_dapl
66 openmpi_fabrics_ofed
67 openmpi_fabrics_knem
68 openmpi_fabrics_open-mx
69 openmpi_fabrics_psm
70 openmpi_fabrics_sctp"
71
72 IUSE_OPENMPI_RM="
73 openmpi_rm_pbs
74 openmpi_rm_slurm"
75
76 IUSE_OPENMPI_OFED_FEATURES="
77 openmpi_ofed_features_control-hdr-padding
78 openmpi_ofed_features_connectx-xrc
79 openmpi_ofed_features_rdmacm
80 openmpi_ofed_features_dynamic-sl
81 openmpi_ofed_features_failover
82 "
83
84 DESCRIPTION="A high-performance message passing library (MPI)"
85 HOMEPAGE="http://www.open-mpi.org"
86 SRC_URI="http://www.open-mpi.org/software/ompi/v$(get_version_component_range 1-2)/downloads/${MY_P}.tar.bz2"
87 LICENSE="BSD"
88 SLOT="0"
89 KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux"
90 IUSE="+cxx elibc_FreeBSD fortran heterogeneous ipv6 mpi-threads romio threads vt
91 ${IUSE_OPENMPI_FABRICS} ${IUSE_OPENMPI_RM} ${IUSE_OPENMPI_OFED_FEATURES}"
92
93 REQUIRED_USE="openmpi_rm_slurm? ( !openmpi_rm_pbs )
94 openmpi_rm_pbs? ( !openmpi_rm_slurm )
95 openmpi_fabrics_psm? ( openmpi_fabrics_ofed )
96 openmpi_ofed_features_control-hdr-padding? ( openmpi_fabrics_ofed )
97 openmpi_ofed_features_connectx-xrc? ( openmpi_fabrics_ofed )
98 openmpi_ofed_features_rdmacm? ( openmpi_fabrics_ofed )
99 openmpi_ofed_features_dynamic-sl? ( openmpi_fabrics_ofed )
100 openmpi_ofed_features_failover? ( openmpi_fabrics_ofed )"
101
102 RDEPEND="
103 !sys-cluster/mpich2
104 !sys-cluster/mpiexec
105 >=sys-apps/hwloc-1.3
106 elibc_FreeBSD? ( dev-libs/libexecinfo )
107 openmpi_fabrics_dapl? ( sys-infiniband/dapl )
108 openmpi_fabrics_ofed? ( sys-infiniband/ofed )
109 openmpi_fabrics_knem? ( sys-cluster/knem )
110 openmpi_fabrics_open-mx? ( sys-cluster/open-mx )
111 openmpi_fabrics_psm? ( sys-infiniband/infinipath-psm )
112 openmpi_fabrics_sctp? ( net-misc/lksctp-tools )
113 openmpi_rm_pbs? ( sys-cluster/torque )
114 openmpi_rm_slurm? ( sys-cluster/slurm )
115 openmpi_ofed_features_rdmacm? ( sys-infiniband/librdmacm )
116 vt? (
117 !dev-libs/libotf
118 !app-text/lcdf-typetools
119 )
120 "
121 DEPEND="${RDEPEND}"
122 # TODO: Newer releases of Vampir use otf2 which would resolve the above blockers.
123
124 pkg_setup() {
125 fortran-2_pkg_setup
126 if use mpi-threads; then
127 echo
128 ewarn "WARNING: use of MPI_THREAD_MULTIPLE is still disabled by"
129 ewarn "default and officially unsupported by upstream."
130 ewarn "You may stop now and set USE=-mpi-threads"
131 echo
132 fi
133
134 echo
135 elog "OpenMPI has an overwhelming count of configuration options."
136 elog "Don't forget the EXTRA_ECONF environment variable can let you"
137 elog "specify configure options if you find them necessary."
138 echo
139
140 }
141
142 src_prepare() {
143 # Necessary for scalibility, see
144 # http://www.open-mpi.org/community/lists/users/2008/09/6514.php
145 if use threads; then
146 echo 'oob_tcp_listen_mode = listen_thread' \
147 >> opal/etc/openmpi-mca-params.conf
148 fi
149 epatch "${FILESDIR}"/hooks-disable-malloc-override-inside-of-Gentoo-sandb.patch
150 }
151
152 src_configure() {
153 local myconf=(
154 --sysconfdir="${EPREFIX}/etc/${PN}"
155 --enable-pretty-print-stacktrace
156 --enable-orterun-prefix-by-default
157 --with-hwloc="${EPREFIX}/usr"
158 )
159
160 if use mpi-threads; then
161 myconf+=(
162 --enable-mpi-thread-multiple
163 --enable-opal-multi-threads
164 )
165 fi
166
167 if use fortran; then
168 if [[ $(tc-getFC) =~ g77 ]]; then
169 myconf+=(--disable-mpi-f90)
170 elif [[ $(tc-getFC) =~ if ]]; then
171 # Enabled here as gfortran compile times are huge with this enabled.
172 myconf+=(--with-mpi-f90-size=medium)
173 fi
174 else
175 myconf+=(--disable-mpi-f90 --disable-mpi-f77)
176 fi
177
178 ! use vt && myconf+=(--enable-contrib-no-build=vt)
179
180 econf "${myconf[@]}" \
181 $(use_enable cxx mpi-cxx) \
182 $(use_enable romio io-romio) \
183 $(use_enable heterogeneous) \
184 $(use_enable ipv6) \
185 $(use_with openmpi_fabrics_dapl udapl "${EPREFIX}"/usr) \
186 $(use_with openmpi_fabrics_ofed openib "${EPREFIX}"/usr) \
187 $(use_with openmpi_fabrics_knem knem "${EPREFIX}"/usr) \
188 $(use_with openmpi_fabrics_open-mx mx "${EPREFIX}"/usr) \
189 $(use_with openmpi_fabrics_psm psm "${EPREFIX}"/usr) \
190 $(use_enable openmpi_ofed_features_control-hdr-padding openib-control-hdr-padding) \
191 $(use_enable openmpi_ofed_features_connectx-xrc openib-connectx-xrc) \
192 $(use_enable openmpi_ofed_features_rdmacm openib-rdmacm) \
193 $(use_enable openmpi_ofed_features_dynamic-sl openib-dynamic-sl) \
194 $(use_enable openmpi_ofed_features_failover btl-openib-failover) \
195 $(use_with openmpi_fabrics_sctp sctp) \
196 $(use_with openmpi_rm_pbs tm) \
197 $(use_with openmpi_rm_slurm slurm)
198 }
199
200 src_install () {
201 emake DESTDIR="${D}" install || die "make install failed"
202 # From USE=vt see #359917
203 rm "${ED}"/usr/share/libtool &> /dev/null
204 dodoc README AUTHORS NEWS VERSION || die
205 }
206
207 src_test() {
208 # Doesn't work with the default src_test as the dry run (-n) fails.
209 emake -j1 check || die "emake check failed"
210 }