mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
updates to ParaView build scripts
This commit is contained in:
@ -31,32 +31,30 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
addCMakeVariable ()
|
||||
{
|
||||
while [ -n "$1" ]
|
||||
do
|
||||
CMAKE_VARIABLES="$CMAKE_VARIABLES -D$1"
|
||||
shift
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
initialiseVariables ()
|
||||
{
|
||||
CMAKE_VARIABLES=""
|
||||
PWD=`pwd`
|
||||
OBJ_ADD=""
|
||||
unset CMAKE_VARIABLES OBJ_ADD
|
||||
|
||||
if [ "$VERBOSE" = "ON" ]; then
|
||||
if [ "$VERBOSE" = ON ]; then
|
||||
addCMakeVariable "CMAKE_VERBOSE_MAKEFILE=TRUE"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
addCMakeVariable ()
|
||||
{
|
||||
if [ -z "$1" ]; then
|
||||
echo "*** Error: addCMakeVariable()"
|
||||
echo " No variable to add"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
CMAKE_VARIABLES="$CMAKE_VARIABLES -D$1"
|
||||
}
|
||||
|
||||
|
||||
addMpiSupport ()
|
||||
{
|
||||
[ "$INCLUDE_MPI" = ON ] || return
|
||||
|
||||
# using OpenFOAM variables to identify location of MPI libraries
|
||||
case "$WM_MPLIB" in
|
||||
OPENMPI)
|
||||
@ -75,24 +73,25 @@ addMpiSupport ()
|
||||
MPI_RUN=$MPICH_ARCH_PATH/bin/mpirun
|
||||
;;
|
||||
*)
|
||||
|
||||
if [ "$INCLUDE_MPI" ]; then
|
||||
OBJ_ADD="$OBJ_ADD-mpi"
|
||||
addCMakeVariable "VTK_USE_MPI=ON"
|
||||
addCMakeVariable "PARAVIEW_USE_MPI=ON"
|
||||
addCMakeVariable "MPI_INCLUDE_PATH=$MPI_INCLUDE_PATH"
|
||||
addCMakeVariable "MPI_LIBRARY=$MPI_LIBRARY"
|
||||
addCMakeVariable "VTK_MPIRUN_EXE=$MPI_RUN"
|
||||
addCMakeVariable "VTK_MPI_MAX_NUMPROCS=$MPI_MAX_PROCS"
|
||||
else
|
||||
echo "*** Error: unknown/unsupported mpi: $WM_MPLIB"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
OBJ_ADD="$OBJ_ADD-mpi"
|
||||
addCMakeVariable "VTK_USE_MPI=ON"
|
||||
addCMakeVariable "PARAVIEW_USE_MPI=ON"
|
||||
addCMakeVariable "MPI_INCLUDE_PATH=$MPI_INCLUDE_PATH"
|
||||
addCMakeVariable "MPI_LIBRARY=$MPI_LIBRARY"
|
||||
addCMakeVariable "VTK_MPIRUN_EXE=$MPI_RUN"
|
||||
addCMakeVariable "VTK_MPI_MAX_NUMPROCS=$MPI_MAX_PROCS"
|
||||
}
|
||||
|
||||
|
||||
addPythonSupport ()
|
||||
{
|
||||
[ "$INCLUDE_PYTHON" = ON ] || return
|
||||
|
||||
WHICH_PYTHON=`which python`
|
||||
if [ -n "$WHICH_PYTHON" ]; then
|
||||
OBJ_ADD="$OBJ_ADD-py"
|
||||
@ -139,6 +138,8 @@ addPythonSupport ()
|
||||
|
||||
addMesaSupport ()
|
||||
{
|
||||
[ "$INCLUDE_MESA" = ON ] || return
|
||||
|
||||
MESA_INCLUDE_DIR=/usr/include/GL
|
||||
MESA_LIBRARY=/usr/lib$WM_COMPILER_LIB_ARCH/libOSMesa.so
|
||||
|
||||
@ -157,36 +158,60 @@ addMesaSupport ()
|
||||
buildParaView ()
|
||||
{
|
||||
# set general options
|
||||
addCmakeVariable "DBUILD_SHARED_LIBS:BOOL=ON"
|
||||
addCMakeVariable "BUILD_SHARED_LIBS:BOOL=ON"
|
||||
|
||||
# set paraview environment
|
||||
PARAVIEW_SRC_DIR=$PWD/$PARAVIEW_SRC
|
||||
#PARAVIEW_OBJ_DIR=$PARAVIEW_SRC_DIR/platforms/$WM_OPTIONS/obj$OBJ_ADD
|
||||
unset PARAVIEW_SRC_DIR
|
||||
for i in $PWD $WM_PROJECT_INST_DIR
|
||||
do
|
||||
if [ -d $i/$PARAVIEW_SRC ]
|
||||
then
|
||||
PARAVIEW_SRC_DIR=$i/$PARAVIEW_SRC
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
[ -d "$PARAVIEW_SRC_DIR" ] || {
|
||||
echo "did not find $PARAVIEW_SRC in these directories:"
|
||||
echo " PWD=$PWD"
|
||||
echo " WM_PROJECT_INST_DIR=$WM_PROJECT_INST_DIR"
|
||||
echo "abort build"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# PARAVIEW_OBJ_DIR=$PARAVIEW_SRC_DIR/platforms/$WM_OPTIONS/obj$OBJ_ADD
|
||||
PARAVIEW_OBJ_DIR=$PARAVIEW_SRC_DIR/platforms/$WM_OPTIONS
|
||||
|
||||
# remove existing build folder if present
|
||||
if [ -e "$PARAVIEW_OBJ_DIR" ]; then
|
||||
rm -rf $PARAVIEW_OBJ_DIR
|
||||
fi
|
||||
# provide a shortcut for repeated builds - use with caution
|
||||
if [ "$CMAKE_SKIP" = YES ]
|
||||
then
|
||||
|
||||
# create paraview build folder
|
||||
mkdir -p $PARAVIEW_OBJ_DIR
|
||||
cd $PARAVIEW_OBJ_DIR
|
||||
# change to build folder
|
||||
cd $PARAVIEW_OBJ_DIR || exit 1
|
||||
|
||||
echo "Building $PARAVIEW_SRC"
|
||||
echo " MPI support : $INCLUDE_MPI"
|
||||
echo " Python support : $INCLUDE_PYTHON"
|
||||
echo " MESA support : $INCLUDE_MESA"
|
||||
echo " Source : $PARAVIEW_SRC_DIR"
|
||||
echo " Target : $PARAVIEW_OBJ_DIR"
|
||||
else
|
||||
|
||||
# make paraview
|
||||
# provide a backdoor to skip cmake for repeated builds
|
||||
if [ -z "$build_no_cmake" ]; then
|
||||
cmake \
|
||||
-DCMAKE_INSTALL_PREFIX=$PARAVIEW_APP_DIR \
|
||||
$CMAKE_VARIABLES \
|
||||
$PARAVIEW_SRC_DIR
|
||||
# remove existing build folder if present
|
||||
if [ -e "$PARAVIEW_OBJ_DIR" ]; then
|
||||
rm -rf $PARAVIEW_OBJ_DIR
|
||||
fi
|
||||
|
||||
# create paraview build folder
|
||||
mkdir -p $PARAVIEW_OBJ_DIR
|
||||
cd $PARAVIEW_OBJ_DIR
|
||||
|
||||
echo "Building $PARAVIEW_SRC"
|
||||
echo " MPI support : $INCLUDE_MPI"
|
||||
echo " Python support : $INCLUDE_PYTHON"
|
||||
echo " MESA support : $INCLUDE_MESA"
|
||||
echo " Source : $PARAVIEW_SRC_DIR"
|
||||
echo " Target : $PARAVIEW_OBJ_DIR"
|
||||
|
||||
# make paraview
|
||||
cmake \
|
||||
-DCMAKE_INSTALL_PREFIX=$PARAVIEW_APP_DIR \
|
||||
$CMAKE_VARIABLES \
|
||||
$PARAVIEW_SRC_DIR
|
||||
fi
|
||||
|
||||
if [ -r /proc/cpuinfo ]; then
|
||||
@ -217,10 +242,10 @@ installParaView ()
|
||||
-print
|
||||
|
||||
# create a softlink to the $PARAVIEW_OBJ_DIR/bin folder
|
||||
# - work-around for chosen install location
|
||||
# - workaround for chosen install location
|
||||
echo " Creating paraview $PARAVIEW_MAJOR_VERSION soft link to /bin"
|
||||
( mkdir lib && cd lib && ln -s ../bin \
|
||||
paraview-$PARAVIEW_MAJOR_VERSION )
|
||||
( mkdir lib && cd lib && ln -s ../bin \
|
||||
paraview-$PARAVIEW_MAJOR_VERSION )
|
||||
|
||||
# info on symlinks to screen
|
||||
echo ""
|
||||
@ -231,7 +256,16 @@ installParaView ()
|
||||
echo " - ParaView_DIR to $PARAVIEW_OBJ_DIR"
|
||||
echo " - PV_PLUGIN_PATH to $FOAM_LIBBIN"
|
||||
echo " Add $PARAVIEW_OBJ_DIR/bin to PATH"
|
||||
#echo " Add $ParaView_INST_DIR/lib to LD_LIBRARY_PATH"
|
||||
# echo " Add $ParaView_INST_DIR/lib to LD_LIBRARY_PATH"
|
||||
echo " ---"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
# for good measure - clear a few variables before using any of the functions
|
||||
|
||||
unset VERBOSE INCLUDE_MPI INCLUDE_PYTHON INCLUDE_MESA PYTHON_LIBRARY
|
||||
unset CMAKE_VARIABLES OBJ_ADD
|
||||
unset CMAKE_SKIP
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user