mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: improved handling of gmp/mpfr library settings (issue #674)
- export library path for gmp/mpfr from CGAL config files. This is required when non-system gmp/mpfr libraries are being used, but not using a ThirdParty compiler installation. - automatically handle lib/ vs lib64/ (eg, for central installations) for packages such as boost, CGAL, etc. While the ThirdParty compilation of these will normally land in lib64/, this may not be the case when they are supplied by another means. - reworked the handling of foamEtcFile and foamCleanPath for less clutter in the configuration files. Added the bin/tools/lib-dir script to handle logic that is too complex to easily manage in csh.
This commit is contained in:
@ -4,7 +4,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2017-2018 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -15,6 +15,7 @@
|
||||
#
|
||||
# Description
|
||||
# Usage: foamCleanPath [OPTION] path [wildcard] .. [wildcard]
|
||||
# foamCleanPath [OPTION] -env=name [wildcard1] .. [wildcardN]
|
||||
#
|
||||
# Prints its argument (which should be a ':' separated path)
|
||||
# without the following:
|
||||
@ -23,24 +24,48 @@
|
||||
# - inaccessible directories (with the -strip option)
|
||||
#
|
||||
# Note
|
||||
# - this routine will fail when directories have embedded spaces
|
||||
# - this routine fails when directories have embedded spaces
|
||||
# - false matches possible if a wildcard contains '.' (sed regex)
|
||||
# - the wildcards themselves can be written together and separated
|
||||
# by colons or whitespace
|
||||
#
|
||||
# Examples for cleaning the path:
|
||||
#
|
||||
# - Using explicit arguments
|
||||
# cleaned=$(foamCleanPath "$PATH" dir1:dir2) && PATH=$cleaned
|
||||
#
|
||||
# - Variable to clean passed as an option
|
||||
# cleaned=$(foamCleanPath -env=PATH dir1:dir2) && PATH=$cleaned
|
||||
#
|
||||
# - Using shell evaluation for the output
|
||||
# eval $(foamCleanPath -sh=PATH "$PATH" dir1:dir2)
|
||||
# eval $(foamCleanPath -sh=PATH -env=PATH dir1:dir2)
|
||||
# eval $(foamCleanPath -sh-env=PATH dir1:dir2)
|
||||
#
|
||||
# - Similarly for c-shell
|
||||
# eval `foamCleanPath -csh-env=PATH dir1:dir2`
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
usage() {
|
||||
cat <<USAGE 1>&2
|
||||
Usage: ${0##*/} [OPTION] path [wildcard1] .. [wildcardN]
|
||||
Usage: foamCleanPath [OPTION] path [wildcard1] .. [wildcardN]]
|
||||
foamCleanPath [OPTION] -env=name [wildcard1] .. [wildcardN]
|
||||
|
||||
options:
|
||||
-csh=NAME Produce 'setenv NAME ...' output for csh eval
|
||||
-sh=NAME Produce 'NAME=...' output for sh eval
|
||||
-csh-env=NAME As per -csh, with -env for initial content
|
||||
-sh-env=NAME As per -sh, with -env for initial content
|
||||
-env=NAME Evaluate NAME to obtain initial content
|
||||
-debug print debug information to stderr
|
||||
-strip remove inaccessible directories
|
||||
-verbose report some progress (input, output, ...)
|
||||
-help print the usage
|
||||
|
||||
Prints its argument (which should be a ':' separated list) cleansed from
|
||||
- duplicate elements
|
||||
- elements whose start matches one of the wildcard(s)
|
||||
- inaccessible directories (with the -strip option)
|
||||
* duplicate elements
|
||||
* elements whose start matches one of the wildcard(s)
|
||||
* inaccessible directories (the -strip option)
|
||||
|
||||
Exit status
|
||||
0 on success
|
||||
@ -51,15 +76,58 @@ USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Report error and exit
|
||||
die()
|
||||
{
|
||||
exec 1>&2
|
||||
echo
|
||||
echo "Error encountered:"
|
||||
while [ "$#" -ge 1 ]; do echo " $1"; shift; done
|
||||
echo
|
||||
echo "See 'foamCleanPath -help' for usage"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
# Input and outputs
|
||||
unset dirList shellOutput
|
||||
|
||||
# Parse options
|
||||
unset optDebug optStrip optVerbose
|
||||
unset optDebug optEnvName optStrip optVerbose
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
-h | -help*)
|
||||
usage
|
||||
;;
|
||||
-csh=* | -sh=* | -csh-env=* | -sh-env=*)
|
||||
name="${1#*=}"
|
||||
[ -n "$name" ] || die "Option '$1' missing an ENVNAME"
|
||||
|
||||
# Output prefix
|
||||
case "$1" in
|
||||
-csh*)
|
||||
shellOutput="setenv $name " # eg, "setenv PATH xyz"
|
||||
;;
|
||||
*)
|
||||
shellOutput="$name=" # eg, "PATH=xyz"
|
||||
;;
|
||||
esac
|
||||
|
||||
# For (-csh-env | -sh-env) also use name for input evaluation
|
||||
case "$1" in
|
||||
*-env=*)
|
||||
optEnvName="$name"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
-env=*)
|
||||
name="${1#*=}"
|
||||
[ -n "$name" ] || die "Option '$1' missing an ENVNAME"
|
||||
optEnvName="$name"
|
||||
;;
|
||||
-debug)
|
||||
optDebug=true
|
||||
;;
|
||||
@ -76,11 +144,18 @@ do
|
||||
shift
|
||||
done
|
||||
|
||||
# Basic checks, setup
|
||||
[ "$#" -ge 1 ] || usage
|
||||
|
||||
dirList="$1"
|
||||
shift
|
||||
# Basic checks
|
||||
if [ -n "$optEnvName" ]
|
||||
then
|
||||
eval "dirList=\$$optEnvName"
|
||||
elif [ "$#" -ge 1 ]
|
||||
then
|
||||
dirList="$1"
|
||||
shift
|
||||
else
|
||||
die "Requires at least one argument, or use the -env option"
|
||||
fi
|
||||
|
||||
[ -n "$dirList" ] || exit 2 # Quick exit on empty 'dirList'
|
||||
|
||||
@ -105,8 +180,8 @@ fi
|
||||
# The "wildcard1 ... wildcardN" may have been passed as a single parameter
|
||||
# or may contain ':' separators
|
||||
|
||||
oldIFS="$IFS" # Preserve initial IFS
|
||||
IFS=': ' # Split on colon, whitespace
|
||||
oldIFS="$IFS" # Preserve initial IFS
|
||||
IFS=': ' # Split on colon, whitespace
|
||||
set -- $*
|
||||
|
||||
if [ -n "$optVerbose" ]
|
||||
@ -128,10 +203,10 @@ do
|
||||
done
|
||||
printDebug "intermediate>$dirList<"
|
||||
|
||||
IFS=': ' # Split on colon, whitespace (to avoid surprises)
|
||||
IFS=': ' # Split on colon, whitespace (to avoid surprises)
|
||||
set -- $dirList
|
||||
|
||||
IFS="$oldIFS" # Restore initial IFS
|
||||
IFS="$oldIFS" # Restore initial IFS
|
||||
|
||||
# Rebuild the list
|
||||
unset dirList
|
||||
@ -153,12 +228,11 @@ do
|
||||
done
|
||||
|
||||
printDebug "output>$dirList<"
|
||||
|
||||
if [ -n "$optVerbose" ]
|
||||
then
|
||||
echo "output: $dirList" 1>&2
|
||||
fi
|
||||
|
||||
echo "$dirList"
|
||||
echo "$shellOutput$dirList"
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
132
bin/foamEtcFile
132
bin/foamEtcFile
@ -4,7 +4,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2017-2018 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -56,10 +56,13 @@ options:
|
||||
-mode=MODE Any combination of u(user), g(group), o(other)
|
||||
-prefix=DIR Specify an alternative installation prefix
|
||||
-version=VER Specify alternative OpenFOAM version (eg, 3.0, 1612, ...)
|
||||
-csh Produce output suitable for a csh or sh 'eval'
|
||||
-csh-verbose As per -csh with additional verbosity
|
||||
-sh Produce output suitable for a csh or sh 'eval'
|
||||
-sh-verbose As per -sh with additional verbosity
|
||||
-csh Produce 'source FILE' output for a csh eval
|
||||
-sh Produce '. FILE' output for a sh eval
|
||||
-csh-verbose As per -csh, with additional verbosity
|
||||
-sh-verbose As per -sh, with additional verbosity
|
||||
-config Add config directory prefix for shell type:
|
||||
with -csh* for a config.csh/ prefix
|
||||
with -sh* for a config.sh/ prefix
|
||||
-quiet (-q) Suppress all normal output
|
||||
-silent (-s) Suppress stderr, except -csh-verbose, -sh-verbose output
|
||||
-help Print the usage
|
||||
@ -81,7 +84,6 @@ USAGE
|
||||
exit 0 # A clean exit
|
||||
}
|
||||
|
||||
|
||||
unset optQuiet optSilent
|
||||
# Report error and exit
|
||||
die()
|
||||
@ -183,7 +185,8 @@ setVersion()
|
||||
|
||||
|
||||
optMode=ugo # Default mode is always 'ugo'
|
||||
unset optAll optList optShell optVersion
|
||||
unset shellOutput verboseOutput
|
||||
unset optAll optConfig optList optVersion
|
||||
|
||||
# Parse options
|
||||
while [ "$#" -gt 0 ]
|
||||
@ -194,19 +197,24 @@ do
|
||||
;;
|
||||
-a | -all)
|
||||
optAll=true
|
||||
unset optShell
|
||||
unset shellOutput verboseOutput
|
||||
;;
|
||||
-l | -list)
|
||||
optList=true
|
||||
unset optShell
|
||||
;;
|
||||
-list-test)
|
||||
optList='test'
|
||||
unset optShell
|
||||
;;
|
||||
-csh | -sh | -csh-verbose | -sh-verbose)
|
||||
optShell="${1#-}"
|
||||
unset optAll
|
||||
-csh | -sh)
|
||||
shellOutput="${1#-}"
|
||||
unset verboseOutput
|
||||
;;
|
||||
-csh-verbose | -sh-verbose)
|
||||
shellOutput="${1#-}"
|
||||
verboseOutput="source " # Report: "source FILE"
|
||||
;;
|
||||
-config)
|
||||
optConfig=true
|
||||
;;
|
||||
-mode=[ugo]*)
|
||||
optMode="${1#*=}"
|
||||
@ -260,7 +268,6 @@ do
|
||||
shift
|
||||
done
|
||||
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
if [ -n "$optVersion" ]
|
||||
@ -309,27 +316,61 @@ case "$optMode" in (*o*) # (O)ther == shipped
|
||||
esac
|
||||
set -- $dirList
|
||||
|
||||
[ "$#" -ge 1 ] || die "No directories to scan. Programming error?"
|
||||
exitCode=2 # Fallback is a FileNotFound error
|
||||
|
||||
|
||||
#
|
||||
# Preliminaries
|
||||
#
|
||||
|
||||
# Special handling of config.sh/ , config.csh/ directories
|
||||
if [ -n "$optConfig" -a -n "$shellOutput" -a -n "$fileName" ]
|
||||
then
|
||||
case "$shellOutput" in
|
||||
csh*)
|
||||
optConfig="config.csh/"
|
||||
;;
|
||||
sh*)
|
||||
optConfig="config.sh/"
|
||||
;;
|
||||
*)
|
||||
unset optConfig
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -n "$optConfig" ]
|
||||
then
|
||||
case "$fileName" in
|
||||
/* | config.csh* | config.sh*)
|
||||
# Does not need or cannot add a prefix
|
||||
unset optConfig
|
||||
;;
|
||||
*)
|
||||
fileName="$optConfig$fileName"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#
|
||||
# The main routine
|
||||
#
|
||||
|
||||
exitCode=0
|
||||
if [ -n "$optList" ]
|
||||
then
|
||||
|
||||
# List directories, or potential file locations
|
||||
[ "$nArgs" -le 1 ] || \
|
||||
die "-list expects 0 or 1 filename, but $nArgs provided"
|
||||
die "-list options expect 0 or 1 filename, but $nArgs provided"
|
||||
|
||||
# A silly combination, but -quiet does have precedence
|
||||
# A silly combination, but -quiet has absolute precedence
|
||||
[ -n "$optQuiet" ] && exit 0
|
||||
|
||||
# Test for directory or file too?
|
||||
if [ "$optList" = "test" ]
|
||||
then
|
||||
exitCode=2 # Fallback to a general error (file not found)
|
||||
|
||||
if [ "$nArgs" -eq 1 ]
|
||||
then
|
||||
for dir
|
||||
@ -352,6 +393,7 @@ then
|
||||
done
|
||||
fi
|
||||
else
|
||||
exitCode=0 # OK, already verified that $# != 0
|
||||
for dir
|
||||
do
|
||||
echo "$dir${fileName:+/}$fileName"
|
||||
@ -362,35 +404,39 @@ else
|
||||
|
||||
[ "$nArgs" -eq 1 ] || die "One filename expected - $nArgs provided"
|
||||
|
||||
exitCode=2 # Fallback to a general error (file not found)
|
||||
# Output for sourcing files ("source" for csh, "." for POSIX shell)
|
||||
# Only allow sourcing a single file (disallow combination with -all)
|
||||
case "$shellOutput" in
|
||||
csh*)
|
||||
shellOutput="source " # eg, "source FILE"
|
||||
;;
|
||||
sh*)
|
||||
shellOutput=". " # eg, ". FILE"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Anti-pattern: -all disables shell commands
|
||||
if [ -n "$optAll" ]
|
||||
then
|
||||
unset shellOutput verboseOutput
|
||||
fi
|
||||
|
||||
for dir
|
||||
do
|
||||
if [ -f "$dir/$fileName" ]
|
||||
resolved="$dir/$fileName"
|
||||
if [ -f "$resolved" ]
|
||||
then
|
||||
exitCode=0
|
||||
[ -n "$optQuiet" ] && break
|
||||
|
||||
case "$optShell" in
|
||||
(*verbose)
|
||||
echo "Using: $dir/$fileName" 1>&2
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$optShell" in
|
||||
csh*)
|
||||
echo "source $dir/$fileName"
|
||||
exitCode=0 # OK
|
||||
if [ -n "$optQuiet" ]
|
||||
then
|
||||
break
|
||||
;;
|
||||
sh*)
|
||||
echo ". $dir/$fileName"
|
||||
break
|
||||
;;
|
||||
*)
|
||||
echo "$dir/$fileName"
|
||||
[ -n "$optAll" ] || break
|
||||
;;
|
||||
esac
|
||||
elif [ -n "$verboseOutput" ]
|
||||
then
|
||||
echo "$verboseOutput$resolved" 1>&2
|
||||
fi
|
||||
|
||||
echo "$shellOutput$resolved"
|
||||
[ -n "$optAll" ] || break
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
162
bin/tools/lib-dir
Executable file
162
bin/tools/lib-dir
Executable file
@ -0,0 +1,162 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2018 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
# <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# tools/lib-dir [OPTION] DIR [LIBEXT]
|
||||
#
|
||||
# Description
|
||||
# Since csh/tcsh doesn't have functions, this script can be used to manage
|
||||
# slightly more complex logic.
|
||||
#
|
||||
# Resolves for the existence of DIR/lib64 and DIR/lib, or uses the fallback
|
||||
# LIBEXT if these failed. A DIR ending in "-none" or "-system" is skipped.
|
||||
#
|
||||
# output -csh: setenv LD_LIBRARY_PATH dir/lib:$LD_LIBRARY_PATH
|
||||
# output -make: -Ldir/lib
|
||||
# output -sh: LD_LIBRARY_PATH=dir/lib:$LD_LIBRARY_PATH
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
printHelp() {
|
||||
cat<<USAGE
|
||||
|
||||
Usage: ${0##*/} [OPTION] DIR [LIBEXT]
|
||||
|
||||
options:
|
||||
-sh Emit POSIX shell syntax (default)
|
||||
-csh Emit C-shell shell syntax
|
||||
-make Emit content for a makefile
|
||||
-help Print the usage
|
||||
|
||||
Resolves for the existence of DIR/lib64 and DIR/lib, or uses the fallback
|
||||
LIBEXT if these failed. A DIR ending in "-none" or "-system" is skipped.
|
||||
|
||||
With -sh LD_LIBRARY_PATH=dir/lib:$LD_LIBRARY_PATH
|
||||
With -csh setenv LD_LIBRARY_PATH dir/lib:$LD_LIBRARY_PATH
|
||||
With -make -Ldir/lib
|
||||
|
||||
Exit status is zero (success) or non-zero (failure)
|
||||
USAGE
|
||||
exit 0 # A clean exit
|
||||
}
|
||||
|
||||
# Report error and exit
|
||||
die()
|
||||
{
|
||||
exec 1>&2
|
||||
echo
|
||||
echo "Error encountered:"
|
||||
while [ "$#" -ge 1 ]; do echo " $1"; shift; done
|
||||
echo
|
||||
echo "See '${Script##*/} -help' for usage"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
optSyntax=sh
|
||||
|
||||
# Parse options
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
-h | -help*)
|
||||
printHelp
|
||||
;;
|
||||
-csh | -sh | -make)
|
||||
optSyntax="${1#-}"
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
;;
|
||||
-*)
|
||||
die "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
dir="$1" # $1 = base directory for 'lib' or 'lib64'
|
||||
alt="$2" # $2 = fallback libname ('lib' or 'lib64')
|
||||
|
||||
unset resolved
|
||||
|
||||
# 0)
|
||||
# Skip entirely if directory ends in "-none" or "-system".
|
||||
# These special cases (disabled, system directories) should not require
|
||||
# adjustment of LD_LIBRARY_PATH
|
||||
|
||||
case "$dir" in
|
||||
none | system | *-none | *-system)
|
||||
unset dir
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -z "$dir" ]
|
||||
then
|
||||
exit 1
|
||||
elif [ -d "$dir" ]
|
||||
then
|
||||
# 1) Check for dir/lib64 and dir/lib
|
||||
for end in lib$WM_COMPILER_LIB_ARCH lib
|
||||
do
|
||||
if [ -d "$dir/$end" ]
|
||||
then
|
||||
resolved=$dir/$end
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# 2) Use fallback if the previous failed
|
||||
if [ -z "$resolved" -a -n "$alt" ]
|
||||
then
|
||||
# Fallback
|
||||
case "$alt" in
|
||||
/*)
|
||||
resolved=$alt
|
||||
;;
|
||||
(*)
|
||||
resolved=$dir/$alt
|
||||
;;
|
||||
esac
|
||||
return 0
|
||||
fi
|
||||
|
||||
|
||||
if [ -n "$resolved" ]
|
||||
then
|
||||
case "$optSyntax" in
|
||||
csh)
|
||||
echo "setenv LD_LIBRARY_PATH $resolved:$LD_LIBRARY_PATH"
|
||||
;;
|
||||
make)
|
||||
printf "%s\n" "-L$resolved"
|
||||
;;
|
||||
*)
|
||||
echo "LD_LIBRARY_PATH=$resolved:$LD_LIBRARY_PATH"
|
||||
;;
|
||||
esac
|
||||
exit 0 # Good
|
||||
else
|
||||
exit 1 # Error
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
66
etc/bashrc
66
etc/bashrc
@ -139,65 +139,55 @@ _foamEtc -mode=ug prefs.sh
|
||||
export FOAM_SETTINGS="$@"
|
||||
_foamEval $@
|
||||
|
||||
# Clean standard environment variables (PATH, LD_LIBRARY_PATH, MANPATH)
|
||||
# Clean standard environment variables (PATH, MANPATH, LD_LIBRARY_PATH)
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
foamClean=$WM_PROJECT_DIR/bin/foamCleanPath
|
||||
|
||||
# Clean PATH
|
||||
cleaned=$($foamClean "$PATH" "$foamOldDirs") && PATH="$cleaned"
|
||||
|
||||
# Clean LD_LIBRARY_PATH
|
||||
cleaned=$($foamClean "$LD_LIBRARY_PATH" "$foamOldDirs") \
|
||||
&& LD_LIBRARY_PATH="$cleaned"
|
||||
|
||||
# Clean MANPATH
|
||||
cleaned=$($foamClean "$MANPATH" "$foamOldDirs") && MANPATH="$cleaned"
|
||||
|
||||
export PATH LD_LIBRARY_PATH MANPATH
|
||||
|
||||
export PATH MANPATH LD_LIBRARY_PATH
|
||||
_foamClean PATH "$foamOldDirs"
|
||||
_foamClean MANPATH "$foamOldDirs"
|
||||
_foamClean LD_LIBRARY_PATH "$foamOldDirs"
|
||||
|
||||
# Setup for OpenFOAM compilation etc
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamEtc config.sh/settings
|
||||
_foamEtc -config settings
|
||||
|
||||
# Setup for third-party packages
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamEtc config.sh/mpi
|
||||
_foamEtc config.sh/paraview
|
||||
_foamEtc config.sh/vtk
|
||||
_foamEtc config.sh/ensight
|
||||
_foamEtc config.sh/gperftools
|
||||
## _foamEtc config.csh/ADIOS
|
||||
_foamEtc config.sh/CGAL
|
||||
_foamEtc config.sh/scotch
|
||||
_foamEtc config.sh/FFTW
|
||||
_foamEtc -config mpi
|
||||
_foamEtc -config paraview
|
||||
_foamEtc -config vtk
|
||||
_foamEtc -config ensight
|
||||
_foamEtc -config gperftools
|
||||
## _foamEtc -config ADIOS
|
||||
_foamEtc -config CGAL
|
||||
_foamEtc -config scotch
|
||||
_foamEtc -config FFTW
|
||||
|
||||
# Interactive shell
|
||||
if /usr/bin/tty -s 2>/dev/null
|
||||
then
|
||||
_foamEtc config.sh/aliases
|
||||
[ "${BASH_VERSINFO:-0}" -ge 4 ] && _foamEtc config.sh/bash_completion
|
||||
_foamEtc -config aliases
|
||||
[ "${BASH_VERSINFO:-0}" -ge 4 ] && _foamEtc -config bash_completion
|
||||
fi
|
||||
|
||||
|
||||
# Clean environment paths again. Only remove duplicates
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
# Clean PATH
|
||||
cleaned=$($foamClean "$PATH") && PATH="$cleaned"
|
||||
export PATH MANPATH LD_LIBRARY_PATH
|
||||
|
||||
# Clean LD_LIBRARY_PATH
|
||||
cleaned=$($foamClean "$LD_LIBRARY_PATH") && LD_LIBRARY_PATH="$cleaned"
|
||||
_foamClean PATH
|
||||
_foamClean MANPATH
|
||||
_foamClean LD_LIBRARY_PATH
|
||||
|
||||
# Clean MANPATH (trailing ':' to find system pages)
|
||||
cleaned=$($foamClean "$MANPATH") && MANPATH="${cleaned}:"
|
||||
# Add trailing ':' for system manpages
|
||||
if [ -n "$MANPATH" ]
|
||||
then
|
||||
MANPATH="${MANPATH}:"
|
||||
fi
|
||||
|
||||
export PATH LD_LIBRARY_PATH MANPATH
|
||||
|
||||
# Clean LD_PRELOAD
|
||||
if [ -n "$LD_PRELOAD" ]
|
||||
then
|
||||
cleaned=$($foamClean "$LD_PRELOAD") && LD_PRELOAD="$cleaned"
|
||||
export LD_PRELOAD
|
||||
_foamClean LD_PRELOAD
|
||||
fi
|
||||
|
||||
|
||||
@ -208,6 +198,6 @@ fi
|
||||
. $WM_PROJECT_DIR/etc/config.sh/functions
|
||||
|
||||
# Variables (done as the last statement for a clean exit code)
|
||||
unset cleaned foamClean foamOldDirs
|
||||
unset cleaned foamOldDirs
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/ADIOS
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Setup for ADIOS include/libraries (usually ThirdParty installation).
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/cshrc
|
||||
#
|
||||
# To disable its use: adios_version=adios-none
|
||||
# For system-wide installations: adios_version=adios-system
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/ADIOS2
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Setup for ADIOS2 include/libraries (usually ThirdParty installation).
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/cshrc
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/CGAL
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Setup file for CGAL (& boost) include/libraries.
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/cshrc
|
||||
# Setup CGAL (& boost) include/libraries (usually ThirdParty installation).
|
||||
#
|
||||
# To disable its use:
|
||||
# boost_version=boost-none
|
||||
@ -29,6 +29,9 @@
|
||||
# 2. and provide full paths for BOOST_ARCH_PATH / CGAL_ARCH_PATH
|
||||
#
|
||||
# Note
|
||||
# Define GMP_ARCH_PATH and MPFR_ARCH_PATH here, if required and when not
|
||||
# using a ThirdParty gcc.
|
||||
#
|
||||
# Changes made here MUST be made in the equivalent config.sh version too,
|
||||
# since that is the one used in the build process.
|
||||
#
|
||||
@ -50,20 +53,19 @@ if ($?FOAM_VERBOSE && $?prompt) then
|
||||
echo "Using CGAL ($cgal_version) -> $CGAL_ARCH_PATH"
|
||||
endif
|
||||
|
||||
# If BOOST_ARCH_PATH, CGAL_ARCH_PATH do not end with '-system' or '-none',
|
||||
# they are either located within ThirdParty, or a central installation
|
||||
# outside of ThirdParty and must be added to the lib-path.
|
||||
_foamAddLibAuto $BOOST_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
_foamAddLibAuto $CGAL_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
|
||||
set ending="${BOOST_ARCH_PATH:t}"
|
||||
if ( "$ending" != "boost-none" && "$ending" != "boost-system" ) then
|
||||
_foamAddLib $BOOST_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
# GMP/MPFR may have already been added with ThirdParty compiler, but cannot
|
||||
# be certain so add here. If they are duplicates, they will be removed later.
|
||||
|
||||
if ( $?GMP_ARCH_PATH ) then
|
||||
_foamAddLibAuto $GMP_ARCH_PATH # No fallback libdir
|
||||
endif
|
||||
if ( $?MPFR_ARCH_PATH ) then
|
||||
_foamAddLibAuto $MPFR_ARCH_PATH # No fallback libdir
|
||||
endif
|
||||
|
||||
set ending="${CGAL_ARCH_PATH:t}"
|
||||
if ( "$ending" != "cgal-none" && "$ending" != "cgal-system" ) then
|
||||
_foamAddLib $CGAL_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
endif
|
||||
|
||||
unset boost_version cgal_version ending
|
||||
unset boost_version cgal_version
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\ / A nd | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/FFTW
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup for FFTW include/libraries (usually ThirdParty installation).
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
#
|
||||
# To disable its use: fftw_version=fftw-none
|
||||
# For system-wide installations: fftw_version=fftw-system
|
||||
@ -41,15 +41,8 @@ if ($?FOAM_VERBOSE && $?prompt) then
|
||||
echo "Using fftw ($fftw_version) -> $FFTW_ARCH_PATH"
|
||||
endif
|
||||
|
||||
# If FFTW_ARCH_PATH does not end with '-system' or '-none',
|
||||
# it is either located within ThirdParty, or a central installation
|
||||
# outside of ThirdParty and must be added to the lib-path.
|
||||
_foamAddLibAuto $FFTW_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
|
||||
set ending="${FFTW_ARCH_PATH:t}"
|
||||
if ( "$ending" != "fftw-none" && "$ending" != "fftw-system" ) then
|
||||
_foamAddLib $FFTW_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
endif
|
||||
|
||||
unset fftw_version ending
|
||||
unset fftw_version
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2017-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/aliases
|
||||
# - sourced by OpenFOAM-*/etc/cshrc (or from the user's ~/.cshrc)
|
||||
#
|
||||
# Description
|
||||
# Aliases for working with OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/cshrc and/or ~/.cshrc
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/compiler
|
||||
# - sourced by OpenFOAM-*/etc/config.csh/settings
|
||||
#
|
||||
# Description
|
||||
# Setup for custom compiler versions for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/config.csh/settings
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/ensight
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Setup for ENSIGHT
|
||||
# Sourced from OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -11,15 +11,15 @@
|
||||
#
|
||||
# File
|
||||
# config.csh/example/compiler
|
||||
# - sourced by OpenFOAM-*/etc/config.csh/settings
|
||||
#
|
||||
# Description
|
||||
# Example of fine tuning ThirdParty compiler settings for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/config.csh/settings
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Load the standard versions
|
||||
eval `$WM_PROJECT_DIR/bin/foamEtcFile -csh -mode=o config.csh/compiler`
|
||||
eval `$WM_PROJECT_DIR/bin/foamEtcFile -mode=o -csh -config compiler`
|
||||
|
||||
# Modify/override compiler settings
|
||||
switch ("$WM_COMPILER")
|
||||
|
||||
@ -11,14 +11,13 @@
|
||||
#
|
||||
# File
|
||||
# config.csh/example/openmpi
|
||||
# - sourced by OpenFOAM-*/etc/config.csh/mpi
|
||||
#
|
||||
# Description
|
||||
# Example of fine tuning openmpi settings for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/config.csh/settings
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Modified openmpi settings
|
||||
setenv FOAM_MPI openmpi-3.0.0
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -22,8 +22,7 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Use shipped paraview config file (-mode=o) with a different ParaView_VERSION
|
||||
|
||||
# Use standard paraview config file (-mode=o) with a different ParaView_VERSION
|
||||
set foamFile=`$WM_PROJECT_DIR/bin/foamEtcFile -mode=o config.csh/paraview`
|
||||
if ( $status == 0 ) source $foamFile ParaView_VERSION=5.4.0
|
||||
|
||||
|
||||
@ -11,12 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# config.csh/example/prefs.csh
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Preset variables for the OpenFOAM configuration - C-Shell shell syntax.
|
||||
#
|
||||
# The prefs.csh file will be sourced by the OpenFOAM etc/cshrc when it is
|
||||
# found by foamEtcFile.
|
||||
# Example of preset variables for the OpenFOAM configuration (C-Shell shell)
|
||||
#
|
||||
# See also
|
||||
# 'foamEtcFile -help' or 'foamEtcFile -list' for information about the
|
||||
@ -24,13 +22,8 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#- Compiler location:
|
||||
setenv WM_COMPILER_TYPE ThirdParty
|
||||
|
||||
#- Compiler:
|
||||
setenv WM_COMPILER Clang
|
||||
|
||||
#- MPI implementation:
|
||||
setenv WM_MPLIB SYSTEMOPENMPI
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
62
etc/config.csh/functions
Normal file
62
etc/config.csh/functions
Normal file
@ -0,0 +1,62 @@
|
||||
#----------------------------------*-sh-*--------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2018 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
# <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/functions
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# C-shell aliases and variables used when sourcing the OpenFOAM environment
|
||||
#
|
||||
# Some functionality implemented via bin/tools/lib-dir
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Cleaning environment variables
|
||||
alias _foamClean 'eval `$WM_PROJECT_DIR/bin/foamCleanPath -csh-env=\!*`'
|
||||
|
||||
# Prepend PATH, MANPATH, LD_LIBRARY_PATH
|
||||
alias _foamAddPath 'setenv PATH \!*\:${PATH}'
|
||||
alias _foamAddMan 'setenv MANPATH \!*\:${MANPATH}'
|
||||
alias _foamAddLib 'setenv LD_LIBRARY_PATH \!*\:${LD_LIBRARY_PATH}'
|
||||
|
||||
# Prefix to LD_LIBRARY_PATH with additional checking
|
||||
# $1 = base directory for 'lib' or 'lib64'
|
||||
# $2 = fallback libname ('lib' or 'lib64')
|
||||
alias _foamAddLibAuto 'eval `$WM_PROJECT_DIR/bin/tools/lib-dir -csh \!*`'
|
||||
|
||||
# Source an etc file, possibly with some verbosity
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
alias _foamEtc 'eval `$WM_PROJECT_DIR/bin/foamEtcFile -csh-verbose \!*`'
|
||||
else
|
||||
alias _foamEtc 'eval `$WM_PROJECT_DIR/bin/foamEtcFile -csh \!*`'
|
||||
endif
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Avoid any ThirdParty settings that may have 'leaked' into the environment
|
||||
|
||||
unsetenv MPI_ARCH_PATH
|
||||
unsetenv ADIOS_ARCH_PATH
|
||||
unsetenv ADIOS1_ARCH_PATH
|
||||
unsetenv ADIOS2_ARCH_PATH
|
||||
unsetenv BOOST_ARCH_PATH
|
||||
unsetenv CCMIO_ARCH_PATH
|
||||
unsetenv CGAL_ARCH_PATH
|
||||
unsetenv FFTW_ARCH_PATH
|
||||
unsetenv GPERFTOOLS_ARCH_PATH
|
||||
unsetenv GMP_ARCH_PATH
|
||||
unsetenv MPFR_ARCH_PATH
|
||||
unsetenv MESA_ARCH_PATH
|
||||
unsetenv METIS_ARCH_PATH
|
||||
unsetenv SCOTCH_ARCH_PATH
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2017-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,16 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/mpi
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Setup for MPI communications library for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/cshrc
|
||||
#
|
||||
# User adjustments are possible in these files:
|
||||
# - config.csh/openmpi-system
|
||||
# - config.csh/openmpi
|
||||
# - config.csh/mpi-user
|
||||
# - config.csh/mpi-system
|
||||
#
|
||||
# For USERMPI, the user is responsible for supplying an appropriate
|
||||
# wmake/rules/General/mplibUSERMPI file and managing all settings
|
||||
@ -25,25 +31,35 @@ setenv FOAM_MPI dummy # Fallback value
|
||||
|
||||
switch ("$WM_MPLIB")
|
||||
case SYSTEMOPENMPI:
|
||||
# Use the system installed openmpi, get library directory via mpicc
|
||||
# The system installed openmpi, locations discovery via mpicc.
|
||||
setenv FOAM_MPI openmpi-system
|
||||
_foamEtc -config openmpi-system # <- Adjustments (optional)
|
||||
|
||||
# Bit of a hack: strip off 'lib' and assume it is the prefix for openmpi
|
||||
# include files and libraries.
|
||||
set libDir=`mpicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/'`
|
||||
# Respect MPI_ARCH_PATH if set to a valid directory (ie, from user adjustments)
|
||||
if (! $?MPI_ARCH_PATH ) setenv MPI_ARCH_PATH
|
||||
if ( -d "$MPI_ARCH_PATH" ) then
|
||||
_foamAddLibAuto $MPI_ARCH_PATH
|
||||
else
|
||||
# Slight hack: strip off 'lib' to get presumed prefix for include and libs
|
||||
set libDir=`mpicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/'`
|
||||
|
||||
setenv MPI_ARCH_PATH "${libDir:h}"
|
||||
_foamAddLib $libDir
|
||||
unset libDir
|
||||
setenv MPI_ARCH_PATH "${libDir:h}"
|
||||
_foamAddLib $libDir
|
||||
unset libDir
|
||||
endif
|
||||
breaksw
|
||||
|
||||
case OPENMPI:
|
||||
setenv FOAM_MPI openmpi-1.10.4
|
||||
_foamEtc config.csh/openmpi # <- Adjustments (optional)
|
||||
_foamEtc -config openmpi # <- Adjustments (optional)
|
||||
|
||||
setenv MPI_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
|
||||
# Respect MPI_ARCH_PATH if set to a valid directory (ie, from user adjustments)
|
||||
if (! $?MPI_ARCH_PATH ) setenv MPI_ARCH_PATH
|
||||
if (! -d "$MPI_ARCH_PATH" ) then
|
||||
setenv mpiDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
|
||||
endif
|
||||
|
||||
# Tell OpenMPI where to find its install directory
|
||||
# Inform openmpi where to find its install directory
|
||||
setenv OPAL_PREFIX $MPI_ARCH_PATH
|
||||
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
@ -53,19 +69,19 @@ case OPENMPI:
|
||||
endif
|
||||
|
||||
_foamAddPath $MPI_ARCH_PATH/bin
|
||||
_foamAddLib $MPI_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
_foamAddMan $MPI_ARCH_PATH/share/man
|
||||
_foamAddLibAuto $MPI_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
breaksw
|
||||
|
||||
case USERMPI:
|
||||
# Use an arbitrary, user-specified mpi implementation
|
||||
setenv FOAM_MPI mpi-user
|
||||
_foamEtc config.csh/mpi-user # <- Adjustments
|
||||
_foamEtc -config mpi-user # <- Adjustments (optional)
|
||||
breaksw
|
||||
|
||||
case SYSTEMMPI:
|
||||
setenv FOAM_MPI mpi-system
|
||||
_foamEtc config.csh/mpi-system # <- Adjustments (optional)
|
||||
_foamEtc -config mpi-system # <- Adjustments (optional)
|
||||
|
||||
if ( ! $?MPI_ROOT ) then
|
||||
echo
|
||||
@ -114,8 +130,8 @@ case MPICH:
|
||||
setenv MPI_HOME $MPI_ARCH_PATH
|
||||
|
||||
_foamAddPath $MPI_ARCH_PATH/bin
|
||||
_foamAddLib $MPI_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
_foamAddMan $MPI_ARCH_PATH/share/man
|
||||
_foamAddLibAuto $MPI_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
breaksw
|
||||
|
||||
case MPICH-GM:
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# config.csh/paraview
|
||||
# - sourced by OpenFOAM-*/etc/cshrc or via foamPV alias
|
||||
#
|
||||
# Description
|
||||
# Setup for PARAVIEW (partially cmake, qt too)
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/cshrc or from foamPV alias
|
||||
#
|
||||
# For system-wide cmake: cmake_version=cmake-system
|
||||
# For system-wide qt: ParaView_QT=qt-system
|
||||
@ -54,13 +54,8 @@ if (! $?WM_COMPILER_LIB_ARCH ) setenv WM_COMPILER_LIB_ARCH
|
||||
set archDir="$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER"
|
||||
|
||||
# Clean PATH and LD_LIBRARY_PATH
|
||||
set cleaned=`$WM_PROJECT_DIR/bin/foamCleanPath "$PATH" "$ParaView_DIR $archDir/cmake- $archDir/qt- $archDir/ParaView-"`
|
||||
if ( $status == 0 ) setenv PATH $cleaned
|
||||
|
||||
if ( $?LD_LIBRARY_PATH ) then
|
||||
set cleaned=`$WM_PROJECT_DIR/bin/foamCleanPath "$LD_LIBRARY_PATH" "$ParaView_DIR $archDir/qt- $archDir/ParaView-"`
|
||||
if ( $status == 0 ) setenv LD_LIBRARY_PATH $cleaned
|
||||
endif
|
||||
eval `$WM_PROJECT_DIR/bin/foamCleanPath -csh-env=PATH "$ParaView_DIR $archDir/ParaView- $archDir/qt- $archDir/cmake-"`
|
||||
eval `$WM_PROJECT_DIR/bin/foamCleanPath -csh-env=LD_LIBRARY_PATH "$ParaView_DIR $archDir/ParaView- $archDir/qt-"`
|
||||
|
||||
# ThirdParty cmake
|
||||
set cmake=$archDir/$cmake_version
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,19 +11,11 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/settings
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Settings for OpenFOAM, sourced from OpenFOAM-<VERSION>/etc/cshrc
|
||||
# Settings for OpenFOAM
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Prefix to PATH
|
||||
alias _foamAddPath 'setenv PATH \!*\:${PATH}'
|
||||
# Prefix to LD_LIBRARY_PATH
|
||||
alias _foamAddLib 'setenv LD_LIBRARY_PATH \!*\:${LD_LIBRARY_PATH}'
|
||||
# Prefix to MANPATH
|
||||
alias _foamAddMan 'setenv MANPATH \!*\:${MANPATH}'
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
setenv WM_ARCH `uname -s` # System name
|
||||
if (! $?WM_OSTYPE ) setenv WM_OSTYPE POSIX # System type (POSIX is default)
|
||||
@ -228,7 +220,7 @@ unsetenv GMP_ARCH_PATH MPFR_ARCH_PATH
|
||||
|
||||
# Load pre-defined compiler versions
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamEtc config.csh/compiler
|
||||
_foamEtc -config compiler
|
||||
|
||||
# ThirdParty base for compilers
|
||||
set archDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH
|
||||
@ -263,19 +255,19 @@ GCC_NOT_FOUND
|
||||
# Add ThirdParty compiler libraries to run-time environment
|
||||
_foamAddLib $gccDir/lib$WM_COMPILER_LIB_ARCH
|
||||
|
||||
# Add ThirdParty gmp/mpfr/mpc libraries to run-time environment
|
||||
# Add gmp/mpfr/mpc libraries to run-time environment.
|
||||
# Require that they exist, automatically find lib64/ or lib/.
|
||||
if ( "${gmpDir:t}" != "gmp-system" ) then
|
||||
_foamAddLib $gmpDir/lib$WM_COMPILER_LIB_ARCH
|
||||
setenv GMP_ARCH_PATH $gmpDir # For ThirdParty CGAL
|
||||
_foamAddLibAuto $gmpDir
|
||||
setenv GMP_ARCH_PATH $gmpDir # For non-system CGAL
|
||||
endif
|
||||
if ( "${mpfrDir:t}" != "mpfr-system" ) then
|
||||
_foamAddLib $mpfrDir/lib$WM_COMPILER_LIB_ARCH
|
||||
setenv MPFR_ARCH_PATH $mpfrDir # For ThirdParty CGAL
|
||||
endif
|
||||
if ( "${mpcDir:t}" != "mpc-system" ) then
|
||||
_foamAddLib $mpcDir/lib$WM_COMPILER_LIB_ARCH
|
||||
_foamAddLibAuto $mpfrDir
|
||||
setenv MPFR_ARCH_PATH $mpfrDir # For non-system CGAL
|
||||
endif
|
||||
|
||||
_foamAddLibAuto $mpcDir
|
||||
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
echo "Using ThirdParty compiler"
|
||||
echo " ${gccDir:t} (${gmpDir:t} ${mpfrDir:t} ${mpcDir:t})"
|
||||
@ -332,6 +324,6 @@ unset archDir
|
||||
unset gcc_version gccDir
|
||||
unset gmp_version gmpDir mpfr_version mpfrDir mpc_version mpcDir
|
||||
unset clang_version clangDir
|
||||
# Retain: _foamAddPath _foamAddLib _foamAddMan
|
||||
# Retain: _foamAddPath _foamAddLib _foamAddMan _foamAddLibAuto
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -11,6 +11,7 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/tcsh_completion
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Tcsh completions for OpenFOAM applications
|
||||
|
||||
@ -114,7 +114,7 @@ unsetenv PV_PLUGIN_PATH
|
||||
unsetenv VTK_DIR
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# unset other ThirdParty environment variables
|
||||
# Unset other ThirdParty environment variables
|
||||
|
||||
unsetenv ADIOS_ARCH_PATH
|
||||
unsetenv ADIOS1_ARCH_PATH
|
||||
@ -136,18 +136,15 @@ unsetenv SCOTCH_ARCH_PATH
|
||||
|
||||
if ( $?foamClean ) then
|
||||
|
||||
set cleaned=`$foamClean "$PATH" "$foamOldDirs"`
|
||||
if ( $status == 0 ) setenv PATH $cleaned
|
||||
eval `$foamClean -csh-env=PATH "$foamOldDirs"`
|
||||
|
||||
if ($?LD_LIBRARY_PATH) then
|
||||
set cleaned=`$foamClean "$LD_LIBRARY_PATH" "$foamOldDirs"`
|
||||
if ( $status == 0 ) setenv LD_LIBRARY_PATH $cleaned
|
||||
eval `$foamClean -csh-env=LD_LIBRARY_PATH "$foamOldDirs"`
|
||||
if ( ${%LD_LIBRARY_PATH} == 0 ) unsetenv LD_LIBRARY_PATH
|
||||
endif
|
||||
|
||||
if ($?MANPATH) then
|
||||
set cleaned=`$foamClean "$MANPATH" "$foamOldDirs"`
|
||||
if ( $status == 0 ) setenv MANPATH $cleaned
|
||||
eval `$foamClean -csh-env=MANPATH "$foamOldDirs"`
|
||||
if ( ${%MANPATH} == 0 ) unsetenv MANPATH
|
||||
endif
|
||||
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.csh/vtk
|
||||
# - sourced by OpenFOAM-*/etc/cshrc
|
||||
#
|
||||
# Description
|
||||
# Setup file for VTK (and MESA)
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/cshrc
|
||||
#
|
||||
# The library path is only adjusted when the paths specified here
|
||||
# actually exist at the time of sourcing.
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\ / A nd | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/ADIOS
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup for ADIOS include/libraries (usually ThirdParty installation).
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
#
|
||||
# To disable its use: adios_version=adios-none
|
||||
# For system-wide installations: adios_version=adios-system
|
||||
@ -42,7 +42,7 @@ then
|
||||
echo "Using adios ($adios_version) -> $ADIOS_ARCH_PATH" 1>&2
|
||||
fi
|
||||
|
||||
if command -v _foamAddPath >/dev/null 2>&1 # normal sourcing
|
||||
if command -v _foamAddPath >/dev/null 2>&1 # Normal sourcing
|
||||
then
|
||||
# If ADIOS_ARCH_PATH does not end with '-system' or '-none',
|
||||
# it is located within ThirdParty, or a central installation
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/ADIOS2
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup for ADIOS2 include/libraries (usually ThirdParty installation).
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
@ -29,7 +29,7 @@ then
|
||||
echo "Using adios ($adios2_version) -> $ADIOS2_ARCH_PATH" 1>&2
|
||||
fi
|
||||
|
||||
if command -v _foamAddPath >/dev/null 2>&1 # normal sourcing
|
||||
if command -v _foamAddPath >/dev/null 2>&1 # Normal sourcing
|
||||
then
|
||||
# If *_ARCH_PATH does not end with '-system' or '-none',
|
||||
# it is located within ThirdParty, or a central installation
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/CGAL
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup file for CGAL (& boost) include/libraries.
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
# Setup CGAL (& boost) include/libraries (usually ThirdParty installation).
|
||||
#
|
||||
# To disable its use:
|
||||
# boost_version=boost-none
|
||||
@ -29,7 +29,10 @@
|
||||
# 2. and provide full paths for BOOST_ARCH_PATH / CGAL_ARCH_PATH
|
||||
#
|
||||
# Note
|
||||
# When _foamAddLib is unset (eg, called from makeCGAL):
|
||||
# Define GMP_ARCH_PATH and MPFR_ARCH_PATH here, if required and when not
|
||||
# using a ThirdParty gcc.
|
||||
#
|
||||
# When _foamAddLibAuto is unset (eg, called from makeCGAL):
|
||||
# - boost_version / cgal_version variables are retained.
|
||||
# - the LD_LIBRARY_PATH is not adjusted.
|
||||
#
|
||||
@ -52,26 +55,18 @@ then
|
||||
echo "Using CGAL ($cgal_version) -> $CGAL_ARCH_PATH" 1>&2
|
||||
fi
|
||||
|
||||
if command -v _foamAddLib > /dev/null 2>&1 # normal sourcing
|
||||
if command -v _foamAddLibAuto > /dev/null 2>&1 # Normal sourcing (not makeCGAL)
|
||||
then
|
||||
_foamAddLibAuto $BOOST_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
_foamAddLibAuto $CGAL_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
|
||||
# If BOOST_ARCH_PATH, CGAL_ARCH_PATH do not end with '-system' or '-none',
|
||||
# they are either located within ThirdParty, or a central installation
|
||||
# outside of ThirdParty and must be added to the lib-path.
|
||||
# GMP/MPFR may have already been added with ThirdParty compiler, but cannot
|
||||
# be certain so add here. Any duplicates will be removed later.
|
||||
|
||||
ending="${BOOST_ARCH_PATH##*-}"
|
||||
if [ "$ending" != none -a "$ending" != system ]
|
||||
then
|
||||
_foamAddLib $BOOST_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
fi
|
||||
_foamAddLibAuto $GMP_ARCH_PATH # No fallback libdir
|
||||
_foamAddLibAuto $MPFR_ARCH_PATH # No fallback libdir
|
||||
|
||||
ending="${CGAL_ARCH_PATH##*-}"
|
||||
if [ "$ending" != none -a "$ending" != system ]
|
||||
then
|
||||
_foamAddLib $CGAL_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
fi
|
||||
|
||||
unset boost_version cgal_version ending
|
||||
unset boost_version cgal_version
|
||||
|
||||
fi
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\ / A nd | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/FFTW
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup for FFTW include/libraries (usually ThirdParty installation).
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
#
|
||||
# To disable its use: fftw_version=fftw-none
|
||||
# For system-wide installations: fftw_version=fftw-system
|
||||
@ -24,7 +24,7 @@
|
||||
# 2. and provide full path for FFTW_ARCH_PATH
|
||||
#
|
||||
# Note
|
||||
# When _foamAddLib is unset (eg, called from makeFFTW):
|
||||
# When _foamAddLibAuto is unset (eg, called from makeFFTW):
|
||||
# - fftw_version variable is retained.
|
||||
# - LD_LIBRARY_PATH is not adjusted.
|
||||
#
|
||||
@ -43,20 +43,12 @@ then
|
||||
echo "Using fftw ($fftw_version) -> $FFTW_ARCH_PATH" 1>&2
|
||||
fi
|
||||
|
||||
if command -v _foamAddLib > /dev/null 2>&1 # normal sourcing
|
||||
if command -v _foamAddLibAuto > /dev/null 2>&1 # Normal sourcing (not makeFFTW)
|
||||
then
|
||||
|
||||
# If FFTW_ARCH_PATH does not end with '-system' or '-none',
|
||||
# it is either located within ThirdParty, or a central installation
|
||||
# outside of ThirdParty and must be added to the lib-path.
|
||||
_foamAddLibAuto $FFTW_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
|
||||
ending="${FFTW_ARCH_PATH##*-}"
|
||||
if [ "$ending" != none -a "$ending" != system ]
|
||||
then
|
||||
_foamAddLib $FFTW_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
fi
|
||||
|
||||
unset fftw_version ending
|
||||
unset fftw_version
|
||||
|
||||
fi
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/aliases
|
||||
# - sourced by OpenFOAM-*/etc/bashrc (or from the user's ~/.bashrc)
|
||||
#
|
||||
# Description
|
||||
# Aliases for working with OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc and/or ~/.bashrc
|
||||
# Aliases for working with OpenFOAM.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -11,6 +11,7 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/bash_completion
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Bash completion handler for OpenFOAM applications and automatic
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/ccmio
|
||||
# - sourced during wmake process only.
|
||||
#
|
||||
# Description
|
||||
# Setup for LIBCCMIO include/libraries.
|
||||
# Sourced during wmake process only.
|
||||
#
|
||||
# Static libraries (recommended) are found under CCMIO_ARCH_PATH/lib.
|
||||
# Dynamic libraries are found under FOAM_EXT_LIBBIN path.
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/compiler
|
||||
# - sourced by OpenFOAM-*/etc/config.sh/settings
|
||||
#
|
||||
# Description
|
||||
# Setup for custom compiler versions for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/config.sh/settings
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/ensight
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup for ENSIGHT
|
||||
# Sourced from OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -11,15 +11,15 @@
|
||||
#
|
||||
# File
|
||||
# config.sh/example/compiler
|
||||
# - sourced by OpenFOAM-*/etc/config.sh/settings
|
||||
#
|
||||
# Description
|
||||
# Example of fine tuning compiler versions and settings for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/config.sh/settings
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Load the standard versions
|
||||
eval $($WM_PROJECT_DIR/bin/foamEtcFile -sh -mode=o config.sh/compiler)
|
||||
eval $($WM_PROJECT_DIR/bin/foamEtcFile -mode=o -sh -config compiler)
|
||||
|
||||
# Modify/override compiler settings
|
||||
case "$WM_COMPILER" in
|
||||
|
||||
@ -11,14 +11,13 @@
|
||||
#
|
||||
# File
|
||||
# config.sh/example/openmpi
|
||||
# - sourced by OpenFOAM-*/etc/config.sh/mpi
|
||||
#
|
||||
# Description
|
||||
# Example of fine tuning openmpi settings for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/config.sh/settings
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Modified openmpi settings
|
||||
export FOAM_MPI=openmpi-3.0.0
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Use shipped paraview config file (-mode=o) with a different ParaView_VERSION
|
||||
# Use standard paraview config file (-mode=o) with a different ParaView_VERSION
|
||||
|
||||
foamFile=$($WM_PROJECT_DIR/bin/foamEtcFile -mode=o config.sh/paraview 2>/dev/null)
|
||||
[ $? -eq 0 ] && . $foamFile ParaView_VERSION=5.4.0
|
||||
|
||||
@ -11,12 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# config.sh/example/prefs.sh
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Preset variables for the OpenFOAM configuration - POSIX shell syntax.
|
||||
#
|
||||
# The prefs.sh file will be sourced by the OpenFOAM etc/bashrc when it is
|
||||
# found by foamEtcFile.
|
||||
# Example of preset variables for the OpenFOAM configuration (POSIX shell)
|
||||
#
|
||||
# See also
|
||||
# 'foamEtcFile -help' or 'foamEtcFile -list' for information about the
|
||||
@ -24,13 +22,8 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#- Compiler location:
|
||||
WM_COMPILER_TYPE=ThirdParty
|
||||
|
||||
#- Compiler:
|
||||
export WM_COMPILER_TYPE=ThirdParty
|
||||
export WM_COMPILER=Clang
|
||||
|
||||
#- MPI implementation:
|
||||
export WM_MPLIB=SYSTEMOPENMPI
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2017-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,12 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/functions
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Initialization script functions for the bashrc environment
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/config.sh/bashrc
|
||||
# Shell functions and variables used when sourcing the OpenFOAM environment
|
||||
#
|
||||
# Some functionality is shadowed in bin/tools/lib-dir
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
@ -25,24 +27,91 @@ then
|
||||
# Temporary environment variable to track loading/unloading of functions
|
||||
WM_SHELL_FUNCTIONS=loaded
|
||||
|
||||
# Prefix to PATH
|
||||
# Cleaning environment variables
|
||||
foamClean=$WM_PROJECT_DIR/bin/foamCleanPath
|
||||
|
||||
# Cleaning environment variables
|
||||
_foamClean()
|
||||
{
|
||||
local var=$1
|
||||
shift
|
||||
eval $($WM_PROJECT_DIR/bin/foamCleanPath -sh-env=$var "$@")
|
||||
}
|
||||
|
||||
# Prepend PATH
|
||||
_foamAddPath()
|
||||
{
|
||||
[ $# -gt 0 ] && export PATH=$1:$PATH
|
||||
[ -n "$1" ] && export PATH=$1:$PATH
|
||||
}
|
||||
|
||||
# Prefix to LD_LIBRARY_PATH
|
||||
_foamAddLib()
|
||||
{
|
||||
[ $# -gt 0 ] && export LD_LIBRARY_PATH=$1:$LD_LIBRARY_PATH
|
||||
}
|
||||
|
||||
# Prefix to MANPATH
|
||||
# Prepend MANPATH
|
||||
_foamAddMan()
|
||||
{
|
||||
[ $# -gt 0 ] && export MANPATH=$1:$MANPATH
|
||||
[ -n "$1" ] && export MANPATH=$1:$MANPATH
|
||||
}
|
||||
|
||||
# Prepend LD_LIBRARY_PATH
|
||||
_foamAddLib()
|
||||
{
|
||||
[ -n "$1" ] && export LD_LIBRARY_PATH=$1:$LD_LIBRARY_PATH
|
||||
}
|
||||
|
||||
# Prefix to LD_LIBRARY_PATH with additional checking
|
||||
# $1 = base directory for 'lib' or 'lib64'
|
||||
# $2 = fallback libname ('lib' or 'lib64')
|
||||
#
|
||||
# 0) Skip entirely if directory ends in "-none" or "-system".
|
||||
# These special cases (disabled, system directories) should not require
|
||||
# adjustment of LD_LIBRARY_PATH
|
||||
# 1) Check for dir/lib64 and dir/lib
|
||||
# 2) Use fallback if the previous failed
|
||||
#
|
||||
# Return 0 on success
|
||||
_foamAddLibAuto()
|
||||
{
|
||||
# Note ksh doesn't have 'local' thus these ugly variable names
|
||||
foamVar_prefix="$1"
|
||||
foamVar_end="${1##*-}"
|
||||
|
||||
# Do not add (none) or a system directory
|
||||
if [ -z "$foamVar_prefix" -o "$foamVar_end" = none -o "$foamVar_end" = system ]
|
||||
then
|
||||
unset foamVar_prefix foamVar_end
|
||||
return 1
|
||||
elif [ -d "$foamVar_prefix" ]
|
||||
then
|
||||
for foamVar_end in lib$WM_COMPILER_LIB_ARCH lib
|
||||
do
|
||||
if [ -d "$foamVar_prefix/$foamVar_end" ]
|
||||
then
|
||||
export LD_LIBRARY_PATH=$foamVar_prefix/$foamVar_end:$LD_LIBRARY_PATH
|
||||
unset foamVar_prefix foamVar_end
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Use fallback. Add without checking existence of the directory
|
||||
foamVar_end=$2
|
||||
if [ -n "$foamVar_end" ]
|
||||
then
|
||||
case "$foamVar_end" in
|
||||
/*) # An absolute path
|
||||
export LD_LIBRARY_PATH=$foamVar_end:$LD_LIBRARY_PATH
|
||||
;;
|
||||
(*) # Relative to prefix
|
||||
export LD_LIBRARY_PATH=$foamVar_prefix/$foamVar_end:$LD_LIBRARY_PATH
|
||||
;;
|
||||
esac
|
||||
unset foamVar_prefix foamVar_end
|
||||
return 0
|
||||
fi
|
||||
|
||||
unset foamVar_prefix foamVar_end
|
||||
return 1 # Nothing set
|
||||
}
|
||||
|
||||
|
||||
# Source an etc file, possibly with some verbosity
|
||||
# - use eval to avoid intermediate variables (ksh doesn't have 'local')
|
||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||
@ -87,11 +156,31 @@ then
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
# Avoid any ThirdParty settings that may have 'leaked' into the environment
|
||||
|
||||
unset MPI_ARCH_PATH
|
||||
unset ADIOS_ARCH_PATH
|
||||
unset ADIOS1_ARCH_PATH
|
||||
unset ADIOS2_ARCH_PATH
|
||||
unset BOOST_ARCH_PATH
|
||||
unset CCMIO_ARCH_PATH
|
||||
unset CGAL_ARCH_PATH
|
||||
unset FFTW_ARCH_PATH
|
||||
unset GPERFTOOLS_ARCH_PATH
|
||||
unset GMP_ARCH_PATH
|
||||
unset MPFR_ARCH_PATH
|
||||
unset MESA_ARCH_PATH
|
||||
unset METIS_ARCH_PATH
|
||||
unset SCOTCH_ARCH_PATH
|
||||
|
||||
else
|
||||
# Was previously loaded/defined - now unset
|
||||
|
||||
unset -f _foamAddPath _foamAddLib _foamAddMan 2>/dev/null
|
||||
unset -f _foamEtc _foamEval 2>/dev/null
|
||||
unset -f _foamAddPath _foamAddMan _foamAddLib _foamAddLibAuto 2>/dev/null
|
||||
unset -f _foamClean _foamEtc _foamEval 2>/dev/null
|
||||
unset foamClean
|
||||
unset WM_SHELL_FUNCTIONS
|
||||
|
||||
fi
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2012-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/gperftools
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup file for GPERFTOOLS binaries/libraries.
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
#
|
||||
# To disable its use: gperftools_version=gperftools-none
|
||||
# For system-wide installations: gperftools_version=gperftools-system
|
||||
@ -45,7 +45,7 @@ then
|
||||
echo "Using gperftools ($gperftools_version) -> $GPERFTOOLS_ARCH_PATH" 1>&2
|
||||
fi
|
||||
|
||||
if command -v _foamAddLib > /dev/null 2>&1 # normal sourcing
|
||||
if command -v _foamAddLib > /dev/null 2>&1 # Normal sourcing
|
||||
then
|
||||
|
||||
# If GPERFTOOLS_ARCH_PATH does not end with '-system' or '-none',
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/kahip
|
||||
# - sourced during wmake process only.
|
||||
#
|
||||
# Description
|
||||
# Setup for KAHIP include/libraries (usually ThirdParty installation).
|
||||
# Sourced during wmake process only.
|
||||
#
|
||||
# To disable its use: KAHIP_VERSION=kahip-none
|
||||
# For system-wide installations: KAHIP_VERSION=kahip-system
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/metis
|
||||
# - sourced during wmake process only.
|
||||
#
|
||||
# Description
|
||||
# Setup for METIS include/libraries (usually ThirdParty installation).
|
||||
# Sourced during wmake process only.
|
||||
#
|
||||
# To disable its use: METIS_VERSION=metis-none
|
||||
# For system-wide installations: METIS_VERSION=metis-system
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/mgridgen
|
||||
# - sourced during wmake process only.
|
||||
#
|
||||
# Description
|
||||
# Setup for MGRIDGEN include/libraries (usually ThirdParty installation).
|
||||
# Sourced during wmake process only.
|
||||
#
|
||||
# Normally used to specify the MGridGen version and location for a
|
||||
# ThirdParty installation.
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2017-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,16 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/mpi
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup for MPI communications library for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
#
|
||||
# User adjustments are possible in these files:
|
||||
# - config.sh/openmpi-system
|
||||
# - config.sh/openmpi
|
||||
# - config.sh/mpi-user
|
||||
# - config.sh/mpi-system
|
||||
#
|
||||
# For USERMPI, the user is responsible for supplying an appropriate
|
||||
# wmake/rules/General/mplibUSERMPI file and managing all settings
|
||||
@ -25,31 +31,41 @@ export FOAM_MPI=dummy # Fallback value
|
||||
|
||||
case "$WM_MPLIB" in
|
||||
SYSTEMOPENMPI)
|
||||
# Use the system installed openmpi, get library directory via mpicc
|
||||
# The system installed openmpi, locations discovery via mpicc.
|
||||
export FOAM_MPI=openmpi-system
|
||||
|
||||
# Undefine OPAL_PREFIX if set to one of the paths on foamOldDirs
|
||||
if [ -z "$($foamClean "$OPAL_PREFIX" "$foamOldDirs")" ]
|
||||
if [ -z "$($foamClean -env=OPAL_PREFIX "$foamOldDirs")" ]
|
||||
then
|
||||
unset OPAL_PREFIX
|
||||
fi
|
||||
_foamEtc -config openmpi-system # <- Adjustments (optional)
|
||||
|
||||
# Bit of a hack: strip off 'lib' and assume it is the prefix for openmpi
|
||||
# include files and libraries.
|
||||
libDir=$(mpicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/')
|
||||
# Respect MPI_ARCH_PATH if set to a valid directory (ie, from user adjustments)
|
||||
if [ -d "$MPI_ARCH_PATH" ]
|
||||
then
|
||||
_foamAddLibAuto $MPI_ARCH_PATH
|
||||
else
|
||||
# Slight hack: strip off 'lib' to get presumed prefix for include and libs
|
||||
libDir=$(mpicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/')
|
||||
|
||||
export MPI_ARCH_PATH="${libDir%/*}"
|
||||
_foamAddLib $libDir
|
||||
unset libDir
|
||||
export MPI_ARCH_PATH="${libDir%/*}"
|
||||
_foamAddLib $libDir
|
||||
unset libDir
|
||||
fi
|
||||
;;
|
||||
|
||||
OPENMPI)
|
||||
export FOAM_MPI=openmpi-1.10.4
|
||||
_foamEtc config.sh/openmpi # <- Adjustments (optional)
|
||||
_foamEtc -config openmpi # <- Adjustments (optional)
|
||||
|
||||
export MPI_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
|
||||
# Respect MPI_ARCH_PATH if set to a valid directory (ie, from user adjustments)
|
||||
if [ ! -d "$MPI_ARCH_PATH" ]
|
||||
then
|
||||
export MPI_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
|
||||
fi
|
||||
|
||||
# Tell OpenMPI where to find its install directory
|
||||
# Inform openmpi where to find its install directory
|
||||
export OPAL_PREFIX=$MPI_ARCH_PATH
|
||||
|
||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||
@ -60,23 +76,23 @@ OPENMPI)
|
||||
fi
|
||||
|
||||
# Could be sourced from ThirdParty with incomplete environment
|
||||
if command -v _foamAddLib > /dev/null 2>&1 # normal sourcing
|
||||
if command -v _foamAddLibAuto > /dev/null 2>&1 # Normal sourcing
|
||||
then
|
||||
_foamAddPath $MPI_ARCH_PATH/bin
|
||||
_foamAddLib $MPI_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
_foamAddMan $MPI_ARCH_PATH/share/man
|
||||
_foamAddLibAuto $MPI_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
fi
|
||||
;;
|
||||
|
||||
USERMPI)
|
||||
# Use an arbitrary, user-specified mpi implementation
|
||||
export FOAM_MPI=mpi-user
|
||||
_foamEtc config.sh/mpi-user # <- Adjustments
|
||||
_foamEtc -config mpi-user # <- Adjustments (optional)
|
||||
;;
|
||||
|
||||
SYSTEMMPI)
|
||||
export FOAM_MPI=mpi-system
|
||||
_foamEtc config.sh/mpi-system # <- Adjustments (optional)
|
||||
_foamEtc -config mpi-system # <- Adjustments (optional)
|
||||
|
||||
if [ -z "$MPI_ROOT" ]
|
||||
then
|
||||
@ -129,11 +145,11 @@ MPICH)
|
||||
export MPI_HOME=$MPI_ARCH_PATH
|
||||
|
||||
# Could be sourced from ThirdParty with incomplete environment
|
||||
if command -v _foamAddLib > /dev/null 2>&1 # normal sourcing
|
||||
if command -v _foamAddLibAuto > /dev/null 2>&1 # Normal sourcing
|
||||
then
|
||||
_foamAddPath $MPI_ARCH_PATH/bin
|
||||
_foamAddLib $MPI_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
|
||||
_foamAddMan $MPI_ARCH_PATH/share/man
|
||||
_foamAddLibAuto $MPI_ARCH_PATH lib$WM_COMPILER_LIB_ARCH
|
||||
fi
|
||||
;;
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/paraview
|
||||
# - sourced by OpenFOAM-*/etc/bashrc or via foamPV alias
|
||||
#
|
||||
# Description
|
||||
# Setup for PARAVIEW (partially cmake, qt too)
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc or from foamPV alias
|
||||
#
|
||||
# For system-wide cmake: cmake_version=cmake-system
|
||||
# For system-wide qt: ParaView_QT=qt-system
|
||||
@ -54,16 +54,11 @@ pv_api=auto # Normally auto or pair of digits (eg, '5.4' etc)
|
||||
archDir="$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER"
|
||||
|
||||
# Clean PATH and LD_LIBRARY_PATH
|
||||
cleaned=$($WM_PROJECT_DIR/bin/foamCleanPath "$PATH" \
|
||||
"$ParaView_DIR $archDir/cmake- $archDir/qt- $archDir/ParaView-" \
|
||||
) && PATH="$cleaned"
|
||||
eval $($WM_PROJECT_DIR/bin/foamCleanPath -sh-env=PATH \
|
||||
"$ParaView_DIR $archDir/ParaView- $archDir/qt- $archDir/cmake-")
|
||||
|
||||
if [ -n "$LD_LIBRARY_PATH" ]
|
||||
then
|
||||
cleaned=$($WM_PROJECT_DIR/bin/foamCleanPath "$LD_LIBRARY_PATH" \
|
||||
"$ParaView_DIR $archDir/qt- $archDir/ParaView-" \
|
||||
) && LD_LIBRARY_PATH="$cleaned"
|
||||
fi
|
||||
eval $($WM_PROJECT_DIR/bin/foamCleanPath -sh-env=LD_LIBRARY_PATH \
|
||||
"$ParaView_DIR $archDir/ParaView- $archDir/qt-")
|
||||
|
||||
# ThirdParty cmake
|
||||
cmake=$archDir/$cmake_version
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/scotch
|
||||
# - sourced during wmake process only.
|
||||
#
|
||||
# Description
|
||||
# Setup for SCOTCH include/libraries (usually ThirdParty installation).
|
||||
# Sourced during wmake process only.
|
||||
#
|
||||
# To disable its use: SCOTCH_VERSION=scotch-none
|
||||
# For system-wide installations: SCOTCH_VERSION=scotch-system
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -11,9 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/settings
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Settings for OpenFOAM, sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
# Settings for OpenFOAM.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
export WM_ARCH=$(uname -s) # System name
|
||||
@ -216,7 +217,7 @@ unset GMP_ARCH_PATH MPFR_ARCH_PATH
|
||||
|
||||
# Load pre-defined compiler versions
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamEtc config.sh/compiler
|
||||
_foamEtc -config compiler
|
||||
|
||||
# ThirdParty base for compilers
|
||||
archDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH
|
||||
@ -246,21 +247,15 @@ GCC_NOT_FOUND
|
||||
# Add ThirdParty compiler libraries to run-time environment
|
||||
_foamAddLib $gccDir/lib$WM_COMPILER_LIB_ARCH
|
||||
|
||||
# Add ThirdParty gmp/mpfr/mpc libraries to run-time environment
|
||||
if [ "${gmpDir##*-}" != system ]
|
||||
then
|
||||
_foamAddLib $gmpDir/lib$WM_COMPILER_LIB_ARCH
|
||||
export GMP_ARCH_PATH=$gmpDir # For ThirdParty CGAL
|
||||
fi
|
||||
if [ "${mpfrDir##*-}" != system ]
|
||||
then
|
||||
_foamAddLib $mpfrDir/lib$WM_COMPILER_LIB_ARCH
|
||||
export MPFR_ARCH_PATH=$mpfrDir # For ThirdParty CGAL
|
||||
fi
|
||||
if [ "${mpcDir##*-}" != system ]
|
||||
then
|
||||
_foamAddLib $mpcDir/lib$WM_COMPILER_LIB_ARCH
|
||||
fi
|
||||
# Add gmp/mpfr/mpc libraries to run-time environment.
|
||||
# Require that they exist, automatically find lib64/ or lib/.
|
||||
_foamAddLibAuto $gmpDir && \
|
||||
export GMP_ARCH_PATH=$gmpDir # For non-system CGAL
|
||||
|
||||
_foamAddLibAuto $mpfrDir && \
|
||||
export MPFR_ARCH_PATH=$mpfrDir # For non-system CGAL
|
||||
|
||||
_foamAddLibAuto $mpcDir
|
||||
|
||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||
then
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -93,7 +93,7 @@ unset MPI_ARCH_PATH
|
||||
unset MPI_BUFFER_SIZE
|
||||
|
||||
# Undefine OPAL_PREFIX if set to one of the paths on foamOldDirs
|
||||
if [ -z "$($foamClean "$OPAL_PREFIX" "$foamOldDirs")" ]
|
||||
if [ -z "$($foamClean -env=OPAL_PREFIX "$foamOldDirs")" ]
|
||||
then
|
||||
unset OPAL_PREFIX
|
||||
fi
|
||||
@ -110,7 +110,7 @@ unset PV_PLUGIN_PATH
|
||||
unset VTK_DIR
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# unset other ThirdParty environment variables
|
||||
# Unset other ThirdParty environment variables
|
||||
|
||||
unset ADIOS_ARCH_PATH
|
||||
unset ADIOS1_ARCH_PATH
|
||||
@ -133,9 +133,9 @@ unset SCOTCH_ARCH_PATH
|
||||
|
||||
if [ -n "$foamClean" ]
|
||||
then
|
||||
cleaned=$($foamClean "$PATH" "$foamOldDirs") && PATH="$cleaned"
|
||||
cleaned=$($foamClean "$LD_LIBRARY_PATH" "$foamOldDirs") && LD_LIBRARY_PATH="$cleaned"
|
||||
cleaned=$($foamClean "$MANPATH" "$foamOldDirs") && MANPATH="$cleaned"
|
||||
eval $($foamClean -sh-env=PATH "$foamOldDirs")
|
||||
eval $($foamClean -sh-env=LD_LIBRARY_PATH "$foamOldDirs")
|
||||
eval $($foamClean -sh-env=MANPATH "$foamOldDirs")
|
||||
fi
|
||||
|
||||
[ -n "$LD_LIBRARY_PATH" ] || unset LD_LIBRARY_PATH
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
#
|
||||
# File
|
||||
# etc/config.sh/vtk
|
||||
# - sourced by OpenFOAM-*/etc/bashrc
|
||||
#
|
||||
# Description
|
||||
# Setup file for VTK (and MESA)
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/bashrc
|
||||
#
|
||||
# The library path is only adjusted when the paths specified here
|
||||
# actually exist at the time of sourcing.
|
||||
|
||||
78
etc/cshrc
78
etc/cshrc
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
@ -136,12 +136,8 @@ endif
|
||||
# [WM_PROJECT_USER_DIR] - Location of user files
|
||||
setenv WM_PROJECT_USER_DIR $HOME/$WM_PROJECT/$LOGNAME-$WM_PROJECT_VERSION
|
||||
|
||||
# Source an etc file, possibly with some verbosity
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
alias _foamEtc 'eval `$WM_PROJECT_DIR/bin/foamEtcFile -csh-verbose \!*`'
|
||||
else
|
||||
alias _foamEtc 'eval `$WM_PROJECT_DIR/bin/foamEtcFile -csh \!*`'
|
||||
endif
|
||||
# Load shell "functions" (actually aliases)
|
||||
source $WM_PROJECT_DIR/etc/config.csh/functions
|
||||
|
||||
# Override definitions via prefs, with 'other' first so the sys-admin
|
||||
# can provide base values independent of WM_PROJECT_SITE
|
||||
@ -181,68 +177,53 @@ while ( $#argv > 0 )
|
||||
end
|
||||
|
||||
|
||||
# Clean standard environment variables (PATH, LD_LIBRARY_PATH, MANPATH)
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
set foamClean=$WM_PROJECT_DIR/bin/foamCleanPath
|
||||
|
||||
# Clean standard environment variables (PATH, MANPATH, LD_LIBRARY_PATH)
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
# Prevent local variables from shadowing setenv variables
|
||||
unset PATH MANPATH LD_LIBRARY_PATH LD_PRELOAD
|
||||
|
||||
if (! $?LD_LIBRARY_PATH ) setenv LD_LIBRARY_PATH
|
||||
if (! $?MANPATH ) setenv MANPATH
|
||||
|
||||
# Clean PATH (path)
|
||||
set cleaned=`$foamClean "$PATH" "$foamOldDirs"`
|
||||
if ( $status == 0 ) setenv PATH $cleaned
|
||||
|
||||
# Clean LD_LIBRARY_PATH
|
||||
set cleaned=`$foamClean "$LD_LIBRARY_PATH" "$foamOldDirs"`
|
||||
if ( $status == 0 ) setenv LD_LIBRARY_PATH $cleaned
|
||||
|
||||
# Clean MANPATH
|
||||
set cleaned=`$foamClean "$MANPATH" "$foamOldDirs"`
|
||||
if ( $status == 0 ) setenv MANPATH $cleaned
|
||||
_foamClean PATH "$foamOldDirs"
|
||||
_foamClean MANPATH "$foamOldDirs"
|
||||
_foamClean LD_LIBRARY_PATH "$foamOldDirs"
|
||||
|
||||
|
||||
# Setup for OpenFOAM compilation etc
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamEtc config.csh/settings
|
||||
_foamEtc -config settings
|
||||
|
||||
# Setup for third-party packages
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamEtc config.csh/mpi
|
||||
_foamEtc config.csh/paraview
|
||||
_foamEtc config.csh/vtk
|
||||
_foamEtc config.csh/ensight
|
||||
## _foamEtc config.csh/ADIOS
|
||||
_foamEtc config.csh/CGAL
|
||||
_foamEtc config.csh/FFTW
|
||||
_foamEtc -config mpi
|
||||
_foamEtc -config paraview
|
||||
_foamEtc -config vtk
|
||||
_foamEtc -config ensight
|
||||
## _foamEtc -config ADIOS
|
||||
_foamEtc -config CGAL
|
||||
_foamEtc -config FFTW
|
||||
|
||||
# Interactive shell
|
||||
if ($?prompt) then
|
||||
_foamEtc config.csh/aliases
|
||||
_foamEtc config.csh/tcsh_completion
|
||||
_foamEtc -config aliases
|
||||
_foamEtc -config tcsh_completion
|
||||
endif
|
||||
|
||||
|
||||
# Clean environment paths again. Only remove duplicates
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
# Clean PATH (path)
|
||||
set cleaned=`$foamClean "$PATH"`
|
||||
if ( $status == 0 ) setenv PATH $cleaned
|
||||
|
||||
# Clean LD_LIBRARY_PATH
|
||||
set cleaned=`$foamClean "$LD_LIBRARY_PATH"`
|
||||
if ( $status == 0 ) setenv LD_LIBRARY_PATH $cleaned
|
||||
_foamClean PATH
|
||||
_foamClean MANPATH
|
||||
_foamClean LD_LIBRARY_PATH
|
||||
|
||||
# Clean MANPATH (trailing ':' to find system pages)
|
||||
set cleaned=`$foamClean "$MANPATH"`
|
||||
if ( $status == 0 ) setenv MANPATH "${cleaned}:"
|
||||
# Add trailing ':' for system manpages
|
||||
if ( $?MANPATH ) then
|
||||
setenv MANPATH "${MANPATH}:"
|
||||
endif
|
||||
|
||||
# Clean LD_PRELOAD
|
||||
if ( $?LD_PRELOAD ) then
|
||||
set cleaned=`$foamClean "$LD_PRELOAD"`
|
||||
if ( $status == 0 ) setenv LD_PRELOAD $cleaned
|
||||
_foamClean LD_PRELOAD
|
||||
endif
|
||||
|
||||
|
||||
@ -250,11 +231,14 @@ endif
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Unload shell "functions"
|
||||
unalias _foamClean
|
||||
unalias _foamEtc
|
||||
unalias _foamAddPath
|
||||
unalias _foamAddLib
|
||||
unalias _foamAddMan
|
||||
unalias _foamAddLib
|
||||
unalias _foamAddLibAuto
|
||||
|
||||
unset cleaned foamClean foamOldDirs
|
||||
# Variables (done as the last statement for a clean exit code)
|
||||
unset cleaned foamOldDirs
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user