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 \ |