On 09/11/2018 17:19, Bruce Dubbs via lfs-dev wrote:
On 11/09/2018 09:44 AM, Pierre Labastie via lfs-dev wrote:
On 09/11/2018 14:30, Pierre Labastie via lfs-dev wrote:
On 09/11/2018 13:38, John Frankish via lfs-dev wrote:

As an aside, what is the first line of the current script meant to expand to?

$ for file in gcc/config/{linux,i386/linux{,64}}.h

gcc/config/linux/linux.h
gcc/config/linux/linux64.h
gcc/config/i386/linux.h
gcc/config/i386/linux64.h

..gcc/config/linux is not present in the gcc-8.2.0 source

Has coreutils always been able to deal with double {{}} or is a new(er) version required?

Brace expansion is done in bash.  You can always test the results with

echo gcc/config/{linux,i386/linux{,64}}.h
gcc/config/linux.h gcc/config/i386/linux.h gcc/config/i386/linux64.h

Ah - my problem is here:

$ for file in gcc/config/{linux,i386/linux{,64}}.h
do
echo $file
done
gcc/config/{linux,i386/linux{,64}}.h

$ for file in gcc/config/linux.h gcc/config/i386/linux.h gcc/config/i386/linux64.h
do
echo $file
done
gcc/config/linux.h
gcc/config/i386/linux.h
gcc/config/i386/linux64.h

Hmmm, is your host using bash? I just tried dash, and I get:
$ for file in gcc/config/{linux,i386/linux{,64}}.h
> do echo $file
> done
gcc/config/{linux,i386/linux{,64}}.h

If your system is debian-like, try "sudo dpkg-reconfigure dash"


Hmm, sorry, I see that your system is tinycore64. AFAICS, there is no dash shell in tinycore (unless you compiled it). It seems to have only bash... But maybe it is a stripped down version of bash, not interpreting double {. Or maybe you are using busybox shell (testing it on debian shows it does not interpret the double {).

The issue of dash vs bash should be handled in the version-check.sh script.

Let me note that I did a test build two days ago before the most recent commit.  The last change to gcc-pass1 was June 20th and the last change to the subject for loop in gcc-pass1 was done in December 2016.


Actually, the version-check.sh script ensures bash exists on the system, and that /bin/sh points to bash. It does not ensure that the user shell is bash. Normally, since the lfs user is useradd'ed with "-s /bin/bash", the command su - lfs should run bash. I understand John is trying to use tinycore, so that he may have tried to minimize size, and not created user lfs (and not run "su" either)

Pierre

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

Reply via email to