* combine all patches for 1612 into a single file, with additional
comments to explain the rational.
* Add kahip decomposition variant.
* Add support for ARM64 architecture.
* filter instead of patching etc/config.*/settings. This eliminates
patch files for 1706, perhaps for the future as well.
* URLs at or before version 1612 have a different structure, so
provide a url_for_version implementation to handle this
- define MPICH_SKIP_MPICXX, link libmpich instead of libmpi
(as per disussion in PR #4990)
ENH: more flexible editing/patching of openfoam env files
CONFIG: comment out requirement for openmpi+thread_multiple
- was originally slated for the 1712 release and beyond, but there are
reportedly unstable version/network combinations.
Leave as comment for future reference, since it may be arise again.
STYLE: renamed openfoam-site.patch as 1706-site.patch (and reformatted)
- to preserve against impending changes in the layout of
config.{csh,sh}/settings
- When you don't use wildcards, flake8 will find places where you used an
undefined name.
- This commit has all the bugfixes resulting from this static check.
- renamed develop version from 'plus' to 'develop'
- patches now prefixed by corresponding OpenFOAM version number.
This makes it easier to sort and see what old/junk exists.
- remove MPI_BUFFER_SIZEk env variable (for all openfoam variants).
The OpenFOAM shell setup addresses this and there is no reason
to pollute the module environment at this stage.
- The buggy flex-2.6.2 was blacklisted in the corresponding flex
package, but now also removed the md5sum to avoid suggesting that
this version should be revived.
The 2.6.3 has similar problems (at least for scotch), but 2.6.4
seems to work.
- Rejig flex restriction for scotch to exclude 2.6.2-2.6.3 only. Since
flex-2.6.4 appears to be okay again, we can remove the flex version
restriction that trickled through into the openfoam packages as a
consequent of an spack spec bug.
- Make flex a build dependency for the openfoam packages
(seems to have been an earlier oversight).
* Several improvements for the openfoam packages
--
Refactor openfoam packages by adding an OpenfoamArch class
Use separate configure, build, install phases.
Provide FOAM_PROJECT_DIR dependent env for openfoam packages
- easier way to locate
Eliminate intermediate installation directories
- unneeded clutter.
- makes it less than easy to find the etc/bashrc file
Add versioning for all openfoam patches
- no certainty which parts (if any) will be needed in future versions,
especially if we strive to ensure that the upstream version builds
well with spack to begin with.
Support build of develop branches
- helps track build regressions for future openfoam releases
STYLE: use common/ and assets/ to provide additional (build) resources ...
* - adjust OpenFOAM provider
Move openfoam-com up front since this is the one being used as a base
for the others
* ENH: add package for building OpenFOAM (1612) from www.openfoam.com
- provide 'openfoam' as virtual package.
- package as openfoam-com to reflect the distribution point.
This initial spack packaging for OpenFOAM supports a number of possible
variants and should handle 64-bit labels properly now that the scotch
package has been updated accordingly.
* ENH: update package for foam-extend (extend-project.de)
- provide 'openfoam' as virtual package.
- much of the build is now aligned with how the openfoam-com package
looks, with the aim of future refactoring.
- avoid installing intermediate targets.
- contains its own environment sourcing script for the build, for more
flexibility and robustness (doesn't touch the python build environ)
* ENH: added package for building from openfoam.org
- provide 'openfoam' as a virtual package.
- this is largely a direct copy of the openfoam-com package.
It has been supplied as a courtesy for users and to ensure maximum
consistency in quality and naming between the foam-extend,
openfoam-com and openfoam-org packages.
* CONFIG: add openfoam into bash completion providers list
* ENH: have openfoam-com use spack as USERMPI
- also simplify the generation of mplib/compiler rules
* ENH: have openfoam-org use spack as SYSTEMMPI
- this setup requires more environment settings than USERMPI
(openfoam-com), but is currently the only means of integration
for openfoam-org
- simplify generation of mplib/compiler rules
* ENH: simplify generation of mplib/compiler rules (foam-extend)
- rename mpi rules from SPACK,SPACKMPI to USER,USERMPI for consistency
with openfoam-com and to generalize for any build system.
* STYLE: record spack tree as a log file (openfoam)
- can be useful for future diagnostics and general record keeping