OpenFOAM® v2006: New and updated build system
New pre-compiled packages
This release continues to simplify the use of OpenFOAM by supporting pre-compiled binary packages for Ubuntu, openSUSE, CentOS/RedHat.
The sub-division of packages support a range of requirements: https://develop.openfoam.com/Development/openfoam/-/wikis/precompiled#sub-packages
- small runtime-only package
- medium development packages
- large development package with tutorials
Improved wmake build system
- The wmake system now has additional subcommand handling that provides a natural means of accessing additional functionality without additional top-level scripts and also allowing better reuse of scripts. For example, wmake -build-info.
- The wmake rules now pass through additional environment parameters (FOAM_EXTRA_CFLAGS, FOAM_EXTRA_CXXFLAGS, FOAM_EXTRA_LDFLAGS) to support custom tuning of compilation parameters and situations where additional compilation parameters are required when integrating OpenFOAM code.
- New/updated compiler rules:
- Amd compiler (the AOCC compiler) for linux64.
- Fujitsu compiler for linuxARM64.
- Update Clang rules for Darwin to support openmp.
- Easier handling of compiler derivatives
- Support optional ’override’ wmake rules
Modules and MPI
Added new infrastructure to support out-of-tree compilation of modules and MPI-specific layers. See the user upgrade guide.
As part of ongoing work to make OpenFOAM more flexible, VTK-related components are now gathered in a visualization module, which includes these elements:
- catalyst : in-situ visualization with a ParaView/Catalyst
- paraview-plugins : supplementary reader modules for ParaView
- runTimePostProcessing : in-situ visualization using VTK-based processing
This division makes it easier to generate different visualization configurations without recompiling the OpenFOAM core.
This is used, for example, to mix and match different combinations of VTK/ParaView versions and capabilities, e.g. MESA, MPI etc.
- Note that the catalyst submodule is now obsolete and hence deprecated.
For many normal users, this module can be safely ignored.