autoconf
[Top][All Lists]
Advanced

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

Re: converting netkit to autoconf?


From: Russ Allbery
Subject: Re: converting netkit to autoconf?
Date: Tue, 13 Aug 2002 14:35:59 -0700
User-agent: Gnus/5.090008 (Oort Gnus v0.08) XEmacs/21.4 (Honest Recruiter, sparc-sun-solaris2.6)

Peter Eisentraut <address@hidden> writes:
> Russ Allbery writes:

>> The most that's really acceptable is to ask the programmer to provide a
>> test case that fails, and the interface for doing that has to be as
>> clean as possible and involve as little distortion of the original test
>> code as possible.

> I think Autoconf does a fairly good job in what you describe.

I don't.  I think it does a better job than, say, writing the shell
scripts yourself, and I think it does better than any other currently
available tool, but I don't think it does a good job.

> You can pretty much do anything with AC_TRY_COMPILE, all the other tests
> are just convenience wrappers.  I think the real issue is that the
> system quirks never fail to be original, so writing robust test cases
> requires knowledge of the programming language, and Autoconf can't help
> there.

I don't agree.  I think the programming language for such tests could help
a great deal more than it does now.

> OK, quoting is tricky, but quoting is an issue in other languages, too, so
> the difference is only one of degree.

I very much do not agree here.  Quoting in m4 is insane.  Just look at all
the arguments that we have on this list about how to do it; if it's so
inobvious as to require all this discussion and significant incompatible
changes and is still an ongoing source of bugs, it's too hard.

One obvious improvement that could be made is to put substantial code
fragments for tests in their own files so that they don't have to be
quoted at all.  inodes are cheap; programmer confusion is expensive.

-- 
Russ Allbery (address@hidden)             <http://www.eyrie.org/~eagle/>




reply via email to

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