From ac394e5a8fff1f40deb051c00e4f128c61afe843 Mon Sep 17 00:00:00 2001
From: andy <a.heather@opencfd.co.uk>
Date: Tue, 27 May 2008 14:11:35 +0100
Subject: [PATCH] re-instating earlier paraview build script, and moving to
 tools/bin

---
 bin/{ => tools}/buildParaView3.2.1     |   0
 bin/tools/buildParaView3.3             | 193 -------------------------
 bin/{ => tools}/buildParaView3.3-cvs   |   0
 bin/{ => tools}/buildParaViewFunctions |  60 +++++---
 4 files changed, 38 insertions(+), 215 deletions(-)
 rename bin/{ => tools}/buildParaView3.2.1 (100%)
 delete mode 100755 bin/tools/buildParaView3.3
 rename bin/{ => tools}/buildParaView3.3-cvs (100%)
 rename bin/{ => tools}/buildParaViewFunctions (83%)
 mode change 100644 => 100755

diff --git a/bin/buildParaView3.2.1 b/bin/tools/buildParaView3.2.1
similarity index 100%
rename from bin/buildParaView3.2.1
rename to bin/tools/buildParaView3.2.1
diff --git a/bin/tools/buildParaView3.3 b/bin/tools/buildParaView3.3
deleted file mode 100755
index 028320139df..00000000000
--- a/bin/tools/buildParaView3.3
+++ /dev/null
@@ -1,193 +0,0 @@
-#!/bin/sh
-set -x
-
-# ParaView 3.x build script
-# - normally run from folder above source folder
-
-# use the version number and the installation location specified
-# in etc/apps/paraview3/{bashrc,cshrc}
-: ${ParaView_VERSION:=3.3}
-: ${ParaView_INST_DIR:=$WM_PROJECT_INST_DIR/paraview-$ParaView_VERSION}
-
-#!!User:
-# set to location of paraview sources and where to build paraview
-# PARAVIEW_SRC_DIR=$WM_PROJECT_INST_DIR/src/other/ParaView3
-PARAVIEW_SRC_DIR=/data/cfd2/work/cfdadmin/cvs/ParaView3
-PARAVIEW_BUILD_DIR=$PARAVIEW_SRC_DIR/platforms
-
-# TODO: extract the version number from the CMakeLists.txt variables:
-#       PARAVIEW_VERSION_MAJOR, and PARAVIEW_VERSION_MINOR
-# ParaView_VERSION="3.3"
-
-# SET(PARAVIEW_VERSION_MAJOR 3)
-# SET(PARAVIEW_VERSION_MINOR 3)
-
-#!!User:
-# select desired features, include Python whenever possible
-VERBOSE=OFF
-INCLUDE_MPI=OFF
-MPI_MAX_PROCS=32
-INCLUDE_PYTHON=ON
-INCLUDE_MESA=OFF
-
-# initialisation
-oldpwd=$PWD
-unset OBJ_ADD
-
-# always build shared libraries
-CMAKE_VARIABLES="-DBUILD_SHARED_LIBS:BOOL=ON"
-
-if [ "$VERBOSE" = ON ]; then
-   CMAKE_VARIABLES="$CMAKE_VARIABLES -DCMAKE_VERBOSE_MAKEFILE=TRUE"
-fi
-
-#****************************************************************************
-# FIX: Attempt to get around seg-fault when building documentation
-#CMAKE_VARIABLES="$CMAKE_VARIABLES -BUILD_DOCUMENTATION-ADVANCED:INTERNAL=0"
-#****************************************************************************
-
-# set python specific options
-# NOTE - you'll need both python and python-devel packages installed
-#      - might need to create a symbolic link to the python library
-#        - anything after the '.so' gets in the way...
-#      - might need to run cmake -> make twice to pick up all the links...
-if [ "$INCLUDE_PYTHON" = ON ]; then
-   PYTHON_INCLUDE_DIR=/usr/include/python2.5
-   PYTHON_LIBRARY=/usr/lib$WM_COMPILER_LIB_ARCH/libpython2.5.so
-
-   if [ -d "$PYTHON_INCLUDE_DIR" ]; then
-      OBJ_ADD="$OBJ_ADD-py"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DPARAVIEW_ENABLE_PYTHON=ON"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DPYTHON_INCLUDE_PATH=$PYTHON_INCLUDE_DIR"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DPYTHON_LIBRARY=$PYTHON_LIBRARY"
-   else
-      echo "non-existent PYTHON_INCLUDE_DIR: $PYTHON_INCLUDE_DIR"
-   fi
-fi
-
-# set MPI specific options
-if [ "$INCLUDE_MPI" = ON ]; then
-   case "$WM_MPLIB" in
-   OPENMPI)
-      MPI_INCLUDE_PATH=$OPENMPI_ARCH_PATH/include
-      MPI_LIBRARY=$OPENMPI_ARCH_PATH/lib/libmpi.so
-      MPI_RUN=$OPENMPI_ARCH_PATH/bin/mpirun
-      ;;
-   LAM)
-      MPI_INCLUDE_PATH=$LAM_ARCH_PATH/include
-      MPI_LIBRARY=$LAM_ARCH_PATH/lib/libmpi.so
-      MPI_RUN=$LAM_ARCH_PATH/bin/mpirun
-      ;;
-   MPICH)
-      MPI_INCLUDE_PATH=$MPICH_ARCH_PATH/include
-      MPI_LIBRARY=$MPICH_ARCH_PATH/lib/libmpich.so
-      MPI_RUN=$MPICH_ARCH_PATH/bin/mpirun
-      ;;
-   *)
-      unset INCLUDE_MPI
-      ;;
-   esac
-
-   if [ "$INCLUDE_MPI" ]; then
-      OBJ_ADD="$OBJ_ADD-mpi"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DVTK_USE_MPI=ON"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DPARAVIEW_USE_MPI=ON"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DMPI_INCLUDE_PATH=$MPI_INCLUDE_PATH"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DMPI_LIBRARY=$MPI_LIBRARY"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DVTK_MPIRUN_EXE=$MPI_RUN"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DVTK_MPI_MAX_NUMPROCS=$MPI_MAX_PROCS"
-   else
-      echo "unknown/unsupported mpi: $WM_MPLIB"
-   fi
-fi
-
-# set MESA specific options
-if [ "$INCLUDE_MESA" = ON ]; then
-   MESA_INCLUDE_DIR=/usr/include/GL
-   MESA_LIBRARY=/usr/lib$WM_COMPILER_LIB_ARCH/libOSMesa.so
-
-   if [ -d "$MESA_INCLUDE_DIR" -a -f "$MESA_LIBRARY" ]; then
-      OBJ_ADD="$OBJ_ADD-mesa"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DVTK_OPENGL_HAS_OSMESA=ON"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DOSMESA_INCLUDE_DIR=$MESA_INCLUDE_DIR"
-      CMAKE_VARIABLES="$CMAKE_VARIABLES -DOSMESA_LIBRARY=$MESA_LIBRARY"
-   else
-      echo "no MESA information found ... skipping"
-   fi
-fi
-
-
-# finalize the build/install environment
-PARAVIEW_OBJ_DIR=$PARAVIEW_BUILD_DIR/$WM_OPTIONS$OBJ_ADD
-PARAVIEW_APP_DIR=$ParaView_INST_DIR/platforms/$WM_OPTIONS$OBJ_ADD
-
-# create paraview build folder
-mkdir -p $PARAVIEW_OBJ_DIR
-cd $PARAVIEW_OBJ_DIR
-
-#
-# 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
-fi
-
-
-if [ -r /proc/cpuinfo ]; then
-   WM_NCOMPPROCS=`egrep "^processor" /proc/cpuinfo | wc -l`
-
-   [ $WM_NCOMPPROCS -le 8 ] || WM_NCOMPPROCS=8
-
-   make -j $WM_NCOMPPROCS
-else
-   make
-fi
-
-
-if [ -e "$PARAVIEW_OBJ_DIR/bin/paraview" ]; then
-   echo "Info: Installation completed - proceeding to install"
-   make install
-
-   # copy VTK headers to install directory
-   echo "Info: Copying VTK headers"
-   cp -r $PARAVIEW_SRC_DIR/VTK $PARAVIEW_APP_DIR
-   cp -r $PARAVIEW_OBJ_DIR/VTK/vtkConfigure.h $PARAVIEW_APP_DIR/VTK
-   cp -r $PARAVIEW_OBJ_DIR/VTK/vtkstd $PARAVIEW_APP_DIR/VTK
-
-   # copy all .so files to the lib folder
-   # - NOTE: shouldn't be necessary - but some libs not copied over to the
-   # install folder
-##   echo "Info: Copying libs"
-##   cp $PARAVIEW_OBJ_DIR/bin/*.so* $PARAVIEW_APP_DIR/lib/paraview-$ParaView_VERSION
-
-   echo "Info: Copying ParaViewConfig.cmake"
-   cp $PARAVIEW_OBJ_DIR/ParaViewConfig.cmake $PARAVIEW_APP_DIR
-
-   if [ "$OBJ_ADD" ]; then
-      echo "Creating symbolic link in $ParaView_INST_DIR/platforms from $WM_OPTIONS$OBJ_ADD to $WM_OPTIONS"
-      ( cd $ParaView_INST_DIR/platforms && ln -s $WM_OPTIONS$OBJ_ADD $WM_OPTIONS )
-   fi
-
-   echo "Installation complete"
-   echo "Set environment variables:"
-   echo " - ParaView_DIR to $PARAVIEW_APP_DIR"
-   echo " - ParaView_INST_DIR to $PARAVIEW_APP_DIR"
-   echo " - PV_PLUGIN_PATH to $FOAM_LIBBIN"
-   echo "Add $ParaView_INST_DIR/bin to PATH"
-   echo "Add $ParaView_INST_DIR/lib to LD_LIBRARY_PATH"
-
-   echo "done."
-else
-   echo "*** Error: Installation failed - see output window"
-fi
-
-# finalisation
-cd $oldpwd
-
-# ----------------------------------------------------------------- end-of-file
diff --git a/bin/buildParaView3.3-cvs b/bin/tools/buildParaView3.3-cvs
similarity index 100%
rename from bin/buildParaView3.3-cvs
rename to bin/tools/buildParaView3.3-cvs
diff --git a/bin/buildParaViewFunctions b/bin/tools/buildParaViewFunctions
old mode 100644
new mode 100755
similarity index 83%
rename from bin/buildParaViewFunctions
rename to bin/tools/buildParaViewFunctions
index 50130800968..98f63346e31
--- a/bin/buildParaViewFunctions
+++ b/bin/tools/buildParaViewFunctions
@@ -48,6 +48,7 @@ addCMakeVariable ()
     if [ -z "$1" ]; then
         echo "*** Error: addCMakeVariable()"
         echo "    No variable to add"
+        exit 1
     fi
 
     CMAKE_VARIABLES="$CMAKE_VARIABLES -D$1"
@@ -56,29 +57,37 @@ addCMakeVariable ()
 
 addMpiSupport ()
 {
-    OBJ_ADD="$OBJ_ADD-mpi"
-
-   # using OpenFOAM variables to identify location of MPI libraries
-   if [ "$WM_MPLIB" = "OPENMPI" ]; then
+    # using OpenFOAM variables to identify location of MPI libraries
+    case "$WM_MPLIB" in
+    OPENMPI)
         MPI_INCLUDE_PATH=$OPENMPI_ARCH_PATH/include
         MPI_LIBRARY=$OPENMPI_ARCH_PATH/lib/libmpi.so
         MPI_RUN=$OPENMPI_ARCH_PATH/bin/mpirun
-    elif [ "$WM_MPLIB" = "LAM" ]; then
+        ;;
+    LAM)
         MPI_INCLUDE_PATH=$LAM_ARCH_PATH/include
         MPI_LIBRARY=$LAM_ARCH_PATH/lib/libmpi.so
         MPI_RUN=$LAM_ARCH_PATH/bin/mpirun
-    elif [ "$WM_MPLIB" = "MPICH" ]; then
+        ;;
+    MPICH)
         MPI_INCLUDE_PATH=$MPICH_ARCH_PATH/include
         MPI_LIBRARY=$MPICH_ARCH_PATH/lib/libmpich.so
         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
-
-    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"
 }
 
 
@@ -130,14 +139,18 @@ addPythonSupport ()
 
 addMesaSupport ()
 {
-    OBJ_ADD="$OBJ_ADD-mesa"
-
     MESA_INCLUDE_DIR=/usr/include/GL
     MESA_LIBRARY=/usr/lib$WM_COMPILER_LIB_ARCH/libOSMesa.so
 
-    addCMakeVariable "VTK_OPENGL_HAS_OSMESA=ON"
-    addCMakeVariable "OSMESA_INCLUDE_DIR=$MESA_INCLUDE_DIR"
-    addCMakeVariable "OSMESA_LIBRARY=$MESA_LIBRARY"
+    if [ -d "$MESA_INCLUDE_DIR" -a -f "$MESA_LIBRARY" ]; then
+        OBJ_ADD="$OBJ_ADD-mesa"
+        addCMakeVariable "VTK_OPENGL_HAS_OSMESA=ON"
+        addCMakeVariable "OSMESA_INCLUDE_DIR=$MESA_INCLUDE_DIR"
+        addCMakeVariable "OSMESA_LIBRARY=$MESA_LIBRARY"
+    else
+        echo "*** Error: no MESA information found"
+        exit 1
+    fi
 }
 
 
@@ -168,10 +181,13 @@ buildParaView ()
     echo "    Target         : $PARAVIEW_OBJ_DIR"
 
     # make paraview
-    cmake \
-        -DCMAKE_INSTALL_PREFIX=$PARAVIEW_APP_DIR \
-        $CMAKE_VARIABLES \
-        $PARAVIEW_SRC_DIR
+    # 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
+    fi
 
     if [ -r /proc/cpuinfo ]; then
         WM_NCOMPPROCS=`egrep "^processor" /proc/cpuinfo | wc -l`
-- 
GitLab