Skip to content

Commit

Permalink
Merge pull request #6120 from gpaulsen/topic/v4.0.x/re-add-deprecated…
Browse files Browse the repository at this point in the history
…-oops

v4.0.x: Re-add removed deprecate-only MPI-2.0 symbols
  • Loading branch information
hppritcha authored Jan 10, 2019
2 parents 0258ed5 + 4aa91e1 commit bc58e22
Show file tree
Hide file tree
Showing 26 changed files with 92 additions and 39 deletions.
6 changes: 3 additions & 3 deletions ompi/include/mpi.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,7 @@
# define __mpi_interface_deprecated__(msg) __attribute__((__deprecated__))
# endif
# endif
# if OMPI_ENABLE_MPI1_COMPAT
# if (OMPI_ENABLE_MPI1_COMPAT && !OMPI_BUILDING)
# define __mpi_interface_removed__(msg) __mpi_interface_deprecated__(msg)
# define OMPI_OMIT_MPI1_COMPAT_DECLS 0
# endif
Expand Down Expand Up @@ -1001,7 +1001,7 @@ OMPI_DECLSPEC extern struct ompi_predefined_info_t ompi_mpi_info_env;
OMPI_DECLSPEC extern MPI_Fint *MPI_F_STATUS_IGNORE;
OMPI_DECLSPEC extern MPI_Fint *MPI_F_STATUSES_IGNORE;

#if !OMPI_OMIT_MPI1_COMPAT_DECLS
#if (!OMPI_OMIT_MPI1_COMPAT_DECLS || OMPI_BUILDING)
/*
* Removed datatypes. These datatypes are only available if Open MPI
* was configured with --enable-mpi1-compatibility.
Expand Down Expand Up @@ -2662,7 +2662,7 @@ OMPI_DECLSPEC int OMPI_C_MPI_NULL_DELETE_FN( MPI_Comm comm, int comm_keyval,
void* extra_state )
__mpi_interface_deprecated__("MPI_NULL_DELETE_FN was deprecated in MPI-2.0; use MPI_COMM_NULL_DELETE_FN instead.");

#if !OMPI_OMIT_MPI1_COMPAT_DECLS
#if (!OMPI_OMIT_MPI1_COMPAT_DECLS || OMPI_BUILDING)
/*
* Removed typedefs. These typedefs are only available if Open MPI
* was configured with --enable-mpi1-compatibility.
Expand Down
15 changes: 8 additions & 7 deletions ompi/mpi/c/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,9 @@ libmpi_c_mpi_la_SOURCES = \
ialltoallv.c \
alltoallw.c \
ialltoallw.c \
attr_delete.c \
attr_get.c \
attr_put.c \
barrier.c \
ibarrier.c \
bcast.c \
Expand Down Expand Up @@ -285,6 +288,8 @@ libmpi_c_mpi_la_SOURCES = \
ineighbor_alltoallv.c \
neighbor_alltoallw.c \
ineighbor_alltoallw.c \
keyval_create.c \
keyval_free.c \
op_c2f.c \
op_commutative.c \
op_create.c \
Expand Down Expand Up @@ -431,24 +436,20 @@ libmpi_c_mpi_la_SOURCES = \
win_unlock_all.c \
win_wait.c

if OMPI_ENABLE_MPI1_COMPAT

# include all of the removed MPI functions in library
# for v4.0.x regardless of state of OMPI_ENABLE_MPI1_COMPAT
libmpi_c_mpi_la_SOURCES += \
address.c \
attr_delete.c \
attr_get.c \
attr_put.c \
errhandler_create.c \
errhandler_get.c \
errhandler_set.c \
keyval_create.c \
keyval_free.c \
type_extent.c \
type_hindexed.c \
type_hvector.c \
type_lb.c \
type_struct.c \
type_ub.c
endif

# Conditionally install the header files

Expand Down
11 changes: 11 additions & 0 deletions ompi/mpi/c/address.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,17 @@
#include "ompi_config.h"
#include <stdio.h>

/* This implementation has been removed from the MPI 3.1 standard.
* Open MPI v4.0.x is keeping the implementation in the library, but
* removing the prototypes from the headers, unless the user configures
* with --enable-mpi1-compatibility.
*
* To prevent having to port these implementations of removed functions
* to the newer MPI calls, we are defining ENABLE_MPI1_COMPAT to 1
* before including the c bindings.
*/
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/runtime/params.h"
#include "ompi/communicator/communicator.h"
Expand Down
8 changes: 2 additions & 6 deletions ompi/mpi/c/attr_fn.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
Expand Down Expand Up @@ -131,11 +133,6 @@ int OMPI_C_MPI_COMM_DUP_FN( MPI_Comm comm, int comm_keyval, void* extra_state,
return MPI_SUCCESS;
}

#if !defined(OMPI_ENABLE_MPI1_COMPAT)

#error "Need to delete the code below now that the removed functions are no longer shipping"

#elif OMPI_ENABLE_MPI1_COMPAT
int OMPI_C_MPI_NULL_DELETE_FN( MPI_Comm comm, int comm_keyval,
void* attribute_val_out,
void* extra_state )
Expand All @@ -159,4 +156,3 @@ int OMPI_C_MPI_DUP_FN( MPI_Comm comm, int comm_keyval, void* extra_state,
*(void**)attribute_val_out = attribute_val_in;
return MPI_SUCCESS;
}
#endif
6 changes: 5 additions & 1 deletion ompi/mpi/c/errhandler_create.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/communicator/communicator.h"
#include "ompi/errhandler/errhandler.h"
Expand All @@ -31,7 +35,7 @@
#define MPI_Errhandler_create PMPI_Errhandler_create
#endif

int MPI_Errhandler_create(MPI_Handler_function *function,
int MPI_Errhandler_create(MPI_Comm_errhandler_function *function,
MPI_Errhandler *errhandler)
{

Expand Down
4 changes: 4 additions & 0 deletions ompi/mpi/c/errhandler_get.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/runtime/params.h"
#include "ompi/communicator/communicator.h"
Expand Down
4 changes: 4 additions & 0 deletions ompi/mpi/c/errhandler_set.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/runtime/params.h"
#include "ompi/communicator/communicator.h"
Expand Down
14 changes: 7 additions & 7 deletions ompi/mpi/c/profile/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,9 @@ nodist_libmpi_c_pmpi_la_SOURCES = \
pialltoallv.c \
palltoallw.c \
pialltoallw.c \
pattr_delete.c \
pattr_get.c \
pattr_put.c \
pbarrier.c \
pibarrier.c \
pbcast.c \
Expand Down Expand Up @@ -265,6 +268,8 @@ nodist_libmpi_c_pmpi_la_SOURCES = \
pineighbor_alltoallv.c \
pneighbor_alltoallw.c \
pineighbor_alltoallw.c \
pkeyval_create.c \
pkeyval_free.c \
pop_c2f.c \
pop_create.c \
pop_commutative.c \
Expand Down Expand Up @@ -411,24 +416,19 @@ nodist_libmpi_c_pmpi_la_SOURCES = \
pwin_unlock_all.c \
pwin_wait.c

if OMPI_ENABLE_MPI1_COMPAT
# include all of the removed MPI functions in library
# for v4.0.x regardless of state of OMPI_ENABLE_MPI1_COMPAT
nodist_libmpi_c_pmpi_la_SOURCES += \
paddress.c \
pattr_delete.c \
pattr_get.c \
pattr_put.c \
perrhandler_create.c \
perrhandler_get.c \
perrhandler_set.c \
pkeyval_create.c \
pkeyval_free.c \
ptype_extent.c \
ptype_hindexed.c \
ptype_hvector.c \
ptype_lb.c \
ptype_struct.c \
ptype_ub.c
endif

#
# Sym link in the sources from the real MPI directory
Expand Down
4 changes: 4 additions & 0 deletions ompi/mpi/c/type_extent.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/runtime/params.h"
#include "ompi/communicator/communicator.h"
Expand Down
4 changes: 4 additions & 0 deletions ompi/mpi/c/type_hindexed.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/runtime/params.h"
#include "ompi/communicator/communicator.h"
Expand Down
4 changes: 4 additions & 0 deletions ompi/mpi/c/type_hvector.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/runtime/params.h"
#include "ompi/communicator/communicator.h"
Expand Down
4 changes: 4 additions & 0 deletions ompi/mpi/c/type_lb.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/runtime/params.h"
#include "ompi/communicator/communicator.h"
Expand Down
4 changes: 4 additions & 0 deletions ompi/mpi/c/type_struct.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"

#if OMPI_BUILD_MPI_PROFILING
Expand Down
4 changes: 4 additions & 0 deletions ompi/mpi/c/type_ub.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

#include "ompi_config.h"

/* defining ENABLE_MPI1_COMPAT to 1 for removed implementations here.
* see comments in address.c for more information. */
#define ENABLE_MPI1_COMPAT 1

#include "ompi/mpi/c/bindings.h"
#include "ompi/runtime/params.h"
#include "ompi/communicator/communicator.h"
Expand Down
15 changes: 7 additions & 8 deletions ompi/mpi/fortran/mpif-h/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,9 @@ lib@OMPI_LIBMPI_NAME@_mpifh_la_SOURCES += \
alltoall_f.c \
alltoallv_f.c \
alltoallw_f.c \
attr_delete_f.c \
attr_get_f.c \
attr_put_f.c \
barrier_f.c \
bcast_f.c \
bsend_f.c \
Expand Down Expand Up @@ -335,6 +338,8 @@ lib@OMPI_LIBMPI_NAME@_mpifh_la_SOURCES += \
iscatterv_f.c \
issend_f.c \
is_thread_main_f.c \
keyval_create_f.c \
keyval_free_f.c \
lookup_name_f.c \
mprobe_f.c \
mrecv_f.c \
Expand Down Expand Up @@ -476,26 +481,20 @@ lib@OMPI_LIBMPI_NAME@_mpifh_la_SOURCES += \
win_flush_local_f.c \
win_flush_local_all_f.c


if OMPI_ENABLE_MPI1_COMPAT
# include all of the removed MPI functions in library
# for v4.0.x regardless of state of OMPI_ENABLE_MPI1_COMPAT
lib@OMPI_LIBMPI_NAME@_mpifh_la_SOURCES += \
address_f.c \
attr_delete_f.c \
attr_get_f.c \
attr_put_f.c \
errhandler_create_f.c \
errhandler_get_f.c \
errhandler_set_f.c \
keyval_create_f.c \
keyval_free_f.c \
type_extent_f.c \
type_hindexed_f.c \
type_hvector_f.c \
type_lb_f.c \
type_struct_f.c \
type_ub_f.c
endif
endif

#
# Conditionally install the header files
Expand Down
1 change: 1 addition & 0 deletions ompi/mpi/fortran/mpif-h/address_f.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
* Copyright (c) 2011-2012 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2018 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
Expand Down
1 change: 1 addition & 0 deletions ompi/mpi/fortran/mpif-h/errhandler_create_f.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
* Copyright (c) 2008-2012 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2018 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
Expand Down
1 change: 1 addition & 0 deletions ompi/mpi/fortran/mpif-h/errhandler_get_f.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
* Copyright (c) 2011-2012 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2018 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
Expand Down
1 change: 1 addition & 0 deletions ompi/mpi/fortran/mpif-h/errhandler_set_f.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
* Copyright (c) 2008-2012 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2018 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
Expand Down
14 changes: 7 additions & 7 deletions ompi/mpi/fortran/mpif-h/profile/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,9 @@ linked_files = \
palltoall_f.c \
palltoallv_f.c \
palltoallw_f.c \
pattr_delete_f.c \
pattr_get_f.c \
pattr_put_f.c \
pbarrier_f.c \
pbcast_f.c \
pbsend_f.c \
Expand Down Expand Up @@ -251,6 +254,8 @@ linked_files = \
pisend_f.c \
pissend_f.c \
pis_thread_main_f.c \
pkeyval_create_f.c \
pkeyval_free_f.c \
plookup_name_f.c \
pmprobe_f.c \
pmrecv_f.c \
Expand Down Expand Up @@ -392,24 +397,19 @@ linked_files = \
pwin_flush_local_f.c \
pwin_flush_local_all_f.c

if OMPI_ENABLE_MPI1_COMPAT
# include all of the removed MPI functions in library
# for v4.0.x regardless of state of OMPI_ENABLE_MPI1_COMPAT
linked_files += \
paddress_f.c \
pattr_delete_f.c \
pattr_get_f.c \
pattr_put_f.c \
perrhandler_create_f.c \
perrhandler_get_f.c \
perrhandler_set_f.c \
pkeyval_create_f.c \
pkeyval_free_f.c \
ptype_extent_f.c \
ptype_hindexed_f.c \
ptype_hvector_f.c \
ptype_lb_f.c \
ptype_struct_f.c \
ptype_ub_f.c
endif

#
# Sym link in the sources from the real MPI directory
Expand Down
Loading

0 comments on commit bc58e22

Please sign in to comment.