Skip to content
Snippets Groups Projects
foamSystemCheck 4 KiB
Newer Older
#------------------------------------------------------------------------------
# =========                 |
# \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
#  \\    /   O peration     |
#   \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
#    \\/     M anipulation  |
#-------------------------------------------------------------------------------
# License
#     This file is part of OpenFOAM.
#
#     OpenFOAM is free software: you can redistribute it and/or modify it
#     under the terms of the GNU General Public License as published by
#     the Free Software Foundation, either version 3 of the License, or
#     (at your option) any later version.
#
#     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
#     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
#     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
#     for more details.
#
#     You should have received a copy of the GNU General Public License
#     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
#
# Script
#     foamSystemCheck
#
# Description
Andrew Heather's avatar
Andrew Heather committed
#     Checks the machine system and the user's
#     personal configuration for running OpenFOAM.
#
#------------------------------------------------------------------------------

# STATIC VARIABLES
# ~~~~~~~~~~~~~~~~
HLINE="-----------------------------------------------------------------------"
WIDTH=16
    echo $1 | tr -d " " | wc -m | tr -d " "
    NOCHAR=$(lenBase $1)
    NOCHAR=$(expr $NOCHAR - 1)
    ONELEN=$(length "$1")
    LDIFF=$(expr $ONELEN - $2)
    if [ $LDIFF -le 1 ]
    then
        while [ $LDIFF -lt 0 ]
        do
        LDIFF=$(expr $LDIFF + 4)
        WORD=$(echo "$WORD" | cut -c${LDIFF}-)
# MAIN CODE
# ~~~~~~~~~
heading "Checking basic system..."
echo "$(fixlen Shell: $WIDTH) $SHELL"
*/csh | */tcsh | */bash | */ksh)
    echo "ERROR: Cannot identify the current shell."
andy's avatar
andy committed
    echo "       OpenFOAM $WM_PROJECT_VERSION is compatible"
    echo "       with csh, tcsh, ksh and bash."
echo "$(fixlen Host: $WIDTH) $HOST"
    echo "ERROR: Cannot stat hostname."
andy's avatar
andy committed
    echo "       OpenFOAM $WM_PROJECT_VERSION needs a valid hostname to"
    echo "       function. Contact your system administrator."
OSTYPE=$(uname -s)
case "$OSTYPE" in
    echo "$(fixlen OS: $WIDTH) $OSTYPE version $(uname -r)"
    echo "ERROR: Incompatible operating system \"$OSTYPE\"."
andy's avatar
andy committed
    echo "       OpenFOAM $WM_PROJECT_VERSION is currently available for "
    echo "       Linux, LinuxAMD64 and SunOS only."
    ;;
esac


# check user name
USER_NAME=$LOGNAME
if [ $(length $USER_NAME) -eq 0 ]
then
    USER_NAME=$USER
echo "$(fixlen User: $WIDTH) ${USER_NAME}"
if [ $(length $USER_NAME) -eq 0 ]
then
    echo "ERROR: Cannot stat user name $USER_NAME."
andy's avatar
andy committed
    echo "       OpenFOAM $WM_PROJECT_VERSION needs a valid user name."
    echo "       Contact your system administrator. "
    echo
    fatalError=true
    echo "System check: FAIL"
    echo "=================="
    echo "Your system is not currently compatible with OpenFOAM installation "
    echo "requirements. Review the error messages and consult the documentation"
    echo "for further instructions."
    echo
else
    echo "System check: PASS"
    echo "=================="
    echo "Continue OpenFOAM installation."
    echo
fi

#------------------------------------------------------------------------------