Commit 61444436 authored by Mark Meredith's avatar Mark Meredith
Browse files

Add section on AMReX Submodule

parent e1c171ad
Loading
Loading
Loading
Loading
+53 −0
Original line number Diff line number Diff line
@@ -132,6 +132,59 @@ Assuming no valid AMReX installation is present on the target system, and ``AMRe
``[amrex options]`` is a list of any of the AMReX configuration options listed in the `AMReX user guide <https://amrex-codes.github.io/amrex/docs_html/BuildingAMReX.html#building-with-cmake>`_


Working with the AMReX submodule
--------------------------------

For MFiX-Exa development or testing, you may need to build with a different
branch or release of AMReX.

The ``subprojects/amrex`` directory is a Git repo, so use all standard Git
commands. Either ``cd subprojects/amrex`` to run Git commands in the ``amrex``
directory, or use ``git -C subprojects/amrex`` in the MFiX-Exa repo. For
instance, to build with the ``my-amrex-branch`` branch of the AMReX repo:

.. code:: shell

    > git -C subprojects/amrex checkout my-amrex-branch
    > git status
    ...
    modified:   subprojects/amrex (new commits)

The branch ``my-amrex-branch`` will then be used when building MFiX-Exa.

To revert to the default version of the AMReX submodule, run ``git submodule
update``:

.. code:: shell

    > git submodule update
    > git status
    ...
    nothing to commit, working tree clean

You can edit, commit, pull, and push AMReX changes from ``subprojects/amrex``.
AMReX development is outside the scope of this document. Run ``git status`` in
the top-level MFix-Exa repo to see whether the AMReX submodule has new commits,
modified files, or untracked files.

To update the AMReX submodule reference by MFiX-Exa:

.. code:: shell

    > git add subprojects/amrex
    > git commit -m 'Updating AMReX version'

This will only update the AMReX SHA-1 referenced by MFiX-Exa. Uncommitted AMReX
changes and untracked AMReX files under ``subprojects/amrex`` are not added by
``git add subprojects/amrex``. Change directories to ``subprojects/amrex`` and
commit any AMReX changes first before ``git add subprojects/amrex``.

.. note::

    Only update the AMReX submodule reference in coordination with the other
    MFiX-Exa developers!


Few more notes on building MFiX-Exa
-----------------------------------