From: Rich Felker Date: Fri, 28 Feb 2014 18:12:40 +0000 (-0500) Subject: improve configure's target arch matching X-Git-Tag: v1.0.0~33 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=0b8f0c57c0ff78fc1af9c8f5831eb1c1fdd7d970;p=oweals%2Fmusl.git improve configure's target arch matching most notably, it was failing to match sh4-*, etc., but in general the explicit matching of hyphens for some archs was problematic because it failed to accept simply the musl-style arch name (without a gcc-style tuple) as an input. the original motivation of matching hyphens was to prevent incorrectly identifying a 64-bit arch as the corresponding 32-bit arch (e.g. mips* matching mips64) but this is easily fixed by simply checking (and for now, rejecting as unsupported) the relevant 64-bit archs. --- diff --git a/configure b/configure index 434242b4..89e19909 100755 --- a/configure +++ b/configure @@ -222,14 +222,16 @@ printf "%s\n" "$target" # Convert to just ARCH # case "$target" in +# Catch these early to simplify matching for 32-bit archs +mips64*|powerpc64*) fail "$0: unsupported target \"$target\"" ;; arm*) ARCH=arm ;; i?86*) ARCH=i386 ;; x86_64-x32*|x32*) ARCH=x32 ;; x86_64*) ARCH=x86_64 ;; -mips-*|mipsel-*) ARCH=mips ;; -microblaze-*) ARCH=microblaze ;; -powerpc-*) ARCH=powerpc ;; -sh-*) ARCH=sh ;; +mips*) ARCH=mips ;; +microblaze*) ARCH=microblaze ;; +powerpc*) ARCH=powerpc ;; +sh[1-9bel-]*|sh|superh*) ARCH=sh ;; unknown) fail "$0: unable to detect target arch; try $0 --target=..." ;; *) fail "$0: unknown or unsupported target \"$target\"" ;; esac