[mpich-commits] r10666 - mpich2/trunk
gropp at mcs.anl.gov
gropp at mcs.anl.gov
Sun Nov 25 15:06:20 CST 2012
Author: gropp
Date: 2012-11-25 15:06:20 -0600 (Sun, 25 Nov 2012)
New Revision: 10666
Modified:
mpich2/trunk/configure.ac
Log:
Fix for #1757, failure to build when Fortran is disabled
Modified: mpich2/trunk/configure.ac
===================================================================
--- mpich2/trunk/configure.ac 2012-11-25 19:30:25 UTC (rev 10665)
+++ mpich2/trunk/configure.ac 2012-11-25 21:06:20 UTC (rev 10666)
@@ -3864,23 +3864,6 @@
# not yet support it.
PAC_F77_LOGICALS_IN_C([$MPI_FINT])
- # Check if multiple __attribute__((alias)) is available
- if test "$enable_multi_aliases" = "yes" ; then
- PAC_C_MULTI_ATTR_ALIAS
- if test "$pac_c_multi_attr_alias" = "yes" ; then
- PAC_F2C_ATTR_ALIGNED_SIZE([1],[CMB_1INT_ALIGNMENT])
- AC_SUBST(CMB_1INT_ALIGNMENT)
- PAC_F2C_ATTR_ALIGNED_SIZE([$MPI_STATUS_SIZE],[CMB_STATUS_ALIGNMENT],
- [32])
- AC_SUBST(CMB_STATUS_ALIGNMENT)
- if test "X$CMB_1INT_ALIGNMENT" != "X" \
- -a "X$CMB_STATUS_ALIGNMENT" != "X" ; then
- AC_DEFINE(HAVE_C_MULTI_ATTR_ALIAS, 1,
- [Define if multiple __attribute__((alias)) are supported])
- fi
- fi
- fi
-
# Get the INTEGER_KIND, ADDRESS_KIND and OFFSET_KIND if possible
#
# For Fortran 90, we'll also need MPI_ADDRESS_KIND and MPI_OFFSET_KIND
@@ -5587,7 +5570,7 @@
]
dnl just compute it, since a 1s-complement or sign-and-magnitude machine is
-dnl *highly* unlikely. Users will report the error if it is ever dnl
+dnl *highly* unlikely. Users will report the error if it is ever
dnl encountered, which will be safer than attempting some never-tested
dnl default fallback.
AC_COMPUTE_INT([pac_cv_sizeof_mpi_status],
@@ -5601,11 +5584,11 @@
export SIZEOF_MPI_STATUS
AC_SUBST([SIZEOF_MPI_STATUS])
-if test -z "$MPI_STATUS_SIZE" ; then
+if test "$enable_f77" = yes -a -z "$MPI_STATUS_SIZE" ; then
if test -n "$SIZEOF_MPI_STATUS" ; then
# compute from the C sizeof
- # FIXME shouldn't these calculations be based on the size of a Fortran
- # 'INTEGER' rather than a C 'int'?
+ # Note that these *must* use the size of a Fortran INTEGER,
+ # not a C int - as those two types might not be the same size.
if test -z "$pac_cv_f77_sizeof_integer" ; then
AC_MSG_ERROR([Sizeof Fortran INTEGER (MPI_Fint) is not available])
fi
@@ -5628,6 +5611,27 @@
MPIF_STATUS_SIZE=$MPI_STATUS_SIZE
AC_DEFINE_UNQUOTED([MPIF_STATUS_SIZE],[$MPIF_STATUS_SIZE],[Size of an MPI_STATUS, in Fortran, in Fortran integers])
+if test "$enable_f77" = yes ; then
+ # Check if multiple __attribute__((alias)) is available
+ # This test requires MPI_STATUS_SIZE, and thus must be made after
+ # MPI_STATUS_SIZE is determined
+ if test "$enable_multi_aliases" = "yes" ; then
+ PAC_C_MULTI_ATTR_ALIAS
+ if test "$pac_c_multi_attr_alias" = "yes" ; then
+ PAC_F2C_ATTR_ALIGNED_SIZE([1],[CMB_1INT_ALIGNMENT])
+ AC_SUBST(CMB_1INT_ALIGNMENT)
+ PAC_F2C_ATTR_ALIGNED_SIZE([$MPI_STATUS_SIZE],[CMB_STATUS_ALIGNMENT],
+ [32])
+ AC_SUBST(CMB_STATUS_ALIGNMENT)
+ if test "X$CMB_1INT_ALIGNMENT" != "X" \
+ -a "X$CMB_STATUS_ALIGNMENT" != "X" ; then
+ AC_DEFINE(HAVE_C_MULTI_ATTR_ALIAS, 1,
+ [Define if multiple __attribute__((alias)) are supported])
+ fi
+ fi
+ fi
+fi
+
# ----------------------------------------------------------------------------
dnl Extra status information, from device subsystem, to be included in the
More information about the commits
mailing list