ffi 1.9.21 → 1.9.22

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of ffi might be problematic. Click here for more details.

Files changed (151) hide show
  1. checksums.yaml +5 -5
  2. checksums.yaml.gz.sig +3 -0
  3. data.tar.gz.sig +0 -0
  4. data/.gitignore +22 -0
  5. data/.gitmodules +3 -0
  6. data/.travis.yml +52 -0
  7. data/.yardopts +5 -0
  8. data/Gemfile +15 -0
  9. data/{spec/ffi/LICENSE.SPECS → LICENSE.SPECS} +1 -1
  10. data/README.md +1 -1
  11. data/Rakefile +28 -3
  12. data/appveyor.yml +22 -0
  13. data/ext/ffi_c/Call.c +1 -22
  14. data/ext/ffi_c/Call.h +0 -9
  15. data/ext/ffi_c/Closure.c +54 -0
  16. data/ext/ffi_c/{ClosurePool.h → Closure.h} +13 -23
  17. data/ext/ffi_c/Function.c +16 -25
  18. data/ext/ffi_c/Function.h +1 -2
  19. data/ext/ffi_c/FunctionInfo.c +0 -4
  20. data/ext/ffi_c/MethodHandle.c +33 -268
  21. data/ext/ffi_c/extconf.rb +3 -3
  22. data/ext/ffi_c/ffi.c +2 -2
  23. data/ext/ffi_c/libffi.bsd.mk +3 -3
  24. data/ext/ffi_c/libffi.darwin.mk +1 -1
  25. data/ext/ffi_c/libffi.gnu.mk +1 -1
  26. data/ext/ffi_c/libffi.mk +2 -2
  27. data/ext/ffi_c/libffi.vc.mk +1 -1
  28. data/ext/ffi_c/libffi.vc64.mk +1 -1
  29. data/ext/ffi_c/libffi/.appveyor.yml +48 -0
  30. data/ext/ffi_c/libffi/.gitignore +36 -0
  31. data/ext/ffi_c/libffi/.travis.yml +30 -0
  32. data/ext/ffi_c/libffi/.travis/install.sh +14 -0
  33. data/ext/ffi_c/libffi/Makefile.am +5 -3
  34. data/ext/ffi_c/libffi/acinclude.m4 +6 -0
  35. data/ext/ffi_c/libffi/autogen.sh +1 -1
  36. data/ext/ffi_c/libffi/config.guess +1466 -0
  37. data/ext/ffi_c/libffi/config.sub +1836 -0
  38. data/ext/ffi_c/libffi/configure.ac +2 -2
  39. data/ext/ffi_c/libffi/configure.host +15 -3
  40. data/ext/ffi_c/libffi/generate-darwin-source-and-headers.py +11 -15
  41. data/ext/ffi_c/libffi/include/ffi.h.in +6 -1
  42. data/ext/ffi_c/libffi/libffi.xcodeproj/project.pbxproj +465 -59
  43. data/ext/ffi_c/libffi/src/aarch64/ffi.c +33 -10
  44. data/ext/ffi_c/libffi/src/aarch64/sysv.S +2 -2
  45. data/ext/ffi_c/libffi/src/arm/ffi.c +12 -1
  46. data/ext/ffi_c/libffi/src/arm/sysv.S +1 -1
  47. data/ext/ffi_c/libffi/src/closures.c +143 -97
  48. data/ext/ffi_c/libffi/src/ia64/unix.S +2 -0
  49. data/ext/ffi_c/libffi/src/mips/ffi.c +8 -0
  50. data/ext/ffi_c/libffi/src/mips/ffitarget.h +1 -1
  51. data/ext/ffi_c/libffi/src/mips/n32.S +2 -0
  52. data/ext/ffi_c/libffi/src/powerpc/aix.S +239 -1
  53. data/ext/ffi_c/libffi/src/powerpc/aix_closure.S +250 -3
  54. data/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +86 -5
  55. data/ext/ffi_c/libffi/src/powerpc/ffitarget.h +3 -0
  56. data/ext/ffi_c/libffi/src/x86/ffi.c +3 -1
  57. data/ext/ffi_c/libffi/src/x86/ffi64.c +26 -5
  58. data/ext/ffi_c/libffi/src/x86/sysv.S +2 -2
  59. data/ext/ffi_c/libffi/src/x86/unix64.S +1 -1
  60. data/ext/ffi_c/libffi/src/x86/win64.S +1 -1
  61. data/ext/ffi_c/libffi/testsuite/Makefile.am +2 -1
  62. data/ext/ffi_c/libffi/testsuite/lib/libffi.exp +2 -1
  63. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_3float.c +95 -0
  64. data/ffi.gemspec +14 -1
  65. data/lib/ffi/library.rb +1 -1
  66. data/lib/ffi/version.rb +1 -1
  67. data/samples/getlogin.rb +8 -0
  68. data/samples/getpid.rb +8 -0
  69. data/samples/gettimeofday.rb +18 -0
  70. data/samples/hello.rb +7 -0
  71. data/samples/inotify.rb +60 -0
  72. data/samples/pty.rb +76 -0
  73. data/samples/qsort.rb +21 -0
  74. data/samples/sample_helper.rb +6 -0
  75. metadata +59 -81
  76. metadata.gz.sig +0 -0
  77. data/ext/ffi_c/ClosurePool.c +0 -283
  78. data/gen/Rakefile +0 -30
  79. data/libtest/Benchmark.c +0 -52
  80. data/libtest/BoolTest.c +0 -34
  81. data/libtest/BufferTest.c +0 -31
  82. data/libtest/ClosureTest.c +0 -205
  83. data/libtest/EnumTest.c +0 -51
  84. data/libtest/FunctionTest.c +0 -70
  85. data/libtest/GNUmakefile +0 -149
  86. data/libtest/GlobalVariable.c +0 -62
  87. data/libtest/LastErrorTest.c +0 -21
  88. data/libtest/NumberTest.c +0 -132
  89. data/libtest/PointerTest.c +0 -63
  90. data/libtest/ReferenceTest.c +0 -23
  91. data/libtest/StringTest.c +0 -34
  92. data/libtest/StructTest.c +0 -243
  93. data/libtest/UnionTest.c +0 -43
  94. data/libtest/VariadicTest.c +0 -99
  95. data/spec/ffi/async_callback_spec.rb +0 -35
  96. data/spec/ffi/bitmask_spec.rb +0 -575
  97. data/spec/ffi/bool_spec.rb +0 -32
  98. data/spec/ffi/buffer_spec.rb +0 -279
  99. data/spec/ffi/callback_spec.rb +0 -773
  100. data/spec/ffi/custom_param_type.rb +0 -37
  101. data/spec/ffi/custom_type_spec.rb +0 -74
  102. data/spec/ffi/dup_spec.rb +0 -52
  103. data/spec/ffi/enum_spec.rb +0 -423
  104. data/spec/ffi/errno_spec.rb +0 -20
  105. data/spec/ffi/ffi_spec.rb +0 -28
  106. data/spec/ffi/fixtures/Benchmark.c +0 -52
  107. data/spec/ffi/fixtures/BitmaskTest.c +0 -51
  108. data/spec/ffi/fixtures/BoolTest.c +0 -34
  109. data/spec/ffi/fixtures/BufferTest.c +0 -31
  110. data/spec/ffi/fixtures/ClosureTest.c +0 -205
  111. data/spec/ffi/fixtures/EnumTest.c +0 -51
  112. data/spec/ffi/fixtures/FunctionTest.c +0 -142
  113. data/spec/ffi/fixtures/GNUmakefile +0 -149
  114. data/spec/ffi/fixtures/GlobalVariable.c +0 -62
  115. data/spec/ffi/fixtures/LastErrorTest.c +0 -21
  116. data/spec/ffi/fixtures/NumberTest.c +0 -132
  117. data/spec/ffi/fixtures/PipeHelper.h +0 -21
  118. data/spec/ffi/fixtures/PipeHelperPosix.c +0 -41
  119. data/spec/ffi/fixtures/PipeHelperWindows.c +0 -72
  120. data/spec/ffi/fixtures/PointerTest.c +0 -63
  121. data/spec/ffi/fixtures/ReferenceTest.c +0 -23
  122. data/spec/ffi/fixtures/StringTest.c +0 -34
  123. data/spec/ffi/fixtures/StructTest.c +0 -243
  124. data/spec/ffi/fixtures/UnionTest.c +0 -43
  125. data/spec/ffi/fixtures/VariadicTest.c +0 -99
  126. data/spec/ffi/fixtures/classes.rb +0 -438
  127. data/spec/ffi/function_spec.rb +0 -97
  128. data/spec/ffi/io_spec.rb +0 -16
  129. data/spec/ffi/library_spec.rb +0 -286
  130. data/spec/ffi/long_double.rb +0 -30
  131. data/spec/ffi/managed_struct_spec.rb +0 -68
  132. data/spec/ffi/memorypointer_spec.rb +0 -78
  133. data/spec/ffi/number_spec.rb +0 -247
  134. data/spec/ffi/platform_spec.rb +0 -114
  135. data/spec/ffi/pointer_spec.rb +0 -285
  136. data/spec/ffi/rbx/attach_function_spec.rb +0 -34
  137. data/spec/ffi/rbx/memory_pointer_spec.rb +0 -198
  138. data/spec/ffi/rbx/spec_helper.rb +0 -6
  139. data/spec/ffi/rbx/struct_spec.rb +0 -18
  140. data/spec/ffi/spec_helper.rb +0 -93
  141. data/spec/ffi/string_spec.rb +0 -118
  142. data/spec/ffi/strptr_spec.rb +0 -50
  143. data/spec/ffi/struct_by_ref_spec.rb +0 -43
  144. data/spec/ffi/struct_callback_spec.rb +0 -69
  145. data/spec/ffi/struct_initialize_spec.rb +0 -35
  146. data/spec/ffi/struct_packed_spec.rb +0 -50
  147. data/spec/ffi/struct_spec.rb +0 -882
  148. data/spec/ffi/typedef_spec.rb +0 -91
  149. data/spec/ffi/union_spec.rb +0 -67
  150. data/spec/ffi/variadic_spec.rb +0 -132
  151. data/spec/spec.opts +0 -4
@@ -0,0 +1,1836 @@
1
+ #! /bin/sh
2
+ # Configuration validation subroutine script.
3
+ # Copyright 1992-2017 Free Software Foundation, Inc.
4
+
5
+ timestamp='2017-04-02'
6
+
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 3 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
24
+ # program. This Exception is an additional permission under section 7
25
+ # of the GNU General Public License, version 3 ("GPLv3").
26
+
27
+
28
+ # Please send patches to <config-patches@gnu.org>.
29
+ #
30
+ # Configuration subroutine to validate and canonicalize a configuration type.
31
+ # Supply the specified configuration type as an argument.
32
+ # If it is invalid, we print an error message on stderr and exit with code 1.
33
+ # Otherwise, we print the canonical config type on stdout and succeed.
34
+
35
+ # You can get the latest version of this script from:
36
+ # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
37
+
38
+ # This file is supposed to be the same for all GNU packages
39
+ # and recognize all the CPU types, system types and aliases
40
+ # that are meaningful with *any* GNU software.
41
+ # Each package is responsible for reporting which valid configurations
42
+ # it does not support. The user should be able to distinguish
43
+ # a failure to support a valid configuration from a meaningless
44
+ # configuration.
45
+
46
+ # The goal of this file is to map all the various variations of a given
47
+ # machine specification into a single specification in the form:
48
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
49
+ # or in some cases, the newer four-part form:
50
+ # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
51
+ # It is wrong to echo any other type of specification.
52
+
53
+ me=`echo "$0" | sed -e 's,.*/,,'`
54
+
55
+ usage="\
56
+ Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
57
+
58
+ Canonicalize a configuration name.
59
+
60
+ Operation modes:
61
+ -h, --help print this help, then exit
62
+ -t, --time-stamp print date of last modification, then exit
63
+ -v, --version print version number, then exit
64
+
65
+ Report bugs and patches to <config-patches@gnu.org>."
66
+
67
+ version="\
68
+ GNU config.sub ($timestamp)
69
+
70
+ Copyright 1992-2017 Free Software Foundation, Inc.
71
+
72
+ This is free software; see the source for copying conditions. There is NO
73
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
74
+
75
+ help="
76
+ Try \`$me --help' for more information."
77
+
78
+ # Parse command line
79
+ while test $# -gt 0 ; do
80
+ case $1 in
81
+ --time-stamp | --time* | -t )
82
+ echo "$timestamp" ; exit ;;
83
+ --version | -v )
84
+ echo "$version" ; exit ;;
85
+ --help | --h* | -h )
86
+ echo "$usage"; exit ;;
87
+ -- ) # Stop option processing
88
+ shift; break ;;
89
+ - ) # Use stdin as input.
90
+ break ;;
91
+ -* )
92
+ echo "$me: invalid option $1$help"
93
+ exit 1 ;;
94
+
95
+ *local*)
96
+ # First pass through any local machine types.
97
+ echo $1
98
+ exit ;;
99
+
100
+ * )
101
+ break ;;
102
+ esac
103
+ done
104
+
105
+ case $# in
106
+ 0) echo "$me: missing argument$help" >&2
107
+ exit 1;;
108
+ 1) ;;
109
+ *) echo "$me: too many arguments$help" >&2
110
+ exit 1;;
111
+ esac
112
+
113
+ # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
114
+ # Here we must recognize all the valid KERNEL-OS combinations.
115
+ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
116
+ case $maybe_os in
117
+ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
118
+ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
119
+ knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
120
+ kopensolaris*-gnu* | cloudabi*-eabi* | \
121
+ storm-chaos* | os2-emx* | rtmk-nova*)
122
+ os=-$maybe_os
123
+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
124
+ ;;
125
+ android-linux)
126
+ os=-linux-android
127
+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
128
+ ;;
129
+ *)
130
+ basic_machine=`echo $1 | sed 's/-[^-]*$//'`
131
+ if [ $basic_machine != $1 ]
132
+ then os=`echo $1 | sed 's/.*-/-/'`
133
+ else os=; fi
134
+ ;;
135
+ esac
136
+
137
+ ### Let's recognize common machines as not being operating systems so
138
+ ### that things like config.sub decstation-3100 work. We also
139
+ ### recognize some manufacturers as not being operating systems, so we
140
+ ### can provide default operating systems below.
141
+ case $os in
142
+ -sun*os*)
143
+ # Prevent following clause from handling this invalid input.
144
+ ;;
145
+ -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
146
+ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
147
+ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
148
+ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
149
+ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
150
+ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
151
+ -apple | -axis | -knuth | -cray | -microblaze*)
152
+ os=
153
+ basic_machine=$1
154
+ ;;
155
+ -bluegene*)
156
+ os=-cnk
157
+ ;;
158
+ -sim | -cisco | -oki | -wec | -winbond)
159
+ os=
160
+ basic_machine=$1
161
+ ;;
162
+ -scout)
163
+ ;;
164
+ -wrs)
165
+ os=-vxworks
166
+ basic_machine=$1
167
+ ;;
168
+ -chorusos*)
169
+ os=-chorusos
170
+ basic_machine=$1
171
+ ;;
172
+ -chorusrdb)
173
+ os=-chorusrdb
174
+ basic_machine=$1
175
+ ;;
176
+ -hiux*)
177
+ os=-hiuxwe2
178
+ ;;
179
+ -sco6)
180
+ os=-sco5v6
181
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
182
+ ;;
183
+ -sco5)
184
+ os=-sco3.2v5
185
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
186
+ ;;
187
+ -sco4)
188
+ os=-sco3.2v4
189
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
190
+ ;;
191
+ -sco3.2.[4-9]*)
192
+ os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
193
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
194
+ ;;
195
+ -sco3.2v[4-9]*)
196
+ # Don't forget version if it is 3.2v4 or newer.
197
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198
+ ;;
199
+ -sco5v6*)
200
+ # Don't forget version if it is 3.2v4 or newer.
201
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
202
+ ;;
203
+ -sco*)
204
+ os=-sco3.2v2
205
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206
+ ;;
207
+ -udk*)
208
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
209
+ ;;
210
+ -isc)
211
+ os=-isc2.2
212
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
213
+ ;;
214
+ -clix*)
215
+ basic_machine=clipper-intergraph
216
+ ;;
217
+ -isc*)
218
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
219
+ ;;
220
+ -lynx*178)
221
+ os=-lynxos178
222
+ ;;
223
+ -lynx*5)
224
+ os=-lynxos5
225
+ ;;
226
+ -lynx*)
227
+ os=-lynxos
228
+ ;;
229
+ -ptx*)
230
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
231
+ ;;
232
+ -windowsnt*)
233
+ os=`echo $os | sed -e 's/windowsnt/winnt/'`
234
+ ;;
235
+ -psos*)
236
+ os=-psos
237
+ ;;
238
+ -mint | -mint[0-9]*)
239
+ basic_machine=m68k-atari
240
+ os=-mint
241
+ ;;
242
+ esac
243
+
244
+ # Decode aliases for certain CPU-COMPANY combinations.
245
+ case $basic_machine in
246
+ # Recognize the basic CPU types without company name.
247
+ # Some are omitted here because they have special meanings below.
248
+ 1750a | 580 \
249
+ | a29k \
250
+ | aarch64 | aarch64_be \
251
+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
252
+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
253
+ | am33_2.0 \
254
+ | arc | arceb \
255
+ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
256
+ | avr | avr32 \
257
+ | ba \
258
+ | be32 | be64 \
259
+ | bfin \
260
+ | c4x | c8051 | clipper \
261
+ | d10v | d30v | dlx | dsp16xx \
262
+ | e2k | epiphany \
263
+ | fido | fr30 | frv | ft32 \
264
+ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
265
+ | hexagon \
266
+ | i370 | i860 | i960 | ia16 | ia64 \
267
+ | ip2k | iq2000 \
268
+ | k1om \
269
+ | le32 | le64 \
270
+ | lm32 \
271
+ | m32c | m32r | m32rle | m68000 | m68k | m88k \
272
+ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
273
+ | mips | mipsbe | mipseb | mipsel | mipsle \
274
+ | mips16 \
275
+ | mips64 | mips64el \
276
+ | mips64octeon | mips64octeonel \
277
+ | mips64orion | mips64orionel \
278
+ | mips64r5900 | mips64r5900el \
279
+ | mips64vr | mips64vrel \
280
+ | mips64vr4100 | mips64vr4100el \
281
+ | mips64vr4300 | mips64vr4300el \
282
+ | mips64vr5000 | mips64vr5000el \
283
+ | mips64vr5900 | mips64vr5900el \
284
+ | mipsisa32 | mipsisa32el \
285
+ | mipsisa32r2 | mipsisa32r2el \
286
+ | mipsisa32r6 | mipsisa32r6el \
287
+ | mipsisa64 | mipsisa64el \
288
+ | mipsisa64r2 | mipsisa64r2el \
289
+ | mipsisa64r6 | mipsisa64r6el \
290
+ | mipsisa64sb1 | mipsisa64sb1el \
291
+ | mipsisa64sr71k | mipsisa64sr71kel \
292
+ | mipsr5900 | mipsr5900el \
293
+ | mipstx39 | mipstx39el \
294
+ | mn10200 | mn10300 \
295
+ | moxie \
296
+ | mt \
297
+ | msp430 \
298
+ | nds32 | nds32le | nds32be \
299
+ | nios | nios2 | nios2eb | nios2el \
300
+ | ns16k | ns32k \
301
+ | open8 | or1k | or1knd | or32 \
302
+ | pdp10 | pdp11 | pj | pjl \
303
+ | powerpc | powerpc64 | powerpc64le | powerpcle \
304
+ | pru \
305
+ | pyramid \
306
+ | riscv32 | riscv64 \
307
+ | rl78 | rx \
308
+ | score \
309
+ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
310
+ | sh64 | sh64le \
311
+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
312
+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
313
+ | spu \
314
+ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
315
+ | ubicom32 \
316
+ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
317
+ | visium \
318
+ | wasm32 \
319
+ | we32k \
320
+ | x86 | xc16x | xstormy16 | xtensa \
321
+ | z8k | z80)
322
+ basic_machine=$basic_machine-unknown
323
+ ;;
324
+ c54x)
325
+ basic_machine=tic54x-unknown
326
+ ;;
327
+ c55x)
328
+ basic_machine=tic55x-unknown
329
+ ;;
330
+ c6x)
331
+ basic_machine=tic6x-unknown
332
+ ;;
333
+ leon|leon[3-9])
334
+ basic_machine=sparc-$basic_machine
335
+ ;;
336
+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
337
+ basic_machine=$basic_machine-unknown
338
+ os=-none
339
+ ;;
340
+ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
341
+ ;;
342
+ ms1)
343
+ basic_machine=mt-unknown
344
+ ;;
345
+
346
+ strongarm | thumb | xscale)
347
+ basic_machine=arm-unknown
348
+ ;;
349
+ xgate)
350
+ basic_machine=$basic_machine-unknown
351
+ os=-none
352
+ ;;
353
+ xscaleeb)
354
+ basic_machine=armeb-unknown
355
+ ;;
356
+
357
+ xscaleel)
358
+ basic_machine=armel-unknown
359
+ ;;
360
+
361
+ # We use `pc' rather than `unknown'
362
+ # because (1) that's what they normally are, and
363
+ # (2) the word "unknown" tends to confuse beginning users.
364
+ i*86 | x86_64)
365
+ basic_machine=$basic_machine-pc
366
+ ;;
367
+ # Object if more than one company name word.
368
+ *-*-*)
369
+ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
370
+ exit 1
371
+ ;;
372
+ # Recognize the basic CPU types with company name.
373
+ 580-* \
374
+ | a29k-* \
375
+ | aarch64-* | aarch64_be-* \
376
+ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
377
+ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
378
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
379
+ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
380
+ | avr-* | avr32-* \
381
+ | ba-* \
382
+ | be32-* | be64-* \
383
+ | bfin-* | bs2000-* \
384
+ | c[123]* | c30-* | [cjt]90-* | c4x-* \
385
+ | c8051-* | clipper-* | craynv-* | cydra-* \
386
+ | d10v-* | d30v-* | dlx-* \
387
+ | e2k-* | elxsi-* \
388
+ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
389
+ | h8300-* | h8500-* \
390
+ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
391
+ | hexagon-* \
392
+ | i*86-* | i860-* | i960-* | ia16-* | ia64-* \
393
+ | ip2k-* | iq2000-* \
394
+ | k1om-* \
395
+ | le32-* | le64-* \
396
+ | lm32-* \
397
+ | m32c-* | m32r-* | m32rle-* \
398
+ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
399
+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
400
+ | microblaze-* | microblazeel-* \
401
+ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
402
+ | mips16-* \
403
+ | mips64-* | mips64el-* \
404
+ | mips64octeon-* | mips64octeonel-* \
405
+ | mips64orion-* | mips64orionel-* \
406
+ | mips64r5900-* | mips64r5900el-* \
407
+ | mips64vr-* | mips64vrel-* \
408
+ | mips64vr4100-* | mips64vr4100el-* \
409
+ | mips64vr4300-* | mips64vr4300el-* \
410
+ | mips64vr5000-* | mips64vr5000el-* \
411
+ | mips64vr5900-* | mips64vr5900el-* \
412
+ | mipsisa32-* | mipsisa32el-* \
413
+ | mipsisa32r2-* | mipsisa32r2el-* \
414
+ | mipsisa32r6-* | mipsisa32r6el-* \
415
+ | mipsisa64-* | mipsisa64el-* \
416
+ | mipsisa64r2-* | mipsisa64r2el-* \
417
+ | mipsisa64r6-* | mipsisa64r6el-* \
418
+ | mipsisa64sb1-* | mipsisa64sb1el-* \
419
+ | mipsisa64sr71k-* | mipsisa64sr71kel-* \
420
+ | mipsr5900-* | mipsr5900el-* \
421
+ | mipstx39-* | mipstx39el-* \
422
+ | mmix-* \
423
+ | mt-* \
424
+ | msp430-* \
425
+ | nds32-* | nds32le-* | nds32be-* \
426
+ | nios-* | nios2-* | nios2eb-* | nios2el-* \
427
+ | none-* | np1-* | ns16k-* | ns32k-* \
428
+ | open8-* \
429
+ | or1k*-* \
430
+ | orion-* \
431
+ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
432
+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
433
+ | pru-* \
434
+ | pyramid-* \
435
+ | riscv32-* | riscv64-* \
436
+ | rl78-* | romp-* | rs6000-* | rx-* \
437
+ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
438
+ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
439
+ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
440
+ | sparclite-* \
441
+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
442
+ | tahoe-* \
443
+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
444
+ | tile*-* \
445
+ | tron-* \
446
+ | ubicom32-* \
447
+ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
448
+ | vax-* \
449
+ | visium-* \
450
+ | wasm32-* \
451
+ | we32k-* \
452
+ | x86-* | x86_64-* | xc16x-* | xps100-* \
453
+ | xstormy16-* | xtensa*-* \
454
+ | ymp-* \
455
+ | z8k-* | z80-*)
456
+ ;;
457
+ # Recognize the basic CPU types without company name, with glob match.
458
+ xtensa*)
459
+ basic_machine=$basic_machine-unknown
460
+ ;;
461
+ # Recognize the various machine names and aliases which stand
462
+ # for a CPU type and a company and sometimes even an OS.
463
+ 386bsd)
464
+ basic_machine=i386-unknown
465
+ os=-bsd
466
+ ;;
467
+ 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
468
+ basic_machine=m68000-att
469
+ ;;
470
+ 3b*)
471
+ basic_machine=we32k-att
472
+ ;;
473
+ a29khif)
474
+ basic_machine=a29k-amd
475
+ os=-udi
476
+ ;;
477
+ abacus)
478
+ basic_machine=abacus-unknown
479
+ ;;
480
+ adobe68k)
481
+ basic_machine=m68010-adobe
482
+ os=-scout
483
+ ;;
484
+ alliant | fx80)
485
+ basic_machine=fx80-alliant
486
+ ;;
487
+ altos | altos3068)
488
+ basic_machine=m68k-altos
489
+ ;;
490
+ am29k)
491
+ basic_machine=a29k-none
492
+ os=-bsd
493
+ ;;
494
+ amd64)
495
+ basic_machine=x86_64-pc
496
+ ;;
497
+ amd64-*)
498
+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
499
+ ;;
500
+ amdahl)
501
+ basic_machine=580-amdahl
502
+ os=-sysv
503
+ ;;
504
+ amiga | amiga-*)
505
+ basic_machine=m68k-unknown
506
+ ;;
507
+ amigaos | amigados)
508
+ basic_machine=m68k-unknown
509
+ os=-amigaos
510
+ ;;
511
+ amigaunix | amix)
512
+ basic_machine=m68k-unknown
513
+ os=-sysv4
514
+ ;;
515
+ apollo68)
516
+ basic_machine=m68k-apollo
517
+ os=-sysv
518
+ ;;
519
+ apollo68bsd)
520
+ basic_machine=m68k-apollo
521
+ os=-bsd
522
+ ;;
523
+ aros)
524
+ basic_machine=i386-pc
525
+ os=-aros
526
+ ;;
527
+ asmjs)
528
+ basic_machine=asmjs-unknown
529
+ ;;
530
+ aux)
531
+ basic_machine=m68k-apple
532
+ os=-aux
533
+ ;;
534
+ balance)
535
+ basic_machine=ns32k-sequent
536
+ os=-dynix
537
+ ;;
538
+ blackfin)
539
+ basic_machine=bfin-unknown
540
+ os=-linux
541
+ ;;
542
+ blackfin-*)
543
+ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
544
+ os=-linux
545
+ ;;
546
+ bluegene*)
547
+ basic_machine=powerpc-ibm
548
+ os=-cnk
549
+ ;;
550
+ c54x-*)
551
+ basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
552
+ ;;
553
+ c55x-*)
554
+ basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
555
+ ;;
556
+ c6x-*)
557
+ basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
558
+ ;;
559
+ c90)
560
+ basic_machine=c90-cray
561
+ os=-unicos
562
+ ;;
563
+ cegcc)
564
+ basic_machine=arm-unknown
565
+ os=-cegcc
566
+ ;;
567
+ convex-c1)
568
+ basic_machine=c1-convex
569
+ os=-bsd
570
+ ;;
571
+ convex-c2)
572
+ basic_machine=c2-convex
573
+ os=-bsd
574
+ ;;
575
+ convex-c32)
576
+ basic_machine=c32-convex
577
+ os=-bsd
578
+ ;;
579
+ convex-c34)
580
+ basic_machine=c34-convex
581
+ os=-bsd
582
+ ;;
583
+ convex-c38)
584
+ basic_machine=c38-convex
585
+ os=-bsd
586
+ ;;
587
+ cray | j90)
588
+ basic_machine=j90-cray
589
+ os=-unicos
590
+ ;;
591
+ craynv)
592
+ basic_machine=craynv-cray
593
+ os=-unicosmp
594
+ ;;
595
+ cr16 | cr16-*)
596
+ basic_machine=cr16-unknown
597
+ os=-elf
598
+ ;;
599
+ crds | unos)
600
+ basic_machine=m68k-crds
601
+ ;;
602
+ crisv32 | crisv32-* | etraxfs*)
603
+ basic_machine=crisv32-axis
604
+ ;;
605
+ cris | cris-* | etrax*)
606
+ basic_machine=cris-axis
607
+ ;;
608
+ crx)
609
+ basic_machine=crx-unknown
610
+ os=-elf
611
+ ;;
612
+ da30 | da30-*)
613
+ basic_machine=m68k-da30
614
+ ;;
615
+ decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
616
+ basic_machine=mips-dec
617
+ ;;
618
+ decsystem10* | dec10*)
619
+ basic_machine=pdp10-dec
620
+ os=-tops10
621
+ ;;
622
+ decsystem20* | dec20*)
623
+ basic_machine=pdp10-dec
624
+ os=-tops20
625
+ ;;
626
+ delta | 3300 | motorola-3300 | motorola-delta \
627
+ | 3300-motorola | delta-motorola)
628
+ basic_machine=m68k-motorola
629
+ ;;
630
+ delta88)
631
+ basic_machine=m88k-motorola
632
+ os=-sysv3
633
+ ;;
634
+ dicos)
635
+ basic_machine=i686-pc
636
+ os=-dicos
637
+ ;;
638
+ djgpp)
639
+ basic_machine=i586-pc
640
+ os=-msdosdjgpp
641
+ ;;
642
+ dpx20 | dpx20-*)
643
+ basic_machine=rs6000-bull
644
+ os=-bosx
645
+ ;;
646
+ dpx2* | dpx2*-bull)
647
+ basic_machine=m68k-bull
648
+ os=-sysv3
649
+ ;;
650
+ e500v[12])
651
+ basic_machine=powerpc-unknown
652
+ os=$os"spe"
653
+ ;;
654
+ e500v[12]-*)
655
+ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
656
+ os=$os"spe"
657
+ ;;
658
+ ebmon29k)
659
+ basic_machine=a29k-amd
660
+ os=-ebmon
661
+ ;;
662
+ elxsi)
663
+ basic_machine=elxsi-elxsi
664
+ os=-bsd
665
+ ;;
666
+ encore | umax | mmax)
667
+ basic_machine=ns32k-encore
668
+ ;;
669
+ es1800 | OSE68k | ose68k | ose | OSE)
670
+ basic_machine=m68k-ericsson
671
+ os=-ose
672
+ ;;
673
+ fx2800)
674
+ basic_machine=i860-alliant
675
+ ;;
676
+ genix)
677
+ basic_machine=ns32k-ns
678
+ ;;
679
+ gmicro)
680
+ basic_machine=tron-gmicro
681
+ os=-sysv
682
+ ;;
683
+ go32)
684
+ basic_machine=i386-pc
685
+ os=-go32
686
+ ;;
687
+ h3050r* | hiux*)
688
+ basic_machine=hppa1.1-hitachi
689
+ os=-hiuxwe2
690
+ ;;
691
+ h8300hms)
692
+ basic_machine=h8300-hitachi
693
+ os=-hms
694
+ ;;
695
+ h8300xray)
696
+ basic_machine=h8300-hitachi
697
+ os=-xray
698
+ ;;
699
+ h8500hms)
700
+ basic_machine=h8500-hitachi
701
+ os=-hms
702
+ ;;
703
+ harris)
704
+ basic_machine=m88k-harris
705
+ os=-sysv3
706
+ ;;
707
+ hp300-*)
708
+ basic_machine=m68k-hp
709
+ ;;
710
+ hp300bsd)
711
+ basic_machine=m68k-hp
712
+ os=-bsd
713
+ ;;
714
+ hp300hpux)
715
+ basic_machine=m68k-hp
716
+ os=-hpux
717
+ ;;
718
+ hp3k9[0-9][0-9] | hp9[0-9][0-9])
719
+ basic_machine=hppa1.0-hp
720
+ ;;
721
+ hp9k2[0-9][0-9] | hp9k31[0-9])
722
+ basic_machine=m68000-hp
723
+ ;;
724
+ hp9k3[2-9][0-9])
725
+ basic_machine=m68k-hp
726
+ ;;
727
+ hp9k6[0-9][0-9] | hp6[0-9][0-9])
728
+ basic_machine=hppa1.0-hp
729
+ ;;
730
+ hp9k7[0-79][0-9] | hp7[0-79][0-9])
731
+ basic_machine=hppa1.1-hp
732
+ ;;
733
+ hp9k78[0-9] | hp78[0-9])
734
+ # FIXME: really hppa2.0-hp
735
+ basic_machine=hppa1.1-hp
736
+ ;;
737
+ hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
738
+ # FIXME: really hppa2.0-hp
739
+ basic_machine=hppa1.1-hp
740
+ ;;
741
+ hp9k8[0-9][13679] | hp8[0-9][13679])
742
+ basic_machine=hppa1.1-hp
743
+ ;;
744
+ hp9k8[0-9][0-9] | hp8[0-9][0-9])
745
+ basic_machine=hppa1.0-hp
746
+ ;;
747
+ hppa-next)
748
+ os=-nextstep3
749
+ ;;
750
+ hppaosf)
751
+ basic_machine=hppa1.1-hp
752
+ os=-osf
753
+ ;;
754
+ hppro)
755
+ basic_machine=hppa1.1-hp
756
+ os=-proelf
757
+ ;;
758
+ i370-ibm* | ibm*)
759
+ basic_machine=i370-ibm
760
+ ;;
761
+ i*86v32)
762
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
763
+ os=-sysv32
764
+ ;;
765
+ i*86v4*)
766
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
767
+ os=-sysv4
768
+ ;;
769
+ i*86v)
770
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
771
+ os=-sysv
772
+ ;;
773
+ i*86sol2)
774
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
775
+ os=-solaris2
776
+ ;;
777
+ i386mach)
778
+ basic_machine=i386-mach
779
+ os=-mach
780
+ ;;
781
+ i386-vsta | vsta)
782
+ basic_machine=i386-unknown
783
+ os=-vsta
784
+ ;;
785
+ iris | iris4d)
786
+ basic_machine=mips-sgi
787
+ case $os in
788
+ -irix*)
789
+ ;;
790
+ *)
791
+ os=-irix4
792
+ ;;
793
+ esac
794
+ ;;
795
+ isi68 | isi)
796
+ basic_machine=m68k-isi
797
+ os=-sysv
798
+ ;;
799
+ leon-*|leon[3-9]-*)
800
+ basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
801
+ ;;
802
+ m68knommu)
803
+ basic_machine=m68k-unknown
804
+ os=-linux
805
+ ;;
806
+ m68knommu-*)
807
+ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
808
+ os=-linux
809
+ ;;
810
+ m88k-omron*)
811
+ basic_machine=m88k-omron
812
+ ;;
813
+ magnum | m3230)
814
+ basic_machine=mips-mips
815
+ os=-sysv
816
+ ;;
817
+ merlin)
818
+ basic_machine=ns32k-utek
819
+ os=-sysv
820
+ ;;
821
+ microblaze*)
822
+ basic_machine=microblaze-xilinx
823
+ ;;
824
+ mingw64)
825
+ basic_machine=x86_64-pc
826
+ os=-mingw64
827
+ ;;
828
+ mingw32)
829
+ basic_machine=i686-pc
830
+ os=-mingw32
831
+ ;;
832
+ mingw32ce)
833
+ basic_machine=arm-unknown
834
+ os=-mingw32ce
835
+ ;;
836
+ miniframe)
837
+ basic_machine=m68000-convergent
838
+ ;;
839
+ *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
840
+ basic_machine=m68k-atari
841
+ os=-mint
842
+ ;;
843
+ mips3*-*)
844
+ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
845
+ ;;
846
+ mips3*)
847
+ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
848
+ ;;
849
+ monitor)
850
+ basic_machine=m68k-rom68k
851
+ os=-coff
852
+ ;;
853
+ morphos)
854
+ basic_machine=powerpc-unknown
855
+ os=-morphos
856
+ ;;
857
+ moxiebox)
858
+ basic_machine=moxie-unknown
859
+ os=-moxiebox
860
+ ;;
861
+ msdos)
862
+ basic_machine=i386-pc
863
+ os=-msdos
864
+ ;;
865
+ ms1-*)
866
+ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
867
+ ;;
868
+ msys)
869
+ basic_machine=i686-pc
870
+ os=-msys
871
+ ;;
872
+ mvs)
873
+ basic_machine=i370-ibm
874
+ os=-mvs
875
+ ;;
876
+ nacl)
877
+ basic_machine=le32-unknown
878
+ os=-nacl
879
+ ;;
880
+ ncr3000)
881
+ basic_machine=i486-ncr
882
+ os=-sysv4
883
+ ;;
884
+ netbsd386)
885
+ basic_machine=i386-unknown
886
+ os=-netbsd
887
+ ;;
888
+ netwinder)
889
+ basic_machine=armv4l-rebel
890
+ os=-linux
891
+ ;;
892
+ news | news700 | news800 | news900)
893
+ basic_machine=m68k-sony
894
+ os=-newsos
895
+ ;;
896
+ news1000)
897
+ basic_machine=m68030-sony
898
+ os=-newsos
899
+ ;;
900
+ news-3600 | risc-news)
901
+ basic_machine=mips-sony
902
+ os=-newsos
903
+ ;;
904
+ necv70)
905
+ basic_machine=v70-nec
906
+ os=-sysv
907
+ ;;
908
+ next | m*-next )
909
+ basic_machine=m68k-next
910
+ case $os in
911
+ -nextstep* )
912
+ ;;
913
+ -ns2*)
914
+ os=-nextstep2
915
+ ;;
916
+ *)
917
+ os=-nextstep3
918
+ ;;
919
+ esac
920
+ ;;
921
+ nh3000)
922
+ basic_machine=m68k-harris
923
+ os=-cxux
924
+ ;;
925
+ nh[45]000)
926
+ basic_machine=m88k-harris
927
+ os=-cxux
928
+ ;;
929
+ nindy960)
930
+ basic_machine=i960-intel
931
+ os=-nindy
932
+ ;;
933
+ mon960)
934
+ basic_machine=i960-intel
935
+ os=-mon960
936
+ ;;
937
+ nonstopux)
938
+ basic_machine=mips-compaq
939
+ os=-nonstopux
940
+ ;;
941
+ np1)
942
+ basic_machine=np1-gould
943
+ ;;
944
+ neo-tandem)
945
+ basic_machine=neo-tandem
946
+ ;;
947
+ nse-tandem)
948
+ basic_machine=nse-tandem
949
+ ;;
950
+ nsr-tandem)
951
+ basic_machine=nsr-tandem
952
+ ;;
953
+ nsx-tandem)
954
+ basic_machine=nsx-tandem
955
+ ;;
956
+ op50n-* | op60c-*)
957
+ basic_machine=hppa1.1-oki
958
+ os=-proelf
959
+ ;;
960
+ openrisc | openrisc-*)
961
+ basic_machine=or32-unknown
962
+ ;;
963
+ os400)
964
+ basic_machine=powerpc-ibm
965
+ os=-os400
966
+ ;;
967
+ OSE68000 | ose68000)
968
+ basic_machine=m68000-ericsson
969
+ os=-ose
970
+ ;;
971
+ os68k)
972
+ basic_machine=m68k-none
973
+ os=-os68k
974
+ ;;
975
+ pa-hitachi)
976
+ basic_machine=hppa1.1-hitachi
977
+ os=-hiuxwe2
978
+ ;;
979
+ paragon)
980
+ basic_machine=i860-intel
981
+ os=-osf
982
+ ;;
983
+ parisc)
984
+ basic_machine=hppa-unknown
985
+ os=-linux
986
+ ;;
987
+ parisc-*)
988
+ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
989
+ os=-linux
990
+ ;;
991
+ pbd)
992
+ basic_machine=sparc-tti
993
+ ;;
994
+ pbb)
995
+ basic_machine=m68k-tti
996
+ ;;
997
+ pc532 | pc532-*)
998
+ basic_machine=ns32k-pc532
999
+ ;;
1000
+ pc98)
1001
+ basic_machine=i386-pc
1002
+ ;;
1003
+ pc98-*)
1004
+ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
1005
+ ;;
1006
+ pentium | p5 | k5 | k6 | nexgen | viac3)
1007
+ basic_machine=i586-pc
1008
+ ;;
1009
+ pentiumpro | p6 | 6x86 | athlon | athlon_*)
1010
+ basic_machine=i686-pc
1011
+ ;;
1012
+ pentiumii | pentium2 | pentiumiii | pentium3)
1013
+ basic_machine=i686-pc
1014
+ ;;
1015
+ pentium4)
1016
+ basic_machine=i786-pc
1017
+ ;;
1018
+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
1019
+ basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
1020
+ ;;
1021
+ pentiumpro-* | p6-* | 6x86-* | athlon-*)
1022
+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
1023
+ ;;
1024
+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
1025
+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
1026
+ ;;
1027
+ pentium4-*)
1028
+ basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
1029
+ ;;
1030
+ pn)
1031
+ basic_machine=pn-gould
1032
+ ;;
1033
+ power) basic_machine=power-ibm
1034
+ ;;
1035
+ ppc | ppcbe) basic_machine=powerpc-unknown
1036
+ ;;
1037
+ ppc-* | ppcbe-*)
1038
+ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
1039
+ ;;
1040
+ ppcle | powerpclittle)
1041
+ basic_machine=powerpcle-unknown
1042
+ ;;
1043
+ ppcle-* | powerpclittle-*)
1044
+ basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
1045
+ ;;
1046
+ ppc64) basic_machine=powerpc64-unknown
1047
+ ;;
1048
+ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1049
+ ;;
1050
+ ppc64le | powerpc64little)
1051
+ basic_machine=powerpc64le-unknown
1052
+ ;;
1053
+ ppc64le-* | powerpc64little-*)
1054
+ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1055
+ ;;
1056
+ ps2)
1057
+ basic_machine=i386-ibm
1058
+ ;;
1059
+ pw32)
1060
+ basic_machine=i586-unknown
1061
+ os=-pw32
1062
+ ;;
1063
+ rdos | rdos64)
1064
+ basic_machine=x86_64-pc
1065
+ os=-rdos
1066
+ ;;
1067
+ rdos32)
1068
+ basic_machine=i386-pc
1069
+ os=-rdos
1070
+ ;;
1071
+ rom68k)
1072
+ basic_machine=m68k-rom68k
1073
+ os=-coff
1074
+ ;;
1075
+ rm[46]00)
1076
+ basic_machine=mips-siemens
1077
+ ;;
1078
+ rtpc | rtpc-*)
1079
+ basic_machine=romp-ibm
1080
+ ;;
1081
+ s390 | s390-*)
1082
+ basic_machine=s390-ibm
1083
+ ;;
1084
+ s390x | s390x-*)
1085
+ basic_machine=s390x-ibm
1086
+ ;;
1087
+ sa29200)
1088
+ basic_machine=a29k-amd
1089
+ os=-udi
1090
+ ;;
1091
+ sb1)
1092
+ basic_machine=mipsisa64sb1-unknown
1093
+ ;;
1094
+ sb1el)
1095
+ basic_machine=mipsisa64sb1el-unknown
1096
+ ;;
1097
+ sde)
1098
+ basic_machine=mipsisa32-sde
1099
+ os=-elf
1100
+ ;;
1101
+ sei)
1102
+ basic_machine=mips-sei
1103
+ os=-seiux
1104
+ ;;
1105
+ sequent)
1106
+ basic_machine=i386-sequent
1107
+ ;;
1108
+ sh)
1109
+ basic_machine=sh-hitachi
1110
+ os=-hms
1111
+ ;;
1112
+ sh5el)
1113
+ basic_machine=sh5le-unknown
1114
+ ;;
1115
+ sh64)
1116
+ basic_machine=sh64-unknown
1117
+ ;;
1118
+ sparclite-wrs | simso-wrs)
1119
+ basic_machine=sparclite-wrs
1120
+ os=-vxworks
1121
+ ;;
1122
+ sps7)
1123
+ basic_machine=m68k-bull
1124
+ os=-sysv2
1125
+ ;;
1126
+ spur)
1127
+ basic_machine=spur-unknown
1128
+ ;;
1129
+ st2000)
1130
+ basic_machine=m68k-tandem
1131
+ ;;
1132
+ stratus)
1133
+ basic_machine=i860-stratus
1134
+ os=-sysv4
1135
+ ;;
1136
+ strongarm-* | thumb-*)
1137
+ basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1138
+ ;;
1139
+ sun2)
1140
+ basic_machine=m68000-sun
1141
+ ;;
1142
+ sun2os3)
1143
+ basic_machine=m68000-sun
1144
+ os=-sunos3
1145
+ ;;
1146
+ sun2os4)
1147
+ basic_machine=m68000-sun
1148
+ os=-sunos4
1149
+ ;;
1150
+ sun3os3)
1151
+ basic_machine=m68k-sun
1152
+ os=-sunos3
1153
+ ;;
1154
+ sun3os4)
1155
+ basic_machine=m68k-sun
1156
+ os=-sunos4
1157
+ ;;
1158
+ sun4os3)
1159
+ basic_machine=sparc-sun
1160
+ os=-sunos3
1161
+ ;;
1162
+ sun4os4)
1163
+ basic_machine=sparc-sun
1164
+ os=-sunos4
1165
+ ;;
1166
+ sun4sol2)
1167
+ basic_machine=sparc-sun
1168
+ os=-solaris2
1169
+ ;;
1170
+ sun3 | sun3-*)
1171
+ basic_machine=m68k-sun
1172
+ ;;
1173
+ sun4)
1174
+ basic_machine=sparc-sun
1175
+ ;;
1176
+ sun386 | sun386i | roadrunner)
1177
+ basic_machine=i386-sun
1178
+ ;;
1179
+ sv1)
1180
+ basic_machine=sv1-cray
1181
+ os=-unicos
1182
+ ;;
1183
+ symmetry)
1184
+ basic_machine=i386-sequent
1185
+ os=-dynix
1186
+ ;;
1187
+ t3e)
1188
+ basic_machine=alphaev5-cray
1189
+ os=-unicos
1190
+ ;;
1191
+ t90)
1192
+ basic_machine=t90-cray
1193
+ os=-unicos
1194
+ ;;
1195
+ tile*)
1196
+ basic_machine=$basic_machine-unknown
1197
+ os=-linux-gnu
1198
+ ;;
1199
+ tx39)
1200
+ basic_machine=mipstx39-unknown
1201
+ ;;
1202
+ tx39el)
1203
+ basic_machine=mipstx39el-unknown
1204
+ ;;
1205
+ toad1)
1206
+ basic_machine=pdp10-xkl
1207
+ os=-tops20
1208
+ ;;
1209
+ tower | tower-32)
1210
+ basic_machine=m68k-ncr
1211
+ ;;
1212
+ tpf)
1213
+ basic_machine=s390x-ibm
1214
+ os=-tpf
1215
+ ;;
1216
+ udi29k)
1217
+ basic_machine=a29k-amd
1218
+ os=-udi
1219
+ ;;
1220
+ ultra3)
1221
+ basic_machine=a29k-nyu
1222
+ os=-sym1
1223
+ ;;
1224
+ v810 | necv810)
1225
+ basic_machine=v810-nec
1226
+ os=-none
1227
+ ;;
1228
+ vaxv)
1229
+ basic_machine=vax-dec
1230
+ os=-sysv
1231
+ ;;
1232
+ vms)
1233
+ basic_machine=vax-dec
1234
+ os=-vms
1235
+ ;;
1236
+ vpp*|vx|vx-*)
1237
+ basic_machine=f301-fujitsu
1238
+ ;;
1239
+ vxworks960)
1240
+ basic_machine=i960-wrs
1241
+ os=-vxworks
1242
+ ;;
1243
+ vxworks68)
1244
+ basic_machine=m68k-wrs
1245
+ os=-vxworks
1246
+ ;;
1247
+ vxworks29k)
1248
+ basic_machine=a29k-wrs
1249
+ os=-vxworks
1250
+ ;;
1251
+ wasm32)
1252
+ basic_machine=wasm32-unknown
1253
+ ;;
1254
+ w65*)
1255
+ basic_machine=w65-wdc
1256
+ os=-none
1257
+ ;;
1258
+ w89k-*)
1259
+ basic_machine=hppa1.1-winbond
1260
+ os=-proelf
1261
+ ;;
1262
+ xbox)
1263
+ basic_machine=i686-pc
1264
+ os=-mingw32
1265
+ ;;
1266
+ xps | xps100)
1267
+ basic_machine=xps100-honeywell
1268
+ ;;
1269
+ xscale-* | xscalee[bl]-*)
1270
+ basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1271
+ ;;
1272
+ ymp)
1273
+ basic_machine=ymp-cray
1274
+ os=-unicos
1275
+ ;;
1276
+ z8k-*-coff)
1277
+ basic_machine=z8k-unknown
1278
+ os=-sim
1279
+ ;;
1280
+ z80-*-coff)
1281
+ basic_machine=z80-unknown
1282
+ os=-sim
1283
+ ;;
1284
+ none)
1285
+ basic_machine=none-none
1286
+ os=-none
1287
+ ;;
1288
+
1289
+ # Here we handle the default manufacturer of certain CPU types. It is in
1290
+ # some cases the only manufacturer, in others, it is the most popular.
1291
+ w89k)
1292
+ basic_machine=hppa1.1-winbond
1293
+ ;;
1294
+ op50n)
1295
+ basic_machine=hppa1.1-oki
1296
+ ;;
1297
+ op60c)
1298
+ basic_machine=hppa1.1-oki
1299
+ ;;
1300
+ romp)
1301
+ basic_machine=romp-ibm
1302
+ ;;
1303
+ mmix)
1304
+ basic_machine=mmix-knuth
1305
+ ;;
1306
+ rs6000)
1307
+ basic_machine=rs6000-ibm
1308
+ ;;
1309
+ vax)
1310
+ basic_machine=vax-dec
1311
+ ;;
1312
+ pdp10)
1313
+ # there are many clones, so DEC is not a safe bet
1314
+ basic_machine=pdp10-unknown
1315
+ ;;
1316
+ pdp11)
1317
+ basic_machine=pdp11-dec
1318
+ ;;
1319
+ we32k)
1320
+ basic_machine=we32k-att
1321
+ ;;
1322
+ sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1323
+ basic_machine=sh-unknown
1324
+ ;;
1325
+ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1326
+ basic_machine=sparc-sun
1327
+ ;;
1328
+ cydra)
1329
+ basic_machine=cydra-cydrome
1330
+ ;;
1331
+ orion)
1332
+ basic_machine=orion-highlevel
1333
+ ;;
1334
+ orion105)
1335
+ basic_machine=clipper-highlevel
1336
+ ;;
1337
+ mac | mpw | mac-mpw)
1338
+ basic_machine=m68k-apple
1339
+ ;;
1340
+ pmac | pmac-mpw)
1341
+ basic_machine=powerpc-apple
1342
+ ;;
1343
+ *-unknown)
1344
+ # Make sure to match an already-canonicalized machine name.
1345
+ ;;
1346
+ *)
1347
+ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1348
+ exit 1
1349
+ ;;
1350
+ esac
1351
+
1352
+ # Here we canonicalize certain aliases for manufacturers.
1353
+ case $basic_machine in
1354
+ *-digital*)
1355
+ basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1356
+ ;;
1357
+ *-commodore*)
1358
+ basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1359
+ ;;
1360
+ *)
1361
+ ;;
1362
+ esac
1363
+
1364
+ # Decode manufacturer-specific aliases for certain operating systems.
1365
+
1366
+ if [ x"$os" != x"" ]
1367
+ then
1368
+ case $os in
1369
+ # First match some system type aliases
1370
+ # that might get confused with valid system types.
1371
+ # -solaris* is a basic system type, with this one exception.
1372
+ -auroraux)
1373
+ os=-auroraux
1374
+ ;;
1375
+ -solaris1 | -solaris1.*)
1376
+ os=`echo $os | sed -e 's|solaris1|sunos4|'`
1377
+ ;;
1378
+ -solaris)
1379
+ os=-solaris2
1380
+ ;;
1381
+ -svr4*)
1382
+ os=-sysv4
1383
+ ;;
1384
+ -unixware*)
1385
+ os=-sysv4.2uw
1386
+ ;;
1387
+ -gnu/linux*)
1388
+ os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1389
+ ;;
1390
+ # First accept the basic system types.
1391
+ # The portable systems comes first.
1392
+ # Each alternative MUST END IN A *, to match a version number.
1393
+ # -sysv* is not here because it comes later, after sysvr4.
1394
+ -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1395
+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1396
+ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1397
+ | -sym* | -kopensolaris* | -plan9* \
1398
+ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1399
+ | -aos* | -aros* | -cloudabi* | -sortix* \
1400
+ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1401
+ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1402
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1403
+ | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
1404
+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1405
+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1406
+ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1407
+ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1408
+ | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
1409
+ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1410
+ | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
1411
+ | -linux-newlib* | -linux-musl* | -linux-uclibc* \
1412
+ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
1413
+ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1414
+ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1415
+ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1416
+ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1417
+ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1418
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1419
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
1420
+ | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
1421
+ # Remember, each alternative MUST END IN *, to match a version number.
1422
+ ;;
1423
+ -qnx*)
1424
+ case $basic_machine in
1425
+ x86-* | i*86-*)
1426
+ ;;
1427
+ *)
1428
+ os=-nto$os
1429
+ ;;
1430
+ esac
1431
+ ;;
1432
+ -nto-qnx*)
1433
+ ;;
1434
+ -nto*)
1435
+ os=`echo $os | sed -e 's|nto|nto-qnx|'`
1436
+ ;;
1437
+ -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1438
+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1439
+ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1440
+ ;;
1441
+ -mac*)
1442
+ os=`echo $os | sed -e 's|mac|macos|'`
1443
+ ;;
1444
+ -linux-dietlibc)
1445
+ os=-linux-dietlibc
1446
+ ;;
1447
+ -linux*)
1448
+ os=`echo $os | sed -e 's|linux|linux-gnu|'`
1449
+ ;;
1450
+ -sunos5*)
1451
+ os=`echo $os | sed -e 's|sunos5|solaris2|'`
1452
+ ;;
1453
+ -sunos6*)
1454
+ os=`echo $os | sed -e 's|sunos6|solaris3|'`
1455
+ ;;
1456
+ -opened*)
1457
+ os=-openedition
1458
+ ;;
1459
+ -os400*)
1460
+ os=-os400
1461
+ ;;
1462
+ -wince*)
1463
+ os=-wince
1464
+ ;;
1465
+ -osfrose*)
1466
+ os=-osfrose
1467
+ ;;
1468
+ -osf*)
1469
+ os=-osf
1470
+ ;;
1471
+ -utek*)
1472
+ os=-bsd
1473
+ ;;
1474
+ -dynix*)
1475
+ os=-bsd
1476
+ ;;
1477
+ -acis*)
1478
+ os=-aos
1479
+ ;;
1480
+ -atheos*)
1481
+ os=-atheos
1482
+ ;;
1483
+ -syllable*)
1484
+ os=-syllable
1485
+ ;;
1486
+ -386bsd)
1487
+ os=-bsd
1488
+ ;;
1489
+ -ctix* | -uts*)
1490
+ os=-sysv
1491
+ ;;
1492
+ -nova*)
1493
+ os=-rtmk-nova
1494
+ ;;
1495
+ -ns2 )
1496
+ os=-nextstep2
1497
+ ;;
1498
+ -nsk*)
1499
+ os=-nsk
1500
+ ;;
1501
+ # Preserve the version number of sinix5.
1502
+ -sinix5.*)
1503
+ os=`echo $os | sed -e 's|sinix|sysv|'`
1504
+ ;;
1505
+ -sinix*)
1506
+ os=-sysv4
1507
+ ;;
1508
+ -tpf*)
1509
+ os=-tpf
1510
+ ;;
1511
+ -triton*)
1512
+ os=-sysv3
1513
+ ;;
1514
+ -oss*)
1515
+ os=-sysv3
1516
+ ;;
1517
+ -svr4)
1518
+ os=-sysv4
1519
+ ;;
1520
+ -svr3)
1521
+ os=-sysv3
1522
+ ;;
1523
+ -sysvr4)
1524
+ os=-sysv4
1525
+ ;;
1526
+ # This must come after -sysvr4.
1527
+ -sysv*)
1528
+ ;;
1529
+ -ose*)
1530
+ os=-ose
1531
+ ;;
1532
+ -es1800*)
1533
+ os=-ose
1534
+ ;;
1535
+ -xenix)
1536
+ os=-xenix
1537
+ ;;
1538
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1539
+ os=-mint
1540
+ ;;
1541
+ -aros*)
1542
+ os=-aros
1543
+ ;;
1544
+ -zvmoe)
1545
+ os=-zvmoe
1546
+ ;;
1547
+ -dicos*)
1548
+ os=-dicos
1549
+ ;;
1550
+ -nacl*)
1551
+ ;;
1552
+ -ios)
1553
+ ;;
1554
+ -none)
1555
+ ;;
1556
+ *)
1557
+ # Get rid of the `-' at the beginning of $os.
1558
+ os=`echo $os | sed 's/[^-]*-//'`
1559
+ echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1560
+ exit 1
1561
+ ;;
1562
+ esac
1563
+ else
1564
+
1565
+ # Here we handle the default operating systems that come with various machines.
1566
+ # The value should be what the vendor currently ships out the door with their
1567
+ # machine or put another way, the most popular os provided with the machine.
1568
+
1569
+ # Note that if you're going to try to match "-MANUFACTURER" here (say,
1570
+ # "-sun"), then you have to tell the case statement up towards the top
1571
+ # that MANUFACTURER isn't an operating system. Otherwise, code above
1572
+ # will signal an error saying that MANUFACTURER isn't an operating
1573
+ # system, and we'll never get to this point.
1574
+
1575
+ case $basic_machine in
1576
+ score-*)
1577
+ os=-elf
1578
+ ;;
1579
+ spu-*)
1580
+ os=-elf
1581
+ ;;
1582
+ *-acorn)
1583
+ os=-riscix1.2
1584
+ ;;
1585
+ arm*-rebel)
1586
+ os=-linux
1587
+ ;;
1588
+ arm*-semi)
1589
+ os=-aout
1590
+ ;;
1591
+ c4x-* | tic4x-*)
1592
+ os=-coff
1593
+ ;;
1594
+ c8051-*)
1595
+ os=-elf
1596
+ ;;
1597
+ hexagon-*)
1598
+ os=-elf
1599
+ ;;
1600
+ tic54x-*)
1601
+ os=-coff
1602
+ ;;
1603
+ tic55x-*)
1604
+ os=-coff
1605
+ ;;
1606
+ tic6x-*)
1607
+ os=-coff
1608
+ ;;
1609
+ # This must come before the *-dec entry.
1610
+ pdp10-*)
1611
+ os=-tops20
1612
+ ;;
1613
+ pdp11-*)
1614
+ os=-none
1615
+ ;;
1616
+ *-dec | vax-*)
1617
+ os=-ultrix4.2
1618
+ ;;
1619
+ m68*-apollo)
1620
+ os=-domain
1621
+ ;;
1622
+ i386-sun)
1623
+ os=-sunos4.0.2
1624
+ ;;
1625
+ m68000-sun)
1626
+ os=-sunos3
1627
+ ;;
1628
+ m68*-cisco)
1629
+ os=-aout
1630
+ ;;
1631
+ mep-*)
1632
+ os=-elf
1633
+ ;;
1634
+ mips*-cisco)
1635
+ os=-elf
1636
+ ;;
1637
+ mips*-*)
1638
+ os=-elf
1639
+ ;;
1640
+ or32-*)
1641
+ os=-coff
1642
+ ;;
1643
+ *-tti) # must be before sparc entry or we get the wrong os.
1644
+ os=-sysv3
1645
+ ;;
1646
+ sparc-* | *-sun)
1647
+ os=-sunos4.1.1
1648
+ ;;
1649
+ pru-*)
1650
+ os=-elf
1651
+ ;;
1652
+ *-be)
1653
+ os=-beos
1654
+ ;;
1655
+ *-haiku)
1656
+ os=-haiku
1657
+ ;;
1658
+ *-ibm)
1659
+ os=-aix
1660
+ ;;
1661
+ *-knuth)
1662
+ os=-mmixware
1663
+ ;;
1664
+ *-wec)
1665
+ os=-proelf
1666
+ ;;
1667
+ *-winbond)
1668
+ os=-proelf
1669
+ ;;
1670
+ *-oki)
1671
+ os=-proelf
1672
+ ;;
1673
+ *-hp)
1674
+ os=-hpux
1675
+ ;;
1676
+ *-hitachi)
1677
+ os=-hiux
1678
+ ;;
1679
+ i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1680
+ os=-sysv
1681
+ ;;
1682
+ *-cbm)
1683
+ os=-amigaos
1684
+ ;;
1685
+ *-dg)
1686
+ os=-dgux
1687
+ ;;
1688
+ *-dolphin)
1689
+ os=-sysv3
1690
+ ;;
1691
+ m68k-ccur)
1692
+ os=-rtu
1693
+ ;;
1694
+ m88k-omron*)
1695
+ os=-luna
1696
+ ;;
1697
+ *-next )
1698
+ os=-nextstep
1699
+ ;;
1700
+ *-sequent)
1701
+ os=-ptx
1702
+ ;;
1703
+ *-crds)
1704
+ os=-unos
1705
+ ;;
1706
+ *-ns)
1707
+ os=-genix
1708
+ ;;
1709
+ i370-*)
1710
+ os=-mvs
1711
+ ;;
1712
+ *-next)
1713
+ os=-nextstep3
1714
+ ;;
1715
+ *-gould)
1716
+ os=-sysv
1717
+ ;;
1718
+ *-highlevel)
1719
+ os=-bsd
1720
+ ;;
1721
+ *-encore)
1722
+ os=-bsd
1723
+ ;;
1724
+ *-sgi)
1725
+ os=-irix
1726
+ ;;
1727
+ *-siemens)
1728
+ os=-sysv4
1729
+ ;;
1730
+ *-masscomp)
1731
+ os=-rtu
1732
+ ;;
1733
+ f30[01]-fujitsu | f700-fujitsu)
1734
+ os=-uxpv
1735
+ ;;
1736
+ *-rom68k)
1737
+ os=-coff
1738
+ ;;
1739
+ *-*bug)
1740
+ os=-coff
1741
+ ;;
1742
+ *-apple)
1743
+ os=-macos
1744
+ ;;
1745
+ *-atari*)
1746
+ os=-mint
1747
+ ;;
1748
+ *)
1749
+ os=-none
1750
+ ;;
1751
+ esac
1752
+ fi
1753
+
1754
+ # Here we handle the case where we know the os, and the CPU type, but not the
1755
+ # manufacturer. We pick the logical manufacturer.
1756
+ vendor=unknown
1757
+ case $basic_machine in
1758
+ *-unknown)
1759
+ case $os in
1760
+ -riscix*)
1761
+ vendor=acorn
1762
+ ;;
1763
+ -sunos*)
1764
+ vendor=sun
1765
+ ;;
1766
+ -cnk*|-aix*)
1767
+ vendor=ibm
1768
+ ;;
1769
+ -beos*)
1770
+ vendor=be
1771
+ ;;
1772
+ -hpux*)
1773
+ vendor=hp
1774
+ ;;
1775
+ -mpeix*)
1776
+ vendor=hp
1777
+ ;;
1778
+ -hiux*)
1779
+ vendor=hitachi
1780
+ ;;
1781
+ -unos*)
1782
+ vendor=crds
1783
+ ;;
1784
+ -dgux*)
1785
+ vendor=dg
1786
+ ;;
1787
+ -luna*)
1788
+ vendor=omron
1789
+ ;;
1790
+ -genix*)
1791
+ vendor=ns
1792
+ ;;
1793
+ -mvs* | -opened*)
1794
+ vendor=ibm
1795
+ ;;
1796
+ -os400*)
1797
+ vendor=ibm
1798
+ ;;
1799
+ -ptx*)
1800
+ vendor=sequent
1801
+ ;;
1802
+ -tpf*)
1803
+ vendor=ibm
1804
+ ;;
1805
+ -vxsim* | -vxworks* | -windiss*)
1806
+ vendor=wrs
1807
+ ;;
1808
+ -aux*)
1809
+ vendor=apple
1810
+ ;;
1811
+ -hms*)
1812
+ vendor=hitachi
1813
+ ;;
1814
+ -mpw* | -macos*)
1815
+ vendor=apple
1816
+ ;;
1817
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1818
+ vendor=atari
1819
+ ;;
1820
+ -vos*)
1821
+ vendor=stratus
1822
+ ;;
1823
+ esac
1824
+ basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1825
+ ;;
1826
+ esac
1827
+
1828
+ echo $basic_machine$os
1829
+ exit
1830
+
1831
+ # Local variables:
1832
+ # eval: (add-hook 'write-file-hooks 'time-stamp)
1833
+ # time-stamp-start: "timestamp='"
1834
+ # time-stamp-format: "%:y-%02m-%02d"
1835
+ # time-stamp-end: "'"
1836
+ # End: