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