diff --git a/easybuild/easyconfigs/c/CGAL/CGAL-6.0.1-GCCcore-14.2.0.eb b/easybuild/easyconfigs/c/CGAL/CGAL-6.0.1-GCCcore-14.2.0.eb new file mode 100644 index 000000000000..e5bf3f3cc169 --- /dev/null +++ b/easybuild/easyconfigs/c/CGAL/CGAL-6.0.1-GCCcore-14.2.0.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' +name = 'CGAL' +version = '6.0.1' + +homepage = 'https://www.cgal.org/' +description = """The goal of the CGAL Open Source Project is to provide easy access to efficient + and reliable geometric algorithms in the form of a C++ library.""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} +toolchainopts = {'strict': True} + +source_urls = ['https://github.com/CGAL/cgal/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['0acdfbf317c556630dd526f3253780f29b6ec9713ee92903e81b5c93c0f59b7f'] + +builddependencies = [ + ('CMake', '3.31.3'), + ('binutils', '2.42'), +] + +sanity_check_paths = { + 'files': ['include/CGAL/Simple_cartesian.h'], + 'dirs': ['include/CGAL', 'lib/cmake/CGAL'], +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-13-ThirdParty.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-13-ThirdParty.patch new file mode 100644 index 000000000000..5e0253d20e22 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-13-ThirdParty.patch @@ -0,0 +1,593 @@ +# 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. +# Based on patch for OpenFOAM 5.0 and 4.1 by Kenneth Hoste (HPC-UGent) and Ward Poelmans +# Updated by: +# Leon Kos (University of Birmingham) +# Simon Branford (University of Birmingham) +# maxim-masterov (SURF) +diff -Nru OpenFOAM-13-version-13.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake OpenFOAM-13-version-13/applications/utilities/postProcessing/graphics/PVReaders/Allwmake +--- OpenFOAM-13-version-13.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2025-08-19 16:07:38.715398084 +0200 ++++ OpenFOAM-13-version-13/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2025-08-19 16:08:12.736902989 +0200 +@@ -11,8 +11,8 @@ + fi + + # 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 -Nru OpenFOAM-13-version-13.orig/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt OpenFOAM-13-version-13/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt +--- OpenFOAM-13-version-13.orig/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt 2025-08-19 16:07:38.715762175 +0200 ++++ OpenFOAM-13-version-13/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt 2025-08-19 16:08:37.114372207 +0200 +@@ -2,6 +2,8 @@ + + PROJECT(PVReaders) + ++FIND_PACKAGE(MPI REQUIRED) ++ + FIND_PACKAGE(ParaView REQUIRED) + + INCLUDE(GNUInstallDirs) +diff -Nru OpenFOAM-13-version-13.orig/etc/bashrc OpenFOAM-13-version-13/etc/bashrc +--- OpenFOAM-13-version-13.orig/etc/bashrc 2025-08-19 16:07:30.468232000 +0200 ++++ OpenFOAM-13-version-13/etc/bashrc 2025-08-19 16:09:36.922300000 +0200 +@@ -44,12 +44,13 @@ + # + [ "$BASH" ] && bashrcFile=${BASH_SOURCE} + [ "$ZSH_NAME" ] && bashrcFile=$0 +-if [ -n "$bashrcFile" ] +-then +- export FOAM_INST_DIR=$(cd $(dirname $bashrcFile)/../.. && pwd -P) +-else +- export FOAM_INST_DIR=$HOME/$WM_PROJECT +-fi ++#if [ -n "$bashrcFile" ] ++#then ++# export FOAM_INST_DIR=$(cd $(dirname $bashrcFile)/../.. && pwd -P) ++#else ++# export FOAM_INST_DIR=$HOME/$WM_PROJECT ++#fi ++# For Easybuild: set by the module + unset bashrcFile + # + # Please set to the appropriate path if the above default is not correct. E.g., +diff -Nru OpenFOAM-13-version-13.orig/etc/config.sh/gperftools OpenFOAM-13-version-13/etc/config.sh/gperftools +--- OpenFOAM-13-version-13.orig/etc/config.sh/gperftools 2025-08-19 16:07:30.617418946 +0200 ++++ OpenFOAM-13-version-13/etc/config.sh/gperftools 2025-08-19 16:10:21.629954625 +0200 +@@ -29,13 +29,16 @@ + # + #------------------------------------------------------------------------------ + +-version=svn +-gperftools_install=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER +- +-GPERFTOOLS_VERSION=gperftools-$version +-GPERFTOOLS_ARCH_PATH=$gperftools_install/$GPERFTOOLS_VERSION ++#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 + +-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 -Nru OpenFOAM-13-version-13.orig/etc/config.sh/metis OpenFOAM-13-version-13/etc/config.sh/metis +--- OpenFOAM-13-version-13.orig/etc/config.sh/metis 2025-08-19 16:07:30.616976699 +0200 ++++ OpenFOAM-13-version-13/etc/config.sh/metis 2025-08-19 16:11:20.175099112 +0200 +@@ -37,32 +37,35 @@ + # Load functions + . $WM_PROJECT_DIR/etc/config.sh/functions + +-# Find the path to the metis installation +-case "$METIS_TYPE" in +-none) +- ;; +-system) +- export METIS_VERSION=system +- export METIS_ARCH_PATH=/usr +- ;; +-OpenFOAM | ThirdParty) +- # Look for the source directory +- if [ -z "$METIS_VERSION" ] +- then +- metisSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/metis-*) +- else +- metisSrcDir=$WM_THIRD_PARTY_DIR/metis-$METIS_VERSION +- fi +- # Set the version and the installation path +- if [ -d "$metisSrcDir" ] +- then +- export METIS_VERSION=${metisSrcDir##*metis-} +- export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/metis-$METIS_VERSION +- fi +- # Clean up +- unset metisSrcDir +- ;; +-esac ++## Find the path to the metis installation ++#case "$METIS_TYPE" in ++#none) ++# ;; ++#system) ++# export METIS_VERSION=system ++# export METIS_ARCH_PATH=/usr ++# ;; ++#OpenFOAM | ThirdParty) ++# # Look for the source directory ++# if [ -z "$METIS_VERSION" ] ++# then ++# metisSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/metis-*) ++# else ++# metisSrcDir=$WM_THIRD_PARTY_DIR/metis-$METIS_VERSION ++# fi ++# # Set the version and the installation path ++# if [ -d "$metisSrcDir" ] ++# then ++# export METIS_VERSION=${metisSrcDir##*metis-} ++# export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/metis-$METIS_VERSION ++# fi ++# # Clean up ++# unset metisSrcDir ++# ;; ++#esac ++ ++export METIS_VERSION=metis-$EBVERSIONMETIS ++export METIS_ARCH_PATH=$EBROOTMETIS + + # Unload functions + . $WM_PROJECT_DIR/etc/config.sh/functions +diff -Nru OpenFOAM-13-version-13.orig/etc/config.sh/mpi OpenFOAM-13-version-13/etc/config.sh/mpi +--- OpenFOAM-13-version-13.orig/etc/config.sh/mpi 2025-08-19 16:07:30.619248000 +0200 ++++ OpenFOAM-13-version-13/etc/config.sh/mpi 2025-08-19 16:12:13.458678227 +0200 +@@ -298,6 +298,9 @@ + _foamAddPath $MPI_ARCH_PATH/bin64 + _foamAddLib $MPI_ARCH_PATH/lib/release + ;; ++EASYBUILDMPI) ++ export FOAM_MPI=mpi ++ ;; + *) + export FOAM_MPI=dummy + ;; +diff -Nru OpenFOAM-13-version-13.orig/etc/config.sh/paraview OpenFOAM-13-version-13/etc/config.sh/paraview +--- OpenFOAM-13-version-13.orig/etc/config.sh/paraview 2025-08-19 16:07:30.620160000 +0200 ++++ OpenFOAM-13-version-13/etc/config.sh/paraview 2025-08-19 16:13:31.016614000 +0200 +@@ -38,117 +38,125 @@ + ) \ + && PATH="$cleaned" + +-# Detect the most recent version of cmake available and add to the PATH +-cmakeDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/platforms/$WM_ARCH$WM_COMPILER/cmake-*) +-if [ -n "$cmakeDir" ] +-then +- export PATH=$cmakeDir/bin:$PATH +-fi +-unset cmakeDir +- +-# Set up the paraview environment +-case "$ParaView_TYPE" in +-none) +- ;; +- +-system) +- +- # Look for a paraview installation +- if pvserverExe=$(which pvserver 2> /dev/null) +- then +- paraviewBinDir=$(dirname $pvserverExe) +- paraviewBinDir=$(cd $paraviewBinDir && pwd -P) +- fi +- +- # Set the environment +- if [ -d "$paraviewBinDir" ] +- then +- export ParaView_DIR=$(dirname $paraviewBinDir) +- export ParaView_LIB_DIR=$(unset LD_LIBRARY_PATH && \ +- ldd $paraviewBinDir/paraview | \ +- grep -o "/.*/libpqCore-pv.*.so" | \ +- xargs dirname) +- export ParaView_VERSION=$(unset LD_LIBRARY_PATH && \ +- pvserver --version 2> /dev/null | \ +- awk '{print $NF}') +- export ParaView_MAJOR=${ParaView_VERSION%.*} +- export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR +- export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR +- +- # Add to the library path +- export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH +- fi +- +- unset pvserverExe paraviewBinDir +- ;; +- +-paraviewopenfoam) +- +- # Look for a paraview installation. The version should be set externally. +- if [ -n "$ParaView_VERSION" ] +- then +- export ParaView_MAJOR=${ParaView_VERSION%.*} +- paraviewDir=/opt/paraviewopenfoam$(echo "$ParaView_MAJOR" | tr -d '.') +- fi +- +- # Set the environment +- if [ -d "$paraviewDir" ] +- then +- export ParaView_DIR=$paraviewDir +- export ParaView_LIB_DIR=$(echo "$ParaView_DIR"/lib* | tr ' ' ':') +- export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR +- export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR +- +- # Add to the path and the library path +- export PATH=$ParaView_DIR/bin:$PATH +- export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH +- fi +- +- unset paraviewDir +- ;; +- +-OpenFOAM | ThirdParty) +- +- # Look for a paraview installation +- if [ -z "$ParaView_VERSION" ] +- then +- paraviewDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/platforms/$WM_ARCH$WM_COMPILER/ParaView-*) +- else +- paraviewDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/ParaView-$ParaView_VERSION +- fi +- +- # Set the environment +- if [ -d "$paraviewDir" ] +- then +- export ParaView_DIR=$paraviewDir +- export ParaView_LIB_DIR=$(echo "$ParaView_DIR"/lib* | tr ' ' ':') +- export ParaView_VERSION=${paraviewDir##*ParaView-} +- export ParaView_MAJOR=${ParaView_VERSION%.*} +- export ParaView_INCLUDE_DIR=$paraviewDir/include/paraview-$ParaView_MAJOR +- export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR +- +- # Add to the path and the library path +- export PATH=$ParaView_DIR/bin:$PATH +- export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH +- +- # 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 +- unset paraviewPython +- fi +- +- unset paraviewDir +- ;; +- +-esac ++## Detect the most recent version of cmake available and add to the PATH ++#cmakeDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/platforms/$WM_ARCH$WM_COMPILER/cmake-*) ++#if [ -n "$cmakeDir" ] ++#then ++# export PATH=$cmakeDir/bin:$PATH ++#fi ++#unset cmakeDir ++# ++## Set up the paraview environment ++#case "$ParaView_TYPE" in ++#none) ++# ;; ++# ++#system) ++# ++# # Look for a paraview installation ++# if pvserverExe=$(which pvserver 2> /dev/null) ++# then ++# paraviewBinDir=$(dirname $pvserverExe) ++# paraviewBinDir=$(cd $paraviewBinDir && pwd -P) ++# fi ++# ++# # Set the environment ++# if [ -d "$paraviewBinDir" ] ++# then ++# export ParaView_DIR=$(dirname $paraviewBinDir) ++# export ParaView_LIB_DIR=$(unset LD_LIBRARY_PATH && \ ++# ldd $paraviewBinDir/paraview | \ ++# grep -o "/.*/libpqCore-pv.*.so" | \ ++# xargs dirname) ++# export ParaView_VERSION=$(unset LD_LIBRARY_PATH && \ ++# pvserver --version 2> /dev/null | \ ++# awk '{print $NF}') ++# export ParaView_MAJOR=${ParaView_VERSION%.*} ++# export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR ++# export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR ++# ++# # Add to the library path ++# export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH ++# fi ++# ++# unset pvserverExe paraviewBinDir ++# ;; ++# ++#paraviewopenfoam) ++# ++# # Look for a paraview installation. The version should be set externally. ++# if [ -n "$ParaView_VERSION" ] ++# then ++# export ParaView_MAJOR=${ParaView_VERSION%.*} ++# paraviewDir=/opt/paraviewopenfoam$(echo "$ParaView_MAJOR" | tr -d '.') ++# fi ++# ++# # Set the environment ++# if [ -d "$paraviewDir" ] ++# then ++# export ParaView_DIR=$paraviewDir ++# export ParaView_LIB_DIR=$(echo "$ParaView_DIR"/lib* | tr ' ' ':') ++# export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR ++# export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR ++# ++# # Add to the path and the library path ++# export PATH=$ParaView_DIR/bin:$PATH ++# export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH ++# fi ++# ++# unset paraviewDir ++# ;; ++# ++#OpenFOAM | ThirdParty) ++# ++# # Look for a paraview installation ++# if [ -z "$ParaView_VERSION" ] ++# then ++# paraviewDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/platforms/$WM_ARCH$WM_COMPILER/ParaView-*) ++# else ++# paraviewDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/ParaView-$ParaView_VERSION ++# fi ++# ++# # Set the environment ++# if [ -d "$paraviewDir" ] ++# then ++# export ParaView_DIR=$paraviewDir ++# export ParaView_LIB_DIR=$(echo "$ParaView_DIR"/lib* | tr ' ' ':') ++# export ParaView_VERSION=${paraviewDir##*ParaView-} ++# export ParaView_MAJOR=${ParaView_VERSION%.*} ++# export ParaView_INCLUDE_DIR=$paraviewDir/include/paraview-$ParaView_MAJOR ++# export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR ++# ++# # Add to the path and the library path ++# export PATH=$ParaView_DIR/bin:$PATH ++# export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH ++# ++# # 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 ++# unset paraviewPython ++# fi ++# ++# unset paraviewDir ++# ;; ++# ++#esac ++ ++export ParaView_VERSION=$EBVERSIONPARAVIEW ++export ParaView_MAJOR=${ParaView_VERSION%.*} ++export ParaView_DIR=$EBROOTPARAVIEW ++export ParaView_LIB_DIR=$ParaView_DIR/lib ++export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR ++export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR ++export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH + + # Report + if [ "$FOAM_VERBOSE" ] && [ "$PS1" ] && [ -d "$ParaView_DIR" ] +diff -Nru OpenFOAM-13-version-13.orig/etc/config.sh/scotch OpenFOAM-13-version-13/etc/config.sh/scotch +--- OpenFOAM-13-version-13.orig/etc/config.sh/scotch 2025-08-19 16:07:30.621073237 +0200 ++++ OpenFOAM-13-version-13/etc/config.sh/scotch 2025-08-19 16:14:15.070493500 +0200 +@@ -37,32 +37,35 @@ + # Load functions + . $WM_PROJECT_DIR/etc/config.sh/functions + +-# Find the path to the scotch installation +-case "$SCOTCH_TYPE" in +-none) +- ;; +-system) +- export SCOTCH_VERSION=system +- export SCOTCH_ARCH_PATH=/usr +- ;; +-OpenFOAM | ThirdParty) +- # Look for the source directory +- if [ -z "$SCOTCH_VERSION" ] +- then +- scotchSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/scotch_*) +- else +- scotchSrcDir=$WM_THIRD_PARTY_DIR/scotch_$SCOTCH_VERSION +- fi +- # Set the version and the installation path +- if [ -d "$scotchSrcDir" ] +- then +- export SCOTCH_VERSION=${scotchSrcDir##*scotch_} +- export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/scotch_$SCOTCH_VERSION +- fi +- # Clean up +- unset scotchSrcDir +- ;; +-esac ++## Find the path to the scotch installation ++#case "$SCOTCH_TYPE" in ++#none) ++# ;; ++#system) ++# export SCOTCH_VERSION=system ++# export SCOTCH_ARCH_PATH=/usr ++# ;; ++#OpenFOAM | ThirdParty) ++# # Look for the source directory ++# if [ -z "$SCOTCH_VERSION" ] ++# then ++# scotchSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/scotch_*) ++# else ++# scotchSrcDir=$WM_THIRD_PARTY_DIR/scotch_$SCOTCH_VERSION ++# fi ++# # Set the version and the installation path ++# if [ -d "$scotchSrcDir" ] ++# then ++# export SCOTCH_VERSION=${scotchSrcDir##*scotch_} ++# export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/scotch_$SCOTCH_VERSION ++# fi ++# # Clean up ++# unset scotchSrcDir ++# ;; ++#esac ++ ++export SCOTCH_VERSION=scotch_$EBVERSIONSCOTCH ++export SCOTCH_ARCH_PATH=$EBROOTSCOTCH + + # Unload functions + . $WM_PROJECT_DIR/etc/config.sh/functions +diff -Nru OpenFOAM-13-version-13.orig/etc/config.sh/settings OpenFOAM-13-version-13/etc/config.sh/settings +--- OpenFOAM-13-version-13.orig/etc/config.sh/settings 2025-08-19 16:07:30.620637000 +0200 ++++ OpenFOAM-13-version-13/etc/config.sh/settings 2025-08-19 16:16:14.203858626 +0200 +@@ -68,8 +68,12 @@ + 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" 1>&2 + ;; +diff -Nru OpenFOAM-13-version-13.orig/etc/config.sh/zoltan OpenFOAM-13-version-13/etc/config.sh/zoltan +--- OpenFOAM-13-version-13.orig/etc/config.sh/zoltan 2025-08-19 16:07:30.621538236 +0200 ++++ OpenFOAM-13-version-13/etc/config.sh/zoltan 2025-08-19 16:14:48.787316402 +0200 +@@ -37,32 +37,35 @@ + # Load functions + . $WM_PROJECT_DIR/etc/config.sh/functions + +-# Find the path to the zoltan installation +-case "$ZOLTAN_TYPE" in +-none) +- ;; +-system) +- export ZOLTAN_VERSION=system +- export ZOLTAN_ARCH_PATH=/usr +- ;; +-OpenFOAM | ThirdParty) +- # Look for the source directory +- if [ -z "$ZOLTAN_VERSION" ] +- then +- zoltanSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/Zoltan-*) +- else +- zoltanSrcDir=$WM_THIRD_PARTY_DIR/Zoltan-$ZOLTAN_VERSION +- fi +- # Set the version and the installation path +- if [ -d "$zoltanSrcDir" ] +- then +- export ZOLTAN_VERSION=${zoltanSrcDir##*Zoltan-} +- export ZOLTAN_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/Zoltan-$ZOLTAN_VERSION +- fi +- # Clean up +- unset zoltanSrcDir +- ;; +-esac ++## Find the path to the zoltan installation ++#case "$ZOLTAN_TYPE" in ++#none) ++# ;; ++#system) ++# export ZOLTAN_VERSION=system ++# export ZOLTAN_ARCH_PATH=/usr ++# ;; ++#OpenFOAM | ThirdParty) ++# # Look for the source directory ++# if [ -z "$ZOLTAN_VERSION" ] ++# then ++# zoltanSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/Zoltan-*) ++# else ++# zoltanSrcDir=$WM_THIRD_PARTY_DIR/Zoltan-$ZOLTAN_VERSION ++# fi ++# # Set the version and the installation path ++# if [ -d "$zoltanSrcDir" ] ++# then ++# export ZOLTAN_VERSION=${zoltanSrcDir##*Zoltan-} ++# export ZOLTAN_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/Zoltan-$ZOLTAN_VERSION ++# fi ++# # Clean up ++# unset zoltanSrcDir ++# ;; ++#esac ++ ++export ZOLTAN_VERSION=Zoltan-$EBVERSIONZOLTAN ++export ZOLTAN_ARCH_PATH=$EBROOTZOLTAN + + # Unload functions + . $WM_PROJECT_DIR/etc/config.sh/functions +diff -Nru OpenFOAM-13-version-13.orig/src/parallel/decompose/ptscotch/Make/options OpenFOAM-13-version-13/src/parallel/decompose/ptscotch/Make/options +--- OpenFOAM-13-version-13.orig/src/parallel/decompose/ptscotch/Make/options 2025-08-19 16:07:31.831995999 +0200 ++++ OpenFOAM-13-version-13/src/parallel/decompose/ptscotch/Make/options 2025-08-19 16:17:37.316239378 +0200 +@@ -7,15 +7,7 @@ + $(PFLAGS) $(PINC) \ + -I$(FOAM_SRC)/Pstream/mpi/lnInclude \ + -I$(SCOTCH_ARCH_PATH)/include/$(FOAM_MPI) \ +- -I$(SCOTCH_ARCH_PATH)/include \ +- -I$(or $(PTSCOTCH_INCLUDE_DIR),/usr/include/scotch) \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ +- -L$(SCOTCH_ARCH_PATH)/lib \ +- $(if $(PTSCOTCH_LIB_DIR),-L$(PTSCOTCH_LIB_DIR)) \ +- -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 -Nru OpenFOAM-13-version-13.orig/src/parallel/decompose/ptscotch/ptscotch.C OpenFOAM-13-version-13/src/parallel/decompose/ptscotch/ptscotch.C +--- OpenFOAM-13-version-13.orig/src/parallel/decompose/ptscotch/ptscotch.C 2025-08-19 16:07:31.832443000 +0200 ++++ OpenFOAM-13-version-13/src/parallel/decompose/ptscotch/ptscotch.C 2025-08-19 16:17:54.756712600 +0200 +@@ -31,6 +31,9 @@ + #include "SubField.H" + #include "PstreamGlobals.H" + ++#include ++#include ++ + extern "C" + { + #include +diff -Nru OpenFOAM-13-version-13.orig/src/parallel/decompose/scotch/Make/options OpenFOAM-13-version-13/src/parallel/decompose/scotch/Make/options +--- OpenFOAM-13-version-13.orig/src/parallel/decompose/scotch/Make/options 2025-08-19 16:07:31.834256134 +0200 ++++ OpenFOAM-13-version-13/src/parallel/decompose/scotch/Make/options 2025-08-19 16:18:31.589667119 +0200 +@@ -6,7 +6,6 @@ + EXE_INC = \ + $(PFLAGS) $(PINC) \ + -I$(SCOTCH_ARCH_PATH)/include \ +- -I$(or $(SCOTCH_INCLUDE_DIR),/usr/include/scotch) \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-13-foss-2025a.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-13-foss-2025a.eb new file mode 100644 index 000000000000..3416e5f11b72 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-13-foss-2025a.eb @@ -0,0 +1,38 @@ +name = 'OpenFOAM' +version = '13' + +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': '2025a'} +toolchainopts = {'vectorize': False} + +source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive'] +sources = ['version-%(version)s.tar.gz'] +patches = ['OpenFOAM-13-ThirdParty.patch'] +checksums = [ + {'version-13.tar.gz': '9969d7f09411d72450855f855f2f37760ff147e3f137fd7063ce6bc26d629632'}, + {'OpenFOAM-13-ThirdParty.patch': '6f59dbf4220243f6533fb04cb0240f684be6d65a0ec600559a68fcd46c61900f'}, +] + +builddependencies = [ + ('Bison', '3.8.2'), + ('CMake', '3.31.3'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('ncurses', '6.5'), + # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes) + ('METIS', '5.1.0'), + ('SCOTCH', '7.0.8'), + ('CGAL', '6.0.1'), + ('ParaView', '6.0.1'), + ('gnuplot', '6.0.3'), + ('Zoltan', '3.901'), +] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/z/Zoltan/Zoltan-3.901-foss-2025a.eb b/easybuild/easyconfigs/z/Zoltan/Zoltan-3.901-foss-2025a.eb new file mode 100644 index 000000000000..2f7d293a8e56 --- /dev/null +++ b/easybuild/easyconfigs/z/Zoltan/Zoltan-3.901-foss-2025a.eb @@ -0,0 +1,47 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'ConfigureMake' + +name = 'Zoltan' +version = '3.901' + +homepage = "https://sandialabs.github.io/Zoltan/" +description = """Zoltan Dynamic Load Balancing and Graph Algorithm Toolkit""" + +toolchain = {'name': 'foss', 'version': '2025a'} +toolchainopts = {'pic': True} + +github_account = 'sandialabs' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['030c22d9f7532d3076e40cba1f03a63b2ee961d8cc9a35149af4a3684922a910'] + +dependencies = [ + ('gzip', '1.13'), + ('SCOTCH', '7.0.8'), + ('ParMETIS', '4.0.3'), +] + +preconfigopts = 'mkdir build && cd build &&' +# use full path to make sure that the easyblock finds the configure command and obtains an updated config.guess +configure_cmd = '%(start_dir)s/configure' +configopts = ' '.join([ + '--enable-gzip', + '--with-scotch', + '--with-scotch-incdir=$EBROOTSCOTCH/include', + '--with-scotch-libdir=$EBROOTSCOTCH/lib', + '--with-parmetis', + '--with-parmetis-incdir=$EBROOTPARMETIS/include', + '--with-parmetis-libdir=$EBROOTPARMETIS/lib', + '--disable-examples', + '--disable-tests', +]) +prebuildopts = 'cd build &&' +buildopts = 'everything' +preinstallopts = 'cd build &&' + +sanity_check_paths = { + 'files': ['lib/libzoltan.a', 'include/zoltan.h'], + 'dirs': [], +} + +moduleclass = 'cae'