Gentoo Archives: gentoo-commits

From: Justin Bronder <jsbronder@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/sci:master commit in: sys-cluster/mpich/
Date: Mon, 21 Dec 2015 13:48:08
Message-Id: 1450705661.bc0b32818d361a5e857c58d86d1d736c2e72df19.jsbronder@gentoo
1 commit: bc0b32818d361a5e857c58d86d1d736c2e72df19
2 Author: Justin Bronder <jsbronder <AT> gentoo <DOT> org>
3 AuthorDate: Mon Dec 21 13:47:41 2015 +0000
4 Commit: Justin Bronder <jsbronder <AT> gentoo <DOT> org>
5 CommitDate: Mon Dec 21 13:47:41 2015 +0000
6 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=bc0b3281
7
8 sys-cluster/mpich: bump 3.2
9
10 Package-Manager: portage-2.2.20.1
11
12 sys-cluster/mpich/ChangeLog | 5 ++
13 sys-cluster/mpich/mpich-3.2-r1.ebuild | 122 ++++++++++++++++++++++++++++++++++
14 2 files changed, 127 insertions(+)
15
16 diff --git a/sys-cluster/mpich/ChangeLog b/sys-cluster/mpich/ChangeLog
17 index f95ed1f..1d62518 100644
18 --- a/sys-cluster/mpich/ChangeLog
19 +++ b/sys-cluster/mpich/ChangeLog
20 @@ -2,6 +2,11 @@
21 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
22 # $Id$
23
24 +*mpich-3.2-r1 (21 Dec 2015)
25 +
26 + 21 Dec 2015; Justin Bronder <jsbronder@g.o> +mpich-3.2-r1.ebuild:
27 + sys-cluster/mpich: bump 3.2
28 +
29 21 Nov 2015; Christoph Junghans <ottxor@g.o> -mpich-3.1.3-r99.ebuild:
30 sys-cluster/mpich: bye bye multilib version
31
32
33 diff --git a/sys-cluster/mpich/mpich-3.2-r1.ebuild b/sys-cluster/mpich/mpich-3.2-r1.ebuild
34 new file mode 100644
35 index 0000000..2f0fc84
36 --- /dev/null
37 +++ b/sys-cluster/mpich/mpich-3.2-r1.ebuild
38 @@ -0,0 +1,122 @@
39 +# Copyright 1999-2015 Gentoo Foundation
40 +# Distributed under the terms of the GNU General Public License v2
41 +# $Id$
42 +
43 +EAPI=5
44 +
45 +FORTRAN_NEEDED=fortran
46 +
47 +inherit fortran-2 mpi
48 +
49 +MY_PV=${PV/_/}
50 +DESCRIPTION="A high performance and portable MPI implementation"
51 +HOMEPAGE="http://www.mpich.org/"
52 +SRC_URI="http://www.mpich.org/static/downloads/${PV}/${P}.tar.gz"
53 +
54 +SLOT="0"
55 +LICENSE="mpich"
56 +KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
57 +IUSE="+cxx doc fortran mpi-threads romio threads"
58 +
59 +COMMON_DEPEND="
60 + dev-libs/libaio
61 + >=sys-apps/hwloc-1.9
62 + romio? ( net-fs/nfs-utils )
63 + $(mpi_imp_deplist)"
64 +
65 +DEPEND="${COMMON_DEPEND}
66 + dev-lang/perl
67 + sys-devel/libtool"
68 +
69 +RDEPEND="${COMMON_DEPEND}"
70 +
71 +S="${WORKDIR}"/${PN}-${MY_PV}
72 +
73 +pkg_setup() {
74 + FORTRAN_STANDARD="77 90"
75 + fortran-2_pkg_setup
76 + MPI_ESELECT_FILE="eselect.mpi.mpich"
77 +
78 + if use mpi-threads && ! use threads; then
79 + ewarn "mpi-threads requires threads, assuming that's what you want"
80 + fi
81 +}
82 +
83 +src_prepare() {
84 + # Using MPICHLIB_LDFLAGS doesn't seem to fully work.
85 + sed -i 's| *@WRAPPER_LDFLAGS@ *||' \
86 + src/packaging/pkgconfig/mpich.pc.in \
87 + src/env/*.in \
88 + || die
89 +}
90 +
91 +src_configure() {
92 + local c="--enable-shared"
93 + local hydra_c="--with-hwloc-prefix=/usr"
94 +
95 + # The configure statements can be somewhat confusing, as they
96 + # don't all show up in the top level configure, however, they
97 + # are picked up in the children directories. Hence the separate
98 + # local vars.
99 +
100 + if use mpi-threads; then
101 + # MPI-THREAD requries threading.
102 + c="${c} --with-thread-package=pthreads"
103 + c="${c} --enable-threads=runtime"
104 + else
105 + if use threads ; then
106 + c="${c} --with-thread-package=pthreads"
107 + else
108 + c="${c} --with-thread-package=none"
109 + fi
110 + c="${c} --enable-threads=single"
111 + fi
112 +
113 + if ! mpi_classed; then
114 + c="${c} --sysconfdir=${EPREFIX}/etc/${PN}"
115 + c="${c} --docdir=${EPREFIX}/usr/share/doc/${PF}"
116 + else
117 + c="${c} --docdir=$(mpi_root)/usr/share/doc/${PF}"
118 + fi
119 +
120 + export MPICHLIB_CFLAGS=${CFLAGS}
121 + export MPICHLIB_CPPFLAGS=${CPPFLAGS}
122 + export MPICHLIB_CXXFLAGS=${CXXFLAGS}
123 + export MPICHLIB_FFLAGS=${FFLAGS}
124 + export MPICHLIB_FCFLAGS=${FCFLAGS}
125 + export MPICHLIB_LDFLAGS=${LDFLAGS}
126 + unset CFLAGS CPPFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS
127 +
128 + econf $(mpi_econf_args) ${c} \
129 + --with-pm=hydra \
130 + --disable-fast \
131 + --enable-versioning \
132 + ${hydra_c} \
133 + $(use_enable romio) \
134 + $(use_enable cxx) \
135 + $(use_enable fortran f77) \
136 + $(use_enable fortran fc)
137 +}
138 +
139 +src_test() {
140 + emake -j1 check
141 +}
142 +
143 +src_install() {
144 + local d=$(echo ${ED}/$(mpi_root)/ | sed 's,///*,/,g')
145 +
146 + default
147 +
148 + mpi_dodir /usr/share/doc/${PF}
149 + mpi_dodoc COPYRIGHT README{,.envvar} CHANGES RELEASE_NOTES
150 + mpi_newdoc src/pm/hydra/README README.hydra
151 + if use romio; then
152 + mpi_newdoc src/mpi/romio/README README.romio
153 + fi
154 +
155 + if ! use doc; then
156 + rm -rf "${d}"usr/share/doc/${PF}/www*
157 + fi
158 +
159 + mpi_imp_add_eselect
160 +}