03/2013 BFJ 02/2016 MT 10/2016 DMH
Please see the HOMME wiki for information on how to build HOMME using the CMake build system. https://wiki.ucar.edu/display/homme/The+HOMME+CMake+build+and+testing+system
The CMAKE build system supports a number of user-configurable targets: sweqx, preqx, preqx_acc, swim, prim
Scripts which will CMake configure, build, construct namelists and run a simulation using these targets, see: homme/test/sw_conservative/swtc[1256]ref.sh homme/test/jw_baroclinic/baro.job
A typical CMAKE command might look like: cd $WDIR cmake -C ~/acme/components/cmake/machineFiles/edison.cmake \ -DPREQX_PLEV=30 -DPREQX_NP=4 ~/acme/components/homme
After running cmake with suitable command line options from a working directory WDIR, it will create
$WDIR/src/sweqx directory containing user-configured sweqx executable $WDIR/test_execs/swtcA directory for swtcA executable $WDIR/test_execs/swtcB directory for swtcB executable ...and similarly for the preqx and preqx_acc targets.
$WDIR/utils cprnc utility, and PIO and timing libraries $WDIR/tests directory containing all the HOMME regression tests
HOMME has a large regression test suite. For instructions on running and adding new tests, see homme/test/reg_test/README
DCMIP tests provide a standard means for testing and comparing the ACME HOMME dycore with other dycores both hydrostatic and nonhydrostatic. They have been placed in their own dcmip_test directory for now. To run a DCMIP tests, navigate to the appropriate directory and type make install to install test scripts and namelists.
The CMAKE code could use some cleanup.
OBSOLETE
03/2013 CGB and KJE and JER
HOMME now has a CMake build option for sweqx, swim, and preqx. It is in the BETA test mode, alert Chris Baker or Kate Evans or Jennifer Ribbeckof problems/unclear instructions (swim is the SW version of HOMME that uses trilinos in the implicit solve option)
most build failures are due to residual build info. In the build directory: rm -rf CMakeCache.txt CMakeFiles src utils cmake_install.cmake Makefile bin install_manifest.txt *.h to get a fresh build starting point.