autoconf
[Top][All Lists]
Advanced

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

Re: Temporary files == slowness


From: Eric Sunshine
Subject: Re: Temporary files == slowness
Date: Tue, 06 Jan 2004 14:43:03 -0500
User-agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.5) Gecko/20031007

Hello, thanks for responding.

Paul Eggert wrote:
I'm surprised the problem ever went away, as the subtle quoting
differences between

It didn't.  I was misled by a change to the way that Autoconf picks a shell.

Unless someone else pipes up with the real answer then I suppose we'll
have to get to the bottom of this ourselves.

I have already done a good deal of additional debugging since posting the original email. It turns out that the problem is that Autoconf CVS now chooses to use the older factory-supplied NextStep shell, rather than the newer, modern version of Bash which I have installed. Autoconf versions up to 2.59 correctly choose the newer shell.

The reason that Autoconf CVS chooses the older shell is because it is only looking for a shell which implements shell functions (which the NextStep shell does), and the factory-supplied shell is the first one it finds. The reason that 2.59 (and earlier) chooses the newer Bash is that it is looking for a shell which implements $LINENO (which the NextStep shell does _not_). Therefore, 2.59 prefers Bash (since it implements $LINENO) over the factory-supplied NextStep shell.

I think the appropriate fix is to prefer a shell which implements both functions and $LINENO if such a shell can be found. If not, then it should pick a shell which implements one or the other. I am planning on submitting a patch which will implement this heuristic. Not only will this make me happy (since running modern-day configure scripts is impossibly and painfully slow with the old NextStep shell), but it also just seems like the correct approach (i.e. preferring a more functional, modern shell over a less functional, slower one).

-- ES





reply via email to

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