source: git/singuname.sh @ 9d68fd

spielwiese
Last change on this file since 9d68fd was 1673507, checked in by Max Horn <max@…>, 11 years ago
Fix spelling: "MacOS X" -> "Mac OS X" The correct official spelling is indeed "Mac OS X". This is in contrast to old macintosh operating systems which were called "MacOS" as in "MacOS 7". Conflicts: README
  • Property mode set to 100755
File size: 6.3 KB
Line 
1#!/bin/sh
2#
3# FILE:    singuname
4# USAGE:   singuname
5# PURPOSE: prints to stdout a unique identifier of known uname(s)
6# AUTHOR:  obachman
7# CREATED: 5/26/98
8#
9###########################################################################
10
11egrep="egrep"
12uname_a=`uname -a`
13uname_m=`uname -m`
14devnull='/dev/null'
15file=file
16binary='/bin/ls'
17ldd='ldd'
18
19# HPUX ########################################################
20if (echo $uname_m | $egrep "HP-UX" > $devnull)
21then
22    prefix=HPUX
23    # HPUX-9
24    if (echo $uname_a | $egrep "\.09\." > $devnull)
25    then
26        echo ${prefix}-9
27        exit 0
28    # HPUX-10
29    elif (echo $uname_a | $egrep "\.10\." > $devnull)
30    then
31        echo ${prefix}-10
32        exit 0
33    elif (echo $uname_a | $egrep " ia64 " > $devnull)
34    then
35        echo IA64-${prefix}
36        exit 0
37    else
38        echo ${prefix}-Unknown
39        exit 1
40    fi
41# Intel ########################################################
42elif (echo $uname_a | $egrep "i[3,4,5,6]86" > $devnull)
43then
44    prefix=ix86
45    # Win ################
46    if (echo $uname_a | $egrep "CYGWIN" > $devnull)
47    then
48        echo ${prefix}-Win
49        exit 0
50    elif (echo $uname_a | $egrep "MINGW" > $devnull)
51    then
52        echo ${prefix}-Win
53        exit 0
54    # FreeBSD ###############
55    elif (echo $uname_a | $egrep "FreeBSD" > $devnull)
56    then
57        echo ${prefix}-freebsd
58        exit 0
59    # Linux ###############
60    elif (echo $uname_a | $egrep "Linux" > $devnull)
61    then
62        prefix=${prefix}-Linux
63        if (test -x $file && -x $binary)
64        then
65            # LinuxAOUT only if  file does not match ELF
66            if ($file $binary | $egrep -v "ELF" > $devnull)
67            then
68                echo ${prefix}AOUT
69                exit 0
70            fi
71        fi
72        # everything else is assumed to be Linux ELF
73        # check for libc5
74        if (echo `$ldd $binary` | $egrep "libc.so.5" > $devnull)
75        then
76            echo "${prefix}-libc5"
77        else
78            echo ${prefix}
79        fi
80        exit 0
81    elif (echo $uname_a | $egrep "Darwin" >$devnull)
82    then
83        echo ix86Mac-darwin
84        exit 0
85    elif (echo $uname_a | $egrep "SunOS" >$devnull)
86    then
87      # NexentaOS ###############
88      if (echo $uname_a | $egrep "NexentaOS" > $devnull)
89      then
90        echo ${prefix}-nexentaos
91      else
92        echo ix86-SunOS
93      fi
94      exit 0
95    else
96        echo ${prefix}-Unknown
97        exit 1
98    fi
99# AMD-Opteron ########################################################
100elif (echo $uname_m | $egrep "x86_64" > $devnull)
101then
102    prefix=x86_64
103    if (echo $uname_a | $egrep "Linux" > $devnull)
104    then
105        echo ${prefix}-Linux
106        exit 0
107    elif (echo $uname_a | $egrep "Darwin" >$devnull)
108    then
109        echo x86_64Mac-darwin
110        exit 0
111    else
112        echo ${prefix}-Unknown
113        exit 1
114    fi
115# AMD-Opteron ########################################################
116elif (echo $uname_m | $egrep "amd64" > $devnull)
117then
118    prefix=x86_64
119    if (echo $uname_a | $egrep "FreeBSD" > $devnull)
120    then
121        echo ${prefix}-freebsd
122        exit 0
123    else
124        echo ${prefix}-Unknown
125        exit 1
126    fi
127# HPPA ################################################################
128elif (echo $uname_m | $egrep "hppa" > $devnull)
129then
130    prefix=hppa
131    if (echo $uname_a | $egrep "Linux" > $devnull)
132    then
133        echo ${prefix}-Linux
134        exit 0
135    else
136        echo ${prefix}-Unknown
137        exit 1
138    fi
139# SunOS ########################################################
140elif (echo $uname_a | $egrep "SunOS" > $devnull)
141then
142    if (echo $uname_a | $egrep "sun3" > $devnull)
143    then
144      prefix=Sun3OS
145    else
146      prefix=SunOS
147    fi
148    if (echo $uname_a | $egrep "4\.[0-9]" > $devnull)
149    then
150        echo ${prefix}-4
151        exit 0
152    # Solaris
153    elif (echo $uname_a | $egrep "5\.[0-9]" > $devnull)
154    then
155        echo ${prefix}-5
156        exit 0
157    else
158        echo ${prefix}-Unknown
159        exit 1
160    fi
161# DecAlpha ########################################################
162elif (echo $uname_m | $egrep "alpha" > $devnull)
163then
164    prefix=DecAlpha
165    if (echo $uname_a | $egrep "Linux" > $devnull)
166    then
167        echo ${prefix}-Linux
168        exit 0
169    elif (echo $uname_a | $egrep "OSF1" > $devnull)
170    then
171        echo ${prefix}-OSF1
172        exit 0
173    else
174        echo ${prefix}-Unknown
175        exit 1
176    fi
177# IRIX ########################################################
178elif (echo $uname_m | $egrep "IRIX" > $devnull)
179then
180    prefix=IRIX
181    if (echo $uname_a | $egrep "6\.[0-9]" > $devnull)
182    then
183        echo ${prefix}-6
184        exit 0
185    else
186        echo ${prefix}-Unknown
187        exit 1
188    fi
189# AIX ########################################################
190elif (echo $uname_a | $egrep "AIX" > $devnull)
191then
192    prefix=AIX
193    if (uname -v |  $egrep "4" > $devnull)
194    then
195        echo ${prefix}-4
196        exit 0
197    elif (uname -v |  $egrep "5" > $devnull)
198    then
199        echo ${prefix}-5
200        exit 0
201    else
202        echo ${prefix}-Unknown
203        exit 1
204    fi
205# Darwin/Mac OS X ##############################################
206elif (echo $uname_m | $egrep "Power Macintosh" > $devnull)
207then
208    prefix="ppcMac"
209    if( uname -s | $egrep "Darwin" > $devnull)
210    then
211        echo ${prefix}-darwin
212        exit 0
213    else
214        echo ${prefix}-Unknown
215        exit 1
216    fi
217# other PowerPC ##############################################
218elif (echo $uname_m | $egrep "ppc" > $devnull)
219then
220    prefix="ppc"
221    if (echo $uname_a | $egrep "Linux" > $devnull)
222    then
223        echo ${prefix}-Linux
224        exit 0
225    else
226        echo ${prefix}-Unknown
227        exit 1
228    fi
229# itanium ########################################################
230elif (echo $uname_m | $egrep "ia64" > $devnull)
231then
232    # IA64-HPUX: see HPUX
233    prefix=IA64
234    if (echo $uname_a | $egrep "Linux" > $devnull)
235    then
236        echo ${prefix}-Linux
237        exit 0
238    else
239        echo ${prefix}-Unknown
240        exit 1
241    fi
242# sparc64-Linux ############################################
243elif (echo $uname_m | $egrep "sparc64" >$devnull)
244then
245    prefix=sparc64
246    if (echo $uname_a | $egrep "Linux" > $devnull)
247    then
248        echo ${prefix}-Linux
249        exit 0
250    else
251        echo ${prefix}-Unknown
252        exit 1
253    fi
254
255else # Unknown ########################################################
256    echo Unknown
257    exit 2
258fi
Note: See TracBrowser for help on using the repository browser.