ENH: out of source build for paraview plugins

- more consistent with the rest of the OpenFOAM source tree

- improve wmake / wclean behaviour
This commit is contained in:
Mark Olesen
2016-06-20 11:18:24 +02:00
parent f317958d5a
commit 726aa8cdb9
8 changed files with 71 additions and 24 deletions

View File

@ -6,4 +6,7 @@ wclean libso vtkPVReaders
PVblockMeshReader/Allwclean PVblockMeshReader/Allwclean
PVFoamReader/Allwclean PVFoamReader/Allwclean
# remove dummy directory (see Allwmake)
rmdir Make 2>/dev/null
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -53,6 +53,10 @@ case "$ParaView_VERSION" in
wmake $targetType vtkPVReaders wmake $targetType vtkPVReaders
PVblockMeshReader/Allwmake $* PVblockMeshReader/Allwmake $*
PVFoamReader/Allwmake $* PVFoamReader/Allwmake $*
# dummy directory to trigger proper 'wclean all' behaviour
# - the Allwclean will otherwise not be used
mkdir -p Make
) )
fi fi
;; ;;

View File

@ -1,11 +1,19 @@
#!/bin/sh #!/bin/sh
cd ${0%/*} || exit 1 # Run from this directory cd ${0%/*} || exit 1 # Run from this directory
# Source the wmake functions
. $WM_DIR/scripts/wmakeFunctions
set -x set -x
# deal with client/server vs combined plugins # deal with client/server vs combined plugins
rm -f $FOAM_LIBBIN/libPVFoamReader* 2>/dev/null rm -f $FOAM_LIBBIN/libPVFoamReader* 2>/dev/null
rm -rf PVFoamReader/Make rm -rf PVFoamReader/Make # safety: old build location
wclean libso vtkPVFoam wclean libso vtkPVFoam
# Where are the generated files stored?
findObjectDir $PWD # remove entire top-level
rm -rf "$objectsDir" > /dev/null 2>&1
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -4,18 +4,30 @@ cd ${0%/*} || exit 1 # Run from this directory
# Parse arguments for library compilation # Parse arguments for library compilation
targetType=libso targetType=libso
. $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments . $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
set -x
# Source the wmake functions
. $WM_DIR/scripts/wmakeFunctions
# C++ compiler for CMake
[ -n "$WM_CXX" ] && export CXX="$WM_CXX"
set -x
if [ -d "$ParaView_DIR" -a -r "$ParaView_DIR" ] if [ -d "$ParaView_DIR" -a -r "$ParaView_DIR" ]
then then
wmake $targetType vtkPVFoam wmake $targetType vtkPVFoam
sourceDir=$PWD/PVFoamReader
# Where are any generated files stored?
findObjectDir $sourceDir
( (
cd PVFoamReader mkdir -p $objectsDir \
mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1 && cd $objectsDir \
cd Make/$WM_OPTIONS && cmake $sourceDir \
cmake ../.. && make
make ) || {
) echo
echo "WARNING: incomplete build of ParaView OpenFOAM plugin"
}
fi fi
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -1,11 +1,19 @@
#!/bin/sh #!/bin/sh
cd ${0%/*} || exit 1 # Run from this directory cd ${0%/*} || exit 1 # Run from this directory
# Source the wmake functions
. $WM_DIR/scripts/wmakeFunctions
set -x set -x
# deal with client/server vs combined plugins # deal with client/server vs combined plugins
rm -f $FOAM_LIBBIN/libPVblockMeshReader* 2>/dev/null rm -f $FOAM_LIBBIN/libPVblockMeshReader* 2>/dev/null
rm -rf PVblockMeshReader/Make rm -rf PVblockMeshReader/Make # safety: old build location
wclean libso vtkPVblockMesh wclean libso vtkPVblockMesh
# Where are the generated files stored?
findObjectDir $PWD # remove entire top-level
rm -rf "$objectsDir" > /dev/null 2>&1
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -4,18 +4,30 @@ cd ${0%/*} || exit 1 # Run from this directory
# Parse arguments for library compilation # Parse arguments for library compilation
targetType=libso targetType=libso
. $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments . $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
set -x
# Source the wmake functions
. $WM_DIR/scripts/wmakeFunctions
# C++ compiler for CMake
[ -n "$WM_CXX" ] && export CXX="$WM_CXX"
set -x
if [ -d "$ParaView_DIR" -a -r "$ParaView_DIR" ] if [ -d "$ParaView_DIR" -a -r "$ParaView_DIR" ]
then then
wmake $targetType vtkPVblockMesh wmake $targetType vtkPVblockMesh
sourceDir=$PWD/PVblockMeshReader
# Where are any generated files stored?
findObjectDir $sourceDir
( (
cd PVblockMeshReader mkdir -p $objectsDir \
mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1 && cd $objectsDir \
cd Make/$WM_OPTIONS && cmake $sourceDir \
cmake ../.. && make
make ) || {
) echo
echo "WARNING: incomplete build of ParaView BlockMesh plugin"
}
fi fi
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -4,8 +4,8 @@ cd ${0%/*} || exit 1 # Run from this directory
# Source the wmake functions # Source the wmake functions
. $WM_DIR/scripts/wmakeFunctions . $WM_DIR/scripts/wmakeFunctions
(
# Where are the generated files stored? # Where are the generated files stored?
findObjectDir dummy.C findObjectDir $PWD
rm -rf "$objectsDir" > /dev/null 2>&1 rm -rf "$objectsDir" > /dev/null 2>&1
)
#------------------------------------------------------------------------------

View File

@ -4,11 +4,11 @@ cd ${0%/*} || exit 1 # Run from this directory
# Source the wmake functions # Source the wmake functions
. $WM_DIR/scripts/wmakeFunctions . $WM_DIR/scripts/wmakeFunctions
# Store current directory # The source directory
sourceDir=$PWD sourceDir=$PWD
# Where are any generated files stored? # Where are any generated files stored?
findObjectDir dummy.C findObjectDir $sourceDir
depDir="$objectsDir" depDir="$objectsDir"
echo echo