Skip to content
  • Mark OLESEN's avatar
    ENH: improved granularity for MPI-rebuilds · f233595a
    Mark OLESEN authored and Andrew Heather's avatar Andrew Heather committed
    - Provide Allwmake-mpi scripts for handling the MPI-only build segment.
    
    - Adjust Make/options to support a FOAM_MPI_LIBBIN target location.
      This will simply default to FOAM_LIBBIN/FOAM_MPI, but allows different
      types of builds with out-of-tree targets.
    
    Example,
    
    Build OpenFOAM with default MPI settings (eg, system openmpi)
    ```
    ./Allwmake
    ```
    
    Rebuild MPI-layers with different MPI.
    
    For any given and known type
    ```
    othermpi()
    {
        export WM_MPLIB=OPENMPI
        export FOAM_MPI=openmpi-3.1.3
    
        export OPAL_PREFIX=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
        export MPI_ARCH_PATH="$OPAL_PREFIX"
    }
    ```
    
    May wish to build/rebuild ptscotch
    ```
    (
        othermpi
        $WM_THIRD_PARTY_DIR/makeSCOTCH
    )
    ```
    
    Rebuild the mpi-dependent parts. Can also provide install location
    ```
    for script in $(find src -name Allwmake-mpi)
    do
    (
        other_mpi
        export FOAM_MPI_LIBBIN="$HOME/tmp/install-prefix/lib/$FOAM_MPI"
    )
    done
    ```
    f233595a