autoconf
[Top][All Lists]
Advanced

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

Re: Autoconf Data Representation


From: Paul Eggert
Subject: Re: Autoconf Data Representation
Date: Thu, 6 Dec 2001 10:27:00 -0800 (PST)

> From: Alexandre Duret-Lutz <address@hidden>
> Date: 06 Dec 2001 10:32:23 +0100
> 
>  Paul> @INSTALL@ --> /usr/bin/install -c
>  Paul> @"INSTALL"@ -> "/usr/bin/install -c"
>  Paul> @("INSTALL")@ -> ("/usr/bin/install" "-c")
> 
> What's wrong with the following syntax?
> 
>  @INSTALL@
>  "@INSTALL@"
>  (string-split "@INSTALL@" #\space) ;; or whatever this function is called

"@INSTALL@" isn't quite right, as it mishandles internal \ and ".

A similar quoting problem occurs with plain @INSTALL@ and /bin/sh of
course.  But I take it that Ryan Collins is trying to solve the
problem in general, not just for some convenient subset of strings.
(That is the Scheme way.  :-)

It does occur to me that we need only one consistent way to quote, not
two.  Scheme can convert to whatever internal form that it likes, so
long as the input is a faithfully quoted representation of the desired
command.

Under the current Autoconf method, the string that @INSTALL@ rewrites
to is first read by 'make', and then by the shell.  So if Scheme can
be programmed to do the make stuff (namely, replace $$ with $), and
then the shell stuff, we don't need to change Autoconf at all.  Still,
this seems a bit unfriendly.  It would be nicer to have a simple
quoting scheme instead of 'emulate make and then emulate the shell'.

That being said, this is sounding like it might be harder project than
I thought at first.  I'd forgotten about the make+shell business.



reply via email to

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