diff --git a/bin/tools/foamConfigurePaths b/bin/tools/foamConfigurePaths index a85cff83f8b3f68d20dd7ea2c4e7995fdcd326a9..a27cb37219d6fa3bb37cd8be7a07e70244b21961 100755 --- a/bin/tools/foamConfigurePaths +++ b/bin/tools/foamConfigurePaths @@ -53,13 +53,17 @@ usage: ${0##*/} -fftwArchPath dir specify FFTW_ARCH_PATH -metis ver specify METIS_VERSION -metisArchPath dir specify METIS_ARCH_PATH - -paraview ver specify ParaView_VERSION (e.g. 3.12.0) - -paraviewInstall dir specify ParaView_DIR (e.g. /opt/paraviewopenfoam3120) - -scotch ver specify SCOTCH_VERSION (e.g. 6.0.0) - -scotchArchPath dir specify SCOTCH_ARCH_PATH (e.g. /opt/OpenFOAM-scotch-6.0.0/) + -paraview ver specify ParaView_VERSION (eg, 5.0.1) + -paraviewInstall dir specify ParaView_DIR (eg, /opt/paraviewopenfoam3120) + -scotch ver specify SCOTCH_VERSION (eg, scotch_6.0.4) + -scotchArchPath dir specify SCOTCH_ARCH_PATH (eg, /opt/OpenFOAM-scotch_6.0.4) + -vtk ver specify vtk_version (eg, VTK-7.1.0) + -mesa ver specify mesa_version (eg, mesa-13.0.1) * Adjust hardcoded installation paths and versions +- unless otherwise specified, the default mpi is SYSTEMOPENMPI + USAGE exit 1 } @@ -69,9 +73,11 @@ die() { exec 1>&2 echo - echo "Error: see '${0##*/} -help' for usage" + echo "Error encountered:" while [ "$#" -ge 1 ]; do echo " $1"; shift; done echo + echo "See '${0##*/} -help' for usage" + echo exit 1 } @@ -212,7 +218,7 @@ do shift ;; - -third[Pp]arty) + -[Tt]hird[Pp]arty | -[Tt]hird) # Replace WM_COMPILER_TYPE=... and WM_COMPILER=... [ "$#" -ge 2 ] || die "'$1' option requires an argument" replace etc/bashrc WM_COMPILER_TYPE ThirdParty WM_COMPILER "$2" @@ -220,7 +226,6 @@ do shift ;; - -boost) # Replace boost_version=... [ "$#" -ge 2 ] || die "'$1' option requires an argument" @@ -333,6 +338,22 @@ do shift ;; + -vtk) + # Replace vtk_version=... + [ "$#" -ge 2 ] || die "'$1' option requires an argument" + replace etc/config.sh/vtk vtk_version "$2" + adjusted=true + shift + ;; + + -mesa) + # Replace mesa_version=... + [ "$#" -ge 2 ] || die "'$1' option requires an argument" + replace etc/config.sh/vtk mesa_version "$2" + adjusted=true + shift + ;; + *) die "unknown option/argument: '$1'" ;; diff --git a/etc/bashrc b/etc/bashrc index 0cdf4031ba80722aabce9603d5562d83d1406b55..3f5d04e83bf773635b3dedcefc2cf66cd16c6589 100644 --- a/etc/bashrc +++ b/etc/bashrc @@ -170,6 +170,7 @@ _foamSource $WM_PROJECT_DIR/etc/config.sh/aliases # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ _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` diff --git a/etc/config.csh/unset b/etc/config.csh/unset index 88bdd3454eff250015cf83b34161849ee94dded9..b423a53d98f3b88a6fbfa59f64454500fbb82726 100644 --- a/etc/config.csh/unset +++ b/etc/config.csh/unset @@ -124,6 +124,7 @@ unsetenv ParaView_INCLUDE_DIR unsetenv ParaView_MAJOR unsetenv ParaView_VERSION unsetenv PV_PLUGIN_PATH +unsetenv VTK_DIR #------------------------------------------------------------------------------ # unset other ThirdParty environment variables @@ -136,6 +137,7 @@ unsetenv FFTW_ARCH_PATH unsetenv GPERFTOOLS_ARCH_PATH unsetenv GMP_ARCH_PATH unsetenv MPFR_ARCH_PATH +unsetenv MESA_ARCH_PATH unsetenv METIS_ARCH_PATH unsetenv SCOTCH_ARCH_PATH diff --git a/etc/config.csh/vtk b/etc/config.csh/vtk new file mode 100644 index 0000000000000000000000000000000000000000..bd39d000ec431e7337af4ffc49de0b9457045824 --- /dev/null +++ b/etc/config.csh/vtk @@ -0,0 +1,67 @@ +#----------------------------------*-sh-*-------------------------------------- +# ========= | +# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox +# \\ / O peration | +# \\ / A nd | Copyright (C) 2016 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/>. +# +# File +# etc/config.csh/vtk +# +# Description +# Setup file for VTK (and MESA) +# Sourced from OpenFOAM-<VERSION>/etc/cshrc +# +# The library path is not adjusted with the paths specified here do not exist +# +# Note +# When building OpenFOAM, any changes made here MUST be made in the +# equivalent config.sh version too, since that is the one which will +# be used during the build process. +# +#------------------------------------------------------------------------------ + +set vtk_version=VTK-7.1.0 +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 + +#------------------------------------------------------------------------------ +if ($?FOAM_VERBOSE && $?prompt) then + echo "Using vtk ($vtk_version) -> $VTK_ARCH_PATH" + echo "Using mesa ($mesa_version) -> $MESA_ARCH_PATH" +endif + +# Set paths if binaries are present +if ( -r $VTK_DIR ) then + _foamAddLib $VTK_DIR/lib$WM_COMPILER_LIB_ARCH +else + unset VTK_DIR +endif + +if ( -r $MESA_ARCH_PATH ) then + _foamAddLib $MESA_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH +else + unset MESA_ARCH_PATH +endif + +unset vtk_version mesa_version + +#------------------------------------------------------------------------------ diff --git a/etc/config.sh/paraview b/etc/config.sh/paraview index a8df5e7d9c951d955a76cccb4c16543a64b0a601..188d505b0f182ca1ea3560c5c5a42ebbfbb31cdb 100644 --- a/etc/config.sh/paraview +++ b/etc/config.sh/paraview @@ -119,7 +119,7 @@ then export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$pvName - # Set paths if binaries or source are present + # Set paths if binaries are present if [ -r $ParaView_DIR ] then pvLibDir=$ParaView_DIR/lib/$pvMajor diff --git a/etc/config.sh/unset b/etc/config.sh/unset index e7b834baeb784621e7d34587249c79f1b2c91e7f..6bc4a517ab84376a0e0341c0124d7cc91dbb3246 100644 --- a/etc/config.sh/unset +++ b/etc/config.sh/unset @@ -120,6 +120,7 @@ unset ParaView_INCLUDE_DIR unset ParaView_MAJOR unset ParaView_VERSION unset PV_PLUGIN_PATH +unset VTK_DIR #------------------------------------------------------------------------------ # unset other ThirdParty environment variables @@ -132,6 +133,7 @@ unset FFTW_ARCH_PATH unset GPERFTOOLS_ARCH_PATH unset GMP_ARCH_PATH unset MPFR_ARCH_PATH +unset MESA_ARCH_PATH unset METIS_ARCH_PATH unset SCOTCH_ARCH_PATH diff --git a/etc/config.sh/vtk b/etc/config.sh/vtk new file mode 100644 index 0000000000000000000000000000000000000000..67ce07dfc72c6d18287b30203f3d0d62f3e4cee8 --- /dev/null +++ b/etc/config.sh/vtk @@ -0,0 +1,72 @@ +#----------------------------------*-sh-*-------------------------------------- +# ========= | +# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox +# \\ / O peration | +# \\ / A nd | Copyright (C) 2016 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/>. +# +# File +# etc/config.sh/vtk +# +# Description +# Setup file for VTK (and MESA) +# Sourced from OpenFOAM-<VERSION>/etc/bashrc +# +# The library path is not adjusted with the paths specified here do not exist +# +# Note +# When _foamAddLib is unset +# - the vtk_version, mesa_version variables are retained. +#------------------------------------------------------------------------------ + +vtk_version=VTK-7.1.0 +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 + +#------------------------------------------------------------------------------ +if [ "$FOAM_VERBOSE" -a "$PS1" ] +then + echo "Using vtk ($vtk_version) -> $VTK_ARCH_PATH" 1>&2 + echo "Using mesa ($mesa_version) -> $MESA_ARCH_PATH" 1>&2 +fi + +if type _foamAddLib > /dev/null 2>&1 # normal sourcing +then + + # Set paths if binaries are present + if [ -r $VTK_DIR ] + then + _foamAddLib $VTK_DIR/lib$WM_COMPILER_LIB_ARCH + else + unset VTK_DIR + fi + + if [ -r $MESA_ARCH_PATH ] + then + _foamAddLib $MESA_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH + else + unset MESA_ARCH_PATH + fi + + unset vtk_version mesa_version +fi + +#------------------------------------------------------------------------------ diff --git a/etc/cshrc b/etc/cshrc index 54c74ad3f96899fd46d511391405c2d23eb66045..d5f315ee1628761c4b0c2aed36e6c0b70c5c0ccf 100644 --- a/etc/cshrc +++ b/etc/cshrc @@ -215,6 +215,7 @@ _foamSource $WM_PROJECT_DIR/etc/config.csh/aliases # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ _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` ##_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/ADIOS`