1*c43cad87SWarner Losh<<<<<<< HEAD 2*c43cad87SWarner Losh#! /bin/sh 3*c43cad87SWarner Losh# Configuration validation subroutine script. 4*c43cad87SWarner Losh# Copyright 1992-2021 Free Software Foundation, Inc. 5*c43cad87SWarner Losh 6*c43cad87SWarner Loshtimestamp='2021-01-07' 7*c43cad87SWarner Losh 8*c43cad87SWarner Losh# This file is free software; you can redistribute it and/or modify it 9*c43cad87SWarner Losh# under the terms of the GNU General Public License as published by 10*c43cad87SWarner Losh# the Free Software Foundation; either version 3 of the License, or 11*c43cad87SWarner Losh# (at your option) any later version. 12*c43cad87SWarner Losh# 13*c43cad87SWarner Losh# This program is distributed in the hope that it will be useful, but 14*c43cad87SWarner Losh# WITHOUT ANY WARRANTY; without even the implied warranty of 15*c43cad87SWarner Losh# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16*c43cad87SWarner Losh# General Public License for more details. 17*c43cad87SWarner Losh# 18*c43cad87SWarner Losh# You should have received a copy of the GNU General Public License 19*c43cad87SWarner Losh# along with this program; if not, see <https://www.gnu.org/licenses/>. 20*c43cad87SWarner Losh# 21*c43cad87SWarner Losh# As a special exception to the GNU General Public License, if you 22*c43cad87SWarner Losh# distribute this file as part of a program that contains a 23*c43cad87SWarner Losh# configuration script generated by Autoconf, you may include it under 24*c43cad87SWarner Losh# the same distribution terms that you use for the rest of that 25*c43cad87SWarner Losh# program. This Exception is an additional permission under section 7 26*c43cad87SWarner Losh# of the GNU General Public License, version 3 ("GPLv3"). 27*c43cad87SWarner Losh 28*c43cad87SWarner Losh 29*c43cad87SWarner Losh# Please send patches to <config-patches@gnu.org>. 30*c43cad87SWarner Losh# 31*c43cad87SWarner Losh# Configuration subroutine to validate and canonicalize a configuration type. 32*c43cad87SWarner Losh# Supply the specified configuration type as an argument. 33*c43cad87SWarner Losh# If it is invalid, we print an error message on stderr and exit with code 1. 34*c43cad87SWarner Losh# Otherwise, we print the canonical config type on stdout and succeed. 35*c43cad87SWarner Losh 36*c43cad87SWarner Losh# You can get the latest version of this script from: 37*c43cad87SWarner Losh# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub 38*c43cad87SWarner Losh 39*c43cad87SWarner Losh# This file is supposed to be the same for all GNU packages 40*c43cad87SWarner Losh# and recognize all the CPU types, system types and aliases 41*c43cad87SWarner Losh# that are meaningful with *any* GNU software. 42*c43cad87SWarner Losh# Each package is responsible for reporting which valid configurations 43*c43cad87SWarner Losh# it does not support. The user should be able to distinguish 44*c43cad87SWarner Losh# a failure to support a valid configuration from a meaningless 45*c43cad87SWarner Losh# configuration. 46*c43cad87SWarner Losh 47*c43cad87SWarner Losh# The goal of this file is to map all the various variations of a given 48*c43cad87SWarner Losh# machine specification into a single specification in the form: 49*c43cad87SWarner Losh# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 50*c43cad87SWarner Losh# or in some cases, the newer four-part form: 51*c43cad87SWarner Losh# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 52*c43cad87SWarner Losh# It is wrong to echo any other type of specification. 53*c43cad87SWarner Losh 54*c43cad87SWarner Loshme=$(echo "$0" | sed -e 's,.*/,,') 55*c43cad87SWarner Losh 56*c43cad87SWarner Loshusage="\ 57*c43cad87SWarner LoshUsage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS 58*c43cad87SWarner Losh 59*c43cad87SWarner LoshCanonicalize a configuration name. 60*c43cad87SWarner Losh 61*c43cad87SWarner LoshOptions: 62*c43cad87SWarner Losh -h, --help print this help, then exit 63*c43cad87SWarner Losh -t, --time-stamp print date of last modification, then exit 64*c43cad87SWarner Losh -v, --version print version number, then exit 65*c43cad87SWarner Losh 66*c43cad87SWarner LoshReport bugs and patches to <config-patches@gnu.org>." 67*c43cad87SWarner Losh 68*c43cad87SWarner Loshversion="\ 69*c43cad87SWarner LoshGNU config.sub ($timestamp) 70*c43cad87SWarner Losh 71*c43cad87SWarner LoshCopyright 1992-2021 Free Software Foundation, Inc. 72*c43cad87SWarner Losh 73*c43cad87SWarner LoshThis is free software; see the source for copying conditions. There is NO 74*c43cad87SWarner Loshwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 75*c43cad87SWarner Losh 76*c43cad87SWarner Loshhelp=" 77*c43cad87SWarner LoshTry \`$me --help' for more information." 78*c43cad87SWarner Losh 79*c43cad87SWarner Losh# Parse command line 80*c43cad87SWarner Loshwhile test $# -gt 0 ; do 81*c43cad87SWarner Losh case $1 in 82*c43cad87SWarner Losh --time-stamp | --time* | -t ) 83*c43cad87SWarner Losh echo "$timestamp" ; exit ;; 84*c43cad87SWarner Losh --version | -v ) 85*c43cad87SWarner Losh echo "$version" ; exit ;; 86*c43cad87SWarner Losh --help | --h* | -h ) 87*c43cad87SWarner Losh echo "$usage"; exit ;; 88*c43cad87SWarner Losh -- ) # Stop option processing 89*c43cad87SWarner Losh shift; break ;; 90*c43cad87SWarner Losh - ) # Use stdin as input. 91*c43cad87SWarner Losh break ;; 92*c43cad87SWarner Losh -* ) 93*c43cad87SWarner Losh echo "$me: invalid option $1$help" >&2 94*c43cad87SWarner Losh exit 1 ;; 95*c43cad87SWarner Losh 96*c43cad87SWarner Losh *local*) 97*c43cad87SWarner Losh # First pass through any local machine types. 98*c43cad87SWarner Losh echo "$1" 99*c43cad87SWarner Losh exit ;; 100*c43cad87SWarner Losh 101*c43cad87SWarner Losh * ) 102*c43cad87SWarner Losh break ;; 103*c43cad87SWarner Losh esac 104*c43cad87SWarner Loshdone 105*c43cad87SWarner Losh 106*c43cad87SWarner Loshcase $# in 107*c43cad87SWarner Losh 0) echo "$me: missing argument$help" >&2 108*c43cad87SWarner Losh exit 1;; 109*c43cad87SWarner Losh 1) ;; 110*c43cad87SWarner Losh *) echo "$me: too many arguments$help" >&2 111*c43cad87SWarner Losh exit 1;; 112*c43cad87SWarner Loshesac 113*c43cad87SWarner Losh 114*c43cad87SWarner Losh# Split fields of configuration type 115*c43cad87SWarner Losh# shellcheck disable=SC2162 116*c43cad87SWarner LoshIFS="-" read field1 field2 field3 field4 <<EOF 117*c43cad87SWarner Losh$1 118*c43cad87SWarner LoshEOF 119*c43cad87SWarner Losh 120*c43cad87SWarner Losh# Separate into logical components for further validation 121*c43cad87SWarner Loshcase $1 in 122*c43cad87SWarner Losh *-*-*-*-*) 123*c43cad87SWarner Losh echo Invalid configuration \`"$1"\': more than four components >&2 124*c43cad87SWarner Losh exit 1 125*c43cad87SWarner Losh ;; 126*c43cad87SWarner Losh *-*-*-*) 127*c43cad87SWarner Losh basic_machine=$field1-$field2 128*c43cad87SWarner Losh basic_os=$field3-$field4 129*c43cad87SWarner Losh ;; 130*c43cad87SWarner Losh *-*-*) 131*c43cad87SWarner Losh # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two 132*c43cad87SWarner Losh # parts 133*c43cad87SWarner Losh maybe_os=$field2-$field3 134*c43cad87SWarner Losh case $maybe_os in 135*c43cad87SWarner Losh nto-qnx* | linux-* | uclinux-uclibc* \ 136*c43cad87SWarner Losh | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ 137*c43cad87SWarner Losh | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ 138*c43cad87SWarner Losh | storm-chaos* | os2-emx* | rtmk-nova*) 139*c43cad87SWarner Losh basic_machine=$field1 140*c43cad87SWarner Losh basic_os=$maybe_os 141*c43cad87SWarner Losh ;; 142*c43cad87SWarner Losh android-linux) 143*c43cad87SWarner Losh basic_machine=$field1-unknown 144*c43cad87SWarner Losh basic_os=linux-android 145*c43cad87SWarner Losh ;; 146*c43cad87SWarner Losh *) 147*c43cad87SWarner Losh basic_machine=$field1-$field2 148*c43cad87SWarner Losh basic_os=$field3 149*c43cad87SWarner Losh ;; 150*c43cad87SWarner Losh esac 151*c43cad87SWarner Losh ;; 152*c43cad87SWarner Losh *-*) 153*c43cad87SWarner Losh # A lone config we happen to match not fitting any pattern 154*c43cad87SWarner Losh case $field1-$field2 in 155*c43cad87SWarner Losh decstation-3100) 156*c43cad87SWarner Losh basic_machine=mips-dec 157*c43cad87SWarner Losh basic_os= 158*c43cad87SWarner Losh ;; 159*c43cad87SWarner Losh *-*) 160*c43cad87SWarner Losh # Second component is usually, but not always the OS 161*c43cad87SWarner Losh case $field2 in 162*c43cad87SWarner Losh # Prevent following clause from handling this valid os 163*c43cad87SWarner Losh sun*os*) 164*c43cad87SWarner Losh basic_machine=$field1 165*c43cad87SWarner Losh basic_os=$field2 166*c43cad87SWarner Losh ;; 167*c43cad87SWarner Losh # Manufacturers 168*c43cad87SWarner Losh dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ 169*c43cad87SWarner Losh | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ 170*c43cad87SWarner Losh | unicom* | ibm* | next | hp | isi* | apollo | altos* \ 171*c43cad87SWarner Losh | convergent* | ncr* | news | 32* | 3600* | 3100* \ 172*c43cad87SWarner Losh | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \ 173*c43cad87SWarner Losh | ultra | tti* | harris | dolphin | highlevel | gould \ 174*c43cad87SWarner Losh | cbm | ns | masscomp | apple | axis | knuth | cray \ 175*c43cad87SWarner Losh | microblaze* | sim | cisco \ 176*c43cad87SWarner Losh | oki | wec | wrs | winbond) 177*c43cad87SWarner Losh basic_machine=$field1-$field2 178*c43cad87SWarner Losh basic_os= 179*c43cad87SWarner Losh ;; 180*c43cad87SWarner Losh *) 181*c43cad87SWarner Losh basic_machine=$field1 182*c43cad87SWarner Losh basic_os=$field2 183*c43cad87SWarner Losh ;; 184*c43cad87SWarner Losh esac 185*c43cad87SWarner Losh ;; 186*c43cad87SWarner Losh esac 187*c43cad87SWarner Losh ;; 188*c43cad87SWarner Losh *) 189*c43cad87SWarner Losh # Convert single-component short-hands not valid as part of 190*c43cad87SWarner Losh # multi-component configurations. 191*c43cad87SWarner Losh case $field1 in 192*c43cad87SWarner Losh 386bsd) 193*c43cad87SWarner Losh basic_machine=i386-pc 194*c43cad87SWarner Losh basic_os=bsd 195*c43cad87SWarner Losh ;; 196*c43cad87SWarner Losh a29khif) 197*c43cad87SWarner Losh basic_machine=a29k-amd 198*c43cad87SWarner Losh basic_os=udi 199*c43cad87SWarner Losh ;; 200*c43cad87SWarner Losh adobe68k) 201*c43cad87SWarner Losh basic_machine=m68010-adobe 202*c43cad87SWarner Losh basic_os=scout 203*c43cad87SWarner Losh ;; 204*c43cad87SWarner Losh alliant) 205*c43cad87SWarner Losh basic_machine=fx80-alliant 206*c43cad87SWarner Losh basic_os= 207*c43cad87SWarner Losh ;; 208*c43cad87SWarner Losh altos | altos3068) 209*c43cad87SWarner Losh basic_machine=m68k-altos 210*c43cad87SWarner Losh basic_os= 211*c43cad87SWarner Losh ;; 212*c43cad87SWarner Losh am29k) 213*c43cad87SWarner Losh basic_machine=a29k-none 214*c43cad87SWarner Losh basic_os=bsd 215*c43cad87SWarner Losh ;; 216*c43cad87SWarner Losh amdahl) 217*c43cad87SWarner Losh basic_machine=580-amdahl 218*c43cad87SWarner Losh basic_os=sysv 219*c43cad87SWarner Losh ;; 220*c43cad87SWarner Losh amiga) 221*c43cad87SWarner Losh basic_machine=m68k-unknown 222*c43cad87SWarner Losh basic_os= 223*c43cad87SWarner Losh ;; 224*c43cad87SWarner Losh amigaos | amigados) 225*c43cad87SWarner Losh basic_machine=m68k-unknown 226*c43cad87SWarner Losh basic_os=amigaos 227*c43cad87SWarner Losh ;; 228*c43cad87SWarner Losh amigaunix | amix) 229*c43cad87SWarner Losh basic_machine=m68k-unknown 230*c43cad87SWarner Losh basic_os=sysv4 231*c43cad87SWarner Losh ;; 232*c43cad87SWarner Losh apollo68) 233*c43cad87SWarner Losh basic_machine=m68k-apollo 234*c43cad87SWarner Losh basic_os=sysv 235*c43cad87SWarner Losh ;; 236*c43cad87SWarner Losh apollo68bsd) 237*c43cad87SWarner Losh basic_machine=m68k-apollo 238*c43cad87SWarner Losh basic_os=bsd 239*c43cad87SWarner Losh ;; 240*c43cad87SWarner Losh aros) 241*c43cad87SWarner Losh basic_machine=i386-pc 242*c43cad87SWarner Losh basic_os=aros 243*c43cad87SWarner Losh ;; 244*c43cad87SWarner Losh aux) 245*c43cad87SWarner Losh basic_machine=m68k-apple 246*c43cad87SWarner Losh basic_os=aux 247*c43cad87SWarner Losh ;; 248*c43cad87SWarner Losh balance) 249*c43cad87SWarner Losh basic_machine=ns32k-sequent 250*c43cad87SWarner Losh basic_os=dynix 251*c43cad87SWarner Losh ;; 252*c43cad87SWarner Losh blackfin) 253*c43cad87SWarner Losh basic_machine=bfin-unknown 254*c43cad87SWarner Losh basic_os=linux 255*c43cad87SWarner Losh ;; 256*c43cad87SWarner Losh cegcc) 257*c43cad87SWarner Losh basic_machine=arm-unknown 258*c43cad87SWarner Losh basic_os=cegcc 259*c43cad87SWarner Losh ;; 260*c43cad87SWarner Losh convex-c1) 261*c43cad87SWarner Losh basic_machine=c1-convex 262*c43cad87SWarner Losh basic_os=bsd 263*c43cad87SWarner Losh ;; 264*c43cad87SWarner Losh convex-c2) 265*c43cad87SWarner Losh basic_machine=c2-convex 266*c43cad87SWarner Losh basic_os=bsd 267*c43cad87SWarner Losh ;; 268*c43cad87SWarner Losh convex-c32) 269*c43cad87SWarner Losh basic_machine=c32-convex 270*c43cad87SWarner Losh basic_os=bsd 271*c43cad87SWarner Losh ;; 272*c43cad87SWarner Losh convex-c34) 273*c43cad87SWarner Losh basic_machine=c34-convex 274*c43cad87SWarner Losh basic_os=bsd 275*c43cad87SWarner Losh ;; 276*c43cad87SWarner Losh convex-c38) 277*c43cad87SWarner Losh basic_machine=c38-convex 278*c43cad87SWarner Losh basic_os=bsd 279*c43cad87SWarner Losh ;; 280*c43cad87SWarner Losh cray) 281*c43cad87SWarner Losh basic_machine=j90-cray 282*c43cad87SWarner Losh basic_os=unicos 283*c43cad87SWarner Losh ;; 284*c43cad87SWarner Losh crds | unos) 285*c43cad87SWarner Losh basic_machine=m68k-crds 286*c43cad87SWarner Losh basic_os= 287*c43cad87SWarner Losh ;; 288*c43cad87SWarner Losh da30) 289*c43cad87SWarner Losh basic_machine=m68k-da30 290*c43cad87SWarner Losh basic_os= 291*c43cad87SWarner Losh ;; 292*c43cad87SWarner Losh decstation | pmax | pmin | dec3100 | decstatn) 293*c43cad87SWarner Losh basic_machine=mips-dec 294*c43cad87SWarner Losh basic_os= 295*c43cad87SWarner Losh ;; 296*c43cad87SWarner Losh delta88) 297*c43cad87SWarner Losh basic_machine=m88k-motorola 298*c43cad87SWarner Losh basic_os=sysv3 299*c43cad87SWarner Losh ;; 300*c43cad87SWarner Losh dicos) 301*c43cad87SWarner Losh basic_machine=i686-pc 302*c43cad87SWarner Losh basic_os=dicos 303*c43cad87SWarner Losh ;; 304*c43cad87SWarner Losh djgpp) 305*c43cad87SWarner Losh basic_machine=i586-pc 306*c43cad87SWarner Losh basic_os=msdosdjgpp 307*c43cad87SWarner Losh ;; 308*c43cad87SWarner Losh ebmon29k) 309*c43cad87SWarner Losh basic_machine=a29k-amd 310*c43cad87SWarner Losh basic_os=ebmon 311*c43cad87SWarner Losh ;; 312*c43cad87SWarner Losh es1800 | OSE68k | ose68k | ose | OSE) 313*c43cad87SWarner Losh basic_machine=m68k-ericsson 314*c43cad87SWarner Losh basic_os=ose 315*c43cad87SWarner Losh ;; 316*c43cad87SWarner Losh gmicro) 317*c43cad87SWarner Losh basic_machine=tron-gmicro 318*c43cad87SWarner Losh basic_os=sysv 319*c43cad87SWarner Losh ;; 320*c43cad87SWarner Losh go32) 321*c43cad87SWarner Losh basic_machine=i386-pc 322*c43cad87SWarner Losh basic_os=go32 323*c43cad87SWarner Losh ;; 324*c43cad87SWarner Losh h8300hms) 325*c43cad87SWarner Losh basic_machine=h8300-hitachi 326*c43cad87SWarner Losh basic_os=hms 327*c43cad87SWarner Losh ;; 328*c43cad87SWarner Losh h8300xray) 329*c43cad87SWarner Losh basic_machine=h8300-hitachi 330*c43cad87SWarner Losh basic_os=xray 331*c43cad87SWarner Losh ;; 332*c43cad87SWarner Losh h8500hms) 333*c43cad87SWarner Losh basic_machine=h8500-hitachi 334*c43cad87SWarner Losh basic_os=hms 335*c43cad87SWarner Losh ;; 336*c43cad87SWarner Losh harris) 337*c43cad87SWarner Losh basic_machine=m88k-harris 338*c43cad87SWarner Losh basic_os=sysv3 339*c43cad87SWarner Losh ;; 340*c43cad87SWarner Losh hp300 | hp300hpux) 341*c43cad87SWarner Losh basic_machine=m68k-hp 342*c43cad87SWarner Losh basic_os=hpux 343*c43cad87SWarner Losh ;; 344*c43cad87SWarner Losh hp300bsd) 345*c43cad87SWarner Losh basic_machine=m68k-hp 346*c43cad87SWarner Losh basic_os=bsd 347*c43cad87SWarner Losh ;; 348*c43cad87SWarner Losh hppaosf) 349*c43cad87SWarner Losh basic_machine=hppa1.1-hp 350*c43cad87SWarner Losh basic_os=osf 351*c43cad87SWarner Losh ;; 352*c43cad87SWarner Losh hppro) 353*c43cad87SWarner Losh basic_machine=hppa1.1-hp 354*c43cad87SWarner Losh basic_os=proelf 355*c43cad87SWarner Losh ;; 356*c43cad87SWarner Losh i386mach) 357*c43cad87SWarner Losh basic_machine=i386-mach 358*c43cad87SWarner Losh basic_os=mach 359*c43cad87SWarner Losh ;; 360*c43cad87SWarner Losh isi68 | isi) 361*c43cad87SWarner Losh basic_machine=m68k-isi 362*c43cad87SWarner Losh basic_os=sysv 363*c43cad87SWarner Losh ;; 364*c43cad87SWarner Losh m68knommu) 365*c43cad87SWarner Losh basic_machine=m68k-unknown 366*c43cad87SWarner Losh basic_os=linux 367*c43cad87SWarner Losh ;; 368*c43cad87SWarner Losh magnum | m3230) 369*c43cad87SWarner Losh basic_machine=mips-mips 370*c43cad87SWarner Losh basic_os=sysv 371*c43cad87SWarner Losh ;; 372*c43cad87SWarner Losh merlin) 373*c43cad87SWarner Losh basic_machine=ns32k-utek 374*c43cad87SWarner Losh basic_os=sysv 375*c43cad87SWarner Losh ;; 376*c43cad87SWarner Losh mingw64) 377*c43cad87SWarner Losh basic_machine=x86_64-pc 378*c43cad87SWarner Losh basic_os=mingw64 379*c43cad87SWarner Losh ;; 380*c43cad87SWarner Losh mingw32) 381*c43cad87SWarner Losh basic_machine=i686-pc 382*c43cad87SWarner Losh basic_os=mingw32 383*c43cad87SWarner Losh ;; 384*c43cad87SWarner Losh mingw32ce) 385*c43cad87SWarner Losh basic_machine=arm-unknown 386*c43cad87SWarner Losh basic_os=mingw32ce 387*c43cad87SWarner Losh ;; 388*c43cad87SWarner Losh monitor) 389*c43cad87SWarner Losh basic_machine=m68k-rom68k 390*c43cad87SWarner Losh basic_os=coff 391*c43cad87SWarner Losh ;; 392*c43cad87SWarner Losh morphos) 393*c43cad87SWarner Losh basic_machine=powerpc-unknown 394*c43cad87SWarner Losh basic_os=morphos 395*c43cad87SWarner Losh ;; 396*c43cad87SWarner Losh moxiebox) 397*c43cad87SWarner Losh basic_machine=moxie-unknown 398*c43cad87SWarner Losh basic_os=moxiebox 399*c43cad87SWarner Losh ;; 400*c43cad87SWarner Losh msdos) 401*c43cad87SWarner Losh basic_machine=i386-pc 402*c43cad87SWarner Losh basic_os=msdos 403*c43cad87SWarner Losh ;; 404*c43cad87SWarner Losh msys) 405*c43cad87SWarner Losh basic_machine=i686-pc 406*c43cad87SWarner Losh basic_os=msys 407*c43cad87SWarner Losh ;; 408*c43cad87SWarner Losh mvs) 409*c43cad87SWarner Losh basic_machine=i370-ibm 410*c43cad87SWarner Losh basic_os=mvs 411*c43cad87SWarner Losh ;; 412*c43cad87SWarner Losh nacl) 413*c43cad87SWarner Losh basic_machine=le32-unknown 414*c43cad87SWarner Losh basic_os=nacl 415*c43cad87SWarner Losh ;; 416*c43cad87SWarner Losh ncr3000) 417*c43cad87SWarner Losh basic_machine=i486-ncr 418*c43cad87SWarner Losh basic_os=sysv4 419*c43cad87SWarner Losh ;; 420*c43cad87SWarner Losh netbsd386) 421*c43cad87SWarner Losh basic_machine=i386-pc 422*c43cad87SWarner Losh basic_os=netbsd 423*c43cad87SWarner Losh ;; 424*c43cad87SWarner Losh netwinder) 425*c43cad87SWarner Losh basic_machine=armv4l-rebel 426*c43cad87SWarner Losh basic_os=linux 427*c43cad87SWarner Losh ;; 428*c43cad87SWarner Losh news | news700 | news800 | news900) 429*c43cad87SWarner Losh basic_machine=m68k-sony 430*c43cad87SWarner Losh basic_os=newsos 431*c43cad87SWarner Losh ;; 432*c43cad87SWarner Losh news1000) 433*c43cad87SWarner Losh basic_machine=m68030-sony 434*c43cad87SWarner Losh basic_os=newsos 435*c43cad87SWarner Losh ;; 436*c43cad87SWarner Losh necv70) 437*c43cad87SWarner Losh basic_machine=v70-nec 438*c43cad87SWarner Losh basic_os=sysv 439*c43cad87SWarner Losh ;; 440*c43cad87SWarner Losh nh3000) 441*c43cad87SWarner Losh basic_machine=m68k-harris 442*c43cad87SWarner Losh basic_os=cxux 443*c43cad87SWarner Losh ;; 444*c43cad87SWarner Losh nh[45]000) 445*c43cad87SWarner Losh basic_machine=m88k-harris 446*c43cad87SWarner Losh basic_os=cxux 447*c43cad87SWarner Losh ;; 448*c43cad87SWarner Losh nindy960) 449*c43cad87SWarner Losh basic_machine=i960-intel 450*c43cad87SWarner Losh basic_os=nindy 451*c43cad87SWarner Losh ;; 452*c43cad87SWarner Losh mon960) 453*c43cad87SWarner Losh basic_machine=i960-intel 454*c43cad87SWarner Losh basic_os=mon960 455*c43cad87SWarner Losh ;; 456*c43cad87SWarner Losh nonstopux) 457*c43cad87SWarner Losh basic_machine=mips-compaq 458*c43cad87SWarner Losh basic_os=nonstopux 459*c43cad87SWarner Losh ;; 460*c43cad87SWarner Losh os400) 461*c43cad87SWarner Losh basic_machine=powerpc-ibm 462*c43cad87SWarner Losh basic_os=os400 463*c43cad87SWarner Losh ;; 464*c43cad87SWarner Losh OSE68000 | ose68000) 465*c43cad87SWarner Losh basic_machine=m68000-ericsson 466*c43cad87SWarner Losh basic_os=ose 467*c43cad87SWarner Losh ;; 468*c43cad87SWarner Losh os68k) 469*c43cad87SWarner Losh basic_machine=m68k-none 470*c43cad87SWarner Losh basic_os=os68k 471*c43cad87SWarner Losh ;; 472*c43cad87SWarner Losh paragon) 473*c43cad87SWarner Losh basic_machine=i860-intel 474*c43cad87SWarner Losh basic_os=osf 475*c43cad87SWarner Losh ;; 476*c43cad87SWarner Losh parisc) 477*c43cad87SWarner Losh basic_machine=hppa-unknown 478*c43cad87SWarner Losh basic_os=linux 479*c43cad87SWarner Losh ;; 480*c43cad87SWarner Losh psp) 481*c43cad87SWarner Losh basic_machine=mipsallegrexel-sony 482*c43cad87SWarner Losh basic_os=psp 483*c43cad87SWarner Losh ;; 484*c43cad87SWarner Losh pw32) 485*c43cad87SWarner Losh basic_machine=i586-unknown 486*c43cad87SWarner Losh basic_os=pw32 487*c43cad87SWarner Losh ;; 488*c43cad87SWarner Losh rdos | rdos64) 489*c43cad87SWarner Losh basic_machine=x86_64-pc 490*c43cad87SWarner Losh basic_os=rdos 491*c43cad87SWarner Losh ;; 492*c43cad87SWarner Losh rdos32) 493*c43cad87SWarner Losh basic_machine=i386-pc 494*c43cad87SWarner Losh basic_os=rdos 495*c43cad87SWarner Losh ;; 496*c43cad87SWarner Losh rom68k) 497*c43cad87SWarner Losh basic_machine=m68k-rom68k 498*c43cad87SWarner Losh basic_os=coff 499*c43cad87SWarner Losh ;; 500*c43cad87SWarner Losh sa29200) 501*c43cad87SWarner Losh basic_machine=a29k-amd 502*c43cad87SWarner Losh basic_os=udi 503*c43cad87SWarner Losh ;; 504*c43cad87SWarner Losh sei) 505*c43cad87SWarner Losh basic_machine=mips-sei 506*c43cad87SWarner Losh basic_os=seiux 507*c43cad87SWarner Losh ;; 508*c43cad87SWarner Losh sequent) 509*c43cad87SWarner Losh basic_machine=i386-sequent 510*c43cad87SWarner Losh basic_os= 511*c43cad87SWarner Losh ;; 512*c43cad87SWarner Losh sps7) 513*c43cad87SWarner Losh basic_machine=m68k-bull 514*c43cad87SWarner Losh basic_os=sysv2 515*c43cad87SWarner Losh ;; 516*c43cad87SWarner Losh st2000) 517*c43cad87SWarner Losh basic_machine=m68k-tandem 518*c43cad87SWarner Losh basic_os= 519*c43cad87SWarner Losh ;; 520*c43cad87SWarner Losh stratus) 521*c43cad87SWarner Losh basic_machine=i860-stratus 522*c43cad87SWarner Losh basic_os=sysv4 523*c43cad87SWarner Losh ;; 524*c43cad87SWarner Losh sun2) 525*c43cad87SWarner Losh basic_machine=m68000-sun 526*c43cad87SWarner Losh basic_os= 527*c43cad87SWarner Losh ;; 528*c43cad87SWarner Losh sun2os3) 529*c43cad87SWarner Losh basic_machine=m68000-sun 530*c43cad87SWarner Losh basic_os=sunos3 531*c43cad87SWarner Losh ;; 532*c43cad87SWarner Losh sun2os4) 533*c43cad87SWarner Losh basic_machine=m68000-sun 534*c43cad87SWarner Losh basic_os=sunos4 535*c43cad87SWarner Losh ;; 536*c43cad87SWarner Losh sun3) 537*c43cad87SWarner Losh basic_machine=m68k-sun 538*c43cad87SWarner Losh basic_os= 539*c43cad87SWarner Losh ;; 540*c43cad87SWarner Losh sun3os3) 541*c43cad87SWarner Losh basic_machine=m68k-sun 542*c43cad87SWarner Losh basic_os=sunos3 543*c43cad87SWarner Losh ;; 544*c43cad87SWarner Losh sun3os4) 545*c43cad87SWarner Losh basic_machine=m68k-sun 546*c43cad87SWarner Losh basic_os=sunos4 547*c43cad87SWarner Losh ;; 548*c43cad87SWarner Losh sun4) 549*c43cad87SWarner Losh basic_machine=sparc-sun 550*c43cad87SWarner Losh basic_os= 551*c43cad87SWarner Losh ;; 552*c43cad87SWarner Losh sun4os3) 553*c43cad87SWarner Losh basic_machine=sparc-sun 554*c43cad87SWarner Losh basic_os=sunos3 555*c43cad87SWarner Losh ;; 556*c43cad87SWarner Losh sun4os4) 557*c43cad87SWarner Losh basic_machine=sparc-sun 558*c43cad87SWarner Losh basic_os=sunos4 559*c43cad87SWarner Losh ;; 560*c43cad87SWarner Losh sun4sol2) 561*c43cad87SWarner Losh basic_machine=sparc-sun 562*c43cad87SWarner Losh basic_os=solaris2 563*c43cad87SWarner Losh ;; 564*c43cad87SWarner Losh sun386 | sun386i | roadrunner) 565*c43cad87SWarner Losh basic_machine=i386-sun 566*c43cad87SWarner Losh basic_os= 567*c43cad87SWarner Losh ;; 568*c43cad87SWarner Losh sv1) 569*c43cad87SWarner Losh basic_machine=sv1-cray 570*c43cad87SWarner Losh basic_os=unicos 571*c43cad87SWarner Losh ;; 572*c43cad87SWarner Losh symmetry) 573*c43cad87SWarner Losh basic_machine=i386-sequent 574*c43cad87SWarner Losh basic_os=dynix 575*c43cad87SWarner Losh ;; 576*c43cad87SWarner Losh t3e) 577*c43cad87SWarner Losh basic_machine=alphaev5-cray 578*c43cad87SWarner Losh basic_os=unicos 579*c43cad87SWarner Losh ;; 580*c43cad87SWarner Losh t90) 581*c43cad87SWarner Losh basic_machine=t90-cray 582*c43cad87SWarner Losh basic_os=unicos 583*c43cad87SWarner Losh ;; 584*c43cad87SWarner Losh toad1) 585*c43cad87SWarner Losh basic_machine=pdp10-xkl 586*c43cad87SWarner Losh basic_os=tops20 587*c43cad87SWarner Losh ;; 588*c43cad87SWarner Losh tpf) 589*c43cad87SWarner Losh basic_machine=s390x-ibm 590*c43cad87SWarner Losh basic_os=tpf 591*c43cad87SWarner Losh ;; 592*c43cad87SWarner Losh udi29k) 593*c43cad87SWarner Losh basic_machine=a29k-amd 594*c43cad87SWarner Losh basic_os=udi 595*c43cad87SWarner Losh ;; 596*c43cad87SWarner Losh ultra3) 597*c43cad87SWarner Losh basic_machine=a29k-nyu 598*c43cad87SWarner Losh basic_os=sym1 599*c43cad87SWarner Losh ;; 600*c43cad87SWarner Losh v810 | necv810) 601*c43cad87SWarner Losh basic_machine=v810-nec 602*c43cad87SWarner Losh basic_os=none 603*c43cad87SWarner Losh ;; 604*c43cad87SWarner Losh vaxv) 605*c43cad87SWarner Losh basic_machine=vax-dec 606*c43cad87SWarner Losh basic_os=sysv 607*c43cad87SWarner Losh ;; 608*c43cad87SWarner Losh vms) 609*c43cad87SWarner Losh basic_machine=vax-dec 610*c43cad87SWarner Losh basic_os=vms 611*c43cad87SWarner Losh ;; 612*c43cad87SWarner Losh vsta) 613*c43cad87SWarner Losh basic_machine=i386-pc 614*c43cad87SWarner Losh basic_os=vsta 615*c43cad87SWarner Losh ;; 616*c43cad87SWarner Losh vxworks960) 617*c43cad87SWarner Losh basic_machine=i960-wrs 618*c43cad87SWarner Losh basic_os=vxworks 619*c43cad87SWarner Losh ;; 620*c43cad87SWarner Losh vxworks68) 621*c43cad87SWarner Losh basic_machine=m68k-wrs 622*c43cad87SWarner Losh basic_os=vxworks 623*c43cad87SWarner Losh ;; 624*c43cad87SWarner Losh vxworks29k) 625*c43cad87SWarner Losh basic_machine=a29k-wrs 626*c43cad87SWarner Losh basic_os=vxworks 627*c43cad87SWarner Losh ;; 628*c43cad87SWarner Losh xbox) 629*c43cad87SWarner Losh basic_machine=i686-pc 630*c43cad87SWarner Losh basic_os=mingw32 631*c43cad87SWarner Losh ;; 632*c43cad87SWarner Losh ymp) 633*c43cad87SWarner Losh basic_machine=ymp-cray 634*c43cad87SWarner Losh basic_os=unicos 635*c43cad87SWarner Losh ;; 636*c43cad87SWarner Losh *) 637*c43cad87SWarner Losh basic_machine=$1 638*c43cad87SWarner Losh basic_os= 639*c43cad87SWarner Losh ;; 640*c43cad87SWarner Losh esac 641*c43cad87SWarner Losh ;; 642*c43cad87SWarner Loshesac 643*c43cad87SWarner Losh 644*c43cad87SWarner Losh# Decode 1-component or ad-hoc basic machines 645*c43cad87SWarner Loshcase $basic_machine in 646*c43cad87SWarner Losh # Here we handle the default manufacturer of certain CPU types. It is in 647*c43cad87SWarner Losh # some cases the only manufacturer, in others, it is the most popular. 648*c43cad87SWarner Losh w89k) 649*c43cad87SWarner Losh cpu=hppa1.1 650*c43cad87SWarner Losh vendor=winbond 651*c43cad87SWarner Losh ;; 652*c43cad87SWarner Losh op50n) 653*c43cad87SWarner Losh cpu=hppa1.1 654*c43cad87SWarner Losh vendor=oki 655*c43cad87SWarner Losh ;; 656*c43cad87SWarner Losh op60c) 657*c43cad87SWarner Losh cpu=hppa1.1 658*c43cad87SWarner Losh vendor=oki 659*c43cad87SWarner Losh ;; 660*c43cad87SWarner Losh ibm*) 661*c43cad87SWarner Losh cpu=i370 662*c43cad87SWarner Losh vendor=ibm 663*c43cad87SWarner Losh ;; 664*c43cad87SWarner Losh orion105) 665*c43cad87SWarner Losh cpu=clipper 666*c43cad87SWarner Losh vendor=highlevel 667*c43cad87SWarner Losh ;; 668*c43cad87SWarner Losh mac | mpw | mac-mpw) 669*c43cad87SWarner Losh cpu=m68k 670*c43cad87SWarner Losh vendor=apple 671*c43cad87SWarner Losh ;; 672*c43cad87SWarner Losh pmac | pmac-mpw) 673*c43cad87SWarner Losh cpu=powerpc 674*c43cad87SWarner Losh vendor=apple 675*c43cad87SWarner Losh ;; 676*c43cad87SWarner Losh 677*c43cad87SWarner Losh # Recognize the various machine names and aliases which stand 678*c43cad87SWarner Losh # for a CPU type and a company and sometimes even an OS. 679*c43cad87SWarner Losh 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 680*c43cad87SWarner Losh cpu=m68000 681*c43cad87SWarner Losh vendor=att 682*c43cad87SWarner Losh ;; 683*c43cad87SWarner Losh 3b*) 684*c43cad87SWarner Losh cpu=we32k 685*c43cad87SWarner Losh vendor=att 686*c43cad87SWarner Losh ;; 687*c43cad87SWarner Losh bluegene*) 688*c43cad87SWarner Losh cpu=powerpc 689*c43cad87SWarner Losh vendor=ibm 690*c43cad87SWarner Losh basic_os=cnk 691*c43cad87SWarner Losh ;; 692*c43cad87SWarner Losh decsystem10* | dec10*) 693*c43cad87SWarner Losh cpu=pdp10 694*c43cad87SWarner Losh vendor=dec 695*c43cad87SWarner Losh basic_os=tops10 696*c43cad87SWarner Losh ;; 697*c43cad87SWarner Losh decsystem20* | dec20*) 698*c43cad87SWarner Losh cpu=pdp10 699*c43cad87SWarner Losh vendor=dec 700*c43cad87SWarner Losh basic_os=tops20 701*c43cad87SWarner Losh ;; 702*c43cad87SWarner Losh delta | 3300 | motorola-3300 | motorola-delta \ 703*c43cad87SWarner Losh | 3300-motorola | delta-motorola) 704*c43cad87SWarner Losh cpu=m68k 705*c43cad87SWarner Losh vendor=motorola 706*c43cad87SWarner Losh ;; 707*c43cad87SWarner Losh dpx2*) 708*c43cad87SWarner Losh cpu=m68k 709*c43cad87SWarner Losh vendor=bull 710*c43cad87SWarner Losh basic_os=sysv3 711*c43cad87SWarner Losh ;; 712*c43cad87SWarner Losh encore | umax | mmax) 713*c43cad87SWarner Losh cpu=ns32k 714*c43cad87SWarner Losh vendor=encore 715*c43cad87SWarner Losh ;; 716*c43cad87SWarner Losh elxsi) 717*c43cad87SWarner Losh cpu=elxsi 718*c43cad87SWarner Losh vendor=elxsi 719*c43cad87SWarner Losh basic_os=${basic_os:-bsd} 720*c43cad87SWarner Losh ;; 721*c43cad87SWarner Losh fx2800) 722*c43cad87SWarner Losh cpu=i860 723*c43cad87SWarner Losh vendor=alliant 724*c43cad87SWarner Losh ;; 725*c43cad87SWarner Losh genix) 726*c43cad87SWarner Losh cpu=ns32k 727*c43cad87SWarner Losh vendor=ns 728*c43cad87SWarner Losh ;; 729*c43cad87SWarner Losh h3050r* | hiux*) 730*c43cad87SWarner Losh cpu=hppa1.1 731*c43cad87SWarner Losh vendor=hitachi 732*c43cad87SWarner Losh basic_os=hiuxwe2 733*c43cad87SWarner Losh ;; 734*c43cad87SWarner Losh hp3k9[0-9][0-9] | hp9[0-9][0-9]) 735*c43cad87SWarner Losh cpu=hppa1.0 736*c43cad87SWarner Losh vendor=hp 737*c43cad87SWarner Losh ;; 738*c43cad87SWarner Losh hp9k2[0-9][0-9] | hp9k31[0-9]) 739*c43cad87SWarner Losh cpu=m68000 740*c43cad87SWarner Losh vendor=hp 741*c43cad87SWarner Losh ;; 742*c43cad87SWarner Losh hp9k3[2-9][0-9]) 743*c43cad87SWarner Losh cpu=m68k 744*c43cad87SWarner Losh vendor=hp 745*c43cad87SWarner Losh ;; 746*c43cad87SWarner Losh hp9k6[0-9][0-9] | hp6[0-9][0-9]) 747*c43cad87SWarner Losh cpu=hppa1.0 748*c43cad87SWarner Losh vendor=hp 749*c43cad87SWarner Losh ;; 750*c43cad87SWarner Losh hp9k7[0-79][0-9] | hp7[0-79][0-9]) 751*c43cad87SWarner Losh cpu=hppa1.1 752*c43cad87SWarner Losh vendor=hp 753*c43cad87SWarner Losh ;; 754*c43cad87SWarner Losh hp9k78[0-9] | hp78[0-9]) 755*c43cad87SWarner Losh # FIXME: really hppa2.0-hp 756*c43cad87SWarner Losh cpu=hppa1.1 757*c43cad87SWarner Losh vendor=hp 758*c43cad87SWarner Losh ;; 759*c43cad87SWarner Losh hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 760*c43cad87SWarner Losh # FIXME: really hppa2.0-hp 761*c43cad87SWarner Losh cpu=hppa1.1 762*c43cad87SWarner Losh vendor=hp 763*c43cad87SWarner Losh ;; 764*c43cad87SWarner Losh hp9k8[0-9][13679] | hp8[0-9][13679]) 765*c43cad87SWarner Losh cpu=hppa1.1 766*c43cad87SWarner Losh vendor=hp 767*c43cad87SWarner Losh ;; 768*c43cad87SWarner Losh hp9k8[0-9][0-9] | hp8[0-9][0-9]) 769*c43cad87SWarner Losh cpu=hppa1.0 770*c43cad87SWarner Losh vendor=hp 771*c43cad87SWarner Losh ;; 772*c43cad87SWarner Losh i*86v32) 773*c43cad87SWarner Losh cpu=$(echo "$1" | sed -e 's/86.*/86/') 774*c43cad87SWarner Losh vendor=pc 775*c43cad87SWarner Losh basic_os=sysv32 776*c43cad87SWarner Losh ;; 777*c43cad87SWarner Losh i*86v4*) 778*c43cad87SWarner Losh cpu=$(echo "$1" | sed -e 's/86.*/86/') 779*c43cad87SWarner Losh vendor=pc 780*c43cad87SWarner Losh basic_os=sysv4 781*c43cad87SWarner Losh ;; 782*c43cad87SWarner Losh i*86v) 783*c43cad87SWarner Losh cpu=$(echo "$1" | sed -e 's/86.*/86/') 784*c43cad87SWarner Losh vendor=pc 785*c43cad87SWarner Losh basic_os=sysv 786*c43cad87SWarner Losh ;; 787*c43cad87SWarner Losh i*86sol2) 788*c43cad87SWarner Losh cpu=$(echo "$1" | sed -e 's/86.*/86/') 789*c43cad87SWarner Losh vendor=pc 790*c43cad87SWarner Losh basic_os=solaris2 791*c43cad87SWarner Losh ;; 792*c43cad87SWarner Losh j90 | j90-cray) 793*c43cad87SWarner Losh cpu=j90 794*c43cad87SWarner Losh vendor=cray 795*c43cad87SWarner Losh basic_os=${basic_os:-unicos} 796*c43cad87SWarner Losh ;; 797*c43cad87SWarner Losh iris | iris4d) 798*c43cad87SWarner Losh cpu=mips 799*c43cad87SWarner Losh vendor=sgi 800*c43cad87SWarner Losh case $basic_os in 801*c43cad87SWarner Losh irix*) 802*c43cad87SWarner Losh ;; 803*c43cad87SWarner Losh *) 804*c43cad87SWarner Losh basic_os=irix4 805*c43cad87SWarner Losh ;; 806*c43cad87SWarner Losh esac 807*c43cad87SWarner Losh ;; 808*c43cad87SWarner Losh miniframe) 809*c43cad87SWarner Losh cpu=m68000 810*c43cad87SWarner Losh vendor=convergent 811*c43cad87SWarner Losh ;; 812*c43cad87SWarner Losh *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) 813*c43cad87SWarner Losh cpu=m68k 814*c43cad87SWarner Losh vendor=atari 815*c43cad87SWarner Losh basic_os=mint 816*c43cad87SWarner Losh ;; 817*c43cad87SWarner Losh news-3600 | risc-news) 818*c43cad87SWarner Losh cpu=mips 819*c43cad87SWarner Losh vendor=sony 820*c43cad87SWarner Losh basic_os=newsos 821*c43cad87SWarner Losh ;; 822*c43cad87SWarner Losh next | m*-next) 823*c43cad87SWarner Losh cpu=m68k 824*c43cad87SWarner Losh vendor=next 825*c43cad87SWarner Losh case $basic_os in 826*c43cad87SWarner Losh openstep*) 827*c43cad87SWarner Losh ;; 828*c43cad87SWarner Losh nextstep*) 829*c43cad87SWarner Losh ;; 830*c43cad87SWarner Losh ns2*) 831*c43cad87SWarner Losh basic_os=nextstep2 832*c43cad87SWarner Losh ;; 833*c43cad87SWarner Losh *) 834*c43cad87SWarner Losh basic_os=nextstep3 835*c43cad87SWarner Losh ;; 836*c43cad87SWarner Losh esac 837*c43cad87SWarner Losh ;; 838*c43cad87SWarner Losh np1) 839*c43cad87SWarner Losh cpu=np1 840*c43cad87SWarner Losh vendor=gould 841*c43cad87SWarner Losh ;; 842*c43cad87SWarner Losh op50n-* | op60c-*) 843*c43cad87SWarner Losh cpu=hppa1.1 844*c43cad87SWarner Losh vendor=oki 845*c43cad87SWarner Losh basic_os=proelf 846*c43cad87SWarner Losh ;; 847*c43cad87SWarner Losh pa-hitachi) 848*c43cad87SWarner Losh cpu=hppa1.1 849*c43cad87SWarner Losh vendor=hitachi 850*c43cad87SWarner Losh basic_os=hiuxwe2 851*c43cad87SWarner Losh ;; 852*c43cad87SWarner Losh pbd) 853*c43cad87SWarner Losh cpu=sparc 854*c43cad87SWarner Losh vendor=tti 855*c43cad87SWarner Losh ;; 856*c43cad87SWarner Losh pbb) 857*c43cad87SWarner Losh cpu=m68k 858*c43cad87SWarner Losh vendor=tti 859*c43cad87SWarner Losh ;; 860*c43cad87SWarner Losh pc532) 861*c43cad87SWarner Losh cpu=ns32k 862*c43cad87SWarner Losh vendor=pc532 863*c43cad87SWarner Losh ;; 864*c43cad87SWarner Losh pn) 865*c43cad87SWarner Losh cpu=pn 866*c43cad87SWarner Losh vendor=gould 867*c43cad87SWarner Losh ;; 868*c43cad87SWarner Losh power) 869*c43cad87SWarner Losh cpu=power 870*c43cad87SWarner Losh vendor=ibm 871*c43cad87SWarner Losh ;; 872*c43cad87SWarner Losh ps2) 873*c43cad87SWarner Losh cpu=i386 874*c43cad87SWarner Losh vendor=ibm 875*c43cad87SWarner Losh ;; 876*c43cad87SWarner Losh rm[46]00) 877*c43cad87SWarner Losh cpu=mips 878*c43cad87SWarner Losh vendor=siemens 879*c43cad87SWarner Losh ;; 880*c43cad87SWarner Losh rtpc | rtpc-*) 881*c43cad87SWarner Losh cpu=romp 882*c43cad87SWarner Losh vendor=ibm 883*c43cad87SWarner Losh ;; 884*c43cad87SWarner Losh sde) 885*c43cad87SWarner Losh cpu=mipsisa32 886*c43cad87SWarner Losh vendor=sde 887*c43cad87SWarner Losh basic_os=${basic_os:-elf} 888*c43cad87SWarner Losh ;; 889*c43cad87SWarner Losh simso-wrs) 890*c43cad87SWarner Losh cpu=sparclite 891*c43cad87SWarner Losh vendor=wrs 892*c43cad87SWarner Losh basic_os=vxworks 893*c43cad87SWarner Losh ;; 894*c43cad87SWarner Losh tower | tower-32) 895*c43cad87SWarner Losh cpu=m68k 896*c43cad87SWarner Losh vendor=ncr 897*c43cad87SWarner Losh ;; 898*c43cad87SWarner Losh vpp*|vx|vx-*) 899*c43cad87SWarner Losh cpu=f301 900*c43cad87SWarner Losh vendor=fujitsu 901*c43cad87SWarner Losh ;; 902*c43cad87SWarner Losh w65) 903*c43cad87SWarner Losh cpu=w65 904*c43cad87SWarner Losh vendor=wdc 905*c43cad87SWarner Losh ;; 906*c43cad87SWarner Losh w89k-*) 907*c43cad87SWarner Losh cpu=hppa1.1 908*c43cad87SWarner Losh vendor=winbond 909*c43cad87SWarner Losh basic_os=proelf 910*c43cad87SWarner Losh ;; 911*c43cad87SWarner Losh none) 912*c43cad87SWarner Losh cpu=none 913*c43cad87SWarner Losh vendor=none 914*c43cad87SWarner Losh ;; 915*c43cad87SWarner Losh leon|leon[3-9]) 916*c43cad87SWarner Losh cpu=sparc 917*c43cad87SWarner Losh vendor=$basic_machine 918*c43cad87SWarner Losh ;; 919*c43cad87SWarner Losh leon-*|leon[3-9]-*) 920*c43cad87SWarner Losh cpu=sparc 921*c43cad87SWarner Losh vendor=$(echo "$basic_machine" | sed 's/-.*//') 922*c43cad87SWarner Losh ;; 923*c43cad87SWarner Losh 924*c43cad87SWarner Losh *-*) 925*c43cad87SWarner Losh # shellcheck disable=SC2162 926*c43cad87SWarner Losh IFS="-" read cpu vendor <<EOF 927*c43cad87SWarner Losh$basic_machine 928*c43cad87SWarner LoshEOF 929*c43cad87SWarner Losh ;; 930*c43cad87SWarner Losh # We use `pc' rather than `unknown' 931*c43cad87SWarner Losh # because (1) that's what they normally are, and 932*c43cad87SWarner Losh # (2) the word "unknown" tends to confuse beginning users. 933*c43cad87SWarner Losh i*86 | x86_64) 934*c43cad87SWarner Losh cpu=$basic_machine 935*c43cad87SWarner Losh vendor=pc 936*c43cad87SWarner Losh ;; 937*c43cad87SWarner Losh # These rules are duplicated from below for sake of the special case above; 938*c43cad87SWarner Losh # i.e. things that normalized to x86 arches should also default to "pc" 939*c43cad87SWarner Losh pc98) 940*c43cad87SWarner Losh cpu=i386 941*c43cad87SWarner Losh vendor=pc 942*c43cad87SWarner Losh ;; 943*c43cad87SWarner Losh x64 | amd64) 944*c43cad87SWarner Losh cpu=x86_64 945*c43cad87SWarner Losh vendor=pc 946*c43cad87SWarner Losh ;; 947*c43cad87SWarner Losh # Recognize the basic CPU types without company name. 948*c43cad87SWarner Losh *) 949*c43cad87SWarner Losh cpu=$basic_machine 950*c43cad87SWarner Losh vendor=unknown 951*c43cad87SWarner Losh ;; 952*c43cad87SWarner Loshesac 953*c43cad87SWarner Losh 954*c43cad87SWarner Loshunset -v basic_machine 955*c43cad87SWarner Losh 956*c43cad87SWarner Losh# Decode basic machines in the full and proper CPU-Company form. 957*c43cad87SWarner Loshcase $cpu-$vendor in 958*c43cad87SWarner Losh # Here we handle the default manufacturer of certain CPU types in canonical form. It is in 959*c43cad87SWarner Losh # some cases the only manufacturer, in others, it is the most popular. 960*c43cad87SWarner Losh craynv-unknown) 961*c43cad87SWarner Losh vendor=cray 962*c43cad87SWarner Losh basic_os=${basic_os:-unicosmp} 963*c43cad87SWarner Losh ;; 964*c43cad87SWarner Losh c90-unknown | c90-cray) 965*c43cad87SWarner Losh vendor=cray 966*c43cad87SWarner Losh basic_os=${Basic_os:-unicos} 967*c43cad87SWarner Losh ;; 968*c43cad87SWarner Losh fx80-unknown) 969*c43cad87SWarner Losh vendor=alliant 970*c43cad87SWarner Losh ;; 971*c43cad87SWarner Losh romp-unknown) 972*c43cad87SWarner Losh vendor=ibm 973*c43cad87SWarner Losh ;; 974*c43cad87SWarner Losh mmix-unknown) 975*c43cad87SWarner Losh vendor=knuth 976*c43cad87SWarner Losh ;; 977*c43cad87SWarner Losh microblaze-unknown | microblazeel-unknown) 978*c43cad87SWarner Losh vendor=xilinx 979*c43cad87SWarner Losh ;; 980*c43cad87SWarner Losh rs6000-unknown) 981*c43cad87SWarner Losh vendor=ibm 982*c43cad87SWarner Losh ;; 983*c43cad87SWarner Losh vax-unknown) 984*c43cad87SWarner Losh vendor=dec 985*c43cad87SWarner Losh ;; 986*c43cad87SWarner Losh pdp11-unknown) 987*c43cad87SWarner Losh vendor=dec 988*c43cad87SWarner Losh ;; 989*c43cad87SWarner Losh we32k-unknown) 990*c43cad87SWarner Losh vendor=att 991*c43cad87SWarner Losh ;; 992*c43cad87SWarner Losh cydra-unknown) 993*c43cad87SWarner Losh vendor=cydrome 994*c43cad87SWarner Losh ;; 995*c43cad87SWarner Losh i370-ibm*) 996*c43cad87SWarner Losh vendor=ibm 997*c43cad87SWarner Losh ;; 998*c43cad87SWarner Losh orion-unknown) 999*c43cad87SWarner Losh vendor=highlevel 1000*c43cad87SWarner Losh ;; 1001*c43cad87SWarner Losh xps-unknown | xps100-unknown) 1002*c43cad87SWarner Losh cpu=xps100 1003*c43cad87SWarner Losh vendor=honeywell 1004*c43cad87SWarner Losh ;; 1005*c43cad87SWarner Losh 1006*c43cad87SWarner Losh # Here we normalize CPU types with a missing or matching vendor 1007*c43cad87SWarner Losh dpx20-unknown | dpx20-bull) 1008*c43cad87SWarner Losh cpu=rs6000 1009*c43cad87SWarner Losh vendor=bull 1010*c43cad87SWarner Losh basic_os=${basic_os:-bosx} 1011*c43cad87SWarner Losh ;; 1012*c43cad87SWarner Losh 1013*c43cad87SWarner Losh # Here we normalize CPU types irrespective of the vendor 1014*c43cad87SWarner Losh amd64-*) 1015*c43cad87SWarner Losh cpu=x86_64 1016*c43cad87SWarner Losh ;; 1017*c43cad87SWarner Losh blackfin-*) 1018*c43cad87SWarner Losh cpu=bfin 1019*c43cad87SWarner Losh basic_os=linux 1020*c43cad87SWarner Losh ;; 1021*c43cad87SWarner Losh c54x-*) 1022*c43cad87SWarner Losh cpu=tic54x 1023*c43cad87SWarner Losh ;; 1024*c43cad87SWarner Losh c55x-*) 1025*c43cad87SWarner Losh cpu=tic55x 1026*c43cad87SWarner Losh ;; 1027*c43cad87SWarner Losh c6x-*) 1028*c43cad87SWarner Losh cpu=tic6x 1029*c43cad87SWarner Losh ;; 1030*c43cad87SWarner Losh e500v[12]-*) 1031*c43cad87SWarner Losh cpu=powerpc 1032*c43cad87SWarner Losh basic_os=${basic_os}"spe" 1033*c43cad87SWarner Losh ;; 1034*c43cad87SWarner Losh mips3*-*) 1035*c43cad87SWarner Losh cpu=mips64 1036*c43cad87SWarner Losh ;; 1037*c43cad87SWarner Losh ms1-*) 1038*c43cad87SWarner Losh cpu=mt 1039*c43cad87SWarner Losh ;; 1040*c43cad87SWarner Losh m68knommu-*) 1041*c43cad87SWarner Losh cpu=m68k 1042*c43cad87SWarner Losh basic_os=linux 1043*c43cad87SWarner Losh ;; 1044*c43cad87SWarner Losh m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*) 1045*c43cad87SWarner Losh cpu=s12z 1046*c43cad87SWarner Losh ;; 1047*c43cad87SWarner Losh openrisc-*) 1048*c43cad87SWarner Losh cpu=or32 1049*c43cad87SWarner Losh ;; 1050*c43cad87SWarner Losh parisc-*) 1051*c43cad87SWarner Losh cpu=hppa 1052*c43cad87SWarner Losh basic_os=linux 1053*c43cad87SWarner Losh ;; 1054*c43cad87SWarner Losh pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 1055*c43cad87SWarner Losh cpu=i586 1056*c43cad87SWarner Losh ;; 1057*c43cad87SWarner Losh pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*) 1058*c43cad87SWarner Losh cpu=i686 1059*c43cad87SWarner Losh ;; 1060*c43cad87SWarner Losh pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 1061*c43cad87SWarner Losh cpu=i686 1062*c43cad87SWarner Losh ;; 1063*c43cad87SWarner Losh pentium4-*) 1064*c43cad87SWarner Losh cpu=i786 1065*c43cad87SWarner Losh ;; 1066*c43cad87SWarner Losh pc98-*) 1067*c43cad87SWarner Losh cpu=i386 1068*c43cad87SWarner Losh ;; 1069*c43cad87SWarner Losh ppc-* | ppcbe-*) 1070*c43cad87SWarner Losh cpu=powerpc 1071*c43cad87SWarner Losh ;; 1072*c43cad87SWarner Losh ppcle-* | powerpclittle-*) 1073*c43cad87SWarner Losh cpu=powerpcle 1074*c43cad87SWarner Losh ;; 1075*c43cad87SWarner Losh ppc64-*) 1076*c43cad87SWarner Losh cpu=powerpc64 1077*c43cad87SWarner Losh ;; 1078*c43cad87SWarner Losh ppc64le-* | powerpc64little-*) 1079*c43cad87SWarner Losh cpu=powerpc64le 1080*c43cad87SWarner Losh ;; 1081*c43cad87SWarner Losh sb1-*) 1082*c43cad87SWarner Losh cpu=mipsisa64sb1 1083*c43cad87SWarner Losh ;; 1084*c43cad87SWarner Losh sb1el-*) 1085*c43cad87SWarner Losh cpu=mipsisa64sb1el 1086*c43cad87SWarner Losh ;; 1087*c43cad87SWarner Losh sh5e[lb]-*) 1088*c43cad87SWarner Losh cpu=$(echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/') 1089*c43cad87SWarner Losh ;; 1090*c43cad87SWarner Losh spur-*) 1091*c43cad87SWarner Losh cpu=spur 1092*c43cad87SWarner Losh ;; 1093*c43cad87SWarner Losh strongarm-* | thumb-*) 1094*c43cad87SWarner Losh cpu=arm 1095*c43cad87SWarner Losh ;; 1096*c43cad87SWarner Losh tx39-*) 1097*c43cad87SWarner Losh cpu=mipstx39 1098*c43cad87SWarner Losh ;; 1099*c43cad87SWarner Losh tx39el-*) 1100*c43cad87SWarner Losh cpu=mipstx39el 1101*c43cad87SWarner Losh ;; 1102*c43cad87SWarner Losh x64-*) 1103*c43cad87SWarner Losh cpu=x86_64 1104*c43cad87SWarner Losh ;; 1105*c43cad87SWarner Losh xscale-* | xscalee[bl]-*) 1106*c43cad87SWarner Losh cpu=$(echo "$cpu" | sed 's/^xscale/arm/') 1107*c43cad87SWarner Losh ;; 1108*c43cad87SWarner Losh arm64-*) 1109*c43cad87SWarner Losh cpu=aarch64 1110*c43cad87SWarner Losh ;; 1111*c43cad87SWarner Losh 1112*c43cad87SWarner Losh # Recognize the canonical CPU Types that limit and/or modify the 1113*c43cad87SWarner Losh # company names they are paired with. 1114*c43cad87SWarner Losh cr16-*) 1115*c43cad87SWarner Losh basic_os=${basic_os:-elf} 1116*c43cad87SWarner Losh ;; 1117*c43cad87SWarner Losh crisv32-* | etraxfs*-*) 1118*c43cad87SWarner Losh cpu=crisv32 1119*c43cad87SWarner Losh vendor=axis 1120*c43cad87SWarner Losh ;; 1121*c43cad87SWarner Losh cris-* | etrax*-*) 1122*c43cad87SWarner Losh cpu=cris 1123*c43cad87SWarner Losh vendor=axis 1124*c43cad87SWarner Losh ;; 1125*c43cad87SWarner Losh crx-*) 1126*c43cad87SWarner Losh basic_os=${basic_os:-elf} 1127*c43cad87SWarner Losh ;; 1128*c43cad87SWarner Losh neo-tandem) 1129*c43cad87SWarner Losh cpu=neo 1130*c43cad87SWarner Losh vendor=tandem 1131*c43cad87SWarner Losh ;; 1132*c43cad87SWarner Losh nse-tandem) 1133*c43cad87SWarner Losh cpu=nse 1134*c43cad87SWarner Losh vendor=tandem 1135*c43cad87SWarner Losh ;; 1136*c43cad87SWarner Losh nsr-tandem) 1137*c43cad87SWarner Losh cpu=nsr 1138*c43cad87SWarner Losh vendor=tandem 1139*c43cad87SWarner Losh ;; 1140*c43cad87SWarner Losh nsv-tandem) 1141*c43cad87SWarner Losh cpu=nsv 1142*c43cad87SWarner Losh vendor=tandem 1143*c43cad87SWarner Losh ;; 1144*c43cad87SWarner Losh nsx-tandem) 1145*c43cad87SWarner Losh cpu=nsx 1146*c43cad87SWarner Losh vendor=tandem 1147*c43cad87SWarner Losh ;; 1148*c43cad87SWarner Losh mipsallegrexel-sony) 1149*c43cad87SWarner Losh cpu=mipsallegrexel 1150*c43cad87SWarner Losh vendor=sony 1151*c43cad87SWarner Losh ;; 1152*c43cad87SWarner Losh tile*-*) 1153*c43cad87SWarner Losh basic_os=${basic_os:-linux-gnu} 1154*c43cad87SWarner Losh ;; 1155*c43cad87SWarner Losh 1156*c43cad87SWarner Losh *) 1157*c43cad87SWarner Losh # Recognize the canonical CPU types that are allowed with any 1158*c43cad87SWarner Losh # company name. 1159*c43cad87SWarner Losh case $cpu in 1160*c43cad87SWarner Losh 1750a | 580 \ 1161*c43cad87SWarner Losh | a29k \ 1162*c43cad87SWarner Losh | aarch64 | aarch64_be \ 1163*c43cad87SWarner Losh | abacus \ 1164*c43cad87SWarner Losh | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \ 1165*c43cad87SWarner Losh | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \ 1166*c43cad87SWarner Losh | alphapca5[67] | alpha64pca5[67] \ 1167*c43cad87SWarner Losh | am33_2.0 \ 1168*c43cad87SWarner Losh | amdgcn \ 1169*c43cad87SWarner Losh | arc | arceb \ 1170*c43cad87SWarner Losh | arm | arm[lb]e | arme[lb] | armv* \ 1171*c43cad87SWarner Losh | avr | avr32 \ 1172*c43cad87SWarner Losh | asmjs \ 1173*c43cad87SWarner Losh | ba \ 1174*c43cad87SWarner Losh | be32 | be64 \ 1175*c43cad87SWarner Losh | bfin | bpf | bs2000 \ 1176*c43cad87SWarner Losh | c[123]* | c30 | [cjt]90 | c4x \ 1177*c43cad87SWarner Losh | c8051 | clipper | craynv | csky | cydra \ 1178*c43cad87SWarner Losh | d10v | d30v | dlx | dsp16xx \ 1179*c43cad87SWarner Losh | e2k | elxsi | epiphany \ 1180*c43cad87SWarner Losh | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \ 1181*c43cad87SWarner Losh | h8300 | h8500 \ 1182*c43cad87SWarner Losh | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 1183*c43cad87SWarner Losh | hexagon \ 1184*c43cad87SWarner Losh | i370 | i*86 | i860 | i960 | ia16 | ia64 \ 1185*c43cad87SWarner Losh | ip2k | iq2000 \ 1186*c43cad87SWarner Losh | k1om \ 1187*c43cad87SWarner Losh | le32 | le64 \ 1188*c43cad87SWarner Losh | lm32 \ 1189*c43cad87SWarner Losh | loongarch32 | loongarch64 | loongarchx32 \ 1190*c43cad87SWarner Losh | m32c | m32r | m32rle \ 1191*c43cad87SWarner Losh | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \ 1192*c43cad87SWarner Losh | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \ 1193*c43cad87SWarner Losh | m88110 | m88k | maxq | mb | mcore | mep | metag \ 1194*c43cad87SWarner Losh | microblaze | microblazeel \ 1195*c43cad87SWarner Losh | mips | mipsbe | mipseb | mipsel | mipsle \ 1196*c43cad87SWarner Losh | mips16 \ 1197*c43cad87SWarner Losh | mips64 | mips64eb | mips64el \ 1198*c43cad87SWarner Losh | mips64octeon | mips64octeonel \ 1199*c43cad87SWarner Losh | mips64orion | mips64orionel \ 1200*c43cad87SWarner Losh | mips64r5900 | mips64r5900el \ 1201*c43cad87SWarner Losh | mips64vr | mips64vrel \ 1202*c43cad87SWarner Losh | mips64vr4100 | mips64vr4100el \ 1203*c43cad87SWarner Losh | mips64vr4300 | mips64vr4300el \ 1204*c43cad87SWarner Losh | mips64vr5000 | mips64vr5000el \ 1205*c43cad87SWarner Losh | mips64vr5900 | mips64vr5900el \ 1206*c43cad87SWarner Losh | mipsisa32 | mipsisa32el \ 1207*c43cad87SWarner Losh | mipsisa32r2 | mipsisa32r2el \ 1208*c43cad87SWarner Losh | mipsisa32r6 | mipsisa32r6el \ 1209*c43cad87SWarner Losh | mipsisa64 | mipsisa64el \ 1210*c43cad87SWarner Losh | mipsisa64r2 | mipsisa64r2el \ 1211*c43cad87SWarner Losh | mipsisa64r6 | mipsisa64r6el \ 1212*c43cad87SWarner Losh | mipsisa64sb1 | mipsisa64sb1el \ 1213*c43cad87SWarner Losh | mipsisa64sr71k | mipsisa64sr71kel \ 1214*c43cad87SWarner Losh | mipsr5900 | mipsr5900el \ 1215*c43cad87SWarner Losh | mipstx39 | mipstx39el \ 1216*c43cad87SWarner Losh | mmix \ 1217*c43cad87SWarner Losh | mn10200 | mn10300 \ 1218*c43cad87SWarner Losh | moxie \ 1219*c43cad87SWarner Losh | mt \ 1220*c43cad87SWarner Losh | msp430 \ 1221*c43cad87SWarner Losh | nds32 | nds32le | nds32be \ 1222*c43cad87SWarner Losh | nfp \ 1223*c43cad87SWarner Losh | nios | nios2 | nios2eb | nios2el \ 1224*c43cad87SWarner Losh | none | np1 | ns16k | ns32k | nvptx \ 1225*c43cad87SWarner Losh | open8 \ 1226*c43cad87SWarner Losh | or1k* \ 1227*c43cad87SWarner Losh | or32 \ 1228*c43cad87SWarner Losh | orion \ 1229*c43cad87SWarner Losh | picochip \ 1230*c43cad87SWarner Losh | pdp10 | pdp11 | pj | pjl | pn | power \ 1231*c43cad87SWarner Losh | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \ 1232*c43cad87SWarner Losh | pru \ 1233*c43cad87SWarner Losh | pyramid \ 1234*c43cad87SWarner Losh | riscv | riscv32 | riscv32be | riscv64 | riscv64be \ 1235*c43cad87SWarner Losh | rl78 | romp | rs6000 | rx \ 1236*c43cad87SWarner Losh | s390 | s390x \ 1237*c43cad87SWarner Losh | score \ 1238*c43cad87SWarner Losh | sh | shl \ 1239*c43cad87SWarner Losh | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \ 1240*c43cad87SWarner Losh | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \ 1241*c43cad87SWarner Losh | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \ 1242*c43cad87SWarner Losh | sparclite \ 1243*c43cad87SWarner Losh | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \ 1244*c43cad87SWarner Losh | spu \ 1245*c43cad87SWarner Losh | tahoe \ 1246*c43cad87SWarner Losh | thumbv7* \ 1247*c43cad87SWarner Losh | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \ 1248*c43cad87SWarner Losh | tron \ 1249*c43cad87SWarner Losh | ubicom32 \ 1250*c43cad87SWarner Losh | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \ 1251*c43cad87SWarner Losh | vax \ 1252*c43cad87SWarner Losh | visium \ 1253*c43cad87SWarner Losh | w65 \ 1254*c43cad87SWarner Losh | wasm32 | wasm64 \ 1255*c43cad87SWarner Losh | we32k \ 1256*c43cad87SWarner Losh | x86 | x86_64 | xc16x | xgate | xps100 \ 1257*c43cad87SWarner Losh | xstormy16 | xtensa* \ 1258*c43cad87SWarner Losh | ymp \ 1259*c43cad87SWarner Losh | z8k | z80) 1260*c43cad87SWarner Losh ;; 1261*c43cad87SWarner Losh 1262*c43cad87SWarner Losh *) 1263*c43cad87SWarner Losh echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2 1264*c43cad87SWarner Losh exit 1 1265*c43cad87SWarner Losh ;; 1266*c43cad87SWarner Losh esac 1267*c43cad87SWarner Losh ;; 1268*c43cad87SWarner Loshesac 1269*c43cad87SWarner Losh 1270*c43cad87SWarner Losh# Here we canonicalize certain aliases for manufacturers. 1271*c43cad87SWarner Loshcase $vendor in 1272*c43cad87SWarner Losh digital*) 1273*c43cad87SWarner Losh vendor=dec 1274*c43cad87SWarner Losh ;; 1275*c43cad87SWarner Losh commodore*) 1276*c43cad87SWarner Losh vendor=cbm 1277*c43cad87SWarner Losh ;; 1278*c43cad87SWarner Losh *) 1279*c43cad87SWarner Losh ;; 1280*c43cad87SWarner Loshesac 1281*c43cad87SWarner Losh 1282*c43cad87SWarner Losh# Decode manufacturer-specific aliases for certain operating systems. 1283*c43cad87SWarner Losh 1284*c43cad87SWarner Loshif test x$basic_os != x 1285*c43cad87SWarner Loshthen 1286*c43cad87SWarner Losh 1287*c43cad87SWarner Losh# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just 1288*c43cad87SWarner Losh# set os. 1289*c43cad87SWarner Loshcase $basic_os in 1290*c43cad87SWarner Losh gnu/linux*) 1291*c43cad87SWarner Losh kernel=linux 1292*c43cad87SWarner Losh os=$(echo $basic_os | sed -e 's|gnu/linux|gnu|') 1293*c43cad87SWarner Losh ;; 1294*c43cad87SWarner Losh os2-emx) 1295*c43cad87SWarner Losh kernel=os2 1296*c43cad87SWarner Losh os=$(echo $basic_os | sed -e 's|os2-emx|emx|') 1297*c43cad87SWarner Losh ;; 1298*c43cad87SWarner Losh nto-qnx*) 1299*c43cad87SWarner Losh kernel=nto 1300*c43cad87SWarner Losh os=$(echo $basic_os | sed -e 's|nto-qnx|qnx|') 1301*c43cad87SWarner Losh ;; 1302*c43cad87SWarner Losh *-*) 1303*c43cad87SWarner Losh # shellcheck disable=SC2162 1304*c43cad87SWarner Losh IFS="-" read kernel os <<EOF 1305*c43cad87SWarner Losh$basic_os 1306*c43cad87SWarner LoshEOF 1307*c43cad87SWarner Losh ;; 1308*c43cad87SWarner Losh # Default OS when just kernel was specified 1309*c43cad87SWarner Losh nto*) 1310*c43cad87SWarner Losh kernel=nto 1311*c43cad87SWarner Losh os=$(echo $basic_os | sed -e 's|nto|qnx|') 1312*c43cad87SWarner Losh ;; 1313*c43cad87SWarner Losh linux*) 1314*c43cad87SWarner Losh kernel=linux 1315*c43cad87SWarner Losh os=$(echo $basic_os | sed -e 's|linux|gnu|') 1316*c43cad87SWarner Losh ;; 1317*c43cad87SWarner Losh *) 1318*c43cad87SWarner Losh kernel= 1319*c43cad87SWarner Losh os=$basic_os 1320*c43cad87SWarner Losh ;; 1321*c43cad87SWarner Loshesac 1322*c43cad87SWarner Losh 1323*c43cad87SWarner Losh# Now, normalize the OS (knowing we just have one component, it's not a kernel, 1324*c43cad87SWarner Losh# etc.) 1325*c43cad87SWarner Loshcase $os in 1326*c43cad87SWarner Losh # First match some system type aliases that might get confused 1327*c43cad87SWarner Losh # with valid system types. 1328*c43cad87SWarner Losh # solaris* is a basic system type, with this one exception. 1329*c43cad87SWarner Losh auroraux) 1330*c43cad87SWarner Losh os=auroraux 1331*c43cad87SWarner Losh ;; 1332*c43cad87SWarner Losh bluegene*) 1333*c43cad87SWarner Losh os=cnk 1334*c43cad87SWarner Losh ;; 1335*c43cad87SWarner Losh solaris1 | solaris1.*) 1336*c43cad87SWarner Losh os=$(echo $os | sed -e 's|solaris1|sunos4|') 1337*c43cad87SWarner Losh ;; 1338*c43cad87SWarner Losh solaris) 1339*c43cad87SWarner Losh os=solaris2 1340*c43cad87SWarner Losh ;; 1341*c43cad87SWarner Losh unixware*) 1342*c43cad87SWarner Losh os=sysv4.2uw 1343*c43cad87SWarner Losh ;; 1344*c43cad87SWarner Losh # es1800 is here to avoid being matched by es* (a different OS) 1345*c43cad87SWarner Losh es1800*) 1346*c43cad87SWarner Losh os=ose 1347*c43cad87SWarner Losh ;; 1348*c43cad87SWarner Losh # Some version numbers need modification 1349*c43cad87SWarner Losh chorusos*) 1350*c43cad87SWarner Losh os=chorusos 1351*c43cad87SWarner Losh ;; 1352*c43cad87SWarner Losh isc) 1353*c43cad87SWarner Losh os=isc2.2 1354*c43cad87SWarner Losh ;; 1355*c43cad87SWarner Losh sco6) 1356*c43cad87SWarner Losh os=sco5v6 1357*c43cad87SWarner Losh ;; 1358*c43cad87SWarner Losh sco5) 1359*c43cad87SWarner Losh os=sco3.2v5 1360*c43cad87SWarner Losh ;; 1361*c43cad87SWarner Losh sco4) 1362*c43cad87SWarner Losh os=sco3.2v4 1363*c43cad87SWarner Losh ;; 1364*c43cad87SWarner Losh sco3.2.[4-9]*) 1365*c43cad87SWarner Losh os=$(echo $os | sed -e 's/sco3.2./sco3.2v/') 1366*c43cad87SWarner Losh ;; 1367*c43cad87SWarner Losh sco*v* | scout) 1368*c43cad87SWarner Losh # Don't match below 1369*c43cad87SWarner Losh ;; 1370*c43cad87SWarner Losh sco*) 1371*c43cad87SWarner Losh os=sco3.2v2 1372*c43cad87SWarner Losh ;; 1373*c43cad87SWarner Losh psos*) 1374*c43cad87SWarner Losh os=psos 1375*c43cad87SWarner Losh ;; 1376*c43cad87SWarner Losh qnx*) 1377*c43cad87SWarner Losh os=qnx 1378*c43cad87SWarner Losh ;; 1379*c43cad87SWarner Losh hiux*) 1380*c43cad87SWarner Losh os=hiuxwe2 1381*c43cad87SWarner Losh ;; 1382*c43cad87SWarner Losh lynx*178) 1383*c43cad87SWarner Losh os=lynxos178 1384*c43cad87SWarner Losh ;; 1385*c43cad87SWarner Losh lynx*5) 1386*c43cad87SWarner Losh os=lynxos5 1387*c43cad87SWarner Losh ;; 1388*c43cad87SWarner Losh lynxos*) 1389*c43cad87SWarner Losh # don't get caught up in next wildcard 1390*c43cad87SWarner Losh ;; 1391*c43cad87SWarner Losh lynx*) 1392*c43cad87SWarner Losh os=lynxos 1393*c43cad87SWarner Losh ;; 1394*c43cad87SWarner Losh mac[0-9]*) 1395*c43cad87SWarner Losh os=$(echo "$os" | sed -e 's|mac|macos|') 1396*c43cad87SWarner Losh ;; 1397*c43cad87SWarner Losh opened*) 1398*c43cad87SWarner Losh os=openedition 1399*c43cad87SWarner Losh ;; 1400*c43cad87SWarner Losh os400*) 1401*c43cad87SWarner Losh os=os400 1402*c43cad87SWarner Losh ;; 1403*c43cad87SWarner Losh sunos5*) 1404*c43cad87SWarner Losh os=$(echo "$os" | sed -e 's|sunos5|solaris2|') 1405*c43cad87SWarner Losh ;; 1406*c43cad87SWarner Losh sunos6*) 1407*c43cad87SWarner Losh os=$(echo "$os" | sed -e 's|sunos6|solaris3|') 1408*c43cad87SWarner Losh ;; 1409*c43cad87SWarner Losh wince*) 1410*c43cad87SWarner Losh os=wince 1411*c43cad87SWarner Losh ;; 1412*c43cad87SWarner Losh utek*) 1413*c43cad87SWarner Losh os=bsd 1414*c43cad87SWarner Losh ;; 1415*c43cad87SWarner Losh dynix*) 1416*c43cad87SWarner Losh os=bsd 1417*c43cad87SWarner Losh ;; 1418*c43cad87SWarner Losh acis*) 1419*c43cad87SWarner Losh os=aos 1420*c43cad87SWarner Losh ;; 1421*c43cad87SWarner Losh atheos*) 1422*c43cad87SWarner Losh os=atheos 1423*c43cad87SWarner Losh ;; 1424*c43cad87SWarner Losh syllable*) 1425*c43cad87SWarner Losh os=syllable 1426*c43cad87SWarner Losh ;; 1427*c43cad87SWarner Losh 386bsd) 1428*c43cad87SWarner Losh os=bsd 1429*c43cad87SWarner Losh ;; 1430*c43cad87SWarner Losh ctix* | uts*) 1431*c43cad87SWarner Losh os=sysv 1432*c43cad87SWarner Losh ;; 1433*c43cad87SWarner Losh nova*) 1434*c43cad87SWarner Losh os=rtmk-nova 1435*c43cad87SWarner Losh ;; 1436*c43cad87SWarner Losh ns2) 1437*c43cad87SWarner Losh os=nextstep2 1438*c43cad87SWarner Losh ;; 1439*c43cad87SWarner Losh # Preserve the version number of sinix5. 1440*c43cad87SWarner Losh sinix5.*) 1441*c43cad87SWarner Losh os=$(echo $os | sed -e 's|sinix|sysv|') 1442*c43cad87SWarner Losh ;; 1443*c43cad87SWarner Losh sinix*) 1444*c43cad87SWarner Losh os=sysv4 1445*c43cad87SWarner Losh ;; 1446*c43cad87SWarner Losh tpf*) 1447*c43cad87SWarner Losh os=tpf 1448*c43cad87SWarner Losh ;; 1449*c43cad87SWarner Losh triton*) 1450*c43cad87SWarner Losh os=sysv3 1451*c43cad87SWarner Losh ;; 1452*c43cad87SWarner Losh oss*) 1453*c43cad87SWarner Losh os=sysv3 1454*c43cad87SWarner Losh ;; 1455*c43cad87SWarner Losh svr4*) 1456*c43cad87SWarner Losh os=sysv4 1457*c43cad87SWarner Losh ;; 1458*c43cad87SWarner Losh svr3) 1459*c43cad87SWarner Losh os=sysv3 1460*c43cad87SWarner Losh ;; 1461*c43cad87SWarner Losh sysvr4) 1462*c43cad87SWarner Losh os=sysv4 1463*c43cad87SWarner Losh ;; 1464*c43cad87SWarner Losh ose*) 1465*c43cad87SWarner Losh os=ose 1466*c43cad87SWarner Losh ;; 1467*c43cad87SWarner Losh *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) 1468*c43cad87SWarner Losh os=mint 1469*c43cad87SWarner Losh ;; 1470*c43cad87SWarner Losh dicos*) 1471*c43cad87SWarner Losh os=dicos 1472*c43cad87SWarner Losh ;; 1473*c43cad87SWarner Losh pikeos*) 1474*c43cad87SWarner Losh # Until real need of OS specific support for 1475*c43cad87SWarner Losh # particular features comes up, bare metal 1476*c43cad87SWarner Losh # configurations are quite functional. 1477*c43cad87SWarner Losh case $cpu in 1478*c43cad87SWarner Losh arm*) 1479*c43cad87SWarner Losh os=eabi 1480*c43cad87SWarner Losh ;; 1481*c43cad87SWarner Losh *) 1482*c43cad87SWarner Losh os=elf 1483*c43cad87SWarner Losh ;; 1484*c43cad87SWarner Losh esac 1485*c43cad87SWarner Losh ;; 1486*c43cad87SWarner Losh *) 1487*c43cad87SWarner Losh # No normalization, but not necessarily accepted, that comes below. 1488*c43cad87SWarner Losh ;; 1489*c43cad87SWarner Loshesac 1490*c43cad87SWarner Losh 1491*c43cad87SWarner Loshelse 1492*c43cad87SWarner Losh 1493*c43cad87SWarner Losh# Here we handle the default operating systems that come with various machines. 1494*c43cad87SWarner Losh# The value should be what the vendor currently ships out the door with their 1495*c43cad87SWarner Losh# machine or put another way, the most popular os provided with the machine. 1496*c43cad87SWarner Losh 1497*c43cad87SWarner Losh# Note that if you're going to try to match "-MANUFACTURER" here (say, 1498*c43cad87SWarner Losh# "-sun"), then you have to tell the case statement up towards the top 1499*c43cad87SWarner Losh# that MANUFACTURER isn't an operating system. Otherwise, code above 1500*c43cad87SWarner Losh# will signal an error saying that MANUFACTURER isn't an operating 1501*c43cad87SWarner Losh# system, and we'll never get to this point. 1502*c43cad87SWarner Losh 1503*c43cad87SWarner Loshkernel= 1504*c43cad87SWarner Loshcase $cpu-$vendor in 1505*c43cad87SWarner Losh score-*) 1506*c43cad87SWarner Losh os=elf 1507*c43cad87SWarner Losh ;; 1508*c43cad87SWarner Losh spu-*) 1509*c43cad87SWarner Losh os=elf 1510*c43cad87SWarner Losh ;; 1511*c43cad87SWarner Losh *-acorn) 1512*c43cad87SWarner Losh os=riscix1.2 1513*c43cad87SWarner Losh ;; 1514*c43cad87SWarner Losh arm*-rebel) 1515*c43cad87SWarner Losh kernel=linux 1516*c43cad87SWarner Losh os=gnu 1517*c43cad87SWarner Losh ;; 1518*c43cad87SWarner Losh arm*-semi) 1519*c43cad87SWarner Losh os=aout 1520*c43cad87SWarner Losh ;; 1521*c43cad87SWarner Losh c4x-* | tic4x-*) 1522*c43cad87SWarner Losh os=coff 1523*c43cad87SWarner Losh ;; 1524*c43cad87SWarner Losh c8051-*) 1525*c43cad87SWarner Losh os=elf 1526*c43cad87SWarner Losh ;; 1527*c43cad87SWarner Losh clipper-intergraph) 1528*c43cad87SWarner Losh os=clix 1529*c43cad87SWarner Losh ;; 1530*c43cad87SWarner Losh hexagon-*) 1531*c43cad87SWarner Losh os=elf 1532*c43cad87SWarner Losh ;; 1533*c43cad87SWarner Losh tic54x-*) 1534*c43cad87SWarner Losh os=coff 1535*c43cad87SWarner Losh ;; 1536*c43cad87SWarner Losh tic55x-*) 1537*c43cad87SWarner Losh os=coff 1538*c43cad87SWarner Losh ;; 1539*c43cad87SWarner Losh tic6x-*) 1540*c43cad87SWarner Losh os=coff 1541*c43cad87SWarner Losh ;; 1542*c43cad87SWarner Losh # This must come before the *-dec entry. 1543*c43cad87SWarner Losh pdp10-*) 1544*c43cad87SWarner Losh os=tops20 1545*c43cad87SWarner Losh ;; 1546*c43cad87SWarner Losh pdp11-*) 1547*c43cad87SWarner Losh os=none 1548*c43cad87SWarner Losh ;; 1549*c43cad87SWarner Losh *-dec | vax-*) 1550*c43cad87SWarner Losh os=ultrix4.2 1551*c43cad87SWarner Losh ;; 1552*c43cad87SWarner Losh m68*-apollo) 1553*c43cad87SWarner Losh os=domain 1554*c43cad87SWarner Losh ;; 1555*c43cad87SWarner Losh i386-sun) 1556*c43cad87SWarner Losh os=sunos4.0.2 1557*c43cad87SWarner Losh ;; 1558*c43cad87SWarner Losh m68000-sun) 1559*c43cad87SWarner Losh os=sunos3 1560*c43cad87SWarner Losh ;; 1561*c43cad87SWarner Losh m68*-cisco) 1562*c43cad87SWarner Losh os=aout 1563*c43cad87SWarner Losh ;; 1564*c43cad87SWarner Losh mep-*) 1565*c43cad87SWarner Losh os=elf 1566*c43cad87SWarner Losh ;; 1567*c43cad87SWarner Losh mips*-cisco) 1568*c43cad87SWarner Losh os=elf 1569*c43cad87SWarner Losh ;; 1570*c43cad87SWarner Losh mips*-*) 1571*c43cad87SWarner Losh os=elf 1572*c43cad87SWarner Losh ;; 1573*c43cad87SWarner Losh or32-*) 1574*c43cad87SWarner Losh os=coff 1575*c43cad87SWarner Losh ;; 1576*c43cad87SWarner Losh *-tti) # must be before sparc entry or we get the wrong os. 1577*c43cad87SWarner Losh os=sysv3 1578*c43cad87SWarner Losh ;; 1579*c43cad87SWarner Losh sparc-* | *-sun) 1580*c43cad87SWarner Losh os=sunos4.1.1 1581*c43cad87SWarner Losh ;; 1582*c43cad87SWarner Losh pru-*) 1583*c43cad87SWarner Losh os=elf 1584*c43cad87SWarner Losh ;; 1585*c43cad87SWarner Losh *-be) 1586*c43cad87SWarner Losh os=beos 1587*c43cad87SWarner Losh ;; 1588*c43cad87SWarner Losh *-ibm) 1589*c43cad87SWarner Losh os=aix 1590*c43cad87SWarner Losh ;; 1591*c43cad87SWarner Losh *-knuth) 1592*c43cad87SWarner Losh os=mmixware 1593*c43cad87SWarner Losh ;; 1594*c43cad87SWarner Losh *-wec) 1595*c43cad87SWarner Losh os=proelf 1596*c43cad87SWarner Losh ;; 1597*c43cad87SWarner Losh *-winbond) 1598*c43cad87SWarner Losh os=proelf 1599*c43cad87SWarner Losh ;; 1600*c43cad87SWarner Losh *-oki) 1601*c43cad87SWarner Losh os=proelf 1602*c43cad87SWarner Losh ;; 1603*c43cad87SWarner Losh *-hp) 1604*c43cad87SWarner Losh os=hpux 1605*c43cad87SWarner Losh ;; 1606*c43cad87SWarner Losh *-hitachi) 1607*c43cad87SWarner Losh os=hiux 1608*c43cad87SWarner Losh ;; 1609*c43cad87SWarner Losh i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1610*c43cad87SWarner Losh os=sysv 1611*c43cad87SWarner Losh ;; 1612*c43cad87SWarner Losh *-cbm) 1613*c43cad87SWarner Losh os=amigaos 1614*c43cad87SWarner Losh ;; 1615*c43cad87SWarner Losh *-dg) 1616*c43cad87SWarner Losh os=dgux 1617*c43cad87SWarner Losh ;; 1618*c43cad87SWarner Losh *-dolphin) 1619*c43cad87SWarner Losh os=sysv3 1620*c43cad87SWarner Losh ;; 1621*c43cad87SWarner Losh m68k-ccur) 1622*c43cad87SWarner Losh os=rtu 1623*c43cad87SWarner Losh ;; 1624*c43cad87SWarner Losh m88k-omron*) 1625*c43cad87SWarner Losh os=luna 1626*c43cad87SWarner Losh ;; 1627*c43cad87SWarner Losh *-next) 1628*c43cad87SWarner Losh os=nextstep 1629*c43cad87SWarner Losh ;; 1630*c43cad87SWarner Losh *-sequent) 1631*c43cad87SWarner Losh os=ptx 1632*c43cad87SWarner Losh ;; 1633*c43cad87SWarner Losh *-crds) 1634*c43cad87SWarner Losh os=unos 1635*c43cad87SWarner Losh ;; 1636*c43cad87SWarner Losh *-ns) 1637*c43cad87SWarner Losh os=genix 1638*c43cad87SWarner Losh ;; 1639*c43cad87SWarner Losh i370-*) 1640*c43cad87SWarner Losh os=mvs 1641*c43cad87SWarner Losh ;; 1642*c43cad87SWarner Losh *-gould) 1643*c43cad87SWarner Losh os=sysv 1644*c43cad87SWarner Losh ;; 1645*c43cad87SWarner Losh *-highlevel) 1646*c43cad87SWarner Losh os=bsd 1647*c43cad87SWarner Losh ;; 1648*c43cad87SWarner Losh *-encore) 1649*c43cad87SWarner Losh os=bsd 1650*c43cad87SWarner Losh ;; 1651*c43cad87SWarner Losh *-sgi) 1652*c43cad87SWarner Losh os=irix 1653*c43cad87SWarner Losh ;; 1654*c43cad87SWarner Losh *-siemens) 1655*c43cad87SWarner Losh os=sysv4 1656*c43cad87SWarner Losh ;; 1657*c43cad87SWarner Losh *-masscomp) 1658*c43cad87SWarner Losh os=rtu 1659*c43cad87SWarner Losh ;; 1660*c43cad87SWarner Losh f30[01]-fujitsu | f700-fujitsu) 1661*c43cad87SWarner Losh os=uxpv 1662*c43cad87SWarner Losh ;; 1663*c43cad87SWarner Losh *-rom68k) 1664*c43cad87SWarner Losh os=coff 1665*c43cad87SWarner Losh ;; 1666*c43cad87SWarner Losh *-*bug) 1667*c43cad87SWarner Losh os=coff 1668*c43cad87SWarner Losh ;; 1669*c43cad87SWarner Losh *-apple) 1670*c43cad87SWarner Losh os=macos 1671*c43cad87SWarner Losh ;; 1672*c43cad87SWarner Losh *-atari*) 1673*c43cad87SWarner Losh os=mint 1674*c43cad87SWarner Losh ;; 1675*c43cad87SWarner Losh *-wrs) 1676*c43cad87SWarner Losh os=vxworks 1677*c43cad87SWarner Losh ;; 1678*c43cad87SWarner Losh *) 1679*c43cad87SWarner Losh os=none 1680*c43cad87SWarner Losh ;; 1681*c43cad87SWarner Loshesac 1682*c43cad87SWarner Losh 1683*c43cad87SWarner Loshfi 1684*c43cad87SWarner Losh 1685*c43cad87SWarner Losh# Now, validate our (potentially fixed-up) OS. 1686*c43cad87SWarner Loshcase $os in 1687*c43cad87SWarner Losh # Sometimes we do "kernel-abi", so those need to count as OSes. 1688*c43cad87SWarner Losh musl* | newlib* | uclibc*) 1689*c43cad87SWarner Losh ;; 1690*c43cad87SWarner Losh # Likewise for "kernel-libc" 1691*c43cad87SWarner Losh eabi* | gnueabi*) 1692*c43cad87SWarner Losh ;; 1693*c43cad87SWarner Losh # Now accept the basic system types. 1694*c43cad87SWarner Losh # The portable systems comes first. 1695*c43cad87SWarner Losh # Each alternative MUST end in a * to match a version number. 1696*c43cad87SWarner Losh gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \ 1697*c43cad87SWarner Losh | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \ 1698*c43cad87SWarner Losh | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ 1699*c43cad87SWarner Losh | sym* | plan9* | psp* | sim* | xray* | os68k* | v88r* \ 1700*c43cad87SWarner Losh | hiux* | abug | nacl* | netware* | windows* \ 1701*c43cad87SWarner Losh | os9* | macos* | osx* | ios* \ 1702*c43cad87SWarner Losh | mpw* | magic* | mmixware* | mon960* | lnews* \ 1703*c43cad87SWarner Losh | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ 1704*c43cad87SWarner Losh | aos* | aros* | cloudabi* | sortix* | twizzler* \ 1705*c43cad87SWarner Losh | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ 1706*c43cad87SWarner Losh | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ 1707*c43cad87SWarner Losh | mirbsd* | netbsd* | dicos* | openedition* | ose* \ 1708*c43cad87SWarner Losh | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \ 1709*c43cad87SWarner Losh | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \ 1710*c43cad87SWarner Losh | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \ 1711*c43cad87SWarner Losh | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ 1712*c43cad87SWarner Losh | udi* | lites* | ieee* | go32* | aux* | hcos* \ 1713*c43cad87SWarner Losh | chorusrdb* | cegcc* | glidix* \ 1714*c43cad87SWarner Losh | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ 1715*c43cad87SWarner Losh | midipix* | mingw32* | mingw64* | mint* \ 1716*c43cad87SWarner Losh | uxpv* | beos* | mpeix* | udk* | moxiebox* \ 1717*c43cad87SWarner Losh | interix* | uwin* | mks* | rhapsody* | darwin* \ 1718*c43cad87SWarner Losh | openstep* | oskit* | conix* | pw32* | nonstopux* \ 1719*c43cad87SWarner Losh | storm-chaos* | tops10* | tenex* | tops20* | its* \ 1720*c43cad87SWarner Losh | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \ 1721*c43cad87SWarner Losh | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \ 1722*c43cad87SWarner Losh | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ 1723*c43cad87SWarner Losh | skyos* | haiku* | rdos* | toppers* | drops* | es* \ 1724*c43cad87SWarner Losh | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ 1725*c43cad87SWarner Losh | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \ 1726*c43cad87SWarner Losh | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx*) 1727*c43cad87SWarner Losh ;; 1728*c43cad87SWarner Losh # This one is extra strict with allowed versions 1729*c43cad87SWarner Losh sco3.2v2 | sco3.2v[4-9]* | sco5v6*) 1730*c43cad87SWarner Losh # Don't forget version if it is 3.2v4 or newer. 1731*c43cad87SWarner Losh ;; 1732*c43cad87SWarner Losh none) 1733*c43cad87SWarner Losh ;; 1734*c43cad87SWarner Losh *) 1735*c43cad87SWarner Losh echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2 1736*c43cad87SWarner Losh exit 1 1737*c43cad87SWarner Losh ;; 1738*c43cad87SWarner Loshesac 1739*c43cad87SWarner Losh 1740*c43cad87SWarner Losh# As a final step for OS-related things, validate the OS-kernel combination 1741*c43cad87SWarner Losh# (given a valid OS), if there is a kernel. 1742*c43cad87SWarner Loshcase $kernel-$os in 1743*c43cad87SWarner Losh linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* ) 1744*c43cad87SWarner Losh ;; 1745*c43cad87SWarner Losh uclinux-uclibc* ) 1746*c43cad87SWarner Losh ;; 1747*c43cad87SWarner Losh -dietlibc* | -newlib* | -musl* | -uclibc* ) 1748*c43cad87SWarner Losh # These are just libc implementations, not actual OSes, and thus 1749*c43cad87SWarner Losh # require a kernel. 1750*c43cad87SWarner Losh echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2 1751*c43cad87SWarner Losh exit 1 1752*c43cad87SWarner Losh ;; 1753*c43cad87SWarner Losh kfreebsd*-gnu* | kopensolaris*-gnu*) 1754*c43cad87SWarner Losh ;; 1755*c43cad87SWarner Losh nto-qnx*) 1756*c43cad87SWarner Losh ;; 1757*c43cad87SWarner Losh os2-emx) 1758*c43cad87SWarner Losh ;; 1759*c43cad87SWarner Losh *-eabi* | *-gnueabi*) 1760*c43cad87SWarner Losh ;; 1761*c43cad87SWarner Losh -*) 1762*c43cad87SWarner Losh # Blank kernel with real OS is always fine. 1763*c43cad87SWarner Losh ;; 1764*c43cad87SWarner Losh *-*) 1765*c43cad87SWarner Losh echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2 1766*c43cad87SWarner Losh exit 1 1767*c43cad87SWarner Losh ;; 1768*c43cad87SWarner Loshesac 1769*c43cad87SWarner Losh 1770*c43cad87SWarner Losh# Here we handle the case where we know the os, and the CPU type, but not the 1771*c43cad87SWarner Losh# manufacturer. We pick the logical manufacturer. 1772*c43cad87SWarner Loshcase $vendor in 1773*c43cad87SWarner Losh unknown) 1774*c43cad87SWarner Losh case $cpu-$os in 1775*c43cad87SWarner Losh *-riscix*) 1776*c43cad87SWarner Losh vendor=acorn 1777*c43cad87SWarner Losh ;; 1778*c43cad87SWarner Losh *-sunos*) 1779*c43cad87SWarner Losh vendor=sun 1780*c43cad87SWarner Losh ;; 1781*c43cad87SWarner Losh *-cnk* | *-aix*) 1782*c43cad87SWarner Losh vendor=ibm 1783*c43cad87SWarner Losh ;; 1784*c43cad87SWarner Losh *-beos*) 1785*c43cad87SWarner Losh vendor=be 1786*c43cad87SWarner Losh ;; 1787*c43cad87SWarner Losh *-hpux*) 1788*c43cad87SWarner Losh vendor=hp 1789*c43cad87SWarner Losh ;; 1790*c43cad87SWarner Losh *-mpeix*) 1791*c43cad87SWarner Losh vendor=hp 1792*c43cad87SWarner Losh ;; 1793*c43cad87SWarner Losh *-hiux*) 1794*c43cad87SWarner Losh vendor=hitachi 1795*c43cad87SWarner Losh ;; 1796*c43cad87SWarner Losh *-unos*) 1797*c43cad87SWarner Losh vendor=crds 1798*c43cad87SWarner Losh ;; 1799*c43cad87SWarner Losh *-dgux*) 1800*c43cad87SWarner Losh vendor=dg 1801*c43cad87SWarner Losh ;; 1802*c43cad87SWarner Losh *-luna*) 1803*c43cad87SWarner Losh vendor=omron 1804*c43cad87SWarner Losh ;; 1805*c43cad87SWarner Losh *-genix*) 1806*c43cad87SWarner Losh vendor=ns 1807*c43cad87SWarner Losh ;; 1808*c43cad87SWarner Losh *-clix*) 1809*c43cad87SWarner Losh vendor=intergraph 1810*c43cad87SWarner Losh ;; 1811*c43cad87SWarner Losh *-mvs* | *-opened*) 1812*c43cad87SWarner Losh vendor=ibm 1813*c43cad87SWarner Losh ;; 1814*c43cad87SWarner Losh *-os400*) 1815*c43cad87SWarner Losh vendor=ibm 1816*c43cad87SWarner Losh ;; 1817*c43cad87SWarner Losh s390-* | s390x-*) 1818*c43cad87SWarner Losh vendor=ibm 1819*c43cad87SWarner Losh ;; 1820*c43cad87SWarner Losh *-ptx*) 1821*c43cad87SWarner Losh vendor=sequent 1822*c43cad87SWarner Losh ;; 1823*c43cad87SWarner Losh *-tpf*) 1824*c43cad87SWarner Losh vendor=ibm 1825*c43cad87SWarner Losh ;; 1826*c43cad87SWarner Losh *-vxsim* | *-vxworks* | *-windiss*) 1827*c43cad87SWarner Losh vendor=wrs 1828*c43cad87SWarner Losh ;; 1829*c43cad87SWarner Losh *-aux*) 1830*c43cad87SWarner Losh vendor=apple 1831*c43cad87SWarner Losh ;; 1832*c43cad87SWarner Losh *-hms*) 1833*c43cad87SWarner Losh vendor=hitachi 1834*c43cad87SWarner Losh ;; 1835*c43cad87SWarner Losh *-mpw* | *-macos*) 1836*c43cad87SWarner Losh vendor=apple 1837*c43cad87SWarner Losh ;; 1838*c43cad87SWarner Losh *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*) 1839*c43cad87SWarner Losh vendor=atari 1840*c43cad87SWarner Losh ;; 1841*c43cad87SWarner Losh *-vos*) 1842*c43cad87SWarner Losh vendor=stratus 1843*c43cad87SWarner Losh ;; 1844*c43cad87SWarner Losh esac 1845*c43cad87SWarner Losh ;; 1846*c43cad87SWarner Loshesac 1847*c43cad87SWarner Losh 1848*c43cad87SWarner Loshecho "$cpu-$vendor-${kernel:+$kernel-}$os" 1849*c43cad87SWarner Loshexit 1850*c43cad87SWarner Losh 1851*c43cad87SWarner Losh# Local variables: 1852*c43cad87SWarner Losh# eval: (add-hook 'before-save-hook 'time-stamp) 1853*c43cad87SWarner Losh# time-stamp-start: "timestamp='" 1854*c43cad87SWarner Losh# time-stamp-format: "%:y-%02m-%02d" 1855*c43cad87SWarner Losh# time-stamp-end: "'" 1856*c43cad87SWarner Losh# End: 1857*c43cad87SWarner Losh||||||| dec341af7695 1858*c43cad87SWarner Losh======= 1859bf6039f0SWarner Losh#! /bin/sh 1860bf6039f0SWarner Losh# Configuration validation subroutine script. 1861bf6039f0SWarner Losh# Copyright 1992-2016 Free Software Foundation, Inc. 1862bf6039f0SWarner Losh 1863bf6039f0SWarner Loshtimestamp='2016-11-04' 1864bf6039f0SWarner Losh 1865bf6039f0SWarner Losh# This file is free software; you can redistribute it and/or modify it 1866bf6039f0SWarner Losh# under the terms of the GNU General Public License as published by 1867bf6039f0SWarner Losh# the Free Software Foundation; either version 3 of the License, or 1868bf6039f0SWarner Losh# (at your option) any later version. 1869bf6039f0SWarner Losh# 1870bf6039f0SWarner Losh# This program is distributed in the hope that it will be useful, but 1871bf6039f0SWarner Losh# WITHOUT ANY WARRANTY; without even the implied warranty of 1872bf6039f0SWarner Losh# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1873bf6039f0SWarner Losh# General Public License for more details. 1874bf6039f0SWarner Losh# 1875bf6039f0SWarner Losh# You should have received a copy of the GNU General Public License 1876bf6039f0SWarner Losh# along with this program; if not, see <http://www.gnu.org/licenses/>. 1877bf6039f0SWarner Losh# 1878bf6039f0SWarner Losh# As a special exception to the GNU General Public License, if you 1879bf6039f0SWarner Losh# distribute this file as part of a program that contains a 1880bf6039f0SWarner Losh# configuration script generated by Autoconf, you may include it under 1881bf6039f0SWarner Losh# the same distribution terms that you use for the rest of that 1882bf6039f0SWarner Losh# program. This Exception is an additional permission under section 7 1883bf6039f0SWarner Losh# of the GNU General Public License, version 3 ("GPLv3"). 1884bf6039f0SWarner Losh 1885bf6039f0SWarner Losh 1886bf6039f0SWarner Losh# Please send patches to <config-patches@gnu.org>. 1887bf6039f0SWarner Losh# 1888bf6039f0SWarner Losh# Configuration subroutine to validate and canonicalize a configuration type. 1889bf6039f0SWarner Losh# Supply the specified configuration type as an argument. 1890bf6039f0SWarner Losh# If it is invalid, we print an error message on stderr and exit with code 1. 1891bf6039f0SWarner Losh# Otherwise, we print the canonical config type on stdout and succeed. 1892bf6039f0SWarner Losh 1893bf6039f0SWarner Losh# You can get the latest version of this script from: 1894bf6039f0SWarner Losh# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 1895bf6039f0SWarner Losh 1896bf6039f0SWarner Losh# This file is supposed to be the same for all GNU packages 1897bf6039f0SWarner Losh# and recognize all the CPU types, system types and aliases 1898bf6039f0SWarner Losh# that are meaningful with *any* GNU software. 1899bf6039f0SWarner Losh# Each package is responsible for reporting which valid configurations 1900bf6039f0SWarner Losh# it does not support. The user should be able to distinguish 1901bf6039f0SWarner Losh# a failure to support a valid configuration from a meaningless 1902bf6039f0SWarner Losh# configuration. 1903bf6039f0SWarner Losh 1904bf6039f0SWarner Losh# The goal of this file is to map all the various variations of a given 1905bf6039f0SWarner Losh# machine specification into a single specification in the form: 1906bf6039f0SWarner Losh# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 1907bf6039f0SWarner Losh# or in some cases, the newer four-part form: 1908bf6039f0SWarner Losh# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 1909bf6039f0SWarner Losh# It is wrong to echo any other type of specification. 1910bf6039f0SWarner Losh 1911bf6039f0SWarner Loshme=`echo "$0" | sed -e 's,.*/,,'` 1912bf6039f0SWarner Losh 1913bf6039f0SWarner Loshusage="\ 1914bf6039f0SWarner LoshUsage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS 1915bf6039f0SWarner Losh 1916bf6039f0SWarner LoshCanonicalize a configuration name. 1917bf6039f0SWarner Losh 1918bf6039f0SWarner LoshOperation modes: 1919bf6039f0SWarner Losh -h, --help print this help, then exit 1920bf6039f0SWarner Losh -t, --time-stamp print date of last modification, then exit 1921bf6039f0SWarner Losh -v, --version print version number, then exit 1922bf6039f0SWarner Losh 1923bf6039f0SWarner LoshReport bugs and patches to <config-patches@gnu.org>." 1924bf6039f0SWarner Losh 1925bf6039f0SWarner Loshversion="\ 1926bf6039f0SWarner LoshGNU config.sub ($timestamp) 1927bf6039f0SWarner Losh 1928bf6039f0SWarner LoshCopyright 1992-2016 Free Software Foundation, Inc. 1929bf6039f0SWarner Losh 1930bf6039f0SWarner LoshThis is free software; see the source for copying conditions. There is NO 1931bf6039f0SWarner Loshwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 1932bf6039f0SWarner Losh 1933bf6039f0SWarner Loshhelp=" 1934bf6039f0SWarner LoshTry \`$me --help' for more information." 1935bf6039f0SWarner Losh 1936bf6039f0SWarner Losh# Parse command line 1937bf6039f0SWarner Loshwhile test $# -gt 0 ; do 1938bf6039f0SWarner Losh case $1 in 1939bf6039f0SWarner Losh --time-stamp | --time* | -t ) 1940bf6039f0SWarner Losh echo "$timestamp" ; exit ;; 1941bf6039f0SWarner Losh --version | -v ) 1942bf6039f0SWarner Losh echo "$version" ; exit ;; 1943bf6039f0SWarner Losh --help | --h* | -h ) 1944bf6039f0SWarner Losh echo "$usage"; exit ;; 1945bf6039f0SWarner Losh -- ) # Stop option processing 1946bf6039f0SWarner Losh shift; break ;; 1947bf6039f0SWarner Losh - ) # Use stdin as input. 1948bf6039f0SWarner Losh break ;; 1949bf6039f0SWarner Losh -* ) 1950bf6039f0SWarner Losh echo "$me: invalid option $1$help" 1951bf6039f0SWarner Losh exit 1 ;; 1952bf6039f0SWarner Losh 1953bf6039f0SWarner Losh *local*) 1954bf6039f0SWarner Losh # First pass through any local machine types. 1955bf6039f0SWarner Losh echo $1 1956bf6039f0SWarner Losh exit ;; 1957bf6039f0SWarner Losh 1958bf6039f0SWarner Losh * ) 1959bf6039f0SWarner Losh break ;; 1960bf6039f0SWarner Losh esac 1961bf6039f0SWarner Loshdone 1962bf6039f0SWarner Losh 1963bf6039f0SWarner Loshcase $# in 1964bf6039f0SWarner Losh 0) echo "$me: missing argument$help" >&2 1965bf6039f0SWarner Losh exit 1;; 1966bf6039f0SWarner Losh 1) ;; 1967bf6039f0SWarner Losh *) echo "$me: too many arguments$help" >&2 1968bf6039f0SWarner Losh exit 1;; 1969bf6039f0SWarner Loshesac 1970bf6039f0SWarner Losh 1971bf6039f0SWarner Losh# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1972bf6039f0SWarner Losh# Here we must recognize all the valid KERNEL-OS combinations. 1973bf6039f0SWarner Loshmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1974bf6039f0SWarner Loshcase $maybe_os in 1975bf6039f0SWarner Losh nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 1976bf6039f0SWarner Losh linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 1977bf6039f0SWarner Losh knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ 1978bf6039f0SWarner Losh kopensolaris*-gnu* | cloudabi*-eabi* | \ 1979bf6039f0SWarner Losh storm-chaos* | os2-emx* | rtmk-nova*) 1980bf6039f0SWarner Losh os=-$maybe_os 1981bf6039f0SWarner Losh basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1982bf6039f0SWarner Losh ;; 1983bf6039f0SWarner Losh android-linux) 1984bf6039f0SWarner Losh os=-linux-android 1985bf6039f0SWarner Losh basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 1986bf6039f0SWarner Losh ;; 1987bf6039f0SWarner Losh *) 1988bf6039f0SWarner Losh basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1989bf6039f0SWarner Losh if [ $basic_machine != $1 ] 1990bf6039f0SWarner Losh then os=`echo $1 | sed 's/.*-/-/'` 1991bf6039f0SWarner Losh else os=; fi 1992bf6039f0SWarner Losh ;; 1993bf6039f0SWarner Loshesac 1994bf6039f0SWarner Losh 1995bf6039f0SWarner Losh### Let's recognize common machines as not being operating systems so 1996bf6039f0SWarner Losh### that things like config.sub decstation-3100 work. We also 1997bf6039f0SWarner Losh### recognize some manufacturers as not being operating systems, so we 1998bf6039f0SWarner Losh### can provide default operating systems below. 1999bf6039f0SWarner Loshcase $os in 2000bf6039f0SWarner Losh -sun*os*) 2001bf6039f0SWarner Losh # Prevent following clause from handling this invalid input. 2002bf6039f0SWarner Losh ;; 2003bf6039f0SWarner Losh -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 2004bf6039f0SWarner Losh -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 2005bf6039f0SWarner Losh -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 2006bf6039f0SWarner Losh -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 2007bf6039f0SWarner Losh -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 2008bf6039f0SWarner Losh -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 2009bf6039f0SWarner Losh -apple | -axis | -knuth | -cray | -microblaze*) 2010bf6039f0SWarner Losh os= 2011bf6039f0SWarner Losh basic_machine=$1 2012bf6039f0SWarner Losh ;; 2013bf6039f0SWarner Losh -bluegene*) 2014bf6039f0SWarner Losh os=-cnk 2015bf6039f0SWarner Losh ;; 2016bf6039f0SWarner Losh -sim | -cisco | -oki | -wec | -winbond) 2017bf6039f0SWarner Losh os= 2018bf6039f0SWarner Losh basic_machine=$1 2019bf6039f0SWarner Losh ;; 2020bf6039f0SWarner Losh -scout) 2021bf6039f0SWarner Losh ;; 2022bf6039f0SWarner Losh -wrs) 2023bf6039f0SWarner Losh os=-vxworks 2024bf6039f0SWarner Losh basic_machine=$1 2025bf6039f0SWarner Losh ;; 2026bf6039f0SWarner Losh -chorusos*) 2027bf6039f0SWarner Losh os=-chorusos 2028bf6039f0SWarner Losh basic_machine=$1 2029bf6039f0SWarner Losh ;; 2030bf6039f0SWarner Losh -chorusrdb) 2031bf6039f0SWarner Losh os=-chorusrdb 2032bf6039f0SWarner Losh basic_machine=$1 2033bf6039f0SWarner Losh ;; 2034bf6039f0SWarner Losh -hiux*) 2035bf6039f0SWarner Losh os=-hiuxwe2 2036bf6039f0SWarner Losh ;; 2037bf6039f0SWarner Losh -sco6) 2038bf6039f0SWarner Losh os=-sco5v6 2039bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2040bf6039f0SWarner Losh ;; 2041bf6039f0SWarner Losh -sco5) 2042bf6039f0SWarner Losh os=-sco3.2v5 2043bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2044bf6039f0SWarner Losh ;; 2045bf6039f0SWarner Losh -sco4) 2046bf6039f0SWarner Losh os=-sco3.2v4 2047bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2048bf6039f0SWarner Losh ;; 2049bf6039f0SWarner Losh -sco3.2.[4-9]*) 2050bf6039f0SWarner Losh os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 2051bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2052bf6039f0SWarner Losh ;; 2053bf6039f0SWarner Losh -sco3.2v[4-9]*) 2054bf6039f0SWarner Losh # Don't forget version if it is 3.2v4 or newer. 2055bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2056bf6039f0SWarner Losh ;; 2057bf6039f0SWarner Losh -sco5v6*) 2058bf6039f0SWarner Losh # Don't forget version if it is 3.2v4 or newer. 2059bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2060bf6039f0SWarner Losh ;; 2061bf6039f0SWarner Losh -sco*) 2062bf6039f0SWarner Losh os=-sco3.2v2 2063bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2064bf6039f0SWarner Losh ;; 2065bf6039f0SWarner Losh -udk*) 2066bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2067bf6039f0SWarner Losh ;; 2068bf6039f0SWarner Losh -isc) 2069bf6039f0SWarner Losh os=-isc2.2 2070bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2071bf6039f0SWarner Losh ;; 2072bf6039f0SWarner Losh -clix*) 2073bf6039f0SWarner Losh basic_machine=clipper-intergraph 2074bf6039f0SWarner Losh ;; 2075bf6039f0SWarner Losh -isc*) 2076bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2077bf6039f0SWarner Losh ;; 2078bf6039f0SWarner Losh -lynx*178) 2079bf6039f0SWarner Losh os=-lynxos178 2080bf6039f0SWarner Losh ;; 2081bf6039f0SWarner Losh -lynx*5) 2082bf6039f0SWarner Losh os=-lynxos5 2083bf6039f0SWarner Losh ;; 2084bf6039f0SWarner Losh -lynx*) 2085bf6039f0SWarner Losh os=-lynxos 2086bf6039f0SWarner Losh ;; 2087bf6039f0SWarner Losh -ptx*) 2088bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2089bf6039f0SWarner Losh ;; 2090bf6039f0SWarner Losh -windowsnt*) 2091bf6039f0SWarner Losh os=`echo $os | sed -e 's/windowsnt/winnt/'` 2092bf6039f0SWarner Losh ;; 2093bf6039f0SWarner Losh -psos*) 2094bf6039f0SWarner Losh os=-psos 2095bf6039f0SWarner Losh ;; 2096bf6039f0SWarner Losh -mint | -mint[0-9]*) 2097bf6039f0SWarner Losh basic_machine=m68k-atari 2098bf6039f0SWarner Losh os=-mint 2099bf6039f0SWarner Losh ;; 2100bf6039f0SWarner Loshesac 2101bf6039f0SWarner Losh 2102bf6039f0SWarner Losh# Decode aliases for certain CPU-COMPANY combinations. 2103bf6039f0SWarner Loshcase $basic_machine in 2104bf6039f0SWarner Losh # Recognize the basic CPU types without company name. 2105bf6039f0SWarner Losh # Some are omitted here because they have special meanings below. 2106bf6039f0SWarner Losh 1750a | 580 \ 2107bf6039f0SWarner Losh | a29k \ 2108bf6039f0SWarner Losh | aarch64 | aarch64_be \ 2109bf6039f0SWarner Losh | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2110bf6039f0SWarner Losh | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2111bf6039f0SWarner Losh | am33_2.0 \ 2112bf6039f0SWarner Losh | arc | arceb \ 2113bf6039f0SWarner Losh | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 2114bf6039f0SWarner Losh | avr | avr32 \ 2115bf6039f0SWarner Losh | ba \ 2116bf6039f0SWarner Losh | be32 | be64 \ 2117bf6039f0SWarner Losh | bfin \ 2118bf6039f0SWarner Losh | c4x | c8051 | clipper \ 2119bf6039f0SWarner Losh | d10v | d30v | dlx | dsp16xx \ 2120bf6039f0SWarner Losh | e2k | epiphany \ 2121bf6039f0SWarner Losh | fido | fr30 | frv | ft32 \ 2122bf6039f0SWarner Losh | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2123bf6039f0SWarner Losh | hexagon \ 2124bf6039f0SWarner Losh | i370 | i860 | i960 | ia64 \ 2125bf6039f0SWarner Losh | ip2k | iq2000 \ 2126bf6039f0SWarner Losh | k1om \ 2127bf6039f0SWarner Losh | le32 | le64 \ 2128bf6039f0SWarner Losh | lm32 \ 2129bf6039f0SWarner Losh | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2130bf6039f0SWarner Losh | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 2131bf6039f0SWarner Losh | mips | mipsbe | mipseb | mipsel | mipsle \ 2132bf6039f0SWarner Losh | mips16 \ 2133bf6039f0SWarner Losh | mips64 | mips64el \ 2134bf6039f0SWarner Losh | mips64octeon | mips64octeonel \ 2135bf6039f0SWarner Losh | mips64orion | mips64orionel \ 2136bf6039f0SWarner Losh | mips64r5900 | mips64r5900el \ 2137bf6039f0SWarner Losh | mips64vr | mips64vrel \ 2138bf6039f0SWarner Losh | mips64vr4100 | mips64vr4100el \ 2139bf6039f0SWarner Losh | mips64vr4300 | mips64vr4300el \ 2140bf6039f0SWarner Losh | mips64vr5000 | mips64vr5000el \ 2141bf6039f0SWarner Losh | mips64vr5900 | mips64vr5900el \ 2142bf6039f0SWarner Losh | mipsisa32 | mipsisa32el \ 2143bf6039f0SWarner Losh | mipsisa32r2 | mipsisa32r2el \ 2144bf6039f0SWarner Losh | mipsisa32r6 | mipsisa32r6el \ 2145bf6039f0SWarner Losh | mipsisa64 | mipsisa64el \ 2146bf6039f0SWarner Losh | mipsisa64r2 | mipsisa64r2el \ 2147bf6039f0SWarner Losh | mipsisa64r6 | mipsisa64r6el \ 2148bf6039f0SWarner Losh | mipsisa64sb1 | mipsisa64sb1el \ 2149bf6039f0SWarner Losh | mipsisa64sr71k | mipsisa64sr71kel \ 2150bf6039f0SWarner Losh | mipsr5900 | mipsr5900el \ 2151bf6039f0SWarner Losh | mipstx39 | mipstx39el \ 2152bf6039f0SWarner Losh | mn10200 | mn10300 \ 2153bf6039f0SWarner Losh | moxie \ 2154bf6039f0SWarner Losh | mt \ 2155bf6039f0SWarner Losh | msp430 \ 2156bf6039f0SWarner Losh | nds32 | nds32le | nds32be \ 2157bf6039f0SWarner Losh | nios | nios2 | nios2eb | nios2el \ 2158bf6039f0SWarner Losh | ns16k | ns32k \ 2159bf6039f0SWarner Losh | open8 | or1k | or1knd | or32 \ 2160bf6039f0SWarner Losh | pdp10 | pdp11 | pj | pjl \ 2161bf6039f0SWarner Losh | powerpc | powerpc64 | powerpc64le | powerpcle \ 2162bf6039f0SWarner Losh | pru \ 2163bf6039f0SWarner Losh | pyramid \ 2164bf6039f0SWarner Losh | riscv32 | riscv64 \ 2165bf6039f0SWarner Losh | rl78 | rx \ 2166bf6039f0SWarner Losh | score \ 2167bf6039f0SWarner Losh | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 2168bf6039f0SWarner Losh | sh64 | sh64le \ 2169bf6039f0SWarner Losh | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2170bf6039f0SWarner Losh | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2171bf6039f0SWarner Losh | spu \ 2172bf6039f0SWarner Losh | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 2173bf6039f0SWarner Losh | ubicom32 \ 2174bf6039f0SWarner Losh | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 2175bf6039f0SWarner Losh | visium \ 2176bf6039f0SWarner Losh | we32k \ 2177bf6039f0SWarner Losh | x86 | xc16x | xstormy16 | xtensa \ 2178bf6039f0SWarner Losh | z8k | z80) 2179bf6039f0SWarner Losh basic_machine=$basic_machine-unknown 2180bf6039f0SWarner Losh ;; 2181bf6039f0SWarner Losh c54x) 2182bf6039f0SWarner Losh basic_machine=tic54x-unknown 2183bf6039f0SWarner Losh ;; 2184bf6039f0SWarner Losh c55x) 2185bf6039f0SWarner Losh basic_machine=tic55x-unknown 2186bf6039f0SWarner Losh ;; 2187bf6039f0SWarner Losh c6x) 2188bf6039f0SWarner Losh basic_machine=tic6x-unknown 2189bf6039f0SWarner Losh ;; 2190bf6039f0SWarner Losh leon|leon[3-9]) 2191bf6039f0SWarner Losh basic_machine=sparc-$basic_machine 2192bf6039f0SWarner Losh ;; 2193bf6039f0SWarner Losh m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 2194bf6039f0SWarner Losh basic_machine=$basic_machine-unknown 2195bf6039f0SWarner Losh os=-none 2196bf6039f0SWarner Losh ;; 2197bf6039f0SWarner Losh m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 2198bf6039f0SWarner Losh ;; 2199bf6039f0SWarner Losh ms1) 2200bf6039f0SWarner Losh basic_machine=mt-unknown 2201bf6039f0SWarner Losh ;; 2202bf6039f0SWarner Losh 2203bf6039f0SWarner Losh strongarm | thumb | xscale) 2204bf6039f0SWarner Losh basic_machine=arm-unknown 2205bf6039f0SWarner Losh ;; 2206bf6039f0SWarner Losh xgate) 2207bf6039f0SWarner Losh basic_machine=$basic_machine-unknown 2208bf6039f0SWarner Losh os=-none 2209bf6039f0SWarner Losh ;; 2210bf6039f0SWarner Losh xscaleeb) 2211bf6039f0SWarner Losh basic_machine=armeb-unknown 2212bf6039f0SWarner Losh ;; 2213bf6039f0SWarner Losh 2214bf6039f0SWarner Losh xscaleel) 2215bf6039f0SWarner Losh basic_machine=armel-unknown 2216bf6039f0SWarner Losh ;; 2217bf6039f0SWarner Losh 2218bf6039f0SWarner Losh # We use `pc' rather than `unknown' 2219bf6039f0SWarner Losh # because (1) that's what they normally are, and 2220bf6039f0SWarner Losh # (2) the word "unknown" tends to confuse beginning users. 2221bf6039f0SWarner Losh i*86 | x86_64) 2222bf6039f0SWarner Losh basic_machine=$basic_machine-pc 2223bf6039f0SWarner Losh ;; 2224bf6039f0SWarner Losh # Object if more than one company name word. 2225bf6039f0SWarner Losh *-*-*) 2226bf6039f0SWarner Losh echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 2227bf6039f0SWarner Losh exit 1 2228bf6039f0SWarner Losh ;; 2229bf6039f0SWarner Losh # Recognize the basic CPU types with company name. 2230bf6039f0SWarner Losh 580-* \ 2231bf6039f0SWarner Losh | a29k-* \ 2232bf6039f0SWarner Losh | aarch64-* | aarch64_be-* \ 2233bf6039f0SWarner Losh | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 2234bf6039f0SWarner Losh | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 2235bf6039f0SWarner Losh | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 2236bf6039f0SWarner Losh | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 2237bf6039f0SWarner Losh | avr-* | avr32-* \ 2238bf6039f0SWarner Losh | ba-* \ 2239bf6039f0SWarner Losh | be32-* | be64-* \ 2240bf6039f0SWarner Losh | bfin-* | bs2000-* \ 2241bf6039f0SWarner Losh | c[123]* | c30-* | [cjt]90-* | c4x-* \ 2242bf6039f0SWarner Losh | c8051-* | clipper-* | craynv-* | cydra-* \ 2243bf6039f0SWarner Losh | d10v-* | d30v-* | dlx-* \ 2244bf6039f0SWarner Losh | e2k-* | elxsi-* \ 2245bf6039f0SWarner Losh | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 2246bf6039f0SWarner Losh | h8300-* | h8500-* \ 2247bf6039f0SWarner Losh | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 2248bf6039f0SWarner Losh | hexagon-* \ 2249bf6039f0SWarner Losh | i*86-* | i860-* | i960-* | ia64-* \ 2250bf6039f0SWarner Losh | ip2k-* | iq2000-* \ 2251bf6039f0SWarner Losh | k1om-* \ 2252bf6039f0SWarner Losh | le32-* | le64-* \ 2253bf6039f0SWarner Losh | lm32-* \ 2254bf6039f0SWarner Losh | m32c-* | m32r-* | m32rle-* \ 2255bf6039f0SWarner Losh | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 2256bf6039f0SWarner Losh | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 2257bf6039f0SWarner Losh | microblaze-* | microblazeel-* \ 2258bf6039f0SWarner Losh | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 2259bf6039f0SWarner Losh | mips16-* \ 2260bf6039f0SWarner Losh | mips64-* | mips64el-* \ 2261bf6039f0SWarner Losh | mips64octeon-* | mips64octeonel-* \ 2262bf6039f0SWarner Losh | mips64orion-* | mips64orionel-* \ 2263bf6039f0SWarner Losh | mips64r5900-* | mips64r5900el-* \ 2264bf6039f0SWarner Losh | mips64vr-* | mips64vrel-* \ 2265bf6039f0SWarner Losh | mips64vr4100-* | mips64vr4100el-* \ 2266bf6039f0SWarner Losh | mips64vr4300-* | mips64vr4300el-* \ 2267bf6039f0SWarner Losh | mips64vr5000-* | mips64vr5000el-* \ 2268bf6039f0SWarner Losh | mips64vr5900-* | mips64vr5900el-* \ 2269bf6039f0SWarner Losh | mipsisa32-* | mipsisa32el-* \ 2270bf6039f0SWarner Losh | mipsisa32r2-* | mipsisa32r2el-* \ 2271bf6039f0SWarner Losh | mipsisa32r6-* | mipsisa32r6el-* \ 2272bf6039f0SWarner Losh | mipsisa64-* | mipsisa64el-* \ 2273bf6039f0SWarner Losh | mipsisa64r2-* | mipsisa64r2el-* \ 2274bf6039f0SWarner Losh | mipsisa64r6-* | mipsisa64r6el-* \ 2275bf6039f0SWarner Losh | mipsisa64sb1-* | mipsisa64sb1el-* \ 2276bf6039f0SWarner Losh | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 2277bf6039f0SWarner Losh | mipsr5900-* | mipsr5900el-* \ 2278bf6039f0SWarner Losh | mipstx39-* | mipstx39el-* \ 2279bf6039f0SWarner Losh | mmix-* \ 2280bf6039f0SWarner Losh | mt-* \ 2281bf6039f0SWarner Losh | msp430-* \ 2282bf6039f0SWarner Losh | nds32-* | nds32le-* | nds32be-* \ 2283bf6039f0SWarner Losh | nios-* | nios2-* | nios2eb-* | nios2el-* \ 2284bf6039f0SWarner Losh | none-* | np1-* | ns16k-* | ns32k-* \ 2285bf6039f0SWarner Losh | open8-* \ 2286bf6039f0SWarner Losh | or1k*-* \ 2287bf6039f0SWarner Losh | orion-* \ 2288bf6039f0SWarner Losh | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 2289bf6039f0SWarner Losh | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 2290bf6039f0SWarner Losh | pru-* \ 2291bf6039f0SWarner Losh | pyramid-* \ 2292bf6039f0SWarner Losh | riscv32-* | riscv64-* \ 2293bf6039f0SWarner Losh | rl78-* | romp-* | rs6000-* | rx-* \ 2294bf6039f0SWarner Losh | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 2295bf6039f0SWarner Losh | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 2296bf6039f0SWarner Losh | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 2297bf6039f0SWarner Losh | sparclite-* \ 2298bf6039f0SWarner Losh | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ 2299bf6039f0SWarner Losh | tahoe-* \ 2300bf6039f0SWarner Losh | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 2301bf6039f0SWarner Losh | tile*-* \ 2302bf6039f0SWarner Losh | tron-* \ 2303bf6039f0SWarner Losh | ubicom32-* \ 2304bf6039f0SWarner Losh | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 2305bf6039f0SWarner Losh | vax-* \ 2306bf6039f0SWarner Losh | visium-* \ 2307bf6039f0SWarner Losh | we32k-* \ 2308bf6039f0SWarner Losh | x86-* | x86_64-* | xc16x-* | xps100-* \ 2309bf6039f0SWarner Losh | xstormy16-* | xtensa*-* \ 2310bf6039f0SWarner Losh | ymp-* \ 2311bf6039f0SWarner Losh | z8k-* | z80-*) 2312bf6039f0SWarner Losh ;; 2313bf6039f0SWarner Losh # Recognize the basic CPU types without company name, with glob match. 2314bf6039f0SWarner Losh xtensa*) 2315bf6039f0SWarner Losh basic_machine=$basic_machine-unknown 2316bf6039f0SWarner Losh ;; 2317bf6039f0SWarner Losh # Recognize the various machine names and aliases which stand 2318bf6039f0SWarner Losh # for a CPU type and a company and sometimes even an OS. 2319bf6039f0SWarner Losh 386bsd) 2320bf6039f0SWarner Losh basic_machine=i386-unknown 2321bf6039f0SWarner Losh os=-bsd 2322bf6039f0SWarner Losh ;; 2323bf6039f0SWarner Losh 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 2324bf6039f0SWarner Losh basic_machine=m68000-att 2325bf6039f0SWarner Losh ;; 2326bf6039f0SWarner Losh 3b*) 2327bf6039f0SWarner Losh basic_machine=we32k-att 2328bf6039f0SWarner Losh ;; 2329bf6039f0SWarner Losh a29khif) 2330bf6039f0SWarner Losh basic_machine=a29k-amd 2331bf6039f0SWarner Losh os=-udi 2332bf6039f0SWarner Losh ;; 2333bf6039f0SWarner Losh abacus) 2334bf6039f0SWarner Losh basic_machine=abacus-unknown 2335bf6039f0SWarner Losh ;; 2336bf6039f0SWarner Losh adobe68k) 2337bf6039f0SWarner Losh basic_machine=m68010-adobe 2338bf6039f0SWarner Losh os=-scout 2339bf6039f0SWarner Losh ;; 2340bf6039f0SWarner Losh alliant | fx80) 2341bf6039f0SWarner Losh basic_machine=fx80-alliant 2342bf6039f0SWarner Losh ;; 2343bf6039f0SWarner Losh altos | altos3068) 2344bf6039f0SWarner Losh basic_machine=m68k-altos 2345bf6039f0SWarner Losh ;; 2346bf6039f0SWarner Losh am29k) 2347bf6039f0SWarner Losh basic_machine=a29k-none 2348bf6039f0SWarner Losh os=-bsd 2349bf6039f0SWarner Losh ;; 2350bf6039f0SWarner Losh amd64) 2351bf6039f0SWarner Losh basic_machine=x86_64-pc 2352bf6039f0SWarner Losh ;; 2353bf6039f0SWarner Losh amd64-*) 2354bf6039f0SWarner Losh basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 2355bf6039f0SWarner Losh ;; 2356bf6039f0SWarner Losh amdahl) 2357bf6039f0SWarner Losh basic_machine=580-amdahl 2358bf6039f0SWarner Losh os=-sysv 2359bf6039f0SWarner Losh ;; 2360bf6039f0SWarner Losh amiga | amiga-*) 2361bf6039f0SWarner Losh basic_machine=m68k-unknown 2362bf6039f0SWarner Losh ;; 2363bf6039f0SWarner Losh amigaos | amigados) 2364bf6039f0SWarner Losh basic_machine=m68k-unknown 2365bf6039f0SWarner Losh os=-amigaos 2366bf6039f0SWarner Losh ;; 2367bf6039f0SWarner Losh amigaunix | amix) 2368bf6039f0SWarner Losh basic_machine=m68k-unknown 2369bf6039f0SWarner Losh os=-sysv4 2370bf6039f0SWarner Losh ;; 2371bf6039f0SWarner Losh apollo68) 2372bf6039f0SWarner Losh basic_machine=m68k-apollo 2373bf6039f0SWarner Losh os=-sysv 2374bf6039f0SWarner Losh ;; 2375bf6039f0SWarner Losh apollo68bsd) 2376bf6039f0SWarner Losh basic_machine=m68k-apollo 2377bf6039f0SWarner Losh os=-bsd 2378bf6039f0SWarner Losh ;; 2379bf6039f0SWarner Losh aros) 2380bf6039f0SWarner Losh basic_machine=i386-pc 2381bf6039f0SWarner Losh os=-aros 2382bf6039f0SWarner Losh ;; 2383bf6039f0SWarner Losh asmjs) 2384bf6039f0SWarner Losh basic_machine=asmjs-unknown 2385bf6039f0SWarner Losh ;; 2386bf6039f0SWarner Losh aux) 2387bf6039f0SWarner Losh basic_machine=m68k-apple 2388bf6039f0SWarner Losh os=-aux 2389bf6039f0SWarner Losh ;; 2390bf6039f0SWarner Losh balance) 2391bf6039f0SWarner Losh basic_machine=ns32k-sequent 2392bf6039f0SWarner Losh os=-dynix 2393bf6039f0SWarner Losh ;; 2394bf6039f0SWarner Losh blackfin) 2395bf6039f0SWarner Losh basic_machine=bfin-unknown 2396bf6039f0SWarner Losh os=-linux 2397bf6039f0SWarner Losh ;; 2398bf6039f0SWarner Losh blackfin-*) 2399bf6039f0SWarner Losh basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 2400bf6039f0SWarner Losh os=-linux 2401bf6039f0SWarner Losh ;; 2402bf6039f0SWarner Losh bluegene*) 2403bf6039f0SWarner Losh basic_machine=powerpc-ibm 2404bf6039f0SWarner Losh os=-cnk 2405bf6039f0SWarner Losh ;; 2406bf6039f0SWarner Losh c54x-*) 2407bf6039f0SWarner Losh basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 2408bf6039f0SWarner Losh ;; 2409bf6039f0SWarner Losh c55x-*) 2410bf6039f0SWarner Losh basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 2411bf6039f0SWarner Losh ;; 2412bf6039f0SWarner Losh c6x-*) 2413bf6039f0SWarner Losh basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 2414bf6039f0SWarner Losh ;; 2415bf6039f0SWarner Losh c90) 2416bf6039f0SWarner Losh basic_machine=c90-cray 2417bf6039f0SWarner Losh os=-unicos 2418bf6039f0SWarner Losh ;; 2419bf6039f0SWarner Losh cegcc) 2420bf6039f0SWarner Losh basic_machine=arm-unknown 2421bf6039f0SWarner Losh os=-cegcc 2422bf6039f0SWarner Losh ;; 2423bf6039f0SWarner Losh convex-c1) 2424bf6039f0SWarner Losh basic_machine=c1-convex 2425bf6039f0SWarner Losh os=-bsd 2426bf6039f0SWarner Losh ;; 2427bf6039f0SWarner Losh convex-c2) 2428bf6039f0SWarner Losh basic_machine=c2-convex 2429bf6039f0SWarner Losh os=-bsd 2430bf6039f0SWarner Losh ;; 2431bf6039f0SWarner Losh convex-c32) 2432bf6039f0SWarner Losh basic_machine=c32-convex 2433bf6039f0SWarner Losh os=-bsd 2434bf6039f0SWarner Losh ;; 2435bf6039f0SWarner Losh convex-c34) 2436bf6039f0SWarner Losh basic_machine=c34-convex 2437bf6039f0SWarner Losh os=-bsd 2438bf6039f0SWarner Losh ;; 2439bf6039f0SWarner Losh convex-c38) 2440bf6039f0SWarner Losh basic_machine=c38-convex 2441bf6039f0SWarner Losh os=-bsd 2442bf6039f0SWarner Losh ;; 2443bf6039f0SWarner Losh cray | j90) 2444bf6039f0SWarner Losh basic_machine=j90-cray 2445bf6039f0SWarner Losh os=-unicos 2446bf6039f0SWarner Losh ;; 2447bf6039f0SWarner Losh craynv) 2448bf6039f0SWarner Losh basic_machine=craynv-cray 2449bf6039f0SWarner Losh os=-unicosmp 2450bf6039f0SWarner Losh ;; 2451bf6039f0SWarner Losh cr16 | cr16-*) 2452bf6039f0SWarner Losh basic_machine=cr16-unknown 2453bf6039f0SWarner Losh os=-elf 2454bf6039f0SWarner Losh ;; 2455bf6039f0SWarner Losh crds | unos) 2456bf6039f0SWarner Losh basic_machine=m68k-crds 2457bf6039f0SWarner Losh ;; 2458bf6039f0SWarner Losh crisv32 | crisv32-* | etraxfs*) 2459bf6039f0SWarner Losh basic_machine=crisv32-axis 2460bf6039f0SWarner Losh ;; 2461bf6039f0SWarner Losh cris | cris-* | etrax*) 2462bf6039f0SWarner Losh basic_machine=cris-axis 2463bf6039f0SWarner Losh ;; 2464bf6039f0SWarner Losh crx) 2465bf6039f0SWarner Losh basic_machine=crx-unknown 2466bf6039f0SWarner Losh os=-elf 2467bf6039f0SWarner Losh ;; 2468bf6039f0SWarner Losh da30 | da30-*) 2469bf6039f0SWarner Losh basic_machine=m68k-da30 2470bf6039f0SWarner Losh ;; 2471bf6039f0SWarner Losh decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 2472bf6039f0SWarner Losh basic_machine=mips-dec 2473bf6039f0SWarner Losh ;; 2474bf6039f0SWarner Losh decsystem10* | dec10*) 2475bf6039f0SWarner Losh basic_machine=pdp10-dec 2476bf6039f0SWarner Losh os=-tops10 2477bf6039f0SWarner Losh ;; 2478bf6039f0SWarner Losh decsystem20* | dec20*) 2479bf6039f0SWarner Losh basic_machine=pdp10-dec 2480bf6039f0SWarner Losh os=-tops20 2481bf6039f0SWarner Losh ;; 2482bf6039f0SWarner Losh delta | 3300 | motorola-3300 | motorola-delta \ 2483bf6039f0SWarner Losh | 3300-motorola | delta-motorola) 2484bf6039f0SWarner Losh basic_machine=m68k-motorola 2485bf6039f0SWarner Losh ;; 2486bf6039f0SWarner Losh delta88) 2487bf6039f0SWarner Losh basic_machine=m88k-motorola 2488bf6039f0SWarner Losh os=-sysv3 2489bf6039f0SWarner Losh ;; 2490bf6039f0SWarner Losh dicos) 2491bf6039f0SWarner Losh basic_machine=i686-pc 2492bf6039f0SWarner Losh os=-dicos 2493bf6039f0SWarner Losh ;; 2494bf6039f0SWarner Losh djgpp) 2495bf6039f0SWarner Losh basic_machine=i586-pc 2496bf6039f0SWarner Losh os=-msdosdjgpp 2497bf6039f0SWarner Losh ;; 2498bf6039f0SWarner Losh dpx20 | dpx20-*) 2499bf6039f0SWarner Losh basic_machine=rs6000-bull 2500bf6039f0SWarner Losh os=-bosx 2501bf6039f0SWarner Losh ;; 2502bf6039f0SWarner Losh dpx2* | dpx2*-bull) 2503bf6039f0SWarner Losh basic_machine=m68k-bull 2504bf6039f0SWarner Losh os=-sysv3 2505bf6039f0SWarner Losh ;; 2506bf6039f0SWarner Losh e500v[12]) 2507bf6039f0SWarner Losh basic_machine=powerpc-unknown 2508bf6039f0SWarner Losh os=$os"spe" 2509bf6039f0SWarner Losh ;; 2510bf6039f0SWarner Losh e500v[12]-*) 2511bf6039f0SWarner Losh basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 2512bf6039f0SWarner Losh os=$os"spe" 2513bf6039f0SWarner Losh ;; 2514bf6039f0SWarner Losh ebmon29k) 2515bf6039f0SWarner Losh basic_machine=a29k-amd 2516bf6039f0SWarner Losh os=-ebmon 2517bf6039f0SWarner Losh ;; 2518bf6039f0SWarner Losh elxsi) 2519bf6039f0SWarner Losh basic_machine=elxsi-elxsi 2520bf6039f0SWarner Losh os=-bsd 2521bf6039f0SWarner Losh ;; 2522bf6039f0SWarner Losh encore | umax | mmax) 2523bf6039f0SWarner Losh basic_machine=ns32k-encore 2524bf6039f0SWarner Losh ;; 2525bf6039f0SWarner Losh es1800 | OSE68k | ose68k | ose | OSE) 2526bf6039f0SWarner Losh basic_machine=m68k-ericsson 2527bf6039f0SWarner Losh os=-ose 2528bf6039f0SWarner Losh ;; 2529bf6039f0SWarner Losh fx2800) 2530bf6039f0SWarner Losh basic_machine=i860-alliant 2531bf6039f0SWarner Losh ;; 2532bf6039f0SWarner Losh genix) 2533bf6039f0SWarner Losh basic_machine=ns32k-ns 2534bf6039f0SWarner Losh ;; 2535bf6039f0SWarner Losh gmicro) 2536bf6039f0SWarner Losh basic_machine=tron-gmicro 2537bf6039f0SWarner Losh os=-sysv 2538bf6039f0SWarner Losh ;; 2539bf6039f0SWarner Losh go32) 2540bf6039f0SWarner Losh basic_machine=i386-pc 2541bf6039f0SWarner Losh os=-go32 2542bf6039f0SWarner Losh ;; 2543bf6039f0SWarner Losh h3050r* | hiux*) 2544bf6039f0SWarner Losh basic_machine=hppa1.1-hitachi 2545bf6039f0SWarner Losh os=-hiuxwe2 2546bf6039f0SWarner Losh ;; 2547bf6039f0SWarner Losh h8300hms) 2548bf6039f0SWarner Losh basic_machine=h8300-hitachi 2549bf6039f0SWarner Losh os=-hms 2550bf6039f0SWarner Losh ;; 2551bf6039f0SWarner Losh h8300xray) 2552bf6039f0SWarner Losh basic_machine=h8300-hitachi 2553bf6039f0SWarner Losh os=-xray 2554bf6039f0SWarner Losh ;; 2555bf6039f0SWarner Losh h8500hms) 2556bf6039f0SWarner Losh basic_machine=h8500-hitachi 2557bf6039f0SWarner Losh os=-hms 2558bf6039f0SWarner Losh ;; 2559bf6039f0SWarner Losh harris) 2560bf6039f0SWarner Losh basic_machine=m88k-harris 2561bf6039f0SWarner Losh os=-sysv3 2562bf6039f0SWarner Losh ;; 2563bf6039f0SWarner Losh hp300-*) 2564bf6039f0SWarner Losh basic_machine=m68k-hp 2565bf6039f0SWarner Losh ;; 2566bf6039f0SWarner Losh hp300bsd) 2567bf6039f0SWarner Losh basic_machine=m68k-hp 2568bf6039f0SWarner Losh os=-bsd 2569bf6039f0SWarner Losh ;; 2570bf6039f0SWarner Losh hp300hpux) 2571bf6039f0SWarner Losh basic_machine=m68k-hp 2572bf6039f0SWarner Losh os=-hpux 2573bf6039f0SWarner Losh ;; 2574bf6039f0SWarner Losh hp3k9[0-9][0-9] | hp9[0-9][0-9]) 2575bf6039f0SWarner Losh basic_machine=hppa1.0-hp 2576bf6039f0SWarner Losh ;; 2577bf6039f0SWarner Losh hp9k2[0-9][0-9] | hp9k31[0-9]) 2578bf6039f0SWarner Losh basic_machine=m68000-hp 2579bf6039f0SWarner Losh ;; 2580bf6039f0SWarner Losh hp9k3[2-9][0-9]) 2581bf6039f0SWarner Losh basic_machine=m68k-hp 2582bf6039f0SWarner Losh ;; 2583bf6039f0SWarner Losh hp9k6[0-9][0-9] | hp6[0-9][0-9]) 2584bf6039f0SWarner Losh basic_machine=hppa1.0-hp 2585bf6039f0SWarner Losh ;; 2586bf6039f0SWarner Losh hp9k7[0-79][0-9] | hp7[0-79][0-9]) 2587bf6039f0SWarner Losh basic_machine=hppa1.1-hp 2588bf6039f0SWarner Losh ;; 2589bf6039f0SWarner Losh hp9k78[0-9] | hp78[0-9]) 2590bf6039f0SWarner Losh # FIXME: really hppa2.0-hp 2591bf6039f0SWarner Losh basic_machine=hppa1.1-hp 2592bf6039f0SWarner Losh ;; 2593bf6039f0SWarner Losh hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 2594bf6039f0SWarner Losh # FIXME: really hppa2.0-hp 2595bf6039f0SWarner Losh basic_machine=hppa1.1-hp 2596bf6039f0SWarner Losh ;; 2597bf6039f0SWarner Losh hp9k8[0-9][13679] | hp8[0-9][13679]) 2598bf6039f0SWarner Losh basic_machine=hppa1.1-hp 2599bf6039f0SWarner Losh ;; 2600bf6039f0SWarner Losh hp9k8[0-9][0-9] | hp8[0-9][0-9]) 2601bf6039f0SWarner Losh basic_machine=hppa1.0-hp 2602bf6039f0SWarner Losh ;; 2603bf6039f0SWarner Losh hppa-next) 2604bf6039f0SWarner Losh os=-nextstep3 2605bf6039f0SWarner Losh ;; 2606bf6039f0SWarner Losh hppaosf) 2607bf6039f0SWarner Losh basic_machine=hppa1.1-hp 2608bf6039f0SWarner Losh os=-osf 2609bf6039f0SWarner Losh ;; 2610bf6039f0SWarner Losh hppro) 2611bf6039f0SWarner Losh basic_machine=hppa1.1-hp 2612bf6039f0SWarner Losh os=-proelf 2613bf6039f0SWarner Losh ;; 2614bf6039f0SWarner Losh i370-ibm* | ibm*) 2615bf6039f0SWarner Losh basic_machine=i370-ibm 2616bf6039f0SWarner Losh ;; 2617bf6039f0SWarner Losh i*86v32) 2618bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 2619bf6039f0SWarner Losh os=-sysv32 2620bf6039f0SWarner Losh ;; 2621bf6039f0SWarner Losh i*86v4*) 2622bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 2623bf6039f0SWarner Losh os=-sysv4 2624bf6039f0SWarner Losh ;; 2625bf6039f0SWarner Losh i*86v) 2626bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 2627bf6039f0SWarner Losh os=-sysv 2628bf6039f0SWarner Losh ;; 2629bf6039f0SWarner Losh i*86sol2) 2630bf6039f0SWarner Losh basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 2631bf6039f0SWarner Losh os=-solaris2 2632bf6039f0SWarner Losh ;; 2633bf6039f0SWarner Losh i386mach) 2634bf6039f0SWarner Losh basic_machine=i386-mach 2635bf6039f0SWarner Losh os=-mach 2636bf6039f0SWarner Losh ;; 2637bf6039f0SWarner Losh i386-vsta | vsta) 2638bf6039f0SWarner Losh basic_machine=i386-unknown 2639bf6039f0SWarner Losh os=-vsta 2640bf6039f0SWarner Losh ;; 2641bf6039f0SWarner Losh iris | iris4d) 2642bf6039f0SWarner Losh basic_machine=mips-sgi 2643bf6039f0SWarner Losh case $os in 2644bf6039f0SWarner Losh -irix*) 2645bf6039f0SWarner Losh ;; 2646bf6039f0SWarner Losh *) 2647bf6039f0SWarner Losh os=-irix4 2648bf6039f0SWarner Losh ;; 2649bf6039f0SWarner Losh esac 2650bf6039f0SWarner Losh ;; 2651bf6039f0SWarner Losh isi68 | isi) 2652bf6039f0SWarner Losh basic_machine=m68k-isi 2653bf6039f0SWarner Losh os=-sysv 2654bf6039f0SWarner Losh ;; 2655bf6039f0SWarner Losh leon-*|leon[3-9]-*) 2656bf6039f0SWarner Losh basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` 2657bf6039f0SWarner Losh ;; 2658bf6039f0SWarner Losh m68knommu) 2659bf6039f0SWarner Losh basic_machine=m68k-unknown 2660bf6039f0SWarner Losh os=-linux 2661bf6039f0SWarner Losh ;; 2662bf6039f0SWarner Losh m68knommu-*) 2663bf6039f0SWarner Losh basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 2664bf6039f0SWarner Losh os=-linux 2665bf6039f0SWarner Losh ;; 2666bf6039f0SWarner Losh m88k-omron*) 2667bf6039f0SWarner Losh basic_machine=m88k-omron 2668bf6039f0SWarner Losh ;; 2669bf6039f0SWarner Losh magnum | m3230) 2670bf6039f0SWarner Losh basic_machine=mips-mips 2671bf6039f0SWarner Losh os=-sysv 2672bf6039f0SWarner Losh ;; 2673bf6039f0SWarner Losh merlin) 2674bf6039f0SWarner Losh basic_machine=ns32k-utek 2675bf6039f0SWarner Losh os=-sysv 2676bf6039f0SWarner Losh ;; 2677bf6039f0SWarner Losh microblaze*) 2678bf6039f0SWarner Losh basic_machine=microblaze-xilinx 2679bf6039f0SWarner Losh ;; 2680bf6039f0SWarner Losh mingw64) 2681bf6039f0SWarner Losh basic_machine=x86_64-pc 2682bf6039f0SWarner Losh os=-mingw64 2683bf6039f0SWarner Losh ;; 2684bf6039f0SWarner Losh mingw32) 2685bf6039f0SWarner Losh basic_machine=i686-pc 2686bf6039f0SWarner Losh os=-mingw32 2687bf6039f0SWarner Losh ;; 2688bf6039f0SWarner Losh mingw32ce) 2689bf6039f0SWarner Losh basic_machine=arm-unknown 2690bf6039f0SWarner Losh os=-mingw32ce 2691bf6039f0SWarner Losh ;; 2692bf6039f0SWarner Losh miniframe) 2693bf6039f0SWarner Losh basic_machine=m68000-convergent 2694bf6039f0SWarner Losh ;; 2695bf6039f0SWarner Losh *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 2696bf6039f0SWarner Losh basic_machine=m68k-atari 2697bf6039f0SWarner Losh os=-mint 2698bf6039f0SWarner Losh ;; 2699bf6039f0SWarner Losh mips3*-*) 2700bf6039f0SWarner Losh basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 2701bf6039f0SWarner Losh ;; 2702bf6039f0SWarner Losh mips3*) 2703bf6039f0SWarner Losh basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 2704bf6039f0SWarner Losh ;; 2705bf6039f0SWarner Losh monitor) 2706bf6039f0SWarner Losh basic_machine=m68k-rom68k 2707bf6039f0SWarner Losh os=-coff 2708bf6039f0SWarner Losh ;; 2709bf6039f0SWarner Losh morphos) 2710bf6039f0SWarner Losh basic_machine=powerpc-unknown 2711bf6039f0SWarner Losh os=-morphos 2712bf6039f0SWarner Losh ;; 2713bf6039f0SWarner Losh moxiebox) 2714bf6039f0SWarner Losh basic_machine=moxie-unknown 2715bf6039f0SWarner Losh os=-moxiebox 2716bf6039f0SWarner Losh ;; 2717bf6039f0SWarner Losh msdos) 2718bf6039f0SWarner Losh basic_machine=i386-pc 2719bf6039f0SWarner Losh os=-msdos 2720bf6039f0SWarner Losh ;; 2721bf6039f0SWarner Losh ms1-*) 2722bf6039f0SWarner Losh basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 2723bf6039f0SWarner Losh ;; 2724bf6039f0SWarner Losh msys) 2725bf6039f0SWarner Losh basic_machine=i686-pc 2726bf6039f0SWarner Losh os=-msys 2727bf6039f0SWarner Losh ;; 2728bf6039f0SWarner Losh mvs) 2729bf6039f0SWarner Losh basic_machine=i370-ibm 2730bf6039f0SWarner Losh os=-mvs 2731bf6039f0SWarner Losh ;; 2732bf6039f0SWarner Losh nacl) 2733bf6039f0SWarner Losh basic_machine=le32-unknown 2734bf6039f0SWarner Losh os=-nacl 2735bf6039f0SWarner Losh ;; 2736bf6039f0SWarner Losh ncr3000) 2737bf6039f0SWarner Losh basic_machine=i486-ncr 2738bf6039f0SWarner Losh os=-sysv4 2739bf6039f0SWarner Losh ;; 2740bf6039f0SWarner Losh netbsd386) 2741bf6039f0SWarner Losh basic_machine=i386-unknown 2742bf6039f0SWarner Losh os=-netbsd 2743bf6039f0SWarner Losh ;; 2744bf6039f0SWarner Losh netwinder) 2745bf6039f0SWarner Losh basic_machine=armv4l-rebel 2746bf6039f0SWarner Losh os=-linux 2747bf6039f0SWarner Losh ;; 2748bf6039f0SWarner Losh news | news700 | news800 | news900) 2749bf6039f0SWarner Losh basic_machine=m68k-sony 2750bf6039f0SWarner Losh os=-newsos 2751bf6039f0SWarner Losh ;; 2752bf6039f0SWarner Losh news1000) 2753bf6039f0SWarner Losh basic_machine=m68030-sony 2754bf6039f0SWarner Losh os=-newsos 2755bf6039f0SWarner Losh ;; 2756bf6039f0SWarner Losh news-3600 | risc-news) 2757bf6039f0SWarner Losh basic_machine=mips-sony 2758bf6039f0SWarner Losh os=-newsos 2759bf6039f0SWarner Losh ;; 2760bf6039f0SWarner Losh necv70) 2761bf6039f0SWarner Losh basic_machine=v70-nec 2762bf6039f0SWarner Losh os=-sysv 2763bf6039f0SWarner Losh ;; 2764bf6039f0SWarner Losh next | m*-next ) 2765bf6039f0SWarner Losh basic_machine=m68k-next 2766bf6039f0SWarner Losh case $os in 2767bf6039f0SWarner Losh -nextstep* ) 2768bf6039f0SWarner Losh ;; 2769bf6039f0SWarner Losh -ns2*) 2770bf6039f0SWarner Losh os=-nextstep2 2771bf6039f0SWarner Losh ;; 2772bf6039f0SWarner Losh *) 2773bf6039f0SWarner Losh os=-nextstep3 2774bf6039f0SWarner Losh ;; 2775bf6039f0SWarner Losh esac 2776bf6039f0SWarner Losh ;; 2777bf6039f0SWarner Losh nh3000) 2778bf6039f0SWarner Losh basic_machine=m68k-harris 2779bf6039f0SWarner Losh os=-cxux 2780bf6039f0SWarner Losh ;; 2781bf6039f0SWarner Losh nh[45]000) 2782bf6039f0SWarner Losh basic_machine=m88k-harris 2783bf6039f0SWarner Losh os=-cxux 2784bf6039f0SWarner Losh ;; 2785bf6039f0SWarner Losh nindy960) 2786bf6039f0SWarner Losh basic_machine=i960-intel 2787bf6039f0SWarner Losh os=-nindy 2788bf6039f0SWarner Losh ;; 2789bf6039f0SWarner Losh mon960) 2790bf6039f0SWarner Losh basic_machine=i960-intel 2791bf6039f0SWarner Losh os=-mon960 2792bf6039f0SWarner Losh ;; 2793bf6039f0SWarner Losh nonstopux) 2794bf6039f0SWarner Losh basic_machine=mips-compaq 2795bf6039f0SWarner Losh os=-nonstopux 2796bf6039f0SWarner Losh ;; 2797bf6039f0SWarner Losh np1) 2798bf6039f0SWarner Losh basic_machine=np1-gould 2799bf6039f0SWarner Losh ;; 2800bf6039f0SWarner Losh neo-tandem) 2801bf6039f0SWarner Losh basic_machine=neo-tandem 2802bf6039f0SWarner Losh ;; 2803bf6039f0SWarner Losh nse-tandem) 2804bf6039f0SWarner Losh basic_machine=nse-tandem 2805bf6039f0SWarner Losh ;; 2806bf6039f0SWarner Losh nsr-tandem) 2807bf6039f0SWarner Losh basic_machine=nsr-tandem 2808bf6039f0SWarner Losh ;; 2809bf6039f0SWarner Losh op50n-* | op60c-*) 2810bf6039f0SWarner Losh basic_machine=hppa1.1-oki 2811bf6039f0SWarner Losh os=-proelf 2812bf6039f0SWarner Losh ;; 2813bf6039f0SWarner Losh openrisc | openrisc-*) 2814bf6039f0SWarner Losh basic_machine=or32-unknown 2815bf6039f0SWarner Losh ;; 2816bf6039f0SWarner Losh os400) 2817bf6039f0SWarner Losh basic_machine=powerpc-ibm 2818bf6039f0SWarner Losh os=-os400 2819bf6039f0SWarner Losh ;; 2820bf6039f0SWarner Losh OSE68000 | ose68000) 2821bf6039f0SWarner Losh basic_machine=m68000-ericsson 2822bf6039f0SWarner Losh os=-ose 2823bf6039f0SWarner Losh ;; 2824bf6039f0SWarner Losh os68k) 2825bf6039f0SWarner Losh basic_machine=m68k-none 2826bf6039f0SWarner Losh os=-os68k 2827bf6039f0SWarner Losh ;; 2828bf6039f0SWarner Losh pa-hitachi) 2829bf6039f0SWarner Losh basic_machine=hppa1.1-hitachi 2830bf6039f0SWarner Losh os=-hiuxwe2 2831bf6039f0SWarner Losh ;; 2832bf6039f0SWarner Losh paragon) 2833bf6039f0SWarner Losh basic_machine=i860-intel 2834bf6039f0SWarner Losh os=-osf 2835bf6039f0SWarner Losh ;; 2836bf6039f0SWarner Losh parisc) 2837bf6039f0SWarner Losh basic_machine=hppa-unknown 2838bf6039f0SWarner Losh os=-linux 2839bf6039f0SWarner Losh ;; 2840bf6039f0SWarner Losh parisc-*) 2841bf6039f0SWarner Losh basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 2842bf6039f0SWarner Losh os=-linux 2843bf6039f0SWarner Losh ;; 2844bf6039f0SWarner Losh pbd) 2845bf6039f0SWarner Losh basic_machine=sparc-tti 2846bf6039f0SWarner Losh ;; 2847bf6039f0SWarner Losh pbb) 2848bf6039f0SWarner Losh basic_machine=m68k-tti 2849bf6039f0SWarner Losh ;; 2850bf6039f0SWarner Losh pc532 | pc532-*) 2851bf6039f0SWarner Losh basic_machine=ns32k-pc532 2852bf6039f0SWarner Losh ;; 2853bf6039f0SWarner Losh pc98) 2854bf6039f0SWarner Losh basic_machine=i386-pc 2855bf6039f0SWarner Losh ;; 2856bf6039f0SWarner Losh pc98-*) 2857bf6039f0SWarner Losh basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 2858bf6039f0SWarner Losh ;; 2859bf6039f0SWarner Losh pentium | p5 | k5 | k6 | nexgen | viac3) 2860bf6039f0SWarner Losh basic_machine=i586-pc 2861bf6039f0SWarner Losh ;; 2862bf6039f0SWarner Losh pentiumpro | p6 | 6x86 | athlon | athlon_*) 2863bf6039f0SWarner Losh basic_machine=i686-pc 2864bf6039f0SWarner Losh ;; 2865bf6039f0SWarner Losh pentiumii | pentium2 | pentiumiii | pentium3) 2866bf6039f0SWarner Losh basic_machine=i686-pc 2867bf6039f0SWarner Losh ;; 2868bf6039f0SWarner Losh pentium4) 2869bf6039f0SWarner Losh basic_machine=i786-pc 2870bf6039f0SWarner Losh ;; 2871bf6039f0SWarner Losh pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 2872bf6039f0SWarner Losh basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 2873bf6039f0SWarner Losh ;; 2874bf6039f0SWarner Losh pentiumpro-* | p6-* | 6x86-* | athlon-*) 2875bf6039f0SWarner Losh basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 2876bf6039f0SWarner Losh ;; 2877bf6039f0SWarner Losh pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 2878bf6039f0SWarner Losh basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 2879bf6039f0SWarner Losh ;; 2880bf6039f0SWarner Losh pentium4-*) 2881bf6039f0SWarner Losh basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 2882bf6039f0SWarner Losh ;; 2883bf6039f0SWarner Losh pn) 2884bf6039f0SWarner Losh basic_machine=pn-gould 2885bf6039f0SWarner Losh ;; 2886bf6039f0SWarner Losh power) basic_machine=power-ibm 2887bf6039f0SWarner Losh ;; 2888bf6039f0SWarner Losh ppc | ppcbe) basic_machine=powerpc-unknown 2889bf6039f0SWarner Losh ;; 2890bf6039f0SWarner Losh ppc-* | ppcbe-*) 2891bf6039f0SWarner Losh basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 2892bf6039f0SWarner Losh ;; 2893bf6039f0SWarner Losh ppcle | powerpclittle) 2894bf6039f0SWarner Losh basic_machine=powerpcle-unknown 2895bf6039f0SWarner Losh ;; 2896bf6039f0SWarner Losh ppcle-* | powerpclittle-*) 2897bf6039f0SWarner Losh basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 2898bf6039f0SWarner Losh ;; 2899bf6039f0SWarner Losh ppc64) basic_machine=powerpc64-unknown 2900bf6039f0SWarner Losh ;; 2901bf6039f0SWarner Losh ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 2902bf6039f0SWarner Losh ;; 2903bf6039f0SWarner Losh ppc64le | powerpc64little) 2904bf6039f0SWarner Losh basic_machine=powerpc64le-unknown 2905bf6039f0SWarner Losh ;; 2906bf6039f0SWarner Losh ppc64le-* | powerpc64little-*) 2907bf6039f0SWarner Losh basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 2908bf6039f0SWarner Losh ;; 2909bf6039f0SWarner Losh ps2) 2910bf6039f0SWarner Losh basic_machine=i386-ibm 2911bf6039f0SWarner Losh ;; 2912bf6039f0SWarner Losh pw32) 2913bf6039f0SWarner Losh basic_machine=i586-unknown 2914bf6039f0SWarner Losh os=-pw32 2915bf6039f0SWarner Losh ;; 2916bf6039f0SWarner Losh rdos | rdos64) 2917bf6039f0SWarner Losh basic_machine=x86_64-pc 2918bf6039f0SWarner Losh os=-rdos 2919bf6039f0SWarner Losh ;; 2920bf6039f0SWarner Losh rdos32) 2921bf6039f0SWarner Losh basic_machine=i386-pc 2922bf6039f0SWarner Losh os=-rdos 2923bf6039f0SWarner Losh ;; 2924bf6039f0SWarner Losh rom68k) 2925bf6039f0SWarner Losh basic_machine=m68k-rom68k 2926bf6039f0SWarner Losh os=-coff 2927bf6039f0SWarner Losh ;; 2928bf6039f0SWarner Losh rm[46]00) 2929bf6039f0SWarner Losh basic_machine=mips-siemens 2930bf6039f0SWarner Losh ;; 2931bf6039f0SWarner Losh rtpc | rtpc-*) 2932bf6039f0SWarner Losh basic_machine=romp-ibm 2933bf6039f0SWarner Losh ;; 2934bf6039f0SWarner Losh s390 | s390-*) 2935bf6039f0SWarner Losh basic_machine=s390-ibm 2936bf6039f0SWarner Losh ;; 2937bf6039f0SWarner Losh s390x | s390x-*) 2938bf6039f0SWarner Losh basic_machine=s390x-ibm 2939bf6039f0SWarner Losh ;; 2940bf6039f0SWarner Losh sa29200) 2941bf6039f0SWarner Losh basic_machine=a29k-amd 2942bf6039f0SWarner Losh os=-udi 2943bf6039f0SWarner Losh ;; 2944bf6039f0SWarner Losh sb1) 2945bf6039f0SWarner Losh basic_machine=mipsisa64sb1-unknown 2946bf6039f0SWarner Losh ;; 2947bf6039f0SWarner Losh sb1el) 2948bf6039f0SWarner Losh basic_machine=mipsisa64sb1el-unknown 2949bf6039f0SWarner Losh ;; 2950bf6039f0SWarner Losh sde) 2951bf6039f0SWarner Losh basic_machine=mipsisa32-sde 2952bf6039f0SWarner Losh os=-elf 2953bf6039f0SWarner Losh ;; 2954bf6039f0SWarner Losh sei) 2955bf6039f0SWarner Losh basic_machine=mips-sei 2956bf6039f0SWarner Losh os=-seiux 2957bf6039f0SWarner Losh ;; 2958bf6039f0SWarner Losh sequent) 2959bf6039f0SWarner Losh basic_machine=i386-sequent 2960bf6039f0SWarner Losh ;; 2961bf6039f0SWarner Losh sh) 2962bf6039f0SWarner Losh basic_machine=sh-hitachi 2963bf6039f0SWarner Losh os=-hms 2964bf6039f0SWarner Losh ;; 2965bf6039f0SWarner Losh sh5el) 2966bf6039f0SWarner Losh basic_machine=sh5le-unknown 2967bf6039f0SWarner Losh ;; 2968bf6039f0SWarner Losh sh64) 2969bf6039f0SWarner Losh basic_machine=sh64-unknown 2970bf6039f0SWarner Losh ;; 2971bf6039f0SWarner Losh sparclite-wrs | simso-wrs) 2972bf6039f0SWarner Losh basic_machine=sparclite-wrs 2973bf6039f0SWarner Losh os=-vxworks 2974bf6039f0SWarner Losh ;; 2975bf6039f0SWarner Losh sps7) 2976bf6039f0SWarner Losh basic_machine=m68k-bull 2977bf6039f0SWarner Losh os=-sysv2 2978bf6039f0SWarner Losh ;; 2979bf6039f0SWarner Losh spur) 2980bf6039f0SWarner Losh basic_machine=spur-unknown 2981bf6039f0SWarner Losh ;; 2982bf6039f0SWarner Losh st2000) 2983bf6039f0SWarner Losh basic_machine=m68k-tandem 2984bf6039f0SWarner Losh ;; 2985bf6039f0SWarner Losh stratus) 2986bf6039f0SWarner Losh basic_machine=i860-stratus 2987bf6039f0SWarner Losh os=-sysv4 2988bf6039f0SWarner Losh ;; 2989bf6039f0SWarner Losh strongarm-* | thumb-*) 2990bf6039f0SWarner Losh basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 2991bf6039f0SWarner Losh ;; 2992bf6039f0SWarner Losh sun2) 2993bf6039f0SWarner Losh basic_machine=m68000-sun 2994bf6039f0SWarner Losh ;; 2995bf6039f0SWarner Losh sun2os3) 2996bf6039f0SWarner Losh basic_machine=m68000-sun 2997bf6039f0SWarner Losh os=-sunos3 2998bf6039f0SWarner Losh ;; 2999bf6039f0SWarner Losh sun2os4) 3000bf6039f0SWarner Losh basic_machine=m68000-sun 3001bf6039f0SWarner Losh os=-sunos4 3002bf6039f0SWarner Losh ;; 3003bf6039f0SWarner Losh sun3os3) 3004bf6039f0SWarner Losh basic_machine=m68k-sun 3005bf6039f0SWarner Losh os=-sunos3 3006bf6039f0SWarner Losh ;; 3007bf6039f0SWarner Losh sun3os4) 3008bf6039f0SWarner Losh basic_machine=m68k-sun 3009bf6039f0SWarner Losh os=-sunos4 3010bf6039f0SWarner Losh ;; 3011bf6039f0SWarner Losh sun4os3) 3012bf6039f0SWarner Losh basic_machine=sparc-sun 3013bf6039f0SWarner Losh os=-sunos3 3014bf6039f0SWarner Losh ;; 3015bf6039f0SWarner Losh sun4os4) 3016bf6039f0SWarner Losh basic_machine=sparc-sun 3017bf6039f0SWarner Losh os=-sunos4 3018bf6039f0SWarner Losh ;; 3019bf6039f0SWarner Losh sun4sol2) 3020bf6039f0SWarner Losh basic_machine=sparc-sun 3021bf6039f0SWarner Losh os=-solaris2 3022bf6039f0SWarner Losh ;; 3023bf6039f0SWarner Losh sun3 | sun3-*) 3024bf6039f0SWarner Losh basic_machine=m68k-sun 3025bf6039f0SWarner Losh ;; 3026bf6039f0SWarner Losh sun4) 3027bf6039f0SWarner Losh basic_machine=sparc-sun 3028bf6039f0SWarner Losh ;; 3029bf6039f0SWarner Losh sun386 | sun386i | roadrunner) 3030bf6039f0SWarner Losh basic_machine=i386-sun 3031bf6039f0SWarner Losh ;; 3032bf6039f0SWarner Losh sv1) 3033bf6039f0SWarner Losh basic_machine=sv1-cray 3034bf6039f0SWarner Losh os=-unicos 3035bf6039f0SWarner Losh ;; 3036bf6039f0SWarner Losh symmetry) 3037bf6039f0SWarner Losh basic_machine=i386-sequent 3038bf6039f0SWarner Losh os=-dynix 3039bf6039f0SWarner Losh ;; 3040bf6039f0SWarner Losh t3e) 3041bf6039f0SWarner Losh basic_machine=alphaev5-cray 3042bf6039f0SWarner Losh os=-unicos 3043bf6039f0SWarner Losh ;; 3044bf6039f0SWarner Losh t90) 3045bf6039f0SWarner Losh basic_machine=t90-cray 3046bf6039f0SWarner Losh os=-unicos 3047bf6039f0SWarner Losh ;; 3048bf6039f0SWarner Losh tile*) 3049bf6039f0SWarner Losh basic_machine=$basic_machine-unknown 3050bf6039f0SWarner Losh os=-linux-gnu 3051bf6039f0SWarner Losh ;; 3052bf6039f0SWarner Losh tx39) 3053bf6039f0SWarner Losh basic_machine=mipstx39-unknown 3054bf6039f0SWarner Losh ;; 3055bf6039f0SWarner Losh tx39el) 3056bf6039f0SWarner Losh basic_machine=mipstx39el-unknown 3057bf6039f0SWarner Losh ;; 3058bf6039f0SWarner Losh toad1) 3059bf6039f0SWarner Losh basic_machine=pdp10-xkl 3060bf6039f0SWarner Losh os=-tops20 3061bf6039f0SWarner Losh ;; 3062bf6039f0SWarner Losh tower | tower-32) 3063bf6039f0SWarner Losh basic_machine=m68k-ncr 3064bf6039f0SWarner Losh ;; 3065bf6039f0SWarner Losh tpf) 3066bf6039f0SWarner Losh basic_machine=s390x-ibm 3067bf6039f0SWarner Losh os=-tpf 3068bf6039f0SWarner Losh ;; 3069bf6039f0SWarner Losh udi29k) 3070bf6039f0SWarner Losh basic_machine=a29k-amd 3071bf6039f0SWarner Losh os=-udi 3072bf6039f0SWarner Losh ;; 3073bf6039f0SWarner Losh ultra3) 3074bf6039f0SWarner Losh basic_machine=a29k-nyu 3075bf6039f0SWarner Losh os=-sym1 3076bf6039f0SWarner Losh ;; 3077bf6039f0SWarner Losh v810 | necv810) 3078bf6039f0SWarner Losh basic_machine=v810-nec 3079bf6039f0SWarner Losh os=-none 3080bf6039f0SWarner Losh ;; 3081bf6039f0SWarner Losh vaxv) 3082bf6039f0SWarner Losh basic_machine=vax-dec 3083bf6039f0SWarner Losh os=-sysv 3084bf6039f0SWarner Losh ;; 3085bf6039f0SWarner Losh vms) 3086bf6039f0SWarner Losh basic_machine=vax-dec 3087bf6039f0SWarner Losh os=-vms 3088bf6039f0SWarner Losh ;; 3089bf6039f0SWarner Losh vpp*|vx|vx-*) 3090bf6039f0SWarner Losh basic_machine=f301-fujitsu 3091bf6039f0SWarner Losh ;; 3092bf6039f0SWarner Losh vxworks960) 3093bf6039f0SWarner Losh basic_machine=i960-wrs 3094bf6039f0SWarner Losh os=-vxworks 3095bf6039f0SWarner Losh ;; 3096bf6039f0SWarner Losh vxworks68) 3097bf6039f0SWarner Losh basic_machine=m68k-wrs 3098bf6039f0SWarner Losh os=-vxworks 3099bf6039f0SWarner Losh ;; 3100bf6039f0SWarner Losh vxworks29k) 3101bf6039f0SWarner Losh basic_machine=a29k-wrs 3102bf6039f0SWarner Losh os=-vxworks 3103bf6039f0SWarner Losh ;; 3104bf6039f0SWarner Losh w65*) 3105bf6039f0SWarner Losh basic_machine=w65-wdc 3106bf6039f0SWarner Losh os=-none 3107bf6039f0SWarner Losh ;; 3108bf6039f0SWarner Losh w89k-*) 3109bf6039f0SWarner Losh basic_machine=hppa1.1-winbond 3110bf6039f0SWarner Losh os=-proelf 3111bf6039f0SWarner Losh ;; 3112bf6039f0SWarner Losh xbox) 3113bf6039f0SWarner Losh basic_machine=i686-pc 3114bf6039f0SWarner Losh os=-mingw32 3115bf6039f0SWarner Losh ;; 3116bf6039f0SWarner Losh xps | xps100) 3117bf6039f0SWarner Losh basic_machine=xps100-honeywell 3118bf6039f0SWarner Losh ;; 3119bf6039f0SWarner Losh xscale-* | xscalee[bl]-*) 3120bf6039f0SWarner Losh basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 3121bf6039f0SWarner Losh ;; 3122bf6039f0SWarner Losh ymp) 3123bf6039f0SWarner Losh basic_machine=ymp-cray 3124bf6039f0SWarner Losh os=-unicos 3125bf6039f0SWarner Losh ;; 3126bf6039f0SWarner Losh z8k-*-coff) 3127bf6039f0SWarner Losh basic_machine=z8k-unknown 3128bf6039f0SWarner Losh os=-sim 3129bf6039f0SWarner Losh ;; 3130bf6039f0SWarner Losh z80-*-coff) 3131bf6039f0SWarner Losh basic_machine=z80-unknown 3132bf6039f0SWarner Losh os=-sim 3133bf6039f0SWarner Losh ;; 3134bf6039f0SWarner Losh none) 3135bf6039f0SWarner Losh basic_machine=none-none 3136bf6039f0SWarner Losh os=-none 3137bf6039f0SWarner Losh ;; 3138bf6039f0SWarner Losh 3139bf6039f0SWarner Losh# Here we handle the default manufacturer of certain CPU types. It is in 3140bf6039f0SWarner Losh# some cases the only manufacturer, in others, it is the most popular. 3141bf6039f0SWarner Losh w89k) 3142bf6039f0SWarner Losh basic_machine=hppa1.1-winbond 3143bf6039f0SWarner Losh ;; 3144bf6039f0SWarner Losh op50n) 3145bf6039f0SWarner Losh basic_machine=hppa1.1-oki 3146bf6039f0SWarner Losh ;; 3147bf6039f0SWarner Losh op60c) 3148bf6039f0SWarner Losh basic_machine=hppa1.1-oki 3149bf6039f0SWarner Losh ;; 3150bf6039f0SWarner Losh romp) 3151bf6039f0SWarner Losh basic_machine=romp-ibm 3152bf6039f0SWarner Losh ;; 3153bf6039f0SWarner Losh mmix) 3154bf6039f0SWarner Losh basic_machine=mmix-knuth 3155bf6039f0SWarner Losh ;; 3156bf6039f0SWarner Losh rs6000) 3157bf6039f0SWarner Losh basic_machine=rs6000-ibm 3158bf6039f0SWarner Losh ;; 3159bf6039f0SWarner Losh vax) 3160bf6039f0SWarner Losh basic_machine=vax-dec 3161bf6039f0SWarner Losh ;; 3162bf6039f0SWarner Losh pdp10) 3163bf6039f0SWarner Losh # there are many clones, so DEC is not a safe bet 3164bf6039f0SWarner Losh basic_machine=pdp10-unknown 3165bf6039f0SWarner Losh ;; 3166bf6039f0SWarner Losh pdp11) 3167bf6039f0SWarner Losh basic_machine=pdp11-dec 3168bf6039f0SWarner Losh ;; 3169bf6039f0SWarner Losh we32k) 3170bf6039f0SWarner Losh basic_machine=we32k-att 3171bf6039f0SWarner Losh ;; 3172bf6039f0SWarner Losh sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 3173bf6039f0SWarner Losh basic_machine=sh-unknown 3174bf6039f0SWarner Losh ;; 3175bf6039f0SWarner Losh sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 3176bf6039f0SWarner Losh basic_machine=sparc-sun 3177bf6039f0SWarner Losh ;; 3178bf6039f0SWarner Losh cydra) 3179bf6039f0SWarner Losh basic_machine=cydra-cydrome 3180bf6039f0SWarner Losh ;; 3181bf6039f0SWarner Losh orion) 3182bf6039f0SWarner Losh basic_machine=orion-highlevel 3183bf6039f0SWarner Losh ;; 3184bf6039f0SWarner Losh orion105) 3185bf6039f0SWarner Losh basic_machine=clipper-highlevel 3186bf6039f0SWarner Losh ;; 3187bf6039f0SWarner Losh mac | mpw | mac-mpw) 3188bf6039f0SWarner Losh basic_machine=m68k-apple 3189bf6039f0SWarner Losh ;; 3190bf6039f0SWarner Losh pmac | pmac-mpw) 3191bf6039f0SWarner Losh basic_machine=powerpc-apple 3192bf6039f0SWarner Losh ;; 3193bf6039f0SWarner Losh *-unknown) 3194bf6039f0SWarner Losh # Make sure to match an already-canonicalized machine name. 3195bf6039f0SWarner Losh ;; 3196bf6039f0SWarner Losh *) 3197bf6039f0SWarner Losh echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3198bf6039f0SWarner Losh exit 1 3199bf6039f0SWarner Losh ;; 3200bf6039f0SWarner Loshesac 3201bf6039f0SWarner Losh 3202bf6039f0SWarner Losh# Here we canonicalize certain aliases for manufacturers. 3203bf6039f0SWarner Loshcase $basic_machine in 3204bf6039f0SWarner Losh *-digital*) 3205bf6039f0SWarner Losh basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 3206bf6039f0SWarner Losh ;; 3207bf6039f0SWarner Losh *-commodore*) 3208bf6039f0SWarner Losh basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 3209bf6039f0SWarner Losh ;; 3210bf6039f0SWarner Losh *) 3211bf6039f0SWarner Losh ;; 3212bf6039f0SWarner Loshesac 3213bf6039f0SWarner Losh 3214bf6039f0SWarner Losh# Decode manufacturer-specific aliases for certain operating systems. 3215bf6039f0SWarner Losh 3216bf6039f0SWarner Loshif [ x"$os" != x"" ] 3217bf6039f0SWarner Loshthen 3218bf6039f0SWarner Loshcase $os in 3219bf6039f0SWarner Losh # First match some system type aliases 3220bf6039f0SWarner Losh # that might get confused with valid system types. 3221bf6039f0SWarner Losh # -solaris* is a basic system type, with this one exception. 3222bf6039f0SWarner Losh -auroraux) 3223bf6039f0SWarner Losh os=-auroraux 3224bf6039f0SWarner Losh ;; 3225bf6039f0SWarner Losh -solaris1 | -solaris1.*) 3226bf6039f0SWarner Losh os=`echo $os | sed -e 's|solaris1|sunos4|'` 3227bf6039f0SWarner Losh ;; 3228bf6039f0SWarner Losh -solaris) 3229bf6039f0SWarner Losh os=-solaris2 3230bf6039f0SWarner Losh ;; 3231bf6039f0SWarner Losh -svr4*) 3232bf6039f0SWarner Losh os=-sysv4 3233bf6039f0SWarner Losh ;; 3234bf6039f0SWarner Losh -unixware*) 3235bf6039f0SWarner Losh os=-sysv4.2uw 3236bf6039f0SWarner Losh ;; 3237bf6039f0SWarner Losh -gnu/linux*) 3238bf6039f0SWarner Losh os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 3239bf6039f0SWarner Losh ;; 3240bf6039f0SWarner Losh # First accept the basic system types. 3241bf6039f0SWarner Losh # The portable systems comes first. 3242bf6039f0SWarner Losh # Each alternative MUST END IN A *, to match a version number. 3243bf6039f0SWarner Losh # -sysv* is not here because it comes later, after sysvr4. 3244bf6039f0SWarner Losh -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 3245bf6039f0SWarner Losh | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 3246bf6039f0SWarner Losh | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 3247bf6039f0SWarner Losh | -sym* | -kopensolaris* | -plan9* \ 3248bf6039f0SWarner Losh | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 3249bf6039f0SWarner Losh | -aos* | -aros* | -cloudabi* | -sortix* \ 3250bf6039f0SWarner Losh | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 3251bf6039f0SWarner Losh | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 3252bf6039f0SWarner Losh | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 3253bf6039f0SWarner Losh | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ 3254bf6039f0SWarner Losh | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 3255bf6039f0SWarner Losh | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 3256bf6039f0SWarner Losh | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 3257bf6039f0SWarner Losh | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 3258bf6039f0SWarner Losh | -chorusos* | -chorusrdb* | -cegcc* \ 3259bf6039f0SWarner Losh | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 3260bf6039f0SWarner Losh | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 3261bf6039f0SWarner Losh | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 3262bf6039f0SWarner Losh | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 3263bf6039f0SWarner Losh | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 3264bf6039f0SWarner Losh | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 3265bf6039f0SWarner Losh | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 3266bf6039f0SWarner Losh | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 3267bf6039f0SWarner Losh | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 3268bf6039f0SWarner Losh | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 3269bf6039f0SWarner Losh | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ 3270bf6039f0SWarner Losh | -onefs* | -tirtos* | -phoenix* | -fuchsia*) 3271bf6039f0SWarner Losh # Remember, each alternative MUST END IN *, to match a version number. 3272bf6039f0SWarner Losh ;; 3273bf6039f0SWarner Losh -qnx*) 3274bf6039f0SWarner Losh case $basic_machine in 3275bf6039f0SWarner Losh x86-* | i*86-*) 3276bf6039f0SWarner Losh ;; 3277bf6039f0SWarner Losh *) 3278bf6039f0SWarner Losh os=-nto$os 3279bf6039f0SWarner Losh ;; 3280bf6039f0SWarner Losh esac 3281bf6039f0SWarner Losh ;; 3282bf6039f0SWarner Losh -nto-qnx*) 3283bf6039f0SWarner Losh ;; 3284bf6039f0SWarner Losh -nto*) 3285bf6039f0SWarner Losh os=`echo $os | sed -e 's|nto|nto-qnx|'` 3286bf6039f0SWarner Losh ;; 3287bf6039f0SWarner Losh -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 3288bf6039f0SWarner Losh | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 3289bf6039f0SWarner Losh | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 3290bf6039f0SWarner Losh ;; 3291bf6039f0SWarner Losh -mac*) 3292bf6039f0SWarner Losh os=`echo $os | sed -e 's|mac|macos|'` 3293bf6039f0SWarner Losh ;; 3294bf6039f0SWarner Losh -linux-dietlibc) 3295bf6039f0SWarner Losh os=-linux-dietlibc 3296bf6039f0SWarner Losh ;; 3297bf6039f0SWarner Losh -linux*) 3298bf6039f0SWarner Losh os=`echo $os | sed -e 's|linux|linux-gnu|'` 3299bf6039f0SWarner Losh ;; 3300bf6039f0SWarner Losh -sunos5*) 3301bf6039f0SWarner Losh os=`echo $os | sed -e 's|sunos5|solaris2|'` 3302bf6039f0SWarner Losh ;; 3303bf6039f0SWarner Losh -sunos6*) 3304bf6039f0SWarner Losh os=`echo $os | sed -e 's|sunos6|solaris3|'` 3305bf6039f0SWarner Losh ;; 3306bf6039f0SWarner Losh -opened*) 3307bf6039f0SWarner Losh os=-openedition 3308bf6039f0SWarner Losh ;; 3309bf6039f0SWarner Losh -os400*) 3310bf6039f0SWarner Losh os=-os400 3311bf6039f0SWarner Losh ;; 3312bf6039f0SWarner Losh -wince*) 3313bf6039f0SWarner Losh os=-wince 3314bf6039f0SWarner Losh ;; 3315bf6039f0SWarner Losh -osfrose*) 3316bf6039f0SWarner Losh os=-osfrose 3317bf6039f0SWarner Losh ;; 3318bf6039f0SWarner Losh -osf*) 3319bf6039f0SWarner Losh os=-osf 3320bf6039f0SWarner Losh ;; 3321bf6039f0SWarner Losh -utek*) 3322bf6039f0SWarner Losh os=-bsd 3323bf6039f0SWarner Losh ;; 3324bf6039f0SWarner Losh -dynix*) 3325bf6039f0SWarner Losh os=-bsd 3326bf6039f0SWarner Losh ;; 3327bf6039f0SWarner Losh -acis*) 3328bf6039f0SWarner Losh os=-aos 3329bf6039f0SWarner Losh ;; 3330bf6039f0SWarner Losh -atheos*) 3331bf6039f0SWarner Losh os=-atheos 3332bf6039f0SWarner Losh ;; 3333bf6039f0SWarner Losh -syllable*) 3334bf6039f0SWarner Losh os=-syllable 3335bf6039f0SWarner Losh ;; 3336bf6039f0SWarner Losh -386bsd) 3337bf6039f0SWarner Losh os=-bsd 3338bf6039f0SWarner Losh ;; 3339bf6039f0SWarner Losh -ctix* | -uts*) 3340bf6039f0SWarner Losh os=-sysv 3341bf6039f0SWarner Losh ;; 3342bf6039f0SWarner Losh -nova*) 3343bf6039f0SWarner Losh os=-rtmk-nova 3344bf6039f0SWarner Losh ;; 3345bf6039f0SWarner Losh -ns2 ) 3346bf6039f0SWarner Losh os=-nextstep2 3347bf6039f0SWarner Losh ;; 3348bf6039f0SWarner Losh -nsk*) 3349bf6039f0SWarner Losh os=-nsk 3350bf6039f0SWarner Losh ;; 3351bf6039f0SWarner Losh # Preserve the version number of sinix5. 3352bf6039f0SWarner Losh -sinix5.*) 3353bf6039f0SWarner Losh os=`echo $os | sed -e 's|sinix|sysv|'` 3354bf6039f0SWarner Losh ;; 3355bf6039f0SWarner Losh -sinix*) 3356bf6039f0SWarner Losh os=-sysv4 3357bf6039f0SWarner Losh ;; 3358bf6039f0SWarner Losh -tpf*) 3359bf6039f0SWarner Losh os=-tpf 3360bf6039f0SWarner Losh ;; 3361bf6039f0SWarner Losh -triton*) 3362bf6039f0SWarner Losh os=-sysv3 3363bf6039f0SWarner Losh ;; 3364bf6039f0SWarner Losh -oss*) 3365bf6039f0SWarner Losh os=-sysv3 3366bf6039f0SWarner Losh ;; 3367bf6039f0SWarner Losh -svr4) 3368bf6039f0SWarner Losh os=-sysv4 3369bf6039f0SWarner Losh ;; 3370bf6039f0SWarner Losh -svr3) 3371bf6039f0SWarner Losh os=-sysv3 3372bf6039f0SWarner Losh ;; 3373bf6039f0SWarner Losh -sysvr4) 3374bf6039f0SWarner Losh os=-sysv4 3375bf6039f0SWarner Losh ;; 3376bf6039f0SWarner Losh # This must come after -sysvr4. 3377bf6039f0SWarner Losh -sysv*) 3378bf6039f0SWarner Losh ;; 3379bf6039f0SWarner Losh -ose*) 3380bf6039f0SWarner Losh os=-ose 3381bf6039f0SWarner Losh ;; 3382bf6039f0SWarner Losh -es1800*) 3383bf6039f0SWarner Losh os=-ose 3384bf6039f0SWarner Losh ;; 3385bf6039f0SWarner Losh -xenix) 3386bf6039f0SWarner Losh os=-xenix 3387bf6039f0SWarner Losh ;; 3388bf6039f0SWarner Losh -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 3389bf6039f0SWarner Losh os=-mint 3390bf6039f0SWarner Losh ;; 3391bf6039f0SWarner Losh -aros*) 3392bf6039f0SWarner Losh os=-aros 3393bf6039f0SWarner Losh ;; 3394bf6039f0SWarner Losh -zvmoe) 3395bf6039f0SWarner Losh os=-zvmoe 3396bf6039f0SWarner Losh ;; 3397bf6039f0SWarner Losh -dicos*) 3398bf6039f0SWarner Losh os=-dicos 3399bf6039f0SWarner Losh ;; 3400bf6039f0SWarner Losh -nacl*) 3401bf6039f0SWarner Losh ;; 3402bf6039f0SWarner Losh -ios) 3403bf6039f0SWarner Losh ;; 3404bf6039f0SWarner Losh -none) 3405bf6039f0SWarner Losh ;; 3406bf6039f0SWarner Losh *) 3407bf6039f0SWarner Losh # Get rid of the `-' at the beginning of $os. 3408bf6039f0SWarner Losh os=`echo $os | sed 's/[^-]*-//'` 3409bf6039f0SWarner Losh echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 3410bf6039f0SWarner Losh exit 1 3411bf6039f0SWarner Losh ;; 3412bf6039f0SWarner Loshesac 3413bf6039f0SWarner Loshelse 3414bf6039f0SWarner Losh 3415bf6039f0SWarner Losh# Here we handle the default operating systems that come with various machines. 3416bf6039f0SWarner Losh# The value should be what the vendor currently ships out the door with their 3417bf6039f0SWarner Losh# machine or put another way, the most popular os provided with the machine. 3418bf6039f0SWarner Losh 3419bf6039f0SWarner Losh# Note that if you're going to try to match "-MANUFACTURER" here (say, 3420bf6039f0SWarner Losh# "-sun"), then you have to tell the case statement up towards the top 3421bf6039f0SWarner Losh# that MANUFACTURER isn't an operating system. Otherwise, code above 3422bf6039f0SWarner Losh# will signal an error saying that MANUFACTURER isn't an operating 3423bf6039f0SWarner Losh# system, and we'll never get to this point. 3424bf6039f0SWarner Losh 3425bf6039f0SWarner Loshcase $basic_machine in 3426bf6039f0SWarner Losh score-*) 3427bf6039f0SWarner Losh os=-elf 3428bf6039f0SWarner Losh ;; 3429bf6039f0SWarner Losh spu-*) 3430bf6039f0SWarner Losh os=-elf 3431bf6039f0SWarner Losh ;; 3432bf6039f0SWarner Losh *-acorn) 3433bf6039f0SWarner Losh os=-riscix1.2 3434bf6039f0SWarner Losh ;; 3435bf6039f0SWarner Losh arm*-rebel) 3436bf6039f0SWarner Losh os=-linux 3437bf6039f0SWarner Losh ;; 3438bf6039f0SWarner Losh arm*-semi) 3439bf6039f0SWarner Losh os=-aout 3440bf6039f0SWarner Losh ;; 3441bf6039f0SWarner Losh c4x-* | tic4x-*) 3442bf6039f0SWarner Losh os=-coff 3443bf6039f0SWarner Losh ;; 3444bf6039f0SWarner Losh c8051-*) 3445bf6039f0SWarner Losh os=-elf 3446bf6039f0SWarner Losh ;; 3447bf6039f0SWarner Losh hexagon-*) 3448bf6039f0SWarner Losh os=-elf 3449bf6039f0SWarner Losh ;; 3450bf6039f0SWarner Losh tic54x-*) 3451bf6039f0SWarner Losh os=-coff 3452bf6039f0SWarner Losh ;; 3453bf6039f0SWarner Losh tic55x-*) 3454bf6039f0SWarner Losh os=-coff 3455bf6039f0SWarner Losh ;; 3456bf6039f0SWarner Losh tic6x-*) 3457bf6039f0SWarner Losh os=-coff 3458bf6039f0SWarner Losh ;; 3459bf6039f0SWarner Losh # This must come before the *-dec entry. 3460bf6039f0SWarner Losh pdp10-*) 3461bf6039f0SWarner Losh os=-tops20 3462bf6039f0SWarner Losh ;; 3463bf6039f0SWarner Losh pdp11-*) 3464bf6039f0SWarner Losh os=-none 3465bf6039f0SWarner Losh ;; 3466bf6039f0SWarner Losh *-dec | vax-*) 3467bf6039f0SWarner Losh os=-ultrix4.2 3468bf6039f0SWarner Losh ;; 3469bf6039f0SWarner Losh m68*-apollo) 3470bf6039f0SWarner Losh os=-domain 3471bf6039f0SWarner Losh ;; 3472bf6039f0SWarner Losh i386-sun) 3473bf6039f0SWarner Losh os=-sunos4.0.2 3474bf6039f0SWarner Losh ;; 3475bf6039f0SWarner Losh m68000-sun) 3476bf6039f0SWarner Losh os=-sunos3 3477bf6039f0SWarner Losh ;; 3478bf6039f0SWarner Losh m68*-cisco) 3479bf6039f0SWarner Losh os=-aout 3480bf6039f0SWarner Losh ;; 3481bf6039f0SWarner Losh mep-*) 3482bf6039f0SWarner Losh os=-elf 3483bf6039f0SWarner Losh ;; 3484bf6039f0SWarner Losh mips*-cisco) 3485bf6039f0SWarner Losh os=-elf 3486bf6039f0SWarner Losh ;; 3487bf6039f0SWarner Losh mips*-*) 3488bf6039f0SWarner Losh os=-elf 3489bf6039f0SWarner Losh ;; 3490bf6039f0SWarner Losh or32-*) 3491bf6039f0SWarner Losh os=-coff 3492bf6039f0SWarner Losh ;; 3493bf6039f0SWarner Losh *-tti) # must be before sparc entry or we get the wrong os. 3494bf6039f0SWarner Losh os=-sysv3 3495bf6039f0SWarner Losh ;; 3496bf6039f0SWarner Losh sparc-* | *-sun) 3497bf6039f0SWarner Losh os=-sunos4.1.1 3498bf6039f0SWarner Losh ;; 3499bf6039f0SWarner Losh *-be) 3500bf6039f0SWarner Losh os=-beos 3501bf6039f0SWarner Losh ;; 3502bf6039f0SWarner Losh *-haiku) 3503bf6039f0SWarner Losh os=-haiku 3504bf6039f0SWarner Losh ;; 3505bf6039f0SWarner Losh *-ibm) 3506bf6039f0SWarner Losh os=-aix 3507bf6039f0SWarner Losh ;; 3508bf6039f0SWarner Losh *-knuth) 3509bf6039f0SWarner Losh os=-mmixware 3510bf6039f0SWarner Losh ;; 3511bf6039f0SWarner Losh *-wec) 3512bf6039f0SWarner Losh os=-proelf 3513bf6039f0SWarner Losh ;; 3514bf6039f0SWarner Losh *-winbond) 3515bf6039f0SWarner Losh os=-proelf 3516bf6039f0SWarner Losh ;; 3517bf6039f0SWarner Losh *-oki) 3518bf6039f0SWarner Losh os=-proelf 3519bf6039f0SWarner Losh ;; 3520bf6039f0SWarner Losh *-hp) 3521bf6039f0SWarner Losh os=-hpux 3522bf6039f0SWarner Losh ;; 3523bf6039f0SWarner Losh *-hitachi) 3524bf6039f0SWarner Losh os=-hiux 3525bf6039f0SWarner Losh ;; 3526bf6039f0SWarner Losh i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 3527bf6039f0SWarner Losh os=-sysv 3528bf6039f0SWarner Losh ;; 3529bf6039f0SWarner Losh *-cbm) 3530bf6039f0SWarner Losh os=-amigaos 3531bf6039f0SWarner Losh ;; 3532bf6039f0SWarner Losh *-dg) 3533bf6039f0SWarner Losh os=-dgux 3534bf6039f0SWarner Losh ;; 3535bf6039f0SWarner Losh *-dolphin) 3536bf6039f0SWarner Losh os=-sysv3 3537bf6039f0SWarner Losh ;; 3538bf6039f0SWarner Losh m68k-ccur) 3539bf6039f0SWarner Losh os=-rtu 3540bf6039f0SWarner Losh ;; 3541bf6039f0SWarner Losh m88k-omron*) 3542bf6039f0SWarner Losh os=-luna 3543bf6039f0SWarner Losh ;; 3544bf6039f0SWarner Losh *-next ) 3545bf6039f0SWarner Losh os=-nextstep 3546bf6039f0SWarner Losh ;; 3547bf6039f0SWarner Losh *-sequent) 3548bf6039f0SWarner Losh os=-ptx 3549bf6039f0SWarner Losh ;; 3550bf6039f0SWarner Losh *-crds) 3551bf6039f0SWarner Losh os=-unos 3552bf6039f0SWarner Losh ;; 3553bf6039f0SWarner Losh *-ns) 3554bf6039f0SWarner Losh os=-genix 3555bf6039f0SWarner Losh ;; 3556bf6039f0SWarner Losh i370-*) 3557bf6039f0SWarner Losh os=-mvs 3558bf6039f0SWarner Losh ;; 3559bf6039f0SWarner Losh *-next) 3560bf6039f0SWarner Losh os=-nextstep3 3561bf6039f0SWarner Losh ;; 3562bf6039f0SWarner Losh *-gould) 3563bf6039f0SWarner Losh os=-sysv 3564bf6039f0SWarner Losh ;; 3565bf6039f0SWarner Losh *-highlevel) 3566bf6039f0SWarner Losh os=-bsd 3567bf6039f0SWarner Losh ;; 3568bf6039f0SWarner Losh *-encore) 3569bf6039f0SWarner Losh os=-bsd 3570bf6039f0SWarner Losh ;; 3571bf6039f0SWarner Losh *-sgi) 3572bf6039f0SWarner Losh os=-irix 3573bf6039f0SWarner Losh ;; 3574bf6039f0SWarner Losh *-siemens) 3575bf6039f0SWarner Losh os=-sysv4 3576bf6039f0SWarner Losh ;; 3577bf6039f0SWarner Losh *-masscomp) 3578bf6039f0SWarner Losh os=-rtu 3579bf6039f0SWarner Losh ;; 3580bf6039f0SWarner Losh f30[01]-fujitsu | f700-fujitsu) 3581bf6039f0SWarner Losh os=-uxpv 3582bf6039f0SWarner Losh ;; 3583bf6039f0SWarner Losh *-rom68k) 3584bf6039f0SWarner Losh os=-coff 3585bf6039f0SWarner Losh ;; 3586bf6039f0SWarner Losh *-*bug) 3587bf6039f0SWarner Losh os=-coff 3588bf6039f0SWarner Losh ;; 3589bf6039f0SWarner Losh *-apple) 3590bf6039f0SWarner Losh os=-macos 3591bf6039f0SWarner Losh ;; 3592bf6039f0SWarner Losh *-atari*) 3593bf6039f0SWarner Losh os=-mint 3594bf6039f0SWarner Losh ;; 3595bf6039f0SWarner Losh *) 3596bf6039f0SWarner Losh os=-none 3597bf6039f0SWarner Losh ;; 3598bf6039f0SWarner Loshesac 3599bf6039f0SWarner Loshfi 3600bf6039f0SWarner Losh 3601bf6039f0SWarner Losh# Here we handle the case where we know the os, and the CPU type, but not the 3602bf6039f0SWarner Losh# manufacturer. We pick the logical manufacturer. 3603bf6039f0SWarner Loshvendor=unknown 3604bf6039f0SWarner Loshcase $basic_machine in 3605bf6039f0SWarner Losh *-unknown) 3606bf6039f0SWarner Losh case $os in 3607bf6039f0SWarner Losh -riscix*) 3608bf6039f0SWarner Losh vendor=acorn 3609bf6039f0SWarner Losh ;; 3610bf6039f0SWarner Losh -sunos*) 3611bf6039f0SWarner Losh vendor=sun 3612bf6039f0SWarner Losh ;; 3613bf6039f0SWarner Losh -cnk*|-aix*) 3614bf6039f0SWarner Losh vendor=ibm 3615bf6039f0SWarner Losh ;; 3616bf6039f0SWarner Losh -beos*) 3617bf6039f0SWarner Losh vendor=be 3618bf6039f0SWarner Losh ;; 3619bf6039f0SWarner Losh -hpux*) 3620bf6039f0SWarner Losh vendor=hp 3621bf6039f0SWarner Losh ;; 3622bf6039f0SWarner Losh -mpeix*) 3623bf6039f0SWarner Losh vendor=hp 3624bf6039f0SWarner Losh ;; 3625bf6039f0SWarner Losh -hiux*) 3626bf6039f0SWarner Losh vendor=hitachi 3627bf6039f0SWarner Losh ;; 3628bf6039f0SWarner Losh -unos*) 3629bf6039f0SWarner Losh vendor=crds 3630bf6039f0SWarner Losh ;; 3631bf6039f0SWarner Losh -dgux*) 3632bf6039f0SWarner Losh vendor=dg 3633bf6039f0SWarner Losh ;; 3634bf6039f0SWarner Losh -luna*) 3635bf6039f0SWarner Losh vendor=omron 3636bf6039f0SWarner Losh ;; 3637bf6039f0SWarner Losh -genix*) 3638bf6039f0SWarner Losh vendor=ns 3639bf6039f0SWarner Losh ;; 3640bf6039f0SWarner Losh -mvs* | -opened*) 3641bf6039f0SWarner Losh vendor=ibm 3642bf6039f0SWarner Losh ;; 3643bf6039f0SWarner Losh -os400*) 3644bf6039f0SWarner Losh vendor=ibm 3645bf6039f0SWarner Losh ;; 3646bf6039f0SWarner Losh -ptx*) 3647bf6039f0SWarner Losh vendor=sequent 3648bf6039f0SWarner Losh ;; 3649bf6039f0SWarner Losh -tpf*) 3650bf6039f0SWarner Losh vendor=ibm 3651bf6039f0SWarner Losh ;; 3652bf6039f0SWarner Losh -vxsim* | -vxworks* | -windiss*) 3653bf6039f0SWarner Losh vendor=wrs 3654bf6039f0SWarner Losh ;; 3655bf6039f0SWarner Losh -aux*) 3656bf6039f0SWarner Losh vendor=apple 3657bf6039f0SWarner Losh ;; 3658bf6039f0SWarner Losh -hms*) 3659bf6039f0SWarner Losh vendor=hitachi 3660bf6039f0SWarner Losh ;; 3661bf6039f0SWarner Losh -mpw* | -macos*) 3662bf6039f0SWarner Losh vendor=apple 3663bf6039f0SWarner Losh ;; 3664bf6039f0SWarner Losh -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 3665bf6039f0SWarner Losh vendor=atari 3666bf6039f0SWarner Losh ;; 3667bf6039f0SWarner Losh -vos*) 3668bf6039f0SWarner Losh vendor=stratus 3669bf6039f0SWarner Losh ;; 3670bf6039f0SWarner Losh esac 3671bf6039f0SWarner Losh basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 3672bf6039f0SWarner Losh ;; 3673bf6039f0SWarner Loshesac 3674bf6039f0SWarner Losh 3675bf6039f0SWarner Loshecho $basic_machine$os 3676bf6039f0SWarner Loshexit 3677bf6039f0SWarner Losh 3678bf6039f0SWarner Losh# Local variables: 3679bf6039f0SWarner Losh# eval: (add-hook 'write-file-hooks 'time-stamp) 3680bf6039f0SWarner Losh# time-stamp-start: "timestamp='" 3681bf6039f0SWarner Losh# time-stamp-format: "%:y-%02m-%02d" 3682bf6039f0SWarner Losh# time-stamp-end: "'" 3683bf6039f0SWarner Losh# End: 3684*c43cad87SWarner Losh>>>>>>> main 3685