- prefix FOAM_MPI and library directories with 'sys-' for system versions for uniform identication. WM_MPLIB | libdir (FOAM_MPI) | old naming | SYSTEMMPI | sys-mpi | mpi | SYSTEMOPENMPI | sys-openmpi | openmpi-system | - prefix preferences with 'prefs.' to make them more easily identifiable, and update bin/tools/create-mpi-config accordingly Old name: config.{csh,sh}/openmpi New name: config.{csh,sh}/prefs.openmpi - additional mpi preferences now available: * prefs.intelmpi * prefs.mpich ... CONFIG: added hook for EASYBUILDMPI (eb-mpi), somewhat like USERMPI - EasyBuild uses mpicc when compiling, so no explicit wmake rules are used ENH: support different major versions for system openmpi - for example, with WM_MPLIB=SYSTEMOPENMPI2 defines FOAM_MPI=sys-openmpi2 and thus creates lib/sys-openmpi2 ENH: centralize handling of mpi as 'mpi-rules' Before: sinclude $(GENERAL_RULES)/mplib$(WM_MPLIB) sinclude $(DEFAULT_RULES)/mplib$(WM_MPLIB) ifeq (,$(FOAM_MPI_LIBBIN)) FOAM_MPI_LIBBIN := $(FOAM_LIBBIN)/$(FOAM_MPI) endif After: include $(GENERAL_RULES)/mpi-rules - also allows variants such as SYSTEMOPENMPI2 to be handled separately
33 lines
944 B
Plaintext
33 lines
944 B
Plaintext
#------------------------------------------------------------------------------
|
|
# MPI rules
|
|
|
|
PFLAGS =
|
|
PINC =
|
|
PLIBS =
|
|
|
|
# The stem name. Eg, SYSTEMOPENMPI4 -> SYSTEMOPENMPI
|
|
MPLIB_STEMNAME = $(shell echo "$(WM_MPLIB)" | sed -e 's/[-.0-9]*$$//')
|
|
|
|
ifneq ("$(MPLIB_STEMNAME)","$(WM_MPLIB)")
|
|
sinclude $(GENERAL_RULES)/mplib$(MPLIB_STEMNAME)
|
|
sinclude $(DEFAULT_RULES)/mplib$(MPLIB_STEMNAME)
|
|
ifneq ("$(RULES)","$(DEFAULT_RULES)")
|
|
sinclude $(RULES)/mplib$(MPLIB_STEMNAME)
|
|
endif
|
|
endif
|
|
|
|
ifneq ("","$(WM_MPLIB)")
|
|
sinclude $(GENERAL_RULES)/mplib$(WM_MPLIB)
|
|
sinclude $(DEFAULT_RULES)/mplib$(WM_MPLIB)
|
|
ifneq ("$(RULES)","$(DEFAULT_RULES)")
|
|
sinclude $(RULES)/mplib$(WM_MPLIB)
|
|
endif
|
|
endif
|
|
|
|
# Default target MPI libdir is PROJECT lib/<mpi-name>
|
|
ifeq (,$(FOAM_MPI_LIBBIN))
|
|
FOAM_MPI_LIBBIN := $(FOAM_LIBBIN)/$(FOAM_MPI)
|
|
endif
|
|
|
|
#------------------------------------------------------------------------------
|