Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The top-level Makefile no longer attempts to emulate the MRS build structure, and now simply invokes the Makefiles of each submodel. It is no longer the point of reference for testing the suite, which should now be handled by a parent repository (e.g. Gaea-stats). The top Makefile is now the starting point for public usage. As part of this, the CM2-based models were removed from the default `all` rule. Many changes were added to reliably track changes in the source code. * A "FORCE" rule has been introduced to ensure that changes tracked by the submakes are also tracked by the top Makefile. Similar changes have been applied to the relevant submakes. * Library dependency is explicitly tracked inside of the rules, with `test .. -nt ...` conditionals. This was done because the top Makefile cannot reliably track the state of products from the submakes, but there may be a better way to do this. * The MOM6 source was updated to use the latest version of makedep, which was required by AM2 to fix some errors in tracking source code dependencies. Several minor fixes are outlined below. * Many explicit CPPDEFS were removed, and the macros are set by autoconf's AC_DEFINE macro, and assigned to DEFS. * LIBS ordering should now be correct on all systems. FMS linking is once again tested. GFDL dependencies are explicitly prepended to LIBS during autoconf setup. (Someday, these should be replaced with proper tests for each library.) As part of this, the CM2-based and ice-ocean configure.ac files have been split. * Minor issues around propagation of environment variables (FCFLAGS, etc) have been fixed.
- Loading branch information