Merge branch 'build' into 'develop'
Improvements, adjustments for build scripts and infrastructure See merge request !94
This commit is contained in:
commit
f9599010ca
@ -22,7 +22,7 @@ VTK
|
||||
---
|
||||
|
||||
If using the runTimePostProcessing to create on-the-fly images, you
|
||||
can either simply just compile ParaView-5.0.1 and these libraries will
|
||||
can simply just compile ParaView-5.0.1 and these libraries will
|
||||
be used.
|
||||
|
||||
If you elect to use a separate VTK compilation (for example for
|
||||
|
@ -1,7 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
cd ${0%/*} || exit 1
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
wclean libso DPMTurbulenceModels
|
||||
wclean
|
||||
wclean MPPICFoam
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -8,3 +8,5 @@ wmake $targetType DPMTurbulenceModels
|
||||
|
||||
wmake $targetType
|
||||
wmake $targetType MPPICFoam
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # run from this directory
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
wclean libso CompressibleTwoPhaseMixtureTurbulenceModels
|
||||
wclean
|
||||
|
@ -1,24 +1,33 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Build optional components (eg, may depend on third-party libraries)
|
||||
#------------------------------------------------------------------------------
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
# Optional component: continue-on-error
|
||||
# - may not have third-party installed
|
||||
export WM_CONTINUE_ON_ERROR=true
|
||||
|
||||
# Parse arguments for compilation (at least for error catching)
|
||||
. $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
|
||||
|
||||
# Get version info and arch-path
|
||||
. $WM_PROJECT_DIR/etc/config.sh/functions
|
||||
_foamSource $($WM_PROJECT_DIR/bin/foamEtcFile config.sh/ccmio)
|
||||
warning="==> skip ccmio"
|
||||
|
||||
if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/ccmio)
|
||||
then
|
||||
. $settings
|
||||
else
|
||||
echo "$warning (no config.sh/ccmio settings)"
|
||||
exit
|
||||
fi
|
||||
|
||||
# Build libccmio (.a|.so)
|
||||
$WM_THIRD_PARTY_DIR/makeCCMIO lib # libso
|
||||
# Build libccmio (.a|.so) - use static linkage for fewer issues
|
||||
$WM_THIRD_PARTY_DIR/makeCCMIO lib
|
||||
|
||||
if [ -e $CCMIO_ARCH_PATH/include/libccmio/ccmio.h \
|
||||
-a \( -e $CCMIO_ARCH_PATH/lib/libccmio.a -o $FOAM_EXT_LIBBIN/libccmio.so \) ]
|
||||
then
|
||||
wmake $targetType ccm26ToFoam
|
||||
else
|
||||
echo $warning
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -4,19 +4,18 @@ cd ${0%/*} || exit 1 # Run from this directory
|
||||
# Parse arguments for compilation (at least for error catching)
|
||||
. $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
|
||||
|
||||
export COMPILE_FLAGS=''
|
||||
export LINK_FLAGS=''
|
||||
unset COMP_FLAGS LINK_FLAGS
|
||||
|
||||
if [ -f "${FOAM_LIBBIN}/libSloanRenumber.so" ]
|
||||
then
|
||||
echo "Found libSloanRenumber.so -- enabling Sloan renumbering support."
|
||||
echo " found libSloanRenumber -- enabling sloan renumbering support."
|
||||
export LINK_FLAGS="${LINK_FLAGS} -lSloanRenumber"
|
||||
fi
|
||||
|
||||
if [ -f "${ZOLTAN_ARCH_PATH}/lib/libzoltan.a" -a -f "${FOAM_LIBBIN}/libzoltanRenumber.so" ]
|
||||
then
|
||||
echo "Found libzoltanRenumber.so -- enabling zoltan renumbering support."
|
||||
export COMPILE_FLAGS="-DFOAM_USE_ZOLTAN"
|
||||
echo " found libzoltanRenumber -- enabling sloan renumbering support."
|
||||
export COMP_FLAGS="-DFOAM_USE_ZOLTAN"
|
||||
export LINK_FLAGS="${LINK_FLAGS} -lzoltanRenumber -L${ZOLTAN_ARCH_PATH}/lib -lzoltan"
|
||||
fi
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
EXE_INC = \
|
||||
/* -DFULLDEBUG -g -O0 */ \
|
||||
${COMPILE_FLAGS} \
|
||||
${COMP_FLAGS} \
|
||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||
-I$(LIB_SRC)/dynamicMesh/lnInclude \
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||
|
@ -4,5 +4,4 @@ cd ${0%/*} || exit 1 # Run from this directory
|
||||
wclean libso helpTypes
|
||||
wclean
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -5,7 +5,4 @@ wclean libso foamPv
|
||||
PVblockMeshReader/Allwclean
|
||||
PVFoamReader/Allwclean
|
||||
|
||||
# remove dummy directory (see Allwmake)
|
||||
rmdir Make 2>/dev/null
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -24,10 +24,6 @@ case "$major" in
|
||||
wmakeLibPv foamPv
|
||||
PVblockMeshReader/Allwmake $targetType $*
|
||||
PVFoamReader/Allwmake $targetType $*
|
||||
|
||||
# Dummy directory to trigger proper 'wclean all' behaviour
|
||||
# - the Allwclean will otherwise not be used
|
||||
mkdir -p Make
|
||||
)
|
||||
fi
|
||||
;;
|
||||
|
@ -10,8 +10,7 @@ rm -f $FOAM_LIBBIN/libPVFoamReader* 2>/dev/null
|
||||
rm -rf PVFoamReader/Make # safety: old build location
|
||||
wclean libso vtkPVFoam
|
||||
|
||||
# Cleanup generated files
|
||||
findObjectDir $PWD # remove entire top-level
|
||||
rm -rf "$objectsDir" > /dev/null 2>&1
|
||||
# Cleanup generated files - remove entire top-level
|
||||
removeObjectDir $PWD
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -10,8 +10,7 @@ rm -f $FOAM_LIBBIN/libPVblockMeshReader* 2>/dev/null
|
||||
rm -rf PVblockMeshReader/Make # safety: old build location
|
||||
wclean libso vtkPVblockMesh
|
||||
|
||||
# Cleanup generated files
|
||||
findObjectDir $PWD # remove entire top-level
|
||||
rm -rf "$objectsDir" > /dev/null 2>&1
|
||||
# Cleanup generated files - remove entire top-level
|
||||
removeObjectDir $PWD
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -1,5 +1,7 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
wclean libso tabulatedWallFunction
|
||||
wclean
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -1,16 +1,16 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
unset COMPILE_FLAGS LINK_FLAGS
|
||||
unset COMP_FLAGS LINK_FLAGS
|
||||
|
||||
if [ -f "$CGAL_ARCH_PATH/include/CGAL/version.h" ] || \
|
||||
[ "${CGAL_ARCH_PATH##*-}" = system -a -f /usr/include/CGAL/version.h ]
|
||||
then
|
||||
wmake PolyhedronReader
|
||||
export COMPILE_FLAGS='-IPolyhedronReader'
|
||||
export COMP_FLAGS='-IPolyhedronReader'
|
||||
export LINK_FLAGS='${CGAL_LIBS} -lPolyhedronReader'
|
||||
else
|
||||
export COMPILE_FLAGS="-DNO_CGAL"
|
||||
export COMP_FLAGS="-DNO_CGAL"
|
||||
fi
|
||||
|
||||
wmake
|
||||
|
@ -14,7 +14,7 @@ EXE_INC = \
|
||||
${EXE_NDEBUG} \
|
||||
${CGAL_INC} \
|
||||
${c++CGALWARN} \
|
||||
$(COMPILE_FLAGS) \
|
||||
$(COMP_FLAGS) \
|
||||
-I$(FOAM_SRC)/surfMesh/lnInclude \
|
||||
-I$(FOAM_SRC)/triSurface/lnInclude \
|
||||
-I$(LIB_SRC)/edgeMesh/lnInclude \
|
||||
|
@ -32,7 +32,7 @@
|
||||
|
||||
if [ "$#" -gt 0 ]
|
||||
then
|
||||
find . -name "*.[CHL]" -exec $1 {} \; -print
|
||||
find . -name "*.[CHL]" -type f -exec $1 {} \; -print
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
167
bin/foamEtcFile
167
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 |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -34,8 +34,7 @@
|
||||
#
|
||||
# For example, within the user ~/.OpenFOAM/<VER>/prefs.sh:
|
||||
# \code
|
||||
# foamPrefs=`$WM_PROJECT_DIR/bin/foamEtcFile -m go prefs.sh` \
|
||||
# && _foamSource $foamPrefs
|
||||
# foamFile=$(foamEtcFile -mode go prefs.sh) && . $foamFile
|
||||
# \endcode
|
||||
#
|
||||
# Note
|
||||
@ -43,6 +42,7 @@
|
||||
# or $FOAM_INST_DIR/openfoam<VERSION>/bin/ (for the debian version)
|
||||
#
|
||||
#-------------------------------------------------------------------------------
|
||||
unset optQuiet optSilent
|
||||
usage() {
|
||||
[ "${optQuiet:-$optSilent}" = true ] && exit 1
|
||||
|
||||
@ -53,21 +53,23 @@ usage() {
|
||||
Usage: ${0##*/} [OPTION] fileName
|
||||
${0##*/} [OPTION] -list
|
||||
options:
|
||||
-all return all files (otherwise stop after the first match)
|
||||
-list list the directories to be searched
|
||||
-mode <mode> any combination of u(user), g(group), o(other)
|
||||
-prefix <dir> specify an alternative installation prefix
|
||||
-quiet suppress all normal output
|
||||
-silent suppress all stderr output
|
||||
-version <ver> specify an alternative OpenFOAM version
|
||||
in the form Maj.Min.Rev (eg, 1.7.0)
|
||||
-a, -all return all files (otherwise stop after the first match)
|
||||
-l, -list list the directories to be searched
|
||||
-m, -mode MODE any combination of u(user), g(group), o(other)
|
||||
-p, -prefix DIR specify an alternative installation prefix
|
||||
-q, -quiet suppress all normal output
|
||||
-s, -silent suppress stderr output, except for things that are emitted
|
||||
by -csh-verbose, -sh-verbose.
|
||||
-v, -version VER specify alternative OpenFOAM version (eg, 3.0, 1612, ...)
|
||||
-csh | -sh produce output suitable for a csh or sh 'eval'
|
||||
-csh-verbose,
|
||||
-sh-verbose with additional verbosity
|
||||
-help print the usage
|
||||
|
||||
Locate user/group/shipped file with semantics similar to the
|
||||
~OpenFOAM/fileName expansion.
|
||||
|
||||
The options can also be specified as a single character
|
||||
(eg, '-q' instead of '-quiet'), but must not be grouped.
|
||||
Many options can be specified as a single character, but must not be grouped.
|
||||
|
||||
Exit status
|
||||
0 when the file is found. Print resolved path to stdout.
|
||||
@ -77,60 +79,56 @@ options:
|
||||
USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
# the bin dir:
|
||||
# The bin dir:
|
||||
binDir="${0%/*}"
|
||||
|
||||
# the project dir:
|
||||
# The project dir:
|
||||
projectDir="${binDir%/bin}"
|
||||
|
||||
# the prefix dir (same as $FOAM_INST_DIR):
|
||||
# The prefix dir (same as $FOAM_INST_DIR):
|
||||
prefixDir="${projectDir%/*}"
|
||||
|
||||
# the name used for the project directory
|
||||
# The name used for the project directory
|
||||
projectDirName="${projectDir##*/}"
|
||||
|
||||
# version number used for debian packaging
|
||||
unset versionNum
|
||||
# versionNum used for debian packaging
|
||||
unset version versionNum
|
||||
|
||||
#
|
||||
# handle standard and debian naming convention
|
||||
# Handle standard and debian naming conventions
|
||||
# - set version (always) and versionNum (debian only)
|
||||
#
|
||||
case "$projectDirName" in
|
||||
OpenFOAM-*) # standard naming convention OpenFOAM-<VERSION>
|
||||
OpenFOAM-*) # standard naming: OpenFOAM-<VERSION>
|
||||
version="${projectDirName##OpenFOAM-}"
|
||||
;;
|
||||
|
||||
openfoam[0-9]* | openfoam-dev) # debian naming convention 'openfoam<VERSION>'
|
||||
openfoam[0-9]* | openfoam-dev) # debian naming: openfoam<VERSION>
|
||||
versionNum="${projectDirName##openfoam}"
|
||||
case "$versionNum" in
|
||||
??) # convert 2 digit version number to decimal delineated
|
||||
version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)@\1.\2@')
|
||||
case "${#versionNum}" in
|
||||
(2|3|4) # Convert digits version number to decimal delineated
|
||||
version=$(echo "$versionNum" | sed -e 's@\([0-9]\)@\1.@g')
|
||||
version="${version%.}"
|
||||
;;
|
||||
???) # convert 3 digit version number to decimal delineated
|
||||
version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)\(.\)@\1.\2.\3@')
|
||||
;;
|
||||
????) # convert 4 digit version number to decimal delineated
|
||||
version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)\(.\)\(.\)@\1.\2.\3.\4@')
|
||||
;;
|
||||
*) # failback - use current environment setting
|
||||
|
||||
(*) # Fallback - use current environment setting
|
||||
version="$WM_PROJECT_VERSION"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Error : unknown/unsupported naming convention"
|
||||
echo "${0##*/} Error : unknown/unsupported naming convention" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
# default mode is 'ugo'
|
||||
# Default mode is always 'ugo'
|
||||
mode=ugo
|
||||
unset optAll optList optQuiet optSilent
|
||||
unset optAll optList optShell
|
||||
|
||||
# parse options
|
||||
while [ "$#" -gt 0 ]
|
||||
@ -141,27 +139,46 @@ do
|
||||
;;
|
||||
-a | -all)
|
||||
optAll=true
|
||||
unset optShell
|
||||
;;
|
||||
-l | -list)
|
||||
optList=true
|
||||
unset optShell
|
||||
;;
|
||||
-csh | -sh | -csh-verbose | -sh-verbose)
|
||||
optShell="${1#-}"
|
||||
unset optAll
|
||||
;;
|
||||
-mode=[ugo]*)
|
||||
mode="${1#-mode=}"
|
||||
;;
|
||||
-prefix=/*)
|
||||
prefixDir="${1#-prefix=}"
|
||||
prefixDir="${prefixDir%/}"
|
||||
;;
|
||||
-version=*)
|
||||
version="${1#-version=}"
|
||||
# convert x.y.z -> xyz version (if installation looked like debian)
|
||||
if [ -n "$versionNum" ]
|
||||
then
|
||||
versionNum=$(echo "$version" | sed -e 's@\.@@g')
|
||||
fi
|
||||
;;
|
||||
-m | -mode)
|
||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||
mode="$2"
|
||||
|
||||
# sanity check:
|
||||
# Sanity check. Handles missing argument too.
|
||||
case "$mode" in
|
||||
*u* | *g* | *o* )
|
||||
;;
|
||||
[ugo]*)
|
||||
;;
|
||||
*)
|
||||
usage "'$1' option with invalid mode '$mode'"
|
||||
;;
|
||||
usage "invalid mode '$mode'"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
;;
|
||||
-p | -prefix)
|
||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||
prefixDir="$2"
|
||||
prefixDir="${2%/}"
|
||||
shift
|
||||
;;
|
||||
-q | -quiet)
|
||||
@ -185,7 +202,7 @@ do
|
||||
break
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
@ -194,6 +211,13 @@ do
|
||||
shift
|
||||
done
|
||||
|
||||
# Update projectDir accordingly
|
||||
if [ -n "$versionNum" ]
|
||||
then
|
||||
projectDir="$prefixDir/openfoam$versionNum" # debian
|
||||
else
|
||||
projectDir="$prefixDir/${WM_PROJECT:-OpenFOAM}-$version" # standard
|
||||
fi
|
||||
|
||||
# debugging:
|
||||
# echo "Installed locations:"
|
||||
@ -210,30 +234,20 @@ fileName="${1#~OpenFOAM/}"
|
||||
|
||||
# Define the various places to be searched:
|
||||
unset dirList
|
||||
case "$mode" in
|
||||
*u*) # user
|
||||
userDir="$HOME/.${WM_PROJECT:-OpenFOAM}"
|
||||
dirList="$dirList $userDir/$version $userDir"
|
||||
case "$mode" in (*u*) # user
|
||||
dir="$HOME/.${WM_PROJECT:-OpenFOAM}"
|
||||
dirList="$dirList $dir/$version $dir"
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$mode" in
|
||||
*g*) # group (site)
|
||||
siteDir="${WM_PROJECT_SITE:-$prefixDir/site}"
|
||||
dirList="$dirList $siteDir/$version $siteDir"
|
||||
case "$mode" in (*g*) # group (site)
|
||||
dir="${WM_PROJECT_SITE:-$prefixDir/site}"
|
||||
dirList="$dirList $dir/$version $dir"
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$mode" in
|
||||
*o*) # other (shipped)
|
||||
if [ -n "$versionNum" ]
|
||||
then
|
||||
# debian packaging
|
||||
dirList="$dirList $prefixDir/openfoam$versionNum/etc"
|
||||
else
|
||||
# standard packaging
|
||||
dirList="$dirList $prefixDir/${WM_PROJECT:-OpenFOAM}-$version/etc"
|
||||
fi
|
||||
case "$mode" in (*o*) # other (shipped)
|
||||
dirList="$dirList $projectDir/etc"
|
||||
;;
|
||||
esac
|
||||
set -- $dirList
|
||||
@ -251,7 +265,7 @@ then
|
||||
[ "$nArgs" -le 1 ] || usage
|
||||
|
||||
# a silly combination, but -quiet does have precedence
|
||||
[ "$optQuiet" = true ] && exit 0
|
||||
[ -n "$optQuiet" ] && exit 0
|
||||
|
||||
for dir
|
||||
do
|
||||
@ -275,13 +289,28 @@ else
|
||||
if [ -f "$dir/$fileName" ]
|
||||
then
|
||||
exitCode=0
|
||||
if [ "$optQuiet" = true ]
|
||||
then
|
||||
[ -n "$optQuiet" ] && break
|
||||
|
||||
case "$optShell" in
|
||||
(*verbose)
|
||||
echo "Using: $dir/$fileName" 1>&2
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$optShell" in
|
||||
csh*)
|
||||
echo "source $dir/$fileName"
|
||||
break
|
||||
else
|
||||
;;
|
||||
sh*)
|
||||
echo ". $dir/$fileName"
|
||||
break
|
||||
;;
|
||||
*)
|
||||
echo "$dir/$fileName"
|
||||
[ "$optAll" = true ] || break
|
||||
fi
|
||||
[ -n "$optAll" ] || break
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
done
|
||||
|
||||
|
@ -119,7 +119,7 @@ else
|
||||
( cd $packDir && git archive --format=tar --prefix=$packDir/ HEAD) > $packBase.tar &&
|
||||
|
||||
echo "add in time-stamp and lnInclude directories" 1>&2 &&
|
||||
tar cf $packBase.tar2 $packDir/.timeStamp $packDir/.build `find -H $packDir -type d -name lnInclude` &&
|
||||
tar cf $packBase.tar2 $packDir/.timeStamp $packDir/.build $(find -H $packDir -name lnInclude -type d) &&
|
||||
tar Af $packBase.tar $packBase.tar2 &&
|
||||
|
||||
echo "gzip tar file" 1>&2 &&
|
||||
|
@ -71,8 +71,8 @@ then
|
||||
elif [ -d system ]
|
||||
then
|
||||
# Run normal case.
|
||||
parentDir=`dirname $PWD`
|
||||
application=`getApplication`
|
||||
parentDir=$(dirname $PWD)
|
||||
application=$(getApplication)
|
||||
runApplication blockMesh
|
||||
runApplication $application
|
||||
else
|
||||
|
@ -93,7 +93,7 @@ if [ ! -d $DIR ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
FILES=$(find $DIR -type f -name *vtk)
|
||||
FILES=$(find $DIR -name '*.vtk' -type f)
|
||||
NAMES=$(for f in $FILES; do basename $f .vtk; done | sort -u)
|
||||
|
||||
if [ -d $OUT ]; then
|
||||
|
@ -28,8 +28,8 @@
|
||||
# Description
|
||||
# Updates the header of application files.
|
||||
# By default, writes current version in the header.
|
||||
# Alternatively version can be specified with -v option.
|
||||
# Also removes consecutive blank lines from file.
|
||||
# The version can alternatively be specified with the -v option.
|
||||
# Also removes consecutive blank lines from the file.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
usage() {
|
||||
@ -66,7 +66,7 @@ do
|
||||
shift 2
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
@ -118,7 +118,7 @@ FoamFileAttribute()
|
||||
tmpFile=FoamFile.tmp$$
|
||||
for caseFile
|
||||
do
|
||||
if grep FoamFile $caseFile >/dev/null 2>&1
|
||||
if grep -q FoamFile $caseFile 2>/dev/null
|
||||
then
|
||||
echo "Updating case file: $caseFile"
|
||||
sed -n '/FoamFile/,/}/p' $caseFile > $tmpFile
|
||||
@ -137,7 +137,7 @@ do
|
||||
[ -s $tmpFile ] && cat $tmpFile >| $caseFile
|
||||
rm -f $tmpFile 2>/dev/null
|
||||
else
|
||||
echo " Invalid case file: $caseFile" 1>&2
|
||||
echo "Invalid case file: $caseFile" 1>&2
|
||||
fi
|
||||
done
|
||||
|
||||
|
@ -35,6 +35,7 @@ then
|
||||
set -- .
|
||||
elif [ "$1" = "-h" -o "$1" = "-help" ]
|
||||
then
|
||||
exec 1>&2
|
||||
echo "Usage: ${0##*/} [dir1] .. [dirN]"
|
||||
echo " remove all core files"
|
||||
exit 1
|
||||
@ -45,8 +46,8 @@ for i
|
||||
do
|
||||
if [ -d "$i" ]
|
||||
then
|
||||
echo "removing all core files: $i"
|
||||
find $i \( -type f -name 'core' -o -name 'core.[1-9]*' -o -name 'vgcore.*' \) -print | xargs -t rm 2>/dev/null
|
||||
echo "removing all core files: $i" 1>&2
|
||||
find $i \( -name core -o -name 'core.[1-9]*' -o -name 'vgcore.*' \) -type f -delete
|
||||
else
|
||||
echo "no directory: $i" 1>&2
|
||||
fi
|
||||
|
@ -35,6 +35,7 @@ then
|
||||
set -- .
|
||||
elif [ "$1" = "-h" -o "$1" = "-help" ]
|
||||
then
|
||||
exec 1>&2
|
||||
echo "Usage: ${0##*/} [dir1] .. [dirN]"
|
||||
echo " remove all *~ files"
|
||||
exit 1
|
||||
@ -45,8 +46,8 @@ for i
|
||||
do
|
||||
if [ -d "$i" ]
|
||||
then
|
||||
echo "removing all *~ files: $i"
|
||||
find $i \( -name '*~' -o -name '.*~' \) -print | xargs -t rm 2>/dev/null
|
||||
echo "removing all *~ files: $i" 1>&2
|
||||
find $i \( -name '*~' -o -name '.*~' \) -type f -delete -print
|
||||
else
|
||||
echo "no directory: $i" 1>&2
|
||||
fi
|
||||
|
@ -78,6 +78,7 @@ find -H $packDir \
|
||||
| sed \
|
||||
-e '\@/\.git/@d' \
|
||||
-e '\@/\.tags/@d' \
|
||||
-e '\@/build/@d' \
|
||||
-e '\@/platforms/@d' \
|
||||
-e '\@/t/@d' \
|
||||
-e '\@/Make[.A-Za-z]*/[^/]*/@d' \
|
||||
|
46
etc/bashrc
46
etc/bashrc
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation |
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -61,7 +61,7 @@ export FOAM_INST_DIR
|
||||
export WM_COMPILER_TYPE=system
|
||||
|
||||
#- Compiler:
|
||||
# WM_COMPILER = Gcc | Gcc4[8-9] | Gcc5[1-4] | Gcc6[1-2] | Clang | Icc
|
||||
# WM_COMPILER= Gcc | Gcc4[8-9] | Gcc5[1-4] | Gcc6[1-3] | Clang | Icc | IccKNL
|
||||
export WM_COMPILER=Gcc
|
||||
unset WM_COMPILER_ARCH WM_COMPILER_LIB_ARCH
|
||||
|
||||
@ -136,10 +136,10 @@ export WM_PROJECT_USER_DIR=$HOME/$WM_PROJECT/$USER-$WM_PROJECT_VERSION
|
||||
. $WM_PROJECT_DIR/etc/config.sh/functions
|
||||
|
||||
# Add in preset user or site preferences:
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile prefs.sh`
|
||||
_foamSourceEtc prefs.sh
|
||||
|
||||
# Evaluate command-line parameters and record settings for later
|
||||
# these can be used to set/unset values, or specify alternative pref files
|
||||
# Evaluate command-line parameters and record settings for later.
|
||||
# These can be used to set/unset values, or specify alternative pref files.
|
||||
export FOAM_SETTINGS="$@"
|
||||
_foamEval $@
|
||||
|
||||
@ -148,55 +148,55 @@ _foamEval $@
|
||||
foamClean=$WM_PROJECT_DIR/bin/foamCleanPath
|
||||
|
||||
#- Clean PATH
|
||||
cleaned=`$foamClean "$PATH" "$foamOldDirs"` && PATH="$cleaned"
|
||||
cleaned=$($foamClean "$PATH" "$foamOldDirs") && PATH="$cleaned"
|
||||
|
||||
#- Clean LD_LIBRARY_PATH
|
||||
cleaned=`$foamClean "$LD_LIBRARY_PATH" "$foamOldDirs"` \
|
||||
cleaned=$($foamClean "$LD_LIBRARY_PATH" "$foamOldDirs") \
|
||||
&& LD_LIBRARY_PATH="$cleaned"
|
||||
|
||||
#- Clean MANPATH
|
||||
cleaned=`$foamClean "$MANPATH" "$foamOldDirs"` && MANPATH="$cleaned"
|
||||
cleaned=$($foamClean "$MANPATH" "$foamOldDirs") && MANPATH="$cleaned"
|
||||
|
||||
export PATH LD_LIBRARY_PATH MANPATH
|
||||
|
||||
|
||||
# Source project setup files
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamSource $WM_PROJECT_DIR/etc/config.sh/settings
|
||||
_foamSource $WM_PROJECT_DIR/etc/config.sh/aliases
|
||||
_foamSourceEtc config.sh/settings
|
||||
_foamSourceEtc config.sh/aliases
|
||||
|
||||
|
||||
# Source user setup files for optional packages
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/mpi`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/paraview`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/vtk`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/ensight`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/gperftools`
|
||||
_foamSourceEtc config.sh/mpi
|
||||
_foamSourceEtc config.sh/paraview
|
||||
_foamSourceEtc config.sh/vtk
|
||||
_foamSourceEtc config.sh/ensight
|
||||
_foamSourceEtc config.sh/gperftools
|
||||
|
||||
##_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/ADIOS`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/CGAL`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/scotch`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/FFTW`
|
||||
#_foamSourceEtc config.sh/ADIOS
|
||||
_foamSourceEtc config.sh/CGAL
|
||||
_foamSourceEtc config.sh/scotch
|
||||
_foamSourceEtc config.sh/FFTW
|
||||
|
||||
|
||||
# Clean environment paths again. Only remove duplicates
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#- Clean PATH
|
||||
cleaned=`$foamClean "$PATH"` && PATH="$cleaned"
|
||||
cleaned=$($foamClean "$PATH") && PATH="$cleaned"
|
||||
|
||||
#- Clean LD_LIBRARY_PATH
|
||||
cleaned=`$foamClean "$LD_LIBRARY_PATH"` && LD_LIBRARY_PATH="$cleaned"
|
||||
cleaned=$($foamClean "$LD_LIBRARY_PATH") && LD_LIBRARY_PATH="$cleaned"
|
||||
|
||||
#- Clean MANPATH (trailing ':' to find system pages)
|
||||
cleaned=`$foamClean "$MANPATH"`: && MANPATH="$cleaned"
|
||||
cleaned=$($foamClean "$MANPATH") && MANPATH="${cleaned}:"
|
||||
|
||||
export PATH LD_LIBRARY_PATH MANPATH
|
||||
|
||||
#- Clean LD_PRELOAD
|
||||
if [ -n "$LD_PRELOAD" ]
|
||||
then
|
||||
cleaned=`$foamClean "$LD_PRELOAD"` && LD_PRELOAD="$cleaned"
|
||||
cleaned=$($foamClean "$LD_PRELOAD") && LD_PRELOAD="$cleaned"
|
||||
export LD_PRELOAD
|
||||
fi
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2016 OpenCFD Ltd.
|
||||
# \\ / A nd | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
@ -47,10 +47,12 @@
|
||||
# be used during the build process. See further notes there.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
set adios_version=ADIOS-1.11.0
|
||||
set adios_version=ADIOS-1.11.1
|
||||
setenv ADIOS_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$adios_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
echo "Using adios ($adios_version) -> $ADIOS_ARCH_PATH"
|
||||
|
@ -49,6 +49,7 @@
|
||||
# be used during the build process.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
set boost_version=boost_1_62_0
|
||||
set cgal_version=CGAL-4.9
|
||||
@ -56,6 +57,7 @@ set cgal_version=CGAL-4.9
|
||||
setenv BOOST_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$boost_version
|
||||
setenv CGAL_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cgal_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
echo "Using boost ($boost_version) -> $BOOST_ARCH_PATH"
|
||||
|
@ -47,11 +47,12 @@
|
||||
# be used during the build process.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
set fftw_version=fftw-3.3.5
|
||||
|
||||
setenv FFTW_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$fftw_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
echo "Using fftw ($fftw_version) -> $FFTW_ARCH_PATH"
|
||||
|
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation | Copyright (C) 2016 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -63,6 +63,9 @@ case ThirdParty:
|
||||
case Gcc62:
|
||||
set gcc_version=gcc-6.2.0
|
||||
breaksw
|
||||
case Gcc63:
|
||||
set gcc_version=gcc-6.3.0
|
||||
breaksw
|
||||
case Clang:
|
||||
set clang_version=llvm-3.7.0
|
||||
# set clang_version=llvm-3.8.0
|
||||
@ -84,7 +87,7 @@ case Clang:
|
||||
setenv WM_CC 'clang'
|
||||
setenv WM_CXX 'clang++'
|
||||
breaksw
|
||||
case Icc:
|
||||
case Icc*:
|
||||
setenv WM_CC 'icc'
|
||||
setenv WM_CXX 'icpc'
|
||||
breaksw
|
||||
|
@ -38,9 +38,7 @@ endif
|
||||
if ( -r $CEI_HOME ) then
|
||||
|
||||
# Special treatment for 32bit OpenFOAM and 64bit Ensight
|
||||
if ($WM_ARCH == linux && `uname -m` == x86_64) then
|
||||
setenv CEI_ARCH linux_2.6_32
|
||||
endif
|
||||
if ($WM_ARCH-`uname -m` == linux-x86_64) setenv CEI_ARCH linux_2.6_32
|
||||
|
||||
# Add to path
|
||||
setenv PATH ${CEI_HOME}/bin:${PATH}
|
||||
|
@ -53,7 +53,7 @@ case SYSTEMOPENMPI:
|
||||
case OPENMPI:
|
||||
setenv FOAM_MPI openmpi-1.10.4
|
||||
# Optional configuration tweaks:
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/openmpi`
|
||||
_foamSourceEtc config.csh/openmpi
|
||||
|
||||
setenv MPI_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
|
||||
|
||||
|
@ -50,12 +50,13 @@
|
||||
# unsetenv ParaView_VERSION # avoid using ThirdParty settings
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
setenv ParaView_VERSION 5.0.1
|
||||
setenv ParaView_MAJOR detect # Automatically determine major version
|
||||
|
||||
set cmake_version=cmake-system
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if ( ! $?ParaView_DIR ) setenv ParaView_DIR
|
||||
|
@ -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-2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -75,7 +75,7 @@ case Linux:
|
||||
breaksw
|
||||
|
||||
default:
|
||||
echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"
|
||||
echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32|64"
|
||||
breaksw
|
||||
|
||||
endsw
|
||||
@ -124,11 +124,13 @@ case SunOS:
|
||||
setenv WM_LDFLAGS '-mabi=64 -G0'
|
||||
breaksw
|
||||
|
||||
default:
|
||||
echo
|
||||
echo "Your '$WM_ARCH' operating system is not supported by this release"
|
||||
echo "of OpenFOAM. For further assistance, please contact www.OpenFOAM.com"
|
||||
echo
|
||||
default: # An unsupported operating system
|
||||
/bin/cat <<USAGE
|
||||
|
||||
Your "$WM_ARCH" operating system is unsupported by this OpenFOAM release.
|
||||
For further assistance, please contact www.OpenFOAM.com
|
||||
|
||||
USAGE
|
||||
breaksw
|
||||
|
||||
endsw
|
||||
@ -210,7 +212,7 @@ if ( ! $?WM_COMPILER_TYPE ) setenv WM_COMPILER_TYPE system
|
||||
|
||||
# Load configured compiler versions, regardless of the compiler type
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/compiler`
|
||||
_foamSourceEtc config.csh/compiler
|
||||
|
||||
switch ("$WM_COMPILER_TYPE")
|
||||
case system:
|
||||
@ -230,7 +232,7 @@ case ThirdParty:
|
||||
|
||||
# Check that the compiler directory can be found
|
||||
if ( ! -d "$gccDir" ) then
|
||||
cat << GCC_NOT_FOUND
|
||||
/bin/cat << GCC_NOT_FOUND
|
||||
===============================================================================
|
||||
Warning in $WM_PROJECT_DIR/etc/config.csh/settings:
|
||||
Cannot find '$WM_COMPILER' compiler installation
|
||||
@ -272,7 +274,7 @@ GCC_NOT_FOUND
|
||||
|
||||
# Check that the compiler directory can be found
|
||||
if ( ! -d "$clangDir" ) then
|
||||
cat << CLANG_NOT_FOUND
|
||||
/bin/cat << CLANG_NOT_FOUND
|
||||
===============================================================================
|
||||
Warning in $WM_PROJECT_DIR/etc/config.csh/settings:
|
||||
Cannot find '$WM_COMPILER' compiler installation
|
||||
|
@ -41,6 +41,7 @@
|
||||
# See the BuildIssues.txt about problems that can be encountered when using
|
||||
# the 'plain' VTK sources.
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
set vtk_version=VTK-7.1.0
|
||||
set mesa_version=mesa-13.0.1
|
||||
@ -48,6 +49,7 @@ set mesa_version=mesa-13.0.1
|
||||
setenv VTK_DIR $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$vtk_version
|
||||
setenv MESA_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$mesa_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
echo "Using vtk ($vtk_version) -> $VTK_DIR"
|
||||
|
@ -2,7 +2,7 @@
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2016 OpenCFD Ltd.
|
||||
# \\ / A nd | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
@ -46,10 +46,12 @@
|
||||
# for the appropriate MPI. Eg, libadios_openmpi-system
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
adios_version=ADIOS-1.11.0
|
||||
adios_version=ADIOS-1.11.1
|
||||
export ADIOS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$adios_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||
then
|
||||
|
@ -48,6 +48,7 @@
|
||||
# - boost_version / cgal_version variables are retained.
|
||||
# - the LD_LIBRARY_PATH is not adjusted.
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
boost_version=boost_1_62_0
|
||||
cgal_version=CGAL-4.9
|
||||
@ -55,6 +56,7 @@ cgal_version=CGAL-4.9
|
||||
export BOOST_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$boost_version
|
||||
export CGAL_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cgal_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||
then
|
||||
|
@ -46,11 +46,12 @@
|
||||
# - fftw_version variable is retained.
|
||||
# - the LD_LIBRARY_PATH is not adjusted.
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
fftw_version=fftw-3.3.5
|
||||
|
||||
export FFTW_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$fftw_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||
then
|
||||
|
@ -35,8 +35,10 @@
|
||||
# A csh version is not needed, since the values here are only sourced
|
||||
# during the wmake process
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
ccmio_version=libccmio-2.6.1
|
||||
export CCMIO_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$ccmio_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -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-2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -62,6 +62,9 @@ ThirdParty)
|
||||
Gcc62)
|
||||
gcc_version=gcc-6.2.0
|
||||
;;
|
||||
Gcc63)
|
||||
gcc_version=gcc-6.3.0
|
||||
;;
|
||||
Clang)
|
||||
clang_version=llvm-3.7.0
|
||||
# clang_version=llvm-3.8.0
|
||||
@ -84,7 +87,7 @@ Clang)
|
||||
export WM_CC='clang'
|
||||
export WM_CXX='clang++'
|
||||
;;
|
||||
Icc)
|
||||
Icc*)
|
||||
export WM_CC='icc'
|
||||
export WM_CXX='icpc'
|
||||
;;
|
||||
|
@ -31,22 +31,16 @@
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Fallback value
|
||||
if [ ! -d "$CEI_HOME" ]
|
||||
then
|
||||
export CEI_HOME=/usr/local/ensight/CEI
|
||||
fi
|
||||
[ -d "$CEI_HOME" ] || export CEI_HOME=/usr/local/ensight/CEI
|
||||
|
||||
if [ -r $CEI_HOME ]
|
||||
then
|
||||
|
||||
# Special treatment for 32bit OpenFOAM and 64bit Ensight
|
||||
if [ "$WM_ARCH" = linux -a `uname -m` = x86_64 ]
|
||||
then
|
||||
export CEI_ARCH=linux_2.6_32
|
||||
fi
|
||||
[ "$WM_ARCH-$(uname -m)" = linux-x86_64 ] && export CEI_ARCH=linux_2.6_32
|
||||
|
||||
# Add to path if required
|
||||
if [ "$CEI_HOME/bin/ensight" != "`which ensight 2>/dev/null`" ]
|
||||
if [ "$CEI_HOME/bin/ensight" != "$(command -v ensight)" ]
|
||||
then
|
||||
export PATH=$CEI_HOME/bin:$PATH
|
||||
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 |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -31,9 +31,10 @@
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# First load the standard versions, if necessary
|
||||
foamFile=$($WM_PROJECT_DIR/bin/foamEtcFile -mode o config.sh/compiler \
|
||||
2>/dev/null)
|
||||
[ $? -eq 0 ] && _foamSource $foamFile
|
||||
if foamFile=$($WM_PROJECT_DIR/bin/foamEtcFile -mode o config.sh/compiler)
|
||||
then
|
||||
. $foamFile
|
||||
fi
|
||||
unset foamFile
|
||||
|
||||
|
||||
@ -57,7 +58,7 @@ Gcc48u)
|
||||
export WM_CC='gcc-4.8'
|
||||
export WM_CXX='g++-4.8'
|
||||
;;
|
||||
Icc)
|
||||
Icc*)
|
||||
# Example for ensuring that 3rd software uses the Icc compilers
|
||||
export WM_CC='icc'
|
||||
export WM_CXX='icpc'
|
||||
|
@ -3,7 +3,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -36,20 +36,31 @@ then
|
||||
# Temporary environment variable for automatically (un)loading functions
|
||||
WM_BASH_FUNCTIONS=loaded
|
||||
|
||||
# Source files, possibly with some verbosity
|
||||
# Source a file, possibly with some verbosity
|
||||
_foamSource()
|
||||
{
|
||||
while [ $# -ge 1 ]
|
||||
do
|
||||
[ "$FOAM_VERBOSE" -a "$PS1" ] && echo "Sourcing: $1" 1>&2
|
||||
if [ $# -gt 0 -a -f "$1" ]
|
||||
then
|
||||
[ "$FOAM_VERBOSE" -a "$PS1" ] && echo "Using: $1" 1>&2
|
||||
. $1
|
||||
shift
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
# Source an etc file, possibly with some verbosity
|
||||
_foamSourceEtc()
|
||||
{
|
||||
local file
|
||||
if [ $# -gt 0 ] && file=$($WM_PROJECT_DIR/bin/foamEtcFile "$@")
|
||||
then
|
||||
[ "$FOAM_VERBOSE" -a "$PS1" ] && echo "Using: $file" 1>&2
|
||||
. $file
|
||||
fi
|
||||
}
|
||||
|
||||
# Evaluate command-line parameters
|
||||
_foamEval()
|
||||
{
|
||||
local file
|
||||
while [ $# -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
@ -71,9 +82,10 @@ then
|
||||
# Filename: source it
|
||||
if [ -f "$1" ]
|
||||
then
|
||||
_foamSource "$1"
|
||||
[ "$FOAM_VERBOSE" -a "$PS1" ] && echo "Using: $1" 1>&2
|
||||
. "$1"
|
||||
else
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -silent "$1"`
|
||||
_foamSourceEtc -silent "$1"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
@ -84,31 +96,19 @@ then
|
||||
# Prefix to PATH
|
||||
_foamAddPath()
|
||||
{
|
||||
while [ $# -ge 1 ]
|
||||
do
|
||||
export PATH=$1:$PATH
|
||||
shift
|
||||
done
|
||||
[ $# -gt 0 ] && export PATH=$1:$PATH;
|
||||
}
|
||||
|
||||
# Prefix to LD_LIBRARY_PATH
|
||||
_foamAddLib()
|
||||
{
|
||||
while [ $# -ge 1 ]
|
||||
do
|
||||
export LD_LIBRARY_PATH=$1:$LD_LIBRARY_PATH
|
||||
shift
|
||||
done
|
||||
[ $# -gt 0 ] && export LD_LIBRARY_PATH=$1:$LD_LIBRARY_PATH
|
||||
}
|
||||
|
||||
# Prefix to MANPATH
|
||||
_foamAddMan()
|
||||
{
|
||||
while [ $# -ge 1 ]
|
||||
do
|
||||
export MANPATH=$1:$MANPATH
|
||||
shift
|
||||
done
|
||||
[ $# -gt 0 ] && export MANPATH=$1:$MANPATH
|
||||
}
|
||||
|
||||
else
|
||||
@ -117,6 +117,9 @@ else
|
||||
# ~~~~~~~~~~~~~~~~~~~~
|
||||
unset WM_BASH_FUNCTIONS
|
||||
unset -f _foamAddPath _foamAddLib _foamAddMan
|
||||
unset -f _foamSource _foamEval
|
||||
unset -f _foamSourceEtc _foamEval
|
||||
unset -f _foamSource
|
||||
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -46,11 +46,12 @@
|
||||
# - gperftools_version variable are retained.
|
||||
# - the LD_LIBRARY_PATH and PATH are not adjusted.
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
gperftools_version=gperftools-2.5
|
||||
|
||||
GPERFTOOLS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$gperftools_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||
then
|
||||
|
@ -52,9 +52,10 @@
|
||||
# by creating an empty one with the same name at a user or site location.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
METIS_VERSION=metis-5.1.0
|
||||
|
||||
export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$METIS_VERSION
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -43,7 +43,7 @@ SYSTEMOPENMPI)
|
||||
unset OPAL_PREFIX
|
||||
fi
|
||||
|
||||
libDir=`mpicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/'`
|
||||
libDir=$(mpicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/')
|
||||
|
||||
# Bit of a hack: strip off 'lib' and hope this is the path to openmpi
|
||||
# include files and libraries.
|
||||
@ -56,7 +56,7 @@ SYSTEMOPENMPI)
|
||||
OPENMPI)
|
||||
export FOAM_MPI=openmpi-1.10.4
|
||||
# Optional configuration tweaks:
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/openmpi`
|
||||
_foamSourceEtc config.sh/openmpi
|
||||
|
||||
export MPI_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
|
||||
|
||||
@ -159,7 +159,7 @@ HPMPI)
|
||||
|
||||
_foamAddPath $MPI_ARCH_PATH/bin
|
||||
|
||||
case `uname -m` in
|
||||
case $(uname -m) in
|
||||
i686)
|
||||
_foamAddLib $MPI_ARCH_PATH/lib/linux_ia32
|
||||
;;
|
||||
@ -171,7 +171,7 @@ HPMPI)
|
||||
_foamAddLib $MPI_ARCH_PATH/lib/linux_ia64
|
||||
;;
|
||||
*)
|
||||
echo Unknown processor type `uname -m` 1>&2
|
||||
echo Unknown processor type $(uname -m) 1>&2
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
@ -53,12 +53,13 @@
|
||||
# When _foamAddLib is unset (eg, called from makeParaView or from foamPV):
|
||||
# - the ParaView_VERSION variable is retained.
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
ParaView_VERSION=5.0.1
|
||||
ParaView_MAJOR=detect # Automatically determine major version
|
||||
|
||||
cmake_version=cmake-system
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Clean PATH and LD_LIBRARY_PATH
|
||||
|
@ -52,9 +52,10 @@
|
||||
# by creating an empty one with the same name at a user or site location.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
SCOTCH_VERSION=scotch_6.0.3
|
||||
|
||||
export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$SCOTCH_VERSION
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -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-2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -31,21 +31,21 @@
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Set environment variables according to system type
|
||||
export WM_ARCH=`uname -s`
|
||||
export WM_ARCH=$(uname -s)
|
||||
|
||||
case "$WM_ARCH" in
|
||||
Linux)
|
||||
WM_ARCH=linux
|
||||
|
||||
# Compiler specifics
|
||||
case `uname -m` in
|
||||
i686)
|
||||
export WM_ARCH_OPTION=32
|
||||
export WM_CC='gcc'
|
||||
export WM_CXX='g++'
|
||||
export WM_CFLAGS='-fPIC'
|
||||
export WM_CXXFLAGS='-fPIC -std=c++0x'
|
||||
export WM_LDFLAGS=
|
||||
case $(uname -m) in
|
||||
i686)
|
||||
export WM_ARCH_OPTION=32
|
||||
export WM_CC='gcc'
|
||||
export WM_CXX='g++'
|
||||
export WM_CFLAGS='-fPIC'
|
||||
export WM_CXXFLAGS='-fPIC -std=c++0x'
|
||||
export WM_LDFLAGS=
|
||||
;;
|
||||
|
||||
x86_64)
|
||||
@ -68,8 +68,7 @@ Linux)
|
||||
export WM_LDFLAGS='-m64'
|
||||
;;
|
||||
*)
|
||||
echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"\
|
||||
1>&2
|
||||
echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32|64" 1>&2
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
@ -111,7 +110,7 @@ Linux)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo Unknown processor type `uname -m` for Linux 1>&2
|
||||
echo Unknown processor type $(uname -m) for Linux 1>&2
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
@ -127,11 +126,11 @@ SunOS)
|
||||
export WM_LDFLAGS='-mabi=64 -G0'
|
||||
;;
|
||||
|
||||
*) # An unsupported operating system
|
||||
*) # An unsupported operating system
|
||||
/bin/cat <<USAGE 1>&2
|
||||
|
||||
Your "$WM_ARCH" operating system is not supported by this release
|
||||
of OpenFOAM. For further assistance, please contact www.OpenFOAM.com
|
||||
Your "$WM_ARCH" operating system is unsupported by this OpenFOAM release.
|
||||
For further assistance, please contact www.OpenFOAM.com
|
||||
|
||||
USAGE
|
||||
;;
|
||||
@ -212,7 +211,7 @@ unset GMP_ARCH_PATH MPFR_ARCH_PATH
|
||||
|
||||
# Load configured compiler versions, regardless of the compiler type
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/compiler`
|
||||
_foamSourceEtc config.sh/compiler
|
||||
|
||||
case "$WM_COMPILER_TYPE" in
|
||||
system)
|
||||
@ -227,7 +226,7 @@ OpenFOAM | ThirdParty)
|
||||
mpcDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/${mpc_version:-mpc-system}
|
||||
|
||||
# Check that the compiler directory can be found
|
||||
[ -d "$gccDir" ] || cat << GCC_NOT_FOUND 1>&2
|
||||
[ -d "$gccDir" ] || /bin/cat << GCC_NOT_FOUND 1>&2
|
||||
===============================================================================
|
||||
Warning in $WM_PROJECT_DIR/etc/config.sh/settings:
|
||||
Cannot find '$WM_COMPILER' compiler installation
|
||||
@ -272,7 +271,7 @@ GCC_NOT_FOUND
|
||||
clangDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/$clang_version
|
||||
|
||||
# Check that the compiler directory can be found
|
||||
[ -d "$clangDir" ] || cat << CLANG_NOT_FOUND 1>&2
|
||||
[ -d "$clangDir" ] || /bin/cat << CLANG_NOT_FOUND 1>&2
|
||||
===============================================================================
|
||||
Warning in $WM_PROJECT_DIR/etc/config.sh/settings:
|
||||
Cannot find '$WM_COMPILER' compiler 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) 2016 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -143,9 +143,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"
|
||||
cleaned=$($foamClean "$PATH" "$foamOldDirs") && PATH="$cleaned"
|
||||
cleaned=$($foamClean "$LD_LIBRARY_PATH" "$foamOldDirs") && LD_LIBRARY_PATH="$cleaned"
|
||||
cleaned=$($foamClean "$MANPATH" "$foamOldDirs") && MANPATH="$cleaned"
|
||||
fi
|
||||
|
||||
|
||||
@ -153,7 +153,6 @@ fi
|
||||
[ -n "$MANPATH" ] || unset MANPATH
|
||||
[ -n "$LD_PRELOAD" ] || unset LD_PRELOAD
|
||||
|
||||
|
||||
unset cleaned foamClean foamOldDirs
|
||||
|
||||
|
||||
|
@ -41,6 +41,7 @@
|
||||
# See the BuildIssues.txt about problems that can be encountered when using
|
||||
# the 'plain' VTK sources.
|
||||
#------------------------------------------------------------------------------
|
||||
# USER EDITABLE PART: Changes made here may be lost with the next upgrade
|
||||
|
||||
vtk_version=VTK-7.1.0
|
||||
mesa_version=mesa-13.0.1
|
||||
@ -48,6 +49,7 @@ mesa_version=mesa-13.0.1
|
||||
export VTK_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$vtk_version
|
||||
export MESA_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$mesa_version
|
||||
|
||||
# END OF (NORMAL) USER EDITABLE PART
|
||||
#------------------------------------------------------------------------------
|
||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||
then
|
||||
|
52
etc/cshrc
52
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 OpenCFD Ltd.
|
||||
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -60,7 +60,7 @@ setenv FOAM_INST_DIR `lsof +p $$ |& grep -oE '/.*'$WM_PROJECT'[^/]*/etc/cshrc' |
|
||||
setenv WM_COMPILER_TYPE system
|
||||
|
||||
#- Compiler:
|
||||
# WM_COMPILER = Gcc | Gcc4[8-9] | Gcc5[1-4] | Gcc6[1-2] | Clang | Icc
|
||||
# WM_COMPILER= Gcc | Gcc4[8-9] | Gcc5[1-4] | Gcc6[1-3] | Clang | Icc | IccKNL
|
||||
setenv WM_COMPILER Gcc
|
||||
setenv WM_COMPILER_ARCH # defined but empty
|
||||
unsetenv WM_COMPILER_LIB_ARCH
|
||||
@ -144,20 +144,23 @@ endif
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~
|
||||
setenv WM_PROJECT_USER_DIR $HOME/$WM_PROJECT/$LOGNAME-$WM_PROJECT_VERSION
|
||||
|
||||
|
||||
# Source files, possibly with some verbosity
|
||||
alias _foamSource 'if ($?FOAM_VERBOSE && $?prompt) echo "Sourcing: \!*"; if (\!* != "") source \!*'
|
||||
# Source etc files, possibly with some verbosity
|
||||
if ($?FOAM_VERBOSE && $?prompt) then
|
||||
alias _foamSourceEtc 'eval `$WM_PROJECT_DIR/bin/foamEtcFile -csh-verbose \!*`'
|
||||
else
|
||||
alias _foamSourceEtc 'eval `$WM_PROJECT_DIR/bin/foamEtcFile -csh \!*`'
|
||||
endif
|
||||
|
||||
# Add in preset user or site preferences:
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile prefs.csh`
|
||||
_foamSourceEtc prefs.csh
|
||||
|
||||
# Evaluate command-line parameters and record settings for later
|
||||
# these can be used to set/unset values, or specify alternative pref files
|
||||
# Evaluate command-line parameters and record settings for later.
|
||||
# These can be used to set/unset values, or specify alternative pref files.
|
||||
setenv FOAM_SETTINGS "${*}"
|
||||
while ( $#argv > 0 )
|
||||
switch ($argv[1])
|
||||
case -*:
|
||||
# stray option (not meant for us here) -> get out
|
||||
# Stray option (not meant for us here) -> get out
|
||||
break
|
||||
breaksw
|
||||
case *=:
|
||||
@ -171,11 +174,12 @@ while ( $#argv > 0 )
|
||||
eval "setenv $argv[1]:s/=/ /"
|
||||
breaksw
|
||||
default:
|
||||
# filename: source it
|
||||
# Filename: source it
|
||||
if ( -f "$1" ) then
|
||||
_foamSource "$1"
|
||||
if ($?FOAM_VERBOSE && $?prompt) echo "Using: $1"
|
||||
source "$1"
|
||||
else
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -silent "$1"`
|
||||
_foamSourceEtc -silent "$1"
|
||||
endif
|
||||
breaksw
|
||||
endsw
|
||||
@ -208,19 +212,19 @@ if ( $status == 0 ) setenv MANPATH $cleaned
|
||||
|
||||
# Source project setup files
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamSource $WM_PROJECT_DIR/etc/config.csh/settings
|
||||
_foamSource $WM_PROJECT_DIR/etc/config.csh/aliases
|
||||
_foamSourceEtc config.csh/settings
|
||||
_foamSourceEtc config.csh/aliases
|
||||
|
||||
# Source user setup files for optional packages
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/mpi`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/paraview`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/vtk`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/ensight`
|
||||
_foamSourceEtc config.csh/mpi
|
||||
_foamSourceEtc config.csh/paraview
|
||||
_foamSourceEtc config.csh/vtk
|
||||
_foamSourceEtc config.csh/ensight
|
||||
|
||||
##_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/ADIOS`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/CGAL`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/FFTW`
|
||||
#_foamSourceEtc config.csh/ADIOS
|
||||
_foamSourceEtc config.csh/CGAL
|
||||
_foamSourceEtc config.csh/FFTW
|
||||
|
||||
|
||||
# Clean environment paths again. Only remove duplicates
|
||||
@ -234,8 +238,8 @@ set cleaned=`$foamClean "$LD_LIBRARY_PATH"`
|
||||
if ( $status == 0 ) setenv LD_LIBRARY_PATH $cleaned
|
||||
|
||||
#- Clean MANPATH (trailing ':' to find system pages)
|
||||
set cleaned=`$foamClean "$MANPATH"`:
|
||||
if ( $status == 0 ) setenv MANPATH "$cleaned"
|
||||
set cleaned=`$foamClean "$MANPATH"`
|
||||
if ( $status == 0 ) setenv MANPATH "${cleaned}:"
|
||||
|
||||
#- Clean LD_PRELOAD
|
||||
if ( $?LD_PRELOAD ) then
|
||||
@ -247,6 +251,6 @@ endif
|
||||
# Cleanup environment:
|
||||
# ~~~~~~~~~~~~~~~~~~~~
|
||||
unset cleaned foamClean foamOldDirs
|
||||
unalias _foamSource
|
||||
unalias _foamSourceEtc
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -4,11 +4,9 @@ cd ${0%/*} || exit 1 # run from this directory
|
||||
# Source tutorial run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
application=`getApplication`
|
||||
|
||||
runApplication blockMesh
|
||||
runApplication extrudeMesh
|
||||
|
||||
runApplication $application
|
||||
runApplication $(getApplication)
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -14,8 +14,6 @@ if [ -f /usr/include/sys/inotify.h ]
|
||||
then
|
||||
echo " found <sys/inotify.h> -- enabling inotify for file monitoring."
|
||||
export COMP_FLAGS="-DFOAM_USE_INOTIFY"
|
||||
else
|
||||
unset COMP_FLAGS
|
||||
fi
|
||||
|
||||
# make (non-shared by default) object
|
||||
|
@ -100,7 +100,7 @@ Foam::Ostream& Foam::FixedList<T, Size>::writeList
|
||||
else if
|
||||
(
|
||||
Size <= 1 || !shortListLen
|
||||
|| (Size <= shortListLen && contiguous<T>())
|
||||
|| (Size <= unsigned(shortListLen) && contiguous<T>())
|
||||
)
|
||||
{
|
||||
// Write start delimiter
|
||||
|
@ -26,7 +26,6 @@ License
|
||||
#include "dictionary.H"
|
||||
#include "IFstream.H"
|
||||
#include "inputModeEntry.H"
|
||||
#include "regExp.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2009-2016 Bernhard Gschaider
|
||||
\\/ M anipulation | Copyright (C) 2016 OpenCFD Ltd.
|
||||
\\/ M anipulation | Copyright (C) 2016-2107 OpenCFD Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -225,6 +225,10 @@ public:
|
||||
};
|
||||
|
||||
|
||||
// Forward declaration of friend functions and operators
|
||||
Ostream& operator<<(Ostream& os, const profiling::Information& info);
|
||||
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class profiling::Information Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
@ -385,7 +389,7 @@ public:
|
||||
|
||||
// IOstream Operators
|
||||
|
||||
friend Ostream& operator<<(Ostream&, const Information&);
|
||||
friend Ostream& operator<<(Ostream& os, const Information& info);
|
||||
|
||||
};
|
||||
|
||||
|
@ -1,26 +1,23 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
# Define how an mpi-versioned library is created
|
||||
# clean the qualified directory
|
||||
# Clean an mpi-versioned library
|
||||
wcleanMpiLib()
|
||||
{
|
||||
for libName
|
||||
do
|
||||
case "$WM_MPLIB" in (*MPI*)
|
||||
(
|
||||
WM_OPTIONS="$WM_OPTIONS$WM_MPLIB"
|
||||
wclean $libName
|
||||
for libName
|
||||
do
|
||||
wclean $libName
|
||||
done
|
||||
)
|
||||
done
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
|
||||
wclean dummy
|
||||
|
||||
case "$WM_MPLIB" in
|
||||
*MPI*)
|
||||
wcleanMpiLib mpi
|
||||
;;
|
||||
esac
|
||||
|
||||
wcleanMpiLib mpi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -10,16 +10,17 @@ cd ${0%/*} || exit 1 # Run from this directory
|
||||
# use sentinel file to handle version changes
|
||||
wmakeMpiLib()
|
||||
{
|
||||
local objectsDir
|
||||
for libName
|
||||
do
|
||||
(
|
||||
WM_OPTIONS="$WM_OPTIONS$WM_MPLIB"
|
||||
libDir="$WM_PROJECT_DIR/platforms/$WM_OPTIONS/src/Pstream/$libName"
|
||||
whichmpi="$libDir/using:$FOAM_MPI"
|
||||
objectsDir="$WM_PROJECT_DIR/build/$WM_OPTIONS/src/Pstream/$libName"
|
||||
whichmpi="$objectsDir/using:$FOAM_MPI"
|
||||
[ -e "$whichmpi" ] || wclean $libName
|
||||
echo "wmake $targetType $libName"
|
||||
wmake $targetType $libName
|
||||
mkdir -p "$libDir"
|
||||
mkdir -p "$objectsDir"
|
||||
touch "$whichmpi"
|
||||
)
|
||||
done
|
||||
|
@ -1,18 +1,23 @@
|
||||
#!/bin/sh
|
||||
# Build optional components (eg, may depend on third-party libraries)
|
||||
#------------------------------------------------------------------------------
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
# Optional component: (eg, may depend on third-party libraries)
|
||||
|
||||
# Parse arguments for compilation (at least for error catching)
|
||||
. $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
|
||||
|
||||
. $WM_PROJECT_DIR/etc/config.sh/functions
|
||||
_foamSource $($WM_PROJECT_DIR/bin/foamEtcFile config.sh/ccmio)
|
||||
|
||||
# Link with static libccmio only (possibly fewer issues)
|
||||
|
||||
warning="==> skip optional libccm adapter"
|
||||
|
||||
if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/ccmio)
|
||||
then
|
||||
. $settings
|
||||
else
|
||||
echo "$warning (no config.sh/ccmio settings)"
|
||||
exit
|
||||
fi
|
||||
|
||||
|
||||
# Link with static libccmio only (possibly fewer issues)
|
||||
if [ -e $CCMIO_ARCH_PATH/include/libccmio/ccmio.h \
|
||||
-a -e $CCMIO_ARCH_PATH/lib/libccmio.a ]
|
||||
then
|
||||
|
@ -49,6 +49,18 @@ SourceFiles
|
||||
namespace Foam
|
||||
{
|
||||
|
||||
// Forward declaration of classes
|
||||
class Istream;
|
||||
class Ostream;
|
||||
|
||||
// Forward declaration of friend functions and operators
|
||||
class eddy;
|
||||
bool operator==(const eddy& a, const eddy& b);
|
||||
bool operator!=(const eddy& a, const eddy& b);
|
||||
Istream& operator>>(Istream& is, eddy& e);
|
||||
Ostream& operator<<(Ostream& os, const eddy& e);
|
||||
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class eddy Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
@ -7,8 +7,7 @@ cd ${0%/*} || exit 1 # Run from this directory
|
||||
# Cleanup library
|
||||
rm -f $FOAM_LIBBIN/librunTimePostProcessing* 2>/dev/null
|
||||
|
||||
# Cleanup generated files
|
||||
findObjectDir $PWD # remove entire top-level
|
||||
rm -rf "$objectsDir" > /dev/null 2>&1
|
||||
# Cleanup generated files - remove entire top-level
|
||||
removeObjectDir $PWD
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -1,46 +1,26 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
|
||||
# get SCOTCH_VERSION, SCOTCH_ARCH_PATH
|
||||
if settings=`$WM_PROJECT_DIR/bin/foamEtcFile config.sh/scotch`
|
||||
then
|
||||
. $settings
|
||||
echo " using SCOTCH_ARCH_PATH=$SCOTCH_ARCH_PATH"
|
||||
else
|
||||
echo
|
||||
echo " Error: no config.sh/scotch settings"
|
||||
echo
|
||||
fi
|
||||
|
||||
|
||||
# Define how to clean an mpi-versioned library
|
||||
# Clean an mpi-versioned library
|
||||
wcleanMpiLib()
|
||||
{
|
||||
for libName
|
||||
do
|
||||
case "$WM_MPLIB" in (*MPI*)
|
||||
(
|
||||
WM_OPTIONS="$WM_OPTIONS$WM_MPLIB"
|
||||
whichmpi="$WM_PROJECT_DIR/platforms/$WM_OPTIONS/src/parallel/decompose/$libName/using:$FOAM_MPI"
|
||||
whichscotch="$WM_PROJECT_DIR/platforms/$WM_OPTIONS/src/parallel/decompose/$libName/using:$SCOTCH_VERSION"
|
||||
wclean $libName
|
||||
for libName
|
||||
do
|
||||
wclean $libName
|
||||
done
|
||||
)
|
||||
done
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
if [ -n "$SCOTCH_ARCH_PATH" ]
|
||||
then
|
||||
wclean scotchDecomp
|
||||
|
||||
if [ -d "$FOAM_LIBBIN/$FOAM_MPI" ]
|
||||
then
|
||||
wcleanMpiLib ptscotchDecomp
|
||||
fi
|
||||
else
|
||||
echo " skipping scotchDecomp (ptscotchDecomp)"
|
||||
fi
|
||||
|
||||
wclean scotchDecomp
|
||||
wclean metisDecomp
|
||||
wclean decompositionMethods
|
||||
wclean decompose
|
||||
wcleanMpiLib ptscotchDecomp
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -126,18 +126,19 @@ hasScotch()
|
||||
wmakeMpiLib()
|
||||
{
|
||||
local decompName="$1"
|
||||
local objectsDir
|
||||
shift
|
||||
for libName
|
||||
do
|
||||
(
|
||||
WM_OPTIONS="$WM_OPTIONS$WM_MPLIB"
|
||||
libDir="$WM_PROJECT_DIR/platforms/$WM_OPTIONS/src/parallel/decompose/$libName"
|
||||
whichmpi="$libDir/using:$FOAM_MPI"
|
||||
whichdecomp="$libDir/using:$decompName"
|
||||
objectsDir="$WM_PROJECT_DIR/build/$WM_OPTIONS/src/parallel/decompose/$libName"
|
||||
whichmpi="$objectsDir/using:$FOAM_MPI"
|
||||
whichdecomp="$objectsDir/using:$decompName"
|
||||
[ -e "$whichmpi" -a -e "$whichdecomp" ] || wclean $libName
|
||||
echo "wmake $targetType $libName"
|
||||
wmake $targetType $libName
|
||||
mkdir -p "$libDir"
|
||||
mkdir -p "$objectsDir"
|
||||
touch "$whichdecomp" "$whichmpi"
|
||||
)
|
||||
done
|
||||
|
@ -1,11 +1,10 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # Run from this directory
|
||||
makeType=${1:-libso}
|
||||
|
||||
wclean $makeType regionModel
|
||||
wclean $makeType pyrolysisModels
|
||||
wclean $makeType surfaceFilmModels
|
||||
wclean $makeType thermalBaffleModels
|
||||
wclean $makeType regionCoupling
|
||||
wclean libso regionModel
|
||||
wclean libso pyrolysisModels
|
||||
wclean libso surfaceFilmModels
|
||||
wclean libso thermalBaffleModels
|
||||
wclean libso regionCoupling
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -31,7 +31,6 @@ License
|
||||
#include "ensightSerialOutput.H"
|
||||
#include "ensightPTraits.H"
|
||||
#include "OStringStream.H"
|
||||
#include "regExp.H"
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
|
@ -55,7 +55,7 @@ class surfZone;
|
||||
// Forward declaration of friend functions and operators
|
||||
|
||||
class triSurface;
|
||||
|
||||
Istream& operator>>(Istream&, triSurface&);
|
||||
Ostream& operator<<(Ostream&, const triSurface&);
|
||||
|
||||
|
||||
|
@ -4,10 +4,14 @@ cd ${0%/*} || exit 1 # Run from this directory
|
||||
echo "--------"
|
||||
echo "Cleaning tutorials ..."
|
||||
echo "Removing backup files"
|
||||
find . -type f \( -name "*~" -o -name "*.bak" \) -exec rm {} \;
|
||||
find . \( -name core -o -name 'core.[1-9]*' \) -exec rm {} \;
|
||||
find . \( -name '*.pvs' -o -name '*.OpenFOAM' \) -exec rm {} \;
|
||||
rm logs testLoopReport > /dev/null 2>&1
|
||||
|
||||
find . \( \
|
||||
-name '*~' -o -name '*.bak' \
|
||||
-name core -o -name 'core.[1-9]*' \
|
||||
-name '*.pvs' -o -name '*.OpenFOAM' \
|
||||
\) -type f -delete
|
||||
|
||||
rm -f logs testLoopReport > /dev/null 2>&1
|
||||
|
||||
foamCleanTutorials cases
|
||||
|
||||
|
@ -138,7 +138,7 @@ do
|
||||
[ -d $appDir ] || continue
|
||||
echo -n " $appDir..." 1>&2
|
||||
|
||||
logs=$(find -L $appDir -type f -name 'log.*')
|
||||
logs=$(find -L $appDir -name 'log.*' -type f)
|
||||
if [ -n "$logs" ]
|
||||
then
|
||||
echo 1>&2
|
||||
|
@ -211,7 +211,7 @@ fi
|
||||
echo "Modifying the controlDicts to run only one time step" 1>&2
|
||||
cd ${TEST_RUN_DIR} || exit 1
|
||||
|
||||
for CD in $(find . -type f -name "controlDict*")
|
||||
for CD in $(find . -name "controlDict*" -type f)
|
||||
do
|
||||
mv ${CD} ${CD}.orig
|
||||
sed \
|
||||
@ -225,7 +225,7 @@ done
|
||||
if [ "$DEFAULT_SCHEMES" = true ]
|
||||
then
|
||||
echo "Modifying the fvSchemes to contain only default schemes" 1>&2
|
||||
for FV_SC in $(find . -type f -name fvSchemes)
|
||||
for FV_SC in $(find . -name fvSchemes -type f)
|
||||
do
|
||||
for S in $FV_SCHEMES
|
||||
do
|
||||
@ -253,7 +253,7 @@ do
|
||||
do
|
||||
rm $SCHEMES_TEMP $SOLVERS_TEMP > /dev/null 2>&1
|
||||
echo " ${ST}" >> $SCHEMES_FILE
|
||||
for LOG in $(find ${APP} -type f -name "log.${APP}")
|
||||
for LOG in $(find ${APP} -name "log.${APP}" -type f)
|
||||
do
|
||||
for S in $(grep ${ST} ${LOG} | cut -d" " -f4)
|
||||
do
|
||||
|
@ -44,9 +44,9 @@ done
|
||||
|
||||
sample $timeOpt
|
||||
SDIR=sets
|
||||
LSDIR=`ls $SDIR | head -1`
|
||||
EXAMPLE_FILE=`ls -1 $SDIR/${LSDIR}/* | head -1`
|
||||
FS=`basename $EXAMPLE_FILE | cut -d_ -f2-`
|
||||
LSDIR=$(ls $SDIR | head -1)
|
||||
EXAMPLE_FILE=$(ls -1 $SDIR/${LSDIR}/* | head -1)
|
||||
FS=$(basename $EXAMPLE_FILE | cut -d_ -f2-)
|
||||
|
||||
for d in $SDIR/*
|
||||
do
|
||||
|
@ -95,7 +95,7 @@ then
|
||||
fi
|
||||
|
||||
# paths to data
|
||||
LATESTTIME=`ls $SETSDIR`
|
||||
LATESTTIME=$(ls $SETSDIR)
|
||||
OFDATAROOT=$SETSDIR/$LATESTTIME
|
||||
|
||||
EXPTDATAROOT=./exptData
|
||||
|
@ -82,7 +82,7 @@ do
|
||||
break
|
||||
elif [ -s $lockFile ]
|
||||
then
|
||||
log "found lock file ${lockFile} containing '$(cat $lockFile)' - waiting"
|
||||
log "found lock file ${lockFile} containing '$(< $lockFile)' - waiting"
|
||||
else
|
||||
log "found lock file ${lockFile} - waiting"
|
||||
fi
|
||||
|
@ -25,8 +25,8 @@ do
|
||||
|
||||
if [ -e logs/yPlus_0 ]
|
||||
then
|
||||
yPlus=`awk < logs/yPlus_0 'END{print $2}'`
|
||||
uPlus=`awk < logs/uPlus_0 'END{print $2}'`
|
||||
yPlus=$(awk < logs/yPlus_0 'END{print $2}')
|
||||
uPlus=$(awk < logs/uPlus_0 'END{print $2}')
|
||||
|
||||
echo "$yPlus $uPlus" >> yPlus_vs_uPlus
|
||||
fi
|
||||
|
@ -17,7 +17,7 @@ runApplication decomposePar -decomposeParDict system/decomposeParDict.hierarchic
|
||||
# \cp system/decomposeParDict.ptscotch system/decomposeParDict
|
||||
runParallel snappyHexMesh -decomposeParDict system/decomposeParDict.ptscotch -profiling -overwrite
|
||||
|
||||
find . -type f -iname "*level*" -exec rm {} \;
|
||||
find . -iname '*level*' -type f -delete
|
||||
|
||||
#- Set the initial fields
|
||||
restore0Dir -processor
|
||||
|
@ -14,7 +14,7 @@ runApplication decomposePar
|
||||
\cp system/decomposeParDict.ptscotch system/decomposeParDict
|
||||
runParallel snappyHexMesh -overwrite
|
||||
|
||||
find . -type f -iname "*level*" -exec rm {} \;
|
||||
find . -iname '*level*' -type f -delete
|
||||
|
||||
# - Set the initial fields
|
||||
restore0Dir -processor
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/sh
|
||||
#--------------------------------*- C++ -*------------------------------------#
|
||||
#-----------------------------------------------------------------------------#
|
||||
# ========= | #
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox #
|
||||
# \\ / O peration | Version: plus #
|
||||
@ -77,80 +77,80 @@ for xi in $(seq 1 1 $nx); do
|
||||
|
||||
# side 1
|
||||
side=1
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $l $tol | awk '{print $1 + $2 - $3}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
x1=$(echo $x $tol | awk '{print $1 - $2}')
|
||||
x2=$(echo $x $l $tol | awk '{print $1 + $2 + $3}')
|
||||
y1=$(echo $y $tol | awk '{print $1 - $2}')
|
||||
y2=$(echo $y $l $tol | awk '{print $1 + $2 + $3}')
|
||||
z1=$(echo $z $l $tol | awk '{print $1 + $2 - $3}')
|
||||
z2=$(echo $z $l $tol | awk '{print $1 + $2 + $3}')
|
||||
addToFaceSet cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 2
|
||||
side=2
|
||||
x1=`echo $x $l $tol | awk '{print $1 + $2 - $3}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
x1=$(echo $x $l $tol | awk '{print $1 + $2 - $3}')
|
||||
x2=$(echo $x $l $tol | awk '{print $1 + $2 + $3}')
|
||||
y1=$(echo $y $tol | awk '{print $1 - $2}')
|
||||
y2=$(echo $y $l $tol | awk '{print $1 + $2 + $3}')
|
||||
z1=$(echo $z $tol | awk '{print $1 - $2}')
|
||||
z2=$(echo $z $l $tol | awk '{print $1 + $2 + $3}')
|
||||
addToFaceSet cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 3
|
||||
side=3
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $tol | awk '{print $1 + $2}'`
|
||||
x1=$(echo $x $tol | awk '{print $1 - $2}')
|
||||
x2=$(echo $x $l $tol | awk '{print $1 + $2 + $3}')
|
||||
y1=$(echo $y $tol | awk '{print $1 - $2}')
|
||||
y2=$(echo $y $l $tol | awk '{print $1 + $2 + $3}')
|
||||
z1=$(echo $z $tol | awk '{print $1 - $2}')
|
||||
z2=$(echo $z $tol | awk '{print $1 + $2}')
|
||||
addToFaceSet cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 4
|
||||
side=4
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $tol | awk '{print $1 + $2}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
x1=$(echo $x $tol | awk '{print $1 - $2}')
|
||||
x2=$(echo $x $tol | awk '{print $1 + $2}')
|
||||
y1=$(echo $y $tol | awk '{print $1 - $2}')
|
||||
y2=$(echo $y $l $tol | awk '{print $1 + $2 + $3}')
|
||||
z1=$(echo $z $tol | awk '{print $1 - $2}')
|
||||
z2=$(echo $z $l $tol | awk '{print $1 + $2 + $3}')
|
||||
addToFaceSet cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 5
|
||||
side=5
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $l $tol | awk '{print $1 + $2 - $3}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
x1=$(echo $x $tol | awk '{print $1 - $2}')
|
||||
x2=$(echo $x $l $tol | awk '{print $1 + $2 + $3}')
|
||||
y1=$(echo $y $l $tol | awk '{print $1 + $2 - $3}')
|
||||
y2=$(echo $y $l $tol | awk '{print $1 + $2 + $3}')
|
||||
z1=$(echo $z $tol | awk '{print $1 - $2}')
|
||||
z2=$(echo $z $l $tol | awk '{print $1 + $2 + $3}')
|
||||
addToFaceSet cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 6
|
||||
side=6
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $tol | awk '{print $1 + $2}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
x1=$(echo $x $tol | awk '{print $1 - $2}')
|
||||
x2=$(echo $x $l $tol | awk '{print $1 + $2 + $3}')
|
||||
y1=$(echo $y $tol | awk '{print $1 - $2}')
|
||||
y2=$(echo $y $tol | awk '{print $1 + $2}')
|
||||
z1=$(echo $z $tol | awk '{print $1 - $2}')
|
||||
z2=$(echo $z $l $tol | awk '{print $1 + $2 + $3}')
|
||||
addToFaceSet cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
n=$((n+1))
|
||||
|
||||
z=`echo $z $offset | awk '{print $1 + $2}'`
|
||||
z=$(echo $z $offset | awk '{print $1 + $2}')
|
||||
done
|
||||
|
||||
y=`echo $y $offset | awk '{print $1 + $2}'`
|
||||
y=$(echo $y $offset | awk '{print $1 + $2}')
|
||||
done
|
||||
|
||||
x=`echo $x $offset | awk '{print $1 + $2}'`
|
||||
x=$(echo $x $offset | awk '{print $1 + $2}')
|
||||
done
|
||||
|
||||
echo "cellSet cubeFacesCells new faceToCell cubeFaceSet owner" >> $tmpSetSet
|
||||
echo "faceZoneSet cubeFaces new setsToFaceZone cubeFaceSet cubeFacesCells" >> $tmpSetSet
|
||||
|
||||
echo "processing floor"
|
||||
floorMax=`echo 1 $tol | awk '{print $1 + $2}'`
|
||||
floorMax=$(echo 1 $tol | awk '{print $1 + $2}')
|
||||
createSetsAndZone Floor -$tol $floorMax -$tol $floorMax -$tol $tol
|
||||
echo "cellSet floorCells new faceToCell FloorFaces owner" >> $tmpSetSet
|
||||
echo "faceZoneSet floorFaces new setsToFaceZone FloorFaces floorCells" >> $tmpSetSet
|
||||
|
@ -4,17 +4,14 @@ cd ${0%/*} || exit 1 # Run from this directory
|
||||
# Source tutorial run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
application=$(getApplication)
|
||||
|
||||
runApplication blockMesh
|
||||
|
||||
echo "Creating channel"
|
||||
i=1
|
||||
while [ "$i" -lt 3 ] ; do
|
||||
for i in 1 2
|
||||
do
|
||||
cp system/extrudeMeshDict.${i} system/extrudeMeshDict
|
||||
echo "Running extrudeMesh, instance" ${i}
|
||||
extrudeMesh > log.extrudeMesh.${i}
|
||||
i=`expr $i + 1`
|
||||
done
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -44,12 +44,15 @@
|
||||
sameDependency()
|
||||
{
|
||||
local depend="$1"
|
||||
findObjectDir "$2" # Where generated files are stored
|
||||
local sentinel="$objectsDir/ThirdParty"
|
||||
local sourceDir="$2"
|
||||
local objectsDir sentinel prev
|
||||
|
||||
# Where generated files are stored
|
||||
objectsDir=$(findObjectDir "$sourceDir") || exit 1 # Fatal
|
||||
sentinel="$objectsDir/ThirdParty"
|
||||
|
||||
echo $sentinel
|
||||
|
||||
local prev
|
||||
if read -r prev 2>/dev/null < $sentinel
|
||||
then
|
||||
if [ "$prev" = "$depend" ]
|
||||
@ -70,35 +73,24 @@ sameDependency()
|
||||
|
||||
|
||||
# CMake into objectsDir with external dependency
|
||||
# - use sentinel file(s) to handle paraview/vtk version changes
|
||||
cmakeVersioned()
|
||||
{
|
||||
local depend="$1"
|
||||
local sourceDir="$2"
|
||||
findObjectDir $sourceDir # Where are generated files stored?
|
||||
local objectsDir sentinel
|
||||
|
||||
local sentinel
|
||||
# Where generated files are stored
|
||||
objectsDir=$(findObjectDir "$sourceDir") || exit 1 # Fatal
|
||||
|
||||
# version changed
|
||||
sentinel=$(sameDependency "$depend" "$sourceDir") \
|
||||
|| rm -rf "$objectsDir" > /dev/null 2>&1
|
||||
|
||||
test -f "$objectsDir/CMakeCache.txt"
|
||||
retry=$? # Additional attempt if sources moved
|
||||
# Version changed
|
||||
sentinel=$(sameDependency "$depend" "$sourceDir") || \
|
||||
rm -rf "$objectsDir" > /dev/null 2>&1
|
||||
|
||||
mkdir -p $objectsDir && \
|
||||
(
|
||||
cd $objectsDir || exit 1
|
||||
|
||||
cmake $sourceDir || {
|
||||
if [ $retry -eq 0 ]
|
||||
then
|
||||
echo "Removing CMakeCache.txt and attempt again" 1>&2
|
||||
rm -f CMakeCache.txt
|
||||
cmake $sourceDir
|
||||
else
|
||||
exit 1
|
||||
fi
|
||||
} && make && { echo "$depend" > $sentinel; }
|
||||
cd $objectsDir && cmake $sourceDir && make \
|
||||
&& echo "$depend" > ${sentinel:-/dev/null}
|
||||
)
|
||||
}
|
||||
|
||||
@ -127,9 +119,11 @@ wmakeLibPv()
|
||||
|
||||
for libName
|
||||
do
|
||||
# version changed
|
||||
sentinel=$(sameDependency "$depend" $libName) || wclean $libName
|
||||
wmake $targetType $libName && { echo "$depend" > $sentinel; }
|
||||
sentinel=$(sameDependency "$depend" $libName) || \
|
||||
wclean $libName
|
||||
|
||||
wmake $targetType $libName \
|
||||
&& echo "$depend" > ${sentinel:-/dev/null}
|
||||
done
|
||||
}
|
||||
|
||||
|
@ -34,7 +34,7 @@
|
||||
|
||||
if [ -r Make/files ]
|
||||
then
|
||||
echo "Error: Make/files already exists - exiting"
|
||||
echo "Error: Make/files already exists - exiting" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@ -43,38 +43,32 @@ dirToString=$WM_DIR/platforms/$WM_ARCH$WM_COMPILER/dirToString
|
||||
[ -d Make ] || mkdir Make
|
||||
rm -f Make/files
|
||||
|
||||
for dir in `find . -type d -print`
|
||||
for dir in $(find . -mindepth 1 -type d -print)
|
||||
do
|
||||
case "$dir" in
|
||||
. | ./Make | ./lnInclude )
|
||||
# Skip special directories
|
||||
;;
|
||||
*)
|
||||
baseDir=`echo $dir | sed 's%^\./%%'`
|
||||
baseDirName=`echo $baseDir | $dirToString`
|
||||
|
||||
echo $baseDirName " = " $baseDir >> Make/files
|
||||
echo "$(echo $dir | $dirToString -strip) = ${dir#./}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
done >> Make/files
|
||||
[ -s Make/files ] && echo >> Make/files
|
||||
|
||||
echo >> Make/files
|
||||
|
||||
for file in `find . -name "*.[cCylLfF]" -type f -print`
|
||||
for file in $(find . -name "*.[cCylLfF]" -type f -print)
|
||||
do
|
||||
fileName=${file##*/}
|
||||
pathName=`echo ${file%/*} | sed -e 's%^\.%%' -e 's%^/%%' | $dirToString`
|
||||
pathName=$(echo ${file%/*} | $dirToString -strip)
|
||||
|
||||
if [ -n "$pathName" ]
|
||||
then
|
||||
echo '$('$pathName')/'$fileName >> Make/files
|
||||
echo '$('$pathName')/'"${file##*/}"
|
||||
else
|
||||
echo $fileName >> Make/files
|
||||
echo "${file##*/}"
|
||||
fi
|
||||
done
|
||||
done >> Make/files
|
||||
|
||||
echo >> Make/files
|
||||
|
||||
echo 'EXE = $(FOAM_APPBIN)/'${PWD##*/} >> Make/files
|
||||
echo 'EXE = $(FOAM_APPBIN)/'"${PWD##*/}" >> Make/files
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -34,7 +34,7 @@
|
||||
|
||||
if [ -r Make/options ]
|
||||
then
|
||||
echo "Error: Make/options already exists - exiting"
|
||||
echo "Error: Make/options already exists - exiting" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -28,6 +28,11 @@
|
||||
# Functions to check wmake environment and find .dep and .o files
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Ensure these variables are always defined
|
||||
MakeDir=Make
|
||||
: ${Script:=wmakeFunctions}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Check environment variables
|
||||
#------------------------------------------------------------------------------
|
||||
@ -48,102 +53,178 @@ checkEnv()
|
||||
# Search up directories tree for the Make sub-directory
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Return the absolute path for a directory or a file's parent directory
|
||||
# expandPath dirName
|
||||
# expandPath fileName
|
||||
#
|
||||
# Output:
|
||||
# - the expanded path name
|
||||
expandPath()
|
||||
{
|
||||
if [ -d "$1" ]
|
||||
then
|
||||
exPath=$(cd "$1" && pwd -P)
|
||||
(cd "$1" && pwd -P)
|
||||
elif [ -n "$1" ]
|
||||
then
|
||||
(cd $(dirname "$1") && pwd -P)
|
||||
else
|
||||
exPath=$(cd $(dirname "$1") && pwd -P)
|
||||
pwd -P
|
||||
fi
|
||||
}
|
||||
|
||||
# Find the target directory, which contains a Make/ directory
|
||||
# search upwards in its parent directories, but stopping
|
||||
# when it hits the project root, home, or the file-system root
|
||||
#
|
||||
# findTarget dirName
|
||||
#
|
||||
# Output:
|
||||
# - the relative target directory
|
||||
#
|
||||
# Global variables used:
|
||||
# - WM_PROJECT_DIR, HOME
|
||||
findTarget()
|
||||
{
|
||||
expandPath $WM_PROJECT_DIR
|
||||
wmpdir=$exPath
|
||||
expandPath $1
|
||||
local wmpdir=$(expandPath $WM_PROJECT_DIR)
|
||||
local home=$(expandPath $HOME)
|
||||
local reldir="${1:-.}"
|
||||
local absdir=$(expandPath $reldir)
|
||||
|
||||
if [ "$exPath" = "$wmpdir" \
|
||||
-o "$exPath" = "$HOME" \
|
||||
-o "$exPath" = "/" \
|
||||
]
|
||||
then
|
||||
echo "$Script error: could not find Make directory" 1>&2
|
||||
exit 1
|
||||
elif [ -d "$1/Make" ]; then
|
||||
dir=$1
|
||||
else
|
||||
findTarget "$1/.."
|
||||
fi
|
||||
while [ -n "$absdir" ]
|
||||
do
|
||||
case "$absdir" in
|
||||
($wmpdir | $home | /)
|
||||
break
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -d "$reldir/Make" ]
|
||||
then
|
||||
echo "$reldir"
|
||||
return 0
|
||||
else
|
||||
# Check parent directory
|
||||
absdir="${absdir%/*}"
|
||||
reldir="$reldir/.."
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Error: no Make directory for $(expandPath $1)" 1>&2
|
||||
echo 1>&2
|
||||
return 1
|
||||
}
|
||||
|
||||
|
||||
# Change to 'MakeDir' parent
|
||||
# - uses 'MakeDir' for its input
|
||||
#
|
||||
# Side-effects:
|
||||
# - unsets targetType
|
||||
cdSource()
|
||||
{
|
||||
if [ ! -d $MakeDir ]
|
||||
local dir
|
||||
if [ ! -d "$MakeDir" ]
|
||||
then
|
||||
echo "$Script: '$MakeDir' directory does not exist in $PWD" 1>&2
|
||||
echo " Searching up directories tree for Make directory"
|
||||
echo " Searching up directories tree for Make directory" 1>&2
|
||||
|
||||
findTarget .
|
||||
targetType=
|
||||
|
||||
if [ "$dir" ]
|
||||
then
|
||||
cd $dir 2>/dev/null || {
|
||||
echo "$Script error: could not change to directory '$dir'" 1>&2
|
||||
exit 1
|
||||
}
|
||||
fi
|
||||
dir=$(findTarget .) || exit 1 # Fatal
|
||||
cd $dir 2>/dev/null || {
|
||||
echo "$Script error: could not change to directory '$dir'" 1>&2
|
||||
exit 1
|
||||
}
|
||||
unset targetType
|
||||
fi
|
||||
|
||||
|
||||
[ -r $MakeDir/files ] || {
|
||||
echo "$Script error: file '$MakeDir/files' does not exist in $PWD" 1>&2
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# Find the object directory
|
||||
# findObjectDir dirName
|
||||
# findObjectDir fileName
|
||||
#
|
||||
# Output:
|
||||
# - the objectsDir
|
||||
#
|
||||
# Global variables used:
|
||||
# - WM_PROJECT_DIR, WM_OPTIONS
|
||||
findObjectDir()
|
||||
{
|
||||
expandPath $WM_PROJECT_DIR
|
||||
wmpdir=$exPath
|
||||
expandPath $1
|
||||
local wmpdir=$(expandPath $WM_PROJECT_DIR)
|
||||
local exPath=$(expandPath ${1:-.})
|
||||
local objectsDir
|
||||
|
||||
if echo $exPath | grep "$wmpdir" > /dev/null
|
||||
then
|
||||
platformPath=$WM_PROJECT_DIR/platforms/${WM_OPTIONS}
|
||||
objectsDir=$platformPath$(echo $exPath | sed s%$wmpdir%% )
|
||||
else
|
||||
path=$exPath
|
||||
dir=.
|
||||
if [ ! -d Make ]
|
||||
then
|
||||
findTarget .
|
||||
fi
|
||||
appDir=$dir
|
||||
expandPath $appDir/.
|
||||
case "$exPath" in
|
||||
("$wmpdir"/*)
|
||||
local buildPath=$WM_PROJECT_DIR/build/${WM_OPTIONS}
|
||||
objectsDir=$buildPath$(echo $exPath | sed s%$wmpdir%% )
|
||||
;;
|
||||
(*)
|
||||
local path=$exPath
|
||||
local appDir=.
|
||||
[ -d Make ] || appDir=$(findTarget .) || exit 1 # Fatal
|
||||
exPath=$(expandPath $appDir/.)
|
||||
objectsDir=$appDir/Make/${WM_OPTIONS}$(echo $path | sed s%$exPath%% )
|
||||
;;
|
||||
esac
|
||||
|
||||
echo "$objectsDir"
|
||||
}
|
||||
|
||||
|
||||
# Find the object directory and remove it
|
||||
# removeObjectDir dirName
|
||||
# removeObjectDir fileName
|
||||
#
|
||||
# Output:
|
||||
# - NONE
|
||||
#
|
||||
# Global variables used:
|
||||
# - WM_PROJECT_DIR, WM_OPTIONS
|
||||
removeObjectDir()
|
||||
{
|
||||
local objectsDir=$(findObjectDir ${1:-.})
|
||||
if [ -d "$objectsDir" ]
|
||||
then
|
||||
rm -rf "$objectsDir" > /dev/null 2>&1
|
||||
fi
|
||||
}
|
||||
|
||||
if [ -n "$BASH_VERSION" ]; then
|
||||
|
||||
# depToSource depFile
|
||||
#
|
||||
# Output:
|
||||
# - the sourceFile corresponding to depFile
|
||||
#
|
||||
# Global variables used:
|
||||
# - WM_OPTIONS
|
||||
# - WM_MPLIB
|
||||
if [ -n "$BASH_VERSION" ]
|
||||
then
|
||||
depToSource()
|
||||
{
|
||||
sourceFile=${depFile%.dep}
|
||||
sourceFile="${sourceFile/platforms\/${WM_OPTIONS}\//}"
|
||||
local sourceFile=${1%.dep}
|
||||
sourceFile="${sourceFile/build\/${WM_OPTIONS}\//}"
|
||||
sourceFile="${sourceFile/build\/${WM_OPTIONS}${WM_MPLIB}\//}"
|
||||
sourceFile="${sourceFile/Make\/${WM_OPTIONS}\//}"
|
||||
sourceFile="${sourceFile/platforms\/${WM_OPTIONS}${WM_MPLIB}\//}"
|
||||
sourceFile="${sourceFile/Make\/${WM_OPTIONS}${WM_MPLIB}\//}"
|
||||
|
||||
echo "$sourceFile"
|
||||
}
|
||||
else
|
||||
depToSource()
|
||||
{
|
||||
sourceFile=$(echo ${depFile%.dep} | \
|
||||
sed -e s%platforms/${WM_OPTIONS}/%% \
|
||||
-e s%Make/${WM_OPTIONS}/%% \
|
||||
-e s%platforms/${WM_OPTIONS}${WM_MPLIB}/%% \
|
||||
local sourceFile=$(echo ${1%.dep} | \
|
||||
sed -e s%build/${WM_OPTIONS}/%% \
|
||||
-e s%build/${WM_OPTIONS}${WM_MPLIB}/%% \
|
||||
-e s%Make/${WM_OPTIONS}/%% \
|
||||
-e s%Make/${WM_OPTIONS}${WM_MPLIB}/%% )
|
||||
|
||||
echo "$sourceFile"
|
||||
}
|
||||
fi
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
\\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -33,22 +33,61 @@ Usage
|
||||
|
||||
e.g.
|
||||
using sh
|
||||
baseDirName=`echo $dir | sed 's%^\./%%' | $bin/dirToString`
|
||||
baseDirName=$(echo $dir | $bin/dirToString -strip)
|
||||
|
||||
using csh
|
||||
set baseDirName=`echo $dir | sed 's%^\./%%' | $bin/dirToString`
|
||||
set baseDirName=`echo $dir | $bin/dirToString -strip`
|
||||
|
||||
\*----------------------------------------------------------------------------*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
|
||||
int main()
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
int c;
|
||||
int nextupper = 0;
|
||||
|
||||
if (argc > 1)
|
||||
{
|
||||
if (!strncmp(argv[1], "-h", 2)) /* -h, -help */
|
||||
{
|
||||
fprintf
|
||||
(
|
||||
stderr,
|
||||
"\nUsage: %s [-strip]\n\n",
|
||||
"dirToString"
|
||||
);
|
||||
|
||||
fprintf
|
||||
(
|
||||
stderr,
|
||||
" -strip ignore leading [./] characters.\n\n"
|
||||
"Transform dir1/dir2 to camel-case dir1Dir2\n\n"
|
||||
);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!strcmp(argv[1], "-s") || !strcmp(argv[1], "-strip")) /* -s, -strip */
|
||||
{
|
||||
while ((c=getchar()) != EOF && (c == '.' || c == '/'))
|
||||
{
|
||||
/* nop */
|
||||
}
|
||||
|
||||
if (c == EOF)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
putchar(c);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
while ((c=getchar()) != EOF)
|
||||
{
|
||||
if (c == '/')
|
||||
@ -60,13 +99,12 @@ int main()
|
||||
if (nextupper)
|
||||
{
|
||||
putchar(toupper(c));
|
||||
nextupper = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
putchar(c);
|
||||
}
|
||||
|
||||
nextupper = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
\\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -147,10 +147,29 @@ int main(int argc, char* argv[])
|
||||
char *basePos, *dotPos;
|
||||
int i, silent;
|
||||
|
||||
if (argc == 1)
|
||||
if (argc < 2)
|
||||
{
|
||||
fprintf(stderr, "input file not supplied\n");
|
||||
exit(1);
|
||||
return 1;
|
||||
}
|
||||
else if (!strncmp(argv[1], "-h", 2)) /* -h, -help */
|
||||
{
|
||||
fprintf
|
||||
(
|
||||
stderr,
|
||||
"\nUsage: %s [-Idir ... -Idir] [-iheader .. -iheader] filename\n\n",
|
||||
"wmkdep"
|
||||
);
|
||||
|
||||
fprintf
|
||||
(
|
||||
stderr,
|
||||
" -Idir Directories to be searched for headers.\n"
|
||||
" -iheader Headers to be ignored.\n\n"
|
||||
"Dependency list generator, similar to 'cpp -M'\n\n"
|
||||
);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
sourceFile = strdup(argv[argc-1]);
|
||||
@ -161,7 +180,7 @@ int main(int argc, char* argv[])
|
||||
}
|
||||
else
|
||||
{
|
||||
basePos++;
|
||||
++basePos;
|
||||
}
|
||||
|
||||
if
|
||||
@ -176,18 +195,18 @@ int main(int argc, char* argv[])
|
||||
"cannot find extension in source file name %s\n",
|
||||
sourceFile
|
||||
);
|
||||
exit(1);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* count number of -I directories */
|
||||
nDirectories = 0;
|
||||
for (i = 1; i < argc; i++)
|
||||
for (i = 1; i < argc; ++i)
|
||||
{
|
||||
if (strncmp(argv[i], "-I", 2) == 0)
|
||||
{
|
||||
if (strlen(argv[i]) > 2)
|
||||
{
|
||||
nDirectories++;
|
||||
++nDirectories;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -196,7 +215,7 @@ int main(int argc, char* argv[])
|
||||
|
||||
/* build list of -I directories and add -i ignores */
|
||||
nDirectories = 0;
|
||||
for (i = 1; i < argc; i++)
|
||||
for (i = 1; i < argc; ++i)
|
||||
{
|
||||
if (strncmp(argv[i], "-I", 2) == 0)
|
||||
{
|
||||
@ -240,7 +259,7 @@ int main(int argc, char* argv[])
|
||||
|
||||
puts("\n");
|
||||
|
||||
for (i = 0; i < nDirectories; i++)
|
||||
for (i = 0; i < nDirectories; ++i)
|
||||
{
|
||||
free(directories[i]);
|
||||
}
|
||||
|
116
wmake/wclean
116
wmake/wclean
@ -4,7 +4,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -34,7 +34,7 @@
|
||||
# lnInclude directories generated for libraries.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
Script=${0##*/}
|
||||
Script=${0##*/} # Note: need 'Script' for some functions in wmakeFunctions
|
||||
|
||||
# Source the wmake functions
|
||||
. ${0%/*}/scripts/wmakeFunctions
|
||||
@ -47,6 +47,7 @@ Usage: $Script [OPTION] [dir]
|
||||
$Script [OPTION] target [dir [MakeDir]]
|
||||
|
||||
options:
|
||||
-a | -all Same as the 'all' target
|
||||
-s | -silent Ignored - for compatibility with wmake
|
||||
-help Print the usage
|
||||
|
||||
@ -67,43 +68,48 @@ USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Parse arguments and options
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset dir targetType
|
||||
MakeDir=Make
|
||||
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
-h | -help)
|
||||
usage
|
||||
;;
|
||||
-a | -all | all)
|
||||
targetType=all
|
||||
;;
|
||||
-s | -silent) # Ignored - for compatibility with wmake
|
||||
shift
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Check arguments and change to the directory in which to run wclean
|
||||
# Check arguments and change to the directory in which to run wclean.
|
||||
# The variables 'targetType' and 'MakeDir' are considered global
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset dir targetType
|
||||
MakeDir=Make
|
||||
|
||||
if [ $# -ge 1 ]
|
||||
then
|
||||
|
||||
if [ -d "$1" ]
|
||||
then
|
||||
dir=$1
|
||||
elif [ -f "$1" ]
|
||||
then
|
||||
dir="${1%/*}"
|
||||
: ${dir:=.}
|
||||
else
|
||||
targetType=$1
|
||||
fi
|
||||
@ -114,7 +120,7 @@ then
|
||||
# Specified alternative name for the Make sub-directory:
|
||||
[ $# -ge 3 ] && MakeDir=$3
|
||||
|
||||
if [ "$dir" ]
|
||||
if [ -n "$dir" ]
|
||||
then
|
||||
cd $dir 2>/dev/null || {
|
||||
echo "$Script error: could not change to directory '$dir'" 1>&2
|
||||
@ -122,15 +128,14 @@ then
|
||||
}
|
||||
fi
|
||||
|
||||
# Print command
|
||||
[ -z "$targetType" ] || targetSpace=" "
|
||||
echo "$Script $targetType$targetSpace${dir:-.}"
|
||||
# Print command, trim off leading './' for readability
|
||||
echo "$Script $targetType${targetType:+ }${dir#./}"
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# If target not specified search up the directory tree for the Make
|
||||
# sub-directory, check the existance of the 'files' file and clean there if
|
||||
# sub-directory, check the existence of the 'files' file and clean there if
|
||||
# present
|
||||
# ------------------------------------------------------------------------------
|
||||
|
||||
@ -144,26 +149,23 @@ fi
|
||||
if [ "$targetType" = empty ]
|
||||
then
|
||||
# First pass: clean up empty source code directories
|
||||
|
||||
echo "Removing empty directories..."
|
||||
|
||||
# Get sub-directories avoiding particular directories
|
||||
for dir in $(find . -mindepth 1 -maxdepth 1 \
|
||||
-type d \( -name .git -prune -o -print \) )
|
||||
for d in $(find . -mindepth 1 -maxdepth 1 \
|
||||
-name .git -prune -o -type d -print)
|
||||
do
|
||||
echo " searching: $dir"
|
||||
find $dir -depth -type d -empty -exec rmdir {} \; -print
|
||||
echo " searching: ${d#./}"
|
||||
find $d -depth -empty -type d -delete -print
|
||||
done
|
||||
|
||||
# Second pass: clean up object directories with WM_PROJECT_DIR that don't
|
||||
# have respective source code folders, along with the respective binaries
|
||||
|
||||
expandPath $PWD
|
||||
if [ "$exPath" = "$WM_PROJECT_DIR" ]
|
||||
if [ "$(expandPath $PWD)" = "$WM_PROJECT_DIR" ]
|
||||
then
|
||||
findObjectDir $PWD
|
||||
objectsDir=$(findObjectDir $PWD 2>/dev/null) || exit 1 # Fatal
|
||||
|
||||
if [ -d $objectsDir ]
|
||||
if [ -d "$objectsDir" ]
|
||||
then
|
||||
echo " Removing redundant object directories in $objectsDir"
|
||||
|
||||
@ -172,7 +174,7 @@ then
|
||||
do
|
||||
# Hack'ish way of getting the original source code path
|
||||
depFile=$(dirname $variablesFile)
|
||||
depToSource $depFile
|
||||
sourceFile=$(depToSource $depFile)
|
||||
|
||||
# Check if the original source code directory exists
|
||||
if [ ! -r "$sourceFile" ]
|
||||
@ -226,58 +228,48 @@ then
|
||||
then
|
||||
./Allclean
|
||||
exit $?
|
||||
else
|
||||
# For all the sub-directories containing a 'Make' directory
|
||||
for dir in `find . \( -type d -a -name Make \)`
|
||||
do
|
||||
dir=${dir%/Make} # Parent directory - trim /Make from the end
|
||||
|
||||
# If Allwclean exists execute otherwise wclean
|
||||
if [ -e "$dir/Allwclean" ]
|
||||
then
|
||||
$dir/Allwclean
|
||||
else
|
||||
$0 $dir
|
||||
fi
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
# targetType is not needed beyond this point
|
||||
unset targetType
|
||||
# For all directories containing a 'Make' directory, or an 'Allwclean' file
|
||||
for dir in $(find . -name Allwclean -o -name Make)
|
||||
do
|
||||
echo ${dir%/*}
|
||||
done | sort | uniq | while read dir
|
||||
do
|
||||
# Use Allwclean if it exists, otherwise wclean
|
||||
if [ -e "$dir/Allwclean" ]
|
||||
then
|
||||
$dir/Allwclean
|
||||
elif [ -d "$dir/Make" ]
|
||||
then
|
||||
$0 $dir
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Clean the 'Make' directory if present
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if [ -d $MakeDir ]
|
||||
if [ -d "$MakeDir" ]
|
||||
then
|
||||
objectsDir=$MakeDir/$WM_OPTIONS
|
||||
if [ $(echo $PWD | grep "$WM_PROJECT_DIR") ]
|
||||
then
|
||||
platformPath=$WM_PROJECT_DIR/platforms/${WM_OPTIONS}
|
||||
objectsDir=$platformPath$(echo $PWD | sed s%$WM_PROJECT_DIR%% )
|
||||
fi
|
||||
case "$PWD" in
|
||||
("$WM_PROJECT_DIR"/*)
|
||||
buildPath=$WM_PROJECT_DIR/build/${WM_OPTIONS}
|
||||
objectsDir=$buildPath$(echo $PWD | sed s%$WM_PROJECT_DIR%% )
|
||||
;;
|
||||
esac
|
||||
rm -rf $objectsDir 2>/dev/null
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Remove the lnInclude directory if present
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if [ -d lnInclude ]
|
||||
then
|
||||
rm -rf lnInclude 2>/dev/null
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage MakeDir
|
||||
[ -d lnInclude ] && rm -rf lnInclude 2>/dev/null
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
135
wmake/wcleanBuild
Executable file
135
wmake/wcleanBuild
Executable file
@ -0,0 +1,135 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2017 OpenCFD Ltd.
|
||||
# \\/ 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
|
||||
# wcleanBuild
|
||||
#
|
||||
# Usage
|
||||
# wcleanBuild <platform> [.. <platformN>]
|
||||
#
|
||||
# Description
|
||||
# Deletes the specified 'build/' object files directories from the
|
||||
# the project top-level 'build/' directory $WM_PROJECT_DIR.
|
||||
#
|
||||
# special platforms
|
||||
# - 'all' removes all platforms.
|
||||
# - 'compiler' corresponds to $WM_ARCH$WM_COMPILER.
|
||||
# - 'current' corresponds to $WM_OPTIONS.
|
||||
#
|
||||
# You must be in the project or the third-party top-level directory
|
||||
# to run this script.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
Script=${0##*/}
|
||||
|
||||
usage() {
|
||||
exec 1>&2
|
||||
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||
cat<<USAGE
|
||||
|
||||
Usage: $Script <platform> [.. <platformN>]
|
||||
$Script -all | -compiler | -current [<platform> [.. <platformN>]]
|
||||
|
||||
options:
|
||||
-a, -all Same as 'all'
|
||||
-comp, -compiler Same as 'compiler'
|
||||
-c, -current Same as 'current'
|
||||
-h, -help Print the usage
|
||||
|
||||
|
||||
Deletes the specified build/ object file directories from the project
|
||||
top-level build/ directory $WM_PROJECT_DIR.
|
||||
|
||||
special platforms:
|
||||
all Remove all platforms
|
||||
compiler $WM_ARCH$WM_COMPILER (ie, \$WM_ARCH\$WM_COMPILER)
|
||||
current $WM_OPTIONS (ie, \$WM_OPTIONS)
|
||||
|
||||
You must be in the project or the third-party top-level directory
|
||||
to run this script.
|
||||
|
||||
USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Find -help anywhere
|
||||
for i
|
||||
do
|
||||
case "$i" in (-h | -help) usage ;; esac
|
||||
done
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Run from OPENFOAM or THIRDPARTY top-level directory only
|
||||
wmakeCheckPwd -q "$WM_PROJECT_DIR" 2>/dev/null || \
|
||||
wmakeCheckPwd -q "$WM_THIRD_PARTY_DIR" 2>/dev/null || \
|
||||
{
|
||||
cat<<ERROR
|
||||
${0##*/}: Error incorrect top-level directory
|
||||
|
||||
Not in Project: $WM_PROJECT_DIR
|
||||
Nor in ThirdParty: $WM_THIRD_PARTY_DIR
|
||||
|
||||
ERROR
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [ "$#" -eq 0 ]
|
||||
then
|
||||
usage "No platform specified"
|
||||
else
|
||||
echo "$# platform(s) to clean"
|
||||
echo
|
||||
fi
|
||||
|
||||
for name
|
||||
do
|
||||
case "$name" in
|
||||
-comp | -compiler | compiler)
|
||||
name="$WM_ARCH$WM_COMPILER"
|
||||
;;
|
||||
-c | -current | current)
|
||||
name="$WM_OPTIONS"
|
||||
;;
|
||||
-a | -all | all)
|
||||
echo "all build/ ..."
|
||||
rm -rf build
|
||||
echo
|
||||
break # Can stop now
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -n "$name" -d "build/$name" ]
|
||||
then
|
||||
echo " '$name'"
|
||||
rm -rf "build/$name"*
|
||||
echo
|
||||
else
|
||||
echo " '$name' - not built"
|
||||
echo
|
||||
fi
|
||||
done
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
@ -26,67 +26,49 @@
|
||||
# wcleanLnIncludeAll
|
||||
#
|
||||
# Usage
|
||||
# wcleanLnIncludeAll [dir1] .. [dirN]
|
||||
# wcleanLnIncludeAll [dir1 [..dirN]]
|
||||
#
|
||||
# Description
|
||||
# Delete all the lnInclude directories in the tree.
|
||||
#
|
||||
##------------------------------------------------------------------------------
|
||||
Script=${0##*/}
|
||||
|
||||
# Source the wmake functions
|
||||
. ${0%/*}/scripts/wmakeFunctions
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Parse arguments and options
|
||||
#------------------------------------------------------------------------------
|
||||
usage() {
|
||||
exec 1>&2
|
||||
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||
cat<<USAGE
|
||||
|
||||
# Default to the CWD
|
||||
if [ "$#" -eq 0 ]
|
||||
then
|
||||
# Add the CWD to the arguments
|
||||
set -- .
|
||||
elif [ "$1" = "-h" -o "$1" = "-help" ]
|
||||
then
|
||||
echo "Usage: $Script [dir1] .. [dirN]"
|
||||
echo
|
||||
echo " Delete all the lnInclude directories in the tree"
|
||||
echo
|
||||
Usage: ${0##*/} [dir1 [..dirN]]
|
||||
|
||||
options:
|
||||
-h, -help Print the usage
|
||||
|
||||
Remove all lnInclude directories found in the tree
|
||||
|
||||
USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Simple help
|
||||
if [ "$1" = "-h" -o "$1" = "-help" ]
|
||||
then
|
||||
usage
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Search up the directory tree for the Make sub-directory,
|
||||
# check the existance of the 'files' file and clean there if present
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Need to add an option or special logic to control cdSource
|
||||
# MakeDir=Make
|
||||
# cdSource
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Search for all lnInclude directories and delete them
|
||||
#------------------------------------------------------------------------------
|
||||
# Default is the current directory
|
||||
[ "$#" -gt 0 ] || set -- .
|
||||
|
||||
for dir
|
||||
do
|
||||
if [ -d "$dir" ]
|
||||
then
|
||||
echo "removing lnInclude directories: $dir"
|
||||
find $dir -depth -type d -name lnInclude -exec rm -rf {} \;
|
||||
find $dir -depth -name lnInclude -type d -exec rm -rf {} \;
|
||||
else
|
||||
echo "no directory: $dir" 1>&2
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script MakeDir
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -4,7 +4,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2015 OpenFOAM Foundation
|
||||
# \\/ M anipulation |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -26,24 +26,19 @@
|
||||
# wcleanPlatform
|
||||
#
|
||||
# Usage
|
||||
# wcleanPlatform [ -current | -all ]
|
||||
# wcleanPlatform <platform> [ ... <platformN> ]
|
||||
# wcleanPlatform <platform> [.. <platformN>]
|
||||
#
|
||||
# Description
|
||||
# Deletes the specified platforms object files directories from the
|
||||
# the project top-level platforms directory $WM_PROJECT_DIR.
|
||||
# Deletes the specified 'platforms/' object files directories from the
|
||||
# the project top-level 'platforms/' directory $WM_PROJECT_DIR.
|
||||
#
|
||||
# You need to be in the project top-level directory to run this script.
|
||||
# special platforms
|
||||
# - 'all' removes all platforms, lnInclude directories and cleans tutorials.
|
||||
# - 'compiler' corresponds to $WM_ARCH$WM_COMPILER.
|
||||
# - 'current' corresponds to $WM_OPTIONS.
|
||||
#
|
||||
# Options
|
||||
# -current: clean the current platform
|
||||
# -all: clean all platforms
|
||||
#
|
||||
# If either -current or no platform is specified then the current platform
|
||||
# $WM_OPTIONS is deleted.
|
||||
#
|
||||
# If the -all option is specified all platforms and lnInclude directories
|
||||
# are deleted
|
||||
# You must be in the project or the third-party top-level directory
|
||||
# to run this script.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
Script=${0##*/}
|
||||
@ -52,76 +47,91 @@ usage() {
|
||||
exec 1>&2
|
||||
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||
cat<<USAGE
|
||||
Usage: $Script [ -current | -all ]
|
||||
$Script <platform> [ ... <platformN> ]
|
||||
|
||||
Deletes the specified platforms object files directories from the
|
||||
the project top-level platforms directory $WM_PROJECT_DIR.
|
||||
Usage: $Script <platform> [.. <platformN>]
|
||||
$Script -all | -compiler | -current [<platform> [.. <platformN>]]
|
||||
|
||||
You need to be in the project top-level directory to run this script.
|
||||
options:
|
||||
-a, -all Same as 'all'
|
||||
-comp, -compiler Same as 'compiler'
|
||||
-c, -current Same as 'current'
|
||||
-h, -help Print the usage
|
||||
|
||||
If either -current or no platform is specified then the current platform
|
||||
$WM_OPTIONS is deleted.
|
||||
|
||||
If the -all option is specified all platforms and lnInclude directories
|
||||
are deleted.
|
||||
Deletes the specified platforms/ object file directories from the project
|
||||
top-level platforms/ directory $WM_PROJECT_DIR.
|
||||
|
||||
special platforms:
|
||||
all Remove all platforms, lnInclude and clean tutorials
|
||||
compiler $WM_ARCH$WM_COMPILER (ie, \$WM_ARCH\$WM_COMPILER)
|
||||
current $WM_OPTIONS (ie, \$WM_OPTIONS)
|
||||
|
||||
You must be in the project or the third-party top-level directory
|
||||
to run this script.
|
||||
|
||||
USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Print help message
|
||||
if [ "$1" = "-h" -o "$1" = "-help" ]; then
|
||||
usage
|
||||
fi
|
||||
# Find -help anywhere
|
||||
for i
|
||||
do
|
||||
case "$i" in (-h | -help) usage ;; esac
|
||||
done
|
||||
|
||||
# Check the script is executed from the project top-level directory
|
||||
[ "$PWD" = "$WM_PROJECT_DIR" ] || \
|
||||
usage "Not in the project top-level directory " $WM_PROJECT_DIR
|
||||
#------------------------------------------------------------------------------
|
||||
# Run from OPENFOAM or THIRDPARTY top-level directory only
|
||||
wmakeCheckPwd -q "$WM_PROJECT_DIR" 2>/dev/null || \
|
||||
wmakeCheckPwd -q "$WM_THIRD_PARTY_DIR" 2>/dev/null || \
|
||||
{
|
||||
cat<<ERROR
|
||||
${0##*/}: Error incorrect top-level directory
|
||||
|
||||
# Get the platforms from the arguments
|
||||
platforms="$@"
|
||||
Not in Project: $WM_PROJECT_DIR
|
||||
Nor in ThirdParty: $WM_THIRD_PARTY_DIR
|
||||
|
||||
# If no arguments are provided select the current platform
|
||||
if [ "$#" -lt 1 ]; then
|
||||
platforms="-current"
|
||||
fi
|
||||
ERROR
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [ "$platforms" = "-all" ]; then
|
||||
echo "Removing all platforms/sub-directories"
|
||||
rm -rf platforms/*
|
||||
|
||||
echo "Removing lnInclude directories"
|
||||
find . -depth -type d \( -name lnInclude \) | xargs rm -rf
|
||||
|
||||
tutorials/Allclean
|
||||
if [ "$#" -eq 0 ]
|
||||
then
|
||||
usage "No platform specified"
|
||||
else
|
||||
# Loop over the platforms specified and delete the object directories
|
||||
for platform in $platforms
|
||||
do
|
||||
if [ "$platform" = "-current" ]
|
||||
then
|
||||
platform="$WM_OPTIONS"
|
||||
echo "Current platform $platform"
|
||||
[ -n "$platform" ] || continue
|
||||
fi
|
||||
|
||||
if [ -d platforms/${platform} ]
|
||||
then
|
||||
echo "Cleaning platform $platform"
|
||||
rm -rf platforms/${platform}*
|
||||
else
|
||||
echo "Platform $platform not built"
|
||||
fi
|
||||
done
|
||||
echo "$# platform(s) to clean"
|
||||
echo
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script platforms
|
||||
|
||||
for name
|
||||
do
|
||||
case "$name" in
|
||||
-comp | -compiler | compiler)
|
||||
name="$WM_ARCH$WM_COMPILER"
|
||||
;;
|
||||
-c | -current | current)
|
||||
name="$WM_OPTIONS"
|
||||
;;
|
||||
-a | -all | all)
|
||||
echo "all platforms/ ..."
|
||||
rm -rf platforms
|
||||
wcleanLnIncludeAll .
|
||||
[ -x tutorials/Allclean ] && tutorials/Allclean
|
||||
echo
|
||||
break # Can stop now
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -n "$name" -d "build/$name" ]
|
||||
then
|
||||
echo " '$name'"
|
||||
rm -rf "platforms/$name"*
|
||||
echo
|
||||
else
|
||||
echo " '$name' - not built"
|
||||
echo
|
||||
fi
|
||||
done
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
30
wmake/wdep
30
wmake/wdep
@ -4,7 +4,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
|
||||
# \\/ M anipulation |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -74,18 +74,23 @@ do
|
||||
esac
|
||||
done
|
||||
|
||||
if [ $# -eq 0 ]
|
||||
then
|
||||
echo "$Script: no source file specified" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check environment variables
|
||||
checkEnv
|
||||
|
||||
sourceFile=$1
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Check <file> is is the current directory,
|
||||
# Check <file> is in the current directory,
|
||||
# otherwise search tree for first occurrance
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
sourceFile=$1
|
||||
|
||||
if [ ! -e $1 ]
|
||||
if [ ! -e "$sourceFile" ]
|
||||
then
|
||||
sourceFile=$(find . -name $sourceFile -print -quit)
|
||||
if [ -z "$sourceFile" ]
|
||||
@ -95,24 +100,13 @@ then
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Search up directories tree for the Make sub-directory containing dep files
|
||||
# and echo path for the dep file corresponding to the specified source file
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
findObjectDir $sourceFile
|
||||
|
||||
fileName=${1##*/}
|
||||
|
||||
echo $objectsDir/$fileName.dep
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage
|
||||
echo "$(findObjectDir $sourceFile)/${sourceFile##*/}.dep"
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
163
wmake/wmake
163
wmake/wmake
@ -4,7 +4,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -53,7 +53,7 @@
|
||||
# wclean, wcleanPlatform, wcleanLnIncludeAll
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
Script=${0##*/}
|
||||
Script=${0##*/} # Note: need 'Script' for some functions in wmakeFunctions
|
||||
|
||||
# Source the wmake functions
|
||||
. ${0%/*}/scripts/wmakeFunctions
|
||||
@ -127,8 +127,7 @@ useAllCores()
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Default to compiling the local target only
|
||||
all=
|
||||
update=
|
||||
unset all update
|
||||
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
@ -141,10 +140,10 @@ do
|
||||
export WM_QUIET=1
|
||||
;;
|
||||
-a | -all | all)
|
||||
all="all"
|
||||
all=all
|
||||
;;
|
||||
-q | -queue | queue)
|
||||
all="queue"
|
||||
all=queue
|
||||
;;
|
||||
# Parallel compilation on all cores of local machine
|
||||
-j)
|
||||
@ -154,13 +153,13 @@ do
|
||||
echo "Compiling enabled on $WM_NCOMPPROCS cores"
|
||||
;;
|
||||
# Parallel compilation on specified number of cores
|
||||
-j*)
|
||||
-j[1-9]*)
|
||||
export WM_NCOMPPROCS=${1#-j}
|
||||
echo "Compiling enabled on $WM_NCOMPPROCS cores"
|
||||
;;
|
||||
# Non-stop compilation, ignoring errors
|
||||
-k | -non-stop)
|
||||
export WM_CONTINUE_ON_ERROR=1
|
||||
export WM_CONTINUE_ON_ERROR=true
|
||||
;;
|
||||
# Disable scheduled parallel compilation
|
||||
-no-scheduler)
|
||||
@ -173,15 +172,15 @@ do
|
||||
# - remove empty directories, along with deprecated object directories
|
||||
# and respective binaries.
|
||||
-update)
|
||||
update="true"
|
||||
[ -z "$all" ] && all="all"
|
||||
update=true
|
||||
: ${all:=all} # implies 'all', unless previous set to 'queue' etc.
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
@ -200,10 +199,10 @@ checkEnv
|
||||
# When compiling anything but a standalone exe WM_PROJECT and WM_PROJECT_DIR
|
||||
# must be set
|
||||
[ "$1" = exe -o \( "$WM_PROJECT" -a "$WM_PROJECT_DIR" \) ] || {
|
||||
echo "$Script error:" 1>&2
|
||||
echo " environment variable \$WM_PROJECT or " \
|
||||
"\$WM_PROJECT_DIR not set" 1>&2
|
||||
echo " while building project library" 1>&2
|
||||
exec 1>&2
|
||||
echo "$Script error:"
|
||||
echo " environment variable \$WM_PROJECT or \$WM_PROJECT_DIR not set"
|
||||
echo " while building project library"
|
||||
exit 1
|
||||
}
|
||||
|
||||
@ -219,11 +218,11 @@ then
|
||||
[ $? -eq 0 ] || unset WM_NCOMPPROCS
|
||||
fi
|
||||
|
||||
if [ "$WM_NCOMPPROCS" ]
|
||||
if [ -n "$WM_NCOMPPROCS" ]
|
||||
then
|
||||
parOpt="-j $WM_NCOMPPROCS"
|
||||
|
||||
if [ "$WM_NCOMPPROCS" -gt 1 -a ! "$MAKEFLAGS" ]
|
||||
if [ "$WM_NCOMPPROCS" -gt 1 -a -z "$MAKEFLAGS" ]
|
||||
then
|
||||
lockDir=$HOME/.$WM_PROJECT/.wmake
|
||||
|
||||
@ -240,7 +239,8 @@ fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Check arguments and change to the directory in which to run wmake
|
||||
# Check arguments and change to the directory in which to run wmake.
|
||||
# The variables 'targetType' and 'MakeDir' are considered global
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset dir targetType
|
||||
@ -250,7 +250,11 @@ if [ $# -ge 1 ]
|
||||
then
|
||||
if [ -d "$1" ]
|
||||
then
|
||||
dir=$1
|
||||
dir="$1"
|
||||
elif [ -f "$1" ]
|
||||
then
|
||||
dir="${1%/*}"
|
||||
: ${dir:=.}
|
||||
else
|
||||
targetType=$1
|
||||
fi
|
||||
@ -261,7 +265,7 @@ then
|
||||
# Specified alternative name for the Make sub-directory:
|
||||
[ $# -ge 3 ] && MakeDir=$3
|
||||
|
||||
if [ "$dir" ]
|
||||
if [ -n "$dir" ]
|
||||
then
|
||||
cd $dir 2>/dev/null || {
|
||||
echo "$Script error: could not change to directory '$dir'" 1>&2
|
||||
@ -270,16 +274,15 @@ then
|
||||
fi
|
||||
|
||||
# Print command
|
||||
[ -z "$targetType" ] || targetSpace=" "
|
||||
echo "$Script $targetType$targetSpace${dir:-.}"
|
||||
echo "$Script $targetType${targetType:+ }${dir:-.}"
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Recurse the source tree to compile "all" targets
|
||||
# Recurse the source tree to update all
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if [ -n "$update" ]
|
||||
if [ "$update" = true ]
|
||||
then
|
||||
wrmdep -update
|
||||
wrmdep -old
|
||||
@ -293,40 +296,37 @@ fi
|
||||
# Recurse the source tree to compile "all" targets
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if [ "$all" = "all" ]
|
||||
if [ "$all" = all ]
|
||||
then
|
||||
if [ -e Allwmake ]
|
||||
then
|
||||
./Allwmake -fromWmake $targetType
|
||||
exit $?
|
||||
fi
|
||||
|
||||
# Find all the sub-directories containing a 'Make' directory
|
||||
# (xargs is just used to flatten the list)
|
||||
FOAM_APPS=$(
|
||||
for d in *
|
||||
do [ -d "$d" -a "$d" != Optional -a "$d" != Make ] && echo "$d"
|
||||
done | xargs)
|
||||
|
||||
if [ -n "$FOAM_APPS" ]
|
||||
then
|
||||
# Compile all applications in sub-directories
|
||||
$make ${WM_CONTINUE_ON_ERROR:+-k} \
|
||||
-f $WM_DIR/makefiles/apps \
|
||||
TARGET="$targetType" FOAM_APPS="$FOAM_APPS"
|
||||
makeExitCode=$?
|
||||
else
|
||||
# Have to keep track of the main exit code for the call to "make"
|
||||
makeExitCode=0
|
||||
makeExitCode=0 # For fall-through
|
||||
fi
|
||||
|
||||
# Find all the sub-directories containing a 'Make' directory
|
||||
FOAM_APPS=$(\
|
||||
for d in *; \
|
||||
do [ -d "$d" -a "$d" != Optional -a "$d" != Make ] \
|
||||
&& echo "$d"; \
|
||||
done | xargs \
|
||||
)
|
||||
if [ ! "$FOAM_APPS" = "" ]
|
||||
then
|
||||
# Compile all applications in sub-directories
|
||||
$make ${WM_CONTINUE_ON_ERROR:+-k} \
|
||||
-f $WM_DIR/makefiles/apps \
|
||||
TARGET="$targetType" FOAM_APPS="$FOAM_APPS"
|
||||
makeExitCode=$?
|
||||
fi
|
||||
# If the current directory contains a 'Make' directory continue
|
||||
# otherwise exit, or always exit in case of error
|
||||
if [ ! -d $MakeDir -o $makeExitCode -ne 0 ]
|
||||
then
|
||||
exit $makeExitCode
|
||||
fi
|
||||
|
||||
# Clean up tracking variable
|
||||
unset makeExitCode
|
||||
# Exit if current directory does not contains a 'Make' directory or
|
||||
# an error was previously encountered
|
||||
if [ ! -d "$MakeDir" -o $makeExitCode -ne 0 ]
|
||||
then
|
||||
exit $makeExitCode
|
||||
fi
|
||||
fi
|
||||
|
||||
@ -335,12 +335,12 @@ fi
|
||||
# Recurse the source tree to compile "all" targets using wmakeQueue
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if [ "$all" = "queue" ]
|
||||
if [ "$all" = queue ]
|
||||
then
|
||||
[ -n "$update" ] || wmakeLnIncludeAll $parOpt
|
||||
[ "$update" = true ] || wmakeLnIncludeAll $parOpt
|
||||
|
||||
(
|
||||
export WM_COLLECT_DIR=$WM_PROJECT_DIR/platforms/${WM_OPTIONS}/${PWD////_}
|
||||
export WM_COLLECT_DIR=$WM_PROJECT_DIR/build/${WM_OPTIONS}/${PWD////_}
|
||||
export WM_SCHEDULER=wmakeCollect
|
||||
trap '$WM_SCHEDULER -kill' TERM INT
|
||||
$WM_SCHEDULER -clean \
|
||||
@ -353,7 +353,7 @@ fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Search up the directory tree for the Make sub-directory,
|
||||
# check the existance of the 'files' file and build there if present
|
||||
# check the existence of the 'files' file and build there if present
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
cdSource
|
||||
@ -365,20 +365,18 @@ cdSource
|
||||
|
||||
# Transform no option to "libso" if that looks appropriate or remove it
|
||||
# so that the call to make builds the application
|
||||
if [ "$targetType" = "" ]
|
||||
if [ -z "$targetType" ]
|
||||
then
|
||||
unset targetType
|
||||
if grep -e '^ *LIB *=' "$MakeDir/files" >/dev/null 2>&1
|
||||
if grep -qe '^ *LIB *=' "$MakeDir/files" 2>/dev/null
|
||||
then
|
||||
targetType=libso
|
||||
fi
|
||||
elif grep -e '^ *EXE *=' "$MakeDir/files" >/dev/null 2>&1
|
||||
elif grep -qe '^ *EXE *=' "$MakeDir/files" 2>/dev/null
|
||||
then
|
||||
# Application. Remove any nonsense targetType
|
||||
case "$targetType" in
|
||||
lib*)
|
||||
lib*)
|
||||
unset targetType
|
||||
break
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
@ -390,11 +388,12 @@ fi
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
objectsDir=$MakeDir/$WM_OPTIONS
|
||||
if [ $(echo $PWD | grep "$WM_PROJECT_DIR") ]
|
||||
then
|
||||
platformPath=$WM_PROJECT_DIR/platforms/${WM_OPTIONS}
|
||||
objectsDir=$platformPath$(echo $PWD | sed s%$WM_PROJECT_DIR%% )
|
||||
fi
|
||||
case "$PWD" in
|
||||
("$WM_PROJECT_DIR"/*)
|
||||
buildPath=$WM_PROJECT_DIR/build/${WM_OPTIONS}
|
||||
objectsDir=$buildPath$(echo $PWD | sed s%$WM_PROJECT_DIR%% )
|
||||
;;
|
||||
esac
|
||||
|
||||
(
|
||||
unset MAKEFLAGS
|
||||
@ -425,16 +424,15 @@ fi
|
||||
# Make the dependency files
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# For libraries create lnInclude ...
|
||||
# For libraries create lnInclude, but only if 'LIB' is declared in 'Make/files'
|
||||
case "$targetType" in
|
||||
lib | libo | libso | dep )
|
||||
# ... but only if 'LIB' is declared in 'Make/files'
|
||||
if grep -e '^ *LIB *=' "$MakeDir/files" >/dev/null 2>&1
|
||||
then
|
||||
$make -s -f $WM_DIR/makefiles/general MAKE_DIR=$MakeDir \
|
||||
OBJECTS_DIR=$objectsDir lnInclude
|
||||
fi
|
||||
;;
|
||||
(lib | libo | libso | dep)
|
||||
if grep -qe '^ *LIB *=' "$MakeDir/files" 2>/dev/null
|
||||
then
|
||||
$make -s -f $WM_DIR/makefiles/general MAKE_DIR=$MakeDir \
|
||||
OBJECTS_DIR=$objectsDir lnInclude
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
@ -449,12 +447,7 @@ then
|
||||
OBJECTS_DIR=$objectsDir updatedep
|
||||
makeExitCode=$?
|
||||
|
||||
if [ $makeExitCode -ne 0 ]
|
||||
then
|
||||
exit $makeExitCode
|
||||
fi
|
||||
|
||||
unset makeExitCode
|
||||
[ $makeExitCode -eq 0 ] || exit $makeExitCode
|
||||
fi
|
||||
|
||||
|
||||
@ -465,12 +458,6 @@ fi
|
||||
exec $make -f $WM_DIR/makefiles/general MAKE_DIR=$MakeDir \
|
||||
OBJECTS_DIR=$objectsDir $targetType
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage useAllCores update expandPath findTarget
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -89,7 +89,7 @@ dirName="$1"
|
||||
# Simple check against $PWD
|
||||
[ "$PWD" = "$dirName" ] && exit 0
|
||||
|
||||
# Check existance of <dir>
|
||||
# Check existence of <dir>
|
||||
[ -d "$dirName" ] || {
|
||||
[ "$quietOpt" = true ] || {
|
||||
echo "$Script error: Directory does not exist $dirName"
|
||||
@ -108,14 +108,7 @@ target=$(cd $dirName 2>/dev/null && /bin/pwd)
|
||||
[ "$quietOpt" = true ] || {
|
||||
echo "$Script error: Current directory is not $dirName"
|
||||
}
|
||||
|
||||
exit 1
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -68,8 +68,8 @@ USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Set true to clean-up file if interupted
|
||||
cleanup=
|
||||
# Set true to clean-up file if interrupted
|
||||
unset cleanup
|
||||
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
@ -78,7 +78,7 @@ do
|
||||
usage
|
||||
;;
|
||||
-kill | -clean)
|
||||
cleanup="true"
|
||||
cleanup=true
|
||||
shift
|
||||
;;
|
||||
-*)
|
||||
@ -110,7 +110,7 @@ makefile="$WM_COLLECT_DIR.Makefile"
|
||||
|
||||
|
||||
# Clean-up files and exit
|
||||
if [ -n "$cleanup" ]
|
||||
if [ "$cleanup" = true ]
|
||||
then
|
||||
rm -rf $WM_COLLECT_DIR
|
||||
rm -f $makefile
|
||||
@ -142,31 +142,23 @@ then
|
||||
echo -e "\t$E cd $PWD && \\" >> $file
|
||||
echo -e "\t${@:1:($#-1)} $object" >> $file
|
||||
echo >> $file
|
||||
else
|
||||
if [ -d $WM_COLLECT_DIR ]
|
||||
then
|
||||
# Collect all the makefiles into a single makefiles for this build
|
||||
(cd $WM_COLLECT_DIR && ls -1rt | xargs cat > $makefile)
|
||||
elif [ -d $WM_COLLECT_DIR ]
|
||||
then
|
||||
# Collect all the makefiles into a single makefiles for this build
|
||||
(cd $WM_COLLECT_DIR && ls -1rt | xargs cat > $makefile)
|
||||
|
||||
# Add a build rule for all of the targets
|
||||
echo 'all: $(OBJECTS)' >> $makefile
|
||||
# Add a build rule for all of the targets
|
||||
echo 'all: $(OBJECTS)' >> $makefile
|
||||
|
||||
# Clear out all of the target makefiles
|
||||
rm -rf $WM_COLLECT_DIR
|
||||
# Clear out all of the target makefiles
|
||||
rm -rf $WM_COLLECT_DIR
|
||||
|
||||
# Run make on the collected makefile
|
||||
make -j $WM_NCOMPPROCS -f $makefile all
|
||||
# Run make on the collected makefile
|
||||
make -j $WM_NCOMPPROCS -f $makefile all
|
||||
|
||||
rm -f $makefile
|
||||
fi
|
||||
rm -f $makefile
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -60,7 +60,7 @@ do
|
||||
usage
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
@ -102,11 +102,6 @@ fi
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -91,7 +91,7 @@ do
|
||||
shift
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
@ -149,7 +149,7 @@ fi
|
||||
#------------------------------------------------------------------------------
|
||||
# Remove any broken links first (this helps when file locations have moved)
|
||||
#------------------------------------------------------------------------------
|
||||
find -L . -type l | xargs rm -f
|
||||
find -L . -type l -delete
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -167,12 +167,6 @@ find .. $findOpt \
|
||||
\) \
|
||||
-exec ln $lnOpt {} . \;
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -62,12 +62,12 @@ findName=lnInclude
|
||||
nCores=0
|
||||
|
||||
# Default 'wmakeLnInclude' option
|
||||
wmLnOpt=
|
||||
unset wmLnOpt
|
||||
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
-h | -help) # Provide immediate help
|
||||
-h | -help)
|
||||
usage
|
||||
;;
|
||||
-u | -update)
|
||||
@ -75,16 +75,16 @@ do
|
||||
;;
|
||||
# Parallel execution on WM_NCOMPPROCS cores
|
||||
-j)
|
||||
nCores=$WM_NCOMPPROCS
|
||||
nCores=${WM_NCOMPPROCS:-0}
|
||||
test $# -ge 2 && expr $2 + 1 > /dev/null 2>&1 \
|
||||
&& shift && nCores=$1
|
||||
;;
|
||||
# Parallel compilation on specified number of cores
|
||||
-j*)
|
||||
-j[1-9]*)
|
||||
nCores=${1#-j}
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
@ -93,9 +93,6 @@ do
|
||||
shift
|
||||
done
|
||||
|
||||
|
||||
FAIL=0
|
||||
|
||||
if [ "$nCores" -gt 0 ]
|
||||
then
|
||||
echo "$Script: starting wmakeLnInclude processes on $nCores cores"
|
||||
@ -122,7 +119,7 @@ do
|
||||
topDir=${MakeDir%/Make} # trim /Make from the end
|
||||
if [ -d "$topDir" ]
|
||||
then
|
||||
if grep -e '^ *LIB *=' "$MakeDir/files" >/dev/null 2>&1
|
||||
if grep -qe '^ *LIB *=' "$MakeDir/files" 2>/dev/null
|
||||
then
|
||||
# If running in parallel start wmakeLnInclude on nCores
|
||||
# and more as the cores become free
|
||||
@ -159,12 +156,6 @@ then
|
||||
sleep 2
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -161,7 +161,7 @@ then
|
||||
# Retrieve OPENFOAM_PLUS=<digits> from $WM_DIR/rules/General/general
|
||||
version=$(
|
||||
sed -ne 's@^.*OPENFOAM_PLUS=\([0-9][0-9]*\).*@\1@p' \
|
||||
$WM_DIR/rules/General/general 2>/dev/null | tail -1
|
||||
$WM_DIR/rules/General/general 2>/dev/null
|
||||
)
|
||||
|
||||
if [ -n "$version" ]
|
||||
|
@ -237,12 +237,6 @@ then
|
||||
setterm -foreground default
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -252,12 +252,6 @@ do
|
||||
sleep 1
|
||||
done
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
126
wmake/wrmdep
126
wmake/wrmdep
@ -4,7 +4,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2015-2016 OpenFOAM Foundation
|
||||
# \\/ M anipulation |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -25,21 +25,21 @@
|
||||
# Script wrmdep
|
||||
#
|
||||
# Usage
|
||||
# wrmdep [-a | -all | all] [file]
|
||||
# wrmdep [-o | -old] [dir1 .. dirN]
|
||||
# wrmdep [-a | -all | all] [file1 [..fileN]]
|
||||
# wrmdep [-o | -old] [[dir1 [..dirN]]
|
||||
# wrmdep -update
|
||||
#
|
||||
# Description
|
||||
# This is a catch-all script for pruning .dep files, depending on the
|
||||
# provided arguments.
|
||||
#
|
||||
# [-a | -all | all] [file]:
|
||||
# [-a | -all | all] [file1 [.. fileN]]:
|
||||
# Remove all .dep files from the object directory tree corresponding to the
|
||||
# current source derectory or remove only the .dep files referring to the
|
||||
# optionally specified [file]. With the -a/-all/all option the .dep files
|
||||
# current source directory or remove only the .dep files referring to the
|
||||
# optionally specified file(s). With the -a/-all/all option the .dep files
|
||||
# are removed for all platforms rather than just the current platform.
|
||||
#
|
||||
# [-o | -old] [dir1 .. dirN]:
|
||||
# [-o | -old] [dir1 [.. dirN]]:
|
||||
# Remove *.dep files that are without a corresponding .C or .L source file.
|
||||
# This occurs when a directory has been moved.
|
||||
# - prints the questionable directory and *.dep file
|
||||
@ -48,10 +48,11 @@
|
||||
# Search all the "src" and "application" directories of the project for
|
||||
# broken symbolic links for source code files and then remove all .dep
|
||||
# files that relate to files that no longer exist.
|
||||
# Must be executed in the project top-level directory: $WM_PROJECT_DIR.
|
||||
# Must be executed in the project top-level directory:
|
||||
# $WM_PROJECT_DIR.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
Script=${0##*/}
|
||||
Script=${0##*/} # Note: need 'Script' for some functions in wmakeFunctions
|
||||
|
||||
# Source the wmake functions
|
||||
. ${0%/*}/scripts/wmakeFunctions
|
||||
@ -62,26 +63,27 @@ usage() {
|
||||
cat<<USAGE
|
||||
Usage:
|
||||
|
||||
$Script [-a | -all | all] [file]
|
||||
$Script [-a | -all | all] [file1 [..fileN]]
|
||||
|
||||
Remove all .dep files or remove .dep files referring to <file>
|
||||
With the -a/-all/all option the .dep files are removed for all
|
||||
platform rather than just the current platform.
|
||||
Remove all .dep files or remove .dep files referring to <file>
|
||||
With the -a/-all/all option the .dep files are removed for all
|
||||
platforms rather than just the current platform ($WM_OPTIONS).
|
||||
|
||||
$Script [-o | -old] [dir1 .. dirN]
|
||||
$Script [-o | -old] [dir1 [..dirN]]
|
||||
|
||||
Remove *.dep files that are without a corresponding .C or .L file.
|
||||
This occurs when a directory has been moved.
|
||||
- prints the questionable directory and *.dep file
|
||||
Remove *.dep files that are without a corresponding .C or .L file.
|
||||
This occurs when a directory has been moved.
|
||||
- prints the questionable directory and *.dep file
|
||||
|
||||
Note: to remove empty directories, run: wclean empty
|
||||
Note: to remove empty directories, run: wclean empty
|
||||
|
||||
$Script -update
|
||||
$Script -update
|
||||
|
||||
Search all the "src" and "application" directories of the project for
|
||||
broken symbolic links for source code files and then remove all .dep
|
||||
files that relate to files that no longer exist.
|
||||
Must be executed in the project top-level directory: $WM_PROJECT_DIR
|
||||
Search all the "src" and "application" directories of the project for
|
||||
broken symbolic links for source code files and then remove all .dep
|
||||
files that relate to files that no longer exist.
|
||||
Must be executed in the project top-level directory:
|
||||
$WM_PROJECT_DIR
|
||||
|
||||
USAGE
|
||||
exit 1
|
||||
@ -93,10 +95,10 @@ USAGE
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Default is for removing all .dep files in the current directory
|
||||
rmdepMode="files"
|
||||
rmdepMode=files
|
||||
|
||||
# Default to processing only the current platform
|
||||
all=
|
||||
unset all
|
||||
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
@ -105,27 +107,28 @@ do
|
||||
-h | -help)
|
||||
usage
|
||||
;;
|
||||
# Non-stop compilation, ignoring errors
|
||||
# All platforms
|
||||
-a | -all | all)
|
||||
all="all"
|
||||
all=all
|
||||
shift
|
||||
;;
|
||||
-o | -old)
|
||||
rmdepMode="oldFolders"
|
||||
rmdepMode=oldFolders
|
||||
shift
|
||||
;;
|
||||
-update)
|
||||
rmdepMode="updateMode"
|
||||
rmdepMode=updateMode
|
||||
shift
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
;;
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
;;
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Check environment variables
|
||||
checkEnv
|
||||
@ -138,10 +141,10 @@ files)
|
||||
# Remove the selected .dep files from the object tree
|
||||
#-------------------------------------------------------------------------
|
||||
|
||||
findObjectDir .
|
||||
objectsDir=$(findObjectDir .) || exit 1 # Fatal
|
||||
|
||||
# With the -a/-all option replace the current platform with a wildcard
|
||||
if [ "$all" = "all" ]
|
||||
if [ "$all" = all ]
|
||||
then
|
||||
objectsDir=$(echo $objectsDir | sed s%$WM_OPTIONS%*% )
|
||||
fi
|
||||
@ -149,27 +152,29 @@ files)
|
||||
if [ "$#" -eq 0 ]
|
||||
then
|
||||
echo "removing all .dep files ..."
|
||||
find $objectsDir -name '*.dep' -print | xargs -t rm 2>/dev/null
|
||||
find $objectsDir -name '*.dep' -type f -delete -print
|
||||
else
|
||||
echo "removing .dep files referring to $1 ..."
|
||||
find $objectsDir -name '*.dep' -exec grep -q "$1" '{}' \; \
|
||||
-exec rm '{}' \; -print
|
||||
echo "removing .o files corresponding to"
|
||||
echo " $@ ..."
|
||||
for file
|
||||
do
|
||||
find $objectsDir -name '*.dep' -type f \
|
||||
-exec grep -q "$file" {} \; -delete -print
|
||||
done
|
||||
fi
|
||||
|
||||
;;
|
||||
|
||||
oldFolders)
|
||||
|
||||
# Default is the current directory
|
||||
[ "$#" -gt 0 ] || set -- .
|
||||
|
||||
echo "Removing dep files that refer to sources files that no longer exist..."
|
||||
echo "Removing dep files that refer to source files that no longer exist..."
|
||||
|
||||
for checkDir
|
||||
do
|
||||
findObjectDir $checkDir
|
||||
objectsDir=$(findObjectDir $checkDir)
|
||||
|
||||
if [ -d $objectsDir ]
|
||||
if [ -d "$objectsDir" ]
|
||||
then
|
||||
echo " searching: $objectsDir"
|
||||
else
|
||||
@ -177,26 +182,24 @@ oldFolders)
|
||||
continue
|
||||
fi
|
||||
|
||||
find $objectsDir -name '*.dep' -print | while read depFile
|
||||
find $objectsDir -name '*.dep' -type f -print | while read depFile
|
||||
do
|
||||
depToSource $depFile
|
||||
sourceFile=$(depToSource $depFile)
|
||||
|
||||
# Check C++ or Flex source file exists
|
||||
if [ ! -r "$sourceFile" ];
|
||||
if [ ! -r "$sourceFile" ]
|
||||
then
|
||||
echo " rm $depFile"
|
||||
rm -f $depFile 2>/dev/null
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
;;
|
||||
|
||||
updateMode)
|
||||
|
||||
if [ "$PWD" != "$WM_PROJECT_DIR" ]
|
||||
then
|
||||
echo "Cannot 'update', not in the project top-level directory"
|
||||
echo "Cannot 'update', not in the project top-level directory" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@ -206,30 +209,19 @@ updateMode)
|
||||
for filePathAndName in $fileNameList
|
||||
do
|
||||
fileName=$(basename $filePathAndName)
|
||||
echo " 'src': $fileName"
|
||||
cd src
|
||||
$Script -a $fileName
|
||||
|
||||
echo " 'applications': $fileName"
|
||||
cd ../applications
|
||||
$Script -a $fileName
|
||||
|
||||
cd ..
|
||||
for subdir in src applications
|
||||
do
|
||||
echo " '$subdir': $fileName"
|
||||
(cd $subdir && $Script -a $fileName)
|
||||
done
|
||||
|
||||
# Just in case, remove the symbolic link as the last step
|
||||
unlink $filePathAndName
|
||||
done
|
||||
|
||||
;;
|
||||
|
||||
esac
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage rmdepMode all
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
48
wmake/wrmo
48
wmake/wrmo
@ -4,7 +4,7 @@
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2015 OpenFOAM Foundation
|
||||
# \\/ M anipulation |
|
||||
# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM.
|
||||
@ -26,7 +26,7 @@
|
||||
# wrmo
|
||||
#
|
||||
# Usage
|
||||
# wrmo [-a | -all | all] [file]
|
||||
# wrmo [-a | -all | all] [file1 [... fileN]]
|
||||
#
|
||||
# Description
|
||||
# Remove all .o files from the object directory tree corresponding to the
|
||||
@ -35,7 +35,7 @@
|
||||
# are removed for all platforms rather than just the current platform.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
Script=${0##*/}
|
||||
Script=${0##*/} # Note: need 'Script' for some functions in wmakeFunctions
|
||||
|
||||
# Source the wmake functions
|
||||
. ${0%/*}/scripts/wmakeFunctions
|
||||
@ -44,7 +44,11 @@ usage() {
|
||||
exec 1>&2
|
||||
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||
cat<<USAGE
|
||||
Usage: $Script [file]
|
||||
Usage: $Script [OPTION] [file1 [... fileN]]
|
||||
|
||||
options:
|
||||
-a | -all All platforms (current: $WM_OPTIONS)
|
||||
-h | -help Print the usage
|
||||
|
||||
Remove all .o files or remove .o file corresponding to <file>
|
||||
|
||||
@ -58,7 +62,7 @@ USAGE
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Default to processing only the current platform
|
||||
all=
|
||||
unset platform
|
||||
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
@ -66,17 +70,17 @@ do
|
||||
-h | -help)
|
||||
usage
|
||||
;;
|
||||
# Non-stop compilation, ignoring errors
|
||||
# All platforms
|
||||
-a | -all | all)
|
||||
all="all"
|
||||
platform=all
|
||||
shift
|
||||
;;
|
||||
-*)
|
||||
usage "unknown option: '$*'"
|
||||
;;
|
||||
usage "unknown option: '$1'"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
;;
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
@ -88,10 +92,10 @@ checkEnv
|
||||
# Remove the selected .o files from the object tree
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
findObjectDir .
|
||||
objectsDir=$(findObjectDir .) || exit 1 # Fatal
|
||||
|
||||
# With the -a/-all option replace the current platform with a wildcard
|
||||
if [ "$all" = "all" ]
|
||||
if [ "$platform" = all ]
|
||||
then
|
||||
objectsDir=$(echo $objectsDir | sed s%$WM_OPTIONS%*% )
|
||||
fi
|
||||
@ -99,18 +103,16 @@ fi
|
||||
if [ "$#" -eq 0 ]
|
||||
then
|
||||
echo "removing all .o files ..."
|
||||
find $objectsDir -name '*.o' -print | xargs -t rm 2>/dev/null
|
||||
find $objectsDir -name '*.o' -type f -delete
|
||||
else
|
||||
echo "removing .o files corresponding to $1 ..."
|
||||
rm $objectsDir/${1%%.*}.o
|
||||
echo "removing .o files corresponding to"
|
||||
echo " $@ ..."
|
||||
for file
|
||||
do
|
||||
rm $objectsDir/${file%%.*}.o
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Cleanup local variables and functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
unset Script usage
|
||||
|
||||
exit 0 # clean exit
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
Loading…
Reference in New Issue
Block a user