⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 configure.in

📁 mpi并行计算的c++代码 可用vc或gcc编译通过 可以用来搭建并行计算试验环境
💻 IN
📖 第 1 页 / 共 3 页
字号:
                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                AC_DEFINE( HAVE_MPI_IO, 1, [Define if MPI-IO available] )                AC_MSG_CHECKING( [for ROMIO's MPIO_Request] )                PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS,                                      [ MPIO_Request  io_request], ,                                      [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )                if test "$mpe_link_ok" = "yes" ; then                    AC_MSG_RESULT(yes)                else                    AC_MSG_RESULT(no)                    AC_DEFINE( HAVE_NO_MPIO_REQUEST, 1,                               [Define if no MPIO_Request] )                fi            else                AC_MSG_RESULT([no, assumed No MPI-IO routines])            fi        else            AC_MSG_RESULT([no, assumed No MPI-IO routines])        fi    fielsednl When it is built with MPICHx, MPE configure observes --with[out]-mpiiodnl if test \( "$MPI_IMPL" = "MPICH" -o "$MPI_IMPL" = "MPICH2" \) \    if test "$with_mpiio" = "yes" ; then        AC_DEFINE( HAVE_MPI_IO, 1, [Define if MPI-IO available] )    fifidnl Check MPI-RMAif test "$MPI_IMPL" != "MPICH" -a "$MPI_IMPL" != "MPICH2" ; then    if test "$enable_checkMPI" = "yes" ; then        AC_MSG_CHECKING( [for the C version of MPI_Win_create] )        PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS,                              [ int itmp; MPI_Win win ],                              [#ifndef NULL#define NULL 0#endif    itmp=MPI_Win_create( NULL, 0, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win )                              ],                              [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )        if test "$mpe_link_ok" = "yes" ; then            AC_MSG_RESULT(yes)            AC_MSG_CHECKING( [for the C version of PMPI_Win_create] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS,                                  [ int itmp; MPI_Win win ],                                  [#ifndef NULL#define NULL 0#endif    itmp=PMPI_Win_create( NULL, 0, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win )                                  ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                AC_DEFINE(HAVE_MPI_RMA, 1, [Define if MPI-RMA available])                dnl Start Test of MPI_Win_lock/unlock                AC_MSG_CHECKING([for the C version of MPI_Win_lock/unlock])                PAC_MPI_LINK_CC_FUNC($MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS,                                     [ int itmp; MPI_Win win ],                                     [#ifndef NULL#define NULL 0#endif    itmp=MPI_Win_create( NULL, 0, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win );    itmp=MPI_Win_lock( MPI_LOCK_EXCLUSIVE, 0, 0, win );    itmp=MPI_Win_unlock( 0, win )                                     ],                [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )                if test "$mpe_link_ok" = "yes" ; then                    AC_MSG_RESULT(yes)                    AC_MSG_CHECKING([for the C version of PMPI_Win_lock/unlock])                    PAC_MPI_LINK_CC_FUNC($MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS,                                         [ int itmp; MPI_Win win ],                                         [#ifndef NULL#define NULL 0#endif    itmp=PMPI_Win_create( NULL, 0, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win );    itmp=PMPI_Win_lock( MPI_LOCK_EXCLUSIVE, 0, 0, win );    itmp=PMPI_Win_unlock( 0, win )                                         ],                    [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )                    if test "$mpe_link_ok" = "yes" ; then                        AC_MSG_RESULT(yes)                        AC_DEFINE(HAVE_MPI_RMA_LOCK, 1,                                  [Define if MPI_Win_lock/unlock are available])                    else                        AC_MSG_RESULT(no)                    fi                else                    AC_MSG_RESULT(no)                fi                dnl End Test of MPI_Win_lock/unlock                dnl Start Test of MPI_Win_test                AC_MSG_CHECKING([for the C version of MPI_Win_test])                PAC_MPI_LINK_CC_FUNC($MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS,                                     [ int itmp, flag; MPI_Win win ],                                     [#ifndef NULL#define NULL 0#endif    itmp=MPI_Win_create( NULL, 0, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win );    itmp=MPI_Win_test( win, &flag )                                     ],                [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )                if test "$mpe_link_ok" = "yes" ; then                    AC_MSG_RESULT(yes)                    AC_MSG_CHECKING([for the C version of PMPI_Win_test])                    PAC_MPI_LINK_CC_FUNC($MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS,                                         [ int itmp, flag; MPI_Win win ],                                         [#ifndef NULL#define NULL 0#endif    itmp=PMPI_Win_create( NULL, 0, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win );    itmp=PMPI_Win_test( win, &flag )                                         ],                    [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )                    if test "$mpe_link_ok" = "yes" ; then                        AC_MSG_RESULT(yes)                        AC_DEFINE(HAVE_MPI_RMA_TEST, 1,                                  [Define if MPI_Win_test is available])                    else                        AC_MSG_RESULT(no)                    fi                else                    AC_MSG_RESULT(no)                fi                dnl End Test of MPI_Win_test             else                AC_MSG_RESULT([no, assumed No MPI-RMA routines])            fi        else            AC_MSG_RESULT([no, assumed No MPI-RMA routines])        fi     fielsednl if MPICH2, assume MPI-RMA is available.    if test "$MPI_IMPL" = "MPICH2" ; then        AC_DEFINE( HAVE_MPI_RMA, 1, [Define if MPI-RMA available] )        AC_DEFINE( HAVE_MPI_RMA_LOCK, 1,                   [Define if MPI_Win_lock/unlock are available] )        AC_DEFINE(HAVE_MPI_RMA_TEST, 1,                   [Define if MPI_Win_test is available])    fifidnl   Determine if MPI_STATUS_IGNORE existsif test "$MPI_IMPL" != "MPICH" -a "$MPI_IMPL" != "MPICH2" ; then    AC_MSG_CHECKING( [for MPI_STATUS_IGNORE] )    PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS, [              MPI_Status*     tmp_status;              tmp_status = MPI_STATUS_IGNORE;                          ], ,              [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )    AC_MSG_RESULT($mpe_link_ok)else    # All known impls, including MPICH, support STATUS_IGNORE    # (The MPICH support may have a few bugs, but it is close enough    # for our needs)    mpe_link_ok=yesfiif test "$mpe_link_ok" = "yes" ; then    AC_DEFINE( HAVE_MPI_STATUS_IGNORE, 1,               [Define if MPI_STATUS_IGNORE available] )fidnl   Determine if MPI_STATUSES_IGNORE existsif test "$MPI_IMPL" != "MPICH" -a "$MPI_IMPL" != "MPICH2" ; then    AC_MSG_CHECKING( [for MPI_STATUSES_IGNORE] )    PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS, [              MPI_Status*     tmp_status;              tmp_status = MPI_STATUSES_IGNORE;                          ], ,              [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )    AC_MSG_RESULT($mpe_link_ok)else    # All known impls, including MPICH, support STATUS_IGNORE    # (The MPICH support may have a few bugs, but it is close enough    # for our needs)    mpe_link_ok=yesfiif test "$mpe_link_ok" = "yes" ; then    AC_DEFINE( HAVE_MPI_STATUSES_IGNORE, 1,               [Define if MPI_STATUSES_IGNORE available] )fidnl This is temporary!  Eventually MPICH-2 will have its own f2c MPI wrappers.dnl When MPICH-2 has the wrappers ready, the following block should be removedif test "${F2CMPI_LIBS}" = "-l${F2CMPI_LIBNAME}" \     -a "$MPI_IMPL" = "MPICH2" ; then#   FIXME: MPICH2 include MPI_Fint, Need to fetch the value somehow.#   MPICH2 after 1.0.2 release has MPI_F_STATUS_IGNORE, MPI_F_STATUSES_IGNORE    AC_DEFINE( HAVE_MPI_F_STATUS_IGNORE, 1,               [Define if MPI_F_STATUS_IGNORE available] )    AC_DEFINE( HAVE_MPI_F_STATUSES_IGNORE, 1,               [Define if MPI_F_STATUSES_IGNORE available] )#   MPICH2 has MPI_Comm_f2c()/c2f()    AC_DEFINE( HAVE_MPI_COMM_F2C, 1,               [Define if MPI_Comm_f2c and c2f available] )#   Obtain MPICH2's MPI_STATUS_SIZE from environmental variable    AC_MSG_CHECKING( [for the value of MPI_STATUS_SIZE] )    if test -n "$SIZEOF_MPI_STATUS" ; then        # FIXME: Get true value of MPI_Fint instead of 4        CROSS_MPI_STATUS_SIZE=`expr $SIZEOF_MPI_STATUS / 4`        MPI_STATUS_SIZE=$CROSS_MPI_STATUS_SIZE        AC_MSG_RESULT($MPI_STATUS_SIZE)        AC_DEFINE_UNQUOTED( MPI_STATUS_SIZE, $MPI_STATUS_SIZE,                            [Define as the size of MPI_STATUS_SIZE] )    else        PAC_MSG_ERROR( $enable_softerror,                       [Undefined MPI_STATUS_SIZE in MPICH-2! Exiting...] )    fi#   MPICH2 has MPI_Status_f2c()/c2f()    AC_DEFINE( HAVE_MPI_STATUS_F2C, 1,               [Define if MPI_Status_f2c and c2f available] )#   MPICH2 has MPI_TYPE_f2c()/c2f()    AC_DEFINE( HAVE_MPI_TYPE_F2C, 1,               [Define if MPI_Type_F2c and c2f available] )#   MPICH2 has MPI_Group_f2c()/c2f()    AC_DEFINE( HAVE_MPI_GROUP_F2C, 1,               [Define if MPI_Group_f2c and c2f available] )#   MPICH2 has MPI_Request_f2c()/c2f()    AC_DEFINE( HAVE_MPI_REQUEST_F2C, 1,               [Define if MPI_Request_f2c and c2f available] )#   MPICH2 has MPI_Op_f2c()/c2f()    AC_DEFINE( HAVE_MPI_OP_F2C, 1,               [Define if MPI_Op_f2c and c2f available] )#   MPICH2 has MPI_Errhandler_f2c()/c2f()    AC_DEFINE( HAVE_MPI_ERRHANDLER_F2C, 1,               [Define if MPI_Errhandler_f2c and c2f available] )#   Define MPICH2's Fortran TRUE/FALSE value    # FIXME: Use the values from the Fortran configure    true_val=1    AC_DEFINE_UNQUOTED( MPE_F77_TRUE_VALUE, $true_val,                        [Define as the value for Fortran logical true] )    false_val=0    AC_DEFINE_UNQUOTED( MPE_F77_FALSE_VALUE, $false_val,                        [Define as the value for Fortran logical false] )dnl  endif test "${F2CMPI_LIBS}" = "-l${F2CMPI_LIBNAME}" dnl          -a "$MPI_IMPL" = "MPICH2" ; thenfidnldnl  Test Non-MPICH platform's Fortran to C capabilitydnlif test "${F2CMPI_LIBS}" = "-l${F2CMPI_LIBNAME}" \     -a "$MPI_IMPL" != "MPICH2" ; thendnl Determine MPI_Fintdnl (same test done in graphics's configure.in)    AC_MSG_CHECKING( [for MPI_Fint] )    PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS,                          [ MPI_Fint aa=1 ], ,                          [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )    if test "$mpe_link_ok" = "yes" ; then        AC_MSG_RESULT(yes)        MPI_FINT_TYPE=MPI_Fint    else        AC_MSG_RESULT([no, assumed MPI_Fint to be int])        MPI_FINT_TYPE=int        AC_DEFINE( MPI_Fint, int, [Define MPI_Fint as int] )    fidnl Determine if MPI_F_STATUS_IGNORE exists    AC_MSG_CHECKING( [for MPI_F_STATUS_IGNORE] )    PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$CFLAGS $MPI_INC], $MPI_LIBS, [              ${MPI_FINT_TYPE}  *f_status;              f_status = MPI_F_STATUS_IGNORE;                          ], ,              [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -