From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Sun, 2 Dec 2012 19:12:17 +0100 Subject: [U-Boot] [PATCH] fix linker generated lists on non-C locales In-Reply-To: <54186453.csccjxD8Xo@bloomfield> References: <1354470210-30801-1-git-send-email-morpheus.ibis@gmail.com> <201212021850.54013.marex@denx.de> <54186453.csccjxD8Xo@bloomfield> Message-ID: <201212021912.17415.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Dear Pavel Herrmann, > On Sunday 02 of December 2012 18:50:53 Marek Vasut wrote: > > Dear Pavel Herrmann, > > > > > Setting LC_COLLATE=C is not enough if LC_ALL=en_US.utf8. The result is > > > a build that has no available commands. Setting LC_ALL=C for the > > > generator script helps. > > > > > > Signed-off-by: Pavel Herrmann > > > --- > > > > > > helper.mk | 4 ++-- > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > diff --git a/helper.mk b/helper.mk > > > index 79a1da0..2b75182 100644 > > > --- a/helper.mk > > > +++ b/helper.mk > > > @@ -35,7 +35,7 @@ > > > > > > # line. Next, append "@" at the end and print the line. Finally, > > > # append "~" at the end of line. This will make sense in > > > conjunction # with 6) and 7). > > > > > > -# 7) Sort the lines. It is imperative to use LC_COLLATE=C here because > > > +# 7) Sort the lines. It is imperative to use LC_ALL=C here because > > > > > > # with this, the "\a" symbol is first and "~" symbol is last. Any > > > # other symbols fall inbetween. Symbols like "@", which marks the > > > # end of current line (representing current section) and ".", which > > > > > > @@ -57,7 +57,7 @@ $(1): $(2) > > > > > > -e 's/\.[^\.]\+$$$$//' \ > > > -e ':s /^.\+$$$$/ { p;s/^\(.*\)\.[^\.]*$$$$/\1/;b s }' | \ > > > > > > sed -n -e 'h;s/$$$$/\a/p;g;s/$$$$/@/p;g;s/$$$$/~/p;' | \ > > > > > > - LC_COLLATE=C sort -u | \ > > > + LC_ALL=C sort -u | \ > > > > How will this work? LC_COLLATE is supposed to adjust the behavior of > > "sort" command, without it, "sort" will not behave as expected. > > Clearly, LC_COLLATE is not enough for it to behave correctly, as seen on my > setup. > This works because LC_ALL sets LC_COLLATE, as well as all other LC_* > environment variables. Do you have any reference where I can verify this claim please? Best regards, Marek Vasut