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

📄 configure.in

📁 fortran并行计算包
💻 IN
📖 第 1 页 / 共 2 页
字号:
                       [Define if Fortran MPI_Datatype exists in C] )dnl         Check for MPI_INTEGERx            AC_MSG_CHECKING( [for Fortran MPI_Datatype, INTEGER related, in C] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [ MPI_Datatype type1, type2, type3, type4 ],                                  [    type1 = MPI_INTEGER1;    type2 = MPI_INTEGER2;    type3 = MPI_INTEGER4;    type4 = MPI_INTEGER8;                                  ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_INTEGERX_IN_C, 1,                    [Define if Fortran MPI_Datatype, INTEGERs, exist in C] )            else                AC_MSG_RESULT(no)            fidnl         Check for MPI_REALx            AC_MSG_CHECKING( [for Fortran MPI_Datatype, REAL related, in C] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [ MPI_Datatype type1, type2 ],                                  [    type1 = MPI_REAL4;    type2 = MPI_REAL8;                                  ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_REALX_IN_C, 1,                    [Define if Fortran MPI_Datatype, REALs, exist in C] )            else                AC_MSG_RESULT(no)            fidnl         Check for MPI_COMPLEXx and MPI_2COMPLEXxxx            AC_MSG_CHECKING( [for Fortran MPI_Datatype, COMPLEX related, in C] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [ MPI_Datatype type1, type2, type3, type4 ],                                  [    type1 = MPI_COMPLEX8;    type2 = MPI_COMPLEX16;    type3 = MPI_2COMPLEX;    type4 = MPI_2DOUBLE_COMPLEX;                                  ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_COMPLEXX_IN_C, 1,                    [Define if Fortran MPI_Datatype, COMPLEXs, exist in C] )            else                AC_MSG_RESULT(no)            fi        elsednl         if HAVE_FORTRAN_MPI_DATATYPE_IN_C is false            AC_MSG_RESULT(no)            AC_MSG_CHECKING( [for LAM/MPI Fortran MPI_Datatype in C] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [ MPI_Datatype type ],                                  [#define MPI_COMPLEX   ((MPI_Datatype) &lam_mpi_cplex)    type = MPI_COMPLEX;                                  ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                AC_DEFINE( HAVE_LAM_FORTRAN_MPI_DATATYPE_IN_C, 1,                           [Define if LAM Fortran MPI_Datatype exists in C] )                AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_IN_C, 1,                           [Define if Fortran MPI_Datatype exists in C] )                AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_INTEGERX_IN_C, 1,                        [Define if Fortran MPI_Datatype, INTEGERs, exist in C] )                AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_REALX_IN_C, 1,                           [Define if Fortran MPI_Datatype, REALs, exist in C] )            else                AC_MSG_RESULT(no)            fi        fi    fielsednl if MPICH2, assume all Fortran MPI_Datatypes are available in Cdnl if MPICH1, assume only basic Fortran MPI_Datatypes are available in C    if test "$MPI_IMPL" = "MPICH2" ; then         AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_IN_C, 1,                    [Define if Fortran MPI_Datatype exists in C] )         AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_INTEGERX_IN_C, 1,                    [Define if Fortran MPI_Datatype, INTEGERs, exist in C] )         AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_REALX_IN_C, 1,                    [Define if Fortran MPI_Datatype, REALs, exist in C] )         AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_COMPLEXX_IN_C, 1,                    [Define if Fortran MPI_Datatype, COMPLEXs, exist in C] )    else         AC_DEFINE( HAVE_FORTRAN_MPI_DATATYPE_IN_C, 1,                    [Define if Fortran MPI_Datatype exists in C] )    fifidnl Check if MPI_Datatype is pointer or intif test "$MPI_IMPL" != "MPICH" -a "$MPI_IMPL" != "MPICH2" ; then    if test "$enable_checkMPI" = "yes" ; then        AC_MSG_CHECKING( [for MPI_Datatype] )        PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                              [ MPI_Datatype type ],                              [ type = type / 5 ],                              [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )        if test "$mpe_link_ok" = "yes" ; then            AC_MSG_RESULT([int])            AC_DEFINE( HAVE_INT_MPI_DATATYPE, 1,                       [Define if MPI_Datatype is int] )        else            AC_MSG_RESULT([void*])            AC_DEFINE( HAVE_PTR_MPI_DATATYPE, 1,                       [Define if MPI_Datatype is void*] )        fi    fielsednl if MPICH2 or MPICH1, assume MPI_Datatype is int    AC_DEFINE( HAVE_INT_MPI_DATATYPE, 1,               [Define if MPI_Datatype is int] )fidnl Check MPI_Exscanif test "$MPI_IMPL" != "MPICH" -a "$MPI_IMPL" != "MPICH2" ; then    if test "$enable_checkMPI" = "yes" ; then        AC_MSG_CHECKING( [for the C version of MPI_Exscan] )        PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                              [ int itmp, ibuff ],                              [    itmp=MPI_Exscan( &ibuff, &ibuff, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD )                              ],                              [ 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_Exscan] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [ int itmp, ibuff ],                                  [    itmp=PMPI_Exscan( &ibuff, &ibuff, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD )                                  ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                COLLCHK_BUILD_EXSCAN=yes            else                AC_MSG_RESULT(no)                COLLCHK_BUILD_EXSCAN=no            fi        else            AC_MSG_RESULT(no)            COLLCHK_BUILD_EXSCAN=no        fi    fielsednl if MPICH2, assume MPI_Exscan is available.    if test "$MPI_IMPL" = "MPICH2" ; then        COLLCHK_BUILD_EXSCAN=yes    else        COLLCHK_BUILD_EXSCAN=no    fifidnl Check MPI_Alltoallwif test "$MPI_IMPL" != "MPICH" -a "$MPI_IMPL" != "MPICH2" ; then    if test "$enable_checkMPI" = "yes" ; then        AC_MSG_CHECKING( [for the C version of MPI_Alltoallw] )        PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                              [[#define MAX 10    int *sbuff, *rbuff;    int scounts[MAX], rcounts[MAX], sdispls[MAX], rdispls[MAX];    MPI_Datatype  stypes[MAX], rtypes[MAX];    int itmp                              ]],                              [    itmp=MPI_Alltoallw( sbuff, scounts, sdispls, stypes,                        rbuff, rcounts, rdispls, rtypes, MPI_COMM_WORLD )                              ],                              [ 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_Alltoallw] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [[#define MAX 10    int *sbuff, *rbuff;    int scounts[MAX], rcounts[MAX], sdispls[MAX], rdispls[MAX];    MPI_Datatype  stypes[MAX], rtypes[MAX];    int itmp                                  ]],                                  [    itmp=PMPI_Alltoallw( sbuff, scounts, sdispls, stypes,                         rbuff, rcounts, rdispls, rtypes, MPI_COMM_WORLD )                                  ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                COLLCHK_BUILD_ALLW=yes            else                AC_MSG_RESULT(no)                COLLCHK_BUILD_ALLW=no            fi        else            AC_MSG_RESULT(no)            COLLCHK_BUILD_ALLW=no        fi    fielsednl if MPICH2, assume MPI_Exscan is available.    if test "$MPI_IMPL" = "MPICH2" ; then        COLLCHK_BUILD_ALLW=yes    else        COLLCHK_BUILD_ALLW=no    fifidnl Check MPI-IOif test "$MPI_IMPL" != "MPICH" -a "$MPI_IMPL" != "MPICH2" ; then    if test "$enable_checkMPI" = "yes" -a "$enable_checkMPIO" = "yes" ; then        AC_MSG_CHECKING( [for the C version of MPI_File_open()] )        PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                              [ int itmp; MPI_File fh ],                              [ itmp=MPI_File_open( MPI_COMM_WORLD, "mpiiotest", MPI_MODE_CREATE | MPI_MODE_RDWR, MPI_INFO_NULL, &fh ) ],                              [ 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_File_open()] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [ int itmp; MPI_File fh ],                                  [ itmp=PMPI_File_open( MPI_COMM_WORLD, "mpiiotest", MPI_MODE_CREATE | MPI_MODE_RDWR, MPI_INFO_NULL, &fh ) ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                AC_MSG_CHECKING( [for ROMIO's MPIO_Request] )                PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $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)                    COLLCHK_BUILD_IO=yes                    AC_DEFINE( HAVE_MPI_IO, 1,                               [Define if MPI-IO routines exist.] )                else                    AC_MSG_RESULT(no)                    COLLCHK_BUILD_IO=no                fi            else                AC_MSG_RESULT([no, assumed No MPI-IO routines])                COLLCHK_BUILD_IO=no            fi        else            AC_MSG_RESULT([no, assumed No MPI-IO routines])            COLLCHK_BUILD_IO=no        fi    fielsednl When built with MPICHx, MPE configure observes --with-mpiio & --enable-romiodnl if test \( "$MPI_IMPL" = "MPICH" -o "$MPI_IMPL" = "MPICH2" \) \    if test "$with_mpiio" = "yes" ; then        COLLCHK_BUILD_IO=yes        AC_DEFINE( HAVE_MPI_IO, 1, [Define if MPI-IO routines exist.] )    else        COLLCHK_BUILD_IO=no    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, [$MPI_CFLAGS], $MPI_LIBS, ,                              [ int itmp; MPI_Win win ],                              [    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, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [ int itmp; MPI_Win win ],                                  [    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)                COLLCHK_BUILD_RMA=yes                AC_DEFINE( HAVE_MPI_RMA, 1,                           [Define if MPI-RMA routines exist.] )            else                AC_MSG_RESULT([no, assumed No MPI-RMA routines])                COLLCHK_BUILD_RMA=no            fi        else            AC_MSG_RESULT([no, assumed No MPI-RMA routines])            COLLCHK_BUILD_RMA=no        fi    fielsednl if MPICH2, assume MPI-RMA is available.    if test "$MPI_IMPL" = "MPICH2" ; then        COLLCHK_BUILD_RMA=yes        AC_DEFINE( HAVE_MPI_RMA, 1, [Define if MPI-RMA routines exist.] )    else        COLLCHK_BUILD_RMA=no    fifidnl Check MPI-COMMSif test "$MPI_IMPL" != "MPICH" -a "$MPI_IMPL" != "MPICH2" ; then    if test "$enable_checkMPI" = "yes" ; then        AC_MSG_CHECKING( [for the C version of MPI_Comm_spawn] )        PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                              [ MPI_Comm intercomm;                                int itmp, np=1, ierrs; ],                              [    itmp=MPI_Comm_spawn( "./test", MPI_ARGV_NULL, np, MPI_INFO_NULL, 0,                         MPI_COMM_WORLD, &intercomm, &ierrs )                              ],                              [ 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_Comm_spawn] )            PAC_MPI_LINK_CC_FUNC( $MPI_CC, [$MPI_CFLAGS], $MPI_LIBS, ,                                  [ MPI_Comm intercomm;                                    int itmp, np=1, ierrs; ],                                  [    itmp=PMPI_Comm_spawn( "./test", MPI_ARGV_NULL, np, MPI_INFO_NULL, 0,                          MPI_COMM_WORLD, &intercomm, &ierrs )                                  ],                                  [ mpe_link_ok=yes ], [ mpe_link_ok=no ] )            if test "$mpe_link_ok" = "yes" ; then                AC_MSG_RESULT(yes)                COLLCHK_BUILD_COMMS=yes                AC_DEFINE( HAVE_MPI_COMMS, 1,                           [Define if MPI-RMA routines exist.] )            else                AC_MSG_RESULT([no, assumed No MPI-COMMS routines])                COLLCHK_BUILD_COMMS=no            fi        else            AC_MSG_RESULT([no, assumed No MPI-COMMS routines])            COLLCHK_BUILD_COMMS=no        fi    fielsednl if MPICH2, assume MPI_COMMS is available.    if test "$MPI_IMPL" = "MPICH2" ; then        COLLCHK_BUILD_COMMS=yes        AC_DEFINE( HAVE_MPI_COMMS, 1, [Define if MPI-RMA routines exist.] )    else        COLLCHK_BUILD_COMMS=no    fifiAC_SUBST(COLLCHK_BUILD_EXSCAN)AC_SUBST(COLLCHK_BUILD_ALLW)AC_SUBST(COLLCHK_BUILD_IO)AC_SUBST(COLLCHK_BUILD_RMA)AC_SUBST(COLLCHK_BUILD_COMMS)AC_SUBST(MPI_IMPL)AC_SUBST(MPE_BUILD_FORTRAN2C)AC_SUBST(CC)AC_SUBST(CLINKER)AC_SUBST(CFLAGS)AC_SUBST(MPI_CC)AC_SUBST(MPE_CLINKER)AC_SUBST(F77)AC_SUBST(FLINKER)AC_SUBST(FFLAGS)AC_SUBST(MPI_F77)AC_SUBST(MPE_FLINKER)AC_SUBST(FINC_PATH_LEADER)AC_SUBST(FLIB_PATH_LEADER)AC_SUBST(MPI_CFLAGS)AC_SUBST(MPI_FFLAGS)AC_SUBST(MPI_LIBS)AC_SUBST(COLLCHK_LIBNAME)AC_SUBST(COLLCHK_LIBS)AC_SUBST(F2CMPI_LIBS)AC_OUTPUT( Makefile src/Makefile test/Makefile \           etc/mpe_mpicheck.conf )

⌨️ 快捷键说明

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