CMake Toolchain file insufficient for regular build.
GMX_REQUIRE_VALID_TOOLCHAIN=ON shows that the generated gromacs-toolchain.cmake
does not correctly set some variables (such as MPI_RUN_RESULT_C_libver_mpi_normal
) that may be required in normal builds. It still may be usable by client software, but if the toolchain file is insufficient to build the project from which it was generated, I think its utility is marginal (and its integration testing is certainly inadequate).
Rather than refining cross-compilation testing, I propose that we avoid this non-normative CMake usage, remove the generation and installation of this file, and adopt a different approach for hinting build system details to client software. Relates to #3279 (closed): provide instead a CMake cache file (to be used with -C gromacs-hints.cmake
instead of -DCMAKE_TOOLCHAIN_FILE
or --toolchain
).
This also requires updating the advice for client software and Python package builds. See #3273 (closed).