autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: using atlocal variables in autotest macros


From: Ralf Wildenhues
Subject: Re: using atlocal variables in autotest macros
Date: Tue, 3 Mar 2009 08:13:20 +0100
User-agent: Mutt/1.5.18 (2008-05-17)

* John Wohlbier wrote on Mon, Mar 02, 2009 at 04:51:27AM CET:
> m4_define([AT_MPIRUN_PROGRAM],
> [echo "$MPI_LIBS"
>  AS_IF([test -n "$MPI_LIBS"],
>        [AT_BANNER([executing mpirun -n $2 $1])
>         AT_TESTED([$1])
>         AT_SETUP([$1])
>         AT_CHECK([mpirun -n $2 $1],[0],[ignore],[ignore])
>         AT_CLEANUP])
> ])
> 
> I don't see results from the "echo" in any of the resulting files. Thus I
> have no way of knowing if the AS_IF should even work since I don't know the
> value of MPI_LIBS.

Ah, another specialty of Autotest.  Shell code not enclosed in AT_SETUP/
AT_CLEANUP is pretty much dropped on the floor.  I.e., the banners and
the number of tests that a testsuite contains as a whole, is a constant
determined at the time the testsuite is created.

I guess you want something like this instead:

m4_define([AT_MPIRUN_PROGRAM],
[AT_BANNER([executing mpirun -n $2 $1])
AT_SETUP([$1])
echo foo "$MPI_LIBS"
AS_IF([test -n "$MPI_LIBS"],
       [AT_CHECK([mpirun -n $2 $1],[0],[ignore],[ignore])])
AT_CLEANUP
])

but that will warn if no AT_CHECK is executed during the test.  So:

m4_define([AT_MPIRUN_PROGRAM],
[AT_BANNER([executing mpirun -n $2 $1])
AT_SETUP([$1])
AT_CHECK([test -n "$MPI_LIBS" || exit 77])
AT_CHECK([mpirun -n $2 $1],[0],[ignore],[ignore])
AT_CLEANUP
])

Hope that helps.

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]