1
1

* Fix makefile comment typo that kept libmpi.a from being built

* Fix profiling defines.h to include all functions
* Add something in comm_get_name so that linkers don't complain quite so
  much

This commit was SVN r232.
Этот коммит содержится в:
Brian Barrett 2004-01-10 23:07:38 +00:00
родитель 2b77e55d5b
Коммит 21cb912520
7 изменённых файлов: 63 добавлений и 5 удалений

Просмотреть файл

@ -24,7 +24,7 @@ lib_LTLIBRARIES = $(install_lib)
noinst_LTLIBRARIES = $(convenience_lib)
# To be added shortly
# communicator/libmpi_communicator.la \
# communicator/libmpi_communicator.la
sources = \
datatype/libmpi_datatype.la \
interface/libmpi_interface.la

Просмотреть файл

@ -2,4 +2,22 @@
* $HEADER$
*/
/* Nothing here for now -- example is in src/mpi/c/comm_set_name.c */
#include "lam_config.h"
#include <string.h>
#include "mpi.h"
#include "mpi/interface/c/bindings.h"
#include "lam/util/strncpy.h"
#include "lam/communicator.h"
#include "lam/totalview.h"
#if LAM_WANT_MPI_PROFILING && LAM_HAVE_WEAK_SYMBOLS
#pragma weak PMPI_Comm_get_name = MPI_Comm_get_name
#endif
int
MPI_Comm_get_name(MPI_Comm a, char *b, int *c)
{
return MPI_ERR_UNKNOWN;
}

Просмотреть файл

@ -13,8 +13,11 @@
#if LAM_PROFILING_DEFINES
#define MPI_Comm_set_name PMPI_Comm_set_name
#define MPI_Comm_get_name PMPI_Comm_get_name
#define MPI_Init PMPI_Init
#define MPI_Finalize PMPI_Finalize
#define MPI_Alloc_mem PMPI_Alloc_mem
#define MPI_Free_mem PMPI_Free_mem
#endif
#endif /* LAM_C_PROFILE_DEFINES_H */

Просмотреть файл

@ -23,7 +23,7 @@
#endif
void mpi_alloc_mem_(int *size, int *info, char *baseptr, int *ierr)
void mpi_alloc_mem_f(int *size, int *info, char *baseptr, int *ierr)
{
#if 0
/* JMS Need fortran -> C handle lookups, and a safe way to do the

Просмотреть файл

@ -2,4 +2,29 @@
* $HEADER$
*/
/* Nothing here for now -- example is in src/mpi/f77/comm_set_name_f.c */
#include "lam_config.h"
#include "mpi.h"
#include "mpi/interface/f77/bindings.h"
#if LAM_HAVE_WEAK_SYMBOLS
#pragma weak MPI_COMM_GET_NAME = mpi_comm_get_name_f
#pragma weak mpi_comm_get_name = mpi_comm_get_name_f
#pragma weak mpi_comm_get_name_ = mpi_comm_get_name_f
#pragma weak mpi_comm_get_name__ = mpi_comm_get_name_f
#if LAM_WANT_MPI_PROFILING
#pragma weak PMPI_COMM_GET_NAME = mpi_comm_get_name_f
#pragma weak pmpi_comm_get_name = mpi_comm_get_name_f
#pragma weak pmpi_comm_get_name_ = mpi_comm_get_name_f
#pragma weak pmpi_comm_get_name__ = mpi_comm_get_name_f
#endif
#endif
void
mpi_comm_get_name_f(int *comm, char *name, int *l, int *ierror, int charlen)
{
MPI_Comm c_comm = MPI_COMM_WORLD;
*ierror = MPI_Comm_get_name(c_comm, name, l);
}

Просмотреть файл

@ -23,7 +23,7 @@
#endif
void mpi_free_mem_(char *baseptr, int *ierr)
void mpi_free_mem_f(char *baseptr, int *ierr)
{
#if 0
/* JMS Need fortran -> C handle lookups, and a safe way to do the

Просмотреть файл

@ -16,32 +16,44 @@
*/
#if LAM_F77_CAPS
#define mpi_comm_set_name_f PMPI_COMM_SET_NAME
#define mpi_comm_get_name_f PMPI_COMM_GET_NAME
#define mpi_init_f PMPI_INIT
#define mpi_finalize_f PMPI_FINALIZE
#define mpi_alloc_mem_f PMPI_ALLOC_MEM
#define mpi_free_mem_f PMPI_FREE_MEM
/*
* Second, all lower case.
*/
#elif LAM_F77_PLAIN
#define mpi_comm_set_name_f pmpi_comm_set_name
#define mpi_comm_get_name_f pmpi_comm_get_name
#define mpi_init_f pmpi_init
#define mpi_finalize_f pmpi_finalize
#define mpi_alloc_mem_f pmpi_alloc_mem
#define mpi_free_mem_f pmpi_free_mem
/*
* Third, one trailing underscore.
*/
#elif LAM_F77_SINGLE_UNDERSCORE
#define mpi_comm_set_name_f pmpi_comm_set_name_
#define mpi_comm_get_name_f pmpi_comm_get_name_
#define mpi_init_f pmpi_init_
#define mpi_finalize_f pmpi_finalize_
#define mpi_alloc_mem_f pmpi_alloc_mem_
#define mpi_free_mem_f pmpi_free_mem_
/*
* Fourth, two trailing underscores.
*/
#elif LAM_F77_DOUBLE_UNDERSCORE
#define mpi_comm_set_name_f pmpi_comm_set_name__
#define mpi_comm_get_name_f pmpi_comm_get_name__
#define mpi_init_f pmpi_init__
#define mpi_finalize_f pmpi_finalize__
#define mpi_alloc_mem_f pmpi_alloc_mem__
#define mpi_free_mem_f pmpi_free_mem__
#endif