3
# GMP config.sub wrapper.
6
# Copyright 2000, 2001 Free Software Foundation, Inc.
8
# This file is part of the GNU MP Library.
10
# The GNU MP Library is free software; you can redistribute it and/or modify
11
# it under the terms of the GNU Lesser General Public License as published
12
# by the Free Software Foundation; either version 2.1 of the License, or (at
13
# your option) any later version.
15
# The GNU MP Library is distributed in the hope that it will be useful, but
16
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
17
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
18
# License for more details.
20
# You should have received a copy of the GNU Lesser General Public License
21
# along with the GNU MP Library; see the file COPYING.LIB. If not, write to
22
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
26
# Usage: config.sub CPU-VENDOR-OS
29
# Validate and canonicalize the given configuration name, with special
30
# handling for GMP extra CPU names.
32
# When the CPU isn't special the whole name is simply passed straight
33
# through to configfsf.sub.
35
# When the CPU is a GMP extra, configfsf.sub is run on a similar CPU that it
36
# will recognise. For example "athlon-pc-freebsd3.5" is validated using
37
# "i386-pc-freebsd3.5".
39
# Any canonicalizations made by configfsf.sub are preserved. For example
40
# given "athlon-linux", configfsf.sub is called with "i386-linux" and will
41
# give back "i386-pc-linux-gnu". "athlon" is then reinstated, so we print
42
# "athlon-pc-linux-gnu".
45
# Expect to find configfsf.sub in the same directory as this config.sub
46
configfsf_sub="`echo \"$0\" | sed 's/config.sub$/configfsf.sub/'`"
47
if test "$configfsf_sub" = "$0"; then
48
echo "Cannot derive configfsf.sub from $0" 1>&2
51
if test -f "$configfsf_sub"; then
54
echo "$configfsf_sub not found" 1>&2
58
# Always run configfsf.sub with $SHELL, like autoconf does for config.sub
59
SHELL=${CONFIG_SHELL-/bin/sh}
61
# Identify ourselves on --version, --help, etc
64
echo "(GNU MP wrapped config.sub)" 1>&2
65
$SHELL $configfsf_sub "$@"
71
given_cpu=`echo "$given_full" | sed 's/-.*$//'`
72
given_rest=`echo "$given_full" | sed 's/^[^-]*//'`
75
# Aliases for GMP extras
77
p5 | p54) given_cpu=pentium ;;
78
p55) given_cpu=pentiummmx ;;
79
p6) given_cpu=pentiumpro ;;
80
pentiumii) given_cpu=pentium2 ;;
81
pentiumiii) given_cpu=pentium3 ;;
83
given_full="$given_cpu$given_rest"
86
# GMP extras and what to use for the config.sub test
88
pentium | pentiummmx | pentiumpro | pentium[234] | k[56] | k6[23] | athlon)
94
sparcv8 | supersparc | microsparc | ultrasparc | ultrasparc[123])
100
# Don't need or want to change the given name, just run configfsf.sub
101
$SHELL $configfsf_sub "$given_full"
105
echo "(GNU MP wrapped config.sub, testing \"$given_full\")"
111
test_full="$test_cpu$given_rest"
112
canonical_full=`$SHELL $configfsf_sub "$test_full"`
116
echo "(GNU MP wrapped config.sub, testing \"$given_full\" as \"$test_full\")"
120
canonical_rest=`echo "$canonical_full" | sed 's/^[^-]*//'`
121
echo "$given_cpu$canonical_rest"