1
1

Refresh mpi.h.cmake according to the changes to mpi.h.in.

Add a few compiler flags which were missing.

This commit was SVN r20633.
Этот коммит содержится в:
Shiqing Fan 2009-02-25 12:51:29 +00:00
родитель f3ffe48edd
Коммит aa2804de75
2 изменённых файлов: 42 добавлений и 33 удалений

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

@ -5,7 +5,7 @@
* Copyright (c) 2004-2006 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights
* reserved.
* Copyright (c) 2004-2008 High Performance Computing Center Stuttgart,
* Copyright (c) 2004-2009 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.
@ -40,6 +40,9 @@
/* Define to 1 if you have the <sys/time.h> header file. */
#cmakedefine OMPI_HAVE_SYS_TIME_H 1
/* Define to 1 if you have the <sys/synch.h> header file. */
#cmakedefine OMPI_HAVE_SYS_SYNCH_H 1
/* Define to 1 if the system has the type `long long'. */
#cmakedefine OMPI_HAVE_LONG_LONG 1
@ -177,7 +180,7 @@
* MPI version
*/
#define MPI_VERSION 2
#define MPI_SUBVERSION 0
#define MPI_SUBVERSION 1
/*
* To accomodate programs written for MPI implementations that use a
@ -287,7 +290,7 @@ typedef int (MPI_Grequest_cancel_function)(void *, int);
#define MPI_ARGV_NULL ((char **) 0) /* NULL argument vector */
#define MPI_ARGVS_NULL ((char ***) 0) /* NULL argument vectors */
#define MPI_ERRCODES_IGNORE ((int *) 0) /* don't return error codes */
#define MPI_MAX_PORT_NAME 256 /* max port name length */
#define MPI_MAX_PORT_NAME 1024 /* max port name length */
#define MPI_MAX_NAME_LEN MPI_MAX_PORT_NAME /* max port name length */
#define MPI_ORDER_C 0 /* C row major order */
#define MPI_ORDER_FORTRAN 1 /* Fortran column major order */
@ -593,31 +596,35 @@ OMPI_DECLSPEC int OMPI_C_MPI_WIN_DUP_FN( MPI_Win window, int win_keyval,
void* attribute_val_out,
int* flag );
/*
* External variables
*
* The below externs use the ompi_predefined_xxx_t structures to maintain
* back compatibility between MPI library versions.
* See ompi/communicator/communicator.h comments with struct ompi_communicator_t
* for full explanation why we chose to use the ompi_predefined_xxx_t structure.
*/
OMPI_DECLSPEC extern union ompi_predefined_communicator_t ompi_mpi_comm_world;
OMPI_DECLSPEC extern union ompi_predefined_communicator_t ompi_mpi_comm_self;
OMPI_DECLSPEC extern union ompi_predefined_communicator_t ompi_mpi_comm_null;
OMPI_DECLSPEC extern struct ompi_predefined_communicator_t ompi_mpi_comm_world;
OMPI_DECLSPEC extern struct ompi_predefined_communicator_t ompi_mpi_comm_self;
OMPI_DECLSPEC extern struct ompi_predefined_communicator_t ompi_mpi_comm_null;
OMPI_DECLSPEC extern union ompi_predefined_group_t ompi_mpi_group_empty;
OMPI_DECLSPEC extern union ompi_predefined_group_t ompi_mpi_group_null;
OMPI_DECLSPEC extern struct ompi_predefined_group_t ompi_mpi_group_empty;
OMPI_DECLSPEC extern struct ompi_predefined_group_t ompi_mpi_group_null;
OMPI_DECLSPEC extern union ompi_predefined_request_t ompi_request_null;
OMPI_DECLSPEC extern struct ompi_predefined_request_t ompi_request_null;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_null;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_max, ompi_mpi_op_min;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_sum;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_prod;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_land;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_band;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_lor, ompi_mpi_op_bor;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_lxor;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_bxor;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_maxloc;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_minloc;
OMPI_DECLSPEC extern union ompi_predefined_op_t ompi_mpi_op_replace;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_null;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_max, ompi_mpi_op_min;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_sum;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_prod;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_land;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_band;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_lor, ompi_mpi_op_bor;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_lxor;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_bxor;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_maxloc;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_minloc;
OMPI_DECLSPEC extern struct ompi_predefined_op_t ompi_mpi_op_replace;
OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_char, ompi_mpi_byte;
OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_int, ompi_mpi_logic;
@ -694,14 +701,14 @@ OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_complex16;
OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_complex32;
#endif
OMPI_DECLSPEC extern union ompi_predefined_errhandler_t ompi_mpi_errhandler_null;
OMPI_DECLSPEC extern union ompi_predefined_errhandler_t ompi_mpi_errors_are_fatal;
OMPI_DECLSPEC extern union ompi_predefined_errhandler_t ompi_mpi_errors_return;
OMPI_DECLSPEC extern struct ompi_predefined_errhandler_t ompi_mpi_errhandler_null;
OMPI_DECLSPEC extern struct ompi_predefined_errhandler_t ompi_mpi_errors_are_fatal;
OMPI_DECLSPEC extern struct ompi_predefined_errhandler_t ompi_mpi_errors_return;
OMPI_DECLSPEC extern union ompi_predefined_win_t ompi_mpi_win_null;
OMPI_DECLSPEC extern union ompi_predefined_file_t ompi_mpi_file_null;
OMPI_DECLSPEC extern struct ompi_predefined_win_t ompi_mpi_win_null;
OMPI_DECLSPEC extern struct ompi_predefined_file_t ompi_mpi_file_null;
OMPI_DECLSPEC extern union ompi_predefined_info_t ompi_mpi_info_null;
OMPI_DECLSPEC extern struct ompi_predefined_info_t ompi_mpi_info_null;
OMPI_DECLSPEC extern MPI_Fint *MPI_F_STATUS_IGNORE;
OMPI_DECLSPEC extern MPI_Fint *MPI_F_STATUSES_IGNORE;
@ -1663,8 +1670,8 @@ OMPI_DECLSPEC int PMPI_Recv(void *buf, int count, MPI_Datatype datatype, int so
int tag, MPI_Comm comm, MPI_Status *status);
OMPI_DECLSPEC int PMPI_Reduce(void *sendbuf, void *recvbuf, int count,
MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm);
OMPI_DECLSPEC int PMPI_Reduce_local(void *inbuf, void *inoutbuf, int count,
MPI_Datatype datatype, MPI_Op);
OMPI_DECLSPEC int PMPI_Reduce_local(void *inbuf, void *inoutbuf, int count,
MPI_Datatype datatype, MPI_Op);
OMPI_DECLSPEC int PMPI_Reduce_scatter(void *sendbuf, void *recvbuf, int *recvcounts,
MPI_Datatype datatype, MPI_Op op, MPI_Comm comm);
OMPI_DECLSPEC int PMPI_Register_datarep(char *datarep,

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

@ -1,4 +1,4 @@
# Copyright (c) 2007-2008 High Performance Computing Center Stuttgart,
# Copyright (c) 2007-2009 High Performance Computing Center Stuttgart,
# University of Stuttgart. All rights reserved.
# Copyright (c) 2008 The University of Tennessee and The University
# of Tennessee Research Foundation. All rights
@ -15,7 +15,8 @@ ADD_SUBDIRECTORY(ompi-server)
SET(OMPI_WRAPPER_EXTRA_LIBS "advapi32.lib Ws2_32.lib shlwapi.lib")
GET_FILENAME_COMPONENT(CC "${CL_EXE}" NAME)
SET(OMPI_WRAPPER_EXTRA_CFLAGS "/MDd /TC")
SET(OMPI_WRAPPER_EXTRA_CFLAGS
"/MDd /TC /D \"OMPI_IMPORTS\" /D \"OPAL_IMPORTS\" /D \"ORTE_IMPORTS\"")
CONFIGURE_FILE(${OpenMPI_SOURCE_DIR}/contrib/platform/win32/ConfigFiles/mpicc-wrapper-data.txt.cmake
${OMPI_BINARY_DIR}/tools/wrappers/mpicc-wrapper-data.txt @ONLY)
@ -28,7 +29,8 @@ INSTALL(FILES ${OMPI_BINARY_DIR}/tools/wrappers/mpicc.exe-wrapper-data.txt
IF(OMPI_WANT_CXX_BINDINGS)
GET_FILENAME_COMPONENT(CXX "${CL_EXE}" NAME)
SET(OMPI_WRAPPER_EXTRA_CXXFLAGS "/MDd /TP /EHsc")
SET(OMPI_WRAPPER_EXTRA_CXXFLAGS
"/MDd /TP /EHsc /D \"OMPI_IMPORTS\" /D \"OPAL_IMPORTS\" /D \"ORTE_IMPORTS\"")
SET(OMPI_WRAPPER_CXX_LIB "libmpi_cxx.lib")
CONFIGURE_FILE(${OpenMPI_SOURCE_DIR}/contrib/platform/win32/ConfigFiles/mpic++-wrapper-data.txt.cmake
${OMPI_BINARY_DIR}/tools/wrappers/mpic++-wrapper-data.txt @ONLY)