STKUtil does not build without MPI
Created by: bavier
Configuring Trilinos 12.6.1 with
cmake -DTrilinos_ENABLE_STK:BOOL=YES -DTPL_ENABLE_MPI:BOOL=NO ..
after patchg around issue #169 Leads to the following error:
[ 94%] Building CXX object packages/stk/stk_util/stk_util/parallel/CMakeFiles/stk_util_parallel.dir/CommSparse.cpp.o
/ptmp/Trilinos/packages/stk/stk_util/stk_util/parallel/CommSparse.cpp: In member function 'void stk::CommSparse::communicate()':
/ptmp/Trilinos/packages/stk/stk_util/stk_util/parallel/CommSparse.cpp:297:75: error: 'communicate_any' was not declared in this scope
communicate_any( m_comm , m_send , m_recv, m_send_procs, m_recv_procs );
^
packages/stk/stk_util/stk_util/parallel/CMakeFiles/stk_util_parallel.dir/build.make:110: recipe for target 'packages/stk/stk_util/stk_util/parallel/CMakeFiles/stk_util_parallel.dir/CommSparse.cpp.o' failed
make[2]: *** [packages/stk/stk_util/stk_util/parallel/CMakeFiles/stk_util_parallel.dir/CommSparse.cpp.o] Error 1
CMakeFiles/Makefile2:7118: recipe for target 'packages/stk/stk_util/stk_util/parallel/CMakeFiles/stk_util_parallel.dir/all' failed
make[1]: *** [packages/stk/stk_util/stk_util/parallel/CMakeFiles/stk_util_parallel.dir/all] Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2
There appear to be other issues as well. The STKUtil source defines a HAVE_MPI macro, but appears to make little use of it, making without-MPI essentially an unsupported/forgotten feature. Turning off just STKUtil in the configuration is not an option because all other STK subpackage, save for the trivial STKTransfer subpackage, depends directlky or indirectly on STKUtil.
It would be nice to have this fixed, or declare MPI a required TPL for STKUtil