1#! /bin/sh
2arch=none; osname=unknown
3myuname=`(uname -a) 2>/dev/null || arch 2>&1`
4if test -d /NextApps; then myuname=nextstep; fi
5if test -n "$myuname"; then
6  myuname=`echo $myuname | sed -e 's/^[^=]*=//' -e 's,/,,g' | \
7	  tr '[A-Z]' '[a-z]' | tr '\012' ' '`
8  set X $myuname; shift; osname=$1
9  case "$osname" in
10  irix*)    osname=irix;;
11  fx2800)   arch=fx2800; osname=concentrix;;
12  hp*)      osname=hpux; arch=`uname -m`
13            case $arch in
14		ia64) 		arch=ia64;;
15		9000/[34]*)	arch=m68k;;
16		9000/[678]*)	arch=hppa;;
17		*)		arch=hppa;;
18	    esac;;
19  os2)
20            arch=`uname -m`
21            if test -z "$arch"; then arch=ix86; fi
22            ;;
23  freebsd|netbsd|openbsd|dragonfly)
24            arch=`uname -m`
25            if test -z "$arch"; then arch=ix86; fi
26            case $arch in
27              amd64) arch=x86_64;;
28            esac;;
29  cygwin*)  arch=`uname -m`
30            if test -z "$arch"; then arch=ix86; fi
31            osname=cygwin;;
32  ultrix)   arch=mips;;
33  nextstep) arch=`file /bin/sh | sed 's/.*(for architecture \(.*\))/\1/'`;;
34  darwin*)  arch=`uname -p`
35            if test "$arch" = powerpc; then arch=ppc; fi ;;
36  osf1)     case "$5" in alpha) arch=alpha;; esac;;
37  linux)    arch=`uname -m`
38	    case $arch in
39		sparc64) arch=sparcv9;;
40		parisc*) arch=hppa;;
41		sparc) case "`cat /proc/cpuinfo`" in
42	    *SuperSparc*)   arch=sparcv8_super;;
43	    *TMS390Z5[05]*) arch=sparcv8_super;; # SuperSparc I or II
44	    *TMS390S1[05]*) arch=sparcv8_micro;; # MicroSparc I
45	    *MB86904*)      arch=sparcv8_micro;; # MicroSparc II
46	    *MB86907*)      arch=sparcv8_micro;; # TurboSparc
47	    *MB86934*)      arch=sparcv8_super;; # SparcLite
48	    *RT625*)        arch=sparcv8_super;; # HyperSparc
49	    *CY605*)        arch=sparcv8_super;;
50	    	       esac;;
51	    esac;;
52  sunos)    case "$3" in 5*) osname=solaris;; esac
53	    case "$5" in
54	    sun4|sun4[ce]) ;; #arch=sparcv7;;
55	    sun4[dm]) cpu="TI,|FMI,|Cypress,|Ross,"
56	      case "`(prtconf||devinfo)2>&- |egrep $cpu`" in
57	      *TI,TMS390Z5[05]*) arch=sparcv8_super;; # SuperSparc I or II
58	      *TI,TMS390S1[05]*) arch=sparcv8_micro;; # MicroSparc I
59	      *FMI,MB86904*)     arch=sparcv8_micro;; # MicroSparc II
60	      *FMI,MB86907*)     arch=sparcv8_micro;; # TurboSparc
61	      *FMI,MB86934*)     arch=sparcv8_super;; # SparcLite
62	      *Ross,RT625*)      arch=sparcv8_super;; # HyperSparc
63	      *Cypress,CY605*)   arch=sparcv8_super;;
64	      *)                 arch=sparcv8_super;; # ???
65	      esac;;
66	    sun4[uv])    arch=sparcv9;;
67            i*pc) arch=ix86;;
68	    esac;;
69  gnu*)     # Cover GNU/Hurd, GNU/kFreeBSD and other GNU userland
70            arch=`uname -m`;
71            case $arch in i386-*) arch=i386;;esac;;
72  esac
73fi
74echo $arch-$osname
75