----- Original Message ----- 
From: "Gilles Espinasse" <[EMAIL PROTECTED]>
To: "LFS Developers Mailinglist" <lfs-dev@linuxfromscratch.org>
Sent: Monday, June 02, 2008 11:15 PM
Subject: Re: cp foo{,.bak} not always supported


...
>
> I check in make-3.81 sources and /bin/sh is the default shell.
> NEWS file say
> * The `SHELL' variable is now never taken from the environment.
>   Each makefile that wants a shell other than the default (/bin/sh) must
>   set SHELL itself.  SHELL is always exported to child processes.
>   This change was made for compatibility with POSIX.2.
>
> To my understanding, just to workaround sh symlink not bash in Ubuntu,
this
> would imply we add in each of our makefile scripts
> SHELL = /bin/bash
>
I have changed an easier way.
During chapter 5, I change the call to execute makefile adding
SHELL='/bin/bash'

For reference, this does not only fix the expansion trouble in the scripts
but fix too gcc-4.2.3 compilation on Ubuntu-8.04.
The error was with bash shell :
In file included from ./tm.h:15,
                 from
/scratch/joseph/4.2.3/gcc-4.2.3/gcc-4.2.3/gcc/gengtype-yacc.y:26:
../../gcc-4.2.3/gcc/config/linux.h:129: error: expected identifier or '('
before '-' token
In file included from
/scratch/joseph/4.2.3/gcc-4.2.3/gcc-4.2.3/gcc/gengtype-yacc.y:27:
../../gcc-4.2.3/gcc/gengtype.h:25: warning: ISO C does not allow extra ';'
outside of a function
../../gcc-4.2.3/gcc/gengtype.h:62: error: field 'line' has incomplete type
../../gcc-4.2.3/gcc/gengtype.h:86: error: field 'line' has incomplete type
../../gcc-4.2.3/gcc/gengtype.h:100: error: field 'line' has incomplete type
make[4]: *** [build/gengtype-yacc.o] Error 1

Another side effect for LFS-5.1 is that this time adding SHELL='/bin/bash'
during chapter 5 break gcc-3.3.3 compilation during installation.
Error was
/bin/bash ../libtool  --mode=install /bin/bash
/home/gesp/ipcop/1.4b/build/usr/src/gcc-3.3.3/install-sh -c libsupc++.la
/tools/lib/./libsupc++.la
libtool: install: `/tools/lib/./libsupc++.la' is not a directory

During gcc installation, I had to force /bin/sh usage with
make $(EXTRA_INSTALL) SHELL=/bin/sh install


Gilles

-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to