1
1

* s/f77/fortran/gi in a lot of places

* Remove unused #defines in mpi.h.in
 * Add OMPI_PARAM_CHECK in mpi.h.in (so that we can check for it in tests)
 * Clean up some comments in mpif-common.h

This commit was SVN r26347.
Этот коммит содержится в:
Jeff Squyres 2012-04-27 01:09:37 +00:00
родитель 38af7db183
Коммит 245812c34b
12 изменённых файлов: 50 добавлений и 50 удалений

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

@ -95,15 +95,15 @@ ELSE(OMPI_ENABLE_MPI_PROFILING)
ENDIF(OMPI_ENABLE_MPI_PROFILING) ENDIF(OMPI_ENABLE_MPI_PROFILING)
IF(OMPI_WANT_F77_BINDINGS) IF(OMPI_WANT_MPIFH_BINDINGS)
# A handful of files in mpi/f77/base must be included in libmpi, in order to build the # A handful of files in mpi/fortran/base must be included in libmpi, in order to build the
# Fortran 77 glue into libmpi # Fortran 77 glue into libmpi
FILE(GLOB OMPI_F77_BASE_FILES "mpi/f77/base/*.c") FILE(GLOB OMPI_FORTRAN_BASE_FILES "mpi/fortran/base/*.c")
SET_SOURCE_FILES_PROPERTIES(${OMPI_F77_BASE_FILES} SET_SOURCE_FILES_PROPERTIES(${OMPI_FORTRAN_BASE_FILES}
PROPERTIES COMPILE_FLAGS "${OMPI_C_DEF_PRE}OMPI_COMPILING_F77_WRAPPERS=1 ${OMPI_C_DEF_PRE}OMPI_PROFILE_LAYER=0") PROPERTIES COMPILE_FLAGS "${OMPI_C_DEF_PRE}OMPI_COMPILING_FORTRAN_WRAPPERS=1 ${OMPI_C_DEF_PRE}OMPI_PROFILE_LAYER=0")
SET(OMPI_SOURCE_FILES ${OMPI_SOURCE_FILES} ${OMPI_F77_BASE_FILES}) SET(OMPI_SOURCE_FILES ${OMPI_SOURCE_FILES} ${OMPI_FORTRAN_BASE_FILES})
SOURCE_GROUP(mpi\\f77\\base FILES ${OMPI_F77_BASE_FILES}) SOURCE_GROUP(mpi\\fortran\\base FILES ${OMPI_FORTRAN_BASE_FILES})
ENDIF(OMPI_WANT_F77_BINDINGS) ENDIF(OMPI_WANT_FORTRAN_BINDINGS)
#configure ompi extension components #configure ompi extension components
INCLUDE (ompi_ext_config) INCLUDE (ompi_ext_config)
@ -156,13 +156,13 @@ IF (OMPI_DEBUG_BUILD AND WINDOWS_VS)
DESTINATION bin) DESTINATION bin)
ENDIF (OMPI_DEBUG_BUILD AND WINDOWS_VS) ENDIF (OMPI_DEBUG_BUILD AND WINDOWS_VS)
IF(OMPI_WANT_F77_BINDINGS) IF(OMPI_WANT_FORTRAN_BINDINGS)
INSTALL(FILES ${PROJECT_BINARY_DIR}/include/mpif.h INSTALL(FILES ${PROJECT_BINARY_DIR}/include/mpif.h
${PROJECT_BINARY_DIR}/include/mpif-config.h ${PROJECT_BINARY_DIR}/include/mpif-config.h
${PROJECT_SOURCE_DIR}/include/mpif-common.h ${PROJECT_SOURCE_DIR}/include/mpif-common.h
${PROJECT_SOURCE_DIR}/include/mpif-mpi-io.h ${PROJECT_SOURCE_DIR}/include/mpif-mpi-io.h
DESTINATION include) DESTINATION include)
ENDIF(OMPI_WANT_F77_BINDINGS) ENDIF(OMPI_WANT_FORTRAN_BINDINGS)
INSTALL(FILES ${PROJECT_SOURCE_DIR}/runtime/help-mpi-runtime.txt ${PROJECT_SOURCE_DIR}/mpi/help-mpi-api.txt INSTALL(FILES ${PROJECT_SOURCE_DIR}/runtime/help-mpi-runtime.txt ${PROJECT_SOURCE_DIR}/mpi/help-mpi-api.txt
DESTINATION share/openmpi) DESTINATION share/openmpi)

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

@ -178,13 +178,16 @@ mpi_param_check=ompi_mpi_param_check
if test "$with_mpi_param_check" = "no" -o \ if test "$with_mpi_param_check" = "no" -o \
"$with_mpi_param_check" = "never"; then "$with_mpi_param_check" = "never"; then
mpi_param_check=0 mpi_param_check=0
ompi_param_check=0
AC_MSG_RESULT([never]) AC_MSG_RESULT([never])
elif test "$with_mpi_param_check" = "yes" -o \ elif test "$with_mpi_param_check" = "yes" -o \
"$with_mpi_param_check" = "always"; then "$with_mpi_param_check" = "always"; then
mpi_param_check=1 mpi_param_check=1
ompi_param_check=1
AC_MSG_RESULT([always]) AC_MSG_RESULT([always])
elif test "$with_mpi_param_check" = "runtime" -o \ elif test "$with_mpi_param_check" = "runtime" -o \
-z "$with_mpi_params_check"; then -z "$with_mpi_params_check"; then
ompi_param_check=1
AC_MSG_RESULT([runtime]) AC_MSG_RESULT([runtime])
else else
AC_MSG_RESULT([unknown]) AC_MSG_RESULT([unknown])
@ -194,7 +197,8 @@ else
fi fi
AC_DEFINE_UNQUOTED(MPI_PARAM_CHECK, $mpi_param_check, AC_DEFINE_UNQUOTED(MPI_PARAM_CHECK, $mpi_param_check,
[Whether we want to check MPI parameters always, never, or decide at run-time]) [Whether we want to check MPI parameters always, never, or decide at run-time])
AC_DEFINE_UNQUOTED(OMPI_PARAM_CHECK, $ompi_param_check,
[Whether we want to check MPI parameters never or possible (an integer constant)])
# #
# Do we want the prototype "use mpi_f08" implementation that uses # Do we want the prototype "use mpi_f08" implementation that uses

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

@ -156,11 +156,8 @@
/* Whether a const_cast on a 2-d array will work with the C++ compiler */ /* Whether a const_cast on a 2-d array will work with the C++ compiler */
#undef OMPI_CXX_SUPPORTS_2D_CONST_CAST #undef OMPI_CXX_SUPPORTS_2D_CONST_CAST
/* Whether we want the MPI f77 bindings or not */ /* Whether OMPI was built with parameter checking or not */
#undef OMPI_WANT_F77_BINDINGS #undef OMPI_PARAM_CHECK
/* Whether we want the MPI f90 bindings or not */
#undef OMPI_WANT_F90_BINDINGS
/* Enable warnings in wrong usage (e.g. deprecated) in user-level code */ /* Enable warnings in wrong usage (e.g. deprecated) in user-level code */
/* XXX This __disabled__ by default for Open MPI-1.5, but will be __enabled__ for Open MPI-1.7 by default */ /* XXX This __disabled__ by default for Open MPI-1.5, but will be __enabled__ for Open MPI-1.7 by default */
@ -662,7 +659,7 @@ enum {
compiled as MPI_TYPE_NULL_DELETE_FN). So add some #if kinds of compiled as MPI_TYPE_NULL_DELETE_FN). So add some #if kinds of
protection for this case. */ protection for this case. */
#if !defined(OMPI_COMPILING_F77_WRAPPERS) #if !defined(OMPI_COMPILING_FORTRAN_WRAPPERS)
#define MPI_NULL_DELETE_FN OMPI_C_MPI_NULL_DELETE_FN #define MPI_NULL_DELETE_FN OMPI_C_MPI_NULL_DELETE_FN
#define MPI_NULL_COPY_FN OMPI_C_MPI_NULL_COPY_FN #define MPI_NULL_COPY_FN OMPI_C_MPI_NULL_COPY_FN
#define MPI_DUP_FN OMPI_C_MPI_DUP_FN #define MPI_DUP_FN OMPI_C_MPI_DUP_FN

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

@ -27,16 +27,16 @@
! tells the compiler where to find .h files (specifically, this one). For ! tells the compiler where to find .h files (specifically, this one). For
! example: ! example:
! !
! shell$ mpif77 foo.f -o foo -I$OMPI_HOME/include ! shell$ mpifort foo.f -o foo -I$OMPI_HOME/include
! !
! will probably do the trick (assuming that you have set OMPI_HOME ! will probably do the trick (assuming that you have set OMPI_HOME
! properly). ! properly).
! !
! That being said, OMPI's "mpif77" wrapper compiler should ! That being said, OMPI's "mpifort" wrapper compiler should
! automatically include the -I option for you. The following command ! automatically include the -I option for you. The following command
! should be equivalent to the command listed above: ! should be equivalent to the command listed above:
! !
! shell$ mpif77 foo.f -o foo ! shell$ mpifort foo.f -o foo
! !
! You should not copy this file to your local directory because it is ! You should not copy this file to your local directory because it is
! possible that this file will be changed between versions of Open MPI. ! possible that this file will be changed between versions of Open MPI.
@ -45,7 +45,7 @@
! of MPI, or with other versions of Open MPI will result in undefined ! of MPI, or with other versions of Open MPI will result in undefined
! behavior (to include incorrect results, segmentation faults, ! behavior (to include incorrect results, segmentation faults,
! unexplainable "hanging" in your application, etc.). Always use the ! unexplainable "hanging" in your application, etc.). Always use the
! -I command line option instead (or let mpif77 do it for you). ! -I command line option instead (or let mpifort do it for you).
! !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING ! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
@ -59,9 +59,9 @@
include 'mpif-common.h' include 'mpif-common.h'
! !
! These "external" statements are specific to the MPI F77 interface ! These "external" statements are specific to the MPI mpif.h interface
! (and are toxic to the MPI F90 interface), and are therefore in the ! (and are toxic to the MPI F90 interface), and are therefore in the
! MPI F77-specific header file (i.e., this one). ! MPI Fortran-specific header file (i.e., this one).
! !
external MPI_NULL_COPY_FN, MPI_NULL_DELETE_FN external MPI_NULL_COPY_FN, MPI_NULL_DELETE_FN
external MPI_COMM_NULL_COPY_FN, MPI_COMM_NULL_DELETE_FN external MPI_COMM_NULL_COPY_FN, MPI_COMM_NULL_DELETE_FN

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

@ -32,7 +32,7 @@ noinst_LTLIBRARIES += libmpi_fortran_base.la
# unfortunately can't just suck the sources into the larger libmpi.la. # unfortunately can't just suck the sources into the larger libmpi.la.
libmpi_fortran_base_la_CPPFLAGS = \ libmpi_fortran_base_la_CPPFLAGS = \
-DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_F77_WRAPPERS=1 -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
libmpi_fortran_base_la_SOURCES = \ libmpi_fortran_base_la_SOURCES = \
constants.h \ constants.h \
datarep.h \ datarep.h \

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

@ -8,26 +8,25 @@
# $HEADER$ # $HEADER$
# #
FILE(GLOB OMPI_F77_FILES "*.c") FILE(GLOB OMPI_FORTRAN_FILES "*.c")
FILE(GLOB OMPI_F77_HEADER_FILES "*.h") FILE(GLOB OMPI_FORTRAN_HEADER_FILES "*.h")
# Remove all MPI_File related files if the option is not selected # Remove all MPI_File related files if the option is not selected
IF (NOT OMPI_PROVIDE_MPI_FILE_INTERFACE) IF (NOT OMPI_PROVIDE_MPI_FILE_INTERFACE)
MESSAGE( STATUS "Skipping the MPI I/O interface") MESSAGE( STATUS "Skipping the MPI I/O interface")
SET( TMP_SRC "" ) SET( TMP_SRC "" )
FOREACH ( FILENAME ${OMPI_F77_FILES}) FOREACH ( FILENAME ${OMPI_FORTRAN_FILES})
GET_FILENAME_COMPONENT(relname ${FILENAME} NAME) GET_FILENAME_COMPONENT(relname ${FILENAME} NAME)
IF (NOT ${relname} MATCHES "file.*[ch]$") IF (NOT ${relname} MATCHES "file.*[ch]$")
IF (NOT ${relname} STREQUAL "register_datarep.c") IF (NOT ${relname} STREQUAL "register_datarep.c")
LIST(APPEND TMP_SRC ${FILENAME}) LIST(APPEND TMP_SRC ${FILENAME})
ENDIF (NOT ${relname} STREQUAL "register_datarep.c") ENDIF (NOT ${relname} STREQUAL "register_datarep.c")
ENDIF(NOT ${relname} MATCHES "file.*[ch]$") ENDIF(NOT ${relname} MATCHES "file.*[ch]$") ENDFOREACH(FILENAME ${OMPI_FORTRAN_FILES})
ENDFOREACH(FILENAME ${OMPI_F77_FILES}) SET( OMPI_FORTRAN_FILES ${TMP_SRC})
SET( OMPI_F77_FILES ${TMP_SRC})
ENDIF(NOT OMPI_PROVIDE_MPI_FILE_INTERFACE) ENDIF(NOT OMPI_PROVIDE_MPI_FILE_INTERFACE)
SET_SOURCE_FILES_PROPERTIES(${OMPI_F77_FILES} PROPERTIES SET_SOURCE_FILES_PROPERTIES(${OMPI_FORTRAN_FILES} PROPERTIES
COMPILE_FLAGS "${OMPI_C_DEF_PRE}OMPI_PROFILE_LAYER=0 ${OMPI_C_DEF_PRE}OMPI_COMPILING_F77_WRAPPERS=1") COMPILE_FLAGS "${OMPI_C_DEF_PRE}OMPI_PROFILE_LAYER=0 ${OMPI_C_DEF_PRE}OMPI_COMPILING_FORTRAN_WRAPPERS=1")
IF(OMPI_ENABLE_MPI_PROFILING) IF(OMPI_ENABLE_MPI_PROFILING)
# As weak symbols are not supported by MS compiler, # As weak symbols are not supported by MS compiler,
@ -35,27 +34,27 @@ IF(OMPI_ENABLE_MPI_PROFILING)
# i.e. add the pre-processor "OMPI_PROFILING_DEFINES" explicitly. # i.e. add the pre-processor "OMPI_PROFILING_DEFINES" explicitly.
# copy the files to the build directory with a prefix. # copy the files to the build directory with a prefix.
FOREACH(FILE_NAME ${OMPI_F77_FILES}) FOREACH(FILE_NAME ${OMPI_FORTRAN_FILES})
GET_FILENAME_COMPONENT(relname ${FILE_NAME} NAME) GET_FILENAME_COMPONENT(relname ${FILE_NAME} NAME)
CONFIGURE_FILE(${FILE_NAME} CONFIGURE_FILE(${FILE_NAME}
${PROJECT_BINARY_DIR}/profile/p${relname} [COPYONLY]) ${PROJECT_BINARY_DIR}/profile/p${relname} [COPYONLY])
ENDFOREACH(FILE_NAME ${OMPI_F77_FILES}) ENDFOREACH(FILE_NAME ${OMPI_FORTRAN_FILES})
FILE(GLOB OMPI_F77_PROFILE_FILES "${PROJECT_BINARY_DIR}/profile/*.c" ) FILE(GLOB OMPI_FORTRAN_PROFILE_FILES "${PROJECT_BINARY_DIR}/profile/*.c" )
SET_SOURCE_FILES_PROPERTIES(${OMPI_F77_PROFILE_FILES} PROPERTIES SET_SOURCE_FILES_PROPERTIES(${OMPI_FORTRAN_PROFILE_FILES} PROPERTIES
COMPILE_FLAGS "${OMPI_C_DEF_PRE}OMPI_PROFILE_LAYER=1 ${OMPI_C_DEF_PRE}OMPI_COMPILING_F77_WRAPPERS=1") COMPILE_FLAGS "${OMPI_C_DEF_PRE}OMPI_PROFILE_LAYER=1 ${OMPI_C_DEF_PRE}OMPI_COMPILING_FORTRAN_WRAPPERS=1")
SET(OMPI_F77_FILES ${OMPI_F77_FILES} ${OMPI_F77_PROFILE_FILES}) SET(OMPI_FORTRAN_FILES ${OMPI_FORTRAN_FILES} ${OMPI_FORTRAN_PROFILE_FILES})
SOURCE_GROUP(profile FILES ${OMPI_F77_PROFILE_FILES}) SOURCE_GROUP(profile FILES ${OMPI_FORTRAN_PROFILE_FILES})
ELSE(OMPI_ENABLE_MPI_PROFILING) ELSE(OMPI_ENABLE_MPI_PROFILING)
MESSAGE( STATUS "Skipping the MPI profiling interface") MESSAGE( STATUS "Skipping the MPI profiling interface")
ENDIF(OMPI_ENABLE_MPI_PROFILING) ENDIF(OMPI_ENABLE_MPI_PROFILING)
ADD_LIBRARY(libmpi_f77 ${OMPI_F77_FILES} ${OMPI_F77_HEADER_FILES}) ADD_LIBRARY(libmpi_fortran ${OMPI_FORTRAN_FILES} ${OMPI_FORTRAN_HEADER_FILES})
TARGET_LINK_LIBRARIES(libmpi_f77 libmpi) TARGET_LINK_LIBRARIES(libmpi_mpifh libmpi)
IF(BUILD_SHARED_LIBS) IF(BUILD_SHARED_LIBS)
ADD_DEFINITIONS(${OMPI_C_DEF_PRE}_USRDLL ${OMPI_C_DEF_PRE}OPAL_IMPORTS ADD_DEFINITIONS(${OMPI_C_DEF_PRE}_USRDLL ${OMPI_C_DEF_PRE}OPAL_IMPORTS
@ -64,12 +63,12 @@ ELSE(BUILD_SHARED_LIBS)
ADD_DEFINITIONS(${OMPI_C_DEF_PRE}_LIB) ADD_DEFINITIONS(${OMPI_C_DEF_PRE}_LIB)
ENDIF(BUILD_SHARED_LIBS) ENDIF(BUILD_SHARED_LIBS)
INSTALL(TARGETS libmpi_f77 INSTALL(TARGETS libmpi_mpifh
RUNTIME DESTINATION bin RUNTIME DESTINATION bin
LIBRARY DESTINATION lib LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib) ARCHIVE DESTINATION lib)
IF (OMPI_DEBUG_BUILD AND WINDOWS_VS) IF (OMPI_DEBUG_BUILD AND WINDOWS_VS)
INSTALL(FILES ${OpenMPI_BINARY_DIR}/Debug/libmpi_f77${CMAKE_DEBUG_POSTFIX}.pdb INSTALL(FILES ${OpenMPI_BINARY_DIR}/Debug/libmpi_mpifh{CMAKE_DEBUG_POSTFIX}.pdb
DESTINATION bin) DESTINATION bin)
ENDIF (OMPI_DEBUG_BUILD AND WINDOWS_VS) ENDIF (OMPI_DEBUG_BUILD AND WINDOWS_VS)

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

@ -29,7 +29,7 @@ SUBDIRS = profile
# we need it to be 0 # we need it to be 0
# #
AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_F77_WRAPPERS=1 AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
# The top directory only builds MPI_* bindings and some support # The top directory only builds MPI_* bindings and some support
# glue. The bottom directory only builds PMPI_* bindings. Each # glue. The bottom directory only builds PMPI_* bindings. Each

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

@ -26,7 +26,7 @@
# replaces all MPI_* symbols with PMPI_* symbols. In this directory # replaces all MPI_* symbols with PMPI_* symbols. In this directory
# we definately need it to be 1. # we definately need it to be 1.
# #
AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=1 -DOMPI_COMPILING_F77_WRAPPERS=1 AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=1 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
# #
# This build needs to go through only if profiling is required. # This build needs to go through only if profiling is required.
# Further, this build HAS to go through if profiling is required. # Further, this build HAS to go through if profiling is required.

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

@ -15,7 +15,7 @@
# We must set these #defines so that the inner OMPI MPI prototype # We must set these #defines so that the inner OMPI MPI prototype
# header files do the Right Thing. # header files do the Right Thing.
AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_MPIFH_WRAPPERS=1 AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
include $(top_srcdir)/Makefile.man-page-rules include $(top_srcdir)/Makefile.man-page-rules

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

@ -15,7 +15,7 @@
# We must set these #defines so that the inner OMPI MPI prototype # We must set these #defines so that the inner OMPI MPI prototype
# header files do the Right Thing. # header files do the Right Thing.
AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_MPIFH_WRAPPERS=1 AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
# Convenience libtool library that will be slurped up into libmpi.la. # Convenience libtool library that will be slurped up into libmpi.la.
noinst_LTLIBRARIES = libmpiext_cr_c.la noinst_LTLIBRARIES = libmpiext_cr_c.la

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

@ -16,7 +16,7 @@
# We must set these #defines so that the inner OMPI MPI prototype # We must set these #defines so that the inner OMPI MPI prototype
# header files do the Right Thing. # header files do the Right Thing.
AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_MPIFH_WRAPPERS=1 AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
# Convenience libtool library that will be slurped up into libmpi.la. # Convenience libtool library that will be slurped up into libmpi.la.
noinst_LTLIBRARIES = libmpiext_example_c.la noinst_LTLIBRARIES = libmpiext_example_c.la

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

@ -16,7 +16,7 @@
# We must set these #defines so that the inner OMPI MPI prototype # We must set these #defines so that the inner OMPI MPI prototype
# header files do the Right Thing. # header files do the Right Thing.
AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_F77_WRAPPERS=1 AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
# Note that the mpif.h-based bindings are optional -- they can only be # Note that the mpif.h-based bindings are optional -- they can only be
# built if OMPI is also building the Fortran-based bindings. So we # built if OMPI is also building the Fortran-based bindings. So we