mirror of
https://forge.sourceware.org/marek/gcc.git
synced 2026-02-22 03:47:02 -05:00
contrib: Use config.sub in test_installed
Correctly running GCC testsuites with an installed compiler requires both the canonical and noncanonical versions of the target triplet: the canonical one for where the testsuite matches on target triplets, and the noncanonical one for various "transform" calls used to find binutils programs. Make test_installed use config.sub to determine the canonical target from any value passed with --target= (and thus make logic to locate the toplevel source directory from its own location unconditional, as it's now used to locate config.sub). * test_installed: Use config.sub to determine canonical target.
This commit is contained in:
@@ -104,13 +104,16 @@ EOF
|
||||
*) break;;
|
||||
esac
|
||||
done
|
||||
|
||||
|
||||
# Determine the source directory to find config.sub, whether or not
|
||||
# that is also used to locate the testsuite sources.
|
||||
file=$0
|
||||
while [ -h $file ]; do
|
||||
file=`ls -l $file | sed s/'.* -> '//`
|
||||
done
|
||||
top_srcdir=`CDPATH=. && cd \`echo "$file" | sed 's,/*[^/]*$,,;s,^$,.,'\`/.. >/dev/null && ${PWDCMD-pwd}`
|
||||
if test x"${testsuite+set}" != x"set" && test x"${srcdir+set}" != x"set"; then
|
||||
file=$0
|
||||
while [ -h $file ]; do
|
||||
file=`ls -l $file | sed s/'.* -> '//`
|
||||
done
|
||||
srcdir=`CDPATH=. && cd \`echo "$file" | sed 's,/*[^/]*$,,;s,^$,.,'\`/.. >/dev/null && ${PWDCMD-pwd}`
|
||||
srcdir=$top_srcdir
|
||||
fi
|
||||
|
||||
cat >site.exp <<EOF
|
||||
@@ -130,7 +133,8 @@ set HOSTCFLAGS ""
|
||||
set HOSTCXXFLAGS ""
|
||||
EOF
|
||||
if test x${target} != x; then
|
||||
echo "set target_triplet $target" >> site.exp
|
||||
target_canonical=`$top_srcdir/config.sub $target`
|
||||
echo "set target_triplet $target_canonical" >> site.exp
|
||||
echo "set target_alias $target" >> site.exp
|
||||
fi
|
||||
if test x"$ALT_CC_UNDER_TEST" != x; then
|
||||
|
||||
Reference in New Issue
Block a user