From 0b8f0c57c0ff78fc1af9c8f5831eb1c1fdd7d970 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Fri, 28 Feb 2014 13:12:40 -0500 Subject: 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. --- configure | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'configure') 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 -- cgit v1.2.3-70-g09d2