Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
60 changes: 39 additions & 21 deletions Makefile.ompi-rules
Original file line number Diff line number Diff line change
Expand Up @@ -8,32 +8,50 @@
# $HEADER$
#

TRIM_OPTIONS=
if ! OMPI_BUILD_MPI_CXX_BINDINGS
TRIM_OPTIONS += --nocxx
endif
if ! OMPI_BUILD_FORTRAN_MPIFH_BINDINGS
TRIM_OPTIONS += --nofortran
endif
if ! OMPI_BUILD_FORTRAN_USEMPIF08_BINDINGS
TRIM_OPTIONS += --nof08
endif

.1in.1:
@ echo " SED $@"
@ sed -e 's/#PACKAGE_NAME#/@PACKAGE_NAME@/g' \
-e 's/#PACKAGE_VERSION#/@PACKAGE_VERSION@/g' \
-e 's/#OMPI_DATE#/@OMPI_RELEASE_DATE@/g' \
-e 's/#OPAL_DATE#/@OMPI_RELEASE_DATE@/g' \
-e 's/#ORTE_DATE#/@OMPI_RELEASE_DATE@/g' \
> $@ < $<
@ echo " BUILDING $@"
@ $(top_srcdir)/ompi/mpi/man/make_manpage.pl \
--package-name='@PACKAGE_NAME@' \
--package-version='@PACKAGE_VERSION@' \
--ompi-date='@OMPI_RELEASE_DATE@' \
--opal-date='@OPAL_RELEASE_DATE@' \
--orte-date='@ORTE_RELEASE_DATE@' \
--input=$< \
--output=$@

.3in.3:
@ echo " SED $@"
@ sed -e 's/#PACKAGE_NAME#/@PACKAGE_NAME@/g' \
-e 's/#PACKAGE_VERSION#/@PACKAGE_VERSION@/g' \
-e 's/#OMPI_DATE#/@OMPI_RELEASE_DATE@/g' \
-e 's/#OPAL_DATE#/@OMPI_RELEASE_DATE@/g' \
-e 's/#ORTE_DATE#/@OMPI_RELEASE_DATE@/g' \
> $@ < $<
@ echo " BUILDING $@"
@ $(top_srcdir)/ompi/mpi/man/make_manpage.pl \
--package-name='@PACKAGE_NAME@' \
--package-version='@PACKAGE_VERSION@' \
--ompi-date='@OMPI_RELEASE_DATE@' \
--opal-date='@OPAL_RELEASE_DATE@' \
--orte-date='@ORTE_RELEASE_DATE@' \
$(TRIM_OPTIONS) \
--input=$< \
--output=$@

.7in.7:
@ echo " SED $@"
@ sed -e 's/#PACKAGE_NAME#/@PACKAGE_NAME@/g' \
-e 's/#PACKAGE_VERSION#/@PACKAGE_VERSION@/g' \
-e 's/#OMPI_DATE#/@OMPI_RELEASE_DATE@/g' \
-e 's/#OPAL_DATE#/@OMPI_RELEASE_DATE@/g' \
-e 's/#ORTE_DATE#/@OMPI_RELEASE_DATE@/g' \
> $@ < $<
@ echo " BUILDING $@"
@ $(top_srcdir)/ompi/mpi/man/make_manpage.pl \
--package-name='@PACKAGE_NAME@' \
--package-version='@PACKAGE_VERSION@' \
--ompi-date='@OMPI_RELEASE_DATE@' \
--opal-date='@OPAL_RELEASE_DATE@' \
--orte-date='@ORTE_RELEASE_DATE@' \
--input=$< \
--output=$@

# A little verbosity magic; "make" will show the terse output. "make
# V=1" will show the actual commands used (just like the other
Expand Down
2 changes: 1 addition & 1 deletion config/ompi_setup_cxx.m4
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ AC_DEFUN([OMPI_SETUP_CXX],[

_OMPI_CXX_CHECK_2D_CONST_CAST

AM_CONDITIONAL(BUILD_MPI_CXX_BINDINGS, [test "$WANT_MPI_CXX_SUPPORT" = 1])
AM_CONDITIONAL(OMPI_BUILD_MPI_CXX_BINDINGS, [test "$WANT_MPI_CXX_SUPPORT" = 1])
AC_DEFINE_UNQUOTED(OMPI_BUILD_CXX_BINDINGS, $WANT_MPI_CXX_SUPPORT,
[Whether we want MPI C++ support or not])
])
Expand Down
5 changes: 4 additions & 1 deletion ompi/mpi/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@
# Copyright (c) 2004-2005 The Regents of the University of California.
# All rights reserved.
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2015 Research Organization for Information Science
# and Technology (RIST). All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
Expand All @@ -18,6 +20,7 @@
#

EXTRA_DIST = \
mpi/fortran/configure-fortran-output-bottom.h
mpi/fortran/configure-fortran-output-bottom.h \
mpi/man/make_manpage.pl

dist_ompidata_DATA += mpi/help-mpi-api.txt
2 changes: 1 addition & 1 deletion ompi/mpi/cxx/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
# code.
AM_CPPFLAGS = -DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1

if BUILD_MPI_CXX_BINDINGS
if OMPI_BUILD_MPI_CXX_BINDINGS

mpi_lib = libmpi_cxx.la

Expand Down
82 changes: 82 additions & 0 deletions ompi/mpi/man/make_manpage.pl
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
#!/usr/bin/env perl
#
# Copyright (c) 2015 Research Organization for Information Science
# and Technology (RIST). All rights reserved.
# Copyright (c) 2015 Cisco Systems, Inc. All rights reserved.
# $COPYRIGHT$
#
# Subroutine to generate a bunch of Fortran declarations and symbols
#

use strict;

use Getopt::Long;

my $package_name;
my $package_version;
my $ompi_date;
my $opal_date;
my $orte_date;
my $cxx = '1';
my $fortran = '1';
my $f08 = '1';
my $input;
my $output;
my $help_arg = 0;

&Getopt::Long::Configure("bundling");
my $ok = Getopt::Long::GetOptions("package-name=s" => \$package_name,
"package-version=s" => \$package_version,
"ompi-date=s" => \$ompi_date,
"opal-date=s" => \$opal_date,
"orte-date=s" => \$orte_date,
"cxx!" => \$cxx,
"fortran!" => \$fortran,
"f08!" => \$f08,
"input=s" => \$input,
"output=s" => \$output);

if ($help_arg || !$ok ||
!defined($input) ||
!defined($output) ||
!defined($package_name) ||
!defined($package_version) ||
!defined($ompi_date) ||
!defined($opal_date) ||
!defined($orte_date)) {
print "Usage: $0 --package-name=<package name> --package-version=<package version> --ompi-date=<ompi date> --opal-date=<opal date> --orte-date=<orte date> --input=<input file> --output=<output file> [--nocxx] [ --nofortran] [--nof08]\n";
exit(1 - $ok);
}

open(FILE, $input) ||
die "Can't open $input";
my $file;
$file .= $_
while(<FILE>);
close(FILE);

$file =~ s/#PACKAGE_NAME#/$package_name/g;
$file =~ s/#PACKAGE_VERSION#/$package_version/g;
$file =~ s/#OMPI_DATE#/$ompi_date/g;
$file =~ s/#OPAL_DATE#/$opal_date/g;
$file =~ s/#ORTE_DATE#/$orte_date/g;

if ($cxx == 0) {
$file =~ s/\n\.SH C\+\+ Syntax.+?fi\n/\n/s;
}

if ($fortran == 0) {
$file =~ s/\n\.SH Fortran Syntax.+?fi\n/\n/s;
}

if ($f08 == 0) {
$file =~ s/\n\.SH Fortran 2008 Syntax.+?fi\n/\n/s;
}

open(FILE, ">$output") ||
die "Can't open $output";
print FILE $file;
close(FILE);

exit(0);

12 changes: 11 additions & 1 deletion ompi/mpi/man/man3/MPI_Abort.3in
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,20 @@ int MPI_Abort(MPI_Comm \fIcomm\fP, int\fI errorcode\fP)
.SH Fortran Syntax
.ft R
.nf
INCLUDE 'mpif.h'
USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_ABORT(\fICOMM\fP, \fIERRORCODE\fP, \fIIERROR\fP)
INTEGER \fICOMM\fP,\fI ERRORCODE\fP,\fI IERROR

.fi
.SH Fortran 2008 Syntax
.nf
USE mpi_f08
MPI_Abort(\fIcomm\fP, \fIerrorcode\fP, \fIierror\fP)
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
INTEGER, INTENT(IN) :: \fIerrorcode\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP

.fi
.SH C++ Syntax
.nf
Expand Down
29 changes: 28 additions & 1 deletion ompi/mpi/man/man3/MPI_Accumulate.3in
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ int MPI_Raccumulate(const void *\fIorigin_addr\fP, int \fIorigin_count\fP,
.fi
.SH Fortran Syntax (see FORTRAN 77 NOTES)
.nf
INCLUDE 'mpif.h'
USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_ACCUMULATE(\fIORIGIN_ADDR, ORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK,
TARGET_DISP, TARGET_COUNT, TARGET_DATATYPE, OP, WIN, IERROR\fP)
<type> \fIORIGIN_ADDR\fP(*)
Expand All @@ -42,6 +43,32 @@ MPI_RACCUMULATE(\fIORIGIN_ADDR, ORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK,
INTEGER \fIORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK, TARGET_COUNT,
TARGET_DATATYPE, OP, WIN, REQUEST, IERROR \fP

.fi
.SH Fortran 2008 Syntax
.nf
USE mpi_f08
MPI_Accumulate(\fIorigin_addr\fP, \fIorigin_count\fP, \fIorigin_datatype\fP, \fItarget_rank\fP,
\fItarget_disp\fP, \fItarget_count\fP, \fItarget_datatype\fP, \fIop\fP, \fIwin\fP, \fIierror\fP)
TYPE(*), DIMENSION(..), INTENT(IN), ASYNCHRONOUS :: \fIorigin_addr\fP
INTEGER, INTENT(IN) :: \fIorigin_count\fP, \fItarget_rank\fP, \fItarget_count\fP
TYPE(MPI_Datatype), INTENT(IN) :: \fIorigin_datatype\fP, \fItarget_datatype\fP
INTEGER(KIND=MPI_ADDRESS_KIND), INTENT(IN) :: \fItarget_disp\fP
TYPE(MPI_Op), INTENT(IN) :: \fIop\fP
TYPE(MPI_Win), INTENT(IN) :: \fIwin\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP

MPI_Raccumulate(\fIorigin_addr\fP, \fIorigin_count\fP, \fIorigin_datatype\fP, \fItarget_rank\fP,
\fItarget_disp\fP, \fItarget_count\fP, \fItarget_datatype\fP, \fIop\fP, \fIwin\fP, \fIrequest,\fP
\fIierror\fP)
TYPE(*), DIMENSION(..), INTENT(IN), ASYNCHRONOUS :: \fIorigin_addr\fP
INTEGER, INTENT(IN) :: \fIorigin_count\fP, \fItarget_rank\fP, \fItarget_count\fP
TYPE(MPI_Datatype), INTENT(IN) :: \fIorigin_datatype\fP, \fItarget_datatype\fP
INTEGER(KIND=MPI_ADDRESS_KIND), INTENT(IN) :: \fItarget_disp\fP
TYPE(MPI_Op), INTENT(IN) :: \fIop\fP
TYPE(MPI_Win), INTENT(IN) :: \fIwin\fP
TYPE(MPI_Request), INTENT(OUT) :: \fIrequest\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP

.fi
.SH C++ Syntax
.nf
Expand Down
11 changes: 10 additions & 1 deletion ompi/mpi/man/man3/MPI_Add_error_class.3in
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,19 @@ int MPI_Add_error_class(int *\fIerrorclass\fP)
.fi
.SH Fortran Syntax
.nf
INCLUDE 'mpif.h'
USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_ADD_ERROR_CLASS(\fIERRORCLASS, IERROR\fP)
INTEGER \fIERRORCLASS, IERROR\fP

.fi
.SH Fortran 2008 Syntax
.nf
USE mpi_f08
MPI_Add_error_class(\fIerrorclass\fP, \fIierror\fP)
INTEGER, INTENT(OUT) :: \fIerrorclass\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP

.fi
.SH C++ Syntax
.nf
Expand Down
12 changes: 11 additions & 1 deletion ompi/mpi/man/man3/MPI_Add_error_code.3in
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,20 @@ int MPI_Add_error_code(int \fIerrorclass\fP, int *\fIerrorcode\fP)
.fi
.SH Fortran Syntax
.nf
INCLUDE 'mpif.h'
USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_ADD_ERROR_CODE(\fIERRORCLASS, ERRORCODE, IERROR\fP)
INTEGER \fI ERRORCLASS, ERRORCODE, IERROR\fP

.fi
.SH Fortran 2008 Syntax
.nf
USE mpi_f08
MPI_Add_error_code(\fIerrorclass\fP, \fIerrorcode\fP, \fIierror\fP)
INTEGER, INTENT(IN) :: \fIerrorclass\fP
INTEGER, INTENT(OUT) :: \fIerrorcode\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP

.fi
.SH C++ Syntax
.nf
Expand Down
12 changes: 11 additions & 1 deletion ompi/mpi/man/man3/MPI_Add_error_string.3in
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,21 @@ int MPI_Add_error_string(int \fIerrorcode\fP, const char *\fIstring\fP)
.fi
.SH Fortran Syntax
.nf
INCLUDE 'mpif.h'
USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_ADD_ERROR_STRING(\fIERRORCODE, STRING, IERROR\fP)
INTEGER \fIERRORCODE, IERROR\fP
CHARACTER*(*) \fISTRING\fP

.fi
.SH Fortran 2008 Syntax
.nf
USE mpi_f08
MPI_Add_error_string(\fIerrorcode\fP, \fIstring\fP, \fIierror\fP)
INTEGER, INTENT(IN) :: \fIerrorcode\fP
CHARACTER(LEN=*), INTENT(IN) :: \fIstring\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP

.fi
.SH C++ Syntax
.nf
Expand Down
13 changes: 12 additions & 1 deletion ompi/mpi/man/man3/MPI_Aint_add.3in
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,18 @@ MPI_Aint MPI_Aint_diff(MPI_Aint \fIaddr1\fP, MPI_Aint \fIaddr2\fP)
.fi
.SH Fortran Syntax
.nf
INCLUDE 'mpif.h'
USE MPI
! or the older form: INCLUDE 'mpif.h'
INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_ADD(\fIBASE, DISP\fP)
INTEGER(KIND=MPI_ADDRESS_KIND) \fIBASE, DISP\fP

INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_DIFF(\fIADDR1, ADDR2\fP)
INTEGER(KIND=MPI_ADDRESS_KIND) \fIADDR1, ADDR2\fP

.fi
.SH Fortran 2008 Syntax
.nf
USE mpi_f08
INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_ADD(\fIBASE, DISP\fP)
INTEGER(KIND=MPI_ADDRESS_KIND) \fIBASE, DISP\fP

Expand Down
26 changes: 25 additions & 1 deletion ompi/mpi/man/man3/MPI_Allgather.3in
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ int MPI_Iallgather(const void\fI *sendbuf\fP, int \fI sendcount\fP,
.fi
.SH Fortran Syntax
.nf
INCLUDE 'mpif.h'
USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_ALLGATHER(\fISENDBUF\fP,\fI SENDCOUNT\fP,\fI SENDTYPE\fP,\fI RECVBUF\fP,\fI RECVCOUNT\fP,\fI
RECVTYPE\fP,\fI COMM\fP,\fI IERROR\fP)
<type> \fISENDBUF\fP (*), \fIRECVBUF\fP (*)
Expand All @@ -37,6 +38,29 @@ MPI_IALLGATHER(\fISENDBUF, SENDCOUNT, SENDTYPE, RECVBUF, RECVCOUNT,
INTEGER \fISENDCOUNT, SENDTYPE, RECVCOUNT, RECVTYPE, COMM\fP
INTEGER \fIREQUEST, IERROR\fP

.fi
.SH Fortran 2008 Syntax
.nf
USE mpi_f08
MPI_Allgather(\fIsendbuf\fP, \fIsendcount\fP, \fIsendtype\fP, \fIrecvbuf\fP, \fIrecvcount\fP, \fIrecvtype\fP,
\fIcomm\fP, \fIierror\fP)
TYPE(*), DIMENSION(..), INTENT(IN) :: \fIsendbuf\fP
TYPE(*), DIMENSION(..) :: \fIrecvbuf\fP
INTEGER, INTENT(IN) :: \fIsendcount\fP, \fIrecvcount\fP
TYPE(MPI_Datatype), INTENT(IN) :: \fIsendtype\fP, \fIrecvtype\fP
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP

MPI_Iallgather(\fIsendbuf\fP, \fIsendcount\fP, \fIsendtype\fP, \fIrecvbuf\fP, \fIrecvcount\fP, \fIrecvtype\fP,
\fIcomm\fP, \fIrequest\fP, \fIierror\fP)
TYPE(*), DIMENSION(..), INTENT(IN), ASYNCHRONOUS :: \fIsendbuf\fP
TYPE(*), DIMENSION(..), ASYNCHRONOUS :: \fIrecvbuf\fP
INTEGER, INTENT(IN) :: \fIsendcount\fP, \fIrecvcount\fP
TYPE(MPI_Datatype), INTENT(IN) :: \fIsendtype\fP, \fIrecvtype\fP
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
TYPE(MPI_Request), INTENT(OUT) :: \fIrequest\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP

.fi
.SH C++ Syntax
.nf
Expand Down
Loading