diff --git a/ChangeLog b/ChangeLog index be4173f..b929436 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2018-08-08 John Ericson + + * testsuiteb/config-sub.sh (run_config_sub_idempotent): New. + * config.sub: Fixes to pass the testsuite. + 2018-08-03 John Ericson * testsuite/config-guess.sh: Make 'rc' a local variable. diff --git a/config.sub b/config.sub index 52eb02e..eb33427 100755 --- a/config.sub +++ b/config.sub @@ -654,6 +654,8 @@ case $basic_machine in leon|leon[3-9]) basic_machine=sparc-$basic_machine ;; + m6811-* | m68hc11-* | m6812-* | m68hc12-* | m68hcs12x-* | nvptx-* | picochip-*) + ;; m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) basic_machine=$basic_machine-unknown os=${os:-none} @@ -664,6 +666,9 @@ case $basic_machine in basic_machine=s12z-unknown os=${os:-none} ;; + m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*) + basic_machine=s12z-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; ms1) basic_machine=mt-unknown ;; @@ -674,6 +679,8 @@ case $basic_machine in basic_machine=$basic_machine-unknown os=${os:-none} ;; + xgate-*) + ;; xscaleeb) basic_machine=armeb-unknown ;; @@ -689,22 +696,26 @@ case $basic_machine in basic_machine=$basic_machine-pc ;; # Recognize the basic CPU types with company name. - 580-* \ + 1750a-* | 580-* \ | a29k-* \ | aarch64-* | aarch64_be-* \ + | abacus-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ + | alphapca5[67]-* | alpha64pca5[67]-* \ + | am33_2.0-* \ + | arc-* | arceb-* \ + | arm-* | arm[lb]e-* | arme[lb]-* | armv*-* \ | avr-* | avr32-* \ + | asmjs-* \ | ba-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ | c8051-* | clipper-* | craynv-* | csky-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | e2k-* | elxsi-* \ - | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ + | d10v-* | d30v-* | dlx-* | dsp16xx-* \ + | e2k-* | elxsi-* | epiphany-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | ft32-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | hexagon-* \ @@ -714,8 +725,8 @@ case $basic_machine in | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ + | m5200-* | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* | v70-* | w65-* \ + | m88110-* | m88k-* | maxq-* | mb-* | mcore-* | mep-* | metag-* \ | microblaze-* | microblazeel-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ @@ -739,6 +750,7 @@ case $basic_machine in | mipsr5900-* | mipsr5900el-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ + | mn10200-* | mn10300-* \ | moxie-* \ | mt-* \ | msp430-* \ @@ -748,6 +760,7 @@ case $basic_machine in | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ | or1k*-* \ + | or32-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ @@ -755,14 +768,15 @@ case $basic_machine in | pyramid-* \ | riscv-* | riscv32-* | riscv64-* \ | rl78-* | romp-* | rs6000-* | rx-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ + | score-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]ae[lb]-* | sh[23]e-* | she[lb]-* | sh[lb]e-* \ + | sh[1234]e[lb]-* | sh[12345][lb]e-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ + | spu-* \ | tahoe-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tile*-* \ | tron-* \ | ubicom32-* \ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ @@ -1154,6 +1168,9 @@ case $basic_machine in sh5el) basic_machine=sh5le-unknown ;; + sh5el-*) + basic_machine=sh5le-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; simso-wrs) basic_machine=sparclite-wrs os=vxworks @@ -1179,6 +1196,8 @@ case $basic_machine in sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; + tile*-*) + ;; tile*) basic_machine=$basic_machine-unknown os=linux-gnu @@ -1354,7 +1373,7 @@ case $os in | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ | aos* | aros* | cloudabi* | sortix* \ | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ - | clix* | riscos* | uniplus* | iris* | rtu* | xenix* \ + | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ | knetbsd* | mirbsd* | netbsd* \ | bitrig* | openbsd* | solidbsd* | libertybsd* \ | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \ diff --git a/testsuite/config-sub.sh b/testsuite/config-sub.sh index 4d01ee0..a6ac5a1 100644 --- a/testsuite/config-sub.sh +++ b/testsuite/config-sub.sh @@ -9,28 +9,54 @@ # the alias expands to the expected canonical triplet. set -eu +shopt -s lastpipe verbose=false run_config_sub() { local -i rc=0 + numtests=0 + name="checks" while read -r alias canonical ; do output=$(sh -eu ../config.sub "$alias") if test "$output" != "$canonical" ; then echo "FAIL: $alias -> $output, but expected $canonical" rc=1 else - $verbose && echo "PASS: $alias" + $verbose && echo "PASS: $alias -> $canonical" fi + numtests+=1 done < config-sub.data return $rc } -if run_config_sub ; then - numtests=$(wc -l config-sub.data | cut -d' ' -f1) - $verbose || echo "PASS: config.sub checks ($numtests tests)" -else - exit 1 -fi +run_config_sub_idempotent() +{ + local -i rc=0 + numtests=0 + name="idempotency checks" + sed -r 's/\t+/\t/g' < config-sub.data | cut -f 2 | uniq | while read -r canonical ; do + output=$(sh -eu ../config.sub "$canonical") + if test "$output" != "$canonical" ; then + echo "FAIL: $canonical -> $output, but $canonical should map to itself" + rc=1 + else + $verbose && echo "PASS: $canonical -> $canonical" + fi + numtests+=1 + done + return $rc +} -exit 0 +declare -i rc=0 numtests +declare name + +for testsuite in run_config_sub run_config_sub_idempotent ; do + if $testsuite; then + $verbose || echo "PASS: config.sub $name ($numtests tests)" + else + rc=1 + fi +done + +exit $rc