commit:     f12adbee3cb0dcb92c38ecae836c1d1a9f7df520
Author:     Jian Cao <sworden.cao <AT> gmail <DOT> com>
AuthorDate: Sun Apr  7 18:21:24 2019 +0000
Commit:     Justin Bronder <jsbronder <AT> gentoo <DOT> org>
CommitDate: Mon Apr 15 14:53:41 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f12adbee

sys-cluster/mpich: Version bump to 3.3

Closes: https://bugs.gentoo.org/680236
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Jian Cao <sworden.cao <AT> gmail.com>
Signed-off-by: Justin Bronder <jsbronder <AT> gentoo.org>

 sys-cluster/mpich/Manifest                         |   2 +-
 .../mpich-3.3-add-external-libdir-parameter.patch  | 198 +++++++++++++++++++++
 .../{mpich-3.2-r1.ebuild => mpich-3.3.ebuild}      |  29 ++-
 3 files changed, 225 insertions(+), 4 deletions(-)

diff --git a/sys-cluster/mpich/Manifest b/sys-cluster/mpich/Manifest
index 2f46ebaf024..ee2a89453a2 100644
--- a/sys-cluster/mpich/Manifest
+++ b/sys-cluster/mpich/Manifest
@@ -1,2 +1,2 @@
 DIST mpich-3.0.4.tar.gz 10921075 BLAKE2B 
341aaac23277aed05a4448ea03d9caf1ee14cfe327a770c95d620fc1ee1ea7bfa6df36860aa44aad162eb6d630d35fdfb30ae9a866d67680ab71c7b4326c109c
 SHA512 
f9d8b2cf561fe5f85c12512ef4dd7b0cf5ec8b53ddb07bfa0d1db2e3c8ae0382c77e0661f46b82ec96b05d18ea2d25328bb84e9528ac06e5925f30ec8ef030d0
-DIST mpich-3.2.tar.gz 11862150 BLAKE2B 
2e0414b2e11b08a59497fa255d464a2130c754ba8798b99a8b84f7232179906bb27906abbe58b9546833541c238f42ae06df90bfe1133d3ff2d85921d9736452
 SHA512 
083c51655b4355827bd7fa4fe528046e2bc77b7747d869ff87b79fa324c3cc2a9b5640ccb7271490ccc0dd627e354a33a449bbab448501bbfddcfe5f999ee717
+DIST mpich-3.3.tar.gz 27209008 BLAKE2B 
3010f847456ed71a27e728b91887e04303a83b4abea883bf73d9794ff697052efe3bccd238933dc6e5fbc75e0be36004f1ae9fc7695a4e8887984552ae005917
 SHA512 
1ed6d8d30db4923fd1bd39b6e9622f0db939a45edf8d9f8bdbccfa619fde7fb920c5a0d3f2442f0dd63cf8fda823dbd2983ac5f7c16308bc79e04f61d8e119be

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
new file mode 100644
index 00000000000..64be728f574
--- /dev/null
+++ b/sys-cluster/mpich/files/mpich-3.3-add-external-libdir-parameter.patch
@@ -0,0 +1,198 @@
+diff --git a/confdb/aclocal_libs.m4 b/confdb/aclocal_libs.m4
+index c417204..5d98053 100644
+--- a/confdb/aclocal_libs.m4
++++ b/confdb/aclocal_libs.m4
+@@ -27,6 +27,14 @@ AC_DEFUN([PAC_SET_HEADER_LIB_PATH],[
+                          [AC_MSG_WARN([--with[out]-$1-lib=PATH expects a 
valid PATH])
+                           with_$1_lib=""])],
+                 [])
++      AC_ARG_WITH([common-libdir],
++            [AS_HELP_STRING([[--with-common-libdir[=DIR]]], [use the $1
++                            library installed in DIR, rather than the
++                            one included in the distribution.  Pass
++                            "embedded" to force usage of the included
++                            $1 source.])],
++            [],
++            [with_common_libdir=lib64])
+ 
+     # The args have been sanitized into empty/non-empty values above.
+     # Now append -I/-L args to CPPFLAGS/LDFLAGS, with more specific options
+@@ -42,9 +50,7 @@ AC_DEFUN([PAC_SET_HEADER_LIB_PATH],[
+           [AS_IF([test -n "${with_$1}"],
+                  dnl is adding lib64 by default really the right thing to do? 
 What if
+                  dnl we are on a 32-bit host that happens to have both lib 
dirs available?
+-                 [PAC_APPEND_FLAG([-L${with_$1}/lib],[LDFLAGS])
+-                  AS_IF([test -d "${with_$1}/lib64"],
+-                      [PAC_APPEND_FLAG([-L${with_$1}/lib64],[LDFLAGS])])
++                 
[PAC_APPEND_FLAG([-L${with_$1}/${with_common_libdir}],[LDFLAGS])
+                  ])
+           ])
+ ])
+@@ -79,6 +85,14 @@ AC_DEFUN([PAC_CHECK_HEADER_LIB_FATAL],[
+ 
+ dnl PAC_CHECK_PREFIX(with_option,prefixvar)
+ AC_DEFUN([PAC_CHECK_PREFIX],[
++      AC_ARG_WITH([prefix-libdir],
++            [AS_HELP_STRING([[--with-$1-prefix[=DIR]]], [use the $1
++                            library installed in DIR, rather than the
++                            one included in the distribution.  Pass
++                            "embedded" to force usage of the included
++                            $1 source.])],
++            [],
++            [with_prefix_libdir=lib64])
+       AC_ARG_WITH([$1-prefix],
+             [AS_HELP_STRING([[--with-$1-prefix[=DIR]]], [use the $1
+                             library installed in DIR, rather than the
+@@ -93,10 +107,7 @@ AC_DEFUN([PAC_CHECK_PREFIX],[
+                  :
+              else
+                  PAC_APPEND_FLAG([-I${with_$1_prefix}/include],[CPPFLAGS])
+-                 if test -d "${with_$1_prefix}/lib64" ; then
+-                     PAC_APPEND_FLAG([-L${with_$1_prefix}/lib64],[LDFLAGS])
+-                 fi
+-                 PAC_APPEND_FLAG([-L${with_$1_prefix}/lib],[LDFLAGS])
++                 
PAC_APPEND_FLAG([-L${with_$1_prefix}/${with_prefix_libdir}],[LDFLAGS])
+              fi
+              ],
+             [with_$1_prefix="embedded"])
+diff --git a/configure.ac b/configure.ac
+index 765aa9e..ef9c2e5 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1240,6 +1240,11 @@ OPA_fetch_and_incr_int(&i,5);
+ 
+ opasrcdir=""
+ AC_SUBST([opasrcdir])
++AC_ARG_WITH([opal-libdir],
++            [AS_HELP_STRING([[--with-opal-libdir[=DIR]]],
++                            [use the specified OPAL library path with DIR.])],
++            [],dnl action-if-given
++            [with_opal_libdir=lib64]) dnl action-if-not-given
+ opalibdir=""
+ AC_SUBST([opalibdir])
+ opalib=""
+@@ -1282,13 +1287,8 @@ else
+           [:],[AC_MSG_ERROR([the OpenPA installation in 
"${with_openpa_prefix}" appears broken])])
+     PAC_APPEND_FLAG([-I${with_openpa_prefix}/include],[CPPFLAGS])
+     PAC_PREPEND_FLAG([-l${OPALIBNAME}],[WRAPPER_LIBS])
+-    if test -d ${with_openpa_prefix}/lib64 ; then
+-        PAC_APPEND_FLAG([-L${with_openpa_prefix}/lib64],[WRAPPER_LDFLAGS])
+-        opalibdir="-L${with_openpa_prefix}/lib64"
+-    else
+-        opalibdir="-L${with_openpa_prefix}/lib"
+-    fi
+-    PAC_APPEND_FLAG([-L${with_openpa_prefix}/lib],[WRAPPER_LDFLAGS])
++    
PAC_APPEND_FLAG([-L${with_openpa_prefix}/${with_opal_libdir}],[WRAPPER_LDFLAGS])
++    opallibdir="-L${with_openpa_prefix}/${with_opal_libdir}"
+ fi
+ 
+ # Izem
+@@ -1463,6 +1463,11 @@ AC_ARG_WITH([hwloc-prefix],
+             [with_hwloc_prefix=embedded]) dnl action-if-not-given
+ hwlocsrcdir=""
+ AC_SUBST([hwlocsrcdir])
++AC_ARG_WITH([hwloc-libdir],
++            [AS_HELP_STRING([[--with-hwloc-libdir[=DIR]]],
++                            [use the specified HWLOC library path with 
DIR.])],
++            [],dnl action-if-given
++            [with_hwloc_libdir=lib64]) dnl action-if-not-given
+ hwloclibdir=""
+ AC_SUBST([hwloclibdir])
+ hwloclib=""
+@@ -1502,12 +1507,8 @@ else
+ 
+    if test "$have_hwloc" = "yes" ; then
+       hwloclib="-lhwloc"
+-      if test -d ${with_hwloc_prefix}/lib64 ; then
+-         PAC_APPEND_FLAG([-L${with_hwloc_prefix}/lib64],[WRAPPER_LDFLAGS])
+-         hwloclibdir="-L${with_hwloc_prefix}/lib64"
+-      else
+-       hwloclibdir="-L${with_hwloc_prefix}/lib"
+-      fi
++      
PAC_APPEND_FLAG([-L${with_hwloc_prefix}/${with_hwloc_libdir}],[WRAPPER_LDFLAGS])
++      hwloclibdir="-L${with_hwloc_prefix}/${with_hwloc_libdir}"
+    fi
+ fi
+ 
+@@ -1526,7 +1527,11 @@ AC_ARG_WITH([netloc-prefix],
+             [AS_HELP_STRING([[--with-netloc-prefix[=DIR]]],
+                             [use the NETLOC library installed in DIR]) or 
system to use the system library], [],
+                             [with_netloc_prefix=no])
+-
++AC_ARG_WITH([netloc-libdir],
++            [AS_HELP_STRING([[--with-netloc-libdir[=DIR]]],
++                            [use the specified NETLOC library path with 
DIR.])],
++            [],dnl action-if-given
++            [with_netloc_libdir=lib64]) dnl action-if-not-given
+ netloclibdir=""
+ AC_SUBST([netloclibdir])
+ 
+@@ -1540,13 +1545,8 @@ if test "$have_hwloc" = "yes" ; then
+             PAC_APPEND_FLAG([-I${with_netloc_prefix}/include],[CPPFLAGS])
+             PAC_APPEND_FLAG([-I${with_netloc_prefix}/include],[CFLAGS])
+             PAC_PREPEND_FLAG([-lnetloc],[WRAPPER_LIBS])
+-            if test -d ${with_netloc_prefix}/lib64 ; then
+-                
PAC_APPEND_FLAG([-L${with_netloc_prefix}/lib64],[WRAPPER_LDFLAGS])
+-                netloclibdir="-L${with_netloc_prefix}/lib64"
+-            else
+-                
PAC_APPEND_FLAG([-L${with_netloc_prefix}/lib],[WRAPPER_LDFLAGS])
+-                netloclibdir="-L${with_netloc_prefix}/lib"
+-            fi
++            
PAC_APPEND_FLAG([-L${with_netloc_prefix}/${with_netloc_libdir}],[WRAPPER_LDFLAGS])
++            netloclibdir="-L${with_netloc_prefix}/${with_netloc_libdir}"
+        else
+            AC_LINK_IFELSE([AC_LANG_PROGRAM([#include "netloc.h"
+                                    ],
+diff --git a/src/izem/configure.ac b/src/izem/configure.ac
+index b5417fd..fe6cf4a 100644
+--- a/src/izem/configure.ac
++++ b/src/izem/configure.ac
+@@ -344,9 +344,14 @@ esac
+ 
+ AC_SUBST(ZM_QUEUE_CONF)
+ 
++AC_ARG_WITH([izem-libdir],
++            [AS_HELP_STRING([--with-hwloc-libdir], [Set specific path to 
hwloc.])],
++            [],
++            [with_izem_libdir=lib64])
++
+ AC_ARG_WITH([hwloc],
+             [AS_HELP_STRING([--with-hwloc], [Set path to hwloc. Default: auto 
detect.])],
+-            [LIBS="$LIBS -L$with_hwloc/lib"
++            [LIBS="$LIBS -L$with_hwloc/$with_izem_libdir"
+              CFLAGS="$CFLAGS -I$with_hwloc/include"],
+             [])
+ 
+diff --git a/src/mpid/ch4/netmod/ofi/libfabric/config/fi_provider.m4 
b/src/mpid/ch4/netmod/ofi/libfabric/config/fi_provider.m4
+index 901de77..6778da7 100644
+--- a/src/mpid/ch4/netmod/ofi/libfabric/config/fi_provider.m4
++++ b/src/mpid/ch4/netmod/ofi/libfabric/config/fi_provider.m4
+@@ -189,16 +189,19 @@ AC_DEFUN([FI_CHECK_PREFIX_DIR],[
+               AC_MSG_ERROR([Cannot continue])
+              ])
+ 
++      AC_ARG_WITH([fiprovider-libdir],
++            [AS_HELP_STRING([[--with-fiprovider-libdir[=DIR]]],
++                            [use the specified FI PROVIDER library path with 
DIR.])],
++            [],dnl action-if-given
++            [with_fiprovider_libdir=lib64]) dnl action-if-not-given
++
+       # Check that base/lib or base/lib64 exists
+-       AS_IF([test -d "$1/lib64"],
+-             [$2_LIBDIR="$1/lib64"],
+-             [AS_IF([test -d "$1/lib"],
+-                    [$2_LIBDIR="$1/lib"],
+-                    [AC_MSG_WARN([could not find "lib" or "lib64" 
subdirectories in supplied "$1" directory"])
+-                     AC_MSG_ERROR([Cannot continue])
+-                    ])
+-             ])
+-      ])
++     [AS_IF([test -d "$1/${with_fiprovider_libdir}"],
++        [$2_LIBDIR="$1/${with_fiprovider_libdir}"],
++        [AC_MSG_WARN([could not find "lib" or "lib64" subdirectories in 
supplied "$1" directory"])
++         AC_MSG_ERROR([Cannot continue])
++        ])
++     ]])
+ 
+ dnl ------------------------------------------------------------------------
+ 

diff --git a/sys-cluster/mpich/mpich-3.2-r1.ebuild 
b/sys-cluster/mpich/mpich-3.3.ebuild
similarity index 77%
rename from sys-cluster/mpich/mpich-3.2-r1.ebuild
rename to sys-cluster/mpich/mpich-3.3.ebuild
index 01bbbaa9867..8eeb7b552f0 100644
--- a/sys-cluster/mpich/mpich-3.2-r1.ebuild
+++ b/sys-cluster/mpich/mpich-3.3.ebuild
@@ -6,7 +6,7 @@ EAPI=6
 FORTRAN_NEEDED=fortran
 FORTRAN_STANDARD="77 90"
 
-inherit fortran-2 multilib-minimal
+inherit fortran-2 multilib-minimal multilib autotools
 
 MY_PV=${PV/_/}
 DESCRIPTION="A high performance and portable MPI implementation"
@@ -15,12 +15,12 @@ 
SRC_URI="http://www.mpich.org/static/downloads/${PV}/${P}.tar.gz";
 
 SLOT="0"
 LICENSE="mpich2"
-KEYWORDS="amd64 ~arm64 hppa ppc ppc64 x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
 IUSE="+cxx doc fortran mpi-threads romio threads"
 
 COMMON_DEPEND="
        >=dev-libs/libaio-0.3.109-r5[${MULTILIB_USEDEP}]
-       <sys-apps/hwloc-2[${MULTILIB_USEDEP}]
+       >=sys-apps/hwloc-2.0.2[${MULTILIB_USEDEP}]
        romio? ( net-fs/nfs-utils )"
 
 DEPEND="${COMMON_DEPEND}
@@ -40,6 +40,10 @@ MULTILIB_WRAPPED_HEADERS=(
        /usr/include/opa_config.h
 )
 
+PATCHES=(
+       "${FILESDIR}"/${PN}-3.3-add-external-libdir-parameter.patch
+)
+
 src_prepare() {
        default
 
@@ -48,6 +52,20 @@ src_prepare() {
                src/packaging/pkgconfig/mpich.pc.in \
                src/env/*.in \
                || die
+
+       # Fix m4 files to satisfy lib dir with multilib.
+       touch -r src/pm/hydra/confdb/aclocal_libs.m4 \
+               confdb/aclocal_libs.m4 \
+               || die
+       cp -fp confdb/aclocal_libs.m4 \
+               src/pm/hydra/confdb/aclocal_libs.m4 \
+               || die
+       cp -fp confdb/aclocal_libs.m4 \
+               src/pm/hydra/mpl/confdb/aclocal_libs.m4 \
+               || die
+       cd src/pm/hydra/mpl; eautoreconf; cd -
+       cd src/pm/hydra; eautoreconf; cd -
+       eautoreconf
 }
 
 multilib_src_configure() {
@@ -84,6 +102,11 @@ multilib_src_configure() {
        ECONF_SOURCE=${S} econf \
                --enable-shared \
                --with-hwloc-prefix="${EPREFIX}/usr" \
+               --with-hwloc-libdir="$(get_libdir)" \
+               --with-common-libdir="$(get_libdir)" \
+               --with-prefix-libdir="$(get_libdir)" \
+               --with-izem-libdir="$(get_libdir)" \
+               --with-fiprovider-libdir="$(get_libdir)" \
                ${c} \
                --with-pm=hydra \
                --disable-fast \

Reply via email to