[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question on AM_TAP_AWK
Re: Question on AM_TAP_AWK
Tue, 7 Apr 2015 14:30:12 -0700
On 2015-04-06 06:44 -0700, Arthur Schwarz wrote:
> Automake manual pg. 120
When referencing the manual it is best to provide section numbers,
and also quote the section title. Ideally, further include a brief
quotation of the text you are discussing.
(a) don't exist in non-print formats, and
(b) change over time.
Section headings suffer from (b) too but to a much lesser degree.
This is important not only so that we can figure out what part of the
manual is being discussed today, but also so that 10+ years from now,
someone searching can find this question can understand the context.
> Does anyone know where AM_TAP_AWK is defined and what it does?
I assume we are talking about §15.4.2 "Use TAP with the Automake test
harness", specifically this line in the example:
TEST_LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) \
AM_TAP_AWK is defined right there, in the example code. Its purpose is
to tell the tap-driver.sh program which AWK program to use.
Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)
I guess what your saying is that the variable needs no definition; it's
self-defining. Does this mean that the TAP interface needs this variable
only under some circumstances but not under all? Since it is self-defined
within an example and not in some text which defines the TAP interface I
suppose that it is only required sometimes, otherwise the TAP interface
would have it as part of its description.
I'm also a bit confused about the use of env. Does this use mean that
Makefile evaluates TEST_LOG_DRIVER by escaping to a shell? Otherwise, does
Makefile do it's own interpretation of 'env'? the reason that I'm asking
this question is that on env Cygwin (8.23-4) manual page (and env --help)
env [OPTION]... [-] [NAME=VALUE]... [COMMAND [ARG]...]
which seems to imply that either we have NAME=VALUE or NAME=. The example
shows $(SHELL) which has neither of these. I suppose that when $(SHELL) is
evaluated it produces some variable name (?) but if it does, how does TAP
determine what this name is from the environment? Does it search the
environment for a fixed set of names and then assume success at the first
one found? Can I supply TAP with a shell whose name is not one of the fixed
set of names?
Anyhow, I'm abandoning TAP and going to try to use the Custom Drivers and
hope that if the definitions are not clearer then at least I can get some
sort of test going. If that doesn't work then I will distribute my software
with no testing.
The failure of the past is the challenge of the present and the success of