* add --with-platform=FILE argument to configure, which can be used to
load a set of arguments to build OMPI. So you can do something like: ./configure --with-platform=redstorm and automagically have all 10,000 arguments to configure required for Red Storm magically set * change all instances of sinclude to m4_include so that autogen will properly fail if an .m4 file isn't included properly This commit was SVN r6648.
Этот коммит содержится в:
родитель
29465f0f28
Коммит
c02cfd6dd1
113
acinclude.m4
113
acinclude.m4
@ -20,71 +20,72 @@ dnl
|
|||||||
# Open MPI-specific tests
|
# Open MPI-specific tests
|
||||||
#
|
#
|
||||||
|
|
||||||
sinclude(config/c_get_alignment.m4)
|
m4_include(config/c_get_alignment.m4)
|
||||||
sinclude(config/c_weak_symbols.m4)
|
m4_include(config/c_weak_symbols.m4)
|
||||||
|
|
||||||
sinclude(config/cxx_find_template_parameters.m4)
|
m4_include(config/cxx_find_template_parameters.m4)
|
||||||
sinclude(config/cxx_find_template_repository.m4)
|
m4_include(config/cxx_find_template_repository.m4)
|
||||||
sinclude(config/cxx_have_exceptions.m4)
|
m4_include(config/cxx_have_exceptions.m4)
|
||||||
sinclude(config/cxx_find_exception_flags.m4)
|
m4_include(config/cxx_find_exception_flags.m4)
|
||||||
|
|
||||||
sinclude(config/f77_check.m4)
|
m4_include(config/f77_check.m4)
|
||||||
sinclude(config/f77_check_type.m4)
|
m4_include(config/f77_check_type.m4)
|
||||||
sinclude(config/f77_find_ext_symbol_convention.m4)
|
m4_include(config/f77_find_ext_symbol_convention.m4)
|
||||||
sinclude(config/f77_get_alignment.m4)
|
m4_include(config/f77_get_alignment.m4)
|
||||||
sinclude(config/f77_get_fortran_handle_max.m4)
|
m4_include(config/f77_get_fortran_handle_max.m4)
|
||||||
sinclude(config/f77_get_sizeof.m4)
|
m4_include(config/f77_get_sizeof.m4)
|
||||||
sinclude(config/f77_purge_unsupported_kind.m4)
|
m4_include(config/f77_purge_unsupported_kind.m4)
|
||||||
|
|
||||||
sinclude(config/f90_check_type.m4)
|
m4_include(config/f90_check_type.m4)
|
||||||
sinclude(config/f90_find_module_include_flag.m4)
|
m4_include(config/f90_find_module_include_flag.m4)
|
||||||
sinclude(config/f90_get_alignment.m4)
|
m4_include(config/f90_get_alignment.m4)
|
||||||
sinclude(config/f90_get_precision.m4)
|
m4_include(config/f90_get_precision.m4)
|
||||||
sinclude(config/f90_get_range.m4)
|
m4_include(config/f90_get_range.m4)
|
||||||
sinclude(config/f90_get_sizeof.m4)
|
m4_include(config/f90_get_sizeof.m4)
|
||||||
sinclude(config/f90_get_int_kind.m4)
|
m4_include(config/f90_get_int_kind.m4)
|
||||||
|
|
||||||
m4_sinclude(config/ompi_objc.m4)
|
m4_include(config/ompi_objc.m4)
|
||||||
|
|
||||||
sinclude(config/ompi_try_assemble.m4)
|
m4_include(config/ompi_try_assemble.m4)
|
||||||
sinclude(config/ompi_config_asm.m4)
|
m4_include(config/ompi_config_asm.m4)
|
||||||
|
|
||||||
sinclude(config/ompi_case_sensitive_fs_setup.m4)
|
m4_include(config/ompi_case_sensitive_fs_setup.m4)
|
||||||
sinclude(config/ompi_check_broken_qsort.m4)
|
m4_include(config/ompi_check_broken_qsort.m4)
|
||||||
sinclude(config/ompi_check_optflags.m4)
|
m4_include(config/ompi_check_optflags.m4)
|
||||||
sinclude(config/ompi_check_icc.m4)
|
m4_include(config/ompi_check_icc.m4)
|
||||||
sinclude(config/ompi_check_gm.m4)
|
m4_include(config/ompi_check_gm.m4)
|
||||||
sinclude(config/ompi_check_mx.m4)
|
m4_include(config/ompi_check_mx.m4)
|
||||||
sinclude(config/ompi_check_bproc.m4)
|
m4_include(config/ompi_check_bproc.m4)
|
||||||
sinclude(config/ompi_check_mvapi.m4)
|
m4_include(config/ompi_check_mvapi.m4)
|
||||||
sinclude(config/ompi_check_openib.m4)
|
m4_include(config/ompi_check_openib.m4)
|
||||||
sinclude(config/ompi_check_package.m4)
|
m4_include(config/ompi_check_package.m4)
|
||||||
sinclude(config/ompi_check_tm.m4)
|
m4_include(config/ompi_check_tm.m4)
|
||||||
sinclude(config/ompi_check_xgrid.m4)
|
m4_include(config/ompi_check_xgrid.m4)
|
||||||
sinclude(config/ompi_config_subdir.m4)
|
m4_include(config/ompi_config_subdir.m4)
|
||||||
sinclude(config/ompi_config_subdir_args.m4)
|
m4_include(config/ompi_config_subdir_args.m4)
|
||||||
sinclude(config/ompi_configure_options.m4)
|
m4_include(config/ompi_configure_options.m4)
|
||||||
sinclude(config/ompi_find_type.m4)
|
m4_include(config/ompi_find_type.m4)
|
||||||
sinclude(config/ompi_functions.m4)
|
m4_include(config/ompi_functions.m4)
|
||||||
sinclude(config/ompi_get_version.m4)
|
m4_include(config/ompi_get_version.m4)
|
||||||
sinclude(config/ompi_get_libtool_linker_flags.m4)
|
m4_include(config/ompi_get_libtool_linker_flags.m4)
|
||||||
sinclude(config/ompi_mca.m4)
|
m4_include(config/ompi_load_platform.m4)
|
||||||
sinclude(config/ompi_setup_cc.m4)
|
m4_include(config/ompi_mca.m4)
|
||||||
sinclude(config/ompi_setup_cxx.m4)
|
m4_include(config/ompi_setup_cc.m4)
|
||||||
sinclude(config/ompi_setup_f77.m4)
|
m4_include(config/ompi_setup_cxx.m4)
|
||||||
sinclude(config/ompi_setup_f90.m4)
|
m4_include(config/ompi_setup_f77.m4)
|
||||||
sinclude(config/ompi_setup_libevent.m4)
|
m4_include(config/ompi_setup_f90.m4)
|
||||||
|
m4_include(config/ompi_setup_libevent.m4)
|
||||||
|
|
||||||
sinclude(config/ompi_check_pthread_pids.m4)
|
m4_include(config/ompi_check_pthread_pids.m4)
|
||||||
sinclude(config/ompi_config_pthreads.m4)
|
m4_include(config/ompi_config_pthreads.m4)
|
||||||
sinclude(config/ompi_config_solaris_threads.m4)
|
m4_include(config/ompi_config_solaris_threads.m4)
|
||||||
sinclude(config/ompi_config_threads.m4)
|
m4_include(config/ompi_config_threads.m4)
|
||||||
|
|
||||||
#
|
#
|
||||||
# The config/mca_no_configure_components.m4 file is generated by
|
# The config/mca_no_configure_components.m4 file is generated by
|
||||||
# autogen.sh
|
# autogen.sh
|
||||||
#
|
#
|
||||||
sinclude(config/mca_no_configure_components.m4)
|
m4_include(config/mca_no_configure_components.m4)
|
||||||
|
|
||||||
#
|
#
|
||||||
# mca_m4_config_include.m4 is generated by autogen.sh. It includes
|
# mca_m4_config_include.m4 is generated by autogen.sh. It includes
|
||||||
@ -93,9 +94,9 @@ sinclude(config/mca_no_configure_components.m4)
|
|||||||
# Some explination... There doesn't seem to be a good way to have
|
# Some explination... There doesn't seem to be a good way to have
|
||||||
# this include file live in config/, because autoheader does it's
|
# this include file live in config/, because autoheader does it's
|
||||||
# analysis without taking into account the directory in which the .m4
|
# analysis without taking into account the directory in which the .m4
|
||||||
# file calling sinclude is in, while autoconf does take the directory
|
# file calling m4_include is in, while autoconf does take the directory
|
||||||
# into account. So you end up with a situation where you need two
|
# into account. So you end up with a situation where you need two
|
||||||
# directories listed in the single sinclude. If anyone knows a way
|
# directories listed in the single m4_include. If anyone knows a way
|
||||||
# to move mca_m4_config_include.m4 into config/, I'd appreciate it.
|
# to move mca_m4_config_include.m4 into config/, I'd appreciate it.
|
||||||
#
|
#
|
||||||
m4_sinclude(mca_m4_config_include.m4)
|
m4_include(mca_m4_config_include.m4)
|
||||||
|
12
autogen.sh
12
autogen.sh
@ -494,12 +494,12 @@ EOF
|
|||||||
echo "AC_CONFIG_FILES([$m4conf_dir/$file])" >> "$m4conf_list_file"
|
echo "AC_CONFIG_FILES([$m4conf_dir/$file])" >> "$m4conf_list_file"
|
||||||
done
|
done
|
||||||
|
|
||||||
# add the sinclude of the m4 file into the mca .m4 file directly. It shouldn't
|
# add the m4_include of the m4 file into the mca .m4 file
|
||||||
# be in a macro, so this is fairly safe to do. By this point, there should
|
# directly. It shouldn't be in a macro, so this is fairly safe to
|
||||||
# already be a header and all that.
|
# do. By this point, there should already be a header and all
|
||||||
# sincludes are relative to the currently included file, so need the .. to get us
|
# that. m4_includes are relative to the currently included file,
|
||||||
# from config/ to the topsrcdir again.
|
# so need the .. to get us from config/ to the topsrcdir again.
|
||||||
echo "sinclude(${m4conf_project}/mca/${m4conf_framework}/${m4conf_component}/configure.m4)" >> "$m4conf_ompi_topdir/$mca_m4_include_file"
|
echo "m4_include(${m4conf_project}/mca/${m4conf_framework}/${m4conf_component}/configure.m4)" >> "$m4conf_ompi_topdir/$mca_m4_include_file"
|
||||||
|
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
--> Adding to top-level configure m4-configure subdirs:
|
--> Adding to top-level configure m4-configure subdirs:
|
||||||
|
51
config/ompi_load_platform.m4
Обычный файл
51
config/ompi_load_platform.m4
Обычный файл
@ -0,0 +1,51 @@
|
|||||||
|
# -*- shell-script -*-
|
||||||
|
#
|
||||||
|
# Copyright (c) 2004-2005 The Trustees of Indiana University.
|
||||||
|
# All rights reserved.
|
||||||
|
# Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
|
||||||
|
# All rights reserved.
|
||||||
|
# Copyright (c) 2004-2005 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.
|
||||||
|
# $COPYRIGHT$
|
||||||
|
#
|
||||||
|
# Additional copyrights may follow
|
||||||
|
#
|
||||||
|
# $HEADER$
|
||||||
|
#
|
||||||
|
|
||||||
|
# OMPI_LOAD_PLATFORM()
|
||||||
|
# --------------------
|
||||||
|
AC_DEFUN([OMPI_LOAD_PLATFORM], [
|
||||||
|
AC_ARG_WITH([platform],
|
||||||
|
[AC_HELP_STRING([--with-platform=FILE],
|
||||||
|
[Load options for build from FILE. Options on the
|
||||||
|
command line not in FILE are used. Options on the
|
||||||
|
command line and in FILE are replaced by what is
|
||||||
|
in FILE.])])
|
||||||
|
if test "$with_platform" = "yes" ; then
|
||||||
|
AC_MSG_ERROR([--with-platform argument must include FILE option])
|
||||||
|
elif test "$with_platform" = "no" ; then
|
||||||
|
AC_MSG_ERROR([--without-platform is not a valid argument])
|
||||||
|
elif test "$with_platform" != "" ; then
|
||||||
|
# make sure file exists
|
||||||
|
if test ! -r "$with_platform" ; then
|
||||||
|
AC_MSG_ERROR([platform file $with_platform not found])
|
||||||
|
fi
|
||||||
|
|
||||||
|
# eval into environment
|
||||||
|
OMPI_LOG_MSG([Loading environment file $with_platform, with contents below])
|
||||||
|
OMPI_LOG_FILE([$with_platform])
|
||||||
|
. "$with_platform"
|
||||||
|
|
||||||
|
# see if they left us a name
|
||||||
|
if test "$OMPI_PLATFORM_LOADED" != "" ; then
|
||||||
|
platform_loaded="$OMPI_PLATFORM_LOADED"
|
||||||
|
else
|
||||||
|
platform_loaded="$with_platform"
|
||||||
|
fi
|
||||||
|
echo "Loaded platform arguments for $platform_loaded"
|
||||||
|
OMPI_LOG_MSG([Loaded platform arguments for $platform_loaded"])
|
||||||
|
fi
|
||||||
|
])
|
@ -26,6 +26,10 @@ AC_INIT(./ompi/mpi/c/init.c)
|
|||||||
AC_PREREQ(2.58)
|
AC_PREREQ(2.58)
|
||||||
AC_CONFIG_AUX_DIR(./config)
|
AC_CONFIG_AUX_DIR(./config)
|
||||||
|
|
||||||
|
# Get our platform support file. This has to be done very, very early
|
||||||
|
# because it twiddles random bits of autoconf
|
||||||
|
OMPI_LOAD_PLATFORM
|
||||||
|
|
||||||
# Get the version of OMPI that we are installing
|
# Get the version of OMPI that we are installing
|
||||||
|
|
||||||
OMPI_GET_VERSION($srcdir/VERSION, OMPI)
|
OMPI_GET_VERSION($srcdir/VERSION, OMPI)
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user