* gnu/packages/patches/superlu-dist-fix-mpi-deprecations.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/maths.scm (superlu-dist)[source]: Use it.
		
			
				
	
	
		
			57 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From c9cbcf8730221e366c7495073f8f8d819ee8ce89 Mon Sep 17 00:00:00 2001
 | |
| From: Eric Bavier <bavier@member.fsf.org>
 | |
| Date: Wed, 6 Feb 2019 10:06:59 -0600
 | |
| Subject: [PATCH] Replace deprecated MPI_Attr_get.
 | |
| 
 | |
| Fixes build with OpenMPI version 4.0.
 | |
| 
 | |
| * SRC/pdgstrf.c, SRC/pdgstrf.c, SRC/superlu_grid.c: 'MPI_Attr_get' ->
 | |
|   'MPI_Comm_get_attr'.
 | |
| ---
 | |
|  SRC/pdgstrf.c      | 2 +-
 | |
|  SRC/pzgstrf.c      | 2 +-
 | |
|  SRC/superlu_grid.c | 2 +-
 | |
|  3 files changed, 3 insertions(+), 3 deletions(-)
 | |
| 
 | |
| diff --git a/SRC/pdgstrf.c b/SRC/pdgstrf.c
 | |
| index 736ffa2..f92a1ba 100644
 | |
| --- a/SRC/pdgstrf.c
 | |
| +++ b/SRC/pdgstrf.c
 | |
| @@ -426,7 +426,7 @@ pdgstrf(superlu_dist_options_t * options, int m, int n, double anorm,
 | |
|      s_eps = smach_dist("Epsilon");
 | |
|      thresh = s_eps * anorm;
 | |
|  
 | |
| -    MPI_Attr_get (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag);
 | |
| +    MPI_Comm_get_attr (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag);
 | |
|      if (!flag) {
 | |
|          fprintf (stderr, "Could not get TAG_UB\n");
 | |
|          return (-1);
 | |
| diff --git a/SRC/pzgstrf.c b/SRC/pzgstrf.c
 | |
| index 8896548..8800057 100644
 | |
| --- a/SRC/pzgstrf.c
 | |
| +++ b/SRC/pzgstrf.c
 | |
| @@ -426,7 +426,7 @@ pzgstrf(superlu_dist_options_t * options, int m, int n, double anorm,
 | |
|      s_eps = smach_dist("Epsilon");
 | |
|      thresh = s_eps * anorm;
 | |
|  
 | |
| -    MPI_Attr_get (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag);
 | |
| +    MPI_Comm_get_attr (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag);
 | |
|      if (!flag) {
 | |
|          fprintf (stderr, "Could not get TAG_UB\n");
 | |
|          return (-1);
 | |
| diff --git a/SRC/superlu_grid.c b/SRC/superlu_grid.c
 | |
| index 1213d27..0c0fb90 100644
 | |
| --- a/SRC/superlu_grid.c
 | |
| +++ b/SRC/superlu_grid.c
 | |
| @@ -150,7 +150,7 @@ void superlu_gridmap(
 | |
|      {
 | |
|  	int tag_ub;
 | |
|  	if ( !grid->iam ) {
 | |
| -	    MPI_Attr_get(Bcomm, MPI_TAG_UB, &tag_ub, &info);
 | |
| +	    MPI_Comm_get_attr(Bcomm, MPI_TAG_UB, &tag_ub, &info);
 | |
|  	    printf("MPI_TAG_UB %d\n", tag_ub);
 | |
|  	    /* returns 4295677672
 | |
|  	       In reality it is restricted to no greater than 16384. */
 | |
| -- 
 | |
| 2.20.1
 | |
| 
 |