https://github.com/Singular/Sources
Tip revision: be77cf1dd000fb79a2c712ff01d5455661826482 authored by Hans Schoenemann on 19 November 2014, 13:06:05 UTC
chg: changes from spielwiese
chg: changes from spielwiese
Tip revision: be77cf1
singuname.sh
#!/bin/sh
#
# FILE: singuname
# USAGE: singuname
# PURPOSE: prints to stdout a unique identifier of known uname(s)
# AUTHOR: obachman
# CREATED: 5/26/98
#
###########################################################################
egrep="egrep"
uname_a=`uname -a`
uname_m=`uname -m`
devnull='/dev/null'
file=file
binary='/bin/ls'
ldd='ldd'
# HPUX ########################################################
if (echo $uname_m | $egrep "HP-UX" > $devnull)
then
prefix=HPUX
# HPUX-9
if (echo $uname_a | $egrep "\.09\." > $devnull)
then
echo ${prefix}-9
exit 0
# HPUX-10
elif (echo $uname_a | $egrep "\.10\." > $devnull)
then
echo ${prefix}-10
exit 0
elif (echo $uname_a | $egrep " ia64 " > $devnull)
then
echo IA64-${prefix}
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# Intel ########################################################
elif (echo $uname_a | $egrep "i[3,4,5,6]86" > $devnull)
then
prefix=ix86
# Win ################
if (echo $uname_a | $egrep "CYGWIN" > $devnull)
then
echo ${prefix}-Win
exit 0
# FreeBSD ###############
elif (echo $uname_a | $egrep "FreeBSD" > $devnull)
then
echo ${prefix}-freebsd
exit 0
# Linux ###############
elif (echo $uname_a | $egrep "Linux" > $devnull)
then
prefix=${prefix}-Linux
if (test -x $file && -x $binary)
then
# LinuxAOUT only if file does not match ELF
if ($file $binary | $egrep -v "ELF" > $devnull)
then
echo ${prefix}AOUT
exit 0
fi
fi
# everything else is assumed to be Linux ELF
# check for libc5
if (echo `$ldd $binary` | $egrep "libc.so.5" > $devnull)
then
echo "${prefix}-libc5"
else
echo ${prefix}
fi
exit 0
elif (echo $uname_a | $egrep "Darwin" >$devnull)
then
echo ix86Mac-darwin
exit 0
elif (echo $uname_a | $egrep "SunOS" >$devnull)
then
# NexentaOS ###############
if (echo $uname_a | $egrep "NexentaOS" > $devnull)
then
echo ${prefix}-nexentaos
else
echo ix86-SunOS
fi
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# AMD-Opteron ########################################################
elif (echo $uname_m | $egrep "x86_64" > $devnull)
then
prefix=x86_64
if (echo $uname_a | $egrep "Linux" > $devnull)
then
echo ${prefix}-Linux
exit 0
elif (echo $uname_a | $egrep "Darwin" >$devnull)
then
echo x86_64Mac-darwin
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# AMD-Opteron ########################################################
elif (echo $uname_m | $egrep "amd64" > $devnull)
then
prefix=x86_64
if (echo $uname_a | $egrep "FreeBSD" > $devnull)
then
echo ${prefix}-freebsd
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# HPPA ################################################################
elif (echo $uname_m | $egrep "hppa" > $devnull)
then
prefix=hppa
if (echo $uname_a | $egrep "Linux" > $devnull)
then
echo ${prefix}-Linux
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# SunOS ########################################################
elif (echo $uname_a | $egrep "SunOS" > $devnull)
then
if (echo $uname_a | $egrep "sun3" > $devnull)
then
prefix=Sun3OS
else
prefix=SunOS
fi
if (echo $uname_a | $egrep "4\.[0-9]" > $devnull)
then
echo ${prefix}-4
exit 0
# Solaris
elif (echo $uname_a | $egrep "5\.[0-9]" > $devnull)
then
echo ${prefix}-5
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# DecAlpha ########################################################
elif (echo $uname_m | $egrep "alpha" > $devnull)
then
prefix=DecAlpha
if (echo $uname_a | $egrep "Linux" > $devnull)
then
echo ${prefix}-Linux
exit 0
elif (echo $uname_a | $egrep "OSF1" > $devnull)
then
echo ${prefix}-OSF1
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# IRIX ########################################################
elif (echo $uname_m | $egrep "IRIX" > $devnull)
then
prefix=IRIX
if (echo $uname_a | $egrep "6\.[0-9]" > $devnull)
then
echo ${prefix}-6
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# AIX ########################################################
elif (echo $uname_a | $egrep "AIX" > $devnull)
then
prefix=AIX
if (uname -v | $egrep "4" > $devnull)
then
echo ${prefix}-4
exit 0
elif (uname -v | $egrep "5" > $devnull)
then
echo ${prefix}-5
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# Darwin/Mac OS X ##############################################
elif (echo $uname_m | $egrep "Power Macintosh" > $devnull)
then
prefix="ppcMac"
if( uname -s | $egrep "Darwin" > $devnull)
then
echo ${prefix}-darwin
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# other PowerPC ##############################################
elif (echo $uname_m | $egrep "ppc" > $devnull)
then
prefix="ppc"
if (echo $uname_a | $egrep "Linux" > $devnull)
then
echo ${prefix}-Linux
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# itanium ########################################################
elif (echo $uname_m | $egrep "ia64" > $devnull)
then
# IA64-HPUX: see HPUX
prefix=IA64
if (echo $uname_a | $egrep "Linux" > $devnull)
then
echo ${prefix}-Linux
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
# sparc64-Linux ############################################
elif (echo $uname_m | $egrep "sparc64" >$devnull)
then
prefix=sparc64
if (echo $uname_a | $egrep "Linux" > $devnull)
then
echo ${prefix}-Linux
exit 0
else
echo ${prefix}-Unknown
exit 1
fi
else # Unknown ########################################################
echo Unknown
exit 2
fi