1
1
Gilles Gouaillardet e97d3ce645 Add missing MPI_Status conversion subroutines
Only in C bindings:
 - MPI_Status_c2f08()
 - MPI_Status_f082c()

In all bindings but mpif.h
 - MPI_Status_f082f()
 - MPI_Status_f2f08()

and the PMPI_* related subroutines

As initially inteded by the MPI forum, the Fortran to/from Fortran 2008
conversion subtoutines are *not* implemented in the mpif.h bindings.
See the discussion at https://github.com/mpi-forum/mpi-issues/issues/298

Refs. open-mpi/ompi#1475

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2020-09-09 06:59:12 -07:00

82 строки
2.4 KiB
Fortran

! -*- f90 -*-
!
! Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
! University Research and Technology
! Corporation. All rights reserved.
! Copyright (c) 2004-2005 The University of Tennessee and The University
! of Tennessee Research Foundation. All rights
! reserved.
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
! University of Stuttgart. All rights reserved.
! Copyright (c) 2004-2005 The Regents of the University of California.
! All rights reserved.
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
! Copyright (c) 2016-2020 Research Organization for Information Science
! and Technology (RIST). All rights reserved.
! $COPYRIGHT$
!
! Additional copyrights may follow
!
! $HEADER$
!
#include "ompi/mpi/fortran/configure-fortran-output.h"
module mpi
#if OMPI_FORTRAN_HAVE_TYPE_MPI_STATUS
use mpi_types
#endif
include "mpif-config.h"
include "mpif-constants.h"
include "mpif-handles.h"
include "mpif-io-constants.h"
include "mpif-io-handles.h"
include "mpif-sentinels.h"
! The MPI attribute callback functions
include "../base/attr-fn-int-callback-interfaces.h"
! The MPI_CONVERSION_FN_NULL function
include "../base/conversion-fn-null-int-interface.h"
! Functions that have overloaded interfaces with TYPE(C_PTR) (which
! this compiler may or may not support). We use an "if" preprocessor
! macro in this file, so we need to use the preprocessor include
! directive, not the Fortran include.
#include "mpi-f90-cptr-interfaces.h"
#include "pmpi-f90-cptr-interfaces.h"
#if OMPI_FORTRAN_HAVE_TYPE_MPI_STATUS
include "mpi-f90-status.h"
include "pmpi-f90-status.h"
#endif
! This file is generated, and is *huge*. Its size is directly related
! to the --with-f90-max-array-dim configure parameter.
include "mpi-f90-interfaces.h"
include "pmpi-f90-interfaces.h"
#if OMPI_PROVIDE_MPI_FILE_INTEFACE
include "mpi-f90-file-interfaces.h"
include "pmpi-f90-file-interfaces.h"
#endif
#if OMPI_FORTRAN_BUILD_SIZEOF
include "mpi-tkr-sizeof.h"
#endif
#if !defined(OMPI_ENABLE_MPI1_COMPAT)
#error "Remove MPI-1 compat code"
#elif OMPI_ENABLE_MPI1_COMPAT
include "mpi-f90-removed-interfaces.h"
include "pmpi-f90-removed-interfaces.h"
#endif
end module mpi