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