Skip to content
  • Christian Pfeiffer's avatar
    FindMPI: Fix various legacy problems · d1d8719f
    Christian Pfeiffer authored
    This MR fixes a number of bugs stemming from legacy variable handling,
    partially introduced by commit v3.10.0-rc1~103^2 (FindMPI: Add support
    for FreeBSD and SLES, 2017-08-09).
    
    * `MPI_COMPILE_OPTIONS` and `MPI_COMPILE_DEFINITIONS` legacy hints were not passed correctly.
    * Legacy variables could be parsed after they were set by `FindMPI` cause erroneous hinting on subsequent runs.
    * In the case of the compiler supporting MPI implicitly:
    	* not all consumption variables would be correctly reset.
    	* `MPI_<LANG>_HEADER_DIR` would be set unintentionally.
    	* `MPI_<LANG>_LIB_NAMES` appeared in cache despite being ignored.
    	* on subsequent passes, `MPI_<LANG>_COMPILER` could be corrupted.
    * the C-to-CXX copy logic would take place even if `MPI_SKIP_GUESSING` was turned on
    * if only some language compilers were given, inconsistent search behavior could be observed
    
    Issue: #17538
    d1d8719f