forked from pool/mvapich2
Accepting request 813107 from science:HPC
- Update so mvapich2 2.3.4 - See CHANGELOG for fixes and new features - Add fix-missing-return-code.patch to fix compilation errors - Add 0001-Drop-Real-16.patch to disable Real(16) support on Armv7 - Add wrapper-revert-ldflag-order-change.patch to revert LDFLAGS order change done in 2.3.4. This allows legacy builds to work without adding a -lmpi flag OBS-URL: https://build.opensuse.org/request/show/813107 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mvapich2?expand=0&rev=22
This commit is contained in:
commit
6c29dfdc5a
281
0001-Drop-Real-16.patch
Normal file
281
0001-Drop-Real-16.patch
Normal file
@ -0,0 +1,281 @@
|
|||||||
|
commit 55d03ccf1f3969b185f00e5572c5a0675e000264
|
||||||
|
Author: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||||
|
Date: Fri Jun 5 10:11:12 2020 +0200
|
||||||
|
|
||||||
|
0001 Drop Real(16)
|
||||||
|
|
||||||
|
Real(16) does not work on armv7
|
||||||
|
|
||||||
|
Signed-off-by: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||||
|
|
||||||
|
diff --git src/binding/fortran/mpif_h/Makefile.mk src/binding/fortran/mpif_h/Makefile.mk
|
||||||
|
index d2de6bc779ac..73049dbd9379 100644
|
||||||
|
--- src/binding/fortran/mpif_h/Makefile.mk
|
||||||
|
+++ src/binding/fortran/mpif_h/Makefile.mk
|
||||||
|
@@ -390,7 +390,6 @@ mpi_f77_sources += src/binding/fortran/mpif_h/sendf.c \
|
||||||
|
src/binding/fortran/mpif_h/null_type_copy_fnf.c
|
||||||
|
mpi_core_sources += src/binding/fortran/mpif_h/fdebug.c \
|
||||||
|
src/binding/fortran/mpif_h/setbot.c \
|
||||||
|
- src/binding/fortran/mpif_h/fortran_ops.F \
|
||||||
|
src/binding/fortran/mpif_h/setbotf.f
|
||||||
|
mpi_sources += src/binding/fortran/mpif_h/statusf2c.c src/binding/fortran/mpif_h/statusc2f.c
|
||||||
|
|
||||||
|
diff --git src/binding/fortran/mpif_h/buildiface src/binding/fortran/mpif_h/buildiface
|
||||||
|
index 2b7a77f22c90..9eebc69a4359 100755
|
||||||
|
--- src/binding/fortran/mpif_h/buildiface
|
||||||
|
+++ src/binding/fortran/mpif_h/buildiface
|
||||||
|
@@ -1045,7 +1045,6 @@ EOT
|
||||||
|
print MAKEFD <<EOT;
|
||||||
|
mpi_core_sources += src/binding/fortran/mpif_h/fdebug.c \\
|
||||||
|
src/binding/fortran/mpif_h/setbot.c \\
|
||||||
|
- src/binding/fortran/mpif_h/fortran_ops.F \\
|
||||||
|
src/binding/fortran/mpif_h/setbotf.f
|
||||||
|
mpi_sources += src/binding/fortran/mpif_h/statusf2c.c src/binding/fortran/mpif_h/statusc2f.c
|
||||||
|
|
||||||
|
diff --git src/mpi/coll/opland.c src/mpi/coll/opland.c
|
||||||
|
index 2fecd3d5fc59..59b208809471 100644
|
||||||
|
--- src/mpi/coll/opland.c
|
||||||
|
+++ src/mpi/coll/opland.c
|
||||||
|
@@ -79,7 +79,7 @@ void MPIR_LAND (
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
/* --BEGIN ERROR HANDLING-- */
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case (MPI_REAL16):
|
||||||
|
#ifdef __ibmxl__
|
||||||
|
@@ -88,7 +88,7 @@ void MPIR_LAND (
|
||||||
|
real16_land_(invec, inoutvec, Len);
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
default: {
|
||||||
|
MPID_THREADPRIV_DECL;
|
||||||
|
@@ -123,10 +123,10 @@ int MPIR_LAND_check_dtype ( MPI_Datatype type )
|
||||||
|
MPIR_OP_TYPE_GROUP(FLOATING_POINT)
|
||||||
|
MPIR_OP_TYPE_GROUP(FLOATING_POINT_EXTRA)
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case (MPI_REAL16):
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
return MPI_SUCCESS;
|
||||||
|
diff --git src/mpi/coll/oplor.c src/mpi/coll/oplor.c
|
||||||
|
index cd340db11edf..81ba1a166cf7 100644
|
||||||
|
--- src/mpi/coll/oplor.c
|
||||||
|
+++ src/mpi/coll/oplor.c
|
||||||
|
@@ -79,7 +79,7 @@ void MPIR_LOR (
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
/* --BEGIN ERROR HANDLING-- */
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case (MPI_REAL16):
|
||||||
|
#ifdef __ibmxl__
|
||||||
|
@@ -88,7 +88,7 @@ void MPIR_LOR (
|
||||||
|
real16_lor_(invec, inoutvec, Len);
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
default: {
|
||||||
|
MPID_THREADPRIV_DECL;
|
||||||
|
@@ -124,10 +124,10 @@ int MPIR_LOR_check_dtype ( MPI_Datatype type )
|
||||||
|
MPIR_OP_TYPE_GROUP(FLOATING_POINT_EXTRA)
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case (MPI_REAL16):
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
return MPI_SUCCESS;
|
||||||
|
/* --BEGIN ERROR HANDLING-- */
|
||||||
|
diff --git src/mpi/coll/opmax.c src/mpi/coll/opmax.c
|
||||||
|
index fde306a32512..c933bdd1ab18 100644
|
||||||
|
--- src/mpi/coll/opmax.c
|
||||||
|
+++ src/mpi/coll/opmax.c
|
||||||
|
@@ -45,7 +45,7 @@ void MPIR_MAXF(
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
/* --BEGIN ERROR HANDLING-- */
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case MPI_REAL16:
|
||||||
|
#ifdef __ibmxl__
|
||||||
|
@@ -54,7 +54,7 @@ void MPIR_MAXF(
|
||||||
|
real16_max_(invec, inoutvec, Len);
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
default: {
|
||||||
|
MPID_THREADPRIV_DECL;
|
||||||
|
@@ -84,10 +84,10 @@ int MPIR_MAXF_check_dtype( MPI_Datatype type )
|
||||||
|
MPIR_OP_TYPE_GROUP(FORTRAN_INTEGER_EXTRA)
|
||||||
|
MPIR_OP_TYPE_GROUP(FLOATING_POINT_EXTRA)
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case (MPI_REAL16):
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
return MPI_SUCCESS;
|
||||||
|
diff --git src/mpi/coll/opmaxloc.c src/mpi/coll/opmaxloc.c
|
||||||
|
index 56387843bdc8..036e50f02dea 100644
|
||||||
|
--- src/mpi/coll/opmaxloc.c
|
||||||
|
+++ src/mpi/coll/opmaxloc.c
|
||||||
|
@@ -146,7 +146,7 @@ void MPIR_MAXLOC(
|
||||||
|
case MPI_2INTEGER: MPIR_MAXLOC_F_CASE(MPI_Fint);
|
||||||
|
case MPI_2REAL: MPIR_MAXLOC_F_CASE(MPIR_FC_REAL_CTYPE);
|
||||||
|
case MPI_2DOUBLE_PRECISION: MPIR_MAXLOC_F_CASE(MPIR_FC_DOUBLE_CTYPE);
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case MPI_REAL16:
|
||||||
|
#ifdef __ibmxl__
|
||||||
|
@@ -155,7 +155,7 @@ void MPIR_MAXLOC(
|
||||||
|
real16_maxloc_(invec, inoutvec, &flen);
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
/* --BEGIN ERROR HANDLING-- */
|
||||||
|
@@ -196,11 +196,11 @@ int MPIR_MAXLOC_check_dtype( MPI_Datatype type )
|
||||||
|
case MPI_2INTEGER:
|
||||||
|
case MPI_2REAL:
|
||||||
|
case MPI_2DOUBLE_PRECISION:
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case MPI_REAL16:
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
diff --git src/mpi/coll/opmin.c src/mpi/coll/opmin.c
|
||||||
|
index a9da3e9f1736..1468ae7dba72 100644
|
||||||
|
--- src/mpi/coll/opmin.c
|
||||||
|
+++ src/mpi/coll/opmin.c
|
||||||
|
@@ -43,7 +43,7 @@ void MPIR_MINF (
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
/* --BEGIN ERROR HANDLING-- */
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case MPI_REAL16:
|
||||||
|
#ifdef __ibmxl__
|
||||||
|
@@ -52,7 +52,7 @@ void MPIR_MINF (
|
||||||
|
real16_min_(invec, inoutvec, Len);
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
default: {
|
||||||
|
MPID_THREADPRIV_DECL;
|
||||||
|
@@ -82,10 +82,10 @@ int MPIR_MINF_check_dtype ( MPI_Datatype type )
|
||||||
|
MPIR_OP_TYPE_GROUP(FORTRAN_INTEGER_EXTRA)
|
||||||
|
MPIR_OP_TYPE_GROUP(FLOATING_POINT_EXTRA)
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case (MPI_REAL16):
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
return MPI_SUCCESS;
|
||||||
|
diff --git src/mpi/coll/opminloc.c src/mpi/coll/opminloc.c
|
||||||
|
index ccbfb15fa472..fbbe028aaeb6 100644
|
||||||
|
--- src/mpi/coll/opminloc.c
|
||||||
|
+++ src/mpi/coll/opminloc.c
|
||||||
|
@@ -146,7 +146,7 @@ void MPIR_MINLOC(
|
||||||
|
case MPI_2INTEGER: MPIR_MINLOC_F_CASE(MPI_Fint);
|
||||||
|
case MPI_2REAL: MPIR_MINLOC_F_CASE(MPIR_FC_REAL_CTYPE);
|
||||||
|
case MPI_2DOUBLE_PRECISION: MPIR_MINLOC_F_CASE(MPIR_FC_DOUBLE_CTYPE);
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case MPI_REAL16:
|
||||||
|
#ifdef __ibmxl__
|
||||||
|
@@ -155,7 +155,7 @@ void MPIR_MINLOC(
|
||||||
|
real16_minloc_(invec, inoutvec, &flen);
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
/* --BEGIN ERROR HANDLING-- */
|
||||||
|
@@ -198,11 +198,11 @@ int MPIR_MINLOC_check_dtype( MPI_Datatype type )
|
||||||
|
case MPI_2INTEGER:
|
||||||
|
case MPI_2REAL:
|
||||||
|
case MPI_2DOUBLE_PRECISION:
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case MPI_REAL16:
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
diff --git src/mpi/coll/opsum.c src/mpi/coll/opsum.c
|
||||||
|
index 43b0f24687af..6f446dd26b1c 100644
|
||||||
|
--- src/mpi/coll/opsum.c
|
||||||
|
+++ src/mpi/coll/opsum.c
|
||||||
|
@@ -66,7 +66,7 @@ void MPIR_SUM (
|
||||||
|
#define MPIR_OP_C_COMPLEX_TYPE_MACRO(mpi_type_,c_type_,type_name_) MPIR_OP_TYPE_MACRO(mpi_type_,c_type_,type_name_)
|
||||||
|
/* --BEGIN ERROR HANDLING-- */
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case MPI_REAL16:
|
||||||
|
#ifdef __ibmxl__
|
||||||
|
@@ -75,7 +75,7 @@ void MPIR_SUM (
|
||||||
|
real16_sum_(invec, inoutvec, Len);
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
default: {
|
||||||
|
MPID_THREADPRIV_DECL;
|
||||||
|
@@ -108,10 +108,10 @@ int MPIR_SUM_check_dtype( MPI_Datatype type )
|
||||||
|
MPIR_OP_TYPE_GROUP(COMPLEX)
|
||||||
|
MPIR_OP_TYPE_GROUP(COMPLEX_EXTRA)
|
||||||
|
#ifdef HAVE_FORTRAN_BINDING
|
||||||
|
-#ifndef __PGI
|
||||||
|
+#if !defined(__PGI) && !defined(__ARM_ARCH_7A__)
|
||||||
|
/* As of v20.1, PGI compilers only support real8 */
|
||||||
|
case (MPI_REAL16):
|
||||||
|
-#endif /*ifndef __PGI*/
|
||||||
|
+#endif /*if !defined(__PGI) && !defined(__ARM_ARCH_7A__) */
|
||||||
|
#endif /*#ifdef HAVE_FORTRAN_BINDING*/
|
||||||
|
#undef MPIR_OP_TYPE_MACRO
|
||||||
|
return MPI_SUCCESS;
|
50
fix-missing-return-code.patch
Normal file
50
fix-missing-return-code.patch
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
commit 60ccf8e31bcc2fca9e9332721336992934d644da
|
||||||
|
Author: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||||
|
Date: Wed Jun 3 12:01:54 2020 +0200
|
||||||
|
|
||||||
|
fix missing return code
|
||||||
|
|
||||||
|
src/pmi/upmi/upmi.c: In function 'UPMI_GET_LOCAL_RANK':
|
||||||
|
src/pmi/upmi/upmi.c:746:1: error: control reaches end of non-void function [-Werror=return-type]
|
||||||
|
746 | }
|
||||||
|
| ^
|
||||||
|
src/pmi/upmi/upmi.c: In function 'UPMI_GET_LOCAL_SIZE':
|
||||||
|
src/pmi/upmi/upmi.c:764:1: error: control reaches end of non-void function [-Werror=return-type]
|
||||||
|
764 | }
|
||||||
|
| ^
|
||||||
|
src/pmi/upmi/upmi.c: In function 'UPMI_GET_LOWEST_RANK':
|
||||||
|
src/pmi/upmi/upmi.c:782:1: error: control reaches end of non-void function [-Werror=return-type]
|
||||||
|
782 | }
|
||||||
|
|
||||||
|
Signed-off-by: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||||
|
|
||||||
|
diff --git src/pmi/upmi/upmi.c src/pmi/upmi/upmi.c
|
||||||
|
index 693e6395cbf8..6b1f045c6d5d 100644
|
||||||
|
--- src/pmi/upmi/upmi.c
|
||||||
|
+++ src/pmi/upmi/upmi.c
|
||||||
|
@@ -742,6 +742,8 @@ int UPMI_GET_LOCAL_RANK(int rank, int *size) {
|
||||||
|
}
|
||||||
|
*size= val->data.uint16;
|
||||||
|
return convert_err(rc);
|
||||||
|
+ #else
|
||||||
|
+ return 0;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -760,6 +762,8 @@ int UPMI_GET_LOCAL_SIZE(int *size) {
|
||||||
|
}
|
||||||
|
*size= val->data.uint32;
|
||||||
|
return convert_err(rc);
|
||||||
|
+ #else
|
||||||
|
+ return 0;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -778,5 +782,7 @@ int UPMI_GET_LOWEST_RANK(int *rank) {
|
||||||
|
}
|
||||||
|
*rank= val->data.uint32;
|
||||||
|
return convert_err(rc);
|
||||||
|
+ #else
|
||||||
|
+ return 0;
|
||||||
|
#endif
|
||||||
|
}
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:41d3261be57e5bc8aabf4e32981543c015c5443ff032a26f18205985e18c2b73
|
|
||||||
size 17102905
|
|
3
mvapich2-2.3.4.tar.gz
Normal file
3
mvapich2-2.3.4.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:7226a45c7c98333c8e5d2888119cce186199b430c13b7b1dca1769909e68ea7a
|
||||||
|
size 18473572
|
@ -1,3 +1,14 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 3 08:13:07 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||||
|
|
||||||
|
- Update so mvapich2 2.3.4
|
||||||
|
- See CHANGELOG for fixes and new features
|
||||||
|
- Add fix-missing-return-code.patch to fix compilation errors
|
||||||
|
- Add 0001-Drop-Real-16.patch to disable Real(16) support on Armv7
|
||||||
|
- Add wrapper-revert-ldflag-order-change.patch to revert LDFLAGS order
|
||||||
|
change done in 2.3.4.
|
||||||
|
This allows legacy builds to work without adding a -lmpi flag
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Jan 21 08:17:00 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
Tue Jan 21 08:17:00 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||||
|
|
||||||
|
@ -19,8 +19,8 @@
|
|||||||
%global flavor @BUILD_FLAVOR@%{nil}
|
%global flavor @BUILD_FLAVOR@%{nil}
|
||||||
|
|
||||||
%define pname mvapich2
|
%define pname mvapich2
|
||||||
%define vers 2.3.3
|
%define vers 2.3.4
|
||||||
%define _vers 2_3_3
|
%define _vers 2_3_4
|
||||||
|
|
||||||
%if "%{flavor}" == ""
|
%if "%{flavor}" == ""
|
||||||
ExclusiveArch: do_not_build
|
ExclusiveArch: do_not_build
|
||||||
@ -168,8 +168,13 @@ Patch2: mvapich2-arm-support.patch
|
|||||||
# It's been merged upstream, should be removed with the next release
|
# It's been merged upstream, should be removed with the next release
|
||||||
Patch3: 0001-Drop-GCC-check.patch
|
Patch3: 0001-Drop-GCC-check.patch
|
||||||
Patch4: reproducible.patch
|
Patch4: reproducible.patch
|
||||||
|
Patch5: fix-missing-return-code.patch
|
||||||
|
Patch6: wrapper-revert-ldflag-order-change.patch
|
||||||
|
## Armv7 specific patches
|
||||||
# PATCH-FIX-UPSTREAM 0001-Drop-real128.patch (https://github.com/pmodels/mpich/issues/4005)
|
# PATCH-FIX-UPSTREAM 0001-Drop-real128.patch (https://github.com/pmodels/mpich/issues/4005)
|
||||||
Patch5: 0001-Drop-real128.patch
|
Patch50: 0001-Drop-real128.patch
|
||||||
|
Patch51: 0001-Drop-Real-16.patch
|
||||||
|
|
||||||
URL: http://mvapich.cse.ohio-state.edu/overview/mvapich2/
|
URL: http://mvapich.cse.ohio-state.edu/overview/mvapich2/
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
@ -182,6 +187,7 @@ BuildRequires: autoconf
|
|||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: bison
|
BuildRequires: bison
|
||||||
|
BuildRequires: flex
|
||||||
%ifnarch s390 s390x %{arm}
|
%ifnarch s390 s390x %{arm}
|
||||||
BuildRequires: libnuma-devel
|
BuildRequires: libnuma-devel
|
||||||
%endif
|
%endif
|
||||||
@ -301,14 +307,24 @@ is based on MPICH2 and MVICH. This package contains the static libraries
|
|||||||
%patch2
|
%patch2
|
||||||
%patch3
|
%patch3
|
||||||
%patch4 -p1
|
%patch4 -p1
|
||||||
# Only apply this patch on Armv7
|
%patch5
|
||||||
|
%patch6
|
||||||
|
|
||||||
|
# Only apply these patches on Armv7
|
||||||
%ifarch armv7hl
|
%ifarch armv7hl
|
||||||
%patch5 -p1
|
%patch50 -p1
|
||||||
|
%patch51
|
||||||
%endif
|
%endif
|
||||||
cp /usr/share/automake*/config.* .
|
cp /usr/share/automake*/config.* .
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
|
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
|
||||||
|
|
||||||
|
# GCC10 needs an extra flag to allow badly passed parameters
|
||||||
|
%if 0%{?suse_version} > 1500
|
||||||
|
export FFLAGS="-fallow-argument-mismatch $FFLAGS"
|
||||||
|
%endif
|
||||||
|
|
||||||
PERL_USE_UNSAFE_INC=1 ./autogen.sh
|
PERL_USE_UNSAFE_INC=1 ./autogen.sh
|
||||||
%if %{with hpc}
|
%if %{with hpc}
|
||||||
%{hpc_setup}
|
%{hpc_setup}
|
||||||
|
115
wrapper-revert-ldflag-order-change.patch
Normal file
115
wrapper-revert-ldflag-order-change.patch
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
commit 5818871a4afed52944ece7688f5ad316407be482
|
||||||
|
Author: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||||
|
Date: Tue Jun 9 22:46:54 2020 +0200
|
||||||
|
|
||||||
|
wrapper revert ldflag order change
|
||||||
|
|
||||||
|
For some reason v2.3.4 changed flag order in mpi** wrappers which
|
||||||
|
causes legacy stuff to not link unless a -lmpi is added
|
||||||
|
|
||||||
|
Signed-off-by: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||||
|
|
||||||
|
diff --git src/env/mpicc.bash.in src/env/mpicc.bash.in
|
||||||
|
index aa65f27a4e5e..21517c0abfef 100644
|
||||||
|
--- src/env/mpicc.bash.in
|
||||||
|
+++ src/env/mpicc.bash.in
|
||||||
|
@@ -268,7 +268,7 @@ if [ "$linking" = yes ] ; then
|
||||||
|
$Show $CC ${final_cppflags} $PROFILE_INCPATHS ${final_cflags} ${final_ldflags} "${allargs[@]}" -I$includedir
|
||||||
|
rc=$?
|
||||||
|
else
|
||||||
|
- $Show $CC ${final_cppflags} $PROFILE_INCPATHS ${final_cflags} -l@MPILIBNAME@ ${final_ldflags} "${allargs[@]}" -I$includedir $ITAC_OPTIONS -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs}
|
||||||
|
+ $Show $CC ${final_cppflags} $PROFILE_INCPATHS ${final_cflags} ${final_ldflags} "${allargs[@]}" -I$includedir $ITAC_OPTIONS -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l@MPILIBNAME@ @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs}
|
||||||
|
rc=$?
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
diff --git src/env/mpicc.sh.in src/env/mpicc.sh.in
|
||||||
|
index dceab90cc3f2..f6e433d2f0f5 100644
|
||||||
|
--- src/env/mpicc.sh.in
|
||||||
|
+++ src/env/mpicc.sh.in
|
||||||
|
@@ -277,7 +277,7 @@ if [ "$linking" = yes ] ; then
|
||||||
|
$Show $CC ${final_cppflags} $PROFILE_INCPATHS ${final_cflags} ${final_ldflags} $allargs -I$includedir
|
||||||
|
rc=$?
|
||||||
|
else
|
||||||
|
- $Show $CC ${final_cppflags} $PROFILE_INCPATHS ${final_cflags} -l@MPILIBNAME@ ${final_ldflags} $allargs -I$includedir $ITAC_OPTIONS -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs}
|
||||||
|
+ $Show $CC ${final_cppflags} $PROFILE_INCPATHS ${final_cflags} ${final_ldflags} $allargs -I$includedir $ITAC_OPTIONS -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l@MPILIBNAME@ @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs}
|
||||||
|
rc=$?
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
diff --git src/env/mpicxx.bash.in src/env/mpicxx.bash.in
|
||||||
|
index 5d4e1639e02f..35a581bd3515 100644
|
||||||
|
--- src/env/mpicxx.bash.in
|
||||||
|
+++ src/env/mpicxx.bash.in
|
||||||
|
@@ -266,7 +266,7 @@ if [ "$linking" = yes ] ; then
|
||||||
|
$Show $CXX ${final_cppflags} $PROFILE_INCPATHS ${final_cxxflags} ${final_ldflags} "${allargs[@]}" -I$includedir
|
||||||
|
rc=$?
|
||||||
|
else
|
||||||
|
- $Show $CXX ${final_cppflags} $PROFILE_INCPATHS ${final_cxxflags} $cxxlibs -l@MPILIBNAME@ ${final_ldflags} "${allargs[@]}" -I$includedir $ITAC_OPTIONS -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs}
|
||||||
|
+ $Show $CXX ${final_cppflags} $PROFILE_INCPATHS ${final_cxxflags} ${final_ldflags} "${allargs[@]}" -I$includedir $ITAC_OPTIONS -L$libdir $cxxlibs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l@MPILIBNAME@ @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs}
|
||||||
|
rc=$?
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
diff --git src/env/mpicxx.sh.in src/env/mpicxx.sh.in
|
||||||
|
index 0186905368e1..e2eed50f0660 100644
|
||||||
|
--- src/env/mpicxx.sh.in
|
||||||
|
+++ src/env/mpicxx.sh.in
|
||||||
|
@@ -275,7 +275,7 @@ if [ "$linking" = yes ] ; then
|
||||||
|
$Show $CXX ${final_cppflags} $PROFILE_INCPATHS ${final_cxxflags} ${final_ldflags} $allargs -I$includedir
|
||||||
|
rc=$?
|
||||||
|
else
|
||||||
|
- $Show $CXX ${final_cppflags} $PROFILE_INCPATHS ${final_cxxflags} $cxxlibs -l@MPILIBNAME@ ${final_ldflags} $allargs -I$includedir $ITAC_OPTIONS -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs}
|
||||||
|
+ $Show $CXX ${final_cppflags} $PROFILE_INCPATHS ${final_cxxflags} ${final_ldflags} $allargs -I$includedir $ITAC_OPTIONS -L$libdir $cxxlibs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l@MPILIBNAME@ @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs}
|
||||||
|
rc=$?
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
diff --git src/env/mpif77.bash.in src/env/mpif77.bash.in
|
||||||
|
index 05b3e540de78..4d357a502d94 100644
|
||||||
|
--- src/env/mpif77.bash.in
|
||||||
|
+++ src/env/mpif77.bash.in
|
||||||
|
@@ -318,7 +318,7 @@ if [ "$linking" = yes ] ; then
|
||||||
|
$Show $F77 $PROFILE_INCPATHS ${final_fflags} ${final_ldflags} "${allargs[@]}" -I$includedir
|
||||||
|
rc=$?
|
||||||
|
else
|
||||||
|
- $Show $F77 $PROFILE_INCPATHS ${final_fflags} -l@MPILIBNAME@ ${final_ldflags} "${allargs[@]}" -I$includedir $ITAC_OPTIONS -L$libdir $f77libs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs} @F77_OTHER_LIBS@
|
||||||
|
+ $Show $F77 $PROFILE_INCPATHS ${final_fflags} ${final_ldflags} "${allargs[@]}" -I$includedir $ITAC_OPTIONS -L$libdir $f77libs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l@MPILIBNAME@ @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs} @F77_OTHER_LIBS@
|
||||||
|
rc=$?
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
diff --git src/env/mpif77.sh.in src/env/mpif77.sh.in
|
||||||
|
index 070b0be24722..0ec77e627b53 100644
|
||||||
|
--- src/env/mpif77.sh.in
|
||||||
|
+++ src/env/mpif77.sh.in
|
||||||
|
@@ -340,7 +340,7 @@ if [ "$linking" = yes ] ; then
|
||||||
|
$Show $F77 $PROFILE_INCPATHS ${final_fflags} ${final_ldflags} $allargs -I$includedir
|
||||||
|
rc=$?
|
||||||
|
else
|
||||||
|
- $Show $F77 $PROFILE_INCPATHS ${final_fflags} -l@MPILIBNAME@ ${final_ldflags} $allargs -I$includedir $ITAC_OPTIONS -L$libdir $f77libs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs} @F77_OTHER_LIBS@
|
||||||
|
+ $Show $F77 $PROFILE_INCPATHS ${final_fflags} ${final_ldflags} $allargs -I$includedir $ITAC_OPTIONS -L$libdir $f77libs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l@MPILIBNAME@ @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs} @F77_OTHER_LIBS@
|
||||||
|
rc=$?
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
diff --git src/env/mpifort.bash.in src/env/mpifort.bash.in
|
||||||
|
index 73da0e866e48..c36dddf78553 100644
|
||||||
|
--- src/env/mpifort.bash.in
|
||||||
|
+++ src/env/mpifort.bash.in
|
||||||
|
@@ -359,7 +359,7 @@ if [ "$linking" = yes ] ; then
|
||||||
|
$Show $FC $PROFILE_INCPATHS ${final_fcflags} ${final_ldflags} "${allargs[@]}"
|
||||||
|
rc=$?
|
||||||
|
else
|
||||||
|
- $Show $FC $PROFILE_INCPATHS ${final_fcflags} -l@MPIFCLIBNAME@ -l@MPILIBNAME@ ${final_ldflags} "${allargs[@]}" $FCINCDIRS $FCMODDIRS $ITAC_OPTIONS -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs} @FC_OTHER_LIBS@
|
||||||
|
+ $Show $FC $PROFILE_INCPATHS ${final_fcflags} ${final_ldflags} "${allargs[@]}" $FCINCDIRS $FCMODDIRS $ITAC_OPTIONS -L$libdir -l@MPIFCLIBNAME@ $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l@MPILIBNAME@ @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs} @FC_OTHER_LIBS@
|
||||||
|
rc=$?
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
diff --git src/env/mpifort.sh.in src/env/mpifort.sh.in
|
||||||
|
index 5ee8a148f8ff..c5620c4b61a2 100644
|
||||||
|
--- src/env/mpifort.sh.in
|
||||||
|
+++ src/env/mpifort.sh.in
|
||||||
|
@@ -375,7 +375,7 @@ if [ "$linking" = yes ] ; then
|
||||||
|
$Show $FC $PROFILE_INCPATHS ${final_fcflags} ${final_ldflags} $allargs
|
||||||
|
rc=$?
|
||||||
|
else
|
||||||
|
- $Show $FC $PROFILE_INCPATHS ${final_fcflags} -l@MPIFCLIBNAME@ -l@MPILIBNAME@ ${final_ldflags} $allargs $FCINCDIRS $FCMODDIRS $ITAC_OPTIONS -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs} @FC_OTHER_LIBS@
|
||||||
|
+ $Show $FC $PROFILE_INCPATHS ${final_fcflags} ${final_ldflags} $allargs $FCINCDIRS $FCMODDIRS $ITAC_OPTIONS -L$libdir -l@MPIFCLIBNAME@ $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l@MPILIBNAME@ @LPMPILIBNAME@ $PROFILE_POSTLIB ${final_libs} @FC_OTHER_LIBS@
|
||||||
|
rc=$?
|
||||||
|
fi
|
||||||
|
else
|
Loading…
Reference in New Issue
Block a user