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

📄 aclocal_make.m4

📁 MPICH是MPI的重要研究,提供了一系列的接口函数,为并行计算的实现提供了编程环境.
💻 M4
字号:
dnldnl We need routines to check that make works.  Possible problems withdnl make includednldnl It is really gnumake, and contrary to the documentation on gnumake,dnl it insists on screaming everytime a directory is changed.  The fixdnl is to add the argument --no-print-directory to the makednldnl It is really BSD 4.4 make, and can't handle 'include'.  For somednl systems, this can be fatal; there is no fix (other than removing thisdnl alleged make).dnldnl It is the OSF V3 make, and can't handle a comment in a block of targetdnl code.  There is no acceptable fix.dnldnldnldnldnl Find a make program if none is defined.AC_DEFUN(PAC_PROG_MAKE_PROGRAM,[trueif test "X$MAKE" = "X" ; then   AC_CHECK_PROGS(MAKE,make gnumake nmake pmake smake)fi])dnldnl/*Ddnl PAC_PROG_MAKE_ECHOS_DIR - Check whether make echos all directory changesdnldnl Synopsis:dnl PAC_PROG_MAKE_ECHOS_DIRdnldnl Output Effect:dnl  If make echos directory changes, append '--no-print-directory' to the dnl  symbol 'MAKE'.  If 'MAKE' is not set, chooses 'make' for 'MAKE'.dnldnl See also:dnl PAC_PROG_MAKEdnl D*/dnlAC_DEFUN(PAC_PROG_MAKE_ECHOS_DIR,[AC_CACHE_CHECK([whether make echos directory changes],pac_cv_prog_make_echos_dir,[AC_REQUIRE([PAC_PROG_MAKE_PROGRAM])/bin/rm -f conftestcat > conftest <<.SHELL=/bin/shALL:	@(dir="`pwd`" ; cd .. ; \$(MAKE) -f "\$\$dir/conftest" SUB)SUB:	@echo "success".str="`$MAKE -f conftest 2>&1`"if test "$str" != "success" ; then    str="`$MAKE --no-print-directory -f conftest 2>&1`"    if test "$str" = "success" ; then	pac_cv_prog_make_echos_dir="yes using --no-print-directory"    else	pac_cv_prog_make_echos_dir="no"	echo "Unexpected output from make with program" >>config.log	cat conftest >>config.log	echo "str" >> config.log    fielse    pac_cv_prog_make_echos_dir="no"fi/bin/rm -f confteststr=""])if test "$pac_cv_prog_make_echos_dir" = "yes using --no-print-directory" ; then    MAKE="$MAKE --no-print-directory"fi])dnldnldnl/*Ddnl PAC_PROG_MAKE_INCLUDE - Check whether make supports includednldnl Synopsis:dnl PAC_PROG_MAKE_INCLUDE([action if true],[action if false])dnldnl Output Effect:dnl   Nonednldnl Notes:dnl  This checks for makes that do not support 'include filename'.  Somednl  versions of BSD 4.4 make required '#include' instead; some versions ofdnl  'pmake' have the same syntax.dnldnl See Also:dnl  PAC_PROG_MAKEdnldnl D*/dnlAC_DEFUN(PAC_PROG_MAKE_INCLUDE,[AC_CACHE_CHECK([whether make supports include],pac_cv_prog_make_include,[AC_REQUIRE([PAC_PROG_MAKE_PROGRAM])/bin/rm -f conftestcat > conftest <<.ALL:	@echo "success".cat > conftest1 <<.include conftest.pac_str=`$MAKE -f conftest1 2>&1`/bin/rm -f conftest conftest1if test "$pac_str" != "success" ; then    pac_cv_prog_make_include="no"else    pac_cv_prog_make_include="yes"fi])if test "$pac_cv_prog_make_include" = "no" ; then    ifelse([$2],,:,[$2])else    ifelse([$1],,:,[$1])fi])dnldnldnl/*Ddnl PAC_PROG_MAKE_ALLOWS_COMMENTS - Check whether comments are allowed in dnl   shell commands in a makefilednldnl Synopsis:dnl PAC_PROG_MAKE_ALLOWS_COMMENTS([false text])dnldnl Output Effect:dnl Issues a warning message if comments are not allowed in a makefile.dnl Executes the argument if one is given.dnldnl Notes:dnl Some versions of OSF V3 make do not all comments in action commands.dnldnl See Also:dnl  PAC_PROG_MAKEdnl D*/dnlAC_DEFUN(PAC_PROG_MAKE_ALLOWS_COMMENTS,[AC_CACHE_CHECK([whether make allows comments in actions],pac_cv_prog_make_allows_comments,[AC_REQUIRE([PAC_PROG_MAKE_PROGRAM])/bin/rm -f conftestcat > conftest <<.SHELL=/bin/shALL:	@# This is a valid comment!	@echo "success".pac_str=`$MAKE -f conftest 2>&1`/bin/rm -f conftest if test "$pac_str" != "success" ; then    pac_cv_prog_make_allows_comments="no"else    pac_cv_prog_make_allows_comments="yes"fi])if test "$pac_cv_prog_make_allows_comments" = "no" ; then    AC_MSG_WARN([Your make does not allow comments in target code.Using this make may cause problems when building programs.You should consider using gnumake instead.])    ifelse([$1],,[$1])fi])dnldnldnl/*Ddnl PAC_PROG_MAKE_VPATH - Check whether make supports source-code paths.dnldnl Synopsis:dnl PAC_PROG_MAKE_VPATHdnldnl Output Effect:dnl Sets the variable 'VPATH' to eitherdnl.vbdnl VPATH = .:${srcdir}dnl.vednl ordnl.vbdnl .PATH: . ${srcdir}dnl.vednl dnl Notes:dnl The test checks that the path works with implicit targets (some makesdnl support only explicit targets with 'VPATH' or 'PATH').dnldnl NEED TO DO: Check that $< works on explicit targets.dnldnl See Also:dnl PAC_PROG_MAKEdnldnl D*/dnlAC_DEFUN(PAC_PROG_MAKE_VPATH,[AC_SUBST(VPATH)AM_IGNORE(VPATH)AC_CACHE_CHECK([for virtual path format],pac_cv_prog_make_vpath,[AC_REQUIRE([PAC_PROG_MAKE_PROGRAM])rm -rf conftest*mkdir conftestdircat >conftestdir/a.c <<EOFA sample fileEOFcat > conftest <<EOFall: a.oVPATH=.:conftestdir.c.o:	@echo \$<EOFac_out=`$MAKE -f conftest 2>&1 | grep 'conftestdir/a.c'`if test -n "$ac_out" ; then     pac_cv_prog_make_vpath="VPATH"else    rm -f conftest    cat > conftest <<EOFall: a.o.PATH: . conftestdir.c.o:	@echo \$<EOF    ac_out=`$MAKE -f conftest 2>&1 | grep 'conftestdir/a.c'`    if test -n "$ac_out" ; then         pac_cv_prog_make_vpath=".PATH"    else	pac_cv_prog_make_vpath="neither VPATH nor .PATH works"    fifirm -rf conftest*])if test "$pac_cv_prog_make_vpath" = "VPATH" ; then    VPATH='VPATH=.:${srcdir}'elif test "$pac_cv_prog_make_vpath" = ".PATH" ; then    VPATH='.PATH: . ${srcdir}'fi])dnldnldnl/*Ddnl PAC_PROG_MAKE_SET_CFLAGS - Check whether make sets CFLAGSdnldnl Synopsis:dnl PAC_PROG_MAKE_SET_CFLAGS([action if true],[action if false])dnldnl Output Effects:dnl Executes the first argument if 'CFLAGS' is set by 'make'; executesdnl the second argument if 'CFLAGS' is not set by 'make'.dnldnl Notes:dnl If 'CFLAGS' is set by make, you may wish to override that choice in yourdnl makefile.dnldnl See Also:dnl PAC_PROG_MAKEdnl D*/AC_DEFUN(PAC_PROG_MAKE_SET_CFLAGS,[AC_CACHE_CHECK([whether make sets CFLAGS],pac_cv_prog_make_set_cflags,[AC_REQUIRE([PAC_PROG_MAKE_PROGRAM])/bin/rm -f conftestcat > conftest <<EOFSHELL=/bin/shALL:	@echo X[\$]{CFLAGS}XEOFpac_str=`$MAKE -f conftest 2>&1`/bin/rm -f conftest if test "$pac_str" = "XX" ; then    pac_cv_prog_make_set_cflags="no"else    pac_cv_prog_make_set_cflags="yes"fi])if test "$pac_cv_prog_make_set_cflags" = "no" ; then    ifelse([$2],,:,[$2])else    ifelse([$1],,:,[$1])fi])dnldnl/*Ddnldnl D*/AC_DEFUN(PAC_PROG_MAKE_CLOCK_SKEW,[AC_CACHE_CHECK([whether clock skew breaks make],pac_cv_prog_make_found_clock_skew,[AC_REQUIRE([PAC_PROG_MAKE_PROGRAM])rm -f conftest*cat > conftest <<EOFALL:	@-echo "success"EOF$MAKE -f conftest > conftest.out 2>&1if grep -i skew conftest >/dev/null 2>&1 ; then    pac_cv_prog_make_found_clock_skew=yeselse    pac_cv_prog_make_found_clock_skew=nofirm -f conftest*])dnl We should really do something if we detect clock skew.  The question is,dnl what?if test "$pac_cv_prog_make_found_clock_skew" = "yes" ; then    AC_MSG_WARN([Clock skew found by make.  The configure and build may fail.Consider building in a local instead of NFS filesystem.])fi])dnldnl/*Ddnl PAC_PROG_MAKE_HAS_PATTERN_RULES - Determine if the make program supportsdnl pattern rulesdnldnl Synopsis:dnl PAC_PROG_MAKE_HAS_PATTERN_RULES([action if true],[action if false])dnldnl Output Effect:dnl Executes the first argument if patterns of the formdnl.vbdnl   prefix%suffix: prefix%suffixdnl.vednl are supported by make (gnumake and Solaris make are known to supportdnl this form of target).  If patterns are not supported, executes thednl second argument.dnldnl See Also:dnl PAC_PROG_MAKEdnl dnl D*/AC_DEFUN(PAC_PROG_MAKE_HAS_PATTERN_RULES,[AC_CACHE_CHECK([whether make has pattern rules],pac_cv_prog_make_has_patterns,[AC_REQUIRE([PAC_PROG_MAKE_PROGRAM])rm -f conftest*cat > conftestmm <<EOF# Test for pattern rules.SUFFIXES:.SUFFIXES: .dep .cconftest%.dep: %.c	@cat \[$]< >\[$]@EOFdate > conftest.cif ${MAKE} -f conftestmm conftestconftest.dep 1>&AC_FD_CC 2>&1 </dev/null ; then    pac_cv_prog_make_has_patterns="yes"else    pac_cv_prog_make_has_patterns="no"firm -f conftest*])if test "$pac_cv_prog_make_has_patterns" = "no" ; then    ifelse([$2],,:,[$2])else    ifelse([$1],,:,[$1])fi])dnldnldnl/*Ddnl PAC_PROG_MAKE - Checks for the varieties of MAKE, including support for dnl VPATHdnldnl Synopsis:dnl PAC_PROG_MAKEdnldnl Output Effect:dnl Sets 'MAKE' to the make program to use if 'MAKE' is not already set.dnl Sets the variable 'SET_CFLAGS' to 'CFLAGS =' if make sets 'CFLAGS'.dnldnl Notes:dnl This macro uses 'PAC_PROG_MAKE_ECHOS_DIR', 'PAC_PROG_MAKE_INCLUDE',dnl 'PAC_PROG_MAKE_ALLOWS_COMMENTS', 'PAC_PROG_MAKE_VPATH', anddnl 'PAC_PROG_MAKE_SET_CFLAGS'.  See those commands for details about theirdnl actions.dnl dnl It may call 'AC_PROG_MAKE_SET', which sets 'SET_MAKE' to 'MAKE = @MAKE@'dnl if the make program does not set the value of make, otherwise 'SET_MAKE'dnl is set to empty; if the make program echos the directory name, then dnl 'SET_MAKE' is set to 'MAKE = $MAKE'.dnl D*/dnlAC_DEFUN(PAC_PROG_MAKE,[PAC_PROG_MAKE_PROGRAMPAC_PROG_MAKE_CLOCK_SKEWPAC_PROG_MAKE_ECHOS_DIRPAC_PROG_MAKE_INCLUDEPAC_PROG_MAKE_ALLOWS_COMMENTSPAC_PROG_MAKE_VPATHdnl dnl We're not using patterns any more, and Compaq/DEC OSF-1 sometimes hangsdnl at this testdnl PAC_PROG_MAKE_HAS_PATTERN_RULESAC_SUBST(SET_CFLAGS)AM_IGNORE(SET_CFLAGS)PAC_PROG_MAKE_SET_CFLAGS([SET_CFLAGS='CFLAGS='])if test "$pac_cv_prog_make_echos_dir" = "no" ; then    AC_PROG_MAKE_SETelse    SET_MAKE="MAKE=${MAKE-make}"fi])

⌨️ 快捷键说明

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