diff --git a/etc/bashrc b/etc/bashrc index 225f5e22ffecad2dbcce2e48bbf2e86cc0caf44e..78fe3bd97532fd8d71d4dba6dac216a828d6e1f9 100644 --- a/etc/bashrc +++ b/etc/bashrc @@ -180,6 +180,7 @@ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/ensight` _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/gperftools` _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` # Clean environment paths again. Only remove duplicates diff --git a/etc/config.csh/FFTW b/etc/config.csh/FFTW new file mode 100644 index 0000000000000000000000000000000000000000..514216e1bff676f8955c876296cd9a8f1a51c393 --- /dev/null +++ b/etc/config.csh/FFTW @@ -0,0 +1,71 @@ +#----------------------------------*-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/FFTW +# +# Description +# Setup file for FFTW include/libraries. +# Sourced from OpenFOAM-<VERSION>/etc/cshrc +# +# If using system-wide installations, use the following settings: +# +# fftw_version=fftw-system +# +# If the system fftw is unusable (eg, too old) and you don't +# have or want a ThirdParty installation: +# +# fftw_version=fftw-none +# +# If using a central installation, but not located under ThirdParty: +# - specify fftw-system +# - provide full paths for FFTW_ARCH_PATH +# +# 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 fftw_version=fftw-system + +setenv FFTW_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$fftw_version + +#------------------------------------------------------------------------------ +if ($?FOAM_VERBOSE && $?prompt) then + echo "Using fftw ($fftw_version) -> $FFTW_ARCH_PATH" +endif + +# If FFTW_ARCH_PATH does not end with '-system' or '-none', +# it is either located within ThirdParty, or a central installation +# outside of ThirdParty and must be added to the lib-path. + +set ending="${FFTW_ARCH_PATH:t}" +if ( "$ending" != "fftw-none" && "$ending" != "fftw-system" ) then + _foamAddLib $FFTW_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH +endif + +unset fftw_version ending + +#------------------------------------------------------------------------------ diff --git a/etc/config.sh/FFTW b/etc/config.sh/FFTW new file mode 100644 index 0000000000000000000000000000000000000000..74115fccfcaafaea1f2406394741a085a3c285c2 --- /dev/null +++ b/etc/config.sh/FFTW @@ -0,0 +1,77 @@ +#----------------------------------*-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/FFTW +# +# Description +# Setup file for FFTW include/libraries. +# Sourced from OpenFOAM-<VERSION>/etc/bashrc +# +# If using system-wide installations, use the following settings: +# +# fftw_version=fftw-system +# +# If the system fftw is unusable (eg, too old) and you don't +# have or want a ThirdParty installation: +# +# fftw_version=fftw-none +# +# If using a central installation, but not located under ThirdParty: +# - specify fftw-system +# - provide full paths for FFTW_ARCH_PATH +# +# Note +# When _foamAddLib is unset (eg, called from makeFFTW): +# - fftw_version variable is retained. +# - the LD_LIBRARY_PATH is not adjusted. +#------------------------------------------------------------------------------ + +fftw_version=fftw-system + +export FFTW_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$fftw_version + +#------------------------------------------------------------------------------ +if [ "$FOAM_VERBOSE" -a "$PS1" ] +then + echo "Using fftw ($fftw_version) -> $FFTW_ARCH_PATH" 1>&2 +fi + +if type _foamAddLib > /dev/null 2>&1 # normal sourcing +then + + # If FFTW_ARCH_PATH does not end with '-system' or '-none', + # it is either located within ThirdParty, or a central installation + # outside of ThirdParty and must be added to the lib-path. + + ending="${FFTW_ARCH_PATH_PATH##*-}" + if [ "$ending" != none -a "$ending" != system ] + then + _foamAddLib $FFTW_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH + fi + + unset fftw_version ending + +fi + +#------------------------------------------------------------------------------ diff --git a/etc/cshrc b/etc/cshrc index 30138fdb366f9a96c95937a263101f5b7a16702a..099662b296d71ca61c3826f8b2a16ce5226936ec 100644 --- a/etc/cshrc +++ b/etc/cshrc @@ -211,6 +211,7 @@ _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/ensight` _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/CGAL` +_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/FFTW` # Clean environment paths again. Only remove duplicates