From 7bb0c919406d043c59116cd630620c18787011c6 Mon Sep 17 00:00:00 2001 From: Jiri Furst Date: Wed, 27 Nov 2019 15:30:46 +0100 Subject: [PATCH 1/5] adding easyconfigs: OpenFOAM-7-foss-2019b.eb and patches: OpenFOAM-7-cleanup.patch --- .../o/OpenFOAM/OpenFOAM-7-cleanup.patch | 307 ++++++++++++++++++ .../o/OpenFOAM/OpenFOAM-7-foss-2019b.eb | 33 ++ 2 files changed, 340 insertions(+) create mode 100644 easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch create mode 100644 easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch new file mode 100644 index 00000000000..8549fb184fa --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch @@ -0,0 +1,307 @@ +# This patch removes all need for the ThirdParty files of OpenFOAM: +# we use EB dependencies for everything. It adjusts the paths, variables, etc +# We also let the install dir, compiler, etc be set by EB. +# Lastly, we also fix a small compile issue in 'ptscotchDecomp.C' +# by Jiri Furst , based on patch for OpenFOAM 5.0 and 4.1 by +# Kennet Hoste (HPC-UGent) and Ward Poelmans +diff -ru OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake +--- OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake 2018-08-14 11:18:48.188975085 +0200 +@@ -7,19 +7,12 @@ + unset COMP_FLAGS LINK_FLAGS + + # Use readline if available +-if [ -f /usr/include/readline/readline.h ] ++if [ -f $EBROOTLIBREADLINE/include/readline/readline.h ] + then + echo " found -- enabling readline support." + export COMP_FLAGS="-DHAS_READLINE" + +- # readline may require ncurses +- if [ -f /usr/include/ncurses/ncurses.h ] +- then +- echo " found -- maybe required by readline." +- export LINK_FLAGS="-lreadline -lncurses" +- else +- export LINK_FLAGS="-lreadline" +- fi ++ export LINK_FLAGS="-L$EBROOTLIBREADLINE/lib -lreadline -L$EBROOTNCURSES -lncurses" + fi + + wmake $targetType +diff -ru OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake +--- OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2018-08-14 11:21:25.280419729 +0200 +@@ -14,8 +14,8 @@ + } + + # ensure CMake gets the correct C/C++ compilers +- [ -n "$WM_CC" ] && export CC="$WM_CC" +- [ -n "$WM_CXX" ] && export CXX="$WM_CXX" ++# [ -n "$WM_CC" ] && export CC="$WM_CC" ++# [ -n "$WM_CXX" ] && export CXX="$WM_CXX" + + wmake $targetType vtkPVblockMesh + wmake $targetType vtkPVFoam +diff -ru OpenFOAM-7-version-7.orig/etc/bashrc OpenFOAM-7-version-7/etc/bashrc +--- OpenFOAM-7-version-7.orig/etc/bashrc 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/bashrc 2018-08-14 11:29:14.168761602 +0200 +@@ -43,8 +43,9 @@ + # Please set to the appropriate path if the default is not correct. + # + [ "$BASH" -o "$ZSH_NAME" ] && \ +-export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \ +-export FOAM_INST_DIR=$HOME/$WM_PROJECT ++#export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \ ++#export FOAM_INST_DIR=$HOME/$WM_PROJECT ++# For Easybuild: set by the module + # export FOAM_INST_DIR=~$WM_PROJECT + # export FOAM_INST_DIR=/opt/$WM_PROJECT + # export FOAM_INST_DIR=/usr/local/$WM_PROJECT +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/CGAL OpenFOAM-7-version-7/etc/config.sh/CGAL +--- OpenFOAM-7-version-7.orig/etc/config.sh/CGAL 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/CGAL 2018-08-14 11:35:21.214457132 +0200 +@@ -35,33 +35,8 @@ + # + #------------------------------------------------------------------------------ + +-boost_version=boost-system +-cgal_version=cgal-system +-#cgal_version=CGAL-4.10 +- +-thirdPartyPath=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER +- +-if [ "$boost_version" != "boost-system" ] +-then +- export BOOST_ARCH_PATH=$thirdPartyPath/$boost_version +- if [ -d "$BOOST_ARCH_PATH" ] +- then +- _foamAddLib $BOOST_ARCH_PATH/lib +- fi +-else +- unset BOOST_ARCH_PATH +-fi +- +-if [ "$cgal_version" != "cgal-system" ] +-then +- export CGAL_ARCH_PATH=$thirdPartyPath/$cgal_version +- if [ -d "$CGAL_ARCH_PATH" ] +- then +- _foamAddLib $CGAL_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH +- fi +-else +- unset CGAL_ARCH_PATH +-fi ++export CGAL_ARCH_PATH=$EBROOTCGAL ++export BOOST_ARCH_PATH=$EBROOTBOOST + + if [ "$FOAM_VERBOSE" -a "$PS1" ] + then +@@ -70,6 +45,4 @@ + echo " $cgal_version at $CGAL_ARCH_PATH" 1>&2 + fi + +-unset thirdPartyPath +- + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/gperftools OpenFOAM-7-version-7/etc/config.sh/gperftools +--- OpenFOAM-7-version-7.orig/etc/config.sh/gperftools 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/gperftools 2018-08-14 11:37:07.582078984 +0200 +@@ -29,13 +29,7 @@ + # + #------------------------------------------------------------------------------ + +-version=svn +-gperftools_install=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER +- +-GPERFTOOLS_VERSION=gperftools-$version +-GPERFTOOLS_ARCH_PATH=$gperftools_install/$GPERFTOOLS_VERSION +- +-export PATH=$GPERFTOOLS_ARCH_PATH/bin:$PATH +-export LD_LIBRARY_PATH=$GPERFTOOLS_ARCH_PATH/lib:$LD_LIBRARY_PATH ++GPERFTOOLS_VERSION=gperftools-$EBVERSIONGPERFTOOLS ++GPERFTOOLS_ARCH_PATH=$EBROOTGPERFTOOLS + + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/metis OpenFOAM-7-version-7/etc/config.sh/metis +--- OpenFOAM-7-version-7.orig/etc/config.sh/metis 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/metis 2018-08-14 11:39:06.204657280 +0200 +@@ -34,7 +34,7 @@ + # + #------------------------------------------------------------------------------ + +-export METIS_VERSION=metis-5.1.0 +-export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$METIS_VERSION ++export METIS_VERSION=metis-$EBVERSIONMETIS ++export METIS_ARCH_PATH=$EBROOTMETIS + + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/mpi OpenFOAM-7-version-7/etc/config.sh/mpi +--- OpenFOAM-7-version-7.orig/etc/config.sh/mpi 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/mpi 2018-08-14 11:45:15.876343167 +0200 +@@ -257,6 +257,9 @@ + _foamAddPath $MPI_ARCH_PATH/bin64 + _foamAddLib $MPI_ARCH_PATH/lib64 + ;; ++EASYBUILDMPI) ++ export FOAM_MPI=mpi ++ ;; + *) + export FOAM_MPI=dummy + ;; +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/paraview OpenFOAM-7-version-7/etc/config.sh/paraview +--- OpenFOAM-7-version-7.orig/etc/config.sh/paraview 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/paraview 2018-08-14 11:48:56.859557664 +0200 +@@ -41,21 +41,6 @@ + ) \ + && PATH="$cleaned" + +-# Determine the cmake to be used +-unset CMAKE_HOME +-for cmake in cmake-3.2.1 cmake-2.8.12.1 cmake-2.8.8 cmake-2.8.4 cmake-2.8.3 \ +- cmake-2.8.1 cmake-3.9.0 +-do +- cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cmake +- if [ -r $cmake ] +- then +- export CMAKE_HOME=$cmake +- export CMAKE_ROOT=$cmake +- export PATH=$CMAKE_HOME/bin:$PATH +- break +- fi +-done +- + + #- ParaView version, automatically determine major version + #export ParaView_VERSION=3.12.0 +@@ -67,7 +52,8 @@ + #export ParaView_VERSION=5.0.1 + #export ParaView_VERSION=5.4.0 + #export ParaView_VERSION=5.5.0 +-export ParaView_VERSION=5.6.0 ++#export ParaView_VERSION=5.6.0 ++export ParaView_VERSION=$EBVERSIONPARAVIEW + export ParaView_MAJOR=detect + + #export ParaView_GL=system +@@ -107,21 +93,15 @@ + paraviewInstDir=$WM_THIRD_PARTY_DIR/ParaView-$ParaView_VERSION + paraviewArchName=ParaView-$ParaView_VERSION + +-export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$paraviewArchName ++export ParaView_DIR=$EBROOTPARAVIEW + + # Set paths if binaries or source are present + if [ -r $ParaView_DIR -o -r $paraviewInstDir ] + then + export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR +- if [ ! -d $ParaView_INCLUDE_DIR -a -d $ParaView_DIR/include/paraview-3.0 ] +- then +- export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-3.0 +- fi + + ParaView_LIB_DIR=$ParaView_DIR/lib/paraview-$ParaView_MAJOR + +- export PATH=$ParaView_DIR/bin:$PATH +- export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$LD_LIBRARY_PATH + export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR + + if [ "$FOAM_VERBOSE" -a "$PS1" ] +@@ -136,18 +116,6 @@ + echo " PV_PLUGIN_PATH : $PV_PLUGIN_PATH" + fi + +- # Add in python libraries if required +- paraviewPython=$ParaView_DIR/Utilities/VTKPythonWrapping +- if [ -r $paraviewPython ] +- then +- if [ "$PYTHONPATH" ] +- then +- export PYTHONPATH=$PYTHONPATH:$paraviewPython:$ParaView_LIB_DIR +- else +- export PYTHONPATH=$paraviewPython:$ParaView_LIB_DIR +- fi +- fi +- + [ "$ParaView_GL" = mesa ] && alias paraview="paraview --mesa" + else + unset PV_PLUGIN_PATH +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/scotch OpenFOAM-7-version-7/etc/config.sh/scotch +--- OpenFOAM-7-version-7.orig/etc/config.sh/scotch 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/scotch 2018-08-14 11:50:33.739213308 +0200 +@@ -37,7 +37,7 @@ + # + #------------------------------------------------------------------------------ + +-export SCOTCH_VERSION=scotch_6.0.6 +-export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$SCOTCH_VERSION ++export SCOTCH_VERSION=scotch_$EBVERSIONSCOTCH ++export SCOTCH_ARCH_PATH=$EBROOTSCOTCH + + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/settings OpenFOAM-7-version-7/etc/config.sh/settings +--- OpenFOAM-7-version-7.orig/etc/config.sh/settings 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/settings 2018-08-14 11:53:15.092639797 +0200 +@@ -61,11 +61,11 @@ + 64) + WM_ARCH=linux64 + export WM_COMPILER_LIB_ARCH=64 +- export WM_CC='gcc' +- export WM_CXX='g++' +- export WM_CFLAGS='-m64 -fPIC' +- export WM_CXXFLAGS='-m64 -fPIC -std=c++0x' +- export WM_LDFLAGS='-m64' ++ export WM_CC=$CC ++ export WM_CXX=$CXX ++ export WM_CFLAGS=$CFLAGS ++ export WM_CXXFLAGS=$CXXFLAGS ++ export WM_LDFLAGS=$LDFLAGS + ;; + *) + echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"\ +diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options +--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options 2018-08-14 11:55:27.323169812 +0200 +@@ -5,14 +5,7 @@ + $(PFLAGS) $(PINC) \ + -I$(FOAM_SRC)/Pstream/mpi/lnInclude \ + -I$(SCOTCH_ARCH_PATH)/include/$(FOAM_MPI) \ +- -I$(SCOTCH_ARCH_PATH)/include \ +- -I/usr/include/scotch \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ +- -L$(SCOTCH_ARCH_PATH)/lib \ +- -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) \ +- -lptscotch \ +- -lptscotcherrexit \ +- -lscotch \ +- -lrt ++ -L$(SCOTCH_ARCH_PATH)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lptscotcherrexit -lscotch ${LINK_FLAGS} -lrt +diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C +--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C 2018-08-14 11:57:24.057754914 +0200 +@@ -31,10 +31,11 @@ + #include "SubField.H" + #include "PstreamGlobals.H" + ++#include ++ + extern "C" + { + #include +- #include + #include "ptscotch.h" + } + +diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options +--- OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options 2018-08-14 11:58:42.345476668 +0200 +@@ -8,7 +8,6 @@ + EXE_INC = \ + $(PFLAGS) $(PINC) \ + -I$(SCOTCH_ARCH_PATH)/include \ +- -I/usr/include/scotch \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb new file mode 100644 index 00000000000..fa351e2dd3a --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb @@ -0,0 +1,33 @@ +name = 'OpenFOAM' +version = '7' + +homepage = 'https://www.openfoam.org/' +description = """OpenFOAM is a free, open source CFD software package. + OpenFOAM has an extensive range of features to solve anything from complex fluid flows + involving chemical reactions, turbulence and heat transfer, + to solid dynamics and electromagnetics.""" + +toolchain = {'name': 'foss', 'version': '2019b'} +toolchainopts = {'cstd': 'c++11'} + +source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive'] +sources = ['version-%(version)s.tar.gz'] +patches = ['OpenFOAM-%(version)s-cleanup.patch'] + +dependencies = [ + ('libreadline', '8.0'), + ('ncurses', '6.1'), + # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes) + ('METIS', '5.1.0'), + ('SCOTCH', '6.0.9'), + ('CGAL', '4.14.1', '-Python-3.7.4'), + ('ParaView', '5.6.2', '-Python-3.7.4-mpi'), +] + +builddependencies = [ + ('Bison', '3.3.2'), + ('CMake', '3.15.3'), + ('flex', '2.6.4'), +] + +moduleclass = 'cae' From 44651819d353621d1d30da8d98e491f88aa79d95 Mon Sep 17 00:00:00 2001 From: Jiri Furst Date: Wed, 27 Nov 2019 15:45:43 +0100 Subject: [PATCH 2/5] Updates checksums --- easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb index fa351e2dd3a..dea35b091b5 100644 --- a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb @@ -13,6 +13,10 @@ toolchainopts = {'cstd': 'c++11'} source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive'] sources = ['version-%(version)s.tar.gz'] patches = ['OpenFOAM-%(version)s-cleanup.patch'] +checksums = [ + '12389cf092dc032372617785822a597aee434a50a62db2a520ab35ba5a7548b5', # version-7.tar.gz + '377734a328c75e8b2de8eadbc8a2f80ea8f740f4da790c48f7953db31bac598e', # OpenFOAM-7-cleanup.patch +] dependencies = [ ('libreadline', '8.0'), From 4a5133c0e17771721de004529ab4dae022bcd4a8 Mon Sep 17 00:00:00 2001 From: Jiri Furst Date: Thu, 28 Nov 2019 18:33:19 +0100 Subject: [PATCH 3/5] Patch for OpenFOAM bug 3303 --- .../o/OpenFOAM/OpenFOAM-7-cleanup.patch | 31 ++++++++++ .../o/OpenFOAM/OpenFOAM-7-foss-2019b.eb | 8 ++- .../OpenFOAM/OpenFOAM-7-mpi-compilation.patch | 57 +++++++++++++++++++ 3 files changed, 94 insertions(+), 2 deletions(-) create mode 100644 easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch index 8549fb184fa..fd08f290afc 100644 --- a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch @@ -58,6 +58,37 @@ diff -ru OpenFOAM-7-version-7.orig/etc/bashrc OpenFOAM-7-version-7/etc/bashrc # export FOAM_INST_DIR=~$WM_PROJECT # export FOAM_INST_DIR=/opt/$WM_PROJECT # export FOAM_INST_DIR=/usr/local/$WM_PROJECT +@@ -113,10 +113,30 @@ foamOldDirs="$WM_PROJECT_DIR $WM_THIRD_PARTY_DIR \ + export WM_PROJECT_INST_DIR=$FOAM_INST_DIR + export WM_PROJECT_DIR=$WM_PROJECT_INST_DIR/$WM_PROJECT-$WM_PROJECT_VERSION + ++if [ -d "$WM_PROJECT_DIR" ] ++then ++ WM_PROJECT_DIR_REAL=$(cd $WM_PROJECT_DIR && pwd -P) ++ if [ -d "$WM_PROJECT_DIR_REAL" -a -e "$WM_PROJECT_DIR_REAL/etc/bashrc" ] ++ then ++ export WM_PROJECT_DIR=$WM_PROJECT_DIR_REAL ++ fi ++ unset WM_PROJECT_DIR_REAL ++fi ++ + # Location of third-party software + # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + export WM_THIRD_PARTY_DIR=$WM_PROJECT_INST_DIR/ThirdParty-$WM_PROJECT_VERSION + ++if [ -d "$WM_THIRD_PARTY_DIR" ] ++then ++ WM_THIRD_PARTY_DIR_REAL=$(cd $WM_THIRD_PARTY_DIR && pwd -P) ++ if [ -d "$WM_THIRD_PARTY_DIR_REAL" -a -e "$WM_THIRD_PARTY_DIR_REAL/etc/tools" ] ++ then ++ export WM_THIRD_PARTY_DIR=$WM_THIRD_PARTY_DIR_REAL ++ fi ++ unset WM_THIRD_PARTY_DIR_REAL ++fi ++ + # Location of site-specific templates etc + # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + # unset is equivalent to $WM_PROJECT_INST_DIR/site diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/CGAL OpenFOAM-7-version-7/etc/config.sh/CGAL --- OpenFOAM-7-version-7.orig/etc/config.sh/CGAL 2018-07-09 18:01:02.000000000 +0200 +++ OpenFOAM-7-version-7/etc/config.sh/CGAL 2018-08-14 11:35:21.214457132 +0200 diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb index dea35b091b5..129f4537a14 100644 --- a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb @@ -12,10 +12,14 @@ toolchainopts = {'cstd': 'c++11'} source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive'] sources = ['version-%(version)s.tar.gz'] -patches = ['OpenFOAM-%(version)s-cleanup.patch'] +patches = [ + 'OpenFOAM-%(version)s-cleanup.patch', + 'OpenFOAM-%(version)s-mpi-compilation.patch', +] checksums = [ '12389cf092dc032372617785822a597aee434a50a62db2a520ab35ba5a7548b5', # version-7.tar.gz - '377734a328c75e8b2de8eadbc8a2f80ea8f740f4da790c48f7953db31bac598e', # OpenFOAM-7-cleanup.patch + '64b8614e41f8e8a33d944cf5b91031fb10cec51784f4549e83dcd46985683ef3', # OpenFOAM-7-cleanup.patch + '9f2af8f67a57a187f68aadaa99bc99f1cfbfe41086e5839a57e1bb4e41b3762c', # OpenFOAM-7-mpi-compilation.patch ] dependencies = [ diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch new file mode 100644 index 00000000000..6cdbbe41ca0 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch @@ -0,0 +1,57 @@ +# Resolves compilation bug https://bugs.openfoam.org/view.php?id=3303 +# +# authors: Henry Weller, Bruno Santos +--- OpenFOAM-7/wmake/wclean.orig 2019-11-28 16:10:41.511704188 +0100 ++++ OpenFOAM-7/wmake/wclean 2019-11-28 16:13:12.535866056 +0100 +@@ -3,7 +3,7 @@ + # ========= | + # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + # \\ / O peration | Website: https://openfoam.org +-# \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation ++# \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation + # \\/ M anipulation | + #------------------------------------------------------------------------------ + # License +@@ -260,10 +260,11 @@ + if [ -d "$MakeDir" ] + then + objectsDir=$MakeDir/$WM_OPTIONS +- if [[ "$PWD" = *"$WM_PROJECT_DIR"* ]] ++ expandPath "$PWD" ++ if [[ "$exPath" = *"$WM_PROJECT_DIR"* ]] + then + platformPath=$WM_PROJECT_DIR/platforms/${WM_OPTIONS} +- objectsDir=$platformPath${PWD//$WM_PROJECT_DIR/} ++ objectsDir=$platformPath${exPath//$WM_PROJECT_DIR/} + fi + rm -rf "$objectsDir" 2>/dev/null + fi +--- OpenFOAM-7/wmake/wrmdep.orig 2019-11-28 16:13:30.359882390 +0100 ++++ OpenFOAM-7/wmake/wrmdep 2019-11-28 16:15:36.511999016 +0100 +@@ -3,7 +3,7 @@ + # ========= | + # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + # \\ / O peration | Website: https://openfoam.org +-# \\ / A nd | Copyright (C) 2015-2018 OpenFOAM Foundation ++# \\ / A nd | Copyright (C) 2015-2019 OpenFOAM Foundation + # \\/ M anipulation | + #------------------------------------------------------------------------------ + # License +@@ -227,12 +227,16 @@ + + updateMode) + +- if [ "$PWD" != "$WM_PROJECT_DIR" ] ++ expandPath "$PWD" ++ if [ "$exPath" != "$WM_PROJECT_DIR" ] + then + echo "Cannot 'update', not in the project top-level directory" + exit 1 + fi + ++ # Go into the real path ++ cd "$exPath" ++ + echo "Removing dep files corresponding to source files that no longer exist..." + fileNameList=$(find -L src applications -name '*.[CHL]' -type l) + From 0efd968f2846d7649cb686bf64c5baae8abc0434 Mon Sep 17 00:00:00 2001 From: Jiri Furst Date: Tue, 3 Dec 2019 22:34:09 +0100 Subject: [PATCH 4/5] Updated patch for compilation without system-wide GL/gl.h --- .../o/OpenFOAM/OpenFOAM-7-cleanup.patch | 18 ++++++++++++++++++ .../o/OpenFOAM/OpenFOAM-7-foss-2019b.eb | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch index fd08f290afc..a1a97a78f81 100644 --- a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch @@ -43,6 +43,24 @@ diff -ru OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphic wmake $targetType vtkPVblockMesh wmake $targetType vtkPVFoam +@@ -26,7 +26,7 @@ + cd PVblockMeshReader + mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1 + cd Make/$WM_OPTIONS +- cmake ../.. ++ cmake -D_qt5gui_OPENGL_INCLUDE_DIR=$EBROOTMESA/include ../.. + make + ) + +@@ -34,7 +34,7 @@ + cd PVFoamReader + mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1 + cd Make/$WM_OPTIONS +- cmake ../.. ++ cmake -D_qt5gui_OPENGL_INCLUDE_DIR=$EBROOTMESA/include ../.. + make + ) + fi diff -ru OpenFOAM-7-version-7.orig/etc/bashrc OpenFOAM-7-version-7/etc/bashrc --- OpenFOAM-7-version-7.orig/etc/bashrc 2018-07-09 18:01:02.000000000 +0200 +++ OpenFOAM-7-version-7/etc/bashrc 2018-08-14 11:29:14.168761602 +0200 diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb index 129f4537a14..6bcf5936ff2 100644 --- a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb @@ -18,7 +18,7 @@ patches = [ ] checksums = [ '12389cf092dc032372617785822a597aee434a50a62db2a520ab35ba5a7548b5', # version-7.tar.gz - '64b8614e41f8e8a33d944cf5b91031fb10cec51784f4549e83dcd46985683ef3', # OpenFOAM-7-cleanup.patch + '8b2f6bcd396e7779de2c03561d4a004014ab250274b1fc82444845c074dcf6a3', # OpenFOAM-7-cleanup.patch '9f2af8f67a57a187f68aadaa99bc99f1cfbfe41086e5839a57e1bb4e41b3762c', # OpenFOAM-7-mpi-compilation.patch ] From 9d4dd1e309ed99a6d0d7b051ca9cfb67bed18f36 Mon Sep 17 00:00:00 2001 From: Jiri Furst Date: Thu, 5 Dec 2019 08:53:34 +0100 Subject: [PATCH 5/5] Removed -D_qt5gui_.. patch --- .../o/OpenFOAM/OpenFOAM-7-cleanup.patch | 18 ------------------ .../o/OpenFOAM/OpenFOAM-7-foss-2019b.eb | 2 +- 2 files changed, 1 insertion(+), 19 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch index a1a97a78f81..fd08f290afc 100644 --- a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-cleanup.patch @@ -43,24 +43,6 @@ diff -ru OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphic wmake $targetType vtkPVblockMesh wmake $targetType vtkPVFoam -@@ -26,7 +26,7 @@ - cd PVblockMeshReader - mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1 - cd Make/$WM_OPTIONS -- cmake ../.. -+ cmake -D_qt5gui_OPENGL_INCLUDE_DIR=$EBROOTMESA/include ../.. - make - ) - -@@ -34,7 +34,7 @@ - cd PVFoamReader - mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1 - cd Make/$WM_OPTIONS -- cmake ../.. -+ cmake -D_qt5gui_OPENGL_INCLUDE_DIR=$EBROOTMESA/include ../.. - make - ) - fi diff -ru OpenFOAM-7-version-7.orig/etc/bashrc OpenFOAM-7-version-7/etc/bashrc --- OpenFOAM-7-version-7.orig/etc/bashrc 2018-07-09 18:01:02.000000000 +0200 +++ OpenFOAM-7-version-7/etc/bashrc 2018-08-14 11:29:14.168761602 +0200 diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb index 6bcf5936ff2..129f4537a14 100644 --- a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-7-foss-2019b.eb @@ -18,7 +18,7 @@ patches = [ ] checksums = [ '12389cf092dc032372617785822a597aee434a50a62db2a520ab35ba5a7548b5', # version-7.tar.gz - '8b2f6bcd396e7779de2c03561d4a004014ab250274b1fc82444845c074dcf6a3', # OpenFOAM-7-cleanup.patch + '64b8614e41f8e8a33d944cf5b91031fb10cec51784f4549e83dcd46985683ef3', # OpenFOAM-7-cleanup.patch '9f2af8f67a57a187f68aadaa99bc99f1cfbfe41086e5839a57e1bb4e41b3762c', # OpenFOAM-7-mpi-compilation.patch ]