spack/var/spack/repos/builtin/packages/openfoam-com/openfoam-mpi-1612.patch
Mark Olesen 9e1abb13dc support OpenFOAM package(s) (#3528)
* 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
2017-03-30 16:35:57 -07:00

37 lines
1.1 KiB
Diff

--- OpenFOAM-v1612+.orig/etc/config.sh/mpi 2016-12-23 15:22:59.000000000 +0100
+++ OpenFOAM-v1612+/etc/config.sh/mpi 2017-03-29 13:55:57.507980699 +0200
@@ -75,8 +75,15 @@
_foamAddMan $MPI_ARCH_PATH/share/man
;;
+USERMPI)
+ # Use an arbitrary, user-specified mpi implementation
+ export FOAM_MPI=mpi-user
+ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/mpi-user`
+ ;;
+
SYSTEMMPI)
export FOAM_MPI=mpi-system
+ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/mpi-system`
if [ -z "$MPI_ROOT" ]
then
--- OpenFOAM-v1612+.orig/etc/config.csh/mpi 2016-12-23 15:22:59.000000000 +0100
+++ OpenFOAM-v1612+/etc/config.csh/mpi 2017-03-29 13:56:36.347835938 +0200
@@ -71,8 +71,15 @@
_foamAddMan $MPI_ARCH_PATH/share/man
breaksw
+case USERMPI:
+ # Use an arbitrary, user-specified mpi implementation
+ setenv FOAM_MPI mpi-user
+ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/mpi-user`
+ breaksw
+
case SYSTEMMPI:
setenv FOAM_MPI mpi-system
+ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/mpi-system`
if ( ! ($?MPI_ROOT) ) then
echo