autoconf-patches
[Top][All Lists]
Advanced

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

Re: [GNU Autoconf 2.59c] testsuite: 33 34 57 80 81 82 83 84 86 ... 224 f


From: Ralf Wildenhues
Subject: Re: [GNU Autoconf 2.59c] testsuite: 33 34 57 80 81 82 83 84 86 ... 224 failed
Date: Fri, 27 May 2005 09:28:59 +0200
User-agent: Mutt/1.4.1i

Hi Ralf, Paul,

* Ralf Menzel wrote on Thu, May 26, 2005 at 07:19:06PM CEST:
> Ralf Menzel <address@hidden> writes:
> >
> > bash> ../configure > /dev/null ; grep '^SHELL' Makefile
> > SHELL = /bin/bash
> > bash> /bin/bash ../configure > /dev/null ; grep '^SHELL' Makefile 
> > SHELL = /bin/sh
> > bash> /bin/sh ../configure > /dev/null ; grep '^SHELL' Makefile 
> > SHELL = /bin/bash
> 
> I tried to find out what is causing this 'inconsistency'. (Please keep
> in mind that I don't fully understand what I'm doing.) To me it looks
> like the configure script tests if its executing shell is 'compatible
> enough'. If this is not the case it looks for a better shell and
> records its name in CONFIG_SHELL. If the script is happy with the
> executing shell it doesn't touch the variable CONFIG_SHELL. It then
> assigns the variable SHELL the value of CONFIG_SHELL with /bin/sh as
> default.
> 
> So, if the shell that executes the configure script is bash the
> varible SHELL will be set to /bin/sh.

This patch addresses the "inconsistency":

| 2005-01-31  Paul Eggert  <address@hidden>
| 
|         * doc/autoconf.texi (config.status Invocation): Warn about
|         discrepancy between CONFIG_SHELL and shell used to invoke 'configure'.
|         * doc/install.texi (Defining Variables): Likewise.
|         Based on a proposed patch by Ralf Wildenhues.
*snip*
| --- doc/install.texi    20 Aug 2004 19:58:07 -0000      1.41
| +++ doc/install.texi    29 Jan 2005 14:31:09 -0000
| @@ -226,6 +226,15 @@
|  will cause the specified gcc to be used as the C compiler (unless it is
|  overridden in the site shell script).
| 
| +If you need @command{configure} as well as subsequent scripts like
| address@hidden to be executed by a certain shell, then set
| address@hidden and use @command{configure} as argument to the
| shell:
| +
| address@hidden
| +CONFIG_SHELL=/usr/bin/bash /usr/bin/bash ./configure [...]
| address@hidden example
| +
| address@hidden Invocation}, for more details.

> It tried the following patch.
> 
> --- lib/autoconf/general.m4   24 May 2005 07:32:13 -0000      1.862
> +++ lib/autoconf/general.m4   26 May 2005 17:05:48 -0000
> @@ -398,7 +398,7 @@ cross_compiling=no
>  subdirs=
>  MFLAGS=
>  MAKEFLAGS=
> -AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}])dnl
> +AC_SUBST([SHELL], [${CONFIG_SHELL-${SHELL-/bin/sh}}])dnl
>  AC_SUBST([PATH_SEPARATOR])dnl
>  
>  # Maximum number of lines to put in a shell here document.
> --- snip ---
> 
> This helped in my case. So you think it might be useful in general?

I don't think it's correct.  SHELL could be /bin/tcsh (and I vaguely
remember a similar discussion before, but cannot find it at the moment).
Moreover, I'm not sure that it won't break Libtool[1].

Regards,
Ralf

[1] Which is not Autoconf's primary problem, sure.  But it'd still be
nice to keep an eye on it if possible.




reply via email to

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