diff --git a/Allwmake b/Allwmake
index e21941f985fc33fe7bfae34d85a1222bca0757cb..066fc4878e52c6bada81b4fcf40db74a78c982fe 100755
--- a/Allwmake
+++ b/Allwmake
@@ -74,140 +74,19 @@ echo
 echo ========================================
 echo Start ThirdParty Allwmake
 echo ========================================
-
-
 echo
 echo ========================================
 echo Build MPI libraries if required
 echo "    $MPI_ARCH_PATH"
 case "$WM_MPLIB" in
-OPENMPI)
-    if [ -r $MPI_ARCH_PATH/lib${WM_COMPILER_LIB_ARCH}/libmpi.so ]
-    then
-        echo "    have $WM_MPLIB shared library ($FOAM_MPI)"
-        echo
-    elif [ -r $MPI_ARCH_PATH/lib${WM_COMPILER_LIB_ARCH}/libmpi.a ]
-    then
-        echo "    have $WM_MPLIB static library ($FOAM_MPI)"
-        echo
-    else
-    (
-        # configuration options:
-        # Start with GridEngine support - builds without external libraries
-        configOpt="--with-sge"
-
-        # Add InfiniBand support
-        ibDir=/usr/local/ofed
-        ibLib=$infbDIR/lib${WM_COMPILER_LIB_ARCH}
-        if [ -d "$ibDir" -a -d "$ibLib" ]
-        then
-            configOpt="$configOpt --with-verbs=$ibDir --with-verbs-lib=$ibLib"
-        fi
-
-        # end of configuration options
-        # ----------------------------
-        mpiPACKAGE="${MPI_ARCH_PATH##*/}"
-        sourceDIR=$sourceBASE/$mpiPACKAGE
-        buildDIR=$buildBASE/$mpiPACKAGE
-
-        cd $sourceDIR || exit 1
-        [ -e Makefile ] && make distclean 2>/dev/null
-
-        rm -rf $MPI_ARCH_PATH
-        rm -rf $buildDIR
-        mkdir -p $buildDIR
-        cd $buildDIR
-
-        set -x
-        $sourceDIR/configure \
-            --prefix=$MPI_ARCH_PATH \
-            --disable-orterun-prefix-by-default \
-            --enable-shared --disable-static \
-            --libdir=$MPI_ARCH_PATH/lib${WM_COMPILER_LIB_ARCH} \
-            --enable-mpi-fortran=none \
-            --disable-mpi-profile \
-            $configOpt \
-        && set +x \
-        && make -j $WM_NCOMPPROCS \
-        && make install \
-        && echo "Built: $mpiPACKAGE" \
-        && pkgconfigAdjust $MPI_ARCH_PATH
-    ) || {
-        echo "Error building: $mpiPACKAGE"
-        exit 1
-    }
-    fi
-    ;;
-
-MPICH)
-    if [ -r $MPI_ARCH_PATH/lib/libmpich.so ]
-    then
-        echo "    have $WM_MPLIB shared library ($FOAM_MPI)"
-        echo
-    elif [ -r $MPI_ARCH_PATH/lib/libmpich.a ]
-    then
-        echo "    have $WM_MPLIB static library ($FOAM_MPI)"
-        echo
-    else
-    (
-        # WARNING: unmaintained build code:
-        # ---------------------------------
-        mpiPACKAGE="${MPI_ARCH_PATH##*/}"
-        sourceDIR=$sourceBASE/$mpiPACKAGE
-        cd $sourceDIR || exit 1
-
-        set -x
-        [ -e Makefile ] && make distclean 2>/dev/null
-        rm -rf $MPI_ARCH_PATH
-        rm -rf util/machines/machines.*
-
-        ./configure \
-            --prefix=$MPI_ARCH_PATH \
-            --without-mpe \
-            --disable-f77 \
-            --disable-f90 \
-            --disable-f90modules \
-            --disable-mpedbg \
-            --disable-devdebug \
-            --disable-debug \
-            --enable-sharedlib=$MPI_ARCH_PATH/lib \
-            --with-device=ch_p4 \
-            ;
-
-        # For MPICH2 below 1.5a1 uncomment this line and comment next
-        # make && make install
-
-        # For MPICH2 1.5a1 or above
-        make -j $WM_NCOMPPROCS && make install
-
-        make distclean
-
-        if [ -r $MPI_ARCH_PATH ]
-        then
-            cd $MPI_ARCH_PATH/bin
-            for file in *
-            do
-                sed s%$MPI_ARCH_PATH%'$MPI_ARCH_PATH'%g $file > temp.$$
-                mv temp.$$ $file
-                chmod 0755 $file
-            done
-
-            cd $MPI_ARCH_PATH/lib
-
-            if [ -r libmpich.so.1.0 ]
-            then
-                rm *.so
-                ln -s libmpich.so.1.0 libmpich.so
-            fi
-        fi
-    )
-    fi
+(OPENMPI | MPICH)
+    ./make$WM_MPLIB -test "$MPI_ARCH_PATH" || ./make$WM_MPLIB
     ;;
 esac
 
 
 #------------------------------------------------------------------------------
-# Building scotch is still a bit of a pain
+# Building scotch on different platforms is still a bit of a pain
 
 # Get SCOTCH_VERSION, SCOTCH_ARCH_PATH
 if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/scotch)
@@ -367,7 +246,6 @@ if [ -f $METIS_ARCH_PATH/include/metis.h \
 then
     echo "    metis header in $METIS_ARCH_PATH/include"
     echo "    metis libs   in $FOAM_EXT_LIBBIN"
-    echo
 elif [ -d "$METIS_SOURCE_DIR" ]
 then
 (
@@ -393,54 +271,28 @@ fi
 
 
 #------------------------------------------------------------------------------
-
-# CGAL is optional
 echo
 echo ========================================
 echo Build CGAL
-if [ -d "$CGAL_ARCH_PATH/include" \
-  -a -r "$CGAL_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH/libCGAL.so" ]
-then
-    # first some information about boost
-    for root in "$BOOST_ARCH_PATH" /usr
-    do
-        if [ -d "$root/include/boost" \
-          -a -r "$root/lib$WM_COMPILER_LIB_ARCH/libboost_system.so" ]
-        then
-            echo "    BOOST headers in $root/include"
-            echo "    BOOST libs    in $root/lib$WM_COMPILER_LIB_ARCH"
-            break
-        fi
-    done
-    echo "    CGAL  headers in $CGAL_ARCH_PATH/include"
-    echo "    CGAL  libs    in $CGAL_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH"
-elif [ -n "$CGAL_ARCH_PATH" ]
+if [ -n "$CGAL_ARCH_PATH" ]
 then
+    ./makeCGAL -test "$CGAL_ARCH_PATH" "$BOOST_ARCH_PATH" || \
     ./makeCGAL || warnBuildIssues CGAL
 else
-    warnNotFound CGAL
+    warnNotFound CGAL   # CGAL is optional
 fi
 
-
-# FFTW is optional
 echo
 echo ========================================
 echo Build FFTW
-if [ -d "$FFTW_ARCH_PATH/include" \
-  -a -r "$FFTW_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH/libfftw3.so" ]
-then
-    echo "    FFTW  headers in $FFTW_ARCH_PATH/include"
-    echo "    FFTW  libs    in $FFTW_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH"
-elif [ -n "$FFTW_ARCH_PATH" ]
+if [ -n "$FFTW_ARCH_PATH" ]
 then
+    ./makeFFTW -test "$FFTW_ARCH_PATH" || \
     ./makeFFTW || warnBuildIssues FFTW
 else
-    warnNotFound FFTW
+    warnNotFound FFTW   # FFTW is optional
 fi
 
-
-#------------------------------------------------------------------------------
-
 echo
 echo ========================================
 echo Done ThirdParty Allwmake
diff --git a/makeCGAL b/makeCGAL
index a3db8aac9d810eccc58001b6842c30470dcf7644..60d15e2de4520c12e974c8e799dac2bc901bf084 100755
--- a/makeCGAL
+++ b/makeCGAL
@@ -37,6 +37,33 @@
 # ----------------------------------------------
 # NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
 #------------------------------------------------------------------------------
+# Short-circuit test for an installation
+if [ "$1" = "-test" ]
+then
+    [ "$#" -eq 3 ] || { echo "${0##*/} -test : needs 2 argument"; exit 1; }
+    dir="$2" # <- CGAL_ARCH_PATH
+    if [ -d "$dir/include" -a -r "$dir/lib$WM_COMPILER_LIB_ARCH/libCGAL.so" ]
+    then
+        echo "    CGAL  headers in $dir/include"
+        echo "    CGAL  libs    in $dir/lib$WM_COMPILER_LIB_ARCH"
+        # Additional information about boost
+        dir="$3" # <- BOOST_ARCH_PATH
+        for root in "$dir" /usr
+        do
+            if [ -d "$root/include/boost" \
+              -a -r "$root/lib$WM_COMPILER_LIB_ARCH/libboost_system.so" ]
+            then
+                echo "    BOOST headers in $root/include"
+                echo "    BOOST libs    in $root/lib$WM_COMPILER_LIB_ARCH"
+                break
+            fi
+        done
+        exit 0
+    else
+        exit 2
+    fi
+fi
+#------------------------------------------------------------------------------
 # Run from third-party directory only
 cd ${0%/*} && wmakeCheckPwd -q "$WM_THIRD_PARTY_DIR" 2>/dev/null || {
     echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR"
diff --git a/makeFFTW b/makeFFTW
index fc8a10e4123402db7422e8e33e285ed9681dd623..437efabe13d26da097710e7b4c383d7512bb165c 100755
--- a/makeFFTW
+++ b/makeFFTW
@@ -31,6 +31,21 @@
 # ----------------------------------------------
 # NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
 #------------------------------------------------------------------------------
+# Short-circuit test for an installation
+if [ "$1" = "-test" ]
+then
+    [ "$#" -eq 2 ] || { echo "${0##*/} -test : needs 1 argument"; exit 1; }
+    dir="$2" # <- FFTW_ARCH_PATH
+    if [ -d "$dir/include" -a -r "$dir/lib$WM_COMPILER_LIB_ARCH/libfftw3.so" ]
+    then
+        echo "    FFTW headers in $dir/include"
+        echo "    FFTW libs    in $dir/lib$WM_COMPILER_LIB_ARCH"
+        exit 0
+    else
+        exit 2
+    fi
+fi
+#------------------------------------------------------------------------------
 # Run from third-party directory only
 cd ${0%/*} && wmakeCheckPwd -q "$WM_THIRD_PARTY_DIR" 2>/dev/null || {
     echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR"
diff --git a/makeMPICH b/makeMPICH
new file mode 100755
index 0000000000000000000000000000000000000000..9514c855e543a2331ed11e3a220f229f8beb6c18
--- /dev/null
+++ b/makeMPICH
@@ -0,0 +1,195 @@
+#!/bin/sh
+#------------------------------------------------------------------------------
+# =========                 |
+# \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+#  \\    /   O peration     |
+#   \\  /    A nd           | Copyright (C) 2017 OpenCFD Ltd.
+#    \\/     M anipulation  |
+#------------------------------------------------------------------------------
+# License
+#     This file is part of OpenFOAM.
+#
+#     OpenFOAM is free software: you can redistribute it and/or modify it
+#     under the terms of the GNU General Public License as published by
+#     the Free Software Foundation, either version 3 of the License, or
+#     (at your option) any later version.
+#
+#     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+#     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+#     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+#     for more details.
+#
+#     You should have received a copy of the GNU General Public License
+#     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+#
+# Script
+#     makeMPICH
+#
+# Description
+#     Build script for mpich - legacy (unmaintained) build code!
+#
+# ----------------------------------------------
+# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
+#------------------------------------------------------------------------------
+# Short-circuit test for an installation
+if [ "$1" = "-test" ]
+then
+    [ "$#" -eq 2 ] || { echo "${0##*/} -test : needs 1 argument"; exit 1; }
+    dir="$2" # <- MPI_ARCH_PATH
+    if [ -r "$dir/lib/libmpich.so" ]
+    then
+        echo "Have mpich shared library"
+        exit 0
+    elif [ -r "$dir/lib/libmpich.a" ]
+    then
+        echo "Have mpich static library"
+        exit 0
+    else
+        echo "No mpich libraries found: ${dir:-not-specified}"
+        exit 2
+    fi
+fi
+#------------------------------------------------------------------------------
+# Run from third-party directory only
+cd ${0%/*} && wmakeCheckPwd -q "$WM_THIRD_PARTY_DIR" 2>/dev/null || {
+    echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR"
+    echo "    Check your OpenFOAM environment and installation"
+    exit 1
+}
+. etc/tools/ThirdPartyFunctions
+#------------------------------------------------------------------------------
+# get mpich version
+WM_MPLIB=MPICH       # ensure we get the third-party settings
+
+. $WM_PROJECT_DIR/etc/config.sh/functions
+_foamSource $($WM_PROJECT_DIR/bin/foamEtcFile config.sh/mpi)
+
+mpiPACKAGE=${FOAM_MPI:-mpich-system}
+#------------------------------------------------------------------------------
+usage() {
+    exec 1>&2
+    while [ "$#" -ge 1 ]; do echo "$1"; shift; done
+    cat<<USAGE
+
+usage: ${0##*/} [OPTION] [openmpi-VERSION]
+options:
+  -gcc              force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
+  -help
+
+* build mpich with
+      ${mpiPACKAGE:-'unspecified mpich version'}
+
+USAGE
+    exit 1
+}
+#------------------------------------------------------------------------------
+# Ensure configure gets the correct C/C++ compiler
+[ -n "$WM_CC" ]  && export CC="$WM_CC"
+[ -n "$WM_CXX" ] && export CXX="$WM_CXX"
+
+# Parse options
+while [ "$#" -gt 0 ]
+do
+    case "$1" in
+    -h | -help)
+        usage
+        ;;
+    '')
+        # discard empty arguments
+        ;;
+    -gcc)
+        export CC=gcc    # use gcc/g++
+        export CXX=g++
+        ;;
+    mpich*)
+        mpiPACKAGE="${1%%/}"
+        ;;
+    *)
+        die "unknown option/argument: '$1'"
+        ;;
+    esac
+    shift
+done
+
+[ -n "$mpiPACKAGE" ] || die "The mpich-VERSION was not specified"
+
+# Nothing to build
+if _foamIsNone "$mpiPACKAGE"
+then
+    echo "Using mpich-none (skip ThirdParty build of mpich)"
+    exit 0
+elif _foamIsSystem "$mpiPACKAGE"
+then
+    echo "Using mpich-system (skip ThirdParty build of mpich)"
+    exit 0
+fi
+
+#------------------------------------------------------------------------------
+#
+# Build openmpi
+#
+#   MPI_SOURCE_DIR : location of the original sources
+#   MPI_ARCH_PATH  : installation directory
+
+MPI_SOURCE_DIR=$sourceBASE/$mpiPACKAGE
+MPI_ARCH_PATH=$installBASE/$mpiPACKAGE
+
+if [ -r "$MPI_ARCH_PATH/lib_ARCH/libmpi.so" ]
+then
+    echo "Already has shared library"
+elif [ -r "$MPI_ARCH_PATH/lib/libmpi.a" ]
+then
+    echo "Already has static library"
+else
+    echo "Starting build: $WM_MPLIB ($mpiPACKAGE)"
+    echo
+
+    (
+        # WARNING: unmaintained build code:
+        # ---------------------------------
+        cd $MPI_SOURCE_DIR || exit 1
+
+        set -x
+        [ -e Makefile ] && make distclean 2>/dev/null
+        rm -rf $MPI_ARCH_PATH
+        rm -rf util/machines/machines.*
+
+        ./configure \
+            --prefix=$MPI_ARCH_PATH \
+            --without-mpe \
+            --disable-f77 --disable-f90 --disable-f90modules \
+            --disable-debug --disable-mpedbg --disable-devdebug \
+            --enable-sharedlib=$MPI_ARCH_PATH/lib \
+            --with-device=ch_p4 \
+            ;
+
+        # For MPICH2 below 1.5a1 uncomment this line and comment next
+        # make && make install
+
+        # For MPICH2 1.5a1 or above
+        make -j $WM_NCOMPPROCS && make install
+
+        make distclean
+
+        if [ -r $MPI_ARCH_PATH ]
+        then
+            cd $MPI_ARCH_PATH/bin
+            for file in *
+            do
+                sed s%$MPI_ARCH_PATH%'$MPI_ARCH_PATH'%g $file > temp.$$
+                mv temp.$$ $file
+                chmod 0755 $file
+            done
+
+            cd $MPI_ARCH_PATH/lib
+
+            if [ -r libmpich.so.1.0 ]
+            then
+                rm *.so
+                ln -s libmpich.so.1.0 libmpich.so
+            fi
+        fi
+    )
+fi
+
+#------------------------------------------------------------------------------
diff --git a/makeOPENMPI b/makeOPENMPI
new file mode 100755
index 0000000000000000000000000000000000000000..a3a03ffa2e0e50dea336d24f74fc105a1ec30c41
--- /dev/null
+++ b/makeOPENMPI
@@ -0,0 +1,193 @@
+#!/bin/sh
+#------------------------------------------------------------------------------
+# =========                 |
+# \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+#  \\    /   O peration     |
+#   \\  /    A nd           | Copyright (C) 2017 OpenCFD Ltd.
+#    \\/     M anipulation  |
+#------------------------------------------------------------------------------
+# License
+#     This file is part of OpenFOAM.
+#
+#     OpenFOAM is free software: you can redistribute it and/or modify it
+#     under the terms of the GNU General Public License as published by
+#     the Free Software Foundation, either version 3 of the License, or
+#     (at your option) any later version.
+#
+#     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+#     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+#     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+#     for more details.
+#
+#     You should have received a copy of the GNU General Public License
+#     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+#
+# Script
+#     makeOPENMPI
+#
+# Description
+#     Build script for openmpi
+#
+# ----------------------------------------------
+# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
+#------------------------------------------------------------------------------
+# Short-circuit test for an installation
+if [ "$1" = "-test" ]
+then
+    [ "$#" -eq 2 ] || { echo "${0##*/} -test : needs 1 argument"; exit 1; }
+    dir="$2" # <- MPI_ARCH_PATH
+    if [ -r "$dir/lib$WM_COMPILER_LIB_ARCH/libmpi.so" ]
+    then
+        echo "    Have openmpi shared library (${dir##*/})"
+        exit 0
+    elif [ -r "$dir/lib$WM_COMPILER_LIB_ARCH/libmpi.a" ]
+    then
+        echo "    Have openmpi static library (${dir##*/})"
+        exit 0
+    else
+        echo "No openmpi libraries found: ${dir:-not-specified}"
+        exit 2
+    fi
+fi
+#------------------------------------------------------------------------------
+# Run from third-party directory only
+cd ${0%/*} && wmakeCheckPwd -q "$WM_THIRD_PARTY_DIR" 2>/dev/null || {
+    echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR"
+    echo "    Check your OpenFOAM environment and installation"
+    exit 1
+}
+. etc/tools/ThirdPartyFunctions
+#------------------------------------------------------------------------------
+# get openmpi version
+WM_MPLIB=OPENMPI       # ensure we get the third-party settings
+
+. $WM_PROJECT_DIR/etc/config.sh/functions
+_foamSource $($WM_PROJECT_DIR/bin/foamEtcFile config.sh/mpi)
+
+mpiPACKAGE=${FOAM_MPI:-openmpi-system}
+#------------------------------------------------------------------------------
+usage() {
+    exec 1>&2
+    while [ "$#" -ge 1 ]; do echo "$1"; shift; done
+    cat<<USAGE
+
+usage: ${0##*/} [OPTION] [openmpi-VERSION]
+options:
+  -gcc              force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
+  -help
+
+* build openmpi with
+      ${mpiPACKAGE:-'unspecified openmpi version'}
+
+USAGE
+    exit 1
+}
+#------------------------------------------------------------------------------
+# Ensure configure gets the correct C/C++ compiler
+[ -n "$WM_CC" ]  && export CC="$WM_CC"
+[ -n "$WM_CXX" ] && export CXX="$WM_CXX"
+
+# Parse options
+while [ "$#" -gt 0 ]
+do
+    case "$1" in
+    -h | -help)
+        usage
+        ;;
+    '')
+        # discard empty arguments
+        ;;
+    -gcc)
+        export CC=gcc    # use gcc/g++
+        export CXX=g++
+        ;;
+    openmpi-[0-9]* | openmpi_[0-9]* | openmpi-system )
+        mpiPACKAGE="${1%%/}"
+        ;;
+    *)
+        die "unknown option/argument: '$1'"
+        ;;
+    esac
+    shift
+done
+
+[ -n "$mpiPACKAGE" ] || die "The openmpi-VERSION was not specified"
+
+# Nothing to build
+if _foamIsNone "$mpiPACKAGE"
+then
+    echo "Using openmpi-none (skip ThirdParty build of openmpi)"
+    exit 0
+elif _foamIsSystem "$mpiPACKAGE"
+then
+    echo "Using openmpi-system (skip ThirdParty build of openmpi)"
+    exit 0
+fi
+
+#------------------------------------------------------------------------------
+#
+# Build openmpi
+#
+#   MPI_SOURCE_DIR : location of the original sources
+#   MPI_ARCH_PATH  : installation directory
+
+MPI_SOURCE_DIR=$sourceBASE/$mpiPACKAGE
+MPI_ARCH_PATH=$installBASE/$mpiPACKAGE
+
+if [ -r "$MPI_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH/libmpi.so" ]
+then
+    echo "Already has shared library"
+elif [ -r "$MPI_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH/libmpi.a" ]
+then
+    echo "Already has static library"
+else
+    echo "Starting build: $WM_MPLIB ($mpiPACKAGE)"
+    echo
+
+    (
+        # configuration options:
+        # Start with GridEngine support - builds without external libraries
+        configOpt="--with-sge"
+
+        # Add InfiniBand support
+        ibDir=/usr/local/ofed
+        ibLib=$infbDIR/lib$WM_COMPILER_LIB_ARCH
+        if [ -d "$ibDir" -a -d "$ibLib" ]
+        then
+            configOpt="$configOpt --with-verbs=$ibDir --with-verbs-lib=$ibLib"
+        fi
+
+        # end of configuration options
+        # ----------------------------
+
+        buildDIR=$buildBASE/$mpiPACKAGE
+
+        cd $MPI_SOURCE_DIR || exit 1
+        [ -e Makefile ] && make distclean 2>/dev/null
+
+        rm -rf $MPI_ARCH_PATH
+        rm -rf $buildDIR
+        mkdir -p $buildDIR
+        cd $buildDIR
+
+        set -x
+        $MPI_SOURCE_DIR/configure \
+            --prefix=$MPI_ARCH_PATH \
+            --disable-orterun-prefix-by-default \
+            --enable-shared --disable-static \
+            --libdir=$MPI_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \
+            --enable-mpi-fortran=none \
+            --disable-mpi-profile \
+            $configOpt \
+        && set +x \
+        && make -j $WM_NCOMPPROCS \
+        && make install \
+        && echo "Built: $mpiPACKAGE" \
+        && pkgconfigAdjust $MPI_ARCH_PATH
+    ) || {
+        echo "Error building: $mpiPACKAGE"
+        exit 1
+    }
+fi
+
+#------------------------------------------------------------------------------