Excellent -- many thanks Ralf! One very minor question: I notice you added silent-rules to AM_INIT_AUTOMAKE (and bumped the required version, too), but still left in the call to AM_SILENT_RULES:
-AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects no-define 1.10 tar-ustar]) +AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects no-define 1.10c silent-rules tar-ustar]) # If Automake supports silent rules, enable them. m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) Is the call to AM_SILENT_RULES now moot because it's listed in AM_INIT_AUTOMAKE? On Sep 23, 2010, at 1:12 AM, Ralf Wildenhues wrote: > Hello OpenMPI developers, > > just-released Autoconf 2.68 contains more stringent checks and warnings > about stuff passed to AC_{COMPILE,LINK,RUN}_IFELSE and AC_TRY_* macros. > Specifically, it will warn if C or C++ programs are not generated with > AC_LANG_SOURCE or AC_LANG_PROGRAM, in order to avoid accidentally > omitting needed headers, or mess up arguments in some way. This has > happened a few times to Autoconf users. > > These checks make more stringent assumptions on correct m4 quoting of > macros; IOW, there are mis-quotings which will cause false warnings to > be emitted. > > In cases where generating sources without AC_LANG_SOURCE or > AC_LANG_PROGRAM is done intentionally, the macro > AC_LANG_DEFINES_PROVIDED should be expanded inside the source. > > The patch below silences all warnings. I've used > AC_LANG_DEFINES_PROVIDED a couple of times in > config/ompi_check_vendor.m4, assuming that the tests are really meant > to not include any headers. In a couple of other cases, esp in > opal/mca/if/windows/configure.m4 and > opal/mca/installdirs/windows/configure.m4, I've added the default > include headers, assuming that they should not hurt. > > I've tested the patch with Autoconf 2.68 as well as Autoconf 2.67 on > GNU/Linux, but done no other testing. > > For complete absence of warnings from Autoconf 2.68 you will also need > to update the Libtool macros from upcoming 2.4.0. > > Cheers, > Ralf > > Index: opal/mca/installdirs/windows/configure.m4 > =================================================================== > --- opal/mca/installdirs/windows/configure.m4 (revision 23790) > +++ opal/mca/installdirs/windows/configure.m4 (working copy) > @@ -27,18 +27,20 @@ > # registry. We should first check that the function is defined, > # and then check for it's presence in the kernel32 library. > AC_MSG_CHECKING(for working RegOpenKeyEx) > - AC_TRY_RUN( [#include <windows.h> > + AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT > +#include <windows.h>], [ > int main( int argc, char** argv ) { > RegOpenKeyEx( HKEY_CURRENT_USER, "Software\\Open MPI", 0, KEY_READ, NULL); > - return 0; }], > + return 0; }])], > [AC_MSG_RESULT([yes]) > $1], > [AC_MSG_RESULT([no]) > $2], > - [AC_COMPILE_IFELSE([#include <windows.h> > + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT > +#include <windows.h>], [ > int main( int argc, char** argv ) { > RegOpenKeyEx( HKEY_CURRENT_USER, "Software\\Open MPI", 0, KEY_READ, NULL); > - return 0; }], > + return 0; }])], > [AC_MSG_RESULT([yes]) > $1], > [AC_MSG_RESULT([no]) > Index: opal/mca/paffinity/hwloc/hwloc/config/hwloc.m4 > =================================================================== > --- opal/mca/paffinity/hwloc/hwloc/config/hwloc.m4 (revision 23790) > +++ opal/mca/paffinity/hwloc/hwloc/config/hwloc.m4 (working copy) > @@ -430,13 +430,13 @@ > > _HWLOC_CHECK_DECL([sched_setaffinity], [ > AC_MSG_CHECKING([for old prototype of sched_setaffinity]) > - AC_COMPILE_IFELSE( > + AC_COMPILE_IFELSE([ > AC_LANG_PROGRAM([[ > #define _GNU_SOURCE > #include <sched.h> > static unsigned long mask; > ]], [[ sched_setaffinity(0, (void*) &mask); > - ]]), > + ]])], > AC_DEFINE([HWLOC_HAVE_OLD_SCHED_SETAFFINITY], [1], [Define to 1 if > glibc provides the old prototype of sched_setaffinity()]) > AC_MSG_RESULT([yes]), > AC_MSG_RESULT([no]) > @@ -447,19 +447,19 @@ > ]]) > > AC_MSG_CHECKING([for working CPU_SET]) > - AC_LINK_IFELSE( > + AC_LINK_IFELSE([ > AC_LANG_PROGRAM([[ > #include <sched.h> > cpu_set_t set; > ]], [[ CPU_ZERO(&set); CPU_SET(0, &set); > - ]]), > + ]])], > AC_DEFINE([HWLOC_HAVE_CPU_SET], [1], [Define to 1 if the CPU_SET > macro works]) > AC_MSG_RESULT([yes]), > AC_MSG_RESULT([no]) > ) > > AC_MSG_CHECKING([for working CPU_SET_S]) > - AC_LINK_IFELSE( > + AC_LINK_IFELSE([ > AC_LANG_PROGRAM([[ > #include <sched.h> > cpu_set_t *set; > @@ -468,7 +468,7 @@ > CPU_ZERO_S(CPU_ALLOC_SIZE(1024), set); > CPU_SET_S(CPU_ALLOC_SIZE(1024), 0, set); > CPU_FREE(set); > - ]]), > + ]])], > AC_DEFINE([HWLOC_HAVE_CPU_SET_S], [1], [Define to 1 if the CPU_SET_S > macro works]) > AC_MSG_RESULT([yes]), > AC_MSG_RESULT([no]) > @@ -570,7 +570,7 @@ > AC_MSG_CHECKING([for cpuid]) > old_CPPFLAGS="$CPPFLAGS" > CFLAGS="$CFLAGS -I$HWLOC_top_srcdir/include" > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[ > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ > #include <stdio.h> > #include <private/cpuid.h> > ]], [[ > @@ -580,7 +580,7 @@ > printf("highest cpuid %x\n", eax); > return 0; > } > - ]]), [ > + ]])], [ > AC_MSG_RESULT([yes]) > AC_DEFINE(HWLOC_HAVE_CPUID, 1, [Define to 1 if you have cpuid]) > hwloc_have_cpuid=yes > Index: opal/mca/if/windows/configure.m4 > =================================================================== > --- opal/mca/if/windows/configure.m4 (revision 23790) > +++ opal/mca/if/windows/configure.m4 (working copy) > @@ -27,21 +27,23 @@ > # registry. We should first check that the function is defined, > # and then check for it's presence in the kernel32 library. > AC_MSG_CHECKING([for working RegOpenKeyEx]) > - AC_TRY_RUN( [#include <windows.h> > + AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT > +#include <windows.h>], [ > int main( int argc, char** argv ) { > RegOpenKeyEx( HKEY_CURRENT_USER, "Software\\Open MPI", 0, KEY_READ, NULL); > - return 0; }], > + return 0; }])], > [AC_MSG_RESULT([yes]) > $1], > [AC_MSG_RESULT([no]) > $2], > - [AC_COMPILE_IFELSE([#include <windows.h> > + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT > +#include <windows.h>], [ > int main( int argc, char** argv ) { > RegOpenKeyEx( HKEY_CURRENT_USER, "Software\\Open MPI", 0, KEY_READ, NULL); > - return 0; }], > + return 0; }])], > [AC_MSG_RESULT([yes]) > $1], > [AC_MSG_RESULT([no]) > $2])]) > -])dnl > +])])dnl > > Index: opal/mca/memchecker/valgrind/configure.m4 > =================================================================== > --- opal/mca/memchecker/valgrind/configure.m4 (revision 23790) > +++ opal/mca/memchecker/valgrind/configure.m4 (working copy) > @@ -42,11 +42,11 @@ > opal_memchecker_valgrind_save_CPPFLAGS=$CPPFLAGS]) > AC_CHECK_HEADERS([valgrind/valgrind.h], > [AC_MSG_CHECKING([for VALGRIND_CHECK_MEM_IS_ADDRESSABLE]) > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[ > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ > #include "valgrind/memcheck.h" > ]], > [[char buffer = 0xff; > - VALGRIND_CHECK_MEM_IS_ADDRESSABLE(&buffer, > sizeof(buffer));]]), > + VALGRIND_CHECK_MEM_IS_ADDRESSABLE(&buffer, > sizeof(buffer));]])], > [AC_MSG_RESULT([yes]) > opal_memchecker_valgrind_happy=yes], > [AC_MSG_RESULT([no]) > Index: opal/config/opal_setup_libevent.m4 > =================================================================== > --- opal/config/opal_setup_libevent.m4 (revision 23790) > +++ opal/config/opal_setup_libevent.m4 (working copy) > @@ -198,26 +198,26 @@ > > haveepoll=no > AC_MSG_CHECKING([for working epoll library interface]) > - AC_RUN_IFELSE(AC_LANG_PROGRAM([[ > -AC_INCLUDES_DEFAULT > + AC_RUN_IFELSE([AC_LANG_PROGRAM([ > +AC_INCLUDES_DEFAULT[ > #include <sys/epoll.h>]], > [[ > struct epoll_event epevin; > struct epoll_event epevout; > int res; > int epfd; > - int fildes[[2]]; > + int fildes[2]; > > if ((epfd = epoll_create(1)) == -1) > exit(1); > - if (pipe(&fildes[[0]]) < 0) > + if (pipe(&fildes[0]) < 0) > exit(1); > memset(&epevin, 0, sizeof(epevin)); > memset(&epevout, 0, sizeof(epevout)); > memset(&epevin.data.ptr, 5, sizeof(epevin.data.ptr)); > epevin.events = EPOLLIN | EPOLLOUT; > > - if (epoll_ctl(epfd, EPOLL_CTL_ADD, fildes[[1]], &epevin) == -1) > + if (epoll_ctl(epfd, EPOLL_CTL_ADD, fildes[1], &epevin) == -1) > exit(1); > > res = epoll_wait(epfd, &epevout, 1, 0); > @@ -229,7 +229,7 @@ > } > } > /* SUCCESS */ > -]]), > +]])], > [haveepoll=yes > AC_DEFINE(HAVE_EPOLL, 1, > [Define if your system supports the epoll interface]) > @@ -244,8 +244,8 @@ > # OMPI: See comment above. This test uses the epoll system call > # interface instead of the library interface. > AC_MSG_CHECKING(for working epoll system call) > - AC_RUN_IFELSE(AC_LANG_PROGRAM([[ > -AC_INCLUDES_DEFAULT > + AC_RUN_IFELSE([AC_LANG_PROGRAM([ > +AC_INCLUDES_DEFAULT[ > #include <sys/syscall.h> > #include <sys/epoll.h>]], > [[ > @@ -253,11 +253,11 @@ > struct epoll_event epevout; > int res; > int epfd; > - int fildes[[2]]; > + int fildes[2]; > > if ((epfd = syscall(__NR_epoll_create, 1)) == -1) > exit(1); > - if (pipe(&fildes[[0]]) < 0) > + if (pipe(&fildes[0]) < 0) > exit(1); > memset(&epevin, 0, sizeof(epevin)); > memset(&epevout, 0, sizeof(epevout)); > @@ -265,7 +265,7 @@ > epevin.events = EPOLLIN | EPOLLOUT; > > if (syscall(__NR_epoll_ctl, epfd, > - EPOLL_CTL_ADD, fildes[[1]], &epevin) == -1) > + EPOLL_CTL_ADD, fildes[1], &epevin) == -1) > exit(1); > > res = syscall(__NR_epoll_wait, epfd, &epevout, 1, 0); > @@ -277,7 +277,7 @@ > } > } > /* SUCCESS */ > -]]), > +]])], > [haveepollsyscall=yes > AC_DEFINE(HAVE_EPOLL, 1, > [Define if your system supports the epoll interface]) > @@ -313,7 +313,7 @@ > esac > if test "x$havekqueue" = "xyes" ; then > AC_MSG_CHECKING(for working kqueue) > - AC_TRY_RUN( > + AC_TRY_RUN([ > #include <sys/types.h> > #include <sys/time.h> > #include <sys/event.h> > @@ -327,30 +327,30 @@ > { > int kq; > int n; > - int fd[[2]]; > + int fd[2]; > struct kevent ev; > struct timespec ts; > - char buf[[8000]]; > + char buf[8000]; > > if (pipe(fd) == -1) > exit(1); > - if (fcntl(fd[[1]], F_SETFL, O_NONBLOCK) == -1) > + if (fcntl(fd[1], F_SETFL, O_NONBLOCK) == -1) > exit(1); > > - while ((n = write(fd[[1]], buf, sizeof(buf))) == sizeof(buf)) > + while ((n = write(fd[1], buf, sizeof(buf))) == sizeof(buf)) > ; > > if ((kq = kqueue()) == -1) > exit(1); > > - ev.ident = fd[[1]]; > + ev.ident = fd[1]; > ev.filter = EVFILT_WRITE; > ev.flags = EV_ADD | EV_ENABLE; > n = kevent(kq, &ev, 1, NULL, 0, NULL); > if (n == -1) > exit(1); > > - read(fd[[0]], buf, sizeof(buf)); > + read(fd[0], buf, sizeof(buf)); > > ts.tv_sec = 0; > ts.tv_nsec = 0; > @@ -359,7 +359,7 @@ > exit(1); > > exit(0); > -}, [AC_MSG_RESULT(yes) > +}], [AC_MSG_RESULT(yes) > AC_DEFINE(HAVE_WORKING_KQUEUE, 1, > [Define if kqueue works correctly with pipes]) > sources="kqueue.c $sources"], [AC_MSG_RESULT(no)], [AC_MSG_RESULT(no)]) > Index: opal/config/opal_config_asm.m4 > =================================================================== > --- opal/config/opal_config_asm.m4 (revision 23790) > +++ opal/config/opal_config_asm.m4 (working copy) > @@ -585,11 +585,11 @@ > ;; > *) > if test ! "$assembly" = "" ; then > - AC_RUN_IFELSE(AC_LANG_PROGRAM([[ > -AC_INCLUDES_DEFAULT]], > + AC_RUN_IFELSE([AC_LANG_PROGRAM([ > +AC_INCLUDES_DEFAULT], > [[int ret = 1; > __asm__ __volatile__ ($assembly); > -return ret;]]), > +return ret;]])], > [asm_result="yes"], [asm_result="no"], > [asm_result="unknown"]) > else > @@ -600,11 +600,11 @@ > > # if we're cross compiling, just try to compile and figure good enough > if test "$asm_result" = "unknown" ; then > - AC_LINK_IFELSE(AC_LANG_PROGRAM([[ > -AC_INCLUDES_DEFAULT]], > + AC_LINK_IFELSE([AC_LANG_PROGRAM([ > +AC_INCLUDES_DEFAULT], > [[int ret = 1; > __asm__ __volatile__ ($assembly); > -return ret;]]), > +return ret;]])], > [asm_result="yes"], [asm_result="no"]) > fi > fi > @@ -639,11 +639,11 @@ > ;; > *) > if test ! "$assembly" = "" ; then > - AC_RUN_IFELSE(AC_LANG_PROGRAM([[ > -AC_INCLUDES_DEFAULT]], > + AC_RUN_IFELSE([AC_LANG_PROGRAM([ > +AC_INCLUDES_DEFAULT], > [[int ret = 1; > __asm__ __volatile__ ($assembly); > -return ret;]]), > +return ret;]])], > [asm_result="yes"], [asm_result="no"], > [asm_result="unknown"]) > else > @@ -653,11 +653,11 @@ > esac > # if we're cross compiling, just try to compile and figure good enough > if test "$asm_result" = "unknown" ; then > - AC_LINK_IFELSE(AC_LANG_PROGRAM([[ > -AC_INCLUDES_DEFAULT]], > + AC_LINK_IFELSE([AC_LANG_PROGRAM([ > +AC_INCLUDES_DEFAULT], > [[int ret = 1; > __asm__ __volatile__ ($assembly); > -return ret;]]), > +return ret;]])], > [asm_result="yes"], [asm_result="no"]) > fi > > @@ -690,11 +690,11 @@ > > AC_MSG_CHECKING([if $CC supports DEC inline assembly]) > > - AC_LINK_IFELSE(AC_LANG_PROGRAM([[ > + AC_LINK_IFELSE([AC_LANG_PROGRAM([ > AC_INCLUDES_DEFAULT > -#include <c_asm.h>]], > +#include <c_asm.h>], > [[asm(""); > -return 0;]]), > +return 0;]])], > [asm_result="yes"], [asm_result="no"]) > > AC_MSG_RESULT([$asm_result]) > @@ -717,11 +717,11 @@ > AC_LANG_PUSH([C++]) > AC_MSG_CHECKING([if $CXX supports DEC inline assembly]) > > - AC_LINK_IFELSE(AC_LANG_PROGRAM([[ > + AC_LINK_IFELSE([AC_LANG_PROGRAM([ > AC_INCLUDES_DEFAULT > -#include <c_asm.h>]], > +#include <c_asm.h>], > [[asm(""); > -return 0;]]), > +return 0;]])], > [asm_result="yes"], [asm_result="no"]) > > AC_MSG_RESULT([$asm_result]) > Index: opal/config/opal_check_offsetof.m4 > =================================================================== > --- opal/config/opal_check_offsetof.m4 (revision 23790) > +++ opal/config/opal_check_offsetof.m4 (working copy) > @@ -21,13 +21,13 @@ > OMPI_VAR_SCOPE_PUSH([have_offsetof_msg]) > > AC_MSG_CHECKING(for functional offsetof macro) > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[#include<stddef.h>]], > - [[struct foo {int a, b;}; size_t > offset = offsetof(struct foo, b); ]]), > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include<stddef.h>]], > + [[struct foo {int a, b;}; size_t > offset = offsetof(struct foo, b); ]])], > [have_offsetof_msg="yes"], [have_offsetof_msg="no"]) > if test "$have_offsetof_msg" = "no"; then > CPPFLAGS="$CPPFLAGS -DNO_PGI_OFFSET" > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[#include<stddef.h>]], > - [[struct foo {int a, b;}; size_t > offset = offsetof(struct foo, b); ]]), > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include<stddef.h>]], > + [[struct foo {int a, b;}; size_t > offset = offsetof(struct foo, b); ]])], > [have_offsetof_msg="yes"], [have_offsetof_msg="no"]) > > if test "$have_offsetof_msg" = "no"; then > Index: configure.ac > =================================================================== > --- configure.ac (revision 23790) > +++ configure.ac (working copy) > @@ -82,7 +82,7 @@ > # > # Init automake > # > -AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects no-define 1.10 > tar-ustar]) > +AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects no-define 1.10c > silent-rules tar-ustar]) > > # If Automake supports silent rules, enable them. > m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) > @@ -409,9 +409,9 @@ > # > > AC_MSG_CHECKING(for C bool type) > -AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[ > -AC_INCLUDES_DEFAULT]], > -[[bool bar, foo = true; bar = foo;]]), > +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ > +AC_INCLUDES_DEFAULT], > +[[bool bar, foo = true; bar = foo;]])], > [OPAL_NEED_C_BOOL=0 MSG=yes],[OPAL_NEED_C_BOOL=1 MSG=no]) > AC_DEFINE_UNQUOTED(OPAL_NEED_C_BOOL, $OPAL_NEED_C_BOOL, > [Whether the C compiler supports "bool" without any other help (such as > <stdbool.h>)]) > @@ -594,12 +594,12 @@ > AC_CHECK_HEADERS([stdbool.h], [have_stdbool_h=1], [have_stdbool_h=0]) > AC_MSG_CHECKING([if <stdbool.h> works]) > if test "$have_stdbool_h" = "1"; then > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[ > -AC_INCLUDES_DEFAULT > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ > +AC_INCLUDES_DEFAULT[ > #if HAVE_STDBOOL_H > #include <stdbool.h> > #endif]], > -[[bool bar, foo = true; bar = foo;]]), > +[[bool bar, foo = true; bar = foo;]])], > [OPAL_USE_STDBOOL_H=1 MSG=yes],[OPAL_USE_STDBOOL_H=0 MSG=no]) > else > OPAL_USE_STDBOOL_H=0 > Index: ompi/config/ompi_setup_f90.m4 > =================================================================== > --- ompi/config/ompi_setup_f90.m4 (revision 23790) > +++ ompi/config/ompi_setup_f90.m4 (working copy) > @@ -197,8 +197,8 @@ > else > FCFLAGS="$FFLAGS $OMPI_CXX_EXCEPTIONS_CXXFLAGS" > AC_LANG_PUSH(Fortran) > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([], [[ INTEGER I > - I = 3]]), > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[ INTEGER I > + I = 3]])], > [AC_MSG_RESULT([yes])], > [AC_MSG_RESULT([no]) > AC_MSG_WARN([C++ exception flags are different between > the C and C++ compilers; this configure script cannot currently handle this > scenario. Either disable C++ exception support or send mail to the Open MPI > users list.]) > Index: ompi/config/cxx_have_exceptions.m4 > =================================================================== > --- ompi/config/cxx_have_exceptions.m4 (revision 23790) > +++ ompi/config/cxx_have_exceptions.m4 (working copy) > @@ -32,7 +32,7 @@ > AC_MSG_CHECKING([for throw/catch]) > AC_LANG_SAVE > AC_LANG_CPLUSPLUS > -AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[]], [[int i=1; throw(i);]]), > +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int i=1; throw(i);]])], > OMPI_CXX_EXCEPTIONS=1, OMPI_CXX_EXCPTIONS=0) > if test "$OMPI_CXX_EXCEPTIONS" = "1"; then > AC_MSG_RESULT([yes]) > Index: ompi/config/ompi_setup_cxx.m4 > =================================================================== > --- ompi/config/ompi_setup_cxx.m4 (revision 23790) > +++ ompi/config/ompi_setup_cxx.m4 (working copy) > @@ -329,7 +329,7 @@ > CFLAGS="$CFLAGS $OMPI_CXX_EXCEPTIONS_CXXFLAGS" > AC_LANG_SAVE > AC_LANG_C > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[]], [[int i = 0;]]), > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int i = 0;]])], > [AC_MSG_RESULT([yes])], > [AC_MSG_RESULT([no]) > AC_MSG_WARN([C++ exception flags are different > between the C and C++ compilers; this configure script cannot currently > handle this scenario. Either disable C++ exception support or send mail to > the Open MPI users list.]) > Index: ompi/config/ompi_setup_f77.m4 > =================================================================== > --- ompi/config/ompi_setup_f77.m4 (revision 23790) > +++ ompi/config/ompi_setup_f77.m4 (working copy) > @@ -134,8 +134,8 @@ > else > FFLAGS="$FFLAGS $OMPI_CXX_EXCEPTIONS_CXXFLAGS" > AC_LANG_PUSH(Fortran 77) > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([], [[ INTEGER I > - I = 3]]), > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[ INTEGER I > + I = 3]])], > [AC_MSG_RESULT([yes])], > [AC_MSG_RESULT([no]) > AC_MSG_WARN([C++ exception flags are different between > the C and C++ compilers; this configure script cannot currently handle this > scenario. Either disable C++ exception support or send mail to the Open MPI > users list.]) > Index: ompi/config/f77_get_fortran_handle_max.m4 > =================================================================== > --- ompi/config/f77_get_fortran_handle_max.m4 (revision 23790) > +++ ompi/config/f77_get_fortran_handle_max.m4 (working copy) > @@ -44,13 +44,13 @@ > # Get INT_MAX. Compute a SWAG if we are cross compiling or something > # goes wrong. > rm -f conftest.out >/dev/null 2>&1 > - AC_RUN_IFELSE(AC_LANG_PROGRAM([[ > + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ > #include <stdio.h> > #include <limits.h> > ]],[[FILE *fp = fopen("conftest.out", "w"); > long cint = INT_MAX; > fprintf(fp, "%ld", cint); > -fclose(fp);]]), > +fclose(fp);]])], > [ompi_cint_max=`cat conftest.out`], > [ompi_cint_max=0], > [ #cross compiling is fun. compute INT_MAX same as INTEGER max > Index: ompi/config/cxx_find_exception_flags.m4 > =================================================================== > --- ompi/config/cxx_find_exception_flags.m4 (revision 23790) > +++ ompi/config/cxx_find_exception_flags.m4 (working copy) > @@ -58,13 +58,13 @@ > > AC_LANG_SAVE > AC_LANG_CPLUSPLUS > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[]], [[try { int i = 0; } catch(...) > { int j = 2; }]]), ompi_happy=1, ompi_happy=0) > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[try { int i = 0; } catch(...) > { int j = 2; }]])], ompi_happy=1, ompi_happy=0) > > if test "$ompi_happy" = "1"; then > ompi_exflags="-fexceptions"; > else > CXXFLAGS="$CXXFLAGS_SAVE -fhandle-exceptions" > - AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[]], [[try { int i = 0; } catch(...) > { int j = 2; }]]), ompi_happy=1, ompi_happy=0) > + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[try { int i = 0; } > catch(...) { int j = 2; }]])], ompi_happy=1, ompi_happy=0) > if test "$ompi_happy" = "1"; then > ompi_exflags="-fhandle-exceptions"; > fi > Index: config/ompi_check_vendor.m4 > =================================================================== > --- config/ompi_check_vendor.m4 (revision 23790) > +++ config/ompi_check_vendor.m4 (working copy) > @@ -57,6 +57,9 @@ > $1="$ompi_cv_c_compiler_vendor" > ]) > > +# workaround to avoid syntax error with Autoconf < 2.68: > +m4_ifndef([AC_LANG_DEFINES_PROVIDED], > + [m4_define([AC_LANG_DEFINES_PROVIDED])]) > > # OMPI_IFDEF_IFELSE(symbol, [action-if-defined], > # [action-if-not-defined]) > @@ -64,7 +67,8 @@ > # Run compiler to determine if preprocessor symbol "symbol" is > # defined by the compiler. > AC_DEFUN([OMPI_IFDEF_IFELSE], [ > - AC_COMPILE_IFELSE([#ifndef $1 > + AC_COMPILE_IFELSE([AC_LANG_DEFINES_PROVIDED > +#ifndef $1 > #error "symbol $1 not defined" > choke me > #endif], [$2], [$3])]) > @@ -76,7 +80,8 @@ > # Run compiler to determine if preprocessor symbol "symbol" is > # defined by the compiler. > AC_DEFUN([OMPI_IF_IFELSE], [ > - AC_COMPILE_IFELSE([#if !( $1 ) > + AC_COMPILE_IFELSE([AC_LANG_DEFINES_PROVIDED > +#if !( $1 ) > #error "condition $1 not met" > choke me > #endif], [$2], [$3])]) > _______________________________________________ > devel mailing list > de...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/devel -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/