Files
epics-base/startup/EpicsHostArch
Andrew Johnson 515712c0e7 startup: Fix host arch for 64-bit darwin kernels
"uname -m" returns x86_86 on those machines, which we weren't expecting.
2011-06-27 15:09:54 -05:00

82 lines
2.0 KiB
Bash
Executable File

#!/bin/sh
#*************************************************************************
# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# EpicsHostArch - returns the Epics host architecture suitable
# for assigning to the EPICS_HOST_ARCH variable
if [ "x${1}" != "x" ]
then
suffix="-"${1}
else
suffix=""
fi
sysname=`uname`
case $sysname in
Linux )
os=linux
cpu=`uname -m`
case $cpu in i386 | i486 | i586 | i686 )
cpu=x86
;;
esac
if [ ${cpu} = "x86_64" ]; then
cpu=x86_64
fi
echo ${os}-${cpu}${suffix}
;;
Darwin )
os=darwin
cpu=`uname -m`
case $cpu in
"Power Macintosh") cpu=ppc ;;
i386 | x86_64 ) cpu=x86 ;;
esac
echo ${os}-${cpu}${suffix}
;;
SunOS )
version=`uname -r | sed '1s/^\([0-9]*\).*$/\1/'`
if [ ${version} -ge 5 ]; then
os=solaris
else
os=sun4
fi
cpu=`uname -m`
case $cpu in
sun4*)
cpu=sparc
;;
i86pc)
cpu=x86
;;
esac
echo ${os}-${cpu}${suffix}
;;
* )
sysname=`uname -o`
case $sysname in
Cygwin )
os=cygwin
cpu=`uname -m`
case $cpu in i386 | i486 | i586 | i686 )
cpu=x86
;;
esac
echo ${os}-${cpu}${suffix}
;;
* )
echo unsupported
;;
esac
;;
esac