config.guess 44 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537
  1. #! /bin/sh
  2. # Attempt to guess a canonical system name.
  3. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
  4. # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
  5. # 2011, 2012 Free Software Foundation, Inc.
  6. timestamp='2012-08-14'
  7. # This file is free software; you can redistribute it and/or modify it
  8. # under the terms of the GNU General Public License as published by
  9. # the Free Software Foundation; either version 2 of the License, or
  10. # (at your option) any later version.
  11. #
  12. # This program is distributed in the hope that it will be useful, but
  13. # WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  15. # General Public License for more details.
  16. #
  17. # You should have received a copy of the GNU General Public License
  18. # along with this program; if not, see <http://www.gnu.org/licenses/>.
  19. #
  20. # As a special exception to the GNU General Public License, if you
  21. # distribute this file as part of a program that contains a
  22. # configuration script generated by Autoconf, you may include it under
  23. # the same distribution terms that you use for the rest of that program.
  24. # Originally written by Per Bothner. Please send patches (context
  25. # diff format) to <config-patches@gnu.org> and include a ChangeLog
  26. # entry.
  27. #
  28. # This script attempts to guess a canonical system name similar to
  29. # config.sub. If it succeeds, it prints the system name on stdout, and
  30. # exits with 0. Otherwise, it exits with 1.
  31. #
  32. # You can get the latest version of this script from:
  33. # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
  34. me=`echo "$0" | sed -e 's,.*/,,'`
  35. usage="\
  36. Usage: $0 [OPTION]
  37. Output the configuration name of the system \`$me' is run on.
  38. Operation modes:
  39. -h, --help print this help, then exit
  40. -t, --time-stamp print date of last modification, then exit
  41. -v, --version print version number, then exit
  42. Report bugs and patches to <config-patches@gnu.org>."
  43. version="\
  44. GNU config.guess ($timestamp)
  45. Originally written by Per Bothner.
  46. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
  47. 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
  48. Free Software Foundation, Inc.
  49. This is free software; see the source for copying conditions. There is NO
  50. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
  51. help="
  52. Try \`$me --help' for more information."
  53. # Parse command line
  54. while test $# -gt 0 ; do
  55. case $1 in
  56. --time-stamp | --time* | -t )
  57. echo "$timestamp" ; exit ;;
  58. --version | -v )
  59. echo "$version" ; exit ;;
  60. --help | --h* | -h )
  61. echo "$usage"; exit ;;
  62. -- ) # Stop option processing
  63. shift; break ;;
  64. - ) # Use stdin as input.
  65. break ;;
  66. -* )
  67. echo "$me: invalid option $1$help" >&2
  68. exit 1 ;;
  69. * )
  70. break ;;
  71. esac
  72. done
  73. if test $# != 0; then
  74. echo "$me: too many arguments$help" >&2
  75. exit 1
  76. fi
  77. trap 'exit 1' 1 2 15
  78. # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
  79. # compiler to aid in system detection is discouraged as it requires
  80. # temporary files to be created and, as you can see below, it is a
  81. # headache to deal with in a portable fashion.
  82. # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
  83. # use `HOST_CC' if defined, but it is deprecated.
  84. # Portable tmp directory creation inspired by the Autoconf team.
  85. set_cc_for_build='
  86. trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
  87. trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
  88. : ${TMPDIR=/tmp} ;
  89. { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
  90. { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
  91. { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
  92. { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
  93. dummy=$tmp/dummy ;
  94. tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
  95. case $CC_FOR_BUILD,$HOST_CC,$CC in
  96. ,,) echo "int x;" > $dummy.c ;
  97. for c in cc gcc c89 c99 ; do
  98. if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
  99. CC_FOR_BUILD="$c"; break ;
  100. fi ;
  101. done ;
  102. if test x"$CC_FOR_BUILD" = x ; then
  103. CC_FOR_BUILD=no_compiler_found ;
  104. fi
  105. ;;
  106. ,,*) CC_FOR_BUILD=$CC ;;
  107. ,*,*) CC_FOR_BUILD=$HOST_CC ;;
  108. esac ; set_cc_for_build= ;'
  109. # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
  110. # (ghazi@noc.rutgers.edu 1994-08-24)
  111. if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
  112. PATH=$PATH:/.attbin ; export PATH
  113. fi
  114. UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
  115. UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
  116. UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
  117. UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
  118. # Note: order is significant - the case branches are not exclusive.
  119. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
  120. *:NetBSD:*:*)
  121. # NetBSD (nbsd) targets should (where applicable) match one or
  122. # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
  123. # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
  124. # switched to ELF, *-*-netbsd* would select the old
  125. # object file format. This provides both forward
  126. # compatibility and a consistent mechanism for selecting the
  127. # object file format.
  128. #
  129. # Note: NetBSD doesn't particularly care about the vendor
  130. # portion of the name. We always set it to "unknown".
  131. sysctl="sysctl -n hw.machine_arch"
  132. UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
  133. /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
  134. case "${UNAME_MACHINE_ARCH}" in
  135. armeb) machine=armeb-unknown ;;
  136. arm*) machine=arm-unknown ;;
  137. sh3el) machine=shl-unknown ;;
  138. sh3eb) machine=sh-unknown ;;
  139. sh5el) machine=sh5le-unknown ;;
  140. *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
  141. esac
  142. # The Operating System including object format, if it has switched
  143. # to ELF recently, or will in the future.
  144. case "${UNAME_MACHINE_ARCH}" in
  145. arm*|i386|m68k|ns32k|sh3*|sparc|vax)
  146. eval $set_cc_for_build
  147. if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
  148. | grep -q __ELF__
  149. then
  150. # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
  151. # Return netbsd for either. FIX?
  152. os=netbsd
  153. else
  154. os=netbsdelf
  155. fi
  156. ;;
  157. *)
  158. os=netbsd
  159. ;;
  160. esac
  161. # The OS release
  162. # Debian GNU/NetBSD machines have a different userland, and
  163. # thus, need a distinct triplet. However, they do not need
  164. # kernel version information, so it can be replaced with a
  165. # suitable tag, in the style of linux-gnu.
  166. case "${UNAME_VERSION}" in
  167. Debian*)
  168. release='-gnu'
  169. ;;
  170. *)
  171. release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
  172. ;;
  173. esac
  174. # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
  175. # contains redundant information, the shorter form:
  176. # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
  177. echo "${machine}-${os}${release}"
  178. exit ;;
  179. *:Bitrig:*:*)
  180. UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
  181. echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
  182. exit ;;
  183. *:OpenBSD:*:*)
  184. UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
  185. echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
  186. exit ;;
  187. *:ekkoBSD:*:*)
  188. echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
  189. exit ;;
  190. *:SolidBSD:*:*)
  191. echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
  192. exit ;;
  193. macppc:MirBSD:*:*)
  194. echo powerpc-unknown-mirbsd${UNAME_RELEASE}
  195. exit ;;
  196. *:MirBSD:*:*)
  197. echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
  198. exit ;;
  199. alpha:OSF1:*:*)
  200. case $UNAME_RELEASE in
  201. *4.0)
  202. UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
  203. ;;
  204. *5.*)
  205. UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
  206. ;;
  207. esac
  208. # According to Compaq, /usr/sbin/psrinfo has been available on
  209. # OSF/1 and Tru64 systems produced since 1995. I hope that
  210. # covers most systems running today. This code pipes the CPU
  211. # types through head -n 1, so we only detect the type of CPU 0.
  212. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
  213. case "$ALPHA_CPU_TYPE" in
  214. "EV4 (21064)")
  215. UNAME_MACHINE="alpha" ;;
  216. "EV4.5 (21064)")
  217. UNAME_MACHINE="alpha" ;;
  218. "LCA4 (21066/21068)")
  219. UNAME_MACHINE="alpha" ;;
  220. "EV5 (21164)")
  221. UNAME_MACHINE="alphaev5" ;;
  222. "EV5.6 (21164A)")
  223. UNAME_MACHINE="alphaev56" ;;
  224. "EV5.6 (21164PC)")
  225. UNAME_MACHINE="alphapca56" ;;
  226. "EV5.7 (21164PC)")
  227. UNAME_MACHINE="alphapca57" ;;
  228. "EV6 (21264)")
  229. UNAME_MACHINE="alphaev6" ;;
  230. "EV6.7 (21264A)")
  231. UNAME_MACHINE="alphaev67" ;;
  232. "EV6.8CB (21264C)")
  233. UNAME_MACHINE="alphaev68" ;;
  234. "EV6.8AL (21264B)")
  235. UNAME_MACHINE="alphaev68" ;;
  236. "EV6.8CX (21264D)")
  237. UNAME_MACHINE="alphaev68" ;;
  238. "EV6.9A (21264/EV69A)")
  239. UNAME_MACHINE="alphaev69" ;;
  240. "EV7 (21364)")
  241. UNAME_MACHINE="alphaev7" ;;
  242. "EV7.9 (21364A)")
  243. UNAME_MACHINE="alphaev79" ;;
  244. esac
  245. # A Pn.n version is a patched version.
  246. # A Vn.n version is a released version.
  247. # A Tn.n version is a released field test version.
  248. # A Xn.n version is an unreleased experimental baselevel.
  249. # 1.2 uses "1.2" for uname -r.
  250. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
  251. # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
  252. exitcode=$?
  253. trap '' 0
  254. exit $exitcode ;;
  255. Alpha\ *:Windows_NT*:*)
  256. # How do we know it's Interix rather than the generic POSIX subsystem?
  257. # Should we change UNAME_MACHINE based on the output of uname instead
  258. # of the specific Alpha model?
  259. echo alpha-pc-interix
  260. exit ;;
  261. 21064:Windows_NT:50:3)
  262. echo alpha-dec-winnt3.5
  263. exit ;;
  264. Amiga*:UNIX_System_V:4.0:*)
  265. echo m68k-unknown-sysv4
  266. exit ;;
  267. *:[Aa]miga[Oo][Ss]:*:*)
  268. echo ${UNAME_MACHINE}-unknown-amigaos
  269. exit ;;
  270. *:[Mm]orph[Oo][Ss]:*:*)
  271. echo ${UNAME_MACHINE}-unknown-morphos
  272. exit ;;
  273. *:OS/390:*:*)
  274. echo i370-ibm-openedition
  275. exit ;;
  276. *:z/VM:*:*)
  277. echo s390-ibm-zvmoe
  278. exit ;;
  279. *:OS400:*:*)
  280. echo powerpc-ibm-os400
  281. exit ;;
  282. arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
  283. echo arm-acorn-riscix${UNAME_RELEASE}
  284. exit ;;
  285. arm:riscos:*:*|arm:RISCOS:*:*)
  286. echo arm-unknown-riscos
  287. exit ;;
  288. SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
  289. echo hppa1.1-hitachi-hiuxmpp
  290. exit ;;
  291. Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
  292. # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
  293. if test "`(/bin/universe) 2>/dev/null`" = att ; then
  294. echo pyramid-pyramid-sysv3
  295. else
  296. echo pyramid-pyramid-bsd
  297. fi
  298. exit ;;
  299. NILE*:*:*:dcosx)
  300. echo pyramid-pyramid-svr4
  301. exit ;;
  302. DRS?6000:unix:4.0:6*)
  303. echo sparc-icl-nx6
  304. exit ;;
  305. DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
  306. case `/usr/bin/uname -p` in
  307. sparc) echo sparc-icl-nx7; exit ;;
  308. esac ;;
  309. s390x:SunOS:*:*)
  310. echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  311. exit ;;
  312. sun4H:SunOS:5.*:*)
  313. echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  314. exit ;;
  315. sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
  316. echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  317. exit ;;
  318. i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
  319. echo i386-pc-auroraux${UNAME_RELEASE}
  320. exit ;;
  321. i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
  322. eval $set_cc_for_build
  323. SUN_ARCH="i386"
  324. # If there is a compiler, see if it is configured for 64-bit objects.
  325. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
  326. # This test works for both compilers.
  327. if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
  328. if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
  329. (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
  330. grep IS_64BIT_ARCH >/dev/null
  331. then
  332. SUN_ARCH="x86_64"
  333. fi
  334. fi
  335. echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  336. exit ;;
  337. sun4*:SunOS:6*:*)
  338. # According to config.sub, this is the proper way to canonicalize
  339. # SunOS6. Hard to guess exactly what SunOS6 will be like, but
  340. # it's likely to be more like Solaris than SunOS4.
  341. echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  342. exit ;;
  343. sun4*:SunOS:*:*)
  344. case "`/usr/bin/arch -k`" in
  345. Series*|S4*)
  346. UNAME_RELEASE=`uname -v`
  347. ;;
  348. esac
  349. # Japanese Language versions have a version number like `4.1.3-JL'.
  350. echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
  351. exit ;;
  352. sun3*:SunOS:*:*)
  353. echo m68k-sun-sunos${UNAME_RELEASE}
  354. exit ;;
  355. sun*:*:4.2BSD:*)
  356. UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
  357. test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
  358. case "`/bin/arch`" in
  359. sun3)
  360. echo m68k-sun-sunos${UNAME_RELEASE}
  361. ;;
  362. sun4)
  363. echo sparc-sun-sunos${UNAME_RELEASE}
  364. ;;
  365. esac
  366. exit ;;
  367. aushp:SunOS:*:*)
  368. echo sparc-auspex-sunos${UNAME_RELEASE}
  369. exit ;;
  370. # The situation for MiNT is a little confusing. The machine name
  371. # can be virtually everything (everything which is not
  372. # "atarist" or "atariste" at least should have a processor
  373. # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
  374. # to the lowercase version "mint" (or "freemint"). Finally
  375. # the system name "TOS" denotes a system which is actually not
  376. # MiNT. But MiNT is downward compatible to TOS, so this should
  377. # be no problem.
  378. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
  379. echo m68k-atari-mint${UNAME_RELEASE}
  380. exit ;;
  381. atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
  382. echo m68k-atari-mint${UNAME_RELEASE}
  383. exit ;;
  384. *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
  385. echo m68k-atari-mint${UNAME_RELEASE}
  386. exit ;;
  387. milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
  388. echo m68k-milan-mint${UNAME_RELEASE}
  389. exit ;;
  390. hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
  391. echo m68k-hades-mint${UNAME_RELEASE}
  392. exit ;;
  393. *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
  394. echo m68k-unknown-mint${UNAME_RELEASE}
  395. exit ;;
  396. m68k:machten:*:*)
  397. echo m68k-apple-machten${UNAME_RELEASE}
  398. exit ;;
  399. powerpc:machten:*:*)
  400. echo powerpc-apple-machten${UNAME_RELEASE}
  401. exit ;;
  402. RISC*:Mach:*:*)
  403. echo mips-dec-mach_bsd4.3
  404. exit ;;
  405. RISC*:ULTRIX:*:*)
  406. echo mips-dec-ultrix${UNAME_RELEASE}
  407. exit ;;
  408. VAX*:ULTRIX*:*:*)
  409. echo vax-dec-ultrix${UNAME_RELEASE}
  410. exit ;;
  411. 2020:CLIX:*:* | 2430:CLIX:*:*)
  412. echo clipper-intergraph-clix${UNAME_RELEASE}
  413. exit ;;
  414. mips:*:*:UMIPS | mips:*:*:RISCos)
  415. eval $set_cc_for_build
  416. sed 's/^ //' << EOF >$dummy.c
  417. #ifdef __cplusplus
  418. #include <stdio.h> /* for printf() prototype */
  419. int main (int argc, char *argv[]) {
  420. #else
  421. int main (argc, argv) int argc; char *argv[]; {
  422. #endif
  423. #if defined (host_mips) && defined (MIPSEB)
  424. #if defined (SYSTYPE_SYSV)
  425. printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
  426. #endif
  427. #if defined (SYSTYPE_SVR4)
  428. printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
  429. #endif
  430. #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
  431. printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
  432. #endif
  433. #endif
  434. exit (-1);
  435. }
  436. EOF
  437. $CC_FOR_BUILD -o $dummy $dummy.c &&
  438. dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
  439. SYSTEM_NAME=`$dummy $dummyarg` &&
  440. { echo "$SYSTEM_NAME"; exit; }
  441. echo mips-mips-riscos${UNAME_RELEASE}
  442. exit ;;
  443. Motorola:PowerMAX_OS:*:*)
  444. echo powerpc-motorola-powermax
  445. exit ;;
  446. Motorola:*:4.3:PL8-*)
  447. echo powerpc-harris-powermax
  448. exit ;;
  449. Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
  450. echo powerpc-harris-powermax
  451. exit ;;
  452. Night_Hawk:Power_UNIX:*:*)
  453. echo powerpc-harris-powerunix
  454. exit ;;
  455. m88k:CX/UX:7*:*)
  456. echo m88k-harris-cxux7
  457. exit ;;
  458. m88k:*:4*:R4*)
  459. echo m88k-motorola-sysv4
  460. exit ;;
  461. m88k:*:3*:R3*)
  462. echo m88k-motorola-sysv3
  463. exit ;;
  464. AViiON:dgux:*:*)
  465. # DG/UX returns AViiON for all architectures
  466. UNAME_PROCESSOR=`/usr/bin/uname -p`
  467. if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
  468. then
  469. if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
  470. [ ${TARGET_BINARY_INTERFACE}x = x ]
  471. then
  472. echo m88k-dg-dgux${UNAME_RELEASE}
  473. else
  474. echo m88k-dg-dguxbcs${UNAME_RELEASE}
  475. fi
  476. else
  477. echo i586-dg-dgux${UNAME_RELEASE}
  478. fi
  479. exit ;;
  480. M88*:DolphinOS:*:*) # DolphinOS (SVR3)
  481. echo m88k-dolphin-sysv3
  482. exit ;;
  483. M88*:*:R3*:*)
  484. # Delta 88k system running SVR3
  485. echo m88k-motorola-sysv3
  486. exit ;;
  487. XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
  488. echo m88k-tektronix-sysv3
  489. exit ;;
  490. Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
  491. echo m68k-tektronix-bsd
  492. exit ;;
  493. *:IRIX*:*:*)
  494. echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
  495. exit ;;
  496. ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
  497. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
  498. exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
  499. i*86:AIX:*:*)
  500. echo i386-ibm-aix
  501. exit ;;
  502. ia64:AIX:*:*)
  503. if [ -x /usr/bin/oslevel ] ; then
  504. IBM_REV=`/usr/bin/oslevel`
  505. else
  506. IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
  507. fi
  508. echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
  509. exit ;;
  510. *:AIX:2:3)
  511. if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
  512. eval $set_cc_for_build
  513. sed 's/^ //' << EOF >$dummy.c
  514. #include <sys/systemcfg.h>
  515. main()
  516. {
  517. if (!__power_pc())
  518. exit(1);
  519. puts("powerpc-ibm-aix3.2.5");
  520. exit(0);
  521. }
  522. EOF
  523. if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
  524. then
  525. echo "$SYSTEM_NAME"
  526. else
  527. echo rs6000-ibm-aix3.2.5
  528. fi
  529. elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
  530. echo rs6000-ibm-aix3.2.4
  531. else
  532. echo rs6000-ibm-aix3.2
  533. fi
  534. exit ;;
  535. *:AIX:*:[4567])
  536. IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
  537. if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
  538. IBM_ARCH=rs6000
  539. else
  540. IBM_ARCH=powerpc
  541. fi
  542. if [ -x /usr/bin/oslevel ] ; then
  543. IBM_REV=`/usr/bin/oslevel`
  544. else
  545. IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
  546. fi
  547. echo ${IBM_ARCH}-ibm-aix${IBM_REV}
  548. exit ;;
  549. *:AIX:*:*)
  550. echo rs6000-ibm-aix
  551. exit ;;
  552. ibmrt:4.4BSD:*|romp-ibm:BSD:*)
  553. echo romp-ibm-bsd4.4
  554. exit ;;
  555. ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
  556. echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
  557. exit ;; # report: romp-ibm BSD 4.3
  558. *:BOSX:*:*)
  559. echo rs6000-bull-bosx
  560. exit ;;
  561. DPX/2?00:B.O.S.:*:*)
  562. echo m68k-bull-sysv3
  563. exit ;;
  564. 9000/[34]??:4.3bsd:1.*:*)
  565. echo m68k-hp-bsd
  566. exit ;;
  567. hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
  568. echo m68k-hp-bsd4.4
  569. exit ;;
  570. 9000/[34678]??:HP-UX:*:*)
  571. HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
  572. case "${UNAME_MACHINE}" in
  573. 9000/31? ) HP_ARCH=m68000 ;;
  574. 9000/[34]?? ) HP_ARCH=m68k ;;
  575. 9000/[678][0-9][0-9])
  576. if [ -x /usr/bin/getconf ]; then
  577. sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
  578. sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
  579. case "${sc_cpu_version}" in
  580. 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
  581. 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
  582. 532) # CPU_PA_RISC2_0
  583. case "${sc_kernel_bits}" in
  584. 32) HP_ARCH="hppa2.0n" ;;
  585. 64) HP_ARCH="hppa2.0w" ;;
  586. '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
  587. esac ;;
  588. esac
  589. fi
  590. if [ "${HP_ARCH}" = "" ]; then
  591. eval $set_cc_for_build
  592. sed 's/^ //' << EOF >$dummy.c
  593. #define _HPUX_SOURCE
  594. #include <stdlib.h>
  595. #include <unistd.h>
  596. int main ()
  597. {
  598. #if defined(_SC_KERNEL_BITS)
  599. long bits = sysconf(_SC_KERNEL_BITS);
  600. #endif
  601. long cpu = sysconf (_SC_CPU_VERSION);
  602. switch (cpu)
  603. {
  604. case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
  605. case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
  606. case CPU_PA_RISC2_0:
  607. #if defined(_SC_KERNEL_BITS)
  608. switch (bits)
  609. {
  610. case 64: puts ("hppa2.0w"); break;
  611. case 32: puts ("hppa2.0n"); break;
  612. default: puts ("hppa2.0"); break;
  613. } break;
  614. #else /* !defined(_SC_KERNEL_BITS) */
  615. puts ("hppa2.0"); break;
  616. #endif
  617. default: puts ("hppa1.0"); break;
  618. }
  619. exit (0);
  620. }
  621. EOF
  622. (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
  623. test -z "$HP_ARCH" && HP_ARCH=hppa
  624. fi ;;
  625. esac
  626. if [ ${HP_ARCH} = "hppa2.0w" ]
  627. then
  628. eval $set_cc_for_build
  629. # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
  630. # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
  631. # generating 64-bit code. GNU and HP use different nomenclature:
  632. #
  633. # $ CC_FOR_BUILD=cc ./config.guess
  634. # => hppa2.0w-hp-hpux11.23
  635. # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
  636. # => hppa64-hp-hpux11.23
  637. if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
  638. grep -q __LP64__
  639. then
  640. HP_ARCH="hppa2.0w"
  641. else
  642. HP_ARCH="hppa64"
  643. fi
  644. fi
  645. echo ${HP_ARCH}-hp-hpux${HPUX_REV}
  646. exit ;;
  647. ia64:HP-UX:*:*)
  648. HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
  649. echo ia64-hp-hpux${HPUX_REV}
  650. exit ;;
  651. 3050*:HI-UX:*:*)
  652. eval $set_cc_for_build
  653. sed 's/^ //' << EOF >$dummy.c
  654. #include <unistd.h>
  655. int
  656. main ()
  657. {
  658. long cpu = sysconf (_SC_CPU_VERSION);
  659. /* The order matters, because CPU_IS_HP_MC68K erroneously returns
  660. true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
  661. results, however. */
  662. if (CPU_IS_PA_RISC (cpu))
  663. {
  664. switch (cpu)
  665. {
  666. case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
  667. case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
  668. case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
  669. default: puts ("hppa-hitachi-hiuxwe2"); break;
  670. }
  671. }
  672. else if (CPU_IS_HP_MC68K (cpu))
  673. puts ("m68k-hitachi-hiuxwe2");
  674. else puts ("unknown-hitachi-hiuxwe2");
  675. exit (0);
  676. }
  677. EOF
  678. $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
  679. { echo "$SYSTEM_NAME"; exit; }
  680. echo unknown-hitachi-hiuxwe2
  681. exit ;;
  682. 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
  683. echo hppa1.1-hp-bsd
  684. exit ;;
  685. 9000/8??:4.3bsd:*:*)
  686. echo hppa1.0-hp-bsd
  687. exit ;;
  688. *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
  689. echo hppa1.0-hp-mpeix
  690. exit ;;
  691. hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
  692. echo hppa1.1-hp-osf
  693. exit ;;
  694. hp8??:OSF1:*:*)
  695. echo hppa1.0-hp-osf
  696. exit ;;
  697. i*86:OSF1:*:*)
  698. if [ -x /usr/sbin/sysversion ] ; then
  699. echo ${UNAME_MACHINE}-unknown-osf1mk
  700. else
  701. echo ${UNAME_MACHINE}-unknown-osf1
  702. fi
  703. exit ;;
  704. parisc*:Lites*:*:*)
  705. echo hppa1.1-hp-lites
  706. exit ;;
  707. C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
  708. echo c1-convex-bsd
  709. exit ;;
  710. C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
  711. if getsysinfo -f scalar_acc
  712. then echo c32-convex-bsd
  713. else echo c2-convex-bsd
  714. fi
  715. exit ;;
  716. C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
  717. echo c34-convex-bsd
  718. exit ;;
  719. C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
  720. echo c38-convex-bsd
  721. exit ;;
  722. C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
  723. echo c4-convex-bsd
  724. exit ;;
  725. CRAY*Y-MP:*:*:*)
  726. echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  727. exit ;;
  728. CRAY*[A-Z]90:*:*:*)
  729. echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
  730. | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
  731. -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
  732. -e 's/\.[^.]*$/.X/'
  733. exit ;;
  734. CRAY*TS:*:*:*)
  735. echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  736. exit ;;
  737. CRAY*T3E:*:*:*)
  738. echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  739. exit ;;
  740. CRAY*SV1:*:*:*)
  741. echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  742. exit ;;
  743. *:UNICOS/mp:*:*)
  744. echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  745. exit ;;
  746. F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
  747. FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
  748. FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
  749. FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
  750. echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
  751. exit ;;
  752. 5000:UNIX_System_V:4.*:*)
  753. FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
  754. FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
  755. echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
  756. exit ;;
  757. i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
  758. echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
  759. exit ;;
  760. sparc*:BSD/OS:*:*)
  761. echo sparc-unknown-bsdi${UNAME_RELEASE}
  762. exit ;;
  763. *:BSD/OS:*:*)
  764. echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
  765. exit ;;
  766. *:FreeBSD:*:*)
  767. UNAME_PROCESSOR=`/usr/bin/uname -p`
  768. case ${UNAME_PROCESSOR} in
  769. amd64)
  770. echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
  771. *)
  772. echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
  773. esac
  774. exit ;;
  775. i*:CYGWIN*:*)
  776. echo ${UNAME_MACHINE}-pc-cygwin
  777. exit ;;
  778. *:MINGW64*:*)
  779. echo ${UNAME_MACHINE}-pc-mingw64
  780. exit ;;
  781. *:MINGW*:*)
  782. echo ${UNAME_MACHINE}-pc-mingw32
  783. exit ;;
  784. i*:MSYS*:*)
  785. echo ${UNAME_MACHINE}-pc-msys
  786. exit ;;
  787. i*:windows32*:*)
  788. # uname -m includes "-pc" on this system.
  789. echo ${UNAME_MACHINE}-mingw32
  790. exit ;;
  791. i*:PW*:*)
  792. echo ${UNAME_MACHINE}-pc-pw32
  793. exit ;;
  794. *:Interix*:*)
  795. case ${UNAME_MACHINE} in
  796. x86)
  797. echo i586-pc-interix${UNAME_RELEASE}
  798. exit ;;
  799. authenticamd | genuineintel | EM64T)
  800. echo x86_64-unknown-interix${UNAME_RELEASE}
  801. exit ;;
  802. IA64)
  803. echo ia64-unknown-interix${UNAME_RELEASE}
  804. exit ;;
  805. esac ;;
  806. [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
  807. echo i${UNAME_MACHINE}-pc-mks
  808. exit ;;
  809. 8664:Windows_NT:*)
  810. echo x86_64-pc-mks
  811. exit ;;
  812. i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
  813. # How do we know it's Interix rather than the generic POSIX subsystem?
  814. # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
  815. # UNAME_MACHINE based on the output of uname instead of i386?
  816. echo i586-pc-interix
  817. exit ;;
  818. i*:UWIN*:*)
  819. echo ${UNAME_MACHINE}-pc-uwin
  820. exit ;;
  821. amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
  822. echo x86_64-unknown-cygwin
  823. exit ;;
  824. p*:CYGWIN*:*)
  825. echo powerpcle-unknown-cygwin
  826. exit ;;
  827. prep*:SunOS:5.*:*)
  828. echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  829. exit ;;
  830. *:GNU:*:*)
  831. # the GNU system
  832. echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
  833. exit ;;
  834. *:GNU/*:*:*)
  835. # other systems with GNU libc and userland
  836. echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
  837. exit ;;
  838. i*86:Minix:*:*)
  839. echo ${UNAME_MACHINE}-pc-minix
  840. exit ;;
  841. aarch64:Linux:*:*)
  842. echo ${UNAME_MACHINE}-unknown-linux-gnu
  843. exit ;;
  844. aarch64_be:Linux:*:*)
  845. UNAME_MACHINE=aarch64_be
  846. echo ${UNAME_MACHINE}-unknown-linux-gnu
  847. exit ;;
  848. alpha:Linux:*:*)
  849. case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
  850. EV5) UNAME_MACHINE=alphaev5 ;;
  851. EV56) UNAME_MACHINE=alphaev56 ;;
  852. PCA56) UNAME_MACHINE=alphapca56 ;;
  853. PCA57) UNAME_MACHINE=alphapca56 ;;
  854. EV6) UNAME_MACHINE=alphaev6 ;;
  855. EV67) UNAME_MACHINE=alphaev67 ;;
  856. EV68*) UNAME_MACHINE=alphaev68 ;;
  857. esac
  858. objdump --private-headers /bin/sh | grep -q ld.so.1
  859. if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
  860. echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
  861. exit ;;
  862. arm*:Linux:*:*)
  863. eval $set_cc_for_build
  864. if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
  865. | grep -q __ARM_EABI__
  866. then
  867. echo ${UNAME_MACHINE}-unknown-linux-gnu
  868. else
  869. if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
  870. | grep -q __ARM_PCS_VFP
  871. then
  872. echo ${UNAME_MACHINE}-unknown-linux-gnueabi
  873. else
  874. echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
  875. fi
  876. fi
  877. exit ;;
  878. avr32*:Linux:*:*)
  879. echo ${UNAME_MACHINE}-unknown-linux-gnu
  880. exit ;;
  881. cris:Linux:*:*)
  882. echo ${UNAME_MACHINE}-axis-linux-gnu
  883. exit ;;
  884. crisv32:Linux:*:*)
  885. echo ${UNAME_MACHINE}-axis-linux-gnu
  886. exit ;;
  887. frv:Linux:*:*)
  888. echo ${UNAME_MACHINE}-unknown-linux-gnu
  889. exit ;;
  890. hexagon:Linux:*:*)
  891. echo ${UNAME_MACHINE}-unknown-linux-gnu
  892. exit ;;
  893. i*86:Linux:*:*)
  894. LIBC=gnu
  895. eval $set_cc_for_build
  896. sed 's/^ //' << EOF >$dummy.c
  897. #ifdef __dietlibc__
  898. LIBC=dietlibc
  899. #endif
  900. EOF
  901. eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
  902. echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
  903. exit ;;
  904. ia64:Linux:*:*)
  905. echo ${UNAME_MACHINE}-unknown-linux-gnu
  906. exit ;;
  907. m32r*:Linux:*:*)
  908. echo ${UNAME_MACHINE}-unknown-linux-gnu
  909. exit ;;
  910. m68*:Linux:*:*)
  911. echo ${UNAME_MACHINE}-unknown-linux-gnu
  912. exit ;;
  913. mips:Linux:*:* | mips64:Linux:*:*)
  914. eval $set_cc_for_build
  915. sed 's/^ //' << EOF >$dummy.c
  916. #undef CPU
  917. #undef ${UNAME_MACHINE}
  918. #undef ${UNAME_MACHINE}el
  919. #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
  920. CPU=${UNAME_MACHINE}el
  921. #else
  922. #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
  923. CPU=${UNAME_MACHINE}
  924. #else
  925. CPU=
  926. #endif
  927. #endif
  928. EOF
  929. eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
  930. test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
  931. ;;
  932. or32:Linux:*:*)
  933. echo ${UNAME_MACHINE}-unknown-linux-gnu
  934. exit ;;
  935. padre:Linux:*:*)
  936. echo sparc-unknown-linux-gnu
  937. exit ;;
  938. parisc64:Linux:*:* | hppa64:Linux:*:*)
  939. echo hppa64-unknown-linux-gnu
  940. exit ;;
  941. parisc:Linux:*:* | hppa:Linux:*:*)
  942. # Look for CPU level
  943. case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
  944. PA7*) echo hppa1.1-unknown-linux-gnu ;;
  945. PA8*) echo hppa2.0-unknown-linux-gnu ;;
  946. *) echo hppa-unknown-linux-gnu ;;
  947. esac
  948. exit ;;
  949. ppc64:Linux:*:*)
  950. echo powerpc64-unknown-linux-gnu
  951. exit ;;
  952. ppc:Linux:*:*)
  953. echo powerpc-unknown-linux-gnu
  954. exit ;;
  955. s390:Linux:*:* | s390x:Linux:*:*)
  956. echo ${UNAME_MACHINE}-ibm-linux
  957. exit ;;
  958. sh64*:Linux:*:*)
  959. echo ${UNAME_MACHINE}-unknown-linux-gnu
  960. exit ;;
  961. sh*:Linux:*:*)
  962. echo ${UNAME_MACHINE}-unknown-linux-gnu
  963. exit ;;
  964. sparc:Linux:*:* | sparc64:Linux:*:*)
  965. echo ${UNAME_MACHINE}-unknown-linux-gnu
  966. exit ;;
  967. tile*:Linux:*:*)
  968. echo ${UNAME_MACHINE}-unknown-linux-gnu
  969. exit ;;
  970. vax:Linux:*:*)
  971. echo ${UNAME_MACHINE}-dec-linux-gnu
  972. exit ;;
  973. x86_64:Linux:*:*)
  974. echo ${UNAME_MACHINE}-unknown-linux-gnu
  975. exit ;;
  976. xtensa*:Linux:*:*)
  977. echo ${UNAME_MACHINE}-unknown-linux-gnu
  978. exit ;;
  979. i*86:DYNIX/ptx:4*:*)
  980. # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
  981. # earlier versions are messed up and put the nodename in both
  982. # sysname and nodename.
  983. echo i386-sequent-sysv4
  984. exit ;;
  985. i*86:UNIX_SV:4.2MP:2.*)
  986. # Unixware is an offshoot of SVR4, but it has its own version
  987. # number series starting with 2...
  988. # I am not positive that other SVR4 systems won't match this,
  989. # I just have to hope. -- rms.
  990. # Use sysv4.2uw... so that sysv4* matches it.
  991. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
  992. exit ;;
  993. i*86:OS/2:*:*)
  994. # If we were able to find `uname', then EMX Unix compatibility
  995. # is probably installed.
  996. echo ${UNAME_MACHINE}-pc-os2-emx
  997. exit ;;
  998. i*86:XTS-300:*:STOP)
  999. echo ${UNAME_MACHINE}-unknown-stop
  1000. exit ;;
  1001. i*86:atheos:*:*)
  1002. echo ${UNAME_MACHINE}-unknown-atheos
  1003. exit ;;
  1004. i*86:syllable:*:*)
  1005. echo ${UNAME_MACHINE}-pc-syllable
  1006. exit ;;
  1007. i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
  1008. echo i386-unknown-lynxos${UNAME_RELEASE}
  1009. exit ;;
  1010. i*86:*DOS:*:*)
  1011. echo ${UNAME_MACHINE}-pc-msdosdjgpp
  1012. exit ;;
  1013. i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
  1014. UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
  1015. if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
  1016. echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
  1017. else
  1018. echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
  1019. fi
  1020. exit ;;
  1021. i*86:*:5:[678]*)
  1022. # UnixWare 7.x, OpenUNIX and OpenServer 6.
  1023. case `/bin/uname -X | grep "^Machine"` in
  1024. *486*) UNAME_MACHINE=i486 ;;
  1025. *Pentium) UNAME_MACHINE=i586 ;;
  1026. *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
  1027. esac
  1028. echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
  1029. exit ;;
  1030. i*86:*:3.2:*)
  1031. if test -f /usr/options/cb.name; then
  1032. UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
  1033. echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
  1034. elif /bin/uname -X 2>/dev/null >/dev/null ; then
  1035. UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
  1036. (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
  1037. (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
  1038. && UNAME_MACHINE=i586
  1039. (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
  1040. && UNAME_MACHINE=i686
  1041. (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
  1042. && UNAME_MACHINE=i686
  1043. echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
  1044. else
  1045. echo ${UNAME_MACHINE}-pc-sysv32
  1046. fi
  1047. exit ;;
  1048. pc:*:*:*)
  1049. # Left here for compatibility:
  1050. # uname -m prints for DJGPP always 'pc', but it prints nothing about
  1051. # the processor, so we play safe by assuming i586.
  1052. # Note: whatever this is, it MUST be the same as what config.sub
  1053. # prints for the "djgpp" host, or else GDB configury will decide that
  1054. # this is a cross-build.
  1055. echo i586-pc-msdosdjgpp
  1056. exit ;;
  1057. Intel:Mach:3*:*)
  1058. echo i386-pc-mach3
  1059. exit ;;
  1060. paragon:*:*:*)
  1061. echo i860-intel-osf1
  1062. exit ;;
  1063. i860:*:4.*:*) # i860-SVR4
  1064. if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
  1065. echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
  1066. else # Add other i860-SVR4 vendors below as they are discovered.
  1067. echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
  1068. fi
  1069. exit ;;
  1070. mini*:CTIX:SYS*5:*)
  1071. # "miniframe"
  1072. echo m68010-convergent-sysv
  1073. exit ;;
  1074. mc68k:UNIX:SYSTEM5:3.51m)
  1075. echo m68k-convergent-sysv
  1076. exit ;;
  1077. M680?0:D-NIX:5.3:*)
  1078. echo m68k-diab-dnix
  1079. exit ;;
  1080. M68*:*:R3V[5678]*:*)
  1081. test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
  1082. 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
  1083. OS_REL=''
  1084. test -r /etc/.relid \
  1085. && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
  1086. /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  1087. && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
  1088. /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
  1089. && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
  1090. 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
  1091. /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  1092. && { echo i486-ncr-sysv4; exit; } ;;
  1093. NCR*:*:4.2:* | MPRAS*:*:4.2:*)
  1094. OS_REL='.3'
  1095. test -r /etc/.relid \
  1096. && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
  1097. /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  1098. && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
  1099. /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
  1100. && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
  1101. /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
  1102. && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
  1103. m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
  1104. echo m68k-unknown-lynxos${UNAME_RELEASE}
  1105. exit ;;
  1106. mc68030:UNIX_System_V:4.*:*)
  1107. echo m68k-atari-sysv4
  1108. exit ;;
  1109. TSUNAMI:LynxOS:2.*:*)
  1110. echo sparc-unknown-lynxos${UNAME_RELEASE}
  1111. exit ;;
  1112. rs6000:LynxOS:2.*:*)
  1113. echo rs6000-unknown-lynxos${UNAME_RELEASE}
  1114. exit ;;
  1115. PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
  1116. echo powerpc-unknown-lynxos${UNAME_RELEASE}
  1117. exit ;;
  1118. SM[BE]S:UNIX_SV:*:*)
  1119. echo mips-dde-sysv${UNAME_RELEASE}
  1120. exit ;;
  1121. RM*:ReliantUNIX-*:*:*)
  1122. echo mips-sni-sysv4
  1123. exit ;;
  1124. RM*:SINIX-*:*:*)
  1125. echo mips-sni-sysv4
  1126. exit ;;
  1127. *:SINIX-*:*:*)
  1128. if uname -p 2>/dev/null >/dev/null ; then
  1129. UNAME_MACHINE=`(uname -p) 2>/dev/null`
  1130. echo ${UNAME_MACHINE}-sni-sysv4
  1131. else
  1132. echo ns32k-sni-sysv
  1133. fi
  1134. exit ;;
  1135. PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
  1136. # says <Richard.M.Bartel@ccMail.Census.GOV>
  1137. echo i586-unisys-sysv4
  1138. exit ;;
  1139. *:UNIX_System_V:4*:FTX*)
  1140. # From Gerald Hewes <hewes@openmarket.com>.
  1141. # How about differentiating between stratus architectures? -djm
  1142. echo hppa1.1-stratus-sysv4
  1143. exit ;;
  1144. *:*:*:FTX*)
  1145. # From seanf@swdc.stratus.com.
  1146. echo i860-stratus-sysv4
  1147. exit ;;
  1148. i*86:VOS:*:*)
  1149. # From Paul.Green@stratus.com.
  1150. echo ${UNAME_MACHINE}-stratus-vos
  1151. exit ;;
  1152. *:VOS:*:*)
  1153. # From Paul.Green@stratus.com.
  1154. echo hppa1.1-stratus-vos
  1155. exit ;;
  1156. mc68*:A/UX:*:*)
  1157. echo m68k-apple-aux${UNAME_RELEASE}
  1158. exit ;;
  1159. news*:NEWS-OS:6*:*)
  1160. echo mips-sony-newsos6
  1161. exit ;;
  1162. R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
  1163. if [ -d /usr/nec ]; then
  1164. echo mips-nec-sysv${UNAME_RELEASE}
  1165. else
  1166. echo mips-unknown-sysv${UNAME_RELEASE}
  1167. fi
  1168. exit ;;
  1169. BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
  1170. echo powerpc-be-beos
  1171. exit ;;
  1172. BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
  1173. echo powerpc-apple-beos
  1174. exit ;;
  1175. BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
  1176. echo i586-pc-beos
  1177. exit ;;
  1178. BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
  1179. echo i586-pc-haiku
  1180. exit ;;
  1181. x86_64:Haiku:*:*)
  1182. echo x86_64-unknown-haiku
  1183. exit ;;
  1184. SX-4:SUPER-UX:*:*)
  1185. echo sx4-nec-superux${UNAME_RELEASE}
  1186. exit ;;
  1187. SX-5:SUPER-UX:*:*)
  1188. echo sx5-nec-superux${UNAME_RELEASE}
  1189. exit ;;
  1190. SX-6:SUPER-UX:*:*)
  1191. echo sx6-nec-superux${UNAME_RELEASE}
  1192. exit ;;
  1193. SX-7:SUPER-UX:*:*)
  1194. echo sx7-nec-superux${UNAME_RELEASE}
  1195. exit ;;
  1196. SX-8:SUPER-UX:*:*)
  1197. echo sx8-nec-superux${UNAME_RELEASE}
  1198. exit ;;
  1199. SX-8R:SUPER-UX:*:*)
  1200. echo sx8r-nec-superux${UNAME_RELEASE}
  1201. exit ;;
  1202. Power*:Rhapsody:*:*)
  1203. echo powerpc-apple-rhapsody${UNAME_RELEASE}
  1204. exit ;;
  1205. *:Rhapsody:*:*)
  1206. echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
  1207. exit ;;
  1208. *:Darwin:*:*)
  1209. UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
  1210. case $UNAME_PROCESSOR in
  1211. i386)
  1212. eval $set_cc_for_build
  1213. if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
  1214. if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
  1215. (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
  1216. grep IS_64BIT_ARCH >/dev/null
  1217. then
  1218. UNAME_PROCESSOR="x86_64"
  1219. fi
  1220. fi ;;
  1221. unknown) UNAME_PROCESSOR=powerpc ;;
  1222. esac
  1223. echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
  1224. exit ;;
  1225. *:procnto*:*:* | *:QNX:[0123456789]*:*)
  1226. UNAME_PROCESSOR=`uname -p`
  1227. if test "$UNAME_PROCESSOR" = "x86"; then
  1228. UNAME_PROCESSOR=i386
  1229. UNAME_MACHINE=pc
  1230. fi
  1231. echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
  1232. exit ;;
  1233. *:QNX:*:4*)
  1234. echo i386-pc-qnx
  1235. exit ;;
  1236. NEO-?:NONSTOP_KERNEL:*:*)
  1237. echo neo-tandem-nsk${UNAME_RELEASE}
  1238. exit ;;
  1239. NSE-*:NONSTOP_KERNEL:*:*)
  1240. echo nse-tandem-nsk${UNAME_RELEASE}
  1241. exit ;;
  1242. NSR-?:NONSTOP_KERNEL:*:*)
  1243. echo nsr-tandem-nsk${UNAME_RELEASE}
  1244. exit ;;
  1245. *:NonStop-UX:*:*)
  1246. echo mips-compaq-nonstopux
  1247. exit ;;
  1248. BS2000:POSIX*:*:*)
  1249. echo bs2000-siemens-sysv
  1250. exit ;;
  1251. DS/*:UNIX_System_V:*:*)
  1252. echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
  1253. exit ;;
  1254. *:Plan9:*:*)
  1255. # "uname -m" is not consistent, so use $cputype instead. 386
  1256. # is converted to i386 for consistency with other x86
  1257. # operating systems.
  1258. if test "$cputype" = "386"; then
  1259. UNAME_MACHINE=i386
  1260. else
  1261. UNAME_MACHINE="$cputype"
  1262. fi
  1263. echo ${UNAME_MACHINE}-unknown-plan9
  1264. exit ;;
  1265. *:TOPS-10:*:*)
  1266. echo pdp10-unknown-tops10
  1267. exit ;;
  1268. *:TENEX:*:*)
  1269. echo pdp10-unknown-tenex
  1270. exit ;;
  1271. KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
  1272. echo pdp10-dec-tops20
  1273. exit ;;
  1274. XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
  1275. echo pdp10-xkl-tops20
  1276. exit ;;
  1277. *:TOPS-20:*:*)
  1278. echo pdp10-unknown-tops20
  1279. exit ;;
  1280. *:ITS:*:*)
  1281. echo pdp10-unknown-its
  1282. exit ;;
  1283. SEI:*:*:SEIUX)
  1284. echo mips-sei-seiux${UNAME_RELEASE}
  1285. exit ;;
  1286. *:DragonFly:*:*)
  1287. echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
  1288. exit ;;
  1289. *:*VMS:*:*)
  1290. UNAME_MACHINE=`(uname -p) 2>/dev/null`
  1291. case "${UNAME_MACHINE}" in
  1292. A*) echo alpha-dec-vms ; exit ;;
  1293. I*) echo ia64-dec-vms ; exit ;;
  1294. V*) echo vax-dec-vms ; exit ;;
  1295. esac ;;
  1296. *:XENIX:*:SysV)
  1297. echo i386-pc-xenix
  1298. exit ;;
  1299. i*86:skyos:*:*)
  1300. echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
  1301. exit ;;
  1302. i*86:rdos:*:*)
  1303. echo ${UNAME_MACHINE}-pc-rdos
  1304. exit ;;
  1305. i*86:AROS:*:*)
  1306. echo ${UNAME_MACHINE}-pc-aros
  1307. exit ;;
  1308. x86_64:VMkernel:*:*)
  1309. echo ${UNAME_MACHINE}-unknown-esx
  1310. exit ;;
  1311. esac
  1312. eval $set_cc_for_build
  1313. cat >$dummy.c <<EOF
  1314. #ifdef _SEQUENT_
  1315. # include <sys/types.h>
  1316. # include <sys/utsname.h>
  1317. #endif
  1318. main ()
  1319. {
  1320. #if defined (sony)
  1321. #if defined (MIPSEB)
  1322. /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
  1323. I don't know.... */
  1324. printf ("mips-sony-bsd\n"); exit (0);
  1325. #else
  1326. #include <sys/param.h>
  1327. printf ("m68k-sony-newsos%s\n",
  1328. #ifdef NEWSOS4
  1329. "4"
  1330. #else
  1331. ""
  1332. #endif
  1333. ); exit (0);
  1334. #endif
  1335. #endif
  1336. #if defined (__arm) && defined (__acorn) && defined (__unix)
  1337. printf ("arm-acorn-riscix\n"); exit (0);
  1338. #endif
  1339. #if defined (hp300) && !defined (hpux)
  1340. printf ("m68k-hp-bsd\n"); exit (0);
  1341. #endif
  1342. #if defined (NeXT)
  1343. #if !defined (__ARCHITECTURE__)
  1344. #define __ARCHITECTURE__ "m68k"
  1345. #endif
  1346. int version;
  1347. version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
  1348. if (version < 4)
  1349. printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
  1350. else
  1351. printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
  1352. exit (0);
  1353. #endif
  1354. #if defined (MULTIMAX) || defined (n16)
  1355. #if defined (UMAXV)
  1356. printf ("ns32k-encore-sysv\n"); exit (0);
  1357. #else
  1358. #if defined (CMU)
  1359. printf ("ns32k-encore-mach\n"); exit (0);
  1360. #else
  1361. printf ("ns32k-encore-bsd\n"); exit (0);
  1362. #endif
  1363. #endif
  1364. #endif
  1365. #if defined (__386BSD__)
  1366. printf ("i386-pc-bsd\n"); exit (0);
  1367. #endif
  1368. #if defined (sequent)
  1369. #if defined (i386)
  1370. printf ("i386-sequent-dynix\n"); exit (0);
  1371. #endif
  1372. #if defined (ns32000)
  1373. printf ("ns32k-sequent-dynix\n"); exit (0);
  1374. #endif
  1375. #endif
  1376. #if defined (_SEQUENT_)
  1377. struct utsname un;
  1378. uname(&un);
  1379. if (strncmp(un.version, "V2", 2) == 0) {
  1380. printf ("i386-sequent-ptx2\n"); exit (0);
  1381. }
  1382. if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
  1383. printf ("i386-sequent-ptx1\n"); exit (0);
  1384. }
  1385. printf ("i386-sequent-ptx\n"); exit (0);
  1386. #endif
  1387. #if defined (vax)
  1388. # if !defined (ultrix)
  1389. # include <sys/param.h>
  1390. # if defined (BSD)
  1391. # if BSD == 43
  1392. printf ("vax-dec-bsd4.3\n"); exit (0);
  1393. # else
  1394. # if BSD == 199006
  1395. printf ("vax-dec-bsd4.3reno\n"); exit (0);
  1396. # else
  1397. printf ("vax-dec-bsd\n"); exit (0);
  1398. # endif
  1399. # endif
  1400. # else
  1401. printf ("vax-dec-bsd\n"); exit (0);
  1402. # endif
  1403. # else
  1404. printf ("vax-dec-ultrix\n"); exit (0);
  1405. # endif
  1406. #endif
  1407. #if defined (alliant) && defined (i860)
  1408. printf ("i860-alliant-bsd\n"); exit (0);
  1409. #endif
  1410. exit (1);
  1411. }
  1412. EOF
  1413. $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
  1414. { echo "$SYSTEM_NAME"; exit; }
  1415. # Apollos put the system type in the environment.
  1416. test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
  1417. # Convex versions that predate uname can use getsysinfo(1)
  1418. if [ -x /usr/convex/getsysinfo ]
  1419. then
  1420. case `getsysinfo -f cpu_type` in
  1421. c1*)
  1422. echo c1-convex-bsd
  1423. exit ;;
  1424. c2*)
  1425. if getsysinfo -f scalar_acc
  1426. then echo c32-convex-bsd
  1427. else echo c2-convex-bsd
  1428. fi
  1429. exit ;;
  1430. c34*)
  1431. echo c34-convex-bsd
  1432. exit ;;
  1433. c38*)
  1434. echo c38-convex-bsd
  1435. exit ;;
  1436. c4*)
  1437. echo c4-convex-bsd
  1438. exit ;;
  1439. esac
  1440. fi
  1441. cat >&2 <<EOF
  1442. $0: unable to guess system type
  1443. This script, last modified $timestamp, has failed to recognize
  1444. the operating system you are using. It is advised that you
  1445. download the most up to date version of the config scripts from
  1446. http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
  1447. and
  1448. http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
  1449. If the version you run ($0) is already up to date, please
  1450. send the following data and any information you think might be
  1451. pertinent to <config-patches@gnu.org> in order to provide the needed
  1452. information to handle your system.
  1453. config.guess timestamp = $timestamp
  1454. uname -m = `(uname -m) 2>/dev/null || echo unknown`
  1455. uname -r = `(uname -r) 2>/dev/null || echo unknown`
  1456. uname -s = `(uname -s) 2>/dev/null || echo unknown`
  1457. uname -v = `(uname -v) 2>/dev/null || echo unknown`
  1458. /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
  1459. /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
  1460. hostinfo = `(hostinfo) 2>/dev/null`
  1461. /bin/universe = `(/bin/universe) 2>/dev/null`
  1462. /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
  1463. /bin/arch = `(/bin/arch) 2>/dev/null`
  1464. /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
  1465. /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
  1466. UNAME_MACHINE = ${UNAME_MACHINE}
  1467. UNAME_RELEASE = ${UNAME_RELEASE}
  1468. UNAME_SYSTEM = ${UNAME_SYSTEM}
  1469. UNAME_VERSION = ${UNAME_VERSION}
  1470. EOF
  1471. exit 1
  1472. # Local variables:
  1473. # eval: (add-hook 'write-file-hooks 'time-stamp)
  1474. # time-stamp-start: "timestamp='"
  1475. # time-stamp-format: "%:y-%02m-%02d"
  1476. # time-stamp-end: "'"
  1477. # End: