diff --git a/Allclean b/Allclean
index b50475c..4a9fb4a 100755
--- a/Allclean
+++ b/Allclean
@@ -7,26 +7,14 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# Allclean
#
# Description
-# Clean script for ThirdParty applications and libraries
+# Clean script for ThirdParty applications/libraries
#
# ----------------------------------------------
# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
@@ -94,6 +82,19 @@ do
done
+# Clean various packages via 'wclean'
+for i in libccmio*/Make kahip*/lib/Make
+do
+ [ -d "$i" ] && (
+ echo
+ echo "${i%/Make}"
+ echo " wclean"
+ echo
+ cd ${i%/Make} && wclean
+ )
+done
+
+
# Clean out-of-source build directories
if [ -d build ]
then
diff --git a/Allwmake b/Allwmake
index 06fc4ff..1d0c9d1 100755
--- a/Allwmake
+++ b/Allwmake
@@ -7,26 +7,14 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# Allwmake
#
# Description
-# Build script for ThirdParty
+# Build script for ThirdParty applications/libraries
#
# ----------------------------------------------
# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
@@ -65,8 +53,7 @@ warnBuildIssues()
warnNotFound()
{
- echo " Optional component ($1) was not found"
- echo
+ echo "Optional component ($1) was not found"
}
#------------------------------------------------------------------------------
@@ -101,20 +88,20 @@ fi
echo
echo ========================================
-echo "Build Scotch decomposition library $SCOTCH_VERSION"
+echo "Scotch decomposition ($SCOTCH_VERSION)"
echo " $SCOTCH_ARCH_PATH"
SCOTCH_SOURCE_DIR=$sourceBASE/$SCOTCH_VERSION
# Needs generalizing, but works fairly well
-scotchMakefile=../../etc/wmakeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM
+scotchMakefile=../../etc/makeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM
if [ -f $SCOTCH_ARCH_PATH/include/scotch.h \
-a -r $FOAM_EXT_LIBBIN/libscotch.so \
-a -r $FOAM_EXT_LIBBIN/libscotcherrexit.so ]
then
- echo " scotch header in $SCOTCH_ARCH_PATH/include"
- echo " scotch libs in $FOAM_EXT_LIBBIN"
+ echo " scotch include: $SCOTCH_ARCH_PATH/include"
+ echo " scotch library: $FOAM_EXT_LIBBIN"
elif [ -d "$SCOTCH_SOURCE_DIR" ]
then
(
@@ -145,6 +132,9 @@ then
export CCS="${CC:-$WM_CC}" # CCS (serial compiler) default=$(CC)
export CCP=$(whichMpicc) # CCP (parallel compiler) default=mpicc
+ # Consistency for Intel-MPI and non-icc compilers
+ [ -n "$I_MPI_CC" ] || export I_MPI_CC="${CC:-$WM_CC}"
+
make realclean 2>/dev/null # Extra safety
make -j $WM_NCOMPPROCS scotch \
&& make \
@@ -173,15 +163,15 @@ if [ "${FOAM_MPI:-dummy}" != dummy ] && \
then
echo
echo ========================================
- echo "Build pt-scotch decomposition library $SCOTCH_VERSION (with $FOAM_MPI)"
+ echo "pt-scotch decomposition ($SCOTCH_VERSION with $FOAM_MPI)"
echo " $SCOTCH_ARCH_PATH"
if [ -f $SCOTCH_ARCH_PATH/include/$FOAM_MPI/ptscotch.h \
-a -r $FOAM_EXT_LIBBIN/$FOAM_MPI/libptscotch.so \
-a -r $FOAM_EXT_LIBBIN/$FOAM_MPI/libptscotcherrexit.so ]
then
- echo " ptscotch header in $SCOTCH_ARCH_PATH/include/$FOAM_MPI"
- echo " ptscotch libs in $FOAM_EXT_LIBBIN/$FOAM_MPI"
+ echo " ptscotch include: $SCOTCH_ARCH_PATH/include/$FOAM_MPI"
+ echo " ptscotch library: $FOAM_EXT_LIBBIN/$FOAM_MPI"
else
(
cd $SCOTCH_SOURCE_DIR/src || exit 1
@@ -209,6 +199,9 @@ then
export CCS="${CC:-$WM_CC}" # CCS (serial compiler) default=$(CC)
export CCP=$(whichMpicc) # CCP (parallel compiler) default=mpicc
+ # Consistency for Intel-MPI and non-icc compilers
+ [ -n "$I_MPI_CC" ] || export I_MPI_CC="${CC:-$WM_CC}"
+
make realclean 2>/dev/null # Extra safety
make -j $WM_NCOMPPROCS ptscotch \
&& make \
@@ -233,55 +226,46 @@ fi
#------------------------------------------------------------------------------
-# Metis is optional
echo
echo ========================================
-echo Build Metis decomposition
-
-# Get METIS_VERSION, METIS_ARCH_PATH
-if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/metis)
+# Get KAHIP_ARCH_PATH
+if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/kahip)
then
. $settings
fi
-
-METIS_SOURCE_DIR=$sourceBASE/$METIS_VERSION
-
-if [ -f $METIS_ARCH_PATH/include/metis.h \
- -a -r $FOAM_EXT_LIBBIN/libmetis.so ]
+if [ -n "$KAHIP_ARCH_PATH" ]
then
- echo " metis header in $METIS_ARCH_PATH/include"
- echo " metis libs in $FOAM_EXT_LIBBIN"
-elif [ -d "$METIS_SOURCE_DIR" ]
-then
-(
- cd $METIS_SOURCE_DIR || exit 1
- export GIT_DIR=$PWD/.git # Mask seeing our own git-repo
- rm -rf $METIS_ARCH_PATH
-
- # Adjust metis integer size to match OpenFOAM label-size
- sed -i -e 's=\(#define IDXTYPEWIDTH\).*=\1 '$WM_LABEL_SIZE'=' \
- include/metis.h
-
- # No config option for the library location.
- # - build normally and use mv to relocate it
-
- make config shared=1 prefix=$METIS_ARCH_PATH \
- && make -j $WM_NCOMPPROCS install \
- && mv $METIS_ARCH_PATH/lib/libmetis.so $FOAM_EXT_LIBBIN
-
- rmdir $METIS_ARCH_PATH/lib 2>/dev/null || true # Failed rmdir is uncritical
-) || warnBuildIssues METIS
+ echo KaHIP decomposition
+ ./makeKAHIP -test "$KAHIP_ARCH_PATH" || \
+ ./makeKAHIP || warnBuildIssues KAHIP
else
- warnNotFound METIS
+ warnNotFound KAHIP # METIS is optional
+fi
+
+#------------------------------------------------------------------------------
+echo
+echo ========================================
+
+# Get METIS_ARCH_PATH
+if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/metis)
+then
+ . $settings
+fi
+if [ -n "$METIS_ARCH_PATH" ]
+then
+ echo Metis decomposition
+ ./makeMETIS -test "$METIS_ARCH_PATH" || \
+ ./makeMETIS || warnBuildIssues METIS
+else
+ warnNotFound METIS # METIS is optional
fi
-
#------------------------------------------------------------------------------
echo
echo ========================================
-echo Build CGAL
if [ -n "$CGAL_ARCH_PATH" ]
then
+ echo "CGAL/boost"
./makeCGAL -test "$CGAL_ARCH_PATH" "$BOOST_ARCH_PATH" || \
./makeCGAL || warnBuildIssues CGAL
else
@@ -290,9 +274,9 @@ fi
echo
echo ========================================
-echo Build FFTW
if [ -n "$FFTW_ARCH_PATH" ]
then
+ echo FFTW
./makeFFTW -test "$FFTW_ARCH_PATH" || \
./makeFFTW || warnBuildIssues FFTW
else
diff --git a/BUILD.md b/BUILD.md
index b66b633..d8737ee 100644
--- a/BUILD.md
+++ b/BUILD.md
@@ -109,7 +109,7 @@ ThirdParty components prior to building OpenFOAM itself.
- This will be automatically invoked by the top-level OpenFOAM `Allwmake`, but
can also be invoked directly to find possible build errors.
- Builds an mpi library (openmpi or mpich), scotch decomposition, boost, CGAL, FFTW.
- - If the optional metis directory is found, it will also be compiled.
+ - If the optional kahip or metis directories are found, they will also be compiled.
4. `makeParaView` *(optional but highly recommended)*
- This is optional, but extremely useful for visualization and for
run-time post-processing function objects.
@@ -122,16 +122,26 @@ ThirdParty components prior to building OpenFOAM itself.
#### Optional Components
`makeADIOS`
-- Only required for ADIOS support,
+- Only required for [ADIOS](#parallel) support,
which is currently staged in the [add-ons repository][link AddOns].
`makeCGAL`
-- Builds third-party boost and CGAL.
+- Builds [boost](#general-packages) and [CGAL](#general-packages).
Automatically invoked from the ThirdParty `Allwmake`,
but can be invoked directly to resolve possible build errors.
`makeFFTW`
-- Builds third-party FFTW.
+- Builds [FFTW](#general-packages).
+ Automatically invoked from the ThirdParty `Allwmake`,
+ but can be invoked directly to resolve possible build errors.
+
+`makeKAHIP`
+- Builds [KaHIP](#parallel) decomposition library.
+ Automatically invoked from the ThirdParty `Allwmake`,
+ but can be invoked directly to resolve possible build errors.
+
+`makeMETIS`
+- Builds [METIS](#parallel) decomposition library.
Automatically invoked from the ThirdParty `Allwmake`,
but can be invoked directly to resolve possible build errors.
@@ -147,11 +157,11 @@ ThirdParty components prior to building OpenFOAM itself.
`makeMesa`, `makeVTK`
- Additional support for building offscreen rendering components.
Useful if you want to render on computer servers without graphics cards.
- The `makeParaView.example` and `makeVTK.example` files provide some useful
+ The `makeParaView.example` and `makeVTK.example` files offer some
suggestions about compiling such a configuration.
`makeQt`
-- Script to build a [third-party installation of Qt](#makeQt), including qmake.
+- Script to build a [Qt](#makeQt), including qmake.
- Possibly needed for `makeParaView`.
- The associated `etc/relocateQt` may be of independent use.
Read the file for more details.
@@ -188,13 +198,13 @@ and save some disk space.
sources that are bundled with ParaView.
For example, by using a symbolic link:
- ln -s ParaView-v5.4.0/VTK VTK-8.1.0
+ ln -s ParaView-v5.4.1/VTK VTK-8.1.0
The appropriate VTK version number can be found from the contents of
the `vtkVersion.cmake` file.
For example,
- $ cat ParaView-v5.4.0/VTK/CMake/vtkVersion.cmake
+ $ cat ParaView-v5.4.1/VTK/CMake/vtkVersion.cmake
# VTK version number components.
set(VTK_MAJOR_VERSION 8)
@@ -207,27 +217,12 @@ and save some disk space.
required.
See additional notes below about [making Qt](#makeQt) if necessary.
-#### 5.4.0
+#### 5.4.x
- Compiles without patching.
No known issues with the native OpenFOAM reader.
-#### 5.3.0
-- Compiles without patching.
- The native OpenFOAM reader has a bug reading tetrahedrals.
-
-#### 5.2.0
-- Compiles without patching, but the native OpenFOAM reader is
- broken in this version.
-
-#### 4.4.0/5.0.0/5.0.1/5.1.2
-- When using `makeParaView`, the following patches will be automatically
- applied (see the `etc/patches` directory):
- - Bugfix for STL reader - affects 4.4.0 only.
- - Broken installation (ui_pqExportStateWizard.h) - affects 4.4.0/5.0.0/5.0.1/5.1.x
- - Building with gcc-6.1.0 - affects 4.4.0/5.0.0/5.0.1 (patch applied for 5.0.1)
- - The SciberQuestToolKit plugin fails to compile with gcc-6.1.0 and causes
- the compilation of ParaView to halt. The easiest solution is to delete
- the ParaView-5.0.1/Plugins/SciberQuestToolKit directory.
+#### 5.3.0 and older are neither recommended nor supported
+- Various compilation issues and known bugs.
### ADIOS
- The github release currently requires GNU autoconf tools (eg,
@@ -250,7 +245,7 @@ and save some disk space.
3. Build ParaView using this third-party QT. For example,
- ./makeParaView -qt-4.8.7 5.0.1
+ ./makeParaView -qt-4.8.7 5.4.1
- ParaView versions prior to 5.3.0 do not properly support QT5.
@@ -302,23 +297,19 @@ install the 32-bit development libraries by default.
The minimum version of clang required is 3.3.
*Attention*: If you are building a newer version of clang, you may need to
-update your CMake beforehand.
-GNU *configure* can only be used prior to clang version 3.9.
+update your CMake beforehand since GNU *configure* can only be used prior
+to clang version 3.9.
+
+If your system gcc is particularly old
+(see [minimum gcc requirements for clang](#min-gcc))
+you may have additional hurdles to using the newest versions of clang.
| Name | Location
|-----------------------|------------------------
-| [clang][page clang] | [download][link clang]
-| [llvm][page llvm] | [download][link llvm]
-
-
-### Parallel Processing
-
-| Name | Location
-|-----------------------|------------------------
-| [adios][page adios] | [repo][repo adios] or [github download][link adios] or [alt download][altlink adios]
-| [scotch, ptscotch][page scotch] | [download][link scotch]
-| [openmpi][page openmpi] | [download][link openmpi]. The newer [openmpi][newer openmpi] make exhibit stability issues.
+| [clang][page clang] | [download][link clang] or [newer][newer clang]
+| [llvm][page llvm] | [download][link llvm] or [newer][newer llvm]
+| [openmp][page omp] | [download][link omp] or [newer][newer omp]
### General
@@ -334,13 +325,24 @@ GNU *configure* can only be used prior to clang version 3.9.
| gperftools | [repo][repo gperftools] or [download][link gperftools]
+### Parallel Processing
+
+| Name | Location
+|-----------------------|------------------------
+| [openmpi][page openmpi] | [download][link openmpi]. The newer [openmpi][newer openmpi] make exhibit stability issues.
+| [adios][page adios] | [repo][repo adios] or [github download][link adios] or [alt download][altlink adios]
+| [scotch, ptscotch][page scotch] | [download][link scotch]
+| [kahip][page kahip] | [download][link kahip]
+| [metis][page metis] | [download][link metis]
+
+
### Visualization
| Name | Location
|-----------------------|------------------------
| [MESA][page mesa] | [download][link mesa] or [older 13][older13 mesa], [older 11][older11 mesa]
| [ParaView][page ParaView] | [download][link ParaView]
-| [Qt][page Qt] | [repo][repo Qt] or [download][link Qt]. The newer [Qt5][newer Qt5] only works with ParaView-5.3.0 and later.
+| [Qt][page Qt] | Either the [older QT4][link Qt4] or the [newer QT5][link Qt5], which only works with ParaView-5.3.0 and later.
### CMake Minimum Requirements
@@ -348,18 +350,14 @@ GNU *configure* can only be used prior to clang version 3.9.
The minimum CMake requirements for building various components.
2.8 llvm-3.4.2
- 2.8.8 ParaView-5.0.1
2.8.11 CGAL-4.9
+ 2.8.11 CGAL-4.11
2.8.12.2 llvm-3.7.0
2.8.12.2 llvm-3.8.0
2.8.4 cmake-3.6.0
- 3.3 ParaView-5.1.2
- 3.3 ParaView-5.2.0
- 3.3 ParaView-5.3.0
- 3.3 ParaView-5.4.0
+ 3.3 ParaView-5.4.1
3.4.3 llvm-3.9.1
3.4.3 llvm-4.0.0
- 3.5 ParaView-5.1.0
### GCC Minimum Requirements
@@ -371,6 +369,10 @@ The minimum gcc/g++ requirements for building various components.
4.7 llvm-3.5.2
4.4 llvm-3.4.2
+If your system gcc/g++ is too old to build the desired llvm/clang
+version, you may need to build a lower llvm/clang version and then use
+that clang compiler for building the newer llvm/clang version.
+
[page gcc]: http://gcc.gnu.org/releases.html
@@ -385,26 +387,35 @@ The minimum gcc/g++ requirements for building various components.
-[page clang]: http://llvm.org/
[page llvm]: http://llvm.org/
+[page clang]: http://clang.llvm.org/
+[page omp]: http://openmp.llvm.org/
[link clang]: http://llvm.org/releases/3.7.1/cfe-3.7.1.src.tar.xz
[link llvm]: http://llvm.org/releases/3.7.1/llvm-3.7.1.src.tar.xz
+[link omp]: http://llvm.org/releases/3.7.1/openmp-3.7.1.src.tar.xz
-[newer clang]: http://llvm.org/releases/4.0.0/cfe-4.0.0.src.tar.xz
-[newer llvm]: http://llvm.org/releases/4.0.0/llvm-4.0.0.src.tar.xz
+[newer clang]: http://llvm.org/releases/4.0.1/cfe-4.0.1.src.tar.xz
+[newer llvm]: http://llvm.org/releases/4.0.1/llvm-4.0.1.src.tar.xz
+[newer omp]: http://llvm.org/releases/4.0.1/openmp-4.0.1.src.tar.xz
[page adios]: https://www.olcf.ornl.gov/center-projects/adios/
[repo adios]: https://github.com/ornladios/ADIOS
-[link adios]: https://github.com/ornladios/ADIOS/archive/v1.11.1.tar.gz
-[altlink adios]: http://users.nccs.gov/%7Epnorbert/adios-1.11.1.tar.gz
+[link adios]: https://github.com/ornladios/ADIOS/archive/v1.13.0.tar.gz
+[altlink adios]: http://users.nccs.gov/%7Epnorbert/adios-1.13.0.tar.gz
[page zfp]: http://computation.llnl.gov/projects/floating-point-compression/zfp-versions
[page scotch]: https://www.labri.fr/perso/pelegrin/scotch/
[link scotch]: https://gforge.inria.fr/frs/download.php/file/34099/scotch_6.0.3.tar.gz
+[page kahip]: http://algo2.iti.kit.edu/documents/kahip/
+[link kahip]: http://algo2.iti.kit.edu/schulz/software_releases/KaHIP_2.00.tar.gz
+
+[page metis]: http://glaros.dtc.umn.edu/gkhome/metis/metis/overview
+[link metis]: http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz
+
[page openmpi]: http://www.open-mpi.org/
[link openmpi]: https://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.4.tar.bz2
[newer openmpi]: https://www.open-mpi.org/software/ompi/v2.1/downloads/openmpi-2.1.1.tar.bz2
@@ -421,7 +432,7 @@ The minimum gcc/g++ requirements for building various components.
[link CGAL]: https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-4.9.1/CGAL-4.9.1.tar.xz
[page FFTW]: http://www.fftw.org/
-[link FFTW]: http://www.fftw.org/fftw-3.3.6-pl1.tar.gz
+[link FFTW]: http://www.fftw.org/fftw-3.3.7.tar.gz
[page cgns]: http://cgns.github.io/
[link ccmio]: http://portal.nersc.gov/project/visit/third_party/libccmio-2.6.1.tar.gz (check usage conditions)
@@ -437,7 +448,7 @@ The minimum gcc/g++ requirements for building various components.
[page ParaView]: http://www.paraview.org/
-[link ParaView]: http://www.paraview.org/files/v5.4/ParaView-v5.4.0.tar.gz
+[link ParaView]: http://www.paraview.org/files/v5.4/ParaView-v5.4.1.tar.gz
[page mesa]: http://mesa3d.org/
[link mesa]: ftp://ftp.freedesktop.org/pub/mesa/mesa-17.1.1.tar.xz
@@ -446,25 +457,27 @@ The minimum gcc/g++ requirements for building various components.
[page Qt]: https://www.qt.io/download-open-source/
[repo Qt]: http://code.qt.io/cgit/qt-creator/qt-creator.git
-[link Qt]: http://download.qt.io/official_releases/qt/4.8/4.8.7/qt-everywhere-opensource-src-4.8.7.tar.gz
-[newer Qt5]: http://download.qt.io/official_releases/qt/5.9/5.9.0/single/qt-everywhere-opensource-src-5.9.0.tar.xz
+[link Qt4]: http://download.qt.io/official_releases/qt/4.8/4.8.7/qt-everywhere-opensource-src-4.8.7.tar.gz
+[link Qt5]: http://download.qt.io/official_releases/qt/5.9/5.9.3/single/qt-everywhere-opensource-src-5.9.3.tar.xz
[link AddOns]: https://develop.openfoam.com/Community/OpenFOAM-addOns
-[link community-projects]: http://www.openfoam.com/services/community-projects.php
+[link community-projects]: http://www.openfoam.com/community/projects.php
+---
## Additional OpenFOAM Links
- [Community AddOns][link AddOns] repository
- [Collaborative and Community-based Developments][link community-projects]
-- [Download](http://www.openfoam.com/releases) and
- [installation instructions](http://www.openfoam.com/download/installation.php)
+- [Download](http://www.openfoam.com/download) and
+ [installation instructions](http://www.openfoam.com/code/build-guide.php)
- [Documentation](http://www.openfoam.com/documentation)
-- [Reporting bugs/issues](http://www.openfoam.com/code/bug-reporting.php) (including bugs/suggestions/feature requests) in OpenFOAM+
+- [Reporting bugs/issues](http://www.openfoam.com/code/bug-reporting.php) (including bugs/suggestions/feature requests) in OpenFOAM
- [Contacting OpenCFD](http://www.openfoam.com/contact)
+
---
Copyright 2016-2017 OpenCFD Ltd
diff --git a/README.md b/README.md
index 975a68d..e8571a5 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | |
- | \\ / A nd | Copyright (C) 2016 OpenCFD Ltd. |
+ | \\ / A nd | Copyright (C) 2016-2017 OpenCFD Ltd. |
| \\/ M anipulation | |
|--------------------------------------------------------------------------|
-->
@@ -65,19 +65,26 @@ ThirdParty components prior to building OpenFOAM itself.
### Build Details
-More details can be found the ThirdParty ./BUILD.md information.
+More details can be found the ThirdParty BUILD.md information.
+
+
+[link AddOns]: https://develop.openfoam.com/Community/OpenFOAM-addOns
+[link community-projects]: http://www.openfoam.com/community/projects.php
+
+---
## Additional OpenFOAM Links
-- [Download](http://www.openfoam.com/releases) and
- [installation instructions](http://www.openfoam.com/download/installation.php)
+- [Community AddOns][link AddOns] repository
+- [Collaborative and Community-based Developments][link community-projects]
+- [Download](http://www.openfoam.com/download) and
+ [installation instructions](http://www.openfoam.com/code/build-guide.php)
- [Documentation](http://www.openfoam.com/documentation)
-- [Reporting bugs/issues (including bugs/suggestions/feature requests) in OpenFOAM+](http://www.openfoam.com/code/bug-reporting.php)
-- [Collaborative and Community-based Developments](http://www.openfoam.com/services/community-projects.php)
+- [Reporting bugs/issues](http://www.openfoam.com/code/bug-reporting.php) (including bugs/suggestions/feature requests) in OpenFOAM
- [Contacting OpenCFD](http://www.openfoam.com/contact)
---
-Copyright 2016 OpenCFD Ltd
+Copyright 2016-2017 OpenCFD Ltd
diff --git a/SOURCES.txt b/SOURCES.txt
new file mode 100644
index 0000000..0d8c44f
--- /dev/null
+++ b/SOURCES.txt
@@ -0,0 +1,69 @@
+Short summary of third-party software versions for recent OpenFOAM versions.
+
+OpenFOAM-1712
+---------------
+CGAL-4.9.1
+ParaView-5.4.1 *minor*
+boost_1_64_0
+fftw-3.3.7 *minor*
+openmpi-1.10.4
+scotch_6.0.3
+kahip-2.00d *new*
+
+
+OpenFOAM-1706
+---------------
+CGAL-4.9.1 *minor*
+ParaView-5.4.0 *update*
+boost_1_64_0 *update*
+fftw-3.3.6-pl1 *minor*
+openmpi-1.10.4
+scotch_6.0.3
+
+
+OpenFOAM-1612
+---------------
+CGAL-4.9 *update*
+ParaView-5.0.1 *update*
+boost_1_62_0 *update*
+fftw-3.3.5 *minor*
+openmpi-1.10.4 *minor*
+scotch_6.0.3
+
+
+OpenFOAM-1606
+---------------
+CGAL-4.8 *update*
+ParaView-5.0.1 *update*
+boost_1_61_0 *new*
+fftw-3.3.4 *new*
+openmpi-1.10.2 *minor*
+scotch_6.0.3
+
+
+OpenFOAM-v3.0+
+---------------
+CGAL-4.7 *update*
+ParaView-4.4.0 *update*
+openmpi-1.10.0 *update*
+scotch_6.0.3
+
+
+OpenFOAM-v2.4
+---------------
+CGAL-4.6 *update*
+ParaView-4.1.0
+openmpi-1.8.5 *update*
+scotch_6.0.3 *update*
+
+
+---------------
+OpenFOAM-v2.3
+---------------
+CGAL-4.3
+ParaView-4.1.0
+openmpi-1.6.5
+scotch_6.0.0
+
+
+---------------
diff --git a/etc/makeFiles/kahip/files b/etc/makeFiles/kahip/files
new file mode 100644
index 0000000..9ecb867
--- /dev/null
+++ b/etc/makeFiles/kahip/files
@@ -0,0 +1,70 @@
+/* NOTE: make any changes to this file in etc/wmakeFiles/ */
+
+interface/kaHIP_interface.cpp
+
+/* List obtained from SConscript, libkaffpa_files = [ ... ] entry */
+
+data_structure/graph_hierarchy.cpp
+algorithms/strongly_connected_components.cpp
+algorithms/topological_sort.cpp
+algorithms/push_relabel.cpp
+io/graph_io.cpp
+tools/quality_metrics.cpp
+tools/random_functions.cpp
+tools/graph_extractor.cpp
+tools/misc.cpp
+tools/partition_snapshooter.cpp
+partition/graph_partitioner.cpp
+partition/w_cycles/wcycle_partitioner.cpp
+partition/coarsening/coarsening.cpp
+partition/coarsening/contraction.cpp
+partition/coarsening/edge_rating/edge_ratings.cpp
+partition/coarsening/matching/matching.cpp
+partition/coarsening/matching/random_matching.cpp
+partition/coarsening/matching/gpa/path.cpp
+partition/coarsening/matching/gpa/gpa_matching.cpp
+partition/coarsening/matching/gpa/path_set.cpp
+partition/coarsening/clustering/node_ordering.cpp
+partition/coarsening/clustering/size_constraint_label_propagation.cpp
+partition/initial_partitioning/initial_partitioning.cpp
+partition/initial_partitioning/initial_partitioner.cpp
+partition/initial_partitioning/initial_partition_bipartition.cpp
+partition/initial_partitioning/initial_refinement/initial_refinement.cpp
+partition/initial_partitioning/bipartition.cpp
+partition/initial_partitioning/initial_node_separator.cpp
+partition/uncoarsening/uncoarsening.cpp
+partition/uncoarsening/separator/area_bfs.cpp
+partition/uncoarsening/separator/vertex_separator_algorithm.cpp
+partition/uncoarsening/separator/vertex_separator_flow_solver.cpp
+partition/uncoarsening/refinement/cycle_improvements/greedy_neg_cycle.cpp
+partition/uncoarsening/refinement/cycle_improvements/problem_factory.cpp
+partition/uncoarsening/refinement/cycle_improvements/augmented_Qgraph.cpp
+partition/uncoarsening/refinement/mixed_refinement.cpp
+partition/uncoarsening/refinement/label_propagation_refinement/label_propagation_refinement.cpp
+partition/uncoarsening/refinement/refinement.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/2way_fm_refinement/two_way_fm.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/flow_refinement/two_way_flow_refinement.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/flow_refinement/boundary_bfs.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/flow_refinement/flow_solving_kernel/cut_flow_problem_solver.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/flow_refinement/most_balanced_minimum_cuts/most_balanced_minimum_cuts.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/quotient_graph_refinement.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/complete_boundary.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/partial_boundary.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/quotient_graph_scheduling/quotient_graph_scheduling.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/quotient_graph_scheduling/simple_quotient_graph_scheduler.cpp
+partition/uncoarsening/refinement/quotient_graph_refinement/quotient_graph_scheduling/active_block_quotient_graph_scheduler.cpp
+partition/uncoarsening/refinement/kway_graph_refinement/kway_graph_refinement.cpp
+partition/uncoarsening/refinement/kway_graph_refinement/kway_graph_refinement_core.cpp
+partition/uncoarsening/refinement/kway_graph_refinement/kway_graph_refinement_commons.cpp
+partition/uncoarsening/refinement/cycle_improvements/augmented_Qgraph_fabric.cpp
+partition/uncoarsening/refinement/cycle_improvements/advanced_models.cpp
+partition/uncoarsening/refinement/kway_graph_refinement/multitry_kway_fm.cpp
+partition/uncoarsening/refinement/node_separators/greedy_ns_local_search.cpp
+partition/uncoarsening/refinement/node_separators/fm_ns_local_search.cpp
+partition/uncoarsening/refinement/node_separators/localized_fm_ns_local_search.cpp
+algorithms/cycle_search.cpp
+partition/uncoarsening/refinement/cycle_improvements/cycle_refinement.cpp
+partition/uncoarsening/refinement/tabu_search/tabu_search.cpp
+
+
+LIB = $(FOAM_EXT_LIBBIN)/libkahip
diff --git a/etc/makeFiles/kahip/options b/etc/makeFiles/kahip/options
new file mode 100644
index 0000000..b13ca4a
--- /dev/null
+++ b/etc/makeFiles/kahip/options
@@ -0,0 +1,15 @@
+/*
+ * NOTE: make any changes to this file in etc/wmakeFiles/
+ * Must use -DNDEBUG to disable kahip debug mode.
+ * Using -DMODE_NODESEP is not strictly required for building the library.
+*/
+
+EXE_INC = \
+ ${c++LESSWARN} \
+ ${COMP_OPENMP} \
+ -DNDEBUG -DMODE_NODESEP \
+ -I$(KAHIP_LIB_SRC) \
+ -I$(KAHIP_LIB_SRC)/partition \
+ -I$(KAHIP_LIB_SRC)/partition/uncoarsening/refinement/quotient_graph_refinement/flow_refinement
+
+LIB_LIBS =
diff --git a/etc/wmakeFiles/libccmio/files b/etc/makeFiles/libccmio/files
similarity index 86%
rename from etc/wmakeFiles/libccmio/files
rename to etc/makeFiles/libccmio/files
index 9949c76..57e04e3 100644
--- a/etc/wmakeFiles/libccmio/files
+++ b/etc/makeFiles/libccmio/files
@@ -1,4 +1,4 @@
-/* NOTE: make any changes to this file in etc/wmakeFiles/ */
+/* NOTE: make any changes to this file in etc/makeFiles/ */
libadf/ADF_interface.c
libadf/ADF_internals.c
diff --git a/etc/makeFiles/libccmio/options b/etc/makeFiles/libccmio/options
new file mode 100644
index 0000000..267c586
--- /dev/null
+++ b/etc/makeFiles/libccmio/options
@@ -0,0 +1,3 @@
+/* NOTE: make any changes to this file in etc/makeFiles/ */
+
+/* EXE_INC = */
diff --git a/etc/wmakeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM b/etc/makeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM
similarity index 97%
rename from etc/wmakeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM
rename to etc/makeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM
index c6f1bce..1733136 100644
--- a/etc/wmakeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM
+++ b/etc/makeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM
@@ -20,6 +20,7 @@ CCD = $(CCP)
CFLAGS = $(WM_CFLAGS) -O3 \
-DCOMMON_FILE_COMPRESS_GZ \
-DCOMMON_RANDOM_FIXED_SEED \
+ -DSCOTCH_DETERMINISTIC \
-DSCOTCH_RENAME \
-Drestrict=__restrict
diff --git a/etc/patches/ADIOS-1.11.0 b/etc/patches/ADIOS-1.11.0
deleted file mode 100644
index 60ca0dd..0000000
--- a/etc/patches/ADIOS-1.11.0
+++ /dev/null
@@ -1,12 +0,0 @@
---- ADIOS-1.11.0/src/core/adios_transform_methods.c.orig 2016-11-17 19:46:11.000000000 +0100
-+++ ADIOS-1.11.0/src/core/adios_transform_methods.c 2016-12-14 15:19:39.870832445 +0100
-@@ -7,6 +7,9 @@
-
- ADIOS_AVAILABLE_TRANSFORM_METHODS * adios_available_transform_methods()
- {
-+ /* Ensure the transforms are initialized before accessing */
-+ adios_transform_read_init();
-+
- int i, n;
- n = 0;
- for (i = (int)adios_transform_none; i < num_adios_transform_types; i++) {
diff --git a/etc/patches/adios-1.11.0 b/etc/patches/adios-1.11.0
deleted file mode 120000
index ab6c15d..0000000
--- a/etc/patches/adios-1.11.0
+++ /dev/null
@@ -1 +0,0 @@
-ADIOS-1.11.0
\ No newline at end of file
diff --git a/etc/patches/mkdiff-paraview-5.0.1 b/etc/patches/mkdiff-paraview-5.0.1
deleted file mode 100644
index b727ef9..0000000
--- a/etc/patches/mkdiff-paraview-5.0.1
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/sh
-
-# simple script to generate patches
-paraview=ParaView-5.0.1
-if [ "$#" -gt 0 ]
-then
- paraview="${1%%/}"
-fi
-
-[ -d "$paraview" ] || {
- echo "No directory '$paraview'" 1>&2
- exit 2
-}
-
-for i in \
- $paraview/VTK/CMake/vtkCompilerExtras.cmake \
- $paraview/VTK/CMake/GenerateExportHeader.cmake \
- $paraview/Qt/Components/CMakeLists.txt \
- $paraview/CMake/generate_qhp.cmake \
- $paraview/CMake/ParaViewMacros.cmake \
- $paraview/CMake/generate_proxydocumentation.cmake \
- ;
-do
- diff -uw $i.orig $i
-done
-
-# -----------------------------------------------------------------------------
diff --git a/etc/patches/paraview-4.4.0 b/etc/patches/paraview-4.4.0
deleted file mode 100644
index 92ff39b..0000000
--- a/etc/patches/paraview-4.4.0
+++ /dev/null
@@ -1,44 +0,0 @@
---- ParaView-4.4.0/VTK/IO/Geometry/vtkSTLReader.cxx.orig 2015-09-11 19:59:24.000000000 +0200
-+++ ParaView-4.4.0/VTK/IO/Geometry/vtkSTLReader.cxx 2016-06-19 12:59:50.769770143 +0200
-@@ -448,7 +448,7 @@
- done = done || (fscanf(fp,"%s", line)==EOF);
- }
- }
-- if (!done)
-+ else if (!done)
- {
- done = (fgets(line, 255, fp) == 0);
- lineCount++;
---- ParaView-5.0.1/VTK/CMake/vtkCompilerExtras.cmake.orig 2016-03-28 17:07:10.000000000 +0200
-+++ ParaView-5.0.1/VTK/CMake/vtkCompilerExtras.cmake 2016-06-11 15:10:14.820958942 +0200
-@@ -32,7 +32,7 @@
- OUTPUT_VARIABLE _gcc_version_info
- ERROR_VARIABLE _gcc_version_info)
-
-- string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]*"
-+ string (REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
- _gcc_version "${_gcc_version_info}")
- if(NOT _gcc_version)
- string (REGEX REPLACE ".*\\(GCC\\).*([34]\\.[0-9]).*" "\\1.0"
---- ParaView-5.0.1/VTK/CMake/GenerateExportHeader.cmake.orig 2016-03-28 17:07:10.000000000 +0200
-+++ ParaView-5.0.1/VTK/CMake/GenerateExportHeader.cmake 2016-06-11 15:12:16.344357746 +0200
-@@ -166,7 +166,7 @@
- execute_process(COMMAND ${CMAKE_C_COMPILER} ARGS --version
- OUTPUT_VARIABLE _gcc_version_info
- ERROR_VARIABLE _gcc_version_info)
-- string(REGEX MATCH "[345]\\.[0-9]\\.[0-9]*"
-+ string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
- _gcc_version "${_gcc_version_info}")
- # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
- # patch level, handle this here:
---- ParaView-5.0.1/Qt/Components/CMakeLists.txt.orig 2016-06-13 09:27:27.827849525 +0200
-+++ ParaView-5.0.1/Qt/Components/CMakeLists.txt 2016-06-13 09:29:28.599318445 +0200
-@@ -640,7 +640,7 @@
- #the pqSGExportStateWizard has subclasses that directly access
- #the UI file, and currently we don't have a clean way to break this hard
- #dependency, so for no we install this ui file.
--if(PARAVIEW_INSTALL_DEVELOPMENT_FILES)
-+if(PARAVIEW_INSTALL_DEVELOPMENT_FILES AND PARAVIEW_ENABLE_PYTHON)
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ui_pqExportStateWizard.h"
- DESTINATION "${VTK_INSTALL_INCLUDE_DIR}")
- endif()
diff --git a/etc/patches/paraview-5.0.0 b/etc/patches/paraview-5.0.0
deleted file mode 120000
index 1f0fde9..0000000
--- a/etc/patches/paraview-5.0.0
+++ /dev/null
@@ -1 +0,0 @@
-paraview-5.0.1
\ No newline at end of file
diff --git a/etc/patches/paraview-5.0.1 b/etc/patches/paraview-5.0.1
deleted file mode 100644
index c4126f9..0000000
--- a/etc/patches/paraview-5.0.1
+++ /dev/null
@@ -1,221 +0,0 @@
---- ParaView-5.0.1/VTK/CMake/vtkCompilerExtras.cmake.orig 2016-03-28 17:07:10.000000000 +0200
-+++ ParaView-5.0.1/VTK/CMake/vtkCompilerExtras.cmake 2016-12-13 17:21:25.382720945 +0100
-@@ -32,7 +32,7 @@
- OUTPUT_VARIABLE _gcc_version_info
- ERROR_VARIABLE _gcc_version_info)
-
-- string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]*"
-+ string (REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
- _gcc_version "${_gcc_version_info}")
- if(NOT _gcc_version)
- string (REGEX REPLACE ".*\\(GCC\\).*([34]\\.[0-9]).*" "\\1.0"
---- ParaView-5.0.1/VTK/CMake/GenerateExportHeader.cmake.orig 2016-03-28 17:07:10.000000000 +0200
-+++ ParaView-5.0.1/VTK/CMake/GenerateExportHeader.cmake 2016-12-13 17:21:25.382720945 +0100
-@@ -166,7 +166,7 @@
- execute_process(COMMAND ${CMAKE_C_COMPILER} ARGS --version
- OUTPUT_VARIABLE _gcc_version_info
- ERROR_VARIABLE _gcc_version_info)
-- string(REGEX MATCH "[345]\\.[0-9]\\.[0-9]*"
-+ string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
- _gcc_version "${_gcc_version_info}")
- # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
- # patch level, handle this here:
---- ParaView-5.0.1/Qt/Components/CMakeLists.txt.orig 2016-03-28 17:07:03.000000000 +0200
-+++ ParaView-5.0.1/Qt/Components/CMakeLists.txt 2016-12-13 17:38:42.713553032 +0100
-@@ -656,7 +656,7 @@
- #the pqSGExportStateWizard has subclasses that directly access
- #the UI file, and currently we don't have a clean way to break this hard
- #dependency, so for no we install this ui file.
--if(PARAVIEW_INSTALL_DEVELOPMENT_FILES)
-+if(PARAVIEW_INSTALL_DEVELOPMENT_FILES AND PARAVIEW_ENABLE_PYTHON)
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ui_pqExportStateWizard.h"
- DESTINATION "${VTK_INSTALL_INCLUDE_DIR}")
- endif()
---- ParaView-5.0.1/CMake/generate_qhp.cmake.orig 2016-03-28 17:06:22.000000000 +0200
-+++ ParaView-5.0.1/CMake/generate_qhp.cmake 2016-12-13 17:21:25.382720945 +0100
-@@ -44,7 +48,9 @@
- message(FATAL_ERROR "Missing one of the required arguments!!")
- endif ()
-
--string (REPLACE "+" ";" file_patterns "${file_patterns}")
-+# Recover original ';' separated list.
-+string(REPLACE "_s" ";" file_patterns "${file_patterns}")
-+string(REPLACE "_u" "_" file_patterns "${file_patterns}")
-
- get_filename_component(working_dir "${output_file}" PATH)
-
---- ParaView-5.0.1/CMake/ParaViewMacros.cmake.orig 2016-03-28 17:07:03.000000000 +0200
-+++ ParaView-5.0.1/CMake/ParaViewMacros.cmake 2016-12-13 17:21:25.382720945 +0100
-@@ -219,15 +226,21 @@
- set (xmls_string "")
- foreach (xml ${xmls})
- get_filename_component(xml "${xml}" ABSOLUTE)
-- set (xmls_string "${xmls_string}${xml}+")
-+ set (xmls_string "${xmls_string}${xml};")
- endforeach()
-
- set (gui_xmls_string "")
- foreach (gui_xml ${gui_xmls})
- get_filename_component(gui_xml "${gui_xml}" ABSOLUTE)
-- set (gui_xmls_string "${gui_xmls_string}${gui_xml}+")
-+ set (gui_xmls_string "${gui_xmls_string}${gui_xml};")
- endforeach()
-
-+ # Escape ';' in lists
-+ string(REPLACE "_" "_u" xmls_string "${xmls_string}")
-+ string(REPLACE ";" "_s" xmls_string "${xmls_string}")
-+ string(REPLACE "_" "_u" gui_xmls_string "${gui_xmls_string}")
-+ string(REPLACE ";" "_s" gui_xmls_string "${gui_xmls_string}")
-+
- set (all_xmls ${xmls} ${gui_xmls})
- list (GET all_xmls 0 first_xml)
- if (NOT first_xml)
---- ParaView-5.0.1/CMake/generate_proxydocumentation.cmake.orig 2016-03-28 17:06:22.000000000 +0200
-+++ ParaView-5.0.1/CMake/generate_proxydocumentation.cmake 2016-12-13 17:21:25.382720945 +0100
-@@ -21,8 +21,10 @@
- endif()
-
- # input_xmls is a pseudo-list. Convert it to a real CMake list.
--string(REPLACE "+" ";" input_xmls "${input_xmls}")
--string(REPLACE "+" ";" input_gui_xmls "${input_gui_xmls}")
-+string(REPLACE "_s" ";" input_xmls "${input_xmls}")
-+string(REPLACE "_u" "_" input_xmls "${input_xmls}")
-+string(REPLACE "_s" ";" input_gui_xmls "${input_gui_xmls}")
-+string(REPLACE "_u" "_" input_gui_xmls "${input_gui_xmls}")
-
- set (xslt_xml)
-
---- ParaView-5.0.1/VTK/CMake/vtkOpenGL.cmake.orig 2016-03-28 17:07:10.000000000 +0200
-+++ ParaView-5.0.1/VTK/CMake/vtkOpenGL.cmake 2017-01-19 10:23:19.170743269 +0100
-@@ -19,9 +19,11 @@
- # OSMesa logic for offscreen mesa rendering.
- option(VTK_OPENGL_HAS_OSMESA
- "The OpenGL library being used supports off screen Mesa calls" OFF)
-+
- # EGL offscreen rendering
- option(VTK_USE_OFFSCREEN_EGL
- "Use EGL for OpenGL client API for offscreen rendering." OFF)
-+
- set(VTK_EGL_DEVICE_INDEX 0 CACHE STRING
- "Index of the EGL device (graphics card) to use.")
-
-@@ -33,21 +35,26 @@
- endif()
-
- option(VTK_USE_OFFSCREEN "Use off screen calls by default" OFF)
-+
- unset(VTK_CAN_DO_OFFSCREEN)
-+unset(VTK_CAN_DO_ONSCREEN)
-+
- if(VTK_OPENGL_HAS_OSMESA OR WIN32 OR VTK_USE_OFFSCREEN_EGL)
- set(VTK_CAN_DO_OFFSCREEN 1)
- endif()
-+
- if(VTK_USE_X OR VTK_USE_COCOA OR WIN32 OR ANDROID OR APPLE_IOS)
-- set(VTK_USE_OSMESA FALSE)
-+ set(VTK_USE_OSMESA ${VTK_OPENGL_HAS_OSMESA})
- if (VTK_USE_OFFSCREEN_EGL)
- message(FATAL_ERROR "VTK_USE_OFFSCREEN_EGL set together with one of ("
- "VTK_USE_X, VTK_USE_COCOA, WIN32, ANDROID OR APPLE_IOS). "
- "You cannot use both offscreen and one of the listed windowing systems.")
- endif()
-+ set(VTK_CAN_DO_ONSCREEN 1)
- elseif(VTK_USE_OFFSCREEN_EGL)
- set(VTK_USE_OSMESA FALSE)
- else()
-- set(VTK_USE_OSMESA TRUE)
-+ set(VTK_USE_OSMESA ${VTK_OPENGL_HAS_OSMESA})
- endif()
-
- mark_as_advanced(VTK_USE_X VTK_OPENGL_HAS_OSMESA VTK_USE_OFFSCREEN_EGL
-@@ -56,10 +63,17 @@
- if(VTK_USE_OSMESA)
- find_package(OSMesa REQUIRED)
- include_directories(SYSTEM ${OSMESA_INCLUDE_DIR})
--elseif(VTK_USE_OFFSCREEN_EGL)
-+endif()
-+
-+if(VTK_USE_OFFSCREEN_EGL)
- find_package(EGL REQUIRED)
- include_directories(SYSTEM ${EGL_INCLUDE_DIR})
--else()
-+endif()
-+
-+if(VTK_CAN_DO_ONSCREEN)
-+ # OpenGL libraries are explicity needed if windowing system-based API is being
-+ # used. Otherwise, if only doing OFFSCREEN, the GL API is provided by the
-+ # offscreen library be it EGL or OSMESA.
- find_package(OpenGL REQUIRED)
- include_directories(SYSTEM ${OPENGL_INCLUDE_DIR})
- if(APPLE)
-@@ -83,9 +97,11 @@
- function(vtk_opengl_link target)
- if(VTK_USE_OSMESA)
- vtk_module_link_libraries(${target} LINK_PRIVATE ${OSMESA_LIBRARY})
-- elseif(VTK_USE_OFFSCREEN_EGL)
-+ endif()
-+ if(VTK_USE_OFFSCREEN_EGL)
- vtk_module_link_libraries(${target} LINK_PRIVATE ${EGL_LIBRARIES})
-- else()
-+ endif()
-+ if(VTK_CAN_DO_ONSCREEN)
- vtk_module_link_libraries(${target} LINK_PRIVATE ${OPENGL_LIBRARIES})
- endif()
- endfunction()
---- ParaView-5.0.1/VTK/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx.orig 2016-03-28 17:07:10.000000000 +0200
-+++ ParaView-5.0.1/VTK/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx 2017-01-19 15:24:21.783214877 +0100
-@@ -30,10 +30,25 @@
- typedef ptrdiff_t GLsizeiptr;
- #include "GL/glx.h"
-
-+
-+#ifndef GLAPI
-+#define GLAPI extern
-+#endif
-+
-+#ifndef GLAPIENTRY
-+#define GLAPIENTRY
-+#endif
-+
-+#ifndef APIENTRY
-+#define APIENTRY GLAPIENTRY
-+#endif
-+
- #include "vtkToolkits.h"
-
- #ifdef VTK_USE_OSMESA
- #include
-+
-+typedef OSMesaContext GLAPIENTRY (*OSMesaCreateContextAttribs_func)( const int *attribList, OSMesaContext sharelist );
- #endif
-
- #include "vtkCommand.h"
-@@ -757,6 +772,28 @@
- this->Size[1] = height;
- this->OwnWindow = 1;
- }
-+
-+#if (OSMESA_MAJOR_VERSION * 100 + OSMESA_MINOR_VERSION >= 1102) && defined(OSMESA_CONTEXT_MAJOR_VERSION)
-+ static const int attribs[] = {
-+ OSMESA_FORMAT, OSMESA_RGBA,
-+ OSMESA_DEPTH_BITS, 32,
-+ OSMESA_STENCIL_BITS, 0,
-+ OSMESA_ACCUM_BITS, 0,
-+ OSMESA_PROFILE, OSMESA_CORE_PROFILE,
-+ OSMESA_CONTEXT_MAJOR_VERSION, 3,
-+ OSMESA_CONTEXT_MINOR_VERSION, 2,
-+ 0 };
-+
-+ OSMesaCreateContextAttribs_func OSMesaCreateContextAttribs =
-+ (OSMesaCreateContextAttribs_func)
-+ OSMesaGetProcAddress("OSMesaCreateContextAttribs");
-+
-+ if (OSMesaCreateContextAttribs != NULL)
-+ {
-+ this->Internal->OffScreenContextId = OSMesaCreateContextAttribs(attribs, NULL);
-+ }
-+#endif
-+ // if we still have no context fall back to the generic signature
- if (!this->Internal->OffScreenContextId)
- {
- this->Internal->OffScreenContextId = OSMesaCreateContext(GL_RGBA, NULL);
diff --git a/etc/patches/paraview-5.1.0 b/etc/patches/paraview-5.1.0
deleted file mode 120000
index 36a4164..0000000
--- a/etc/patches/paraview-5.1.0
+++ /dev/null
@@ -1 +0,0 @@
-paraview-5.1.2
\ No newline at end of file
diff --git a/etc/patches/paraview-5.1.2 b/etc/patches/paraview-5.1.2
deleted file mode 100644
index ccfc7c1..0000000
--- a/etc/patches/paraview-5.1.2
+++ /dev/null
@@ -1,65 +0,0 @@
---- ParaView-5.1.2/Qt/Components/CMakeLists.txt.orig 2016-07-26 21:52:16.000000000 +0200
-+++ ParaView-5.1.2/Qt/Components/CMakeLists.txt 2016-12-13 17:38:42.713553032 +0100
-@@ -591,7 +591,7 @@
- #the pqSGExportStateWizard has subclasses that directly access
- #the UI file, and currently we don't have a clean way to break this hard
- #dependency, so for no we install this ui file.
--if(PARAVIEW_INSTALL_DEVELOPMENT_FILES)
-+if(PARAVIEW_INSTALL_DEVELOPMENT_FILES AND PARAVIEW_ENABLE_PYTHON)
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ui_pqExportStateWizard.h"
- DESTINATION "${VTK_INSTALL_INCLUDE_DIR}")
- endif()
---- ParaView-5.1.2/CMake/generate_qhp.cmake.orig 2016-03-28 17:06:22.000000000 +0200
-+++ ParaView-5.1.2/CMake/generate_qhp.cmake 2016-12-13 17:21:25.382720945 +0100
-@@ -44,7 +48,9 @@
- message(FATAL_ERROR "Missing one of the required arguments!!")
- endif ()
-
--string (REPLACE "+" ";" file_patterns "${file_patterns}")
-+# Recover original ';' separated list.
-+string(REPLACE "_s" ";" file_patterns "${file_patterns}")
-+string(REPLACE "_u" "_" file_patterns "${file_patterns}")
-
- get_filename_component(working_dir "${output_file}" PATH)
-
---- ParaView-5.1.2/CMake/ParaViewMacros.cmake.orig 2016-03-28 17:07:03.000000000 +0200
-+++ ParaView-5.1.2/CMake/ParaViewMacros.cmake 2016-12-13 17:21:25.382720945 +0100
-@@ -219,15 +226,21 @@
- set (xmls_string "")
- foreach (xml ${xmls})
- get_filename_component(xml "${xml}" ABSOLUTE)
-- set (xmls_string "${xmls_string}${xml}+")
-+ set (xmls_string "${xmls_string}${xml};")
- endforeach()
-
- set (gui_xmls_string "")
- foreach (gui_xml ${gui_xmls})
- get_filename_component(gui_xml "${gui_xml}" ABSOLUTE)
-- set (gui_xmls_string "${gui_xmls_string}${gui_xml}+")
-+ set (gui_xmls_string "${gui_xmls_string}${gui_xml};")
- endforeach()
-
-+ # Escape ';' in lists
-+ string(REPLACE "_" "_u" xmls_string "${xmls_string}")
-+ string(REPLACE ";" "_s" xmls_string "${xmls_string}")
-+ string(REPLACE "_" "_u" gui_xmls_string "${gui_xmls_string}")
-+ string(REPLACE ";" "_s" gui_xmls_string "${gui_xmls_string}")
-+
- set (all_xmls ${xmls} ${gui_xmls})
- list (GET all_xmls 0 first_xml)
- if (NOT first_xml)
---- ParaView-5.1.2/CMake/generate_proxydocumentation.cmake.orig 2016-03-28 17:06:22.000000000 +0200
-+++ ParaView-5.1.2/CMake/generate_proxydocumentation.cmake 2016-12-13 17:21:25.382720945 +0100
-@@ -21,8 +21,10 @@
- endif()
-
- # input_xmls is a pseudo-list. Convert it to a real CMake list.
--string(REPLACE "+" ";" input_xmls "${input_xmls}")
--string(REPLACE "+" ";" input_gui_xmls "${input_gui_xmls}")
-+string(REPLACE "_s" ";" input_xmls "${input_xmls}")
-+string(REPLACE "_u" "_" input_xmls "${input_xmls}")
-+string(REPLACE "_s" ";" input_gui_xmls "${input_gui_xmls}")
-+string(REPLACE "_u" "_" input_gui_xmls "${input_gui_xmls}")
-
- set (xslt_xml)
-
diff --git a/etc/pkgconfigAdjust b/etc/pkgconfigAdjust
index 26932a1..b8f47fd 100755
--- a/etc/pkgconfigAdjust
+++ b/etc/pkgconfigAdjust
@@ -7,20 +7,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# etc/pkgconfigAdjust
diff --git a/etc/pkgconfigPrefix b/etc/pkgconfigPrefix
index 469de6d..17c1f61 100755
--- a/etc/pkgconfigPrefix
+++ b/etc/pkgconfigPrefix
@@ -7,20 +7,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# etc/pkgconfigPrefix
diff --git a/etc/relocateQt b/etc/relocateQt
index 4b20454..bfbff26 100755
--- a/etc/relocateQt
+++ b/etc/relocateQt
@@ -7,20 +7,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# etc/relocateQt
diff --git a/etc/tools/ParaViewFunctions b/etc/tools/ParaViewFunctions
index a53bdda..b5330c9 100644
--- a/etc/tools/ParaViewFunctions
+++ b/etc/tools/ParaViewFunctions
@@ -6,20 +6,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# File
# etc/tools/ParaViewFunctions
@@ -27,6 +15,18 @@
# Description
# ParaView make/install helper functions
#
+# Note
+# Obtaining paths via 'python-config' is possible, but may not always
+# resolve properly:
+#
+# python-config --includes
+# >>
+# -I/usr/include/python2.7 -I/usr/include/python2.7
+#
+# python-config --libs
+# >>
+# -lpython2.7 -lpthread -ldl -lutil -lm
+#
#------------------------------------------------------------------------------
# Variables referenced by the functions. Initialization at the end of the file.
@@ -116,10 +116,10 @@ setParaViewVersion()
#
addCMakeVariable()
{
- while [ -n "$1" ]
+ local i
+ for i
do
- CMAKE_VARIABLES="$CMAKE_VARIABLES -D$1"
- shift
+ [ -n "$i" ] && CMAKE_VARIABLES="$CMAKE_VARIABLES -D$i"
done
}
@@ -146,7 +146,7 @@ addMpiSupport()
return
fi
- addCMakeVariable "PARAVIEW_USE_MPI=ON VTK_USE_MPI=ON"
+ addCMakeVariable "PARAVIEW_USE_MPI=ON" "VTK_USE_MPI=ON"
if [ "${MPI_MAX_PROCS:=0}" -gt 1 ]
then
addCMakeVariable "VTK_MPI_MAX_NUMPROCS=$MPI_MAX_PROCS"
@@ -159,68 +159,91 @@ addMpiSupport()
#
addPythonSupport()
{
- if [ "${withPYTHON:=false}" != true ]
+ if [ "${withPYTHON:-false}" != true ]
then
return
fi
- if pythonBin=$(which python 2>/dev/null)
- then
- if [ -n "$PYTHON_LIBRARY" ]
- then
- # Check $PYTHON_LIBRARY if it has been set
- if [ ! -e "$PYTHON_LIBRARY" ]
- then
- echo "*** Error: libpython not found at location specified " \
- "by -pythnon-lib input: PYTHON_LIBRARY=$PYTHON_LIBRARY"
- fi
- else
- # Try to get $PYTHON_LIBRARY from dynamically linked binary
- PYTHON_LIBRARY=$(ldd $pythonBin | \
- sed -ne '/libpython/s/.* => \(.*\) (.*/\1/p')
+ local pythonBin pythonConfig pythonMajor
- [ -e "$PYTHON_LIBRARY" ] || {
- echo "*** Error: Unable to determine path to python library."
- }
- fi
-
- [ -e "$PYTHON_LIBRARY" ] || {
- echo " Please set the full path to the python library "
- echo " (including libpython) using the -python-lib option, "
- echo " or deactivate python support by not using the -python "
- echo " option"
- exit 1
- }
-
- pythonMajor=$(echo $PYTHON_LIBRARY | sed 's/.*libpython\(.*\)\.so.*/\1/')
- pythonInclude=/usr/include/python$pythonMajor
-
- # Note - we could also allow for a PYTHON_INCLUDE variable ...
- [ -d "$pythonInclude" -a -f "$pythonInclude/Python.h" ] || {
- echo " No python headers found in $pythonInclude/"
- echo " Please install python headers or deactivate "
- echo " python support by not using the -python option"
- exit 1
- }
-
- addCMakeVariable "PARAVIEW_ENABLE_PYTHON=ON"
- addCMakeVariable "PYTHON_INCLUDE_DIRS=$pythonInclude"
- addCMakeVariable "PYTHON_LIBRARY=$PYTHON_LIBRARY"
-
- echo "----"
- echo "Python information:"
- echo " executable : $pythonBin"
- echo " version : $pythonMajor"
- echo " include path : $pythonInclude"
- echo " library : $PYTHON_LIBRARY"
-
- unset pythonBin pythonInclude pythonMajor
- else
+ pythonBin=$(which python 2>/dev/null) || {
echo "*** Error: python not found"
echo "*** Deactivate python support by not using the -python "
echo "*** option"
exit 1
+ }
+
+ if [ -n "$PYTHON_LIBRARY" ]
+ then
+
+ # PYTHON_LIBRARY set:
+ [ -e "$PYTHON_LIBRARY" ] || \
+ echo "*** Error: libpython not found at location specified " \
+ "by -python-lib : PYTHON_LIBRARY=$PYTHON_LIBRARY"
+
+ else
+
+ # Fallback: get PYTHON_LIBRARY from dynamically linked binary
+
+ PYTHON_LIBRARY=$(ldd $pythonBin | \
+ sed -ne '/libpython/s/^.* => \(.*\) (.*/\1/p')
+
+ [ -e "$PYTHON_LIBRARY" ] || {
+ echo "*** Error: Unable to determine path to python library."
+ }
+
fi
+
+ [ -e "$PYTHON_LIBRARY" ] || {
+ echo " Please set the full path to the python library "
+ echo " (including libpython) using the -python-lib option, "
+ echo " or deactivate python support by not using the -python "
+ echo " option"
+ exit 1
+ }
+
+ # Guess major from library
+ pythonMajor=$(echo $PYTHON_LIBRARY | sed 's/.*libpython\(.*\)\.so.*/\1/')
+
+ if [ -n "$PYTHON_INCLUDE" ]
+ then
+
+ # PYTHON_INCLUDE set:
+ [ -d "$PYTHON_INCLUDE" -a -f "$PYTHON_INCLUDE/Python.h" ] || \
+ echo "*** Error: Python.h not found at location specified " \
+ "by -python-include : PYTHON_INCLUDE=$PYTHON_INCLUDE"
+
+ elif pythonConfig=$(which python-config 2>/dev/null)
+ then
+ # Guess from python-config
+ # parse '-I/usr/include/python2.7 -I/usr/include/python2.7'
+ # -> '/usr/include/python2.7'
+ PYTHON_INCLUDE=$(python-config --includes | sed -ne 's/^-I\([^ ][^ ]*\).*$/\1/p')
+
+ else
+
+ # Fallback to system headers
+ PYTHON_INCLUDE=/usr/include/python$pythonMajor
+
+ fi
+
+ [ -d "$PYTHON_INCLUDE" -a -f "$PYTHON_INCLUDE/Python.h" ] || {
+ echo " No python headers found in $PYTHON_INCLUDE/"
+ echo " Please install python headers or deactivate "
+ echo " python support by not using the -python option"
+ exit 1
+ }
+
+ addCMakeVariable "PARAVIEW_ENABLE_PYTHON=ON"
+ addCMakeVariable "PYTHON_INCLUDE_DIRS=$PYTHON_INCLUDE"
+ addCMakeVariable "PYTHON_LIBRARY=$PYTHON_LIBRARY"
+
+ echo "----"
+ echo "Python information:"
+ echo " executable : $pythonBin"
+ echo " version : $pythonMajor"
+ echo " include path : $PYTHON_INCLUDE"
+ echo " library : $PYTHON_LIBRARY"
}
diff --git a/etc/tools/QtFunctions b/etc/tools/QtFunctions
index 6a6556f..c67f533 100644
--- a/etc/tools/QtFunctions
+++ b/etc/tools/QtFunctions
@@ -6,20 +6,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# File
# etc/tools/QtFunction
diff --git a/etc/tools/ThirdPartyFunctions b/etc/tools/ThirdPartyFunctions
index 6c5c6a7..8ac3ef7 100644
--- a/etc/tools/ThirdPartyFunctions
+++ b/etc/tools/ThirdPartyFunctions
@@ -6,26 +6,14 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# File
# etc/tools/ThirdPartyFunctions
#
# Description
-# Functions for managing the third-party packages
+# Various functions used in building ThirdParty packages
#
# Define the standard buildBASE and installBASE for the platform
# Define WM_NCOMPPROCS always.
@@ -58,16 +46,21 @@ useGccFlag()
done
}
-# Return mpiicc (for INTELMPI) or mpicc etc.
+# Return by default or if possible for INTELMPI.
+# Cray doesn't have , but its manages mpi paths directly.
+# NOTE: could further refine based on $CC or $WM_CC, but not yet needed
whichMpicc()
{
- local mpicc
+ local mpicc=$(command -v mpicc)
case "$WM_MPLIB" in
(INTELMPI)
- mpicc=$(command -v mpiicc) # Try using intel 'mpiicc'
+ mpicc=$(command -v mpiicc) # Intel available?
+ ;;
+ (CRAY-MPI*)
+ : ${mpicc:=cc} # Cray if there is no
;;
esac
- echo "${mpicc:-mpicc}" # mpiicc | mpicc
+ echo "${mpicc:-mpicc}"
}
#------------------------------------------------------------------------------
@@ -117,7 +110,6 @@ else
WM_NCOMPPROCS=1
fi
export WM_NCOMPPROCS
-# echo "Building on $WM_NCOMPPROCS cores"
#
@@ -417,7 +409,7 @@ downloadFile()
#
-# Copy Make/{files,options} from etc/wmakeFiles/PACKAGE
+# Copy Make/{files,options} from etc/makeFiles/PACKAGE
#
# $1 = PACKAGE
# $2 = TARGET DIRECTORY (optional)
@@ -432,7 +424,7 @@ cpMakeFiles()
local dst="${2:-.}"
echo "cpMakeFiles" $pkg $dst
- wmakeFiles=$WM_THIRD_PARTY_DIR/etc/wmakeFiles/$pkg
+ wmakeFiles=$WM_THIRD_PARTY_DIR/etc/makeFiles/$pkg
for i in $(cd $wmakeFiles && find . -type f)
do
diff --git a/etc/tools/vtkFunctions b/etc/tools/vtkFunctions
index eece891..c0b4d98 100644
--- a/etc/tools/vtkFunctions
+++ b/etc/tools/vtkFunctions
@@ -6,20 +6,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# File
# etc/tools/vtkFunctions
@@ -169,11 +157,12 @@ makeVTK()
cd $VTK_BUILD_DIR || exit 1 # Change to build folder
echo " Starting make"
time make -j $WM_NCOMPPROCS
- echo " Done make"
# Remove lib if it is a link
# (how this was previously handled before 'make install' worked)
[ -L lib ] && rm -f lib 2>/dev/null
+
+ echo " Done make" # Last statement for clean return code
}
diff --git a/etc/wmakeFiles/libccmio/options b/etc/wmakeFiles/libccmio/options
deleted file mode 100644
index 5f4fb60..0000000
--- a/etc/wmakeFiles/libccmio/options
+++ /dev/null
@@ -1,3 +0,0 @@
-/* NOTE: make any changes to this file in etc/wmakeFiles/ */
-
-/* EXE_INC = */
diff --git a/makeADIOS b/makeADIOS
index f558be3..ed57758 100755
--- a/makeADIOS
+++ b/makeADIOS
@@ -7,20 +7,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeADIOS
@@ -51,7 +39,7 @@ usage() {
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
cat<.
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeCCMIO
@@ -111,29 +99,48 @@ CCMIO_ARCH_PATH=$installBASE/$ccmioPACKAGE
# Sources must be available
[ -d "$CCMIO_SOURCE_DIR" ] || die "Missing sources: '$ccmioPACKAGE'"
+#
+# Manual installation
+#
+install()
+{
+ # Ensure a clean build next time
+ wclean
+
+ local incdir=$CCMIO_ARCH_PATH/include/libccmio
+
+ # Make headers available:
+ mkdir -m 0755 -p $incdir
+
+ /bin/cp -pv libccmio/ccmio*.h $incdir
+}
+
+echo "Starting build: $ccmioPACKAGE ($targetType)"
+echo
(
cd $CCMIO_SOURCE_DIR || exit 1
export GIT_DIR=$PWD/.git # Mask seeing our own git-repo
- incDIR=$CCMIO_ARCH_PATH/include/libccmio
- libDIR=$CCMIO_ARCH_PATH/lib
+ rm -rf $CCMIO_ARCH_PATH
+ rm -f $FOAM_EXT_LIBBIN/libccmio.so
- mkdir -p $incDIR 2>/dev/null
- mkdir -p $libDIR 2>/dev/null
+ libdir=$CCMIO_ARCH_PATH/lib
cpMakeFiles libccmio 2>/dev/null
# Place static libraries in sub-directory:
if [ "$targetType" = lib ]
then
- export FOAM_EXT_LIBBIN=$libDIR
+ mkdir -m 0755 -p $libdir 2>/dev/null
+ export FOAM_EXT_LIBBIN=$libdir
fi
- if wmake $targetType
- then
- # Make headers available:
- /bin/cp -pv libccmio/ccmio*.h $incDIR
- fi
-)
+ wmake -j $WM_NCOMPPROCS -s $targetType \
+ && echo "Built: ccmio" \
+ && install
+) || {
+ echo "Error building: ccmio"
+ exit 1
+}
#------------------------------------------------------------------------------
diff --git a/makeCGAL b/makeCGAL
index 7c27be6..5b13fb1 100755
--- a/makeCGAL
+++ b/makeCGAL
@@ -7,20 +7,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeCGAL
@@ -44,8 +32,8 @@ then
dir="$2" # <- CGAL_ARCH_PATH
if [ -d "$dir/include" -a -r "$dir/lib$WM_COMPILER_LIB_ARCH/libCGAL.so" ]
then
- echo " CGAL headers in $dir/include"
- echo " CGAL libs in $dir/lib$WM_COMPILER_LIB_ARCH"
+ echo " CGAL include: $dir/include"
+ echo " CGAL library: $dir/lib$WM_COMPILER_LIB_ARCH"
# Additional information about boost
dir="$3" # <- BOOST_ARCH_PATH
for root in "$dir" /usr
@@ -53,8 +41,8 @@ then
if [ -d "$root/include/boost" \
-a -r "$root/lib$WM_COMPILER_LIB_ARCH/libboost_system.so" ]
then
- echo " BOOST headers in $root/include"
- echo " BOOST libs in $root/lib$WM_COMPILER_LIB_ARCH"
+ echo " boost include: $root/include"
+ echo " boost library: $root/lib$WM_COMPILER_LIB_ARCH"
break
fi
done
diff --git a/makeCmake b/makeCmake
index f8d0cdb..96b3c24 100755
--- a/makeCmake
+++ b/makeCmake
@@ -7,20 +7,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeCmake
diff --git a/makeFFTW b/makeFFTW
index dd8ea35..d5ae7a9 100755
--- a/makeFFTW
+++ b/makeFFTW
@@ -7,20 +7,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeFFTW
@@ -38,8 +26,8 @@ then
dir="$2" # <- FFTW_ARCH_PATH
if [ -d "$dir/include" -a -r "$dir/lib$WM_COMPILER_LIB_ARCH/libfftw3.so" ]
then
- echo " FFTW headers in $dir/include"
- echo " FFTW libs in $dir/lib$WM_COMPILER_LIB_ARCH"
+ echo " fftw include: $dir/include"
+ echo " fftw library: $dir/lib$WM_COMPILER_LIB_ARCH"
exit 0
else
exit 2
diff --git a/makeGcc b/makeGcc
index cfe9c08..90192e1 100755
--- a/makeGcc
+++ b/makeGcc
@@ -7,20 +7,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeGcc
diff --git a/makeGperftools b/makeGperftools
index 4ad0f94..47c2d03 100755
--- a/makeGperftools
+++ b/makeGperftools
@@ -7,20 +7,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeGperftools
diff --git a/makeKAHIP b/makeKAHIP
new file mode 100755
index 0000000..a17b14b
--- /dev/null
+++ b/makeKAHIP
@@ -0,0 +1,193 @@
+#!/bin/sh
+#------------------------------------------------------------------------------
+# ========= |
+# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+# \\ / O peration |
+# \\ / A nd | Copyright (C) 2017 OpenCFD Ltd.
+# \\/ M anipulation |
+#------------------------------------------------------------------------------
+# License
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
+#
+# Script
+# makeKAHIP
+#
+# Description
+# Build the KaHIP library (int32 only).
+#
+# ----------------------------------------------
+# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
+#------------------------------------------------------------------------------
+# Short-circuit test for an installation
+if [ "$1" = "-test" ]
+then
+ [ "$#" -eq 2 ] || { echo "${0##*/} -test : needs 1 argument"; exit 1; }
+ dir="$2" # <- KAHIP_ARCH_PATH
+ if [ -d "$dir/include" ]
+ then
+ for lib in \
+ $FOAM_EXT_LIBBIN/libkahip.so \
+ $dir/lib/libkahip.a \
+ $dir/lib/libkahip.so \
+ $dir/lib$WM_COMPILER_LIB_ARCH/libkahip.a \
+ $dir/lib$WM_COMPILER_LIB_ARCH/libkahip.so \
+ ;
+ do
+ if [ -r "$lib" ]
+ then
+ echo " kahip include: $dir/include"
+ echo " kahip library: ${lib%/*}"
+ exit 0
+ fi
+ done
+ fi
+ exit 2
+fi
+#------------------------------------------------------------------------------
+# Run from third-party directory only
+cd ${0%/*} && wmakeCheckPwd "$WM_THIRD_PARTY_DIR" 2>/dev/null || {
+ echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR"
+ echo " Check your OpenFOAM environment and installation"
+ exit 1
+}
+[ -n "$FOAM_EXT_LIBBIN" ] || {
+ echo "Error (${0##*/}) : \$FOAM_EXT_LIBBIN not set"
+ echo " Check your OpenFOAM environment and installation"
+ exit 1
+}
+. etc/tools/ThirdPartyFunctions
+#------------------------------------------------------------------------------
+_foamEtc config.sh/kahip
+
+kahipPACKAGE=${KAHIP_VERSION:-kahip-system}
+targetType=libso
+
+#------------------------------------------------------------------------------
+usage()
+{
+ exec 1>&2
+ while [ "$#" -ge 1 ]; do echo "$1"; shift; done
+ /bin/cat</dev/null
+
+ if [ -e ../interface -a ! -e interface ]
+ then
+ ln -s ../interface interface
+ fi
+
+ # Place static libraries in sub-directory:
+ if [ "$targetType" = lib ]
+ then
+ mkdir -m 0755 -p $libdir 2>/dev/null
+ export FOAM_EXT_LIBBIN=$libdir
+ fi
+
+ # Location of lib sources for wmake
+ export KAHIP_LIB_SRC=$PWD
+
+ wmake -j $WM_NCOMPPROCS -s $targetType \
+ && echo "Built: kahip" \
+ && install
+) || {
+ echo "Error building: kahip"
+ exit 1
+}
+
+
+#------------------------------------------------------------------------------
diff --git a/makeLLVM b/makeLLVM
index 102cce3..b5141a2 100755
--- a/makeLLVM
+++ b/makeLLVM
@@ -7,20 +7,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeLLVM
@@ -35,12 +23,16 @@
# For example, when building from tar files (version 4.0.0)
#
# 1) Unpack LLVM:
-# tar -xJf llvm-4.0.0.src.tar.xz
-# mv llvm-4.0.0.src llvm-4.0.0
+# tar -xJf llvm-4.0.1.src.tar.xz
+# mv llvm-4.0.1.src llvm-4.0.1
#
# 2) Unpack Clang (also know as cfe):
-# tar -xJf cfe-4.0.0.src.tar.xz
-# mv cfe-4.0.0.src llvm-4.0.0/tools/clang
+# tar -xJf cfe-4.0.1.src.tar.xz
+# mv cfe-4.0.1.src llvm-4.0.1/tools/clang
+#
+# 3) Unpack openmp (optional):
+# tar -xJf openmp-4.0.1.src.tar.xz
+# mv openmp-4.0.1.src llvm-4.0.1/tools/openmp
#
# ----------------------------------------------
# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
diff --git a/makeMETIS b/makeMETIS
new file mode 100755
index 0000000..cdcff2e
--- /dev/null
+++ b/makeMETIS
@@ -0,0 +1,189 @@
+#!/bin/sh
+#------------------------------------------------------------------------------
+# ========= |
+# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+# \\ / O peration |
+# \\ / A nd | Copyright (C) 2017 OpenCFD Ltd.
+# \\/ M anipulation |
+#------------------------------------------------------------------------------
+# License
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
+#
+# Script
+# makeMETIS
+#
+# Description
+# Build script for METIS
+#
+# ----------------------------------------------
+# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
+#------------------------------------------------------------------------------
+# Short-circuit test for an installation
+if [ "$1" = "-test" ]
+then
+ [ "$#" -eq 2 ] || { echo "${0##*/} -test : needs 1 argument"; exit 1; }
+ dir="$2" # <- METIS_ARCH_PATH
+ if [ -d "$dir/include" ]
+ then
+ for lib in \
+ $FOAM_EXT_LIBBIN/libmetis.so \
+ $dir/lib/libmetis.a \
+ $dir/lib/libmetis.so \
+ $dir/lib$WM_COMPILER_LIB_ARCH/libmetis.a \
+ $dir/lib$WM_COMPILER_LIB_ARCH/libmetis.so \
+ ;
+ do
+ if [ -r "$lib" ]
+ then
+ echo " metis include: $dir/include"
+ echo " metis library: ${lib%/*}"
+ exit 0
+ fi
+ done
+ fi
+ exit 2
+fi
+#------------------------------------------------------------------------------
+# Run from third-party directory only
+cd ${0%/*} && wmakeCheckPwd "$WM_THIRD_PARTY_DIR" 2>/dev/null || {
+ echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR"
+ echo " Check your OpenFOAM environment and installation"
+ exit 1
+}
+[ -n "$FOAM_EXT_LIBBIN" ] || {
+ echo "Error (${0##*/}) : \$FOAM_EXT_LIBBIN not set"
+ echo " Check your OpenFOAM environment and installation"
+ exit 1
+}
+. etc/tools/ThirdPartyFunctions
+#------------------------------------------------------------------------------
+_foamEtc config.sh/metis
+
+metisPACKAGE=${METIS_VERSION:-metis-system}
+targetType=libso
+
+#------------------------------------------------------------------------------
+usage() {
+ exec 1>&2
+ while [ "$#" -ge 1 ]; do echo "$1"; shift; done
+ cat</dev/null # Failed rmdir is uncritical
+
+ echo "Installing: $FOAM_EXT_LIBBIN/libmetis.so"
+ fi
+ return 0
+}
+
+echo "Starting build: $metisPACKAGE ($targetType)"
+echo
+(
+ # Configuration options:
+ unset configOpt
+ if [ "$targetType" = libso ]
+ then
+ configOpt="shared=1"
+ fi
+
+ cd $METIS_SOURCE_DIR || exit 1
+ export GIT_DIR=$PWD/.git # Mask seeing our own git-repo
+
+ rm -rf $METIS_ARCH_PATH
+ rm -f $FOAM_EXT_LIBBIN/libmetis.so
+
+ # Adjust metis integer size to match OpenFOAM label-size
+ sed -i -e 's=\(#define IDXTYPEWIDTH\).*=\1 '$WM_LABEL_SIZE'=' \
+ include/metis.h
+
+ # No config option for the library location.
+ # - build normally and use mv to relocate it
+
+ make config $configOpt prefix=$METIS_ARCH_PATH \
+ && make -j $WM_NCOMPPROCS install \
+ && echo "Built: metis" \
+ && install
+) || {
+ echo "Error building: metis"
+ exit 1
+}
+
+
+#------------------------------------------------------------------------------
diff --git a/makeMGridGen b/makeMGridGen
index fdf395f..72d8f55 100755
--- a/makeMGridGen
+++ b/makeMGridGen
@@ -7,20 +7,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeMGridGen
@@ -91,7 +79,7 @@ done
[ -n "$mgridgenPACKAGE" ] || die "The mgridgen-VERSION was not specified"
-# nothing to build
+# Nothing to build
if _foamIsNone "$mgridgenPACKAGE"
then
echo "Using mgridgen-none (skip ThirdParty build of MGridGen)"
@@ -124,23 +112,23 @@ echo
#
install()
{
- echo "Install into $MGRIDGEN_ARCH_PATH"
+ echo "Install into $MGRIDGEN_ARCH_PATH"
- local bindir=$MGRIDGEN_ARCH_PATH/bin
- local incdir=$MGRIDGEN_ARCH_PATH/include
- local libdir=$MGRIDGEN_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
+ local bindir=$MGRIDGEN_ARCH_PATH/bin
+ local incdir=$MGRIDGEN_ARCH_PATH/include
+ local libdir=$MGRIDGEN_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
- for dir in $MGRIDGEN_ARCH_PATH $bindir $incdir $libdir
- do
- mkdir -m 0755 -p $dir
- done
+ for dir in $MGRIDGEN_ARCH_PATH $bindir $incdir $libdir
+ do
+ mkdir -m 0755 -p $dir
+ done
- cp -vf mgridgen.h $incdir
- cp -vf libmgrid.a $libdir
- cp -vf mgridgen $bindir
+ cp -vf mgridgen.h $incdir
+ cp -vf libmgrid.a $libdir
+ cp -vf mgridgen $bindir
- chmod -R 0644 $incdir/* $libdir/*
- chmod -R 0755 $bindir/*
+ chmod -R 0644 $incdir/* $libdir/*
+ chmod -R 0755 $bindir/*
}
diff --git a/makeMPICH b/makeMPICH
index 2332153..d361caa 100755
--- a/makeMPICH
+++ b/makeMPICH
@@ -7,20 +7,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeMPICH
@@ -77,7 +65,7 @@ usage() {
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
cat<.
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeMesa
@@ -59,7 +47,7 @@ usage() {
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
cat<.
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeOPENMPI
@@ -77,9 +65,12 @@ usage() {
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
cat<.
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeParaView
#
# Description
-# Make and install ParaView 4 or 5.
+# Make and install ParaView.
# The ParaView sources should be located under one of these locations:
# - $WM_THIRD_PARTY_DIR/ParaView-VERSION
# - $WM_THIRD_PARTY_DIR/ParaView-vVERSION
@@ -78,6 +66,8 @@ options:
-mpi with mpi
-mpi=N with max 'N' mpi processes. N=0 for no upper-limit.
-python with python
+ -python-include DIR
+ location of python headers (current: ${PYTHON_INCLUDE:-none})
-python-lib PATH path to python library (current: ${PYTHON_LIBRARY:-none})
-cmake PATH with cmake from the path given
-qmake PATH with the Qt version corresponding to the qmake path given
@@ -113,7 +103,7 @@ For finer control, the build stages can be selected or deselected individually:
To make a different paraview version, simply specify on the command-line.
For example,
- ./makeParaview 5.0.1
+ ./makeParaview 5.4.1
Or change the \$WM_PROJECT_DIR/etc/config.sh/paraview settings.
@@ -233,6 +223,12 @@ do
-no-python)
withPYTHON=false
;;
+ -python-include)
+ [ "$#" -ge 2 ] || die "'$1' option requires an argument"
+ withPYTHON=true
+ PYTHON_INCLUDE="${2%%/}"
+ shift
+ ;;
-python-lib)
[ "$#" -ge 2 ] || die "'$1' option requires an argument"
withPYTHON=true
@@ -291,7 +287,7 @@ done
[ -n "$ParaView_VERSION" ] || die "The paraview-VERSION was not specified"
-# nothing to build
+# Nothing to build
if _foamIsNone "$ParaView_VERSION"
then
echo "Using paraview-none (skip ThirdParty build of ParaView)"
diff --git a/makeQt b/makeQt
index e50bcb5..44e691e 100755
--- a/makeQt
+++ b/makeQt
@@ -7,20 +7,8 @@
# \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd.
#------------------------------------------------------------------------------
# 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeQt
@@ -45,7 +33,7 @@ usage() {
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
cat<.
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeTecio
diff --git a/makeVTK b/makeVTK
index 99ead3d..670fcad 100755
--- a/makeVTK
+++ b/makeVTK
@@ -7,20 +7,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# makeVTK
@@ -54,7 +42,7 @@ unset vtk_version mesa_version # Purge current values
# vtk version from OpenFOAM etc/config.sh file:
_foamEtc config.sh/vtk
-VTK_VERSION=$vtk_version
+VTK_VERSION="${vtk_version##*-}" # Without prefix
# New rendering backend (starting with vtk 7?).
withGL2=auto # auto-config based on version
diff --git a/minCmake b/minCmake
index 66693fe..bf749d6 100755
--- a/minCmake
+++ b/minCmake
@@ -7,20 +7,8 @@
# \\/ 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 .
+# This file is part of OpenFOAM, licensed under GNU General Public License
+# .
#
# Script
# minCmake
diff --git a/sources.txt b/sources.txt
deleted file mode 100644
index 5518442..0000000
--- a/sources.txt
+++ /dev/null
@@ -1,48 +0,0 @@
-Third-Party Sources
-===================
-
-OpenFOAM-1706
----------------
-CGAL-4.9.1
-ParaView-5.4.0
-boost_1_64_0
-fftw-3.3.6-pl1
-openmpi-1.10.4
-scotch_6.0.3
-
-
-OpenFOAM-1612
----------------
-CGAL-4.9
-ParaView-5.0.1
-boost_1_62_0
-fftw-3.3.5
-openmpi-1.10.4
-scotch_6.0.3
-
-
-OpenFOAM-1606
----------------
-CGAL-4.8
-ParaView-5.0.1
-boost_1_61_0
-fftw-3.3.4
-openmpi-1.10.2
-scotch_6.0.3
-
-
-OpenFOAM v3.0+
----------------
-CGAL-4.7
-ParaView-4.4.0
-openmpi-1.10.0
-scotch_6.0.3
-
-
-OpenFOAM+ 2.4
----------------
-CGAL-4.6
-ParaView-4.1.0
-cmake-2.8.12.1
-openmpi-1.8.5
-scotch_6.0.3