config.sub
上传用户:zm130024
上传日期:2007-01-04
资源大小:432k
文件大小:24k
源码类别:

代理服务器

开发平台:

Unix_Linux

  1. #! /bin/sh
  2. # Configuration validation subroutine script, version 1.1.
  3. #   Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc.
  4. # This file is (in principle) common to ALL GNU software.
  5. # The presence of a machine in this file suggests that SOME GNU software
  6. # can handle that machine.  It does not imply ALL GNU software can.
  7. #
  8. # This file is free software; you can redistribute it and/or modify
  9. # it under the terms of the GNU General Public License as published by
  10. # the Free Software Foundation; either version 2 of the License, or
  11. # (at your option) any later version.
  12. #
  13. # This program is distributed in the hope that it will be useful,
  14. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. # GNU General Public License for more details.
  17. #
  18. # You should have received a copy of the GNU General Public License
  19. # along with this program; if not, write to the Free Software
  20. # Foundation, Inc., 59 Temple Place - Suite 330,
  21. # Boston, MA 02111-1307, USA.
  22. # As a special exception to the GNU General Public License, if you
  23. # distribute this file as part of a program that contains a
  24. # configuration script generated by Autoconf, you may include it under
  25. # the same distribution terms that you use for the rest of that program.
  26. # Configuration subroutine to validate and canonicalize a configuration type.
  27. # Supply the specified configuration type as an argument.
  28. # If it is invalid, we print an error message on stderr and exit with code 1.
  29. # Otherwise, we print the canonical config type on stdout and succeed.
  30. # This file is supposed to be the same for all GNU packages
  31. # and recognize all the CPU types, system types and aliases
  32. # that are meaningful with *any* GNU software.
  33. # Each package is responsible for reporting which valid configurations
  34. # it does not support.  The user should be able to distinguish
  35. # a failure to support a valid configuration from a meaningless
  36. # configuration.
  37. # The goal of this file is to map all the various variations of a given
  38. # machine specification into a single specification in the form:
  39. # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
  40. # or in some cases, the newer four-part form:
  41. # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
  42. # It is wrong to echo any other type of specification.
  43. if [ x$1 = x ]
  44. then
  45. echo Configuration name missing. 1>&2
  46. echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
  47. echo "or     $0 ALIAS" 1>&2
  48. echo where ALIAS is a recognized configuration type. 1>&2
  49. exit 1
  50. fi
  51. # First pass through any local machine types.
  52. case $1 in
  53. *local*)
  54. echo $1
  55. exit 0
  56. ;;
  57. *)
  58. ;;
  59. esac
  60. # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
  61. # Here we must recognize all the valid KERNEL-OS combinations.
  62. maybe_os=`echo $1 | sed 's/^(.*)-([^-]*-[^-]*)$/2/'`
  63. case $maybe_os in
  64.   linux-gnu*)
  65.     os=-$maybe_os
  66.     basic_machine=`echo $1 | sed 's/^(.*)-([^-]*-[^-]*)$/1/'`
  67.     ;;
  68.   *)
  69.     basic_machine=`echo $1 | sed 's/-[^-]*$//'`
  70.     if [ $basic_machine != $1 ]
  71.     then os=`echo $1 | sed 's/.*-/-/'`
  72.     else os=; fi
  73.     ;;
  74. esac
  75. ### Let's recognize common machines as not being operating systems so
  76. ### that things like config.sub decstation-3100 work.  We also
  77. ### recognize some manufacturers as not being operating systems, so we
  78. ### can provide default operating systems below.
  79. case $os in
  80. -sun*os*)
  81. # Prevent following clause from handling this invalid input.
  82. ;;
  83. -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | 
  84. -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | 
  85. -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | 
  86. -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |
  87. -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | 
  88. -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | 
  89. -apple)
  90. os=
  91. basic_machine=$1
  92. ;;
  93. -sim | -cisco | -oki | -wec | -winbond)
  94. os=
  95. basic_machine=$1
  96. ;;
  97. -scout)
  98. ;;
  99. -wrs)
  100. os=vxworks
  101. basic_machine=$1
  102. ;;
  103. -hiux*)
  104. os=-hiuxwe2
  105. ;;
  106. -sco5)
  107. os=-sco3.2v5
  108. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  109. ;;
  110. -sco4)
  111. os=-sco3.2v4
  112. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  113. ;;
  114. -sco3.2.[4-9]*)
  115. os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
  116. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  117. ;;
  118. -sco3.2v[4-9]*)
  119. # Don't forget version if it is 3.2v4 or newer.
  120. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  121. ;;
  122. -sco*)
  123. os=-sco3.2v2
  124. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  125. ;;
  126. -udk*)
  127. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  128. ;;
  129. -isc)
  130. os=-isc2.2
  131. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  132. ;;
  133. -clix*)
  134. basic_machine=clipper-intergraph
  135. ;;
  136. -isc*)
  137. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  138. ;;
  139. -lynx*)
  140. os=-lynxos
  141. ;;
  142. -ptx*)
  143. basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
  144. ;;
  145. -windowsnt*)
  146. os=`echo $os | sed -e 's/windowsnt/winnt/'`
  147. ;;
  148. -psos*)
  149. os=-psos
  150. ;;
  151. esac
  152. # Decode aliases for certain CPU-COMPANY combinations.
  153. case $basic_machine in
  154. # Recognize the basic CPU types without company name.
  155. # Some are omitted here because they have special meanings below.
  156. tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm 
  157. | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k 
  158. | 580 | i960 | h8300 
  159. | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n 
  160. | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] 
  161. | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle 
  162. | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el 
  163. | mips64orion | mips64orionel | mipstx39 | mipstx39el 
  164. | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el 
  165. | mips64vr5000 | miprs64vr5000el 
  166. | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x 
  167. | thumb | d10v)
  168. basic_machine=$basic_machine-unknown
  169. ;;
  170. m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65)
  171. ;;
  172. # We use `pc' rather than `unknown'
  173. # because (1) that's what they normally are, and
  174. # (2) the word "unknown" tends to confuse beginning users.
  175. i[34567]86)
  176.   basic_machine=$basic_machine-pc
  177.   ;;
  178. # Object if more than one company name word.
  179. *-*-*)
  180. echo Invalid configuration `$1': machine `$basic_machine' not recognized 1>&2
  181. exit 1
  182. ;;
  183. # Recognize the basic CPU types with company name.
  184. vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* 
  185.       | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* 
  186.       | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* 
  187.       | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* 
  188.       | xmp-* | ymp-* 
  189.       | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* 
  190.       | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* 
  191.       | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* 
  192.       | clipper-* | orion-* 
  193.       | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* 
  194.       | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* 
  195.       | mips64el-* | mips64orion-* | mips64orionel-* 
  196.       | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* 
  197.       | mipstx39-* | mipstx39el-* 
  198.       | f301-* | armv*-* | t3e-* 
  199.       | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* 
  200.       | thumb-* | v850-* | d30v-* | tic30-* | c30-* )
  201. ;;
  202. # Recognize the various machine names and aliases which stand
  203. # for a CPU type and a company and sometimes even an OS.
  204. 386bsd)
  205. basic_machine=i386-unknown
  206. os=-bsd
  207. ;;
  208. 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
  209. basic_machine=m68000-att
  210. ;;
  211. 3b*)
  212. basic_machine=we32k-att
  213. ;;
  214. a29khif)
  215. basic_machine=a29k-amd
  216. os=-udi
  217. ;;
  218. adobe68k)
  219. basic_machine=m68010-adobe
  220. os=-scout
  221. ;;
  222. alliant | fx80)
  223. basic_machine=fx80-alliant
  224. ;;
  225. altos | altos3068)
  226. basic_machine=m68k-altos
  227. ;;
  228. am29k)
  229. basic_machine=a29k-none
  230. os=-bsd
  231. ;;
  232. amdahl)
  233. basic_machine=580-amdahl
  234. os=-sysv
  235. ;;
  236. amiga | amiga-*)
  237. basic_machine=m68k-cbm
  238. ;;
  239. amigaos | amigados)
  240. basic_machine=m68k-cbm
  241. os=-amigaos
  242. ;;
  243. amigaunix | amix)
  244. basic_machine=m68k-cbm
  245. os=-sysv4
  246. ;;
  247. apollo68)
  248. basic_machine=m68k-apollo
  249. os=-sysv
  250. ;;
  251. apollo68bsd)
  252. basic_machine=m68k-apollo
  253. os=-bsd
  254. ;;
  255. aux)
  256. basic_machine=m68k-apple
  257. os=-aux
  258. ;;
  259. balance)
  260. basic_machine=ns32k-sequent
  261. os=-dynix
  262. ;;
  263. convex-c1)
  264. basic_machine=c1-convex
  265. os=-bsd
  266. ;;
  267. convex-c2)
  268. basic_machine=c2-convex
  269. os=-bsd
  270. ;;
  271. convex-c32)
  272. basic_machine=c32-convex
  273. os=-bsd
  274. ;;
  275. convex-c34)
  276. basic_machine=c34-convex
  277. os=-bsd
  278. ;;
  279. convex-c38)
  280. basic_machine=c38-convex
  281. os=-bsd
  282. ;;
  283. cray | ymp)
  284. basic_machine=ymp-cray
  285. os=-unicos
  286. ;;
  287. cray2)
  288. basic_machine=cray2-cray
  289. os=-unicos
  290. ;;
  291. [ctj]90-cray)
  292. basic_machine=c90-cray
  293. os=-unicos
  294. ;;
  295. crds | unos)
  296. basic_machine=m68k-crds
  297. ;;
  298. da30 | da30-*)
  299. basic_machine=m68k-da30
  300. ;;
  301. decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
  302. basic_machine=mips-dec
  303. ;;
  304. delta | 3300 | motorola-3300 | motorola-delta 
  305.       | 3300-motorola | delta-motorola)
  306. basic_machine=m68k-motorola
  307. ;;
  308. delta88)
  309. basic_machine=m88k-motorola
  310. os=-sysv3
  311. ;;
  312. dpx20 | dpx20-*)
  313. basic_machine=rs6000-bull
  314. os=-bosx
  315. ;;
  316. dpx2* | dpx2*-bull)
  317. basic_machine=m68k-bull
  318. os=-sysv3
  319. ;;
  320. ebmon29k)
  321. basic_machine=a29k-amd
  322. os=-ebmon
  323. ;;
  324. elxsi)
  325. basic_machine=elxsi-elxsi
  326. os=-bsd
  327. ;;
  328. encore | umax | mmax)
  329. basic_machine=ns32k-encore
  330. ;;
  331. es1800 | OSE68k | ose68k | ose | OSE)
  332. basic_machine=m68k-ericsson
  333. os=-ose
  334. ;;
  335. fx2800)
  336. basic_machine=i860-alliant
  337. ;;
  338. genix)
  339. basic_machine=ns32k-ns
  340. ;;
  341. gmicro)
  342. basic_machine=tron-gmicro
  343. os=-sysv
  344. ;;
  345. h3050r* | hiux*)
  346. basic_machine=hppa1.1-hitachi
  347. os=-hiuxwe2
  348. ;;
  349. h8300hms)
  350. basic_machine=h8300-hitachi
  351. os=-hms
  352. ;;
  353. h8300xray)
  354. basic_machine=h8300-hitachi
  355. os=-xray
  356. ;;
  357. h8500hms)
  358. basic_machine=h8500-hitachi
  359. os=-hms
  360. ;;
  361. harris)
  362. basic_machine=m88k-harris
  363. os=-sysv3
  364. ;;
  365. hp300-*)
  366. basic_machine=m68k-hp
  367. ;;
  368. hp300bsd)
  369. basic_machine=m68k-hp
  370. os=-bsd
  371. ;;
  372. hp300hpux)
  373. basic_machine=m68k-hp
  374. os=-hpux
  375. ;;
  376. hp3k9[0-9][0-9] | hp9[0-9][0-9])
  377. basic_machine=hppa1.0-hp
  378. ;;
  379. hp9k2[0-9][0-9] | hp9k31[0-9])
  380. basic_machine=m68000-hp
  381. ;;
  382. hp9k3[2-9][0-9])
  383. basic_machine=m68k-hp
  384. ;;
  385. hp9k6[0-9][0-9] | hp6[0-9][0-9])
  386. basic_machine=hppa1.0-hp
  387. ;;
  388. hp9k7[0-79][0-9] | hp7[0-79][0-9])
  389. basic_machine=hppa1.1-hp
  390. ;;
  391. hp9k78[0-9] | hp78[0-9])
  392. # FIXME: really hppa2.0-hp
  393. basic_machine=hppa1.1-hp
  394. ;;
  395. hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
  396. # FIXME: really hppa2.0-hp
  397. basic_machine=hppa1.1-hp
  398. ;;
  399. hp9k8[0-9][13679] | hp8[0-9][13679])
  400. basic_machine=hppa1.1-hp
  401. ;;
  402. hp9k8[0-9][0-9] | hp8[0-9][0-9])
  403. basic_machine=hppa1.0-hp
  404. ;;
  405. hppa-next)
  406. os=-nextstep3
  407. ;;
  408. hppaosf)
  409. basic_machine=hppa1.1-hp
  410. os=-osf
  411. ;;
  412. hppro)
  413. basic_machine=hppa1.1-hp
  414. os=-proelf
  415. ;;
  416. i370-ibm* | ibm*)
  417. basic_machine=i370-ibm
  418. os=-mvs
  419. ;;
  420. # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
  421. i[34567]86v32)
  422. basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  423. os=-sysv32
  424. ;;
  425. i[34567]86v4*)
  426. basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  427. os=-sysv4
  428. ;;
  429. i[34567]86v)
  430. basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  431. os=-sysv
  432. ;;
  433. i[34567]86sol2)
  434. basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  435. os=-solaris2
  436. ;;
  437. i386mach)
  438. basic_machine=i386-mach
  439. os=-mach
  440. ;;
  441. i386-vsta | vsta)
  442. basic_machine=i386-unknown
  443. os=-vsta
  444. ;;
  445. i386-go32 | go32)
  446. basic_machine=i386-unknown
  447. os=-go32
  448. ;;
  449. i386-mingw32 | mingw32)
  450. basic_machine=i386-unknown
  451. os=-mingw32
  452. ;;
  453. iris | iris4d)
  454. basic_machine=mips-sgi
  455. case $os in
  456.     -irix*)
  457. ;;
  458.     *)
  459. os=-irix4
  460. ;;
  461. esac
  462. ;;
  463. isi68 | isi)
  464. basic_machine=m68k-isi
  465. os=-sysv
  466. ;;
  467. m88k-omron*)
  468. basic_machine=m88k-omron
  469. ;;
  470. magnum | m3230)
  471. basic_machine=mips-mips
  472. os=-sysv
  473. ;;
  474. merlin)
  475. basic_machine=ns32k-utek
  476. os=-sysv
  477. ;;
  478. miniframe)
  479. basic_machine=m68000-convergent
  480. ;;
  481. *mint | *MiNT)
  482. basic_machine=m68k-atari
  483. os=-mint
  484. ;;
  485. mipsel*-linux*)
  486. basic_machine=mipsel-unknown
  487. os=-linux-gnu
  488. ;;
  489. mips*-linux*)
  490. basic_machine=mips-unknown
  491. os=-linux-gnu
  492. ;;
  493. mips3*-*)
  494. basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
  495. ;;
  496. mips3*)
  497. basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
  498. ;;
  499. monitor)
  500. basic_machine=m68k-rom68k
  501. os=-coff
  502. ;;
  503. msdos)
  504. basic_machine=i386-unknown
  505. os=-msdos
  506. ;;
  507. ncr3000)
  508. basic_machine=i486-ncr
  509. os=-sysv4
  510. ;;
  511. netbsd386)
  512. basic_machine=i386-unknown
  513. os=-netbsd
  514. ;;
  515. netwinder)
  516. basic_machine=armv4l-corel
  517. os=-linux
  518. ;;
  519. news | news700 | news800 | news900)
  520. basic_machine=m68k-sony
  521. os=-newsos
  522. ;;
  523. news1000)
  524. basic_machine=m68030-sony
  525. os=-newsos
  526. ;;
  527. news-3600 | risc-news)
  528. basic_machine=mips-sony
  529. os=-newsos
  530. ;;
  531. necv70)
  532. basic_machine=v70-nec
  533. os=-sysv
  534. ;;
  535. next | m*-next )
  536. basic_machine=m68k-next
  537. case $os in
  538.     -nextstep* )
  539. ;;
  540.     -ns2*)
  541.       os=-nextstep2
  542. ;;
  543.     *)
  544.       os=-nextstep3
  545. ;;
  546. esac
  547. ;;
  548. nh3000)
  549. basic_machine=m68k-harris
  550. os=-cxux
  551. ;;
  552. nh[45]000)
  553. basic_machine=m88k-harris
  554. os=-cxux
  555. ;;
  556. nindy960)
  557. basic_machine=i960-intel
  558. os=-nindy
  559. ;;
  560. mon960)
  561. basic_machine=i960-intel
  562. os=-mon960
  563. ;;
  564. np1)
  565. basic_machine=np1-gould
  566. ;;
  567. op50n-* | op60c-*)
  568. basic_machine=hppa1.1-oki
  569. os=-proelf
  570. ;;
  571. OSE68000 | ose68000)
  572. basic_machine=m68000-ericsson
  573. os=-ose
  574. ;;
  575. os68k)
  576. basic_machine=m68k-none
  577. os=-os68k
  578. ;;
  579. pa-hitachi)
  580. basic_machine=hppa1.1-hitachi
  581. os=-hiuxwe2
  582. ;;
  583. paragon)
  584. basic_machine=i860-intel
  585. os=-osf
  586. ;;
  587. pbd)
  588. basic_machine=sparc-tti
  589. ;;
  590. pbb)
  591. basic_machine=m68k-tti
  592. ;;
  593.         pc532 | pc532-*)
  594. basic_machine=ns32k-pc532
  595. ;;
  596. pentium | p5 | k5 | k6 | nexen)
  597. basic_machine=i586-pc
  598. ;;
  599. pentiumpro | p6 | 6x86)
  600. basic_machine=i686-pc
  601. ;;
  602. pentiumii | pentium2)
  603. basic_machine=i786-pc
  604. ;;
  605. pentium-* | p5-* | k5-* | k6-* | nexen-*)
  606. basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
  607. ;;
  608. pentiumpro-* | p6-* | 6x86-*)
  609. basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
  610. ;;
  611. pentiumii-* | pentium2-*)
  612. basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
  613. ;;
  614. pn)
  615. basic_machine=pn-gould
  616. ;;
  617. power) basic_machine=rs6000-ibm
  618. ;;
  619. ppc) basic_machine=powerpc-unknown
  620.         ;;
  621. ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
  622. ;;
  623. ppcle | powerpclittle | ppc-le | powerpc-little)
  624. basic_machine=powerpcle-unknown
  625.         ;;
  626. ppcle-* | powerpclittle-*)
  627. basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
  628. ;;
  629. ps2)
  630. basic_machine=i386-ibm
  631. ;;
  632. rom68k)
  633. basic_machine=m68k-rom68k
  634. os=-coff
  635. ;;
  636. rm[46]00)
  637. basic_machine=mips-siemens
  638. ;;
  639. rtpc | rtpc-*)
  640. basic_machine=romp-ibm
  641. ;;
  642. sa29200)
  643. basic_machine=a29k-amd
  644. os=-udi
  645. ;;
  646. sequent)
  647. basic_machine=i386-sequent
  648. ;;
  649. sh)
  650. basic_machine=sh-hitachi
  651. os=-hms
  652. ;;
  653. sparclite-wrs)
  654. basic_machine=sparclite-wrs
  655. os=-vxworks
  656. ;;
  657. sps7)
  658. basic_machine=m68k-bull
  659. os=-sysv2
  660. ;;
  661. spur)
  662. basic_machine=spur-unknown
  663. ;;
  664. st2000)
  665. basic_machine=m68k-tandem
  666. ;;
  667. stratus)
  668. basic_machine=i860-stratus
  669. os=-sysv4
  670. ;;
  671. sun2)
  672. basic_machine=m68000-sun
  673. ;;
  674. sun2os3)
  675. basic_machine=m68000-sun
  676. os=-sunos3
  677. ;;
  678. sun2os4)
  679. basic_machine=m68000-sun
  680. os=-sunos4
  681. ;;
  682. sun3os3)
  683. basic_machine=m68k-sun
  684. os=-sunos3
  685. ;;
  686. sun3os4)
  687. basic_machine=m68k-sun
  688. os=-sunos4
  689. ;;
  690. sun4os3)
  691. basic_machine=sparc-sun
  692. os=-sunos3
  693. ;;
  694. sun4os4)
  695. basic_machine=sparc-sun
  696. os=-sunos4
  697. ;;
  698. sun4sol2)
  699. basic_machine=sparc-sun
  700. os=-solaris2
  701. ;;
  702. sun3 | sun3-*)
  703. basic_machine=m68k-sun
  704. ;;
  705. sun4)
  706. basic_machine=sparc-sun
  707. ;;
  708. sun386 | sun386i | roadrunner)
  709. basic_machine=i386-sun
  710. ;;
  711. symmetry)
  712. basic_machine=i386-sequent
  713. os=-dynix
  714. ;;
  715. t3e)
  716. basic_machine=t3e-cray
  717. os=-unicos
  718. ;;
  719. tx39)
  720. basic_machine=mipstx39-unknown
  721. ;;
  722. tx39el)
  723. basic_machine=mipstx39el-unknown
  724. ;;
  725. tower | tower-32)
  726. basic_machine=m68k-ncr
  727. ;;
  728. udi29k)
  729. basic_machine=a29k-amd
  730. os=-udi
  731. ;;
  732. ultra3)
  733. basic_machine=a29k-nyu
  734. os=-sym1
  735. ;;
  736. v810 | necv810)
  737. basic_machine=v810-nec
  738. os=-none
  739. ;;
  740. vaxv)
  741. basic_machine=vax-dec
  742. os=-sysv
  743. ;;
  744. vms)
  745. basic_machine=vax-dec
  746. os=-vms
  747. ;;
  748. vpp*|vx|vx-*)
  749.                basic_machine=f301-fujitsu
  750.                ;;
  751. vxworks960)
  752. basic_machine=i960-wrs
  753. os=-vxworks
  754. ;;
  755. vxworks68)
  756. basic_machine=m68k-wrs
  757. os=-vxworks
  758. ;;
  759. vxworks29k)
  760. basic_machine=a29k-wrs
  761. os=-vxworks
  762. ;;
  763. w65*)
  764. basic_machine=w65-wdc
  765. os=-none
  766. ;;
  767. w89k-*)
  768. basic_machine=hppa1.1-winbond
  769. os=-proelf
  770. ;;
  771. xmp)
  772. basic_machine=xmp-cray
  773. os=-unicos
  774. ;;
  775.         xps | xps100)
  776. basic_machine=xps100-honeywell
  777. ;;
  778. z8k-*-coff)
  779. basic_machine=z8k-unknown
  780. os=-sim
  781. ;;
  782. none)
  783. basic_machine=none-none
  784. os=-none
  785. ;;
  786. # Here we handle the default manufacturer of certain CPU types.  It is in
  787. # some cases the only manufacturer, in others, it is the most popular.
  788. w89k)
  789. basic_machine=hppa1.1-winbond
  790. ;;
  791. op50n)
  792. basic_machine=hppa1.1-oki
  793. ;;
  794. op60c)
  795. basic_machine=hppa1.1-oki
  796. ;;
  797. mips)
  798. if [ x$os = x-linux-gnu ]; then
  799. basic_machine=mips-unknown
  800. else
  801. basic_machine=mips-mips
  802. fi
  803. ;;
  804. romp)
  805. basic_machine=romp-ibm
  806. ;;
  807. rs6000)
  808. basic_machine=rs6000-ibm
  809. ;;
  810. vax)
  811. basic_machine=vax-dec
  812. ;;
  813. pdp11)
  814. basic_machine=pdp11-dec
  815. ;;
  816. we32k)
  817. basic_machine=we32k-att
  818. ;;
  819. sparc | sparcv9)
  820. basic_machine=sparc-sun
  821. ;;
  822.         cydra)
  823. basic_machine=cydra-cydrome
  824. ;;
  825. orion)
  826. basic_machine=orion-highlevel
  827. ;;
  828. orion105)
  829. basic_machine=clipper-highlevel
  830. ;;
  831. mac | mpw | mac-mpw)
  832. basic_machine=m68k-apple
  833. ;;
  834. pmac | pmac-mpw)
  835. basic_machine=powerpc-apple
  836. ;;
  837. c4x*)
  838. basic_machine=c4x-none
  839. os=-coff
  840. ;;
  841. *)
  842. echo Invalid configuration `$1': machine `$basic_machine' not recognized 1>&2
  843. exit 1
  844. ;;
  845. esac
  846. # Here we canonicalize certain aliases for manufacturers.
  847. case $basic_machine in
  848. *-digital*)
  849. basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
  850. ;;
  851. *-commodore*)
  852. basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
  853. ;;
  854. *)
  855. ;;
  856. esac
  857. # Decode manufacturer-specific aliases for certain operating systems.
  858. if [ x"$os" != x"" ]
  859. then
  860. case $os in
  861.         # First match some system type aliases
  862.         # that might get confused with valid system types.
  863. # -solaris* is a basic system type, with this one exception.
  864. -solaris1 | -solaris1.*)
  865. os=`echo $os | sed -e 's|solaris1|sunos4|'`
  866. ;;
  867. -solaris)
  868. os=-solaris2
  869. ;;
  870. -svr4*)
  871. os=-sysv4
  872. ;;
  873. -unixware*)
  874. os=-sysv4.2uw
  875. ;;
  876. -gnu/linux*)
  877. os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
  878. ;;
  879. # First accept the basic system types.
  880. # The portable systems comes first.
  881. # Each alternative MUST END IN A *, to match a version number.
  882. # -sysv* is not here because it comes later, after sysvr4.
  883. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* 
  884.       | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*
  885.       | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* 
  886.       | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* 
  887.       | -aos* 
  888.       | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* 
  889.       | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* 
  890.       | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* 
  891.       | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* 
  892.       | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* 
  893.       | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* 
  894.       | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* 
  895.       | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* 
  896.       | -interix* | -uwin* | -rhapsody* | -openstep* | -oskit*)
  897. # Remember, each alternative MUST END IN *, to match a version number.
  898. ;;
  899. -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* 
  900.       | -windows* | -osx | -abug | -netware* | -os9* | -beos* 
  901.       | -macos* | -mpw* | -magic* | -mon960* | -lnews*)
  902. ;;
  903. -mac*)
  904. os=`echo $os | sed -e 's|mac|macos|'`
  905. ;;
  906. -linux*)
  907. os=`echo $os | sed -e 's|linux|linux-gnu|'`
  908. ;;
  909. -sunos5*)
  910. os=`echo $os | sed -e 's|sunos5|solaris2|'`
  911. ;;
  912. -sunos6*)
  913. os=`echo $os | sed -e 's|sunos6|solaris3|'`
  914. ;;
  915. -osfrose*)
  916. os=-osfrose
  917. ;;
  918. -osf*)
  919. os=-osf
  920. ;;
  921. -utek*)
  922. os=-bsd
  923. ;;
  924. -dynix*)
  925. os=-bsd
  926. ;;
  927. -acis*)
  928. os=-aos
  929. ;;
  930. -386bsd)
  931. os=-bsd
  932. ;;
  933. -ctix* | -uts*)
  934. os=-sysv
  935. ;;
  936. -ns2 )
  937.         os=-nextstep2
  938. ;;
  939. # Preserve the version number of sinix5.
  940. -sinix5.*)
  941. os=`echo $os | sed -e 's|sinix|sysv|'`
  942. ;;
  943. -sinix*)
  944. os=-sysv4
  945. ;;
  946. -triton*)
  947. os=-sysv3
  948. ;;
  949. -oss*)
  950. os=-sysv3
  951. ;;
  952. -svr4)
  953. os=-sysv4
  954. ;;
  955. -svr3)
  956. os=-sysv3
  957. ;;
  958. -sysvr4)
  959. os=-sysv4
  960. ;;
  961. # This must come after -sysvr4.
  962. -sysv*)
  963. ;;
  964. -ose*)
  965. os=-ose
  966. ;;
  967. -es1800*)
  968. os=-ose
  969. ;;
  970. -xenix)
  971. os=-xenix
  972. ;;
  973.         -*mint | -*MiNT)
  974.         os=-mint
  975. ;;
  976. -none)
  977. ;;
  978. *)
  979. # Get rid of the `-' at the beginning of $os.
  980. os=`echo $os | sed 's/[^-]*-//'`
  981. echo Invalid configuration `$1': system `$os' not recognized 1>&2
  982. exit 1
  983. ;;
  984. esac
  985. else
  986. # Here we handle the default operating systems that come with various machines.
  987. # The value should be what the vendor currently ships out the door with their
  988. # machine or put another way, the most popular os provided with the machine.
  989. # Note that if you're going to try to match "-MANUFACTURER" here (say,
  990. # "-sun"), then you have to tell the case statement up towards the top
  991. # that MANUFACTURER isn't an operating system.  Otherwise, code above
  992. # will signal an error saying that MANUFACTURER isn't an operating
  993. # system, and we'll never get to this point.
  994. case $basic_machine in
  995. *-acorn)
  996. os=-riscix1.2
  997. ;;
  998. arm*-corel)
  999. os=-linux
  1000. ;;
  1001. arm*-semi)
  1002. os=-aout
  1003. ;;
  1004.         pdp11-*)
  1005. os=-none
  1006. ;;
  1007. *-dec | vax-*)
  1008. os=-ultrix4.2
  1009. ;;
  1010. m68*-apollo)
  1011. os=-domain
  1012. ;;
  1013. i386-sun)
  1014. os=-sunos4.0.2
  1015. ;;
  1016. m68000-sun)
  1017. os=-sunos3
  1018. # This also exists in the configure program, but was not the
  1019. # default.
  1020. # os=-sunos4
  1021. ;;
  1022. m68*-cisco)
  1023. os=-aout
  1024. ;;
  1025. mips*-cisco)
  1026. os=-elf
  1027. ;;
  1028. mips*-*)
  1029. os=-elf
  1030. ;;
  1031. *-tti) # must be before sparc entry or we get the wrong os.
  1032. os=-sysv3
  1033. ;;
  1034. sparc-* | *-sun)
  1035. os=-sunos4.1.1
  1036. ;;
  1037. *-be)
  1038. os=-beos
  1039. ;;
  1040. *-ibm)
  1041. os=-aix
  1042. ;;
  1043. *-wec)
  1044. os=-proelf
  1045. ;;
  1046. *-winbond)
  1047. os=-proelf
  1048. ;;
  1049. *-oki)
  1050. os=-proelf
  1051. ;;
  1052. *-hp)
  1053. os=-hpux
  1054. ;;
  1055. *-hitachi)
  1056. os=-hiux
  1057. ;;
  1058. i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
  1059. os=-sysv
  1060. ;;
  1061. *-cbm)
  1062. os=-amigaos
  1063. ;;
  1064. *-dg)
  1065. os=-dgux
  1066. ;;
  1067. *-dolphin)
  1068. os=-sysv3
  1069. ;;
  1070. m68k-ccur)
  1071. os=-rtu
  1072. ;;
  1073. m88k-omron*)
  1074. os=-luna
  1075. ;;
  1076. *-next )
  1077. os=-nextstep
  1078. ;;
  1079. *-sequent)
  1080. os=-ptx
  1081. ;;
  1082. *-crds)
  1083. os=-unos
  1084. ;;
  1085. *-ns)
  1086. os=-genix
  1087. ;;
  1088. i370-*)
  1089. os=-mvs
  1090. ;;
  1091. *-next)
  1092. os=-nextstep3
  1093. ;;
  1094.         *-gould)
  1095. os=-sysv
  1096. ;;
  1097.         *-highlevel)
  1098. os=-bsd
  1099. ;;
  1100. *-encore)
  1101. os=-bsd
  1102. ;;
  1103.         *-sgi)
  1104. os=-irix
  1105. ;;
  1106.         *-siemens)
  1107. os=-sysv4
  1108. ;;
  1109. *-masscomp)
  1110. os=-rtu
  1111. ;;
  1112. f301-fujitsu)
  1113. os=-uxpv
  1114. ;;
  1115. *-rom68k)
  1116. os=-coff
  1117. ;;
  1118. *-*bug)
  1119. os=-coff
  1120. ;;
  1121. *-apple)
  1122. os=-macos
  1123. ;;
  1124. *-atari*)
  1125. os=-mint
  1126. ;;
  1127. *)
  1128. os=-none
  1129. ;;
  1130. esac
  1131. fi
  1132. # Here we handle the case where we know the os, and the CPU type, but not the
  1133. # manufacturer.  We pick the logical manufacturer.
  1134. vendor=unknown
  1135. case $basic_machine in
  1136. *-unknown)
  1137. case $os in
  1138. -riscix*)
  1139. vendor=acorn
  1140. ;;
  1141. -sunos*)
  1142. vendor=sun
  1143. ;;
  1144. -aix*)
  1145. vendor=ibm
  1146. ;;
  1147. -beos*)
  1148. vendor=be
  1149. ;;
  1150. -hpux*)
  1151. vendor=hp
  1152. ;;
  1153. -mpeix*)
  1154. vendor=hp
  1155. ;;
  1156. -hiux*)
  1157. vendor=hitachi
  1158. ;;
  1159. -unos*)
  1160. vendor=crds
  1161. ;;
  1162. -dgux*)
  1163. vendor=dg
  1164. ;;
  1165. -luna*)
  1166. vendor=omron
  1167. ;;
  1168. -genix*)
  1169. vendor=ns
  1170. ;;
  1171. -mvs*)
  1172. vendor=ibm
  1173. ;;
  1174. -ptx*)
  1175. vendor=sequent
  1176. ;;
  1177. -vxsim* | -vxworks*)
  1178. vendor=wrs
  1179. ;;
  1180. -aux*)
  1181. vendor=apple
  1182. ;;
  1183. -hms*)
  1184. vendor=hitachi
  1185. ;;
  1186. -mpw* | -macos*)
  1187. vendor=apple
  1188. ;;
  1189. -*mint | -*MiNT)
  1190. vendor=atari
  1191. ;;
  1192. esac
  1193. basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
  1194. ;;
  1195. esac
  1196. echo $basic_machine$os