ENH: relax compiler check in foamInstallationTest (can use system gcc)
This commit is contained in:
parent
d1313bfda7
commit
8fe5f7f9ee
@ -34,72 +34,73 @@
|
||||
|
||||
# Base settings
|
||||
FOAM_VERSION=1.6
|
||||
SUPPLIED_VERSION_GCC=4.3.3
|
||||
MIN_VERSION_GCC=4.3.1
|
||||
SUPPLIED_VERSION_GCC=4.4.3
|
||||
MIN_VERSION_GCC=4.3.3
|
||||
|
||||
# General
|
||||
WIDTH=20
|
||||
|
||||
# Global variables
|
||||
FATALERROR=0
|
||||
CRITICALERROR=0
|
||||
SSHRSHOK=0
|
||||
fatalError=0
|
||||
criticalError=0
|
||||
|
||||
# System variables
|
||||
HOST_NAME=`uname -n`
|
||||
OS=`uname -s`
|
||||
HOST=`uname -n`
|
||||
OSTYPE=`uname -s`
|
||||
USER_NAME=$LOGNAME
|
||||
if [ ! -n $USER_NAME ]; then
|
||||
USER_NAME=$USER
|
||||
fi
|
||||
: ${USER_NAME:=$USER}
|
||||
|
||||
# which OpenFOAM application to test for the Version
|
||||
foamTestApp=icoFoam
|
||||
|
||||
#==============================================================================
|
||||
# HELPER FUNCTIONS
|
||||
#==============================================================================
|
||||
|
||||
hline () {
|
||||
hline()
|
||||
{
|
||||
echo "-------------------------------------------------------------------------------"
|
||||
}
|
||||
|
||||
|
||||
expenv () {
|
||||
eval "echo $1"
|
||||
}
|
||||
|
||||
|
||||
heading () {
|
||||
echo ""
|
||||
echo ""
|
||||
heading()
|
||||
{
|
||||
echo
|
||||
echo
|
||||
echo "$1"
|
||||
}
|
||||
|
||||
|
||||
lenBase () {
|
||||
lenBase()
|
||||
{
|
||||
echo $1 | tr -d " " | wc -m | tr -d " "
|
||||
}
|
||||
|
||||
|
||||
length () {
|
||||
length()
|
||||
{
|
||||
NOCHAR=`lenBase $1`
|
||||
NOCHAR=`expr $NOCHAR - 1`
|
||||
if [ $NOCHAR -eq -1 ]; then
|
||||
NOCHAR=0
|
||||
fi
|
||||
[ $NOCHAR -ge 0 ] || NOCHAR=0
|
||||
echo $NOCHAR
|
||||
}
|
||||
|
||||
|
||||
stringLength () {
|
||||
stringLength()
|
||||
{
|
||||
echo $1 | wc -m | tr -d " "
|
||||
}
|
||||
|
||||
|
||||
fixlen () {
|
||||
fixlen()
|
||||
{
|
||||
WORD=$1
|
||||
ONELEN=`stringLength $1`
|
||||
LDIFF=`expr $ONELEN - $2`
|
||||
if [ $LDIFF -le 1 ]; then
|
||||
while [ $LDIFF -lt 0 ] ; do
|
||||
if [ $LDIFF -le 1 ]
|
||||
then
|
||||
while [ $LDIFF -lt 0 ]
|
||||
do
|
||||
WORD="$WORD "
|
||||
LDIFF=`expr $LDIFF + 1`
|
||||
done
|
||||
@ -112,33 +113,34 @@ fixlen () {
|
||||
}
|
||||
|
||||
|
||||
reportEnv () {
|
||||
reportEnv()
|
||||
{
|
||||
EXP_ENV=`eval "echo $1"`
|
||||
EXP_PATH=`eval "echo $2"`
|
||||
CRIT="$3"
|
||||
EXISTS=" no "
|
||||
ON_PATH=""
|
||||
if [ `length $EXP_ENV` -gt 0 ] ; then
|
||||
case $OS in
|
||||
if [ `length $EXP_ENV` -gt 0 ]
|
||||
then
|
||||
case "$OSTYPE" in
|
||||
SunOS)
|
||||
if /usr/bin/test -e $EXP_ENV ; then
|
||||
if /usr/bin/test -e $EXP_ENV
|
||||
then
|
||||
EXISTS=" yes "
|
||||
if [ "$2" != noPath ]; then
|
||||
if [ "$2" != noPath ]
|
||||
then
|
||||
ON_PATH=" no "
|
||||
OLD_IFS=$IFS
|
||||
oldIFS=$IFS
|
||||
IFS=':'
|
||||
for e in $EXP_PATH
|
||||
do
|
||||
if \
|
||||
[ \
|
||||
"$e" = "$EXP_ENV" \
|
||||
-o "$e" = "${EXP_ENV}/bin" \
|
||||
-o "${EXP_ENV}/lib" = "$e" \
|
||||
] ; then
|
||||
case "$e" in
|
||||
"$EXP_ENV" | "$EXP_ENV/bin" | "$EXP_ENV/lib")
|
||||
ON_PATH="yes "
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
IFS=$OLD_IFS
|
||||
IFS=$oldIFS
|
||||
else
|
||||
CRIT=" $3"
|
||||
fi
|
||||
@ -148,24 +150,23 @@ reportEnv () {
|
||||
echo "`fixlen "$1" 21` `fixlen "$EXP_ENV" 40` $EXISTS $ON_PATH $CRIT"
|
||||
;;
|
||||
*)
|
||||
if [ -e "$EXP_ENV" ] ; then
|
||||
if [ -e "$EXP_ENV" ]
|
||||
then
|
||||
EXISTS=" yes "
|
||||
if [ "$2" != noPath ]; then
|
||||
if [ "$2" != noPath ]
|
||||
then
|
||||
ON_PATH=" no "
|
||||
OLD_IFS=$IFS
|
||||
oldIFS=$IFS
|
||||
IFS=':'
|
||||
for e in $EXP_PATH
|
||||
do
|
||||
if \
|
||||
[ \
|
||||
"$e" = "$EXP_ENV" \
|
||||
-o "$e" = "${EXP_ENV}/bin" \
|
||||
-o "${EXP_ENV}/lib" = "$e" \
|
||||
] ; then
|
||||
case "$e" in
|
||||
"$EXP_ENV" | "$EXP_ENV/bin" | "$EXP_ENV/lib")
|
||||
ON_PATH="yes "
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
IFS=$OLD_IFS
|
||||
IFS=$oldIFS
|
||||
else
|
||||
CRIT=" $3"
|
||||
fi
|
||||
@ -180,11 +181,13 @@ reportEnv () {
|
||||
fi
|
||||
|
||||
ERROR="false"
|
||||
if [ "$EXISTS" = no ] || [ "$ON_PATH" = no ]; then
|
||||
if [ "$EXISTS" = no ] || [ "$ON_PATH" = no ]
|
||||
then
|
||||
ERROR="true"
|
||||
fi
|
||||
if [ "$3" = yes ] && [ "$ERROR" = true ]; then
|
||||
CRITICALERROR=`expr $CRITICALERROR + 1`
|
||||
if [ "$3" = yes ] && [ "$ERROR" = true ]
|
||||
then
|
||||
criticalError=`expr $criticalError + 1`
|
||||
echo "WARNING: CRITICAL ERROR"
|
||||
echo
|
||||
fi
|
||||
@ -192,197 +195,111 @@ reportEnv () {
|
||||
}
|
||||
|
||||
|
||||
findExec() {
|
||||
OLD_IFS=$IFS
|
||||
findExec()
|
||||
{
|
||||
oldIFS=$IFS
|
||||
IFS=':'
|
||||
for d in $1
|
||||
do
|
||||
case $OS in
|
||||
case "$OSTYPE" in
|
||||
SunOS)
|
||||
if /usr/bin/test ! -d "$d/$2" -a -x "$d/$2" ; then
|
||||
IFS=$OLD_IFS
|
||||
if /usr/bin/test ! -d "$d/$2" -a -x "$d/$2"
|
||||
then
|
||||
IFS=$oldIFS
|
||||
echo "$d/$2"
|
||||
return 0
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
if [ ! -d "$d/$2" -a -x "$d/$2" ]; then
|
||||
IFS=$OLD_IFS
|
||||
if [ ! -d "$d/$2" -a -x "$d/$2" ]
|
||||
then
|
||||
IFS=$oldIFS
|
||||
echo "$d/$2"
|
||||
return 0
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
IFS=$OLD_IFS
|
||||
IFS=$oldIFS
|
||||
return 1
|
||||
}
|
||||
|
||||
|
||||
reportExecutable () {
|
||||
reportExecutable()
|
||||
{
|
||||
APP_PATH=""
|
||||
APP_PATH=`findExec $PATH $1`
|
||||
APP_SPEC="$2"
|
||||
if [ ! -n $APP_PATH ];then
|
||||
if [ ! -n $APP_PATH ]
|
||||
then
|
||||
echo "`fixlen "$1" 9`" "*** not installed ***"
|
||||
VERSION=""
|
||||
case $1 in
|
||||
icoFoam)
|
||||
echo " CRITICAL ERROR"
|
||||
CRITICALERROR=`expr $CRITICALERROR + 1`
|
||||
;;
|
||||
gcc)
|
||||
echo " CRITICAL ERROR"
|
||||
CRITICALERROR=`expr $CRITICALERROR + 1`
|
||||
;;
|
||||
tar) ;;
|
||||
gtar) ;;
|
||||
gzip) ;;
|
||||
dx) ;;
|
||||
case "$1" in
|
||||
gcc | $foamTestApp)
|
||||
echo " CRITICAL ERROR"
|
||||
criticalError=`expr $criticalError + 1`
|
||||
;;
|
||||
esac
|
||||
echo
|
||||
return 1
|
||||
fi
|
||||
case $1 in
|
||||
icoFoam)
|
||||
VERSION=`$1 2>&1 \
|
||||
| \grep ' Version:' \
|
||||
| sed -e 's/.*Version:/Version:/' \
|
||||
| cut -d" " -f3`
|
||||
case "$1" in
|
||||
$foamTestApp)
|
||||
VERSION=`$1 -case /dev/null 2>&1 \
|
||||
| sed -ne 's/^.*Version: *\([^ ][^ ]*\).*/\1/p'`
|
||||
;;
|
||||
gcc)
|
||||
VERSION=`$1 -v 2>&1 \
|
||||
| sed -ne 's/^gcc version \([0-9][0-9.]*\).*/\1/p' `
|
||||
|
||||
if [ "$VERSION" != "$SUPPLIED_VERSION_GCC" ]
|
||||
then
|
||||
echo "WARNING: gcc version does not match gcc supplied" \
|
||||
"with this release of OpenFOAM"
|
||||
echo " Supplied version: $SUPPLIED_VERSION_GCC"
|
||||
echo " User version : $VERSION"
|
||||
echo " Minimum required: $MIN_VERSION_GCC"
|
||||
echo ""
|
||||
fi
|
||||
;;
|
||||
gtar)
|
||||
VERSION=`$APP_PATH --version | head -1`
|
||||
;;
|
||||
tar)
|
||||
VERSION=`$APP_PATH --version | head -1 | cut -d" " -f4`
|
||||
;;
|
||||
gzip)
|
||||
case "$OSTYPE" in
|
||||
SunOS)
|
||||
VERSION=`$1 --version 2>&1 | grep gzip | cut -d" " -f2`
|
||||
;;
|
||||
gcc)
|
||||
VERSION=`$1 -v 2>&1 \
|
||||
| grep 'gcc version' \
|
||||
| cut -d" " -f3`
|
||||
if [ ! "$VERSION" = "$SUPPLIED_VERSION_GCC" ]; then
|
||||
echo "WARNING: gcc version does not match gcc supplied" \
|
||||
"with this release of OpenFOAM"
|
||||
echo " Supplied version: $SUPPLIED_VERSION_GCC"
|
||||
echo " User version : $VERSION"
|
||||
echo " Minimum required: $MIN_VERSION_GCC"
|
||||
echo ""
|
||||
fi
|
||||
;;
|
||||
gtar)
|
||||
VERSION=`$APP_PATH --version | head -1`
|
||||
;;
|
||||
tar)
|
||||
VERSION=`$APP_PATH --version | head -1 | cut -d" " -f4`
|
||||
;;
|
||||
gzip)
|
||||
case $OS in
|
||||
SunOS)
|
||||
VERSION=`$1 --version 2>&1 | grep gzip | cut -d" " -f2`
|
||||
;;
|
||||
*)
|
||||
VERSION=`$1 --version | head -1 | cut -d" " -f2`
|
||||
;;
|
||||
esac
|
||||
*)
|
||||
VERSION=`$1 --version | head -1 | cut -d" " -f2`
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
if [ "$APP_PATH" = "$APP_SPEC" ] || [ ! "$2" ]; then
|
||||
if [ "$APP_PATH" = "$APP_SPEC" ] || [ ! "$2" ]
|
||||
then
|
||||
echo "`fixlen "$1" 9` `fixlen "$VERSION" 10` `fixlen "$APP_PATH" 58`"
|
||||
else
|
||||
echo "`fixlen "$1" 9` `fixlen "$VERSION" 10`"
|
||||
echo "WARNING: Conflicting installations:"
|
||||
echo " OpenFOAM settings : $APP_SPEC"
|
||||
echo " current path : $APP_PATH"
|
||||
case $1 in
|
||||
icoFoam)
|
||||
echo " CRITICAL ERROR"
|
||||
CRITICALERROR=`expr $CRITICALERROR + 1`
|
||||
;;
|
||||
gcc)
|
||||
echo " CRITICAL ERROR"
|
||||
CRITICALERROR=`expr $CRITICALERROR + 1`
|
||||
;;
|
||||
gtar) ;;
|
||||
gzip) ;;
|
||||
dx) ;;
|
||||
case "$1" in
|
||||
gcc | $foamTestApp)
|
||||
echo " CRITICAL ERROR"
|
||||
criticalError=`expr $criticalError + 1`
|
||||
;;
|
||||
esac
|
||||
echo ""
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
pingTest () {
|
||||
RESULT=""
|
||||
case $OS in
|
||||
SunOS)
|
||||
PINGTEST=`/usr/sbin/ping $1 2>&1`
|
||||
if [ "`echo $PINGTEST | grep alive`" != "" ] ; then
|
||||
RESULT="Successful"
|
||||
elif [ "`echo $PINGTEST | grep 'unknown host'`" != "" ] ; then
|
||||
RESULT="No_entry_for_\"$1\"_in_/etc/hosts"
|
||||
else
|
||||
RESULT="Networking_cannot_reach_$1"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
PINGTEST=`/bin/ping -w 3 -c 1 $1 2>&1`
|
||||
if [ "`echo $PINGTEST | grep '1 received'`" != "" ] ; then
|
||||
RESULT="Successful"
|
||||
elif [ "`echo $PINGTEST | grep 'unknown host'`" != "" ] ; then
|
||||
RESULT="No_entry_for_\"$1\"_in_/etc/hosts"
|
||||
else
|
||||
RESULT="Networking_cannot_reach_$1"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
echo "`fixlen "Pinging_$1" 25` `fixlen "$RESULT" 45` `fixlen "$2" 5`"
|
||||
|
||||
if [ "$2" = yes ] && [ "$RESULT" != Successful ]; then
|
||||
CRITICALERROR=`expr $CRITICALERROR + 1`
|
||||
echo "WARNING: CRITICAL ERROR"
|
||||
echo
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
telnetPortTest () {
|
||||
telnet -e A $1 $2 <<EOF
|
||||
A
|
||||
quit
|
||||
EOF
|
||||
}
|
||||
|
||||
|
||||
checkTelnetPort () {
|
||||
if [ -x "/usr/bin/telnet" ] || [ -x "/bin/telnet" ] ; then
|
||||
RESULT=`telnetPortTest $1 $2 2>&1 | egrep "onnect.* [t|r]"`
|
||||
if [ "`echo $RESULT | grep 'Connected to'`" ] ; then
|
||||
RESULT='Successful'
|
||||
elif [ "`echo $RESULT | grep 'Connection refused'`" ] ; then
|
||||
RESULT='Unsuccessful_connection_refused*'
|
||||
else
|
||||
RESULT="Not_active*"
|
||||
fi
|
||||
else
|
||||
RESULT='No_telnet_installed:_cannot_check*'
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
checkRsh () {
|
||||
checkTelnetPort $HOST_NAME 222
|
||||
echo "`fixlen "Test_rsh:" 25` `fixlen "$RESULT" 45` "yes""
|
||||
if [ "$RESULT" != Successful ]; then
|
||||
SSHRSHOK=`expr $SSHRSHOK + 1`
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
checkSsh () {
|
||||
checkTelnetPort $HOST_NAME 22
|
||||
echo "`fixlen "Test_ssh:" 25` `fixlen "$RESULT" 45` "yes""
|
||||
if [ "$RESULT" != Successful ]; then
|
||||
SSHRSHOK=`expr $SSHRSHOK + 1`
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
checkOpenFOAMEnvironment() {
|
||||
checkOpenFOAMEnvironment()
|
||||
{
|
||||
[ -d "$WM_PROJECT_INST_DIR" ] && [ -d "$WM_THIRD_PARTY_DIR" ] || {
|
||||
echo ""
|
||||
echo "FATAL ERROR: OpenFOAM environment not configured."
|
||||
@ -396,54 +313,50 @@ checkOpenFOAMEnvironment() {
|
||||
}
|
||||
|
||||
|
||||
checkUserShell() {
|
||||
checkUserShell()
|
||||
{
|
||||
echo "`fixlen Shell: $WIDTH` ${SHELL##*/}"
|
||||
case $SHELL in
|
||||
*/csh | */tcsh)
|
||||
# USER_CONFIG_TYPE="cshrc"
|
||||
echo "`fixlen "Shell:" $WIDTH` ${SHELL##*/}"
|
||||
;;
|
||||
*/bash | */ksh)
|
||||
# USER_CONFIG_TYPE="bashrc"
|
||||
echo "`fixlen "Shell:" $WIDTH` ${SHELL##*/}"
|
||||
;;
|
||||
*)
|
||||
# USER_CONFIG_TYPE=""
|
||||
echo "`fixlen "Shell:" $WIDTH` ${SHELL##*/}"
|
||||
echo "FATAL ERROR: Cannot identify the shell you are running."
|
||||
echo " OpenFOAM ${FOAM_VERSION} is compatible with "
|
||||
echo " csh, tcsh, ksh and bash."
|
||||
echo
|
||||
FATALERROR=`expr $FATALERROR + 1`;;
|
||||
*/csh | */tcsh | */bash | */ksh)
|
||||
;;
|
||||
*)
|
||||
echo "FATAL ERROR: Cannot identify the shell you are running."
|
||||
echo " OpenFOAM ${FOAM_VERSION} is compatible with "
|
||||
echo " csh, tcsh, ksh and bash."
|
||||
echo
|
||||
fatalError=`expr $fatalError + 1`
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
|
||||
checkHostName() {
|
||||
if [ ! "$HOST_NAME" ]; then
|
||||
echo "`fixlen "Host:" $WIDTH` ${HOST_NAME}"
|
||||
checkHostName()
|
||||
{
|
||||
echo "`fixlen Host: $WIDTH` $HOST"
|
||||
if [ ! "$HOST" ]
|
||||
then
|
||||
echo "FATAL ERROR: Cannot stat hostname."
|
||||
echo " Contact your system administrator, "
|
||||
echo " OpenFOAM ${FOAM_VERSION} needs a valid "
|
||||
echo " hostname to function."
|
||||
echo
|
||||
FATALERROR=`expr $FATALERROR + 1`
|
||||
else
|
||||
echo "`fixlen "Host:" $WIDTH` ${HOST_NAME}"
|
||||
fatalError=`expr $fatalError + 1`
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
checkOS () {
|
||||
case "$OS" in
|
||||
checkOS()
|
||||
{
|
||||
case "$OSTYPE" in
|
||||
Linux | LinuxAMD64 | SunOS )
|
||||
echo "`fixlen "OS:" $WIDTH` ${OS} version $(uname -r)"
|
||||
echo "`fixlen OS: $WIDTH` $OSTYPE version $(uname -r)"
|
||||
;;
|
||||
*)
|
||||
echo "FATAL ERROR: Incompatible operating system \"$OS\"."
|
||||
echo " OpenFOAM ${FOAM_VERSION} is currently "
|
||||
echo "FATAL ERROR: Incompatible operating system \"$OSTYPE\"."
|
||||
echo " OpenFOAM $FOAM_VERSION is currently "
|
||||
echo " available for Linux and SunOS only."
|
||||
echo
|
||||
FATALERROR=`expr $FATALERROR + 1`
|
||||
fatalError=`expr $fatalError + 1`
|
||||
;;
|
||||
esac
|
||||
}
|
||||
@ -466,8 +379,8 @@ hline
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
heading "Checking main OpenFOAM env variables..."
|
||||
COL1=`fixlen "Environment_variable" 21`
|
||||
COL2=`fixlen "Set_to_file_or_directory" 40`
|
||||
COL1=`fixlen Environment_variable 21`
|
||||
COL2=`fixlen Set_to_file_or_directory 40`
|
||||
COL3="Valid"
|
||||
COL4="Path"
|
||||
COL5="Crit"
|
||||
@ -505,20 +418,21 @@ hline
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
heading "Third party software"
|
||||
COL1=`fixlen "Software" 9`
|
||||
COL2=`fixlen "Version" 10`
|
||||
COL3=`fixlen "Location" 10`
|
||||
COL1=`fixlen Software 9`
|
||||
COL2=`fixlen Version 10`
|
||||
COL3=`fixlen Location 10`
|
||||
hline
|
||||
echo "$COL1 $COL2 $COL3"
|
||||
hline
|
||||
reportExecutable gcc "${WM_COMPILER_DIR}/bin/gcc"
|
||||
reportExecutable gcc
|
||||
reportExecutable gzip
|
||||
if [ "$OS" = Linux ] ; then
|
||||
if [ "$OSTYPE" = Linux ]
|
||||
then
|
||||
reportExecutable tar
|
||||
else
|
||||
reportExecutable gtar
|
||||
fi
|
||||
reportExecutable icoFoam "${FOAM_APPBIN}/icoFoam"
|
||||
reportExecutable $foamTestApp "$FOAM_APPBIN/$foamTestApp"
|
||||
|
||||
hline
|
||||
|
||||
@ -526,27 +440,28 @@ hline
|
||||
heading "Summary"
|
||||
hline
|
||||
|
||||
if [ $FATALERROR -gt 0 ] ; then
|
||||
echo "The system test has evoked $FATALERROR fatal error(s)."
|
||||
if [ $fatalError -gt 0 ]
|
||||
then
|
||||
echo "The system test has evoked $fatalError fatal error(s)."
|
||||
else
|
||||
echo "Base configuration ok."
|
||||
fi
|
||||
echo ""
|
||||
if [ $CRITICALERROR -gt 0 ]; then
|
||||
echo "The foam installation contains $CRITICALERROR critical error(s)."
|
||||
if [ $criticalError -gt 0 ]
|
||||
then
|
||||
echo "The foam installation contains $criticalError critical error(s)."
|
||||
else
|
||||
echo "Critical systems ok."
|
||||
fi
|
||||
echo ""
|
||||
if [ $CRITICALERROR -gt 0 ] || [ $FATALERROR -gt 0 ]; then
|
||||
echo "Review the output for warning messages and consult "
|
||||
echo "the installation guide for trouble shooting."
|
||||
if [ $criticalError -gt 0 ] || [ $fatalError -gt 0 ]
|
||||
then
|
||||
echo
|
||||
echo "Review the output for warning messages and consult"
|
||||
echo "the installation guide for troubleshooting."
|
||||
fi
|
||||
echo ""
|
||||
|
||||
echo "done."
|
||||
|
||||
echo ""
|
||||
echo
|
||||
echo Done
|
||||
echo
|
||||
|
||||
exit 0
|
||||
|
||||
|
@ -38,31 +38,32 @@ FOAM_VERSION=1.6
|
||||
|
||||
HLINE="-----------------------------------------------------------------------"
|
||||
WIDTH=16
|
||||
unset FATALERROR
|
||||
unset fatalError
|
||||
|
||||
# FUNCTIONS
|
||||
# ~~~~~~~~~
|
||||
heading () {
|
||||
echo ""
|
||||
heading()
|
||||
{
|
||||
echo
|
||||
echo "$1"
|
||||
echo "$HLINE"
|
||||
}
|
||||
|
||||
lenBase () {
|
||||
lenBase()
|
||||
{
|
||||
echo $1 | tr -d " " | wc -m | tr -d " "
|
||||
}
|
||||
|
||||
length () {
|
||||
length()
|
||||
{
|
||||
NOCHAR=$(lenBase $1)
|
||||
NOCHAR=$(expr $NOCHAR - 1)
|
||||
if [ $NOCHAR -eq -1 ]
|
||||
then
|
||||
NOCHAR=0
|
||||
fi
|
||||
[ $NOCHAR -ge 0 ] || NOCHAR=0
|
||||
echo $NOCHAR
|
||||
}
|
||||
|
||||
fixlen () {
|
||||
fixlen()
|
||||
{
|
||||
WORD=$1
|
||||
ONELEN=$(length "$1")
|
||||
LDIFF=$(expr $ONELEN - $2)
|
||||
@ -86,48 +87,43 @@ fixlen () {
|
||||
heading "Checking basic system..."
|
||||
|
||||
# check shell
|
||||
echo "$(fixlen "Shell:" $WIDTH) $SHELL"
|
||||
echo "$(fixlen Shell: $WIDTH) $SHELL"
|
||||
case "$SHELL" in
|
||||
*/csh | */tcsh)
|
||||
USER_CONFIG_TYPE=cshrc
|
||||
;;
|
||||
*/bash | */ksh)
|
||||
USER_CONFIG_TYPE=bashrc
|
||||
*/csh | */tcsh | */bash | */ksh)
|
||||
;;
|
||||
*)
|
||||
USER_CONFIG_TYPE=""
|
||||
echo "FATALERROR: Cannot identify the current shell."
|
||||
echo " OpenFOAM ${FOAM_VERSION} is compatible"
|
||||
echo " with csh, tcsh, ksh and bash."
|
||||
echo "ERROR: Cannot identify the current shell."
|
||||
echo " OpenFOAM $FOAM_VERSION is compatible"
|
||||
echo " with csh, tcsh, ksh and bash."
|
||||
echo
|
||||
FATALERROR=yes
|
||||
fatalError=true
|
||||
;;
|
||||
esac
|
||||
|
||||
# check hostname
|
||||
HOST=$(uname -n)
|
||||
echo "$(fixlen "Host:" $WIDTH) $HOST"
|
||||
echo "$(fixlen Host: $WIDTH) $HOST"
|
||||
if [ $(length $HOST) -eq 0 ]
|
||||
then
|
||||
echo "FATALERROR: Cannot stat hostname."
|
||||
echo " OpenFOAM ${FOAM_VERSION} needs a valid hostname to function."
|
||||
echo " Contact your system administrator. "
|
||||
echo "ERROR: Cannot stat hostname."
|
||||
echo " OpenFOAM $FOAM_VERSION needs a valid hostname to function."
|
||||
echo " Contact your system administrator. "
|
||||
echo
|
||||
FATALERROR=yes
|
||||
fatalError=true
|
||||
fi
|
||||
|
||||
# check os
|
||||
OS=$(uname -s)
|
||||
case "$OS" in
|
||||
OSTYPE=$(uname -s)
|
||||
case "$OSTYPE" in
|
||||
Linux | LinuxAMD64 | SunOS )
|
||||
echo "$(fixlen "OS:" $WIDTH) ${OS} version $(uname -r)"
|
||||
echo "$(fixlen OS: $WIDTH) $OSTYPE version $(uname -r)"
|
||||
;;
|
||||
*)
|
||||
echo "FATALERROR: Incompatible operating system \"$OS\"."
|
||||
echo " OpenFOAM ${FOAM_VERSION} is currently available for "
|
||||
echo " Linux, LinuxAMD64 and SunOS only."
|
||||
echo "ERROR: Incompatible operating system \"$OSTYPE\"."
|
||||
echo " OpenFOAM $FOAM_VERSION is currently available for "
|
||||
echo " Linux, LinuxAMD64 and SunOS only."
|
||||
echo
|
||||
FATALERROR=yes
|
||||
fatalError=true
|
||||
;;
|
||||
esac
|
||||
|
||||
@ -139,20 +135,20 @@ then
|
||||
USER_NAME=$USER
|
||||
fi
|
||||
|
||||
echo "$(fixlen "User:" $WIDTH) ${USER_NAME}"
|
||||
echo "$(fixlen User: $WIDTH) ${USER_NAME}"
|
||||
if [ $(length $USER_NAME) -eq 0 ]
|
||||
then
|
||||
echo "FATALERROR: Cannot stat user name ${USER_NAME}."
|
||||
echo " OpenFOAM ${FOAM_VERSION} needs a valid user name."
|
||||
echo " Contact your system administrator. "
|
||||
echo ""
|
||||
FATALERROR=yes
|
||||
echo "ERROR: Cannot stat user name $USER_NAME."
|
||||
echo " OpenFOAM $FOAM_VERSION needs a valid user name."
|
||||
echo " Contact your system administrator. "
|
||||
echo
|
||||
fatalError=true
|
||||
fi
|
||||
|
||||
|
||||
echo ""
|
||||
echo ""
|
||||
if [ -n "$FATALERROR" ]
|
||||
echo
|
||||
echo
|
||||
if [ "$fatalError" = true ]
|
||||
then
|
||||
echo "System check: FAIL"
|
||||
echo "=================="
|
||||
|
Loading…
Reference in New Issue
Block a user