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

📄 mpif77.m4

📁 pic 模拟程序!面向对象
💻 M4
字号:
dnl ######################################################################dnldnl File:       fortran_mpi.m4dnl Depends on: f77-90.m4 and fortflags.m4dnldnl Purpose:    Set the right mpi include variablesdnldnl Version:    $Id: mpif77.m4,v 1.1 2005/04/29 14:47:06 kruger Exp $dnldnl Copyright Tech-X Corporation, 2001-2005.  Redistribution alloweddnl provided this copyright statement remains intact.dnldnl ######################################################################dnl ######################################################################dnldnl Set the variables:  dnl   MPI_INCLUDESdnl   MPILDFLAGSdnl   MPI_LIBSdnl   FC_MPI_LINKdnldnl     Notes:dnl        o mpi_link allows linking of dummy routines for building serial dnl        o mpi_link allows linking of dummy routines for building serial dnl          verson of codes without building mpi (see mpi_serial.f90)dnl        o Some people want distinction between f90 and mpif90.  We don't.dnl          If you want FC=MPIF90, put it in the configure.indnldnl  SEK - I'm trying to maintain backward compatibility with Jimdnl    Amundsen but this is a pain b/c Tech-X does things differentlydnl ######################################################################dnl ----------------------------------------------------------------------dnl Set defaults for convenience.  Perhaps irrelevent since I checkdnl several placesdnl ----------------------------------------------------------------------case "$host" in *-linux-gnu)  	DEFAULT_MPI_PREFIX=/usr/local	DEFAULT_MPI_INCLUDE_DIR=$DEFAULT_MPI_PREFIX/include      if test -f "$DEFAULT_MPI_INCLUDE_DIR/mpif.h"; then          lam_count=`grep -c LAM "$DEFAULT_MPI_INCLUDE_DIR/mpif.h"`          if test "$lam_count" -gt "0" ; then                # Assume we have LAM                DEFAULT_MPI_LIBS="-llammpi++ -llammpio -lpmpi -llamf77mpi -lmpi -llam -lnsl -lutil"          else                # Assume we have MPICH                DEFAULT_MPI_LIBS="-lfmpich -lmpichf90 -lmpich"          fi    	    DEFAULT_MPILDFLAGS=-L$MPI_PREFIX/lib	else   	   DEFAULT_MPI_PREFIX=""      fi	;; *apple-darwin*)	 DEFAULT_MPI_PREFIX=/usr/local	 DEFAULT_MPI_LIBS="-lfmpich -lmpichf90 -lmpich"	 DEFAULT_MPI_INCLUDE_DIR=$MPI_PREFIX/include	 DEFAULT_MPILDFLAGS=-L$MPI_PREFIX/lib	 ;; *-*-aix*)      DEFAULT_MPI_PREFIX=      DEFAULT_MPI_INCLUDE_DIR=      DEFAULT_MPILDFLAGS="-mpe -L/usr/lpp/ppe.poe/lib -L/usr/lpp/ppe.poe/lib/ip"      DEFAULT_MPI_LIBS="-lmpi -lvtd -lppe"	;; *)      DEFAULT_MPI_PREFIX=      DEFAULT_MPI_INCLUDE_DIR=      DEFAULT_MPILDFLAGS=      DEFAULT_MPI_LIBS=	;;esacdnl ----------------------------------------------------------------------dnl Flagsdnl ----------------------------------------------------------------------AC_ARG_ENABLE(MPI,     [  --disable-MPI    Disable MPI],     [ case "${enableval}" in       yes) MPI=true ;;       no)  MPI=false ;;       *) AC_MSG_ERROR(bad value ${enableval} for --enable-MPI) ;;     esac],[MPI=false])AM_CONDITIONAL(CONDMPI,test x$MPI = xtrue)AC_ARG_WITH(mpi-prefix,	[  --with-mpi-prefix=<dir>	Prefix directory for MPI.],	[MPI_PREFIX="${withval}"],	[MPI_PREFIX="$DEFAULT_MPI_PREFIX"])AC_ARG_WITH(mpi-include-dir,	[  --with-mpi-include-dir=<dir>	MPI include directory.	Default is -I\$MPI_PREFIX/include],	[MPI_INCLUDE_DIR="${withval}"],	[MPI_INCLUDE_DIR="$DEFAULT_MPI_INCLUDE_DIR"])AC_ARG_WITH(mpi-ldflags,	[  --with-mpi-ldflags=<flags>	LDFLAGS for linking with MPI.],	[MPILDFLAGS="${withval}"],	[MPILDFLAGS="$DEFAULT_MPILDFLAGS"])AC_ARG_WITH(mpi-libs,	[  --with-mpi-libs=<libs>	Libraries for linking with MPI.],	[MPI_LIBS="${withval}"],	[MPI_LIBS="$DEFAULT_MPI_LIBS"])AC_MSG_RESULT($MPI)dnl ----------------------------------------------------------------------dnl Set serialdnl ----------------------------------------------------------------------if test "$MPI" = false; then      MPI_INCLUDES=      MPILDFLAGS=      MPI_LIBS=      FC_MPI_LINK=serialdnl ----------------------------------------------------------------------dnl Set parallel and perform the checksdnl ----------------------------------------------------------------------else      FC_MPI_LINK=parallel	dnl On AIX, MPI includes are taken care of by the mpxlf90 script.	MPI_PATH="$MPI_INCLUDE_DIR:$MPI_PREFIX/include:$DEFAULT_MPI_INCLUDE_DIR:/usr/local/mpich/include"	      AC_PATH_PROGS(MPIF_INCLUDE, mpif.h, "", $MPI_PATH)      if test -z "$MPIF_INCLUDE"; then		echo "MPI_INCLUDE_DIR empty. Assuming mpif.h will be found automatically."		MPI_INCLUDES=	else            MPI_INCLUDE_DIR=`dirname $MPIF_INCLUDE`		MPI_PREFIX=`dirname $MPI_INCLUDE_DIR`		dnl note that not every compiler uses -I		MPI_INCLUDES=$FC_INCLUDE_FLAG$MPI_INCLUDE_DIR	fi	dnl Set parallel compiler      case "$host" in      	*-pc-linux-gnu)	            if test -z "$MPILDFLAGS"; then                        MPILDFLAGS=-L$MPI_PREFIX/lib                  fi	            if test -z "$MPI_LIBS"; then            		lam_count=`grep -c LAM "$MPI_INCLUDE_DIR/mpif.h"`            		if test "$lam_count" -gt "0" ; then            			MPI_LIBS="-llammpi++ -llammpio -lpmpi -llamf77mpi -lmpi -llam -lnsl -lutil"            		else	                        MPI_LIBS="-lfmpich -lmpichf90 -lmpich"            		fi                  fi                  MPIF77=mpif77       		;;      	*-*-aix*)	            if test -z "$MPILDFLAGS"; then                        MPILDFLAGS=$DEFAULT_MPILDFLAGS                  fi	            if test -z "$MPI_LIBS"; then            		MPI_LIBS=$DEFAULT_MPI_LIBS                  fi                  MPIF77=mpxlf77      		;;	     *)	            if test -z "$MPILDFLAGS"; then                        MPILDFLAGS=$DEFAULT_MPILDFLAGS                  fi	            if test -z "$MPI_LIBS"; then            		MPI_LIBS=$DEFAULT_MPI_LIBS                  fi                  MPIF77=mpif77                   ;;	esacfidnl ----------------------------------------------------------------------dnl Exportdnl ----------------------------------------------------------------------AC_SUBST(MPIF77)AC_SUBST(MPI_INCLUDES)AC_SUBST(MPILDFLAGS)AC_SUBST(MPI_LIBS)AC_SUBST(FC_MPI_LINK)

⌨️ 快捷键说明

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