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

Re: Moving bash from essential/required to important?



Steve Langasek <vorlon@debian.org> writes:
> On Tue, Apr 05, 2011 at 02:00:36AM +0200, Carsten Hey wrote:

>>  * Make dash conform to POSIX.  dash/sid is not detected as being
>>    a POSIX shell by autotools, which leads to lines like #!@POSIX_SHELL@
>>    to become #!/bin/bash and thus introduces useless dependencies on
>>    bash.

> Do you know what exactly it is about dash that autoconf believes is not
> POSIX-compliant?  My understanding was that dash *is* POSIX-compliant, but
> that this is not enough to satisfy autoconf's specific requirements.

dash doesn't support $LINENO, which is why it's not detected by Autoconf.
The reason why it doesn't support $LINENO (it's intentional; we had a
patch to add it that was then removed) is that the configure.ac files of
many, many packages contain bashisms that dash doesn't support.  If
$LINENO support is present in dash, Autoconf considers dash sufficiently
POSIX to use as the configure shell, and then all those packages FTBFS.

This is, without question, a bug in every package that has a configure.ac
script that assumes bash.  The problem is that there are apparently a
whole ton of them, and convincing upstream to care is in some cases going
to be hard.

See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=582952 for the gory
details.

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


Reply to: