This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: XFAILing V3 tests.


Zack Weinberg writes:
> Mark Mitchell <mark at codesourcery dot com> writes:
> 
> > There seem to be a lot of V3 tests that fail all the time; most of these
> > have wchar_t in their names.  I assume these fail only on some systems.
> >
> > Would one of the V3 volunteers be so kind as to XFAIL these tests?   There
> > is no way to see the forest for the trees otherwise; on my system I get 69
> > failures, which means that if I add one more I will never see it.
> 
> You probably don't have enough locales installed.  This is the list I
> worked out by trial and error:
> 
> de_DE ISO-8859-1
> de_DE at euro ISO-8859-15
> en_HK ISO-8859-1
> en_PH ISO-8859-1
> en_US ISO-8859-1
> en_US.UTF-8 UTF-8
> en_US.ISO-8859-15 ISO-8859-15
> es_MX ISO-8859-1
> fr_FR at euro ISO-8859-15
> it_IT ISO-8859-1
> ja_JP.EUC-JP EUC-JP
> 
> On a Debian system, splat that list into /etc/locale-gen and run
> /usr/sbin/locale-gen; libstdc++ test results should then be

If you cannot install these locales on your own, you can build them
before running the testsuite. I'm using the script attached. Then set
the env var LOCPATH to `pwd`/locales before running these tests.

Your list varies a bit. Seems we could need some documentation, which
locales are actually used by the testsuite.

> I have no idea how to do that on other operating systems, or even other
> Linux distributions.

AFIIK other distributions have the locale data all pregenerated.

	Matthias

#!/bin/sh

LOCPATH=`pwd`/locales
export LOCPATH

[ -d $LOCPATH ] || mkdir -p $LOCPATH

umask 022

echo "Generating locales..."
while read locale charset; do
	case $locale in \#*) continue;; esac
	[ -n "$locale" -a -n "$charset" ] || continue
	echo -n "  `echo $locale | sed 's/\([^ dot \ at ]*\).*/\1/'`"
	echo -n ".$charset"
	echo -n `echo $locale | sed 's/\([^\ at ]*\)\(\ at  dot *\)*/\2/'`
	echo -n '...'
        if [ -f $LOCPATH/$locale ]; then
	    input=$locale
	else
            input=`echo $locale | sed 's/\([^.]*\)[^ at ]*\(.*\)/\1\2/'`
	fi
	localedef -i $input -c -f $charset $LOCPATH/$locale #-A /etc/locale.alias
	echo ' done'; \
done <<EOF
# This file lists locales that the libstdc++ testsuite depends on
de_DE ISO-8859-1
de_DE at euro ISO-8859-15
en_HK ISO-8859-1
en_PH ISO-8859-1
en_US ISO-8859-1
en_US ISO-8859-15
en_US UTF-8
es_MX ISO-8859-1
fr_FR ISO-8859-1
fr_FR at euro ISO-8859-15
it_IT ISO-8859-1
ja_JP EUC-JP
EOF

echo "Generation complete."


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]