Gentoo Archives: gentoo-commits

From: Justin Bronder <jsbronder@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-cluster/mpich/, sys-cluster/mpich/files/
Date: Mon, 15 Apr 2019 14:54:04
Message-Id: 1555340021.f12adbee3cb0dcb92c38ecae836c1d1a9f7df520.jsbronder@gentoo
1 commit: f12adbee3cb0dcb92c38ecae836c1d1a9f7df520
2 Author: Jian Cao <sworden.cao <AT> gmail <DOT> com>
3 AuthorDate: Sun Apr 7 18:21:24 2019 +0000
4 Commit: Justin Bronder <jsbronder <AT> gentoo <DOT> org>
5 CommitDate: Mon Apr 15 14:53:41 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f12adbee
7
8 sys-cluster/mpich: Version bump to 3.3
9
10 Closes: https://bugs.gentoo.org/680236
11 Package-Manager: Portage-2.3.62, Repoman-2.3.12
12 Signed-off-by: Jian Cao <sworden.cao <AT> gmail.com>
13 Signed-off-by: Justin Bronder <jsbronder <AT> gentoo.org>
14
15 sys-cluster/mpich/Manifest | 2 +-
16 .../mpich-3.3-add-external-libdir-parameter.patch | 198 +++++++++++++++++++++
17 .../{mpich-3.2-r1.ebuild => mpich-3.3.ebuild} | 29 ++-
18 3 files changed, 225 insertions(+), 4 deletions(-)
19
20 diff --git a/sys-cluster/mpich/Manifest b/sys-cluster/mpich/Manifest
21 index 2f46ebaf024..ee2a89453a2 100644
22 --- a/sys-cluster/mpich/Manifest
23 +++ b/sys-cluster/mpich/Manifest
24 @@ -1,2 +1,2 @@
25 DIST mpich-3.0.4.tar.gz 10921075 BLAKE2B 341aaac23277aed05a4448ea03d9caf1ee14cfe327a770c95d620fc1ee1ea7bfa6df36860aa44aad162eb6d630d35fdfb30ae9a866d67680ab71c7b4326c109c SHA512 f9d8b2cf561fe5f85c12512ef4dd7b0cf5ec8b53ddb07bfa0d1db2e3c8ae0382c77e0661f46b82ec96b05d18ea2d25328bb84e9528ac06e5925f30ec8ef030d0
26 -DIST mpich-3.2.tar.gz 11862150 BLAKE2B 2e0414b2e11b08a59497fa255d464a2130c754ba8798b99a8b84f7232179906bb27906abbe58b9546833541c238f42ae06df90bfe1133d3ff2d85921d9736452 SHA512 083c51655b4355827bd7fa4fe528046e2bc77b7747d869ff87b79fa324c3cc2a9b5640ccb7271490ccc0dd627e354a33a449bbab448501bbfddcfe5f999ee717
27 +DIST mpich-3.3.tar.gz 27209008 BLAKE2B 3010f847456ed71a27e728b91887e04303a83b4abea883bf73d9794ff697052efe3bccd238933dc6e5fbc75e0be36004f1ae9fc7695a4e8887984552ae005917 SHA512 1ed6d8d30db4923fd1bd39b6e9622f0db939a45edf8d9f8bdbccfa619fde7fb920c5a0d3f2442f0dd63cf8fda823dbd2983ac5f7c16308bc79e04f61d8e119be
28
29 diff --git a/sys-cluster/mpich/files/mpich-3.3-add-external-libdir-parameter.patch b/sys-cluster/mpich/files/mpich-3.3-add-external-libdir-parameter.patch
30 new file mode 100644
31 index 00000000000..64be728f574
32 --- /dev/null
33 +++ b/sys-cluster/mpich/files/mpich-3.3-add-external-libdir-parameter.patch
34 @@ -0,0 +1,198 @@
35 +diff --git a/confdb/aclocal_libs.m4 b/confdb/aclocal_libs.m4
36 +index c417204..5d98053 100644
37 +--- a/confdb/aclocal_libs.m4
38 ++++ b/confdb/aclocal_libs.m4
39 +@@ -27,6 +27,14 @@ AC_DEFUN([PAC_SET_HEADER_LIB_PATH],[
40 + [AC_MSG_WARN([--with[out]-$1-lib=PATH expects a valid PATH])
41 + with_$1_lib=""])],
42 + [])
43 ++ AC_ARG_WITH([common-libdir],
44 ++ [AS_HELP_STRING([[--with-common-libdir[=DIR]]], [use the $1
45 ++ library installed in DIR, rather than the
46 ++ one included in the distribution. Pass
47 ++ "embedded" to force usage of the included
48 ++ $1 source.])],
49 ++ [],
50 ++ [with_common_libdir=lib64])
51 +
52 + # The args have been sanitized into empty/non-empty values above.
53 + # Now append -I/-L args to CPPFLAGS/LDFLAGS, with more specific options
54 +@@ -42,9 +50,7 @@ AC_DEFUN([PAC_SET_HEADER_LIB_PATH],[
55 + [AS_IF([test -n "${with_$1}"],
56 + dnl is adding lib64 by default really the right thing to do? What if
57 + dnl we are on a 32-bit host that happens to have both lib dirs available?
58 +- [PAC_APPEND_FLAG([-L${with_$1}/lib],[LDFLAGS])
59 +- AS_IF([test -d "${with_$1}/lib64"],
60 +- [PAC_APPEND_FLAG([-L${with_$1}/lib64],[LDFLAGS])])
61 ++ [PAC_APPEND_FLAG([-L${with_$1}/${with_common_libdir}],[LDFLAGS])
62 + ])
63 + ])
64 + ])
65 +@@ -79,6 +85,14 @@ AC_DEFUN([PAC_CHECK_HEADER_LIB_FATAL],[
66 +
67 + dnl PAC_CHECK_PREFIX(with_option,prefixvar)
68 + AC_DEFUN([PAC_CHECK_PREFIX],[
69 ++ AC_ARG_WITH([prefix-libdir],
70 ++ [AS_HELP_STRING([[--with-$1-prefix[=DIR]]], [use the $1
71 ++ library installed in DIR, rather than the
72 ++ one included in the distribution. Pass
73 ++ "embedded" to force usage of the included
74 ++ $1 source.])],
75 ++ [],
76 ++ [with_prefix_libdir=lib64])
77 + AC_ARG_WITH([$1-prefix],
78 + [AS_HELP_STRING([[--with-$1-prefix[=DIR]]], [use the $1
79 + library installed in DIR, rather than the
80 +@@ -93,10 +107,7 @@ AC_DEFUN([PAC_CHECK_PREFIX],[
81 + :
82 + else
83 + PAC_APPEND_FLAG([-I${with_$1_prefix}/include],[CPPFLAGS])
84 +- if test -d "${with_$1_prefix}/lib64" ; then
85 +- PAC_APPEND_FLAG([-L${with_$1_prefix}/lib64],[LDFLAGS])
86 +- fi
87 +- PAC_APPEND_FLAG([-L${with_$1_prefix}/lib],[LDFLAGS])
88 ++ PAC_APPEND_FLAG([-L${with_$1_prefix}/${with_prefix_libdir}],[LDFLAGS])
89 + fi
90 + ],
91 + [with_$1_prefix="embedded"])
92 +diff --git a/configure.ac b/configure.ac
93 +index 765aa9e..ef9c2e5 100644
94 +--- a/configure.ac
95 ++++ b/configure.ac
96 +@@ -1240,6 +1240,11 @@ OPA_fetch_and_incr_int(&i,5);
97 +
98 + opasrcdir=""
99 + AC_SUBST([opasrcdir])
100 ++AC_ARG_WITH([opal-libdir],
101 ++ [AS_HELP_STRING([[--with-opal-libdir[=DIR]]],
102 ++ [use the specified OPAL library path with DIR.])],
103 ++ [],dnl action-if-given
104 ++ [with_opal_libdir=lib64]) dnl action-if-not-given
105 + opalibdir=""
106 + AC_SUBST([opalibdir])
107 + opalib=""
108 +@@ -1282,13 +1287,8 @@ else
109 + [:],[AC_MSG_ERROR([the OpenPA installation in "${with_openpa_prefix}" appears broken])])
110 + PAC_APPEND_FLAG([-I${with_openpa_prefix}/include],[CPPFLAGS])
111 + PAC_PREPEND_FLAG([-l${OPALIBNAME}],[WRAPPER_LIBS])
112 +- if test -d ${with_openpa_prefix}/lib64 ; then
113 +- PAC_APPEND_FLAG([-L${with_openpa_prefix}/lib64],[WRAPPER_LDFLAGS])
114 +- opalibdir="-L${with_openpa_prefix}/lib64"
115 +- else
116 +- opalibdir="-L${with_openpa_prefix}/lib"
117 +- fi
118 +- PAC_APPEND_FLAG([-L${with_openpa_prefix}/lib],[WRAPPER_LDFLAGS])
119 ++ PAC_APPEND_FLAG([-L${with_openpa_prefix}/${with_opal_libdir}],[WRAPPER_LDFLAGS])
120 ++ opallibdir="-L${with_openpa_prefix}/${with_opal_libdir}"
121 + fi
122 +
123 + # Izem
124 +@@ -1463,6 +1463,11 @@ AC_ARG_WITH([hwloc-prefix],
125 + [with_hwloc_prefix=embedded]) dnl action-if-not-given
126 + hwlocsrcdir=""
127 + AC_SUBST([hwlocsrcdir])
128 ++AC_ARG_WITH([hwloc-libdir],
129 ++ [AS_HELP_STRING([[--with-hwloc-libdir[=DIR]]],
130 ++ [use the specified HWLOC library path with DIR.])],
131 ++ [],dnl action-if-given
132 ++ [with_hwloc_libdir=lib64]) dnl action-if-not-given
133 + hwloclibdir=""
134 + AC_SUBST([hwloclibdir])
135 + hwloclib=""
136 +@@ -1502,12 +1507,8 @@ else
137 +
138 + if test "$have_hwloc" = "yes" ; then
139 + hwloclib="-lhwloc"
140 +- if test -d ${with_hwloc_prefix}/lib64 ; then
141 +- PAC_APPEND_FLAG([-L${with_hwloc_prefix}/lib64],[WRAPPER_LDFLAGS])
142 +- hwloclibdir="-L${with_hwloc_prefix}/lib64"
143 +- else
144 +- hwloclibdir="-L${with_hwloc_prefix}/lib"
145 +- fi
146 ++ PAC_APPEND_FLAG([-L${with_hwloc_prefix}/${with_hwloc_libdir}],[WRAPPER_LDFLAGS])
147 ++ hwloclibdir="-L${with_hwloc_prefix}/${with_hwloc_libdir}"
148 + fi
149 + fi
150 +
151 +@@ -1526,7 +1527,11 @@ AC_ARG_WITH([netloc-prefix],
152 + [AS_HELP_STRING([[--with-netloc-prefix[=DIR]]],
153 + [use the NETLOC library installed in DIR]) or system to use the system library], [],
154 + [with_netloc_prefix=no])
155 +-
156 ++AC_ARG_WITH([netloc-libdir],
157 ++ [AS_HELP_STRING([[--with-netloc-libdir[=DIR]]],
158 ++ [use the specified NETLOC library path with DIR.])],
159 ++ [],dnl action-if-given
160 ++ [with_netloc_libdir=lib64]) dnl action-if-not-given
161 + netloclibdir=""
162 + AC_SUBST([netloclibdir])
163 +
164 +@@ -1540,13 +1545,8 @@ if test "$have_hwloc" = "yes" ; then
165 + PAC_APPEND_FLAG([-I${with_netloc_prefix}/include],[CPPFLAGS])
166 + PAC_APPEND_FLAG([-I${with_netloc_prefix}/include],[CFLAGS])
167 + PAC_PREPEND_FLAG([-lnetloc],[WRAPPER_LIBS])
168 +- if test -d ${with_netloc_prefix}/lib64 ; then
169 +- PAC_APPEND_FLAG([-L${with_netloc_prefix}/lib64],[WRAPPER_LDFLAGS])
170 +- netloclibdir="-L${with_netloc_prefix}/lib64"
171 +- else
172 +- PAC_APPEND_FLAG([-L${with_netloc_prefix}/lib],[WRAPPER_LDFLAGS])
173 +- netloclibdir="-L${with_netloc_prefix}/lib"
174 +- fi
175 ++ PAC_APPEND_FLAG([-L${with_netloc_prefix}/${with_netloc_libdir}],[WRAPPER_LDFLAGS])
176 ++ netloclibdir="-L${with_netloc_prefix}/${with_netloc_libdir}"
177 + else
178 + AC_LINK_IFELSE([AC_LANG_PROGRAM([#include "netloc.h"
179 + ],
180 +diff --git a/src/izem/configure.ac b/src/izem/configure.ac
181 +index b5417fd..fe6cf4a 100644
182 +--- a/src/izem/configure.ac
183 ++++ b/src/izem/configure.ac
184 +@@ -344,9 +344,14 @@ esac
185 +
186 + AC_SUBST(ZM_QUEUE_CONF)
187 +
188 ++AC_ARG_WITH([izem-libdir],
189 ++ [AS_HELP_STRING([--with-hwloc-libdir], [Set specific path to hwloc.])],
190 ++ [],
191 ++ [with_izem_libdir=lib64])
192 ++
193 + AC_ARG_WITH([hwloc],
194 + [AS_HELP_STRING([--with-hwloc], [Set path to hwloc. Default: auto detect.])],
195 +- [LIBS="$LIBS -L$with_hwloc/lib"
196 ++ [LIBS="$LIBS -L$with_hwloc/$with_izem_libdir"
197 + CFLAGS="$CFLAGS -I$with_hwloc/include"],
198 + [])
199 +
200 +diff --git a/src/mpid/ch4/netmod/ofi/libfabric/config/fi_provider.m4 b/src/mpid/ch4/netmod/ofi/libfabric/config/fi_provider.m4
201 +index 901de77..6778da7 100644
202 +--- a/src/mpid/ch4/netmod/ofi/libfabric/config/fi_provider.m4
203 ++++ b/src/mpid/ch4/netmod/ofi/libfabric/config/fi_provider.m4
204 +@@ -189,16 +189,19 @@ AC_DEFUN([FI_CHECK_PREFIX_DIR],[
205 + AC_MSG_ERROR([Cannot continue])
206 + ])
207 +
208 ++ AC_ARG_WITH([fiprovider-libdir],
209 ++ [AS_HELP_STRING([[--with-fiprovider-libdir[=DIR]]],
210 ++ [use the specified FI PROVIDER library path with DIR.])],
211 ++ [],dnl action-if-given
212 ++ [with_fiprovider_libdir=lib64]) dnl action-if-not-given
213 ++
214 + # Check that base/lib or base/lib64 exists
215 +- AS_IF([test -d "$1/lib64"],
216 +- [$2_LIBDIR="$1/lib64"],
217 +- [AS_IF([test -d "$1/lib"],
218 +- [$2_LIBDIR="$1/lib"],
219 +- [AC_MSG_WARN([could not find "lib" or "lib64" subdirectories in supplied "$1" directory"])
220 +- AC_MSG_ERROR([Cannot continue])
221 +- ])
222 +- ])
223 +- ])
224 ++ [AS_IF([test -d "$1/${with_fiprovider_libdir}"],
225 ++ [$2_LIBDIR="$1/${with_fiprovider_libdir}"],
226 ++ [AC_MSG_WARN([could not find "lib" or "lib64" subdirectories in supplied "$1" directory"])
227 ++ AC_MSG_ERROR([Cannot continue])
228 ++ ])
229 ++ ]])
230 +
231 + dnl ------------------------------------------------------------------------
232 +
233
234 diff --git a/sys-cluster/mpich/mpich-3.2-r1.ebuild b/sys-cluster/mpich/mpich-3.3.ebuild
235 similarity index 77%
236 rename from sys-cluster/mpich/mpich-3.2-r1.ebuild
237 rename to sys-cluster/mpich/mpich-3.3.ebuild
238 index 01bbbaa9867..8eeb7b552f0 100644
239 --- a/sys-cluster/mpich/mpich-3.2-r1.ebuild
240 +++ b/sys-cluster/mpich/mpich-3.3.ebuild
241 @@ -6,7 +6,7 @@ EAPI=6
242 FORTRAN_NEEDED=fortran
243 FORTRAN_STANDARD="77 90"
244
245 -inherit fortran-2 multilib-minimal
246 +inherit fortran-2 multilib-minimal multilib autotools
247
248 MY_PV=${PV/_/}
249 DESCRIPTION="A high performance and portable MPI implementation"
250 @@ -15,12 +15,12 @@ SRC_URI="http://www.mpich.org/static/downloads/${PV}/${P}.tar.gz"
251
252 SLOT="0"
253 LICENSE="mpich2"
254 -KEYWORDS="amd64 ~arm64 hppa ppc ppc64 x86 ~amd64-linux ~x86-linux"
255 +KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
256 IUSE="+cxx doc fortran mpi-threads romio threads"
257
258 COMMON_DEPEND="
259 >=dev-libs/libaio-0.3.109-r5[${MULTILIB_USEDEP}]
260 - <sys-apps/hwloc-2[${MULTILIB_USEDEP}]
261 + >=sys-apps/hwloc-2.0.2[${MULTILIB_USEDEP}]
262 romio? ( net-fs/nfs-utils )"
263
264 DEPEND="${COMMON_DEPEND}
265 @@ -40,6 +40,10 @@ MULTILIB_WRAPPED_HEADERS=(
266 /usr/include/opa_config.h
267 )
268
269 +PATCHES=(
270 + "${FILESDIR}"/${PN}-3.3-add-external-libdir-parameter.patch
271 +)
272 +
273 src_prepare() {
274 default
275
276 @@ -48,6 +52,20 @@ src_prepare() {
277 src/packaging/pkgconfig/mpich.pc.in \
278 src/env/*.in \
279 || die
280 +
281 + # Fix m4 files to satisfy lib dir with multilib.
282 + touch -r src/pm/hydra/confdb/aclocal_libs.m4 \
283 + confdb/aclocal_libs.m4 \
284 + || die
285 + cp -fp confdb/aclocal_libs.m4 \
286 + src/pm/hydra/confdb/aclocal_libs.m4 \
287 + || die
288 + cp -fp confdb/aclocal_libs.m4 \
289 + src/pm/hydra/mpl/confdb/aclocal_libs.m4 \
290 + || die
291 + cd src/pm/hydra/mpl; eautoreconf; cd -
292 + cd src/pm/hydra; eautoreconf; cd -
293 + eautoreconf
294 }
295
296 multilib_src_configure() {
297 @@ -84,6 +102,11 @@ multilib_src_configure() {
298 ECONF_SOURCE=${S} econf \
299 --enable-shared \
300 --with-hwloc-prefix="${EPREFIX}/usr" \
301 + --with-hwloc-libdir="$(get_libdir)" \
302 + --with-common-libdir="$(get_libdir)" \
303 + --with-prefix-libdir="$(get_libdir)" \
304 + --with-izem-libdir="$(get_libdir)" \
305 + --with-fiprovider-libdir="$(get_libdir)" \
306 ${c} \
307 --with-pm=hydra \
308 --disable-fast \