1
1

Add support for ompi_ext on Windows.

This commit was SVN r23632.
Этот коммит содержится в:
Shiqing Fan 2010-08-23 13:16:30 +00:00
родитель c110edbf44
Коммит 7a301bc417
4 изменённых файлов: 60 добавлений и 1 удалений

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

@ -82,6 +82,7 @@ EXTRA_DIST = \
platform/win32/CMakeModules/check_mca_subdirs.cmake \
platform/win32/CMakeModules/ompi_base_checks.cmake \
platform/win32/CMakeModules/ompi_define.cmake \
platform/win32/CMakeModules/ompi_ext_config.cmake \
platform/win32/CMakeModules/f77_check.cmake \
platform/win32/CMakeModules/f77_check_real16_c_equiv.cmake \
platform/win32/CMakeModules/f77_check_type.cmake \

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

@ -181,7 +181,7 @@ OPAL_WITH_OPTION_MIN_MAX_VALUE(port_name 1024 255 2048)
OPAL_WITH_OPTION_MIN_MAX_VALUE(datarep_string 128 64 256)
OMPI_DEF_CACHE_VAR(OMPI_EXT_COMPONENTS Example STRING "Specify user defined MPI Extended Interface Components. (not implemented on Windows)" 1 1)
OMPI_DEF_CACHE_VAR(OMPI_MPIEXT_COMPONENTS none STRING "Specify user defined MPI Extended Interface Components." 1 1)
OMPI_DEF_OPT(MCA_mtl_DIRECT_CALL "Whether mtl should use direct calls instead of components." OFF)

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

@ -0,0 +1,55 @@
# Copyright (c) 2010 High Performance Computing Center Stuttgart,
# University of Stuttgart. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
#
# $HEADER$
#
FILE(GLOB OMPI_EXT_BASE_FILES ${PROJECT_SOURCE_DIR}/mpiext/*.h ${PROJECT_SOURCE_DIR}/mpiext/*.c)
SOURCE_GROUP(mpiext FILES ${OMPI_EXT_BASE_FILES})
SET(OMPI_EXT_FILES ${OMPI_EXT_FILES} ${OMPI_EXT_BASE_FILES})
CHECK_SUBDIRS("${PROJECT_SOURCE_DIR}/mpiext" OMPI_EXT_SUBDIRS)
FOREACH(OMPI_MPIEXT_COMPONENT ${OMPI_MPIEXT_COMPONENTS})
LIST(FIND OMPI_EXT_SUBDIRS ${OMPI_MPIEXT_COMPONENT} VALID_COMPONENT)
message("${OMPI_EXT_SUBDIRS} ${OMPI_MPIEXT_COMPONENT} ${VALID_COMPONENT}")
IF(NOT VALID_COMPONENT EQUAL -1)
FILE(GLOB ${OMPI_MPIEXT_COMPONENT}_FILES
${PROJECT_SOURCE_DIR}/mpiext/${OMPI_MPIEXT_COMPONENT}/*.h ${PROJECT_SOURCE_DIR}/mpiext/${OMPI_MPIEXT_COMPONENT}/*.c)
SOURCE_GROUP(mpiext\\${OMPI_MPIEXT_COMPONENT} FILES ${${OMPI_MPIEXT_COMPONENT}_FILES})
FILE(GLOB ${OMPI_MPIEXT_COMPONENT}_C_FILES
${PROJECT_SOURCE_DIR}/mpiext/${OMPI_MPIEXT_COMPONENT}/c/*.h ${PROJECT_SOURCE_DIR}/mpiext/${OMPI_MPIEXT_COMPONENT}/c/*.c)
SOURCE_GROUP(mpiext\\${OMPI_MPIEXT_COMPONENT}\\c FILES ${${OMPI_MPIEXT_COMPONENT}_C_FILES})
SET(OMPI_EXT_FILES ${OMPI_EXT_FILES} ${${OMPI_MPIEXT_COMPONENT}_FILES} ${${OMPI_MPIEXT_COMPONENT}_C_FILES})
ENDIF(NOT VALID_COMPONENT EQUAL -1)
ENDFOREACH(OMPI_MPIEXT_COMPONENT ${OMPI_MPIEXT_COMPONENTS})
# write out static-component.h for this mca.
FILE(WRITE "${PROJECT_BINARY_DIR}/mpiext/static-components.h"
"/*
* $HEADER$
*/
#if defined(c_plusplus) || defined(__cplusplus)
extern \"C\" {
#endif
const ompi_mpiext_component_t *ompi_mpiext_components[] = {
NULL
};
#if defined(c_plusplus) || defined(__cplusplus)
}
#endif
")

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

@ -111,6 +111,9 @@ IF(OMPI_WANT_F77_BINDINGS)
SOURCE_GROUP(mpi\\f77\\base FILES ${OMPI_F77_BASE_FILES})
ENDIF(OMPI_WANT_F77_BINDINGS)
#configure ompi extension components
INCLUDE (ompi_ext_config)
SET (OMPI_SOURCE_FILES ${OMPI_SOURCE_FILES} ${OMPI_EXT_FILES})
INCLUDE (check_mca_subdirs)
SET (OMPI_SOURCE_FILES ${OMPI_SOURCE_FILES} ${MCA_FILES})